Обновить
113.64

Natural Language Processing *

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

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

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

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

Привет, 

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

Итак, передаем слово Андрею Лукьяненко, бывшему техлиду MTS AI.

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

Читать далее

Теперь наш синтез на 20 языках

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

hero_image


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


В этот раз мы добавили:


  • 1 высококачественный голос на русском языке (eugeny);
  • Синтез на 20 языках, 174 голоса;
  • В список языков входят 5 языков народов СНГ: калмыцкий, русский, татарский, узбекский и украинский;
  • В список языков входят 5 вариаций на тему романо-германских языков: английский, индийский английский, испанский, немецкий, французский;
  • Также в список языков входят 10 языков народов Индии;
  • Новую значительно улучшенную модель для простановки ударений и буквы ё со словарем в 4 миллиона слов и точностью 100% (но естественно с рядом оговорок);
  • Все модели наследуют все "фишки" прошлого релиза, кроме автоматической простановки ударений для языков отличных от русского;

Пока улучшение интерфейсов мы отложили на некоторое время. Ускорить модели еще в 3+ раза мы тоже смогли, но пока с потерей качества, что не позволило нам обновить их прямо в этом релизе.


Попробовать модель как обычно можно в нашем репозитории и в колабе.

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

Рейтинг русскоязычных энкодеров предложений

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

Энкодер предложений (sentence encoder) – это модель, которая сопоставляет коротким текстам векторы в многомерном пространстве, причём так, что у текстов, похожих по смыслу, и векторы тоже похожи. Обычно для этой цели используются нейросети, а полученные векторы называются эмбеддингами. Они полезны для кучи задач, например, few-shot классификации текстов, семантического поиска, или оценки качества перефразирования.

Но некоторые из таких полезных моделей занимают очень много памяти или работают медленно, особенно на обычных CPU. Можно ли выбрать наилучший энкодер предложений с учётом качества, быстродействия, и памяти? Я сравнил 25 энкодеров на 10 задачах и составил их рейтинг. Самой качественной моделью оказался mUSE, самой быстрой из предобученных – FastText, а по балансу скорости и качества победил rubert-tiny2. Код бенчмарка выложен в репозитории encodechka, а подробности – под катом.

Читать далее

Теория эволюции и работы мозга

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

Эволюция мозга (базовые предпосылки).

Существует тест Роршаха — надо назвать, что ты видишь в кляксе, в которой в принципе и увидеть ничего реального нельзя. Но то, что человек видит определяется необъяснимыми внутренними процессами в его мозге. Интерпретации ответов подобраны опытным путем и никак, и нигде не объяснены.

Из описания вариантов ответа к одной из картинок теста Роршаха для англоязычного пациента: «Медведь может символизировать агрессию, конкуренцию, независимость, восстановление, а также — чувство уязвимости, незащищенность или открытость и честность (игра слов по-английски: bear — медведь, bare — обнажать, обнаруживать, разоблачать).» Здесь прямым текстом сказано, что в мозге слова содержатся в виде текста, почему так вышло, будет объяснено в описании эволюции мозга. Мы можем запоминать и понимать текст без картинки (правила, определения, анекдоты — мы их не представляем, но понимаем).

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

Так же с помощью фМРТ исследований была создана семантическая карта головного мозга, из которой выходит, что крупные семантические группы слов (например, слова, связанные с едой, с действиями, с объектами, с домом), имеют в мозгу вполне конкретное представительство ссылка на статью. Кстати, в другой моей статье, ссылка на нее будет позже, как раз с этой точки зрения рассмотрены все слова.

Читать далее

Как автоматически переписать текст другими словами, сохранив смысл? Рассказываем про рерайт-сервис

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

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

Читать далее

Коллективное распознавание смысла

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

Предлагаемый материал является приложением в книге [1].

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

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

Читать далее

Итоги хакатона по синтезу речи и голосовым дипфейкам

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

