Обновить
119.89

Natural Language Processing *

Компьютерный анализ и синтез естественных языков

Сначала показывать
Порог рейтинга
Уровень сложности

Bag of tricks для разметки текстовых данных: Часть 1. Четыре способа размечать меньше

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

Привет! Меня зовут Ирина Кротова, я NLP-исследователь из компании MTS AI. Мы не понаслышке знаем, что сбор и разметка данных часто становятся “бутылочным горлышком" в проектах, связанных с машинным обучением. У нас в компании есть постоянная необходимость в разных видах разметки аудио, текста и изображений.

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

Читать далее

Как сделать своего “Марка”? Обучение

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

Привет! Ты уже знаешь, как генерировать новости с помощью Марка. Теперь расскажем, как же так получилось, что мы обучили языковую модель генерации новостей. Пришло время узнать, как можно файнтюнить большие генеративные модели под свои задачи.

Читать далее

О «раздутом пузыре» нейросетей

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

На днях я наткнулся на одно любопытное видео.

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

Утверждения:

1. Закон Мура больше не выполняется из-за фундаментальных физических ограничений ⇒ масштабирование нейросетевых моделей по вычислительному бюджету невозможно.

2. Нейросетевые модели внедряются слишком медленно.

3. Ответы нейросетевых моделей неконтролируемы и неинтерпретируемы.

Дальше обсудим каждое из них.

Читать далее

Обработка естественного языка (NLP). Личный опыт — мой первый запуск BERT

Время на прочтение4 мин
Охват и читатели399

BERT — Bidirectional Encoder Representations from Transformers

Здесь не будет рассказываться о том, что такое BERT, как это работает и для чего применяется — в сети об этом достаточно информации.

Это статья про личный опыт — как конкретно у меня получилось запустить BERT с чистого Colab по конкретным описаниям.

Читать далее

Пошаговый гайд: как мы ВКонтакте делаем собственный переводчик

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

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

Со стороны разработчиков сервисов тоже, казалось бы, современное машинное обучение уже близко к тому, чтобы достаточно было сделать import model_name from your_favourite_framework — и всё заработало. К сожалению, это не совсем так. Нельзя просто взять готовый претрейн и надеяться, что он будет хорошо переводить все именованные сущности. Нельзя просто обучиться на готовом кусочке WMT-данных и верить в то, что переводчик будет адекватно работать на специфичном домене. Нельзя просто взять обычный токенизатор и трансформер — и рассчитывать на корректный перевод текстов с шумами и опечатками.

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

Читать далее

Пишем умный поиск по коду с Open AI

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

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

Читать далее

Тестим Марка: как происходит генерация новостей

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

Сейчас Марк от нашего медиа "Маркер" — это генеративная языковая модель, которая умеет придумывать новостные статьи без помощи человека. Марк может писать свободно, опираясь на свой опыт и выбирая каждое слово самостоятельно. Либо же мы можем помочь ему с темой новости и дать начало заголовка или заголовок, тогда Марк продолжит нашу мысль.

Читать далее

Почему Chat GPT говорит по-русски с нейронным акцентом?  Специфика токенизации кириллицы нейронной сетью от Open AI

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели39K

Увидев очередную статью об утомившем всех Chat GPT от Open AI, рука невольно тянется в пистолету минусатору. Ну, в самом деле, сколько можно? Уже, кажется, все успели поиграть с чатом во всевозможных сценариях.

Однако один аспект, почему‑то, почти не затронут как на Хабре, так и в Рунете. Почему же все‑таки Chat GPT говорит по‑русски с весьма специфическим акцентом, который условно можно назвать «нейронным говорком»?

Чтобы понять суть вопроса, обратимся к теории. Чем занимается генеративная нейронная сеть такого типа?

Говоря просто и коротко она получает на вход набор токенов, пропускает их через некий «черный ящик» и выдает другой набор токенов. Вероятность выбора конкретного токена для ответа зависит от набора входящих токенов и конкретных настроек.

Но что же такое «токен»? Интересный факт заключается в том, что для английского языка токеном обычно выступают сочетания символов, зачастую совпадающие с короткими словами или часто встречающимися частями слов.

Возьмем, например, английскую панграмму:

“The quick brown fox jumps over the lazy dog”

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

Официальный токенизатор Open AI.

Показывает, что в этом предложении всего 9 токенов, содержащих 43 символа.

Читать далее

Краткая история NLP — Natural Language Processing

Время на прочтение6 мин
Охват и читатели5.1K

История использования систем обработки естественного языка насчитывает всего 50 лет, но изо дня в день мы используем различные модели NLP. В различных поисковых запросах, переводчиках и чат‑ботах. NLP возникло как слияние искусственного интеллекта и лингвистики. Лингвистика — это наука, изучающая языки, их семантику — смысловые единицы слов, фонетику — изучение звукового состава слов, синтаксис — номинативные и коммуникативные единицы языка.

Читать далее

ChatGPT как инструмент для поиска: решаем основную проблему

Время на прочтение40 мин
Охват и читатели144K

Вышедшая чуть больше месяца назад ChatGPT уже успела нашуметь: школьникам в Нью-Йорке запрещают использовать нейросеть в качестве помощника, её же ответы теперь не принимаются на StackOverflow, а Microsoft планирует интеграцию в поисковик Bing - чем, кстати, безумно обеспокоен СЕО Alphabet (Google) Сундар Пичаи. Настолько обеспокоен, что в своём письме-обращении к сотрудникам объявляет "Code Red" ситуацию. В то же время Сэм Альтман, CEO OpenAI - компании, разработавшей эту модель - заявляет, что полагаться на ответы ChatGPT пока не стоит.

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

Погрузиться с головой →

Real AI семантический анализатор. Онлайн-демо – овощи, фрукты и их свойства

