Как стать автором
Обновить
26
0.4

Making good things happen

Отправить сообщение

Как я обучил модель, которая понимает русский лучше GPT 3.5 Turbo

Время на прочтение3 мин
Количество просмотров5.6K

В этой статье я расскажу, как я смог обучить модель, которая превзошла GPT 3.5 Turbo на русскоязычной части MT-Bench. Также я рассмотрю новую конфигурацию для обучения на двух графических процессорах параллельно с помощью accelerate и deepspeed.

Особенный интерес представляет мой датасет для обучения. Он получен из сабсета мультиязычных промтов набора lightblue/tagengo-gpt4 на русском, английском и китайском, всего 10 тысяч примеров, сгенерированных с помощью GPT-4o. Это в 8 раз меньше, чем исходный набор Tagengo, но обученная на последнем Suzume, как показали бенчмарки, лишь очень незначительно превосходит мою модель на ru_mt_bench, а на англоязычном бенче и вовсе уступает ей. Это значит, что я в разы сэкономил на GPU за счет более высокого качества данных, полученных с помощью GPT-4o. 

Я использовал скрипт для получения ответов по заданным промптам. Для генерации русскоязычной выборки я изменил часть скрипта, чтобы выбрать все промпты на русском из Tagengo (8K примеров), так как основной фокус при обучении модели был на русском языке. 

В итоге я получил датасет ruslandev/tagengo-rus-gpt-4o и приступил к обучению.

Для этого я создал виртуальную машину с NVIDIA H100, используя сервис immers.cloud. Для достижения наилучших результатов по instruction-following (что проверяется на MT-Bench) я взял в качестве исходной модели meta-llama/Meta-Llama-3-8B-Instruct. Именно на ней обучена модель Suzume, у которой высокая оценка на MT Bench. Предыдущие эксперименты показали, что базовая Llama-3 8B,  а особенно ее четырехбитная версия для QLoRA  unsloth/llama-3-8b-bnb-4bit - значительно отстает по оценкам бенчмарка.

Читать далее
Всего голосов 25: ↑24 и ↓1+32
Комментарии16

Как создать свой стикер пак с помощью нейросети Stable Diffusion

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров17K

Вы знали, что не обязательно быть дизайнером, чтобы создать свой красивый пак стикеров?

Сегодня я поведаю историю создания своего стикерпака из 20+ стикеров с моим персонажем по имени Эвелинн с помощью нейросетей. Вам не понадобится мощная видеокарта и даже Photoshop(в большинстве случаев): я покажу, как сделать всё это прямиком в браузере. Это простой, доступный и бесплатный способ создания уникальных стикеров, справится даже чайник, надеюсь, он уже закипел, приступим!

Читать далее
Всего голосов 29: ↑28 и ↓1+33
Комментарии13

Архитектура RAG: часть вторая — Advanced RAG

Уровень сложностиСложный
Время на прочтение7 мин
Количество просмотров4.9K

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

Читать далее
Всего голосов 18: ↑18 и ↓0+20
Комментарии2

PINN или нейросети, знающие физику

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров2.6K

Что такое PINN и какова область их применения?

PINN появились сравнительно недавно (в 2019 году была опубликована работа Raissi), но уже активно применяются для некоторых задач физики. Отличительная особенность данных нейросетей состоит в том, что в Loss‑функцию включены невязки от уравнений, которые описывают рассматриваемый физический процесс. Вход такой нейросети — это координаты (пространственные или временные, в зависимости от задачи). И еще одна особенность — для обучения не требуется таргетов, так как, повторюсь, в Loss минимизируется отклонение предсказанных значений от уравнений.

