Как стать автором
Обновить
22.12
Рейтинг

Natural Language Processing *

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

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

Теория групп слов, на базе которых работает мышление

Алгоритмы *Машинное обучение *Искусственный интеллект Мозг Natural Language Processing *

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

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

В мозге есть карта реальности и есть общий план действий (см. рис. 1). По плану надо перейти через переход. Человек стоит перед переходом и мозг ищет в памяти сцены ко всему, что на карте. Потенциальных сцен много, но учитывая план, что надо перейти через дорогу, мозг находит сцену с переходом, светофором (они есть на карте местности) и с результатом действия, который подходит к плану. Сцена это кусочек карты, но например, на карте светофор имеет свое место, а на сцене он находится в какой то зоне (это понято на основе опыта).

Читать далее
Всего голосов 6: ↑2 и ↓4 -2
Просмотры 1.8K
Комментарии 4

Новости

Как мы сделали распознавание речи нескольких говорящих

Блог компании SberDevices Машинное обучение *Искусственный интеллект Natural Language Processing *Голосовые интерфейсы *

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

Не так давно мы отметили 1 миллион проданных устройств с виртуальными ассистентами Салют. В нашей линейке в числе прочего представлены farfield-устройства, то есть те, с которыми можно “разговаривать” на расстоянии: смарт-дисплей SberPortal, ТВ-медиацентр SberBox Top и умная медиаколонка SberBox Time. В комнатах, где они стоят, может говорить одновременно несколько людей или играть телевизор, что существенно усложняет задачу распознавания. Иногда необходимость распознать больше одного голоса на записи возникает и у клиентов нашего API SmartSpeech — например, если это разговор двух людей.

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

Читать далее
Всего голосов 22: ↑21 и ↓1 +20
Просмотры 2.6K
Комментарии 13

Анализ различий подачи новостей в Telegram-каналах

Python *Data Mining *Визуализация данных *Машинное обучение *Natural Language Processing *
Из песочницы

Привет. Прошло уже почти полгода как я сделал новостной агрегатор каналов в Телеграме с открытым исходным кодом. Краткую статью про него можно прочитать на VC. Здесь же я бы хотел поделиться некоторыми интересными вещами, которые я нашёл в данных за всё время работы агрегатора.

Дисклеймер 1: многое из этого отчёта может показаться политизированным. Но здесь я не делаю никаких выводов про то, кто прав, а кто виноват; кто грязный пропагандист, а кто носитель священной истины.

Дисклеймер 2: это не руководство по визуализации данных средствами Plotly и PyVis. В самой статье я не привожу никакого кода и не объясняю, почему он устроен именно так. При этом Colab с кодом открыт, и примеры оттуда вполне можно использовать.

Google Colab: ссылка на ноутбук

Хочу знать подробности!
Всего голосов 47: ↑41 и ↓6 +35
Просмотры 8.6K
Комментарии 23

Автоматическое реферирование текстов. Обзор работ

Блог компании Unistar Digital | Юнистар Диджитал Семантика *Математика *Машинное обучение *Natural Language Processing *

Я думаю, многим знакома ситуация, когда в сжатые сроки необходимо ознакомиться с большим объёмом текстов – статей, обзоров, сюжетов, отзывов и так далее. Читать их все от начала и до конца слишком напряжно, не правда ли? И здесь на помощь приходят рефераты – краткие выжимки текстов, содержащие только самое главное и важное. Написанием рефератов занимаются зачастую эксперты, однако такая работа требует немало времени и усилий. Кроме того, труд экспертов должен, само собой, оплачиваться. Решение – применять методы автоматического реферирования текстов (Automatic Summarization), то есть порождать рефераты с помощью специальных компьютерных программ. В этой статье мы познакомимся с некоторыми наиболее распространёнными подходами к решению данной задачи.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 1K
Комментарии 0

Экзибит, прокачай мой трансформер или Основные идеи по улучшению модели трансформера с 2018 по 2020 год (часть 1)

Блог компании ГК ЛАНИТ Машинное обучение *Natural Language Processing *
Перевод

В июне 2021 года вышла статья “A Survey of Transformers” - обзор различных нововведений, сделанных с применением архитектуры “трансформер” после ее появления в материале “Attention is all you need”.

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

