LINUX.ORG.RU

Выбор комплектующих ПК

 , , , ,


0

2

Здравствуйте, решил собрать себе компьютер под тренеровку нейронок, недокодинга и игр, бюджетом до 180-185 тыс руб. Получилась такая конфигурация: https://www.dns-shop.ru/conf/438b350adf1b70a2/

Дублирую для удобства

  • Процессор: AMD Ryzen 7 7700X OEM
  • Материнская плата: MSI MAG X670E TOMAHAWK WIFI
  • Корпус: DEEPCOOL CG560 [R-CG560-BKAAE4-G-1]
  • Кулер для процессора: DEEPCOOL AK620 [LGA1700] [R-AK620-BKNNMT-G]
  • Оперативная память: Kingston Fury Beast Black AMD [KF560C36BBEK2-32] 32 ГБ
  • Накопители:
    • Samsung 990 PRO [MZ-V9P1T0BW] 1ТБ
    • Samsung 870 EVO [MZ-77E500B/KR] 500 ГБ
  • Блок питания: DeepCool PX1000G

Менять на аналоги не согласен оба накопителя и процессор(разве что на не Х версию), рассмотрю лишь покупку в другом магазине.

Видеокарту буду брать с авито, вероятно. Приглядываюсь к RTX 3080 с 10(или 12) ГБ или RTX 3080Ti c 12 ГБ, АМД не рассматриваю, ибо она очень плохо дружит со Stable Diffusion и нейронками в целом. Хотелось бы узнать, нормально-ли видюхи Нвидии дружат с Linux?

Далее хотел бы услышать критику на данную сборку, её подводные камни, где может можно сэкономить не потеряв в качестве? Покупка будет производится в Воронеже, может есть какие-либо проверенные локальные магазины?

На текущий момент меня больше всего смущают материнка и накопитель 990 pro(из-за подделок), ибо материнка не особо популярна, да и скорость иницализации оборудования мне не понравилась(почти 1 мин)(вроде это болячка 7000 линеки райзен), а как на других обстоят дела, не знаю. БП беру с большим запасом, ибо хочу поставить в дальнейшем более мощную видеокарту.

На 990 хочу поставить Линух, на 870 поставлю винду, ну и с текущего пк останется WD Black на 1 ТБ, его как использовать не знаю, ибо не до конца разобрался, как в Линухе устроены разделы, можно ли 2 раздела /home для 1 пользователя, а использовать его чисто для /var и /tmp считаю кощунством, да и /tmp я подумываю в ОЗУ запихнуть. Ну и swap куда-то надо. Профан я в Линухе, короче.


Ответ на: комментарий от Obezyan

С точки зрения работы с сетями логика следующая, на первом месте количество памяти, на втором количество CUDA ядер, на третьем - ширина шины памяти. RTX 4060Ti в 2 раза хуже по второму и третьему параметру. Это значит что обучение сети будет в среднем от 2х до 4х раз дольше. И это большая проблема тк менять архитектуру сети и проверять гипотезы которые могут ее улучшить требует многократного обучения. Попробовал нарисовать более наглядно, проблема 4060Ti в последних двух столбиках.

От бюджета все же зависит. Так бы рад взять A5000 или 4090, но увы за пределами кармана. Были бы деньги вообще H100 взял =)

Я про 4060 ti больше с точки зрения, что может у карты какой скрытый подвох есть не только в числе ядер и 128 бит.

Лучше бы просто сразу ошибку кидало,как раньше. Обучение таким образом все равно не поучится, либо, если повезет, то займет x10 времени или больше. Считайте что добавили лотерею для тех у кого памяти не хватает на видеокарте, а тыкать в современное - хочется.

Я так понимаю, что поведение драйвера не настраивается? Хотя в принципе могло бы. Nvidia блин.

praseodim ★★★★★
()
Ответ на: комментарий от praseodim

От бюджета все же зависит. Так бы рад взять A5000 или 4090, но увы за пределами кармана.

Прекрасно Вас понимаю, я описал ситуацию для профессиональной разработки сетей, за денюжку, в таком случае любой инструемнт окупается, вопрос лишь во времени окупания. Если же это больше как хобби и не основная сфера работы, то наверное и 4060Ti будет хорошим выбором (все-таки 16GB запускать и файтюнить гораздо большее количество сетей чем карта с 12GB).

Были бы деньги вообще H100 взял =)

