Byte Pair Encoding
Обработка текстов на сегодняшний день – флагман нейросетевых задач. Но, поскольку нейросети работают с числами, до передачи в модель текст нужно преобразовать, в том числе разбить на части – токены. Для этого есть множество подходов, и один из них BPE. Он используется в моделях BERT и GPT-2. Рассказываем, как он работает.
Оригинальная статья
Реализация Google
Реализация Facebook AI Research
Обгоняющая по скорости Google и Facebook в 10-50 раз реализация VK
😻 #NN
Обработка текстов на сегодняшний день – флагман нейросетевых задач. Но, поскольку нейросети работают с числами, до передачи в модель текст нужно преобразовать, в том числе разбить на части – токены. Для этого есть множество подходов, и один из них BPE. Он используется в моделях BERT и GPT-2. Рассказываем, как он работает.
Оригинальная статья
Реализация Google
Реализация Facebook AI Research
Обгоняющая по скорости Google и Facebook в 10-50 раз реализация VK
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27🔥6⚡3
Как работает BERT?
Модель BERT (Bidirectional Encoder Representations from Transformers) была представлена в статье от исследователей из Google AI Language. Она вызвала нешуточный ажиотаж в сообществе, и эту модель до сих пор все очень любят. Мы подготовили лонгрид о том, как она работает, и как ее использовать для своих задач.
Вот, кстати, ссылка на исходный код
😻 #NN
Модель BERT (Bidirectional Encoder Representations from Transformers) была представлена в статье от исследователей из Google AI Language. Она вызвала нешуточный ажиотаж в сообществе, и эту модель до сих пор все очень любят. Мы подготовили лонгрид о том, как она работает, и как ее использовать для своих задач.
Вот, кстати, ссылка на исходный код
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤26👍14
Крутой инструмент для ускорения LLM
Это Medusa, и она упрощает и ускоряет большие языковые модели. Делает она это так: в процессе обучения к LLM добавляется несколько так называемых «heads», которые затем отдельно настраиваются в процессе обучения. В процессе генерации каждый из этих выходов выдает несколько вероятных слов для соответствующей позиции. Затем эти варианты комбинируются и обрабатываются с помощью механизма внимания, а наиболее правдоподобные из них отбираются для дальнейшего декодирования.
🖥 Github
🗂 Подробнее о том, как это работает
😻 #NN
Это Medusa, и она упрощает и ускоряет большие языковые модели. Делает она это так: в процессе обучения к LLM добавляется несколько так называемых «heads», которые затем отдельно настраиваются в процессе обучения. В процессе генерации каждый из этих выходов выдает несколько вероятных слов для соответствующей позиции. Затем эти варианты комбинируются и обрабатываются с помощью механизма внимания, а наиболее правдоподобные из них отбираются для дальнейшего декодирования.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤3😇2
Детекция образов с R-CNN
Проблему классификации изображений неплохо решают сверточные нейронки (CNN). С ними мы можем отделить фото котят от фото щеночков. Но что делать, если объектов на картинке несколько? Здесь работают уже более сложные модели. Про изящную архитектуру одной из них – R-CNN, мы сегодня и расскажем.
😻 #NN
Проблему классификации изображений неплохо решают сверточные нейронки (CNN). С ними мы можем отделить фото котят от фото щеночков. Но что делать, если объектов на картинке несколько? Здесь работают уже более сложные модели. Про изящную архитектуру одной из них – R-CNN, мы сегодня и расскажем.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥17👍9❤5
Для тех, кто хотел разнообразить обучение
Представляем вашему вниманию: парень исполняет песенку про то, как обучить модельку в PyTorch. Весело, понятно, запоминается на ура.
😻 #forfun #NN
Представляем вашему вниманию: парень исполняет песенку про то, как обучить модельку в PyTorch. Весело, понятно, запоминается на ура.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
The Unofficial PyTorch Optimization Loop Song
A fun song to help you remember how to write a training loop and a testing loop in PyTorch.
The jingle is not endorsed by PyTorch whatsoever.
Materials for this video come from the Learn PyTorch for Deep Learning book - https://learnpytorch.io
Learn PyTorch…
The jingle is not endorsed by PyTorch whatsoever.
Materials for this video come from the Learn PyTorch for Deep Learning book - https://learnpytorch.io
Learn PyTorch…
👍19😁11🔥5
Как правильно поставить PyTorch, чтобы не взорвать компьютер
Как гласит древняя мудрость: "Главное испытание в жизни дсника – не математика и даже не программирование, а установка PyTorch". Поэтому вот вам простой пайплайн, как установить правильно и не сойти с ума:
0) Установите пакетный менеджер Anaconda.
1) Клонируйте нужный репозиторий:
2) Установите зависимости:
3) Теперь мы готовы с установке. Чтобы все прошло гладко, воспользуйтесь этим конструктором команд. Укажите свою ОС, Conda в качестве Package, язык и, если собираетесь кодить с CUDA, укажите версию, иначе оставьте опцию Default в последней строке. Запустите получившуюся команду, например:
4) Если вы решили работать с GPU, не забудьте скачать драйверы NVIDIA
4*) CUDA скачивать необязательно, так как conda внутри себя уже содержит все необходимое. Но если очень хочется, то сделать это можно тут
5) Вы великолепны и готовы к работе!
Надеемся, было полезно. Не забудьте сохранить!
😻 #advice #NN
Как гласит древняя мудрость: "Главное испытание в жизни дсника – не математика и даже не программирование, а установка PyTorch". Поэтому вот вам простой пайплайн, как установить правильно и не сойти с ума:
0) Установите пакетный менеджер Anaconda.
1) Клонируйте нужный репозиторий:
git clone --recursive https://github.com/pytorch/pytorch
cd pytorch
2) Установите зависимости:
conda install cmake ninja
pip install -r requirements.txt
3) Теперь мы готовы с установке. Чтобы все прошло гладко, воспользуйтесь этим конструктором команд. Укажите свою ОС, Conda в качестве Package, язык и, если собираетесь кодить с CUDA, укажите версию, иначе оставьте опцию Default в последней строке. Запустите получившуюся команду, например:
conda install pytorch torchvision torchaudio cpuonly -c pytorch
4) Если вы решили работать с GPU, не забудьте скачать драйверы NVIDIA
4*) CUDA скачивать необязательно, так как conda внутри себя уже содержит все необходимое. Но если очень хочется, то сделать это можно тут
5) Вы великолепны и готовы к работе!
Надеемся, было полезно. Не забудьте сохранить!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍37❤9🤨8🔥5😁1
Gradient Accumulation
Из-за ограничений памяти всегда рекомендуется обучать нейронную сеть с небольшим размером батча. Но что, если мы скажем вам, что можно увеличить размер батча без увеличения размера батча?
😻 #NN
Из-за ограничений памяти всегда рекомендуется обучать нейронную сеть с небольшим размером батча. Но что, если мы скажем вам, что можно увеличить размер батча без увеличения размера батча?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥27👍14🤯3❤2❤🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29🔥5❤3👌1😇1
Что такое torch.device()
Часто в коде для обучения нейросетей на торче можно встретить конструкцию, которая использует внутри себя метод device():
Это очень важная штука. При помощи нее мы определяем, где должны храниться тензоры. Тут мы как бы сообщаем, что хотим пользоваться GPU-ускорением, когда оно доступно, но при его отсутствии откатываться обратно к вычислениям на CPU.
Дальше остается только в нужных местах приписывать
P.S. Важно перенести параметры устройства на соответствующее устройство прежде, чем передавать их оптимизатору; иначе оптимизатор не сможет правильно отслеживать параметры!
😻 #python #NN
Часто в коде для обучения нейросетей на торче можно встретить конструкцию, которая использует внутри себя метод device():
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
Это очень важная штука. При помощи нее мы определяем, где должны храниться тензоры. Тут мы как бы сообщаем, что хотим пользоваться GPU-ускорением, когда оно доступно, но при его отсутствии откатываться обратно к вычислениям на CPU.
Дальше остается только в нужных местах приписывать
.to(device)
. Это удобный способ отправлять параметры устройства на GPU, если в качестве device задан GPU, так как иначе (если device == CPU) ничего делаться не будет. P.S. Важно перенести параметры устройства на соответствующее устройство прежде, чем передавать их оптимизатору; иначе оптимизатор не сможет правильно отслеживать параметры!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤19👍12🎃2🕊1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍38❤4🔥4😐1
А мы написали нашу первую статью на Хабр!
Посвятили ее крутой библиотеке RecTools от коллег из МТС. Внутри:
▶️ за что мы так любим эту библиотеку;
▶️ ликбез по основным рексис-моделям (ItemKNN, ALS, SVD, Lightfm, DSSM);
▶️ как готовить данные и запускать модели в библиотеке;
▶️ как рассчитывать метрики;
▶️ оставили много полезных дополнительных материалов.
Очень старались, так что ждем ваших реакций!
😻 #NN #train
Посвятили ее крутой библиотеке RecTools от коллег из МТС. Внутри:
Очень старались, так что ждем ваших реакций!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍55🔥20👏4🌚3
Encoder-Decoder: это база
Encoder-Decoder – это классическая парадигма для задач seq2seq. Она состоит (внезапно) из энкодера и декодера. Заглядывайте в карточки – там мы все объяснили подробнее, и даже разобрали простейшую Encoder-Decoder архитектуру.
😻 #NN
Encoder-Decoder – это классическая парадигма для задач seq2seq. Она состоит (внезапно) из энкодера и декодера. Заглядывайте в карточки – там мы все объяснили подробнее, и даже разобрали простейшую Encoder-Decoder архитектуру.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45🔥11❤6
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤35👍13🔥12❤🔥5
Анатомия и тренды NLP
Как развивается наука NLP? Какие области исследований в ней существуют? Что нас ждет дальше? Мы вдохновились этой статьей и раскидываем ответы по полочкам.
😻 #NN
Как развивается наука NLP? Какие области исследований в ней существуют? Что нас ждет дальше? Мы вдохновились этой статьей и раскидываем ответы по полочкам.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30🔥4❤3
Сверточные нейросети впервые были предложены дедушкой Лекуном еще в далеком 1988 году. Прошло почти 36 лет, а это до сих пор одна из самых используемых архитектур в DL. Ёмко рассказываем, как это работает, а в конце объясняем, как решить самую распространенную задачу на свертки с собеседований.
P.S. После прочтения точно получится хакнуть вчерашнюю задачу.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥43👍11❤🔥5❤4🤯2
OpenSource vs ClosedSource LLM
Большие языковые модели с каждым днем внедряются все глубже в бизнес, стартапы и даже пет-проекты. Но какие модели использовать – открытые или закрытые? Вот в чем вопрос...
А вы на какой стороне?
😻 #NN
Большие языковые модели с каждым днем внедряются все глубже в бизнес, стартапы и даже пет-проекты. Но какие модели использовать – открытые или закрытые? Вот в чем вопрос...
А вы на какой стороне?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😇14🤔6🥰4🔥3