Google AI представив Meena - чат-бота, який може спілкуватися на будь-які теми та враховувати контекст розмови
Google AI представив Meena — чат-бота, який може спілкуватися на будь-які теми та враховувати контекст розмови
Розробники з Google AI представили Meena - чат-бота, який може спілкуватися на будь-які теми та враховувати контекст розмови. В основі чат-бота - алгоритм на основі seq2seq, навчений на чотирьох мільярдах слів із розмов користувачів соціальних мереж. Додатково дослідники розробили метрику оцінки роботи чат-ботів людьми на основі вимірювання конкретики розмови і того, чи має репліка сенс: за нею Meena набрала 79 відсотків, що мінімум на 23 відсотки вище, ніж інші чат-боти, і лише на 7 нижче за людину. Докладніше про роботу чат-бота можна прочитати в препринті на arXiv,org, а також у блозі Google AI https://ai.googleblog.com/2020/01/towards-conversational-agent-that-can.html
Зараз чат-боти вже достатньо розвинені і можуть підтримати коротку розмову з користувачем. У всіх них, однак, є велике обмеження: зазвичай кількість тем, на які окремий чат-бот може спілкуватися, досить невелика, і, варто користувачеві уникнути теми, система починає видавати неспецифічні відповіді на кшталт «я не знаю».
В основі такого обмеження, з одного боку, лежить брак даних, а з іншого — те, що чат-боти не можуть запам'ятовувати контекст розмови: іншими словами, при розмові система відповідає лише на останній запит, але не може повернутися до попереднього , що багато в чому робить розмову неспецифічною і неприродною.
Розробники з Google AI вирішили обійти обидва ці обмеження і створили Meena. В основі системи - алгоритм seq2seq на основі рекурентної нейромережі, головне завдання якого - пошук взаємозв'язків між окремими шматками інформації або, більш специфічно, «переведення» одного шматка в інший.
Алгоритм в основі Meena навчений на уривках реальних розмов користувачів соцмереж. Особливість алгоритму у тому, що з окрему частину розмови на навчання береться не пара репліка-репліка, а цілий діалог, що з семи реплік із боку кожного з користувачів. Це, таким чином, дає змогу враховувати досить широкий контекст розмови. Крім того, до навчальної вибірки увійшла досить велика кількість даних: діалоги, що налічують близько 40 мільярдів слів.
Для оцінки роботи чат-бота дослідники створили дві окремі метрики: автоматичну та метрику для оцінки реальними людьми. Перша заснована на підрахунку параметра «розгубленості» (perplexity), який підраховує зворотну ймовірність появи кожного наступного слова в згенерованому тексті на основі розподілу ймовірностей навчальної вибірки.
Іншими словами, цей параметр відображає те, із скількох варіантів було обрано підсумкову репліку. Чим їх менше, тим якісніше працює чат-бот: у реальній розмові для людей варіанти відповіді репліку сильно обмежені контекстом і темою розмови. Дослідники тому справедливо вважали, що ця оцінка концептуально задоволена близька до тієї, яку можуть дати чат-боту люди.
Метрика для оцінки людьми, у свою чергу, заснована на вимірі двох параметрів: того, чи репліка чат-бота має сенс і того, наскільки вона конкретна. При людській оцінці ці два параметри враховуються за кожної нової репліки, а сама оцінка — бінарна (або «так», або «ні»). Наприклад, якщо користувач скаже чат-боту "Я дуже люблю пиріжки", а той відповість "Здорово!", то відповідь матиме сенс, але не буде конкретною, а якщо вона відповість "Сьогодні дощ йде" - навпаки. З іншого боку, якщо відповіддю буде або «Вірші чи випічку?», або «Я теж, найбільше мені подобається з капустою», то вона підійде за обома параметрами метрики.
Роботу Meena порівняли з іншими чат-ботами, включаючи CleverBot та Mitsuku, а також з діалогами реальних людей в інтерактивному режимі — під час спілкування. За метрикою, використаною для оцінки людьми, Meena набрала найбільше решти чат-ботів — 79 відсотків. Діалог із реальною людиною, у свою чергу, набрав 86 відсотків, а CleverBot та Mitsuku – по 56 відсотків. Людська метрика і «розгубленість» при цьому корелювали (коефіцієнт — 0,93): що нижчим був цей параметр, то вищою була оцінка людей.
Чи відкриють Meena для публіки окремо або Google інтегрує його в інші свої сервіси на кшталт Assistant — невідомо: поки що компанія не планує створювати для роботу публічний інтерфейс. Крім того, дослідники також зазначили, що алгоритм все ж таки потребує доопрацювання, оскільки для якісної роботи чат-бота діалог з ним все ж таки повинен бути невідмінним від розмови з реальною людиною за будь-якою — автоматичною чи ні — метрикою.
Цікаво, що для навчання чат-ботів не завжди використовують реальні розмови. Наприклад, у 2018 році Facebook виклала відкриту базу даних близько 160 тисяч діалогів, скоєних від імені вигаданих людей: за словами розробників, це допоможе чат-ботам підтримувати розмову про себе.