Время на прочтение4 мин
Охват и читатели3K

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

Далее описание применяемой технологии, предметной области, ограничений и возможностей демо.

Читать далее

Падаем в кроличью нору. Ищем способ характеризовать текстовые датасеты

Время на прочтение10 мин
Охват и читатели3.1K

Всем привет! На связи Игорь Буянов, разработчик в команде разметки MTS AI. Сегодня я поделюсь с вами своими наработками, появившимися во время изучения метрик оценки генерации данных. Когда я только пришел в команду разметки, эта задача была особо актуальной - нас тогда просили нагенерить данные под тестирование информационного бота по COVID. Дело в том, что тестирование результатов выполнялось вручную, что значительно замедляло работу. Каких-либо автоматических метрик оценки качества генерации тестовых данных не существовало.

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

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

Читать далее

MedBench: NLP-задачи в медицине, модели и методы их решения

Время на прочтение14 мин
Охват и читатели7.2K

Привет, Хабр! Меня зовут Даниил Погуляка. Я студент четвертого курса МГТУ им. Н.Э. Баумана, факультета "Информатика, искусственный интеллект и системы управления". Уже некоторое время я занимаюсь изучением методов машинного обучения, в частности, касающихся автоматической обработки текстов (Natural Language Processing, NLP). В конце прошлого года мне удалось попасть на стажировку в Sber AI Lab. Оказавшись в команде проекта MedBench, у меня появилась возможность поработать над практическими NLP задачами. В этой статье я бы хотел рассказать вам о проекте, которым занимался на протяжении своей стажировки. Проект связан с использованием нейронных сетей в сфере медицины, но подробнее о нём после небольшого введения.

Читать далее

Ближайшие события

Важные исследования в области AI в 2022 г

Время на прочтение12 мин
Охват и читатели8.3K

Данная статья представляет собой свободный перевод раздела "Исследования" из доклада State of the Art 2022 (октябрь). Доклад State of the Art публикуется уже пятый год. Это подборка самых интересных вещей в мире AI, (конечно с точки зрения авторов). Отчет включает в себя несколько блоков:

Читать далее

О когезии и когерентности

Время на прочтение11 мин
Охват и читатели12K

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

Читать далее

Мы в город изумрудный идем дорогой трудной. Ваш компас в мир NLP

Время на прочтение5 мин
Охват и читатели3.6K

Всегда завидовал, что существует ресурс roadmap.sh, где есть разные дорожные карты для разработчиков, а для MLщиков, NLP в частности, нет. Устал я это терпеть и решил сделать сам. С другой стороны, меня интересовали вопросы: а NLP Уngineer это кто? А NLP Research engineer это уже другое? А это то же самое, что NLP Scientis? Чтобы хоть немного разобраться, я решил посмотреть, а что вообще сейчас требуется в вакансиях, где в заголовке фигурирует NLP. В результате вместо просто дорожной карты, получилось собрать еще парочку интересных диаграмм. Надеюсь тем, кто только смотрит в сторону NLP, она поможет сориентироваться, всем HR поможет в построении диаграмм компетенций, а специалистам поможет оценивать кандидатов на собеседовании.

Ссылка на репозиторий.

Читать далее

Разбираемся, как измерять разнообразие слов

Время на прочтение7 мин
Охват и читатели4.6K

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

Читать дальше →

Стихи, цветы и драконы на EMNLP 2022

Время на прочтение7 мин
Охват и читатели1.8K

EMNLP это одна из самых больших конференций в области обработки естественных языков. В этом году конференция проходила с 7 по 11 декабря в Абу-Даби. Из кучи статьей, представленных на конференции, я хотел бы выделить три, которые привлекли моё внимание. Эти статьи не самые полезные или известные, но они точно достойны упоминания. Две статьи были представлены в виде постеров, у третьей было полноценное выступление на конференции. Моя любимая из этих трех статей PoeLM, статья про генерацию стихов на испанском языке с формальными ограничениями.

Поехали!

Делаем фронт на React, а ChatGPT будет нашим Redux редьюсером

Время на прочтение6 мин
Охват и читатели12K

Приложение React/Redux представляет собой односторонний цикл потока данных. Пользователь взаимодействует с пользовательским интерфейсом, который производит действия Redux, которые отправляются в функции reducer, которые обновляют объект состояния приложения, который передается обратно в React для повторного отображения пользовательского интерфейса.

Разговор с ChatGPT также представляет собой односторонний цикл. Человек посылает запрос (действие), который передается языковой модели (редуктор), которая обновляет разговор (состояние) своим ответом.

Можем ли мы использовать последнюю модель ChatGPT для этих целей? Спойлер: да, можем!

Читать далее

I never asked for this. Как понять, на что способен аугментатор текстов

Время на прочтение6 мин
Охват и читатели1.8K

Привет, я Буянов Игорь. Разработчик в команде разметки MTS AI. Сегодня я вам расскажу о способе понять, на что способен ваш аугментатор текста и в каких случаях его лучше использовать.



История создания этой методики началась с задачи текстовой генерации, в которой разметчики должны писать тексты под определенный класс. Такой отчаянный способ создания данных, когда их нет совсем. В раздумьях о том, как облегчить труд разметчиков, мне пришла идея:
что если разметчики будут писать не весь объем текстов, а, скажем, только некоторую часть, пусть и большую, а меньшую добивать с помощью аугментаторов. Однако, как убедиться, что тексты, полученные от аугментатора, хотя бы соответствуют тематике класса? Ко всем ли текстам можно применять аугментатор и ожидать, что все будет работать как надо? Другими словами, надо получить характеристику аугментатора, чтобы знать, чего от него можно ожидать.


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

Читать дальше →

Вклад авторов