Представляю в блоге ЛАНИТ обзор статьи “A Survey of Transformers”.

Читать далее
Всего голосов 19: ↑19 и ↓0 +19
Просмотры 1.1K
Комментарии 1

Fine-Tune модели основанной на трансформерах (Rubert) для классификации текстов

Python *Data Mining *Natural Language Processing *
Tutorial

Задача классификации текста уже давно является устоявшейся во многих компаниях. Она используется для определения настроения клиентов, разделение документов на заранее известные темы, детекции фейковых новостей и т.д. Сегодня я представлю state of the art подход для решения задачи бинарной классификации, а именно детекция сообщений, в которой присутствует жалоба на сотрудника.

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

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

Алгоритм обучения CBOW архитектуры для векторизации слов

Блог компании Unistar Digital | Юнистар Диджитал Семантика *Математика *Машинное обучение *Natural Language Processing *

В этой статье подробно разбирается алгоритм обучения архитектуры CBOW (Continuous Bag of Words), которая появилась в 2013 году и дала сильный толчок в решении задачи векторного представления слов, т.к. в первый раз на практике использовался подход на основе нейронных сетей. Архитектура CBOW не столь требовательна к наличию GPU и вполне может обучаться на ЦП (хотя и более медленно). Большие готовые модели, обученные на википедии или новостных сводках, вполне могут работать на 4-х ядерном процессоре, показывая приемлемое время отклика.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 1.2K
Комментарии 3

История о том, как фронтендер YaLM 100B на одной RTX 3070 TI запускал

Open source *Python *Машинное обучение *Natural Language Processing *

В июне Яндекс опубликовал нейросеть YaLM 100B. Нейросеть умеет генерировать тексты. А это очень мощная вещь, можно попробовать массу всего полезного (и не очень) создать с ее помощью, от сюжетов для книг, игр и приложений, заканчивая рерайтом статей или того хуже, дорвеями.

Эта штука имеет лицензию Apache 2.0. Но чтобы запустить нужно ~ 200GB GPU  видеопамяти!

И еще есть нюанс, проверить нейронку в работе, не так-то просто. Яндекс не предоставили ни демок, ни инструкций, как запустить бюджетно YaLM 100B. Пока все ждут урезанную или онлайн версию, я познакомился с ней поближе. Об этом и лонгрид. 

Спойлер, дальше рассказ пойдёт о том, через что я прошёл и результаты. Исходников не будет.

Поехали!
Всего голосов 32: ↑25 и ↓7 +18
Просмотры 4.1K
Комментарии 17

Реален ли (и нужен ли нам) медицинский нейросетевой чат-бот?

Блог компании MeanoTek Научно-популярное Искусственный интеллект Телемедицина Natural Language Processing *


Не так давно я увидел статью про (неудачное) создание медицинского чат-бота и вспомнил, что и сам хотел написать текст на эту тему, но в отличии от авторов я хочу поговорить о создании медицинского чат-бота с помощью языковой модели, такой как GPT-2/GPT-3. В теории такой подход позволяет избежать необходимости вручную проектировать чат-бот: извлекать формулировки симптомов, сопоставлять их с каноническими значениями в базе, реализовывать логику диагностики и т. п. Насколько реально заменить врача языковой моделью, обсуждаем в статье.
Читать дальше →
Всего голосов 6: ↑4 и ↓2 +2
Просмотры 790
Комментарии 2

12 схем архитектуры английской грамматики

Реверс-инжиниринг *Образование за рубежом IT-эмиграция Изучение языков Natural Language Processing *

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

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

Читать далее
Всего голосов 36: ↑28 и ↓8 +20
Просмотры 22K
Комментарии 86

Нейросетевой подход к кредитному скорингу на данных кредитных историй

Блог компании Альфа-Банк Big Data *Машинное обучение *Искусственный интеллект Natural Language Processing *

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

Мы уже рассказывали о построении моделей на последовательностях карточных транзакций и транзакций расчетного счета для решения задачи кредитного скоринга. В обоих случаях вместо классических подходов – логистической регрессии и градиентного бустинга – использовались настоящие «черные ящики»: рекуррентные нейронные сети. Теперь же мы хотим рассказать о применении этого неклассического подхода на другом источнике данных – кредитных историях.

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