Это решение не для дома. Для дома подходит RTX A6000, собсно ее и взял.

Я так понимаю, что поведение драйвера не настраивается? Хотя в принципе могло бы. Nvidia блин.

Вообще, наверное, стоит пойти в церковь свечку поставить что Nvidia CUDA отлично работает под Linux.

Obezyan
()
Ответ на: комментарий от Obezyan

Если же это больше как хобби и не основная сфера работы, то наверное и 4060Ti будет хорошим выбором (все-таки 16GB запускать и файтюнить гораздо большее количество сетей чем карта с 12GB).

Почему-то о самом трудоемком и времязатратном действии, а именно о подготовке данных для обучения нейросети никто не упомянул. Что толку от того, что более мощная видеокарта выполнит обучение сети на день раньше, если для создания смысловых меток на данных для обучения уйдут месяцы трудочасов?

Или все обучают сети на покупных, уже обозначенных смыслом данных?

Enthusiast ★★★
()
Ответ на: комментарий от amd_amd

Экономия порождает бедность. А экономия на себе в принципе бессмысленна, потому что если ты питаешься макаронами и колбасой из ногтей, ходишь в сморщенных от старости обносках и терпишь тормоза 25-летнего компьютера - то зачем вообще жить, чтобы страдать и превозмогать созданные собой же проблемы?

alex1101
()
Ответ на: комментарий от alex1101

питаешься макаронами и колбасой из ногтей

нет питаемся мы хорошо это самая большая часть расходов из семейного бюджета - что то в районе 50-60 тысяч в месяц

ходишь в сморщенных от старости обносках

хожу в спецодежде и обуви которую выдает работадатель, есть конечно какое то шмутье, но я его давно не носил, даже весь отпуск отходил в спецодежде - ну это тупо удобно, шапка от усопшего отца - она мне бошку и душу греет, трусы, майки, носки даже не знаю откуда берутся этим жена заведует.

терпишь тормоза 25-летнего компьютера

если все правильно приготовить тормозов нет и по этому терпеть ничего не надо

зачем вообще жить

ну фиг его знает? я здоровый человек - у меня семья, жена и дети, детей надо поднимать, кушать хорошо и за коммуналку платить, на другое бабла фактически не остается, пытался перед отпуском копить экономя на спичках - накопил 70 тыр и вылечил на это кошку, хорошо все остальные в семье такое воприняли нормально - я люблю свою семью.

amd_amd ★★★★★
()
Последнее исправление: amd_amd (всего исправлений: 1)
Ответ на: комментарий от alex1101

Видел неоднократно, как всякие достаточно свежие джипы заправляются по пять литров. Сам обычно выкатываю четверть бака и доливаю до полного. Кто беден — я или крохоборствующие владельцы джипов?

Mobutu_Sese_Seko
()
Ответ на: комментарий от Enthusiast

Почему-то о самом трудоемком и времязатратном действии, а именно о подготовке данных для обучения нейросети никто не упомянул. Что толку от того, что более мощная видеокарта выполнит обучение сети на день раньше, если для создания смысловых меток на данных для обучения уйдут месяцы трудочасов?

Подготовка данных, разведочный анализ и разметка стали распараллеливается на ядра аж бегом и любой современной рязани для этого хватит. Да, есть задачи где нужен тредрипер, но они довольно редки, видеокарта в любом случае важнее да и Боливар бюджет не вынесет двоих.

Толку от быстрой подготовки данных если вы не сможете развернуть сеть на видеокарте тк не хватит видеопамяти?

Obezyan
()
Ответ на: комментарий от alex0x08

В РФ - понятия не имею, самому интересно как оно тут. За рубежом - есть, даже то что раньше делали на OLAP кубах теперь делают на тензорах в сетях.

Obezyan
()
Последнее исправление: Obezyan (всего исправлений: 1)
Ответ на: комментарий от Obezyan

Как интересно, т.е ситуацией ты не владеешь но при этом говоришь про «окупаемость».

Ну и в волшебном зарубежье есть такая штука как аренда вычислительных ресурсов, в том числе под тренировку нейросетей. Поэтому никто из известных мне разработчиков, занимающихся нейросетями не страдает такой херней как «сбор компьютера под нейросети», они просто работают на ноутбуках а тренировку запускают на внешних ресурсах.

Но видимо ты все же далек от всего этого.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Как интересно, т.е ситуацией ты не владеешь но при этом говоришь про «окупаемость».