22-24 апреля 2022 года в Российском Технологическом Университете МИРЭА при поддержке компании «Наносемантика» прошел студенческий хакатон по разработке алгоритмов генерации голосовых фейков. В течение 3-х дней 17 команд соревновались в разработке программы, которая копирует голос конкретного человека. Под катом — подробности и результаты прошедшего мероприятия.

Читать далее

Это наконец произошло: нейросеть и человек написали книгу. Вместе! Рассказываем, как им помогали разработчики

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

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

«Пытаясь проснуться» — это первый в мире сборник рассказов, родившийся в результате сотрудничества писателя и его «двойника»-нейросети. Из 24 текстов в нём только половина принадлежит Пепперштейну — ещё дюжину сочинила генеративная нейросеть ruGPT-3, дополнительно обученная на рассказах Павла. 

В этом тексте мы расскажем, как обучали Нейроличность — двойника писателя — и что теперь будет с литературой (спойлер: а всё очень даже хорошо будет!).

Читать далее

Алгебра текста без формул

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

Статья является рефератом Книги [1], основанной на представленных ранее публикациях [2], [3], [4] и [5].

Читать далее

Насколько естественен естественный язык? Представляем датасет RuCoLA

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


В последние годы в области NLP произошла настоящая революция: огромные нейросети, предобученные на сотнях гигабайт текстов, бьют все известные рекорды качества. Но обладают ли такие нейросети чутьём на «естественность» текста, которое есть у носителей языка? Оценка предложения по внутреннему чутью в лингвистике получила название приемлемости; умение давать подобную оценку — ещё один шаг на пути к общему пониманию языка. Чтобы узнать, насколько хорошо нейросети для русского языка справляются с этой задачей, мы публикуем RuCoLA (Russian Corpus of Linguistic Acceptability) — датасет русскоязычных предложений, размеченных по бинарной шкале приемлемости. Это совместный труд команды исследователей и NLP-разработчиков из SberDevices, ABBYY, Yandex Research, Huawei Noah’s Ark Lab и Факультета компьютерных наук ВШЭ. Также мы открываем лидерборд на данных RuCoLA, чтобы любой желающий мог проверить способности своих моделей или поучаствовать в развитии методов для оценки приемлемости.
Читать дальше →

NLP. Проект по распознаванию адресов. Natasha, Pullenti, Stanza

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

Многие аналитики данных сталкиваются с задачей распознавания адресов, напечатанных на документах. Для решения этой задачи я обратился к инструментам выявления сущностей в тексте с помощью NLP: NLTK, Spacy, Flair, DeepPavlov, Polyglot, AdaptNLP, Stanza, AllenNLP, HanLP, PullEnti, Natasha и тд. Глаза начали разбегаться. И что же делать? Конечно, выбрать самое лучшее. Я принял решение выбрать несколько самых популярных библиотек, поддерживающих русский язык, и сравнить, какую же из них использовать? Natasha, Stanza и PullEnti привлекли мое внимание. Далее пойдет речь именно об этих библиотеках.

Читать далее

Практические применения генеративных моделей: как мы делали суммаризатор текстов

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


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

Мы выводим в открытый доступ два новых сервиса: Рерайтер и Суммаризатор. Модель «Рерайтер» способна переписать любой текст другими словами с сохранением смысла вне зависимости от длины и формата — от новостей и художественной литературы до постов в социальных сетях. Модель «Суммаризатор» позволяет создать сжатое изложение исходного текста, сохраняющее его главные тезисы. Эта модель может быть полезна для экономии времени читателя, а также выделения главных мыслей объёмных документов, научной или бизнес-литературы. В частности, использовать сервис можно для подготовки обзоров научных работ на заданную тему, создания новостных дайджестов, выделения наиболее важных событий в лентах информагентств для аналитики. 
Читать дальше →

Находим главное в отзывах. Опыт разработчиков геопоиска Яндекса

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


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

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