Можно сказать, что PINN — это замена численному моделированию и тогда, возникает вопрос: «А нужны ли нейросети там, где хорошо работают численные методы». Но не все так просто. Представьте, что Вы или Ваш коллега провел эксперимент, например, измерил скорости частиц в потоке жидкости, или получил точечные измерения температуры. Если Вы действительно имеете опыт проведения эксперимента, наверняка знаете, что экспериментальные данные далеко не идеальны и могут принести много головной боли при обработке. А теперь представим, что все же Вы эту обработку провели, получили датасет из эксперимента, и теперь хотите эти данные использовать в уравнениях, чтобы получить другие параметры течения. Например, измерили скорость, а из уравнений гидродинамики, хотите получить давление. Или другими словами, провести ассимиляцию данных, говоря на современном околонаучным языком. Численное моделирование в таком случае можно дать сбой, потому что даже тщательно отфильтрованные данные могут быть шумными (особенно если от них требуется брать производные, а если еще и вторые, то совсем, шляпа). Или их может быть мало (например, температуру измеряли термопарой в нескольких точках). В данном случае, вроде, эксперимент есть и потенциально восстанавливать одни величины по другим можно, решая уравнения. И тут на помощь могут прийти PINN. Потому что они работают иначе, чем численные методы. Они не используют схем переноса, а параметры нейросети минимизируются в выбранных точках.

Читать далее
Всего голосов 6: ↑6 и ↓0+10
Комментарии6

Его величество Граф

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров5.2K

Графы для меня особенная тема, в них есть нечто таинственное и мощное.

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

Я не буду рассказывать основы графов, они есть в Википедии.

Цель статьи — поделиться с вами некоторыми случаями из моей практики, когда графы становились естественной частью какой‑то задачи. Иногда без них задачу решить было невозможно. Иногда через них решение получалось более изящное. А иногда просто тяга к перфекционизму, графы это круто же).

Ну что, поехали, будет интересно!

Читать далее
Всего голосов 11: ↑11 и ↓0+17
Комментарии21

Играем в GOLF. Как обучить нейросети точно предсказывать геометрию молекул, используя малое число данных

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров1.4K

Привет! Меня зовут Артем Цыпин, я исследователь в Институте искусственного интеллекта AIRI. Наша команда занимается применением глубокого обучения в науках о жизни. В сферу наших интересов входят такие задачи как поиск новых лекарственных препаратов, дизайн материалов, анализ растворимости и другие. 

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

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

Читать далее
Всего голосов 13: ↑13 и ↓0+17
Комментарии3

Алгоритмы, вдохновлённые природой. Часть 2

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров4.2K

Первая часть

В мире современных технологий учёные всё чаще обращаются к природе за вдохновением для создания новых алгоритмов. Одним из таких примеров является бактериальный алгоритм поиска (Bacterial Foraging Algorithm, BFA), который моделирует процесс поиска пищи бактериями. С момента своего появления в 2002 году BFA привлекает внимание благодаря своей эффективности в решении сложных задач оптимизации. Мы рассмотрим, как именно работает этот алгоритм, какие биологические процессы лежат в его основе и как он может быть применён.

Читать далее
Всего голосов 11: ↑10 и ↓1+12
Комментарии8

Возвращение частного облака и интерес к инфраструктуре «реального времени»: что с последними трендами

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров1.6K

Начиная с середины 2010-х эксперты пророчили «смерть» частному облаку — то есть облачной среде, созданной и используемой одной компанией, в отличие от общей инфраструктуры, доступной в публичных облаках. Большая часть интереса к экосистеме облачных вычислений была сосредоточена на публичных облачных платформах. Бизнес массово переходил на IaaS, чтобы уменьшить затраты на обслуживание железа и поддержку ИТ-систем. 

Пользователями private cloud в основном оставались компании со специфическими требованиями к безопасности. Например, медицинские организации, которым необходимо хранить данные о пациентах в соответствии с нормами федерального законодательства. 

В сегодняшнем материале поговорим, как возродился интерес организаций к частным облакам, о тренде на универсальные и отраслевые платформы и о том, из-за чего активно развивается направление edge computing.

Читать далее
Всего голосов 10: ↑9 и ↓1+11
Комментарии0

Есть ли жизнь до fit/predict?

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров1.4K

Всем привет! Меня зовут Даниил Карпов, я старший NLP-разработчик в MTS AI. В эпоху LLM и огромных датасетов, вмещающих в себя весь интернет, кажется, что качество самих данных ушло немного на второй план: чем больше данных/параметров, тем лучше. Однако экстенсивный рост рано или поздно упирается в ограничения, когда становится уже слишком дорого/невозможно его продолжать. Роль хороших данных не стоит недооценивать, грамотный отбор может помочь значительно ускорить и удешевить обучение с одной стороны, тогда как отбраковка откровенно плохой разметки поможет улучшить качество с другой. Здесь я расскажу о некоторых из таких методов, которые использовались в процессе подготовки данных.