Читать далее
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 3.6K
Комментарии 12

Автоматический синтез речи: взгляд лингвиста

Блог компании Unistar Digital | Юнистар Диджитал Семантика *Машинное обучение *Natural Language Processing *Голосовые интерфейсы *

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

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Просмотры 2.1K
Комментарии 4

Комбинаторные свойства русского текста

Читальный зал Natural Language Processing *
Из песочницы

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

Читать далее
Всего голосов 14: ↑5 и ↓9 -4
Просмотры 2.1K
Комментарии 50

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

Блог компании SkillFactory Искусственный интеллект Natural Language Processing *
Перевод

Большие языковые модели, например GPT-3, в основном использовались для генерации текста, но язык — лишь средство достижения цели. В ближайшие годы модели станут не просто говорить, а действовать. Подробности — к старту нашего флагманского курса по Data Science.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 1.5K
Комментарии 4

Любовь, люди и роботы: как создать чат-бота, за которого не стыдно

Блог компании Ozon Tech Машинное обучение *Управление e-commerce *Управление продуктом *Natural Language Processing *

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

Исторически сложилось, что в Ozon основной объём поддержки осуществляется через чат. В 2020 году бот закрывал 27% от общего числа обращений, а в 2022-м — уже 62%. Это сотни тысяч тикетов в день, при этом качество ответов не ухудшилось. Важность чат-бота выросла в разы.

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

Читать далее
Всего голосов 27: ↑22 и ↓5 +17
Просмотры 3.9K
Комментарии 7

А слабо сделать нормального чат-бота для банка? — challenge accepted

Блог компании Home Credit Bank Машинное обучение *Управление проектами *Natural Language Processing *


Сначала оказалось, что простые эвристики не работают. Ну вот совсем. То есть тупой чат-бот, который умеет распознавать с десяток жёстких тематик или показывать клавиатуру вроде «Нажмите 1, чтобы узнать свой баланс», несильно экономит время контакт-центру. Люди как не читали инструкции, так и не читают, а при виде такого сразу стремятся выйти на живого оператора.

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

Здесь ждут следующие грабли: предположим, вы собрали всю базу диалогов контакт-центра с 2002 года. Разметили её и даже обучили на ней бота. Дальше произойдёт следующее:

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

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

Ниже я хочу рассказать про те не совсем очевидные вещи в поддержке чат-бота, которые могут очень сильно уронить качество его работы. Ну или не дать до этого качества дорасти вообще, если архитектура не совсем правильная.
Читать дальше →
Всего голосов 36: ↑35 и ↓1 +34
Просмотры 5.8K
Комментарии 30

Восстанавливаем предложения из эмбеддингов LaBSE

Python *Семантика *Алгоритмы *Машинное обучение *Natural Language Processing *

На прошлой неделе меня дважды спрашивали, как восстановить текст предложения из его LaBSE эмбеддинга. Я дважды отвечал, что никак. Но на самом деле, конечно, можно обучить декодер генерировать текст по его эмбеддингу. Зачем? Например, чтобы переводить с 100 языков на русский, перефразировать предложения, модифицировать их смысл или стиль.

Модель для восстановления предложений из эмбеддингов опубликована как cointegrated/rut5-base-labse-decoder, а подробности – под катом.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 1.6K
Комментарии 29

Мультиклассовая классификация текста. Дисбаланс тренировочных данных и их генерация. Особенности взвешивания TF-IDF

Машинное обучение *Natural Language Processing *

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

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 1K
Комментарии 7

3 пакета Python для генерации синтетических данных

Python *Программирование *Natural Language Processing *

Нет данных? Сгенерируй!

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

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 3.1K
Комментарии 2

Теория алгоритма, дающего смысл словам

Семантика *Алгоритмы *Машинное обучение *Разработка робототехники *Natural Language Processing *
Recovery mode

Существующие алгоритмы работающие с о смыслом слов:

Векторное представление слов, GPT-3 - статистика

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

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

В других вариантах - по сути поиск закономерностей через нейросети.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 2.5K
Комментарии 5

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