Мы поняли, что нужно учиться систематизировать отзывы и выделять главное. Этот пост — про то, как мы стремились состыковать интересы пользователей с доступными нам технологиями в машинном обучении и на фронтенде. Рассказывать буду достаточно подробно, чтобы вы прошли этот путь вместе со мной и увидели все пробы и ошибки. Возможно, по дороге у вас возникнут свои мысли о том, как можно решать подобную задачу.
Читать дальше →

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

Разработка Gamio AI. Сквозь боль и баги

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

Gamio AI - текстовое приключение на русском языке, основанное на искусственном интеллекте.

Как бы пафосно это не звучало, мне удалось создать рабочую версию этой амбициозной идеи.

Читать далее

Если вы устраняете систематическую ошибку модели, то уже слишком поздно

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

Введение


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

  1. Мы обогатили данные, чтобы выявить сокрытые систематические ошибки
  2. Дополнили массив данных недостаточно представленными примерами, чтобы компенсировать гендерный перекос

Модель, обученная на нашем расширенном массиве данных CoNLL-2003, характеризуется снижением систематической ошибки и повышенной точностью, и это показывает, что систематическую ошибку можно устранить без каких-либо изменений в модели. Мы выложили в open source наши аннотации Named Entity Recognition для исходного массива данных CoNLL-2003, а также его улучшенную версию, скачать их можно здесь.
Читать дальше →

Как мы научили «AI да Пушкин» создавать стихи и какие еще технологии использовали

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

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

Читать далее

Реально ли привлечь Home Credit Bank за нарушение лицензии открытого проекта?

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

Недавно натолкнулся на статью в корпоративном блоге Home Credit Bank на Хабре.

Там есть ссылка на нашу статью на Хабре, статья в свою очередь ведет на наш проект, который опубликован под лицензией GNU Affero General Public License v3.0:

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

Но Home Credit Bank естественно не обращался к нам за коммерческой версией или лицензией для данной модели.

Поделиться опытом

Как мы слушаем и разбираем каждый звонок в банк

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


Сначала DSS LAB делает голос-текст, потом LSTM-классификаторы, сущности Spacy + Yargy (Natasha), лемматизация Pymorphy2, правки Fasttext и Word2Vec, 3 разных суммаризатора и наши решения. Мы можем анализировать ваш голос не только для того, чтобы понимать, о чём ведётся диалог, но и для того, чтобы искать места улучшений банковских продуктов после диалога.

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

Пример:

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

Само распознавание устроено следующим образом:

  1. Голос раскладывается на фонемы. Фонемы собираются в слова тем же решением.
  2. Из собираемых данных удаляются различные клиентские данные: номера карт, кодовые слова и так далее.
  3. Затем полученный поток слов снабжается пунктуацией (точками и запятыми) и заглавными буквами: это нужно для нейросетей, очень чувствительных к такому. Исправляются опечатки, корректируются термины (география).
  4. И на выходе получаются текстовые диалоги, как в чате: их анализирует уже нейросеть, пытающаяся привязать смысл в реальном времени.
  5. После окончания звонка тексты также анализируются нейросетями, отвечающими за сбор разных метрик по голосовой и чат-поддержке.

Давайте покажу реальные (обезличенные) примеры диалогов, чтобы было понятнее.
Читать дальше →

Модель-полиглот: как мы учили GPT-3 на 61 языке мира

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

Генеративные языковые модели уверенно обосновались в практике Natural Language Processing (NLP). Большие предобученные трансформеры двигаются сразу в трёх направлениях: мультимодальность, мультизадачность и мультиязычность. Сегодня мы расскажем про последнюю — о том, как учили модель на основе GPT-3 на 61 языке мира.

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

Этим релизом мы хотим привлечь внимание к развитию NLP для языков стран СНГ, а также народов России. Для многих из представленных языков эта модель стала первой авторегрессионной языковой моделью. 

Модель доступна в двух вариантах размеров: mGPT XL на 1,3 миллиарда параметров — в открытом доступе, а mGPT 13B — будет доступна в ML Space SberCloud.

Читать далее

Понимание оценки BLEU в кастомизированном машинном переводе

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

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

Читать далее

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