Читать далее
Всего голосов 8: ↑8 и ↓0+9
Комментарии0

Как анализировать тысячи отзывов с ChatGPT? Частые ошибки и пример на реальных данных

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров5.7K

В этой статье я расскажу про свой опыт решения рабочей задачи — анализ отзывов о компании от пользователей. Мы разберем возможные ошибки и посмотрим на пример кода и реальных данных. Гайд будет полезен всем, у кого нет большого опыта в анализе данных или работе с LLM через API.

Читать далее
Всего голосов 20: ↑19 и ↓1+19
Комментарии12

Простые модификации для улучшения табличных нейронных сетей

Время на прочтение25 мин
Количество просмотров3.2K

Simple Modifications to Improve Tabular Neural Networks

 Растет интерес к архитектуре нейронных сетей для табличных данных. В последнее время появилось множество табличных моделей глубокого обучения общего назначения, вычислительная мощность которых иногда соперничает с возможностями деревьев решений с градиентным бустингом (GBDT - gradient boosted decision trees). Последние модели черпают вдохновение из различных источников, включая GBDT, машины факторизации и нейронные сети из других областей применения. Предыдущие табличные нейронные сети также используются, но, возможно, недостаточно учтены, особенно для моделей, связанных с конкретными табличными задачами. В данной статье основное внимание уделяется нескольким таким моделям и предлагаются модификации для повышения их производительности. Показано, что при модификации эти модели конкурируют с ведущими табличными моделями общего назначения, включая GBDT.

Введение

В последнее время многие архитектуры нейронных сетей были представлены в качестве табличных решений общего назначения. Некоторые примеры: Tabnet (Арик и Пфистер 2020), TabTransformer (Хуан и др. 2020), NODE (Попов, Морозов и Бабенко 2019), DNF-сеть (Абутбул и др. 2020). Внедрение этих и других моделей демонстрирует растущий интерес к применению глубокого обучения к табличным данным. Это не связано с отсутствием решений, выходящих за пределы возможностей глубокого обучения. Деревья решений с градиентным бустингом (GBDT) являются классом очень хороших моделей общего назначения и фактически часто используются табличными моделями глубокого обучения – как в качестве источника вдохновения, так и в качестве стандарта по производительности.

Читать далее
Всего голосов 4: ↑2 и ↓20
Комментарии0

Специалисты по информатике изобрели новый эффективный способ подсчёта уникальных элементов

Время на прочтение4 мин
Количество просмотров19K

Представьте, что вас отправили в девственный тропический лес, чтобы провести перепись диких животных. Каждый раз, когда вы видите животное, вы делаете снимок. Ваша цифровая камера будет фиксировать общее количество снимков, но вас интересует только количество уникальных животных — всех тех, которых вы ещё не посчитали. Как лучше всего получить это число? «Очевидное решение — запомнить всех животных, которых вы уже видели, и сравнивать каждое новое животное с этим списком», — говорит Лэнс Фортноу, специалист по информатике из Иллинойского технологического института. Но есть и более умные способы, добавил он, потому что если у вас тысячи записей, то очевидный подход далеко не так прост.

Всё становится ещё хуже. Что, если вы — Facebook, и вам нужно подсчитать количество отдельных пользователей, которые заходят на сайт каждый день, даже если некоторые из них заходят с нескольких устройств и в разное время? Теперь мы сравниваем каждый новый вход со списком, который может исчисляться миллиардами.

Читать далее
Всего голосов 76: ↑75 и ↓1+86
Комментарии50

Жёсткое руководство

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров27K

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

Читать далее
Всего голосов 63: ↑52 и ↓11+58
Комментарии100

Оптический поток: укрощение движения с помощью математики

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров4.4K

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

Читать далее
Всего голосов 4: ↑4 и ↓0+5
Комментарии8

Plane-based геометрическая алгебра для описания движения тел

Уровень сложностиСложный
Время на прочтение20 мин
Количество просмотров4K

Этот текст логически состоит из трёх частей. Сначала кратко расскажу про геометрическую алгебру с точки зрения математики. Потом расскажу как можно взять одну конкретную алгебру и использовать её для описания вращения и перемещения тел. И вишенка на торте - покажу, как будут выражаться физические сущности типа силы и момента, импульса, момента инерции и уравнений движения тел.

