Category: технологии

Category was added automatically. Read all entries about "технологии".

Маскулинативы от NMT модели

При просмотре результатов машинного перевода с английского на русский (с помощью OpenNMT) заметил прелестные примеры в духе  толерантности и прочего BLM'а:

Овец с короткими волосами стоит под забором.
Овец на траве, вокруг него ходят два человека.


Было бы, конечно, неплохо для симметрии увидеть еще феминитив "баранка" для "баран".

Еще примеры генерации, уже с автоматическими заголовками

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

Примеры на тему "тихий вечер" (тема в виде словосочетания задается генератору, но он не обязан буквально ей следовать - свобода творчества, так сказать):


--- Белых ночей дурман ---

Тихий вечер.
В синем небе —
Полосатый след.



Меня не покидает ощущение, что некоторые тексты, к примеру вышеприведенный "хокку", это просто запомненный откуда-то моделью готовый текст. Но прямой поиск в моем обучающем датасете ничего не дает :)

Еще:

Collapse )


На тему "кошка":




--- Я не могу тебя больше не любить... ---

Не в силах, не в силах я
Удержать свой дикий крик.
И я, как кошка бездомная,
Сжимаю кулаки.



Еще:
Collapse )


Ожидаемо тексты на тему "роботы" более шизофреничны и корявы:




--- робот который живёт за счёт других ---

Я   робот  который живёт за счёт других
И потому так беспомощен  что не понимает
Что не может сам себя господин
В глазах же людей  как и в головах



Еще:


Collapse )


Еще хуже получилось на тему "градиентный спуск":




--- Цифровой формализм ---

А на экране -
В зеркалах,
В кинокамерах -
Градиентный спуск!

Какой он на самом деле современный "Диалоговый Искусственный Интеллект"

Разницу между тем,

1) что позволено видеть потребителю (а для корпоративного маркетолога все мы - "кастомеры"),
2) и как на самом деле все это работает,

хорошо иллюстрирует вот этот клипчик про съемки фильма "Automata":
Collapse )В диалоговых системах роль зеленых человечков играют те, кто составляют сценарии бесед, определяют ключевые темы и переходы, прописывают "эмоции", которые чатботы будут "проявлять".

О языковой креативности в период усвоения родного языка

Только накануне я с умным видом распинался о том, что мол одно из зримых отличий генеративных нейросеток от человека в период language acquisiton - отсутствие у сеток "языковой креативности".

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

В качестве примера - слово "колесос" для пылесоса на колесиках.

И вот разгребаю сегодня лог беседы ботов, и вижу фрагмент для генерации ответа:

заданный вопрос: где растут одуванчики?
подобранный факт: одуванчики зацвели и затенили окно
сгенернированный ответ: около затенилища


Что тут должно привлечь внимание?

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

Это как раз такое поведение, которое есть у детей.

Перевод англоязычных датасетов на русский язык с помощью OpenNMT

Мир несправедлив, в том числе в объеме доступных русскоязычных датасетов для NLP.
В связи с ростом качества нейросетевых систем машинного перевода возникает мысль прогонять тексты через такой переводчик.
Я взял OpenNMT и en-ru модель отсюда.
На входе - англоязычные диалоги.

Результаты:

- Hello!
- Hi! How are you?
- Not bad! And You?
- I'm doing well. Just got engaged to my high school sweetheart.
- Wowowowow! Congratulations! Is she pretty?
- She 's pretty cute. She invited me to dinner tonight. 🙂
- Cool! Have a good time you both! And what is your hobby?
- I love music! I love Taylor swift. 😉
- Me too. And what about Iggy Pop?
- I love Ziggy! He is my favorite. Are you and your wife millennial too?
- I have no wife. And I'm not millenial, I'm X generation. Hey? Where are you?
- I am sorry to hear that. What do you do for fun?
- I'm playing pipe organ.
- That sounds impressive. I like to go out to eat with my friends.
- Cool! See ya!
----------------------------------------------------
- Здравствуйте!
- Привет! Как дела?
- Неплохо!
- У меня все хорошо.
- Воовы! Поздравляем!
- Она довольно симпатичная.
- Классно провели время вместе!
- Я люблю музыку! Я люблю Тейлор Свифт.
А что насчет Игги Попа?
- Я люблю Зигги! Он мой любимый.
- У меня нет жены. И я не милленал, я - Х поколение.
- Мне очень жаль это слышать.
- Я играю на органе.
- Звучит впечатляюще.
- Круто!



Временами появляется бред, но его не так уж много, так что ручная модерация должна помочь:

- Я разработчик программного обеспечения.
- О, круто.
- Я танцую барабан и базу!

Гугл: квантовое преимущество, искусственный интеллект, первые признаки сингулярности в google pay

Кто там мемично шутил про "бигдата, аджайл, где карту получали, в то отделение и ступайте"? Ввожу обязательные параметры в Google Pay, подключаю виртуальную визу. На форме ввода нужно ввести почтовый индекс. Ввожу - "неправильно заполнено поле индекса". Переввожу, пробую другие соседние индексы, пробую сменить город и индекс на Вологду - толку 0. Гуглю проблему (тонкий британский юмор ситуации). Оказывается, этому багу в гугл пэе много лет, но чинить его не торопятся. Да, нейросети, квантовое преимущество, искуственный интеллект - все в комплекте.
Collapse )

Твердое "может быть" в вопросно-ответной системе

В догонку к предыдущему - еще пример обмена репликами, когда буквальное значение и подразумеваемое противоположны:

- Хотите повторить?
- Почему бы и нет?


Ответ (кстати, в форме вопроса, хе-хе) содержит "нет", но однозначно подразумевает "да". Даже так - он полностью синонимичен "да":

- Хотите повторить?
- Да.

Нейросетевое решение AGRR-2019

Код с пояснениями для чисто нейросетевого решения задачи https://github.com/dialogue-evaluation/AGRR-2019 выложен в репозитории https://github.com/Koziev/AGRR-2019

Решение с BERT не взлетело, причем судя по всему из-за нехватки вычресурсов, так как после нескольких суток тренировки BERT'а модель почти достигла бейзлайна на рекуррентной сетке. 2 или 4 1080 Ti явно помогли бы :)

дилемма с BERT в AGRR-2019

По результатам тестов классификатора предложений для https://github.com/dialogue-evaluation/AGRR-2019, возникла дилемма.

С одной стороны, базовая нейросетевая модель выбивает на этой задаче более 90% точности при кросс-валидации.

С другой стороны, крайне урезанная BERT (обучена на 100,000 парах предложений, урезана до 2 heads и другие усечения) плюс fine tuning дала почти 85%.

По ощущениям, повысив сложность BERT хотя бы до 4 или 6 heads, можно поднять и точность последующей классификации. Но усеченная BERT обучалась на GTX 1080 Ti более суток. То есть любые улучшения потребуют несколько суток прогона. С другой стороны, эту обученную русскую BERT можно будет использовать и в других конкурсах. А до дедлайнов по AGRR осталось совсем немного.

Вот и вопрос - стоит ли оно того, при наличных вычислительных ресурсах.

PS (15-02-2019): Увеличил сложность BERT до 4х heads, переобучил на тех же 100,000 парах предложений. Точность классификации предложений для задачи AGRR на кроссвалидации выросла до ~91%.

Слишком хороший f1 и roc-auc score в моделях релевантности/синонимичности с triple loss

1. Что выдает модель сама по себе

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

(anchor) кошка ловит мышку
(positive) на мышку охотится кошка
(negative) дети играют в кошки-мышки
Collapse )