Применение нейронных сетей в nlp

14
Применение нейронных сетей в NLP www.provectus.com A presentation of expertise we boast and services we render for partners across the board, around the globe. © Provectus, Inc.

Upload: provectus

Post on 26-Jan-2017

153 views

Category:

Technology


6 download

TRANSCRIPT

Page 1: Применение нейронных сетей в NLP

Применение нейронных сетей в NLP

www.provectus.com

A presentation of expertise we boast and services we render for partners across the board, around the globe.

© Provectus, Inc.

Page 2: Применение нейронных сетей в NLP

О спикере

Рамиль Гатауллин

l Аспирант КФУ ИВМиИТ (КГУ ВМК)

• м.н.с НИИ “Прикладная семиотика” АН РТ

• Ассистент Кафедры Информационных систем ИВМиИТ КФУ

• Junior Data Engineer, Provectus

www.provectus.com

Page 3: Применение нейронных сетей в NLP

Тема доклада

Применение нейронных сетей в Natural Language Processing

• Искусственные нейронные сети и область применения

• Глубокое обучение

• Задачи решаемые в нашем НИИ

• Первый блин: задача разрешения морфологической многозначности

• Второй блин: кодирование слов или wordToVector

www.provectus.com

Page 4: Применение нейронных сетей в NLP

Искусственные нейронные сети

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

www.provectus.com

Page 5: Применение нейронных сетей в NLP

Искусственные нейронные сети

www.provectus.com

Page 6: Применение нейронных сетей в NLP

Обучение нейронной сети

Машинное обучение: С учителем Без учителя

С математической точки зрения, обучение нейронных сетей — это многопараметрическая задача нелинейной оптимизации.

Технически обучение заключается в нахождении коэффициентов связей (w) между нейронами.

www.provectus.com

Page 7: Применение нейронных сетей в NLP

Глубокое обучение

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

Предобучение

www.provectus.com

Page 8: Применение нейронных сетей в NLP

Задачи

Распознавание образов и классификация Класстеризация Апроксимация Сжатие данных и ассоциативная память

Анализ данных Оптимизация

www.provectus.com

Page 9: Применение нейронных сетей в NLP

Применение в NLP

Сложности: Нейросеть работает с числовыми данными Требуются репрезентативные данные для обучения

(Мои) Текущие задачи: Разрешение морфологической многозначности Семантическое кодирование слов

www.provectus.com

Page 10: Применение нейронных сетей в NLP

Разрешение многозначности

Бывают: Морфологическая, Синтаксическая, Семантическая многозначности

Пример морфологической многозначности: Русс. “стекло” - глагол в прошедшего времени vs сущ. Тат. “алма” - (яблоко vs не бери) – сущ. vs глагол в

повелительном наклонение с отрицанием

www.provectus.com

Page 11: Применение нейронных сетей в NLP

Разрешение многозначности

Многослойный персептрон (4 слоя)

Использует данные только о контекстных ограничениях аффиксальных цепочек:

2 формы слева + 2 формы справа Обучался на неразмеченных данных

Точность достигает 71% - плохо, но для начала сойдет:)

www.provectus.com

Page 12: Применение нейронных сетей в NLP

Кодирование слов

TODO: Отображать слова в векторное пространство таким образом, чтобы сохранялась какая-то семантическая связь между близкими словами

Глубокое обучение с библиотекой gensim https://radimrehurek.com/gensim/

Для татарского: http://brain-online.net/

www.provectus.com

Page 13: Применение нейронных сетей в NLP

Благодарю за внимание!

Вопросы?

www.provectus.com

Page 14: Применение нейронных сетей в NLP

Рамиль Гатауллин

Skype: yaugear

Email: [email protected]

www.provectus.com

Контакты