Читать далее
Всего голосов 40: ↑40 и ↓0+53
Комментарии10

Midjourney и промпты для пиксельных артов

Время на прочтение2 мин
Количество просмотров4.5K

Привет, чемпионы!

Часто ли вы обращаетесь к Midjourney или Stable Diffusion, чтобы нарисовать фантастический арт? Я да - нравится позалипать пару минут на фантастический арт. Давайте сегодня учиться генерировать подобные пикчи за пару кликов:

Посмотреть промпты
Всего голосов 10: ↑6 и ↓4+3
Комментарии10

Решаем простую статистическую задачу пятью способами

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров5.5K

Вот тут ув. @dimview на пальцах и Си объясняет за бутстрап решая несложную задачу. И в статистике существует 100500 разных тестов для (не)подтверждения нулевой гипотезы.

Давайте используем ряд самых распространеных и посмотрим на результаты. В конце сравним с бутстрапом. Изложение будет сопровождаться кратким выводом и объяснением основных тестов, их "ручной" реализацией и сравнением результата с готовыми тестами из пакета scipy.stats. В этом плане, мне кажется, повторение лишним не будет, т.к. позволит лучше понять и уяснить принцип и особенности тестов.

Сама задача звучит как: "И вот свежие результаты — в тестовой группе из 893 пришедших у нас что-то купили 34, а в контрольной группе из 923 пришедших что-то купили 28. Возникает вопрос — идти к начальству и говорить «в тестовой группе конверсия 3.81%, в контрольной группе 3.03%, налицо улучшение на 26%, где моя премия?» или продолжать сбор данных, потому что разница в 6 человек — ещё не статистика?"

Читать далее
Всего голосов 8: ↑7 и ↓1+8
Комментарии4

Используем Gemini для просмотра лекции

Время на прочтение9 мин
Количество просмотров14K

В феврале Google мы познакомились с Gemini 1.5 Pro с контекстным окном в 1 миллион токенов. Больший размер контекста означает, что Gemini 1.5 Pro может обрабатывать огромные объемы информации за один раз — 1 час видео, 11 часов аудио, 30 000 строк кода или более 700 000 слов. Это делает его на голову выше других моделей.

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

Приятного прочтения!

Читать далее
Всего голосов 16: ↑15 и ↓1+14
Комментарии15

Кто реально угрожает C++ (нет, Rust, не ты)

Время на прочтение14 мин
Количество просмотров76K

Привет! Меня зовут Александр Каленюк, и я крепко подсел на C++. Пишу на C++ 18 лет кряду, и все эти годы отчаянно пытаюсь избавиться от этой разрушительной зависимости.

Всё началось в конце 2005 года, когда мне довелось писать движок для симуляции 3D-пространства. В этом движке было буквально всё, чем язык C++ мог похвастаться в 2005 году. Трёхзвёздочные указатели, восьмиуровневые зависимости, C-подобные макросы повсюду. Кое-где – вкрапления ассемблера. Итераторы в стиле Степанова и мета-код в стиле Александреску. В общем, всё. Кроме ответа на самый важный вопрос: зачем?

Читать далее
Всего голосов 220: ↑208 и ↓12+244
Комментарии361

Скрытые цепи Маркова, алгоритм Витерби

Время на прочтение5 мин
Количество просмотров60K
Нам нужно реализовать детектор лжи, который по подрагиванию рук человека, определяет, говорит он правду или нет. Допустим, когда человек лжет, руки трясутся чуть больше. Сигнал может быть таким:

Исходный сигнал

Интересный метод, описан в статье «A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition» L.R. Rabiner, которая вводит модель скрытой цепи Маркова и описывает три ценных алгоритма: The Forward-Backward Procedure, Viterbi Algorithm и Baum-Welch reestimation. Несмотря на то, что эти алгоритмы представляют интерес только в совокупности, для большего понимания описывать их лучше по отдельности.
Читать дальше →
Всего голосов 74: ↑73 и ↓1+72
Комментарии25
1
23 ...

Информация

В рейтинге
1 881-й
Откуда
Stockholms Län, Швеция
Зарегистрирован
Активность