19 November 2019

Новый бесплатный онлайн-курс от Samsung по анализу текста при помощи нейросетей

Блог компании Samsung corporate blogMachine learningArtificial Intelligence
Мы привычно пользуемся интернет-поиском, общаемся с чат-ботами, читаем документы на любых языках благодаря переводчикам. Приказать роботу-пылесосу начать уборку при помощи голоса? Ничего особенного… Для многих голосовые помощники на смартфоне вошли в повседневность. Будущее, в котором компьютер, прочитав постороннюю заметку о футболе, соответствующим образом меняет тональность новости о погоде, уже наступило.

Как это всё работает? Как стать специалистом в NLP (расшифровывается Natural Language Processing, не путайте с нейролингвистическим программированием:) )?

Тех хабровчан, кто задается такими вопросами, мы приглашаем на открывшийся недавно онлайн- курс Samsung Research Russia. Под катом подробности…

Авторы курса “Нейронные сети и обработка текста”

В июне этого года мы писали о запуске нашего первого онлайн курса "Нейронные сети и компьютерное зрение". Он получился успешным: там уже более 20 тысяч слушателей, отличные отзывы и мы за него в сентябре даже получили премию Stepik Awards в номинации «Лучший курс от новых авторов»!



С момента запуска первого курса прошло 5 месяцев, и мы не сидели сложа руки! Вооружившись полученным опытом и вдохновившись успехом коллег, другой коллектив авторов – разработчики Центра искусственного интеллекта Samsung в Москве, эксперты в машинном обучении Роман Суворов, Анастасия Янина и Алексей Сильвестров, при неизменной редакторской поддержке Николая Капырина осилили гигантский объём работы, и 15 октября на канале «Samsung Research Russia Open Education» платформы Stepik стартовал второй курс – "Нейронные сети и обработка текста". 

Курс рассчитан на 7 недель. Если тратить в среднем 3-5 часов еженедельно на просмотр видеолекций, ответы на вопросы и выполнение практических заданий, то вы разберётесь, что же под капотом у современных поисковых систем, чат-ботов и генераторов текста. Команда приложила много усилий к тому, чтобы, пройдя один только курс, слушатели смогли уверенно ориентироваться в технологиях на уровне джуниор-разработчика или любого технического специалиста, у которого за плечами нет специфического опыта в работе с NLP, а сейчас приходится иметь с ним дело. 

Итак, в чем отличительные преимущества нашего курса?

  • он разработан специалистами Центра искусственного интеллекта Samsung, у которых за спиной багаж коммерческих проектов в этой области
  • есть теория и практика – вы увидите, как создавать нейросети для обработки текста на PyTorch, реализуете самые актуальные архитектуры и научитесь адаптировать их для ваших нужд
  • как и на первом курсе по компьютерному зрению, лучшие выпускники приглашаются на собеседование в Samsung Research Russia!

На инфографике ниже мы кратко отразили содержание и текущие количественные характеристики нового курса:

Выпускники курса получают сертификаты. При этом возможны два варианта: 

  • обычный сертификат, баллы на который можно набрать, решив все задачи к основной части курса;
  • сертификат с отличием: для него потребуется решить все задачи на высший балл, пройти теоретические треки курса (там задачи аналогичны тем, которые ставят перед сотрудниками на собеседованиях) и решить финальную задачу на Kaggle.

Преподаватели и разработчики курса



Роман Суворов 
Старший инженер Центра искусственного интеллекта Samsung в Москве
В анализе данных, машинном обучении и обработке естественного языка с 2011 года.

«В 2013 году нейросети захватили моё внимание и с тех пор не отпускают, хотя и про классические подходы не забываю»

Анастасия Янина 
Инженер Центра искусственного интеллекта Samsung в Москве 

«Занимаюсь анализом данных и NLP с 2015 года. Закончила МФТИ (ФИВТ) и ШАД, сейчас преподаю машинное обучение на Физтехе»

Алексей Сильвестров 
Старший инженер Центра искусственного интеллекта Samsung в Москве
«Занимался классическим NLP в 2009-2012 годах, будучи студентом, и позже — DL NLP в 2015-2017, позже переключился на генерацию нейросетями музыки и изображений.  Выпускник ВМиК МГУ.»

Николай Капырин 
Продюсер онлайн-курсов, куратор образовательных программ по искусственному интеллекту, Российский Исследовательский Центр Samsung
«Планирую написать статью на Хабр о технических и методических задачах, которые мы решали, пока сделали два онлайн-курса за год»

Программа курса


1. Введение

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

  1. Всем привет! Расскажите нам о себе!
  2. В общих чертах: естественный язык и текст
  3. Особенности обработки естественных языков
  4. В общих чертах: Лингвистический анализ
  5. В общих чертах: Извлечение признаков
  6. Прикладные задачи обработки текста и итоги

2. Векторная модель текста и классификация длинных текстов

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

  1. Векторная модель текста и TF-IDF
  2. Создаём нейросеть для работы с текстом
  3. Теоретические задачи: Векторная модель текста
  4. Семинар: классификация новостных текстов

3. Базовые нейросетевые методы работы с текстами

Пользуемся ли мы полносвязанными нейросетями? Что такое операция «свёртка над текстами»? Вроде бы, это операция для матриц? Ответы — в этом модуле, где мы изучим первые успешные попытки научить нейронные сети работать со смыслом текста.

  1. Общий алгоритм работы с текстами с помощью нейросетей
  2. Дистрибутивная семантика и векторные представления слов
  3. Семинар: рецепты еды и Word2Vec на PyTorch
  4. Теоретические вопросы: Основы обработки текста нейросетями
  5. Основные виды нейросетевых моделей для обработки текстов
  6. Свёрточные нейросети для обработки текстов
  7. Семинар: POS-тэггинг свёрточными нейросетями
  8. Теоретические вопросы: Свёрточные нейросети в обработке текста

4. Языковые модели и генерация текста

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

  1. Рекуррентные нейросети
  2. Моделирование языка
  3. Семинар: генерация имён и лозунгов с помощью RNN
  4. Агрегация, механизм внимания
  5. Трансформер и self-attention
  6. Семинар: моделирование языка с помощью Transformer
  7. Теоретические вопросы: Модель языка и трансформеры

5. Преобразование последовательностей: 1-к-1 и N-к-M

А что, если на входе – текст, и на выходе нужен текст? Это работа для переводчика, которому, как мы знаем, контекст важнее всего. Если вы должны перевести один массив текста в другой, или в несколько, то этот модуль даст вам всё необходимое!

  1. Распознавание плоской структуры коротких текстов
  2. Семинар: распознавание структуры рецептов
  3. Семинар: аспектный сентимент-анализ как NER
  4. Преобразование последовательностей (seq2seq)
  5. Семинар: генерация кусков кода со Stack Overflow
  6. Теоретические вопросы

6. Transfer learning, адаптация моделей

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

  1. Контекстуализированные представления и перенос знаний
  2. Семинар: pytorch-transformers или как запустить BERT
  3. Семинар: BERT для вопросно-ответного поиска
  4. Теоретические вопросы

7. Финальное соревнование на Kaggle и заключение

Приближая курсор к кнопке «Запустить обучение» вы уже видите, как разворачиваются многомерные цепочки псевдосимволов и внимание машины перетекает между концепциями? Тогда покажите себя в нашем финальном соревновании!

  1. Что ещё почитать, как развиваться
  2. Соревнование на Kaggle: обзор задачи и базового решения

Требования к студентам


Курс рассчитан на слушателей, которые немного разбираются в области машинного обучения.

Что нужно, чтобы приступить к курсу?

  1. Иметь базовые знания о работе нейронных сетей
  2. Иметь базовые знания в области математической статистики
  3. Быть готовым программировать на Python

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

Возможно, вы уже что-нибудь знаете про NLP – что это не только про редактирование текста; что создание чат-ботов, пересказ текста, классификация эмоций, ответы на вопросы по Википедии – это несложные задачи, которые уже не требуют исследований. Эти задачи станут вам доступны после того, как вы пройдёте этот курс. Но, важнее всего, мы научим вас задавать правильные вопросы в мире современного NLP, а найдёте ли ответы вы сами или внешняя нейросеть  — есть ли разница. Что дальше? Решать вам.

Вы с нами?

Тогда добро пожаловать в онлайн-курс!
Tags:nlp (natural language processing)лингвистикамашинное обучениенейросетионлайн-курсыpytorchpythonsamsungискусственный интеллектглубокое обучениечат-ботыанализ текстаобработка естественного языка
Hubs: Блог компании Samsung corporate blog Machine learning Artificial Intelligence
+10
8.4k 107
Comments 9