Чем предстоит заниматься:
У вас будет возможность участвовать во всех этапах реализации NLP/AI задач – от поиска статей на Arxiv и проведения экспериментов до имплементирования моделей и их проверки на реальных данных и вывода в production. Примеры задач:
- Изучить имеющиеся у нас компоненты, модели и пайплайны извлечения и связывания сущностей, сегментации и классификации, провести работу над ошибками моделей, доработать их архитектуру.
- Проанализировать входные и тренировочные данные и вырабатывать рекомендации по их очистке, пополнению и улучшению разметки.
- Посчитать уверенность в принятом решении, учитывая качество входных данных и вклад в ошибку отдельных моделей пайплайна.
- Собрать пайплайн диалоговой системы на основе компонентов DeepPavlov, задействовать работу с Intents и Skills.
- Добавить в чатбот готовый модуль использования априорных знаний, разобраться с форматом знаний и языком запросов.
- Извлечь факты из нескольких текстовых источников, увязать их в единый граф знаний и проверить его на полноту и непротиворечивость.
- Формализовать схему доменных знаний, чтобы автоматизировать построение моделей извлечения сложно-связанных фактов и их постобработку (язык описания онтологий и правил).
- Разработать экспертную систему, способную использовать декларативные текстовые знания, например, законы.
- Применить SOTA решения, натренированные на английских датасетах Text2Graph к задачам на русском языке с минимальной доразметкой.
На самом деле задач больше. Часть из них мы уже решили и довели до внедрения, а часть находится на этапе исследования или перевода на более продвинутые технологии.
Знания, которые у вас уже есть:
- Вы изучали математическую статистику, линейную алгебру и прочую базовую математику.
- Вы пишите на Python и знакомы с библиотеками анализа данных, например, pandas, matplotlib, numpy, scipy, sklearn.
- Вы умеете работать в Linux.
Знания, которые вы приобретёте:
- Основные средства построения глубоких моделей – Tensorflow, Keras, PyTorch.
- Архитектуры нейронных сетей, их слоев и модулей – RNN, CNN, Transformer, BERT, GCNN.
- NLP-задачи классификации, сегментации, NER, Relation extraction, Slot filling.
- Компьютерная лингвистика (стемминг, лемматизация, нормализация и т.п.) с применением NLTK, PyMorphy, AllenNLP, Yargy.
- Прокачаете Python, алгоритмы и структуры данных – мы следим за качеством кода.
- Получите опыт реальной разработки моделей – предобработка, разметка, балансировка и аугментация датасетов, построение и тренировка моделей, вывод моделей в прод, restAPI, контейнеризация.
- Освоите Git, Jira, Confluence и другие средства командной работы.
- Сможете развиваться в сторону Team lead или Product owner.
- Поучаствуете в командных семинарах (в этом году у нас «продленка» по Reinforcement Learning).
- Сможете участвовать во внутрибанковских DS/AI community (кстати, в этом году мы там рассказываем про Text2Graph).
Скорее всего, вы уже многое из этого знаете – тем лучше, особенно, если вы готовы не только использовать ваши знания, но и делиться ими.
Команда:
Нас двадцать семь человек, включая NLP-датасайентистов, лингвистов, Python-разработчиков, дата-, бизнес- и системных аналитиков, Java-разработчиков станции разметки и UI-инструментов. С нами работает порядка пятнадцати юристов, есть свой пул разметчиков. В ближайшие месяцы мы расширяемся на 25 человек, включая NLP/AI, DA/DE, алгоритмистов, UX-дизайнера, Frontend/Backend, DSL-developer, а также 7 специальных разметчиков для экспериментов.
Связь с реальностью:
Несколько наших AI-решений используются в банке, например, с начала года «Робот-юрист» подготовил более 600,000 юридических заключений используя наши модули актуализации версий Уставов, ВНД и Трудовых договоров, извлечения фактов и принятия решений на основе правил, написанных на юридическом DSL. На извлечение фактов из одного комплекта на 4 CPU уходит 90 сек, на актуализацию 60 сек, на принятие решения – 15 сек. При этом на один запрос человек в среднем затрачивает 2.5 часа.
Мы уделяем особое внимание обучающим данным, у нас есть команда, занимающаяся проектированием и реализацией станции разметки, которая позволяет задействовать несколько десятков in-house разметчиков для создания различных NLP-датасетов.
Мы одна из семи сбербанковских команд, представлявших свое решение на AI Journey 2019, и одна из немногих, кто представлял там реальный работающий продукт.