Пытаемся определить язык таинственной рукописи — манускрипта Войнича — простыми методами обработки естественных языков на Python.
Рубрика «nlp (natural language processing)» - 2
Попытка определить язык манускрипта Войнича, Random Forest Classifier
2020-08-15 в 16:51, admin, рубрики: ml, nlp (natural language processing), python, криптографияНейронки «с нуля», или Как мы делали помощника для наших диспетчеров техподдержки
2020-07-23 в 8:55, admin, рубрики: Encog, nlp (natural language processing), service desk, Алгоритмы, Блог компании DataLine, векторизация, классификация, машинное обучение, нейронные сети, обучение с учителем, ПрограммированиеПривет! Меня зовут Александр Соловьев, я программист компании DataLine.
Хочу поделиться опытом внедрения модных нынче нейронных сетей в нашей компании. Все началось с того, что мы решили строить свой Service Desk. Зачем и почему именно свой, можно почитать моего коллегу Алексея Волкова (cface) тут.
Я же расскажу о недавнем новшестве в системе: нейросеть в помощь диспетчеру первой линии поддержки. Если интересно, добро пожаловать под кат.
Сравниваем работу open source Python — библиотек для распознавания именованных сущностей
2020-05-17 в 10:20, admin, рубрики: named entity recognition, natural language processing, nlp (natural language processing), open source, pythonВведение
Мы в компании создаем сервис, который позволяет автоматически создавать, управлять и безопасно хранить лицензионные соглашения и прочие договоры между фрилансерами и их клиентами.
Для решения это задачи я опробовал десятки решений в области обработки естественного языка, в том числе решения с открытым кодом и хотел бы поделиться опытом работы с open source Python — библиотеками для распознавания именованных сущностей.
Распознавание именованных сущностей
Несколько слов о самой проблеме. Named Entity Recognition (NER) — это направление технологии обработки человеческого языка, программная реализация которой позволяет находить в речи и тексте опредмеченные категории слов и словосочетаний. Сначала это были географические наименования, имена людей, организаций, адреса, однако в настоящее время это понятие сильной расширилось и с помощью NER мы ищем в тексте относительные и абсолютные даты, числа, номера и т.д.
Выявление именованных сущностей — это «ворота» в человеческий язык, оно позволяет выявлять и обрабатывать намерения человека, устанавливать связи слов в его речи и реальным миром.
Простое руководство по дистилляции BERT
2020-01-29 в 15:26, admin, рубрики: BERT, deep learning, natural language processing, neural networks, nlp (natural language processing), машинное обучениеЕсли вы интересуетесь машинным обучением, то наверняка слышали про BERT и трансформеры.
BERT — это языковая модель от Google, показавшая state-of-the-art результаты с большим отрывом на целом ряде задач. BERT, и вообще трансформеры, стали совершенно новым шагом развития алгоритмов обработки естественного языка (NLP). Статью о них и «турнирную таблицу» по разным бенчмаркам можно найти на сайте Papers With Code.
С BERT есть одна проблема: её проблематично использовать в промышленных системах. BERT-base содержит 110М параметров, BERT-large — 340М. Из-за такого большого числа параметров эту модель сложно загружать на устройства с ограниченными ресурсами, например, мобильные телефоны. К тому же, большое время инференса делает эту модель непригодной там, где скорость ответа критична. Поэтому поиск путей ускорения BERT является очень горячей темой.
Нам в Авито часто приходится решать задачи текстовой классификации. Это типичная задача прикладного машинного обучения, которая хорошо изучена. Но всегда есть соблазн попробовать что-то новое. Эта статья родилась из попытки применить BERT в повседневных задачах машинного обучения. В ней я покажу, как можно значительно улучшить качество существующей модели с помощью BERT, не добавляя новых данных и не усложняя модель.
Заменяем Google Assistant на нейросеть Порфирьевич и троллим Алису
2019-12-30 в 9:55, admin, рубрики: android, android development, diy или сделай сам, nlp (natural language processing), open source, speech recognition, speech synthesis, voice assistant, voice recognition, голосовые интерфейсы, искусственный интеллект, Программирование, Разработка под androidВы уже видели, что вытворяет нейросеть Порфирьевич? Она дописывает текст к любой вашей фразе. И действительно забавные штуки получаются, потому что обучена она на книгах Достоевского, Толстого, Пушкина, Булгакова, Гоголя и Пелевина.
«Озвучить все это дело голосом Левитана — получился бы отличный заменитель гугловского ассистента к новогоднему застолью...» — подумал я. И решил не откладывать это мероприятие на посленовогогода (а то ведь сами понимаете).
Под катом — весь процесс создания опенсорсного голосового ассистента Порфирьевич на исключительно опенсорсном фреймворке Aimybox, и его запуск вместо штатного Google ассистента. Ну и заодно Алису потроллить можно.
Читать полностью »
DeepPavlov для разработчиков: #2 настройка и деплоймент
2019-11-20 в 17:28, admin, рубрики: deep learning, deeppavlov, devops, ipavlov, nlp (natural language processing), open source, python, Блог компании Московский физико-технический институт (МФТИ), искусственный интеллект, лаборатория нейронных систем мфти, машинное обучение, МФТИ, нейросети, физтехВсем привет! В первой статье из нашего цикла мы узнали, что такое DeepPavlov, какие модели библиотеки готовы к использованию без предварительного обучения и как запустить REST серверы с ними. Перед тем, как приступить к обучению моделей, мы расскажем о различных возможностях деплоймента моделей DeepPavlov и некоторых особенностях настройки библиотеки.
Договоримся, что все скрипты запуска библиотеки выполняются в environment Python с установленной библиотекой DeepPavlov (про установку см. первую статью, про virtualenv можно прочитать здесь). Примеры из этой статьи не требуют знания синтаксиса Python.
Новый бесплатный онлайн-курс от Samsung по анализу текста при помощи нейросетей
2019-11-19 в 12:25, admin, рубрики: nlp (natural language processing), python, pytorch, Samsung, анализ текста, Блог компании Samsung, глубокое обучение, искусственный интеллект, лингвистика, машинное обучение, нейросети, обработка естественного языка, онлайн-курсы, Чат-ботыМы привычно пользуемся интернет-поиском, общаемся с чат-ботами, читаем документы на любых языках благодаря переводчикам. Приказать роботу-пылесосу начать уборку при помощи голоса? Ничего особенного… Для многих голосовые помощники на смартфоне вошли в повседневность. Будущее, в котором компьютер, прочитав постороннюю заметку о футболе, соответствующим образом меняет тональность новости о погоде, уже наступило.
Как это всё работает? Как стать специалистом в NLP (расшифровывается Natural Language Processing, не путайте с нейролингвистическим программированием:) )?
Тех, кто задается такими вопросами, мы приглашаем на открывшийся недавно онлайн- курс Samsung Research Russia. Под катом подробности…
Авторы курса “Нейронные сети и обработка текста”
Читать полностью »
Анализируем тональность текстов с помощью Fast.ai
2019-10-26 в 17:45, admin, рубрики: deep learning, Fast.AI, nlp (natural language processing), python, искусственный интеллект, машинное обучениеВ статье пойдет речь о классификации тональности текстовых сообщений на русском языке (а по сути любой классификации текстов, используя те же технологии). За основу возьмем данную статью, в которой была рассмотрена классификация тональности на архитектуре CNN с использованием Word2vec модели. В нашем примере будем решать ту же самую задачу разделения твитов на позитивные и негативные на том же самом датасете с использованием модели ULMFit. Результат из статьи, (average F1-score = 0.78142) примем в качестве baseline. Читать полностью »