Я не владею ситуацией с работой в этой сфере внутри РФ. Снаружи РФ с этим все нормально, мой конфиг окупился за 6.5 месяцев при том что это не основная моя работа. До этого были конфиги попроще что и дает мне право, по моему мнению что-либо рекомендовать с позиции практического опыта.

Далее, выше я написал, цитирую: я описал ситуацию для профессиональной разработки сетей, за денюжку, в таком случае любой инструмент окупается, вопрос лишь во времени окупания.

С какой частью этого высказывания вы не согласны?

Obezyan
()
Ответ на: комментарий от Obezyan

Подготовка данных, разведочный анализ и разметка стали распараллеливается на ядра аж бегом и любой современной рязани для этого хватит.

Под подготовкой данных для обучения нейросети я имею в виду смысловое обозначение данных, дающееся впервые человеком. То есть вырезали мы из записанной потоковой речи слово «красавица» в виде последовательности звуков, так эту последовательность звуков нужно же обозначить смыслом «красавица». Это обозначение кто кроме человека сможет сделать? Именно на это смысловое обозначение данных для обучения уйдут месяцы.

Enthusiast ★★★
()
Ответ на: комментарий от alex0x08

Ну и в волшебном зарубежье есть такая штука как аренда вычислительных ресурсов, в том числе под тренировку нейросетей. Поэтому никто из известных мне разработчиков, занимающихся нейросетями не страдает такой херней как «сбор компьютера под нейросети», они просто работают на ноутбуках а тренировку запускают на внешних ресурсах.

Флаг им в руки и барабан на шею, я абсолютно не против такого подхода. Я сам большую часть своей сознательной жизни тоже работал на ноутбуках. Потом отказался от них - задачи поменялись.

Но видимо ты все же далек от всего этого.

Как скажите, вам виднее.

Obezyan
()
Ответ на: комментарий от Enthusiast

Под подготовкой данных для обучения нейросети я имею в виду смысловое обозначение данных, дающееся впервые человеком. То есть вырезали мы из записанной потоковой речи слово «красавица» в виде последовательности звуков, так эту последовательность звуков нужно же обозначить смыслом «красавица». Это обозначение кто кроме человека сможет сделать? Именно на это смысловое обозначение данных для обучения уйдут месяцы.

Первым делом я пойду на Hugging Face (и одним глазком на github на всякий) и гляну что есть из wav2vec сетей из готового. Например, вот эту, хотя скорее всего возьму пяток разных и после тестов выберу наиболее подходящую, причем в размере сети я практически не ограничен тк 48GB видеопамяти. После чего напишу на python обработку-конвеер которая прогонит все записи и разметит как массив [файл, тайминг, токен «красавица»].

Это все займет вечер, ну может - два если в носу ковырятся.

Obezyan
()
Ответ на: комментарий от Obezyan

Вообщем-то я сам много занимаюсь разработкой, в том числе ко мне поступают заказы связанные с нейронками. Но я отказываюсь как раз из-за отсутствия оборудования и непредсказуемости результата.

Грубо говоря клиент видит «Mind Journey» и пишет ТЗ, в котором есть что-нибудь вроде «реализовать аналог этой нейросети, но с фичами». Объяснить масштаб такого проекта нереально, я пробовал.

Да, за это платят, клиенты готовы и 100к евро сразу зарядить, но нельзя на коленке сделать аналог чего-то на что потратили несколько миллиардов.

Все проекты связанные с нейросетями что мне известны - огромные и длительные, их пилят годами большие команды. Причем они все проходят по категории R&D, те являются по-сути исследовательскими.

Так что чем ты там собрался заниматься на домашнем компе видимо мы никогда не узнаем.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Вообщем-то я сам много занимаюсь разработкой, в том числе ко мне поступают заказы связанные с нейронками. Но я отказываюсь как раз из-за отсутствия оборудования и непредсказуемости результата.

Я тоже не сразу начал применять их в работе, начинал буквально как автор этой темы с желанием «посмотреть, потыкать, что это такое и как это можно применять».

Грубо говоря клиент видит «Mind Journey» и пишет ТЗ, в котором есть что-нибудь вроде «реализовать аналог этой нейросети, но с фичами». Объяснить масштаб такого проекта нереально, я пробовал.

Проблема с «Mind Journey» как и с «Chat GPT 4» в том что не доступны их исходники. При этом, например Stable Diffusion и предыдущие версии Chat GPT у меня установлены и работают локально без каких либо проблем. Дообучать их под «фичи» также можно, тут скорее проблема собрать нужный объем качественных данных для дообучения чем сам процесс этого самого дообучения.

Да, за это платят, клиенты готовы и 100к евро сразу зарядить, но нельзя на коленке сделать аналог чего-то на что потратили несколько миллиардов.

Это из серии «напиши мне убийцу facebook» или «нужен клон wechat» подразумевая что в понятие клона входит вся аудитория продукта.

Я не рассматриваю предложения такого качества ни в eCommerce ни в машинном обучении.

Вообще, мне с этим проще т.к. сети можно применять в eCommerce, например - в аналитике, различных предсказаниях по закупкам, продажам, заполненности склада и прочее и прочее.

Все проекты связанные с нейросетями что мне известны - огромные и длительные, их пилят годами большие команды. Причем они все проходят по категории R&D, те являются по-сути исследовательскими.

Тоже знаю таких ребят, но у меня не rocket science, а более практическое применение к реальным бизнес процессам, зачастую довольно специализированным в конкретной компании.

Так что чем ты там собрался заниматься на домашнем компе видимо мы никогда не узнаем.

Пока NDA не закончится - не узнаете, а оно пока не планирует заканчиваться. Да и не обо мне вообще речь в этой теме, а о том с чего можно начать если есть желание и бюджет собрать машину под это.

Obezyan
()
Ответ на: комментарий от Obezyan

После чего напишу на python обработку-конвеер которая прогонит все записи и разметит как массив [файл, тайминг, токен «красавица»].

А сами голосовые записи со смысловыми метками ты где возьмёшь? Купишь?

Enthusiast ★★★
()
Ответ на: комментарий от Enthusiast

А сами голосовые записи со смысловыми метками ты где возьмёшь? Купишь?

Я не совсем вас понимаю, зачем покупать если это можно сделать самому. Вы указали:

То есть вырезали мы из записанной потоковой речи слово «красавица» в виде последовательности звуков, так эту последовательность звуков нужно же обозначить смыслом «красавица».

Т.е. нужно промаркировать уже существующее у вас аудио в текстовые токены. Я правильно вас понял? Если нет, давайте определение «смысловых меток», я хз что это если это не токен/слово.

wav2vec сети используются для подобной разметки аудио в токены/слова. Вот прям суете ей аудиофайл и на входе текст получаете. Дальше, имея текст можно заниматься токенизацией и обработкой естественного языка (NLP) для выделения, например, эмоциональной окраски - позитивная/негативная речь и тд и тп.

Obezyan
()
Ответ на: комментарий от Obezyan

Т.е. нужно промаркировать уже существующее у вас аудио в текстовые токены. Я правильно вас понял? Если нет, давайте определение «смысловых меток», я хз что это если это не токен/слово.

Да, верно. Нужно разрезать речевой поток на отдельные отрезки-слова и обозначить каждый отрезок-слово его смысловым значением.

wav2vec сети используются для подобной разметки аудио в токены/слова. Вот прям суете ей аудиофайл и на входе текст получаете. Дальше, имея текст можно заниматься токенизацией и обработкой естественного языка (NLP) для выделения, например, эмоциональной окраски - позитивная/негативная речь и тд и тп.

Я понял - ты берёшь уже обученную сеть и просто подаёшь на неё звуковой поток. А если твоя уже обученная сеть будет работать неверно на настоящих данных в реальной жизни? Как ты её переобучишь? Где данные для обучения возьмёшь?

Enthusiast ★★★
()
Ответ на: комментарий от Enthusiast

Я понял - ты берёшь уже обученную сеть и просто подаёшь на неё звуковой поток. А если твоя уже обученная сеть будет работать неверно на настоящих данных в реальной жизни?

Есть метрики оценки модели. Например, WER (Word Error Rate) – мера оценки ошибки на уровне слов или CER (Character Error Rate) - которая рассчитывается аналогично, но на уровне букв. Тот пример что я скинул - одна из самых лучших сетей для вытаскивания текста на русском языке из аудио, работает оч хорошо. Также всегда можно скачать десяток и сравнить как их метрики так и между собой на тестовых примерах.

Как ты её переобучишь?

Создам свою обучающую выборку под задачу и дообучу.

Где данные для обучения возьмёшь?

Например, нам нужно вытаскивать текст из аудио на пусть будет въетнамском языке. Первым делом смотрю готовые сети, допустим - их нет. Беру английский вариант wav2vec и начинаю искать аудио датасет на вьетнамском.

Допустим, не нахожу, значит создаю свой. Каким образом? Ну например, сходу я лезу во въетнамский ютуб, нахожу ролики длиной не меньше 15 минут, с «диктором» у которого много записей где говорит преимущественно он. Это может быть блогерка, выпуски местных новостей и тд. Обязательно с субтитрами. Вытаскиваю и ролики и субтитры, несколько дней их режу «кусок аудио:кусок субтитров», подготавливаю в нужном формате и вуаля.

Можно заниматься фантюнингом wav2vec под вьетнамский. Кстати, примерно так подобные сети переводят с английского на остальные языки где нет датасетов, таких данных обычно оказывается достаточно.

Obezyan
()
Ответ на: комментарий от Obezyan

Допустим, не нахожу, значит создаю свой. Каким образом? Ну например, сходу я лезу во въетнамский ютуб, нахожу ролики длиной не меньше 15 минут, с «диктором» у которого много записей где говорит преимущественно он. Это может быть блогерка, выпуски местных новостей и тд. Обязательно с субтитрами. Вытаскиваю и ролики и субтитры, несколько дней их режу «кусок аудио:кусок субтитров», подготавливаю в нужном формате и вуаля.

Подвох в том, что чтобы нейронная сеть уверенно распознавала человеческую речь необходимо, чтобы каждое распознаваемое слово произнесли, как минимум, сто человек с разной скоростью произношения, тембром, акцентом для качественного обучения сети. На подготовку данных даже с «Ютуба» уйдут месяцы.

Enthusiast ★★★
()
Ответ на: комментарий от Enthusiast

Подвох в том, что чтобы нейронная сеть уверенно распознавала человеческую речь необходимо, чтобы каждое распознаваемое слово произнесли, как минимум, сто человек с разной скоростью произношения, тембром, акцентом для качественного обучения сети. На подготовку данных даже с «Ютуба» уйдут месяцы.

Вы несете какую-то дичь, для достижения WER в 20% достаточно 10-100 часов аудио и одного спикера (количество часов зависит от языка).

Для того чтобы перенять ИНТОНАЦИЮ речи спикера на том же языке нужна запись от 15 минут! до 2-3х часов.

Готовых бесплатных датасетов куча, на русском например вот 20000 часов. Есть отличный проект от Mozilla на разных языках и тд. Эта сфера уже довольно хорошо обработана.

Obezyan
()
Последнее исправление: Obezyan (всего исправлений: 1)
Ответ на: комментарий от Obezyan

@Enthusiast - ознакомьтесь пожалуйста с той сетью которую я предложил в качестве варианта для использования

Эту сеть обучали шведскому языку следующим образом:

Сделали размеченные данные объемом 10 минут, 1 час и 100 часов. Скормили их и потом лили записи с местного радио как есть чтобы понять насколько много нужно размеченных данных или можно ли обойтись неразмеченными. Выяснили что для достижения WER 5% нужно 100 часов размеченных данных, для WER 7.5% достаточно 10 часов, а для WER 11% - всего 10 минут. Остальное можно лить как есть.

Вывели закономерность что для сети в среднем 1 час размеченных данных ~ 100 часам неразмеченных. Думаю, сделать даже 1000 часов размеченных аудиоданных с ютуба задача выполнимая, а уж сколько можно лить неразмеченных данных оттуда… Хотя наверное проще для неразмеченных взять сразу вьетнамское радио, может у них есть «Good Morning Vietnam!» :)

Obezyan
()

Почитал всё тут написанное и вот какие изменения сделал:

  • Процессор: AMD Ryzen 7 7700X OEM → Ryzen 9 7900X
  • Материнская плата: MSI MAG X670E TOMAHAWK WIFI → ASRock B650E Taichi
  • Корпус: DEEPCOOL CG560 → Lian Li LANCOOL III
  • Кулер для процессора: DEEPCOOL AK620 → be quiet! Dark Rock PRO 4
  • Блок питания: DeepCool PX1000G → Chieftec PowerPlay 1050W
  • RTX 3080 12 ГБ → RTX 4070 12 ГБ

ОЗУ не стал увеличивать, пока что.

Вопрос можно считать закрытым. Огромное спасибо всем, кто участвствовал в топике!

Zero9
() автор топика