Комп'ютери обійшли людей у вербальному тесті IQ

Дослідники з Університету науки і технологій Китаю спільно з колегами з Microsoft Research розробили алгоритм, який, за словами творців, здатний обійти середню людину в тесті вербального IQ. Алгоритм заснований на принципах глибокого машинного навчання і при цьому спеціально «заточений» під вже існуючі тести IQ. Дослідження поки не прийнято до публікації і доступне тільки у вигляді препринту в архіві Корнельського університету, коротко про нього пише Technology Review.


Створений авторами алгоритм має дві ключові особливості: по-перше, в ньому використовується система класифікації питань за типом, по-друге, він враховує наявність у слів декількох значень.


Класифікація за типом питання проводиться стандартним для сучасного машинного навчання способом - методом опорних векторів, SVM. Цей метод здатний ефективно розділяти вхідні дані на заздалегідь визначену кількість груп за наявності досить великої і різноманітної навчальної вибірки.

Питання, які зустрічаються у вербальній частині тестів IQ, вчені аналізували вручну. З них було виділено кілька типів, відповідно до яких програма повинна була проводити семантичний аналіз тим чи іншим чином.

Питання з вербальної частини тестів IQ виглядають, наприклад, так:

Ізотерма відноситься до температури так само, як достатку до: (1) атмосфері, (2) вітру, (3) тиску, (4) широті, (5) силі струму.

Такий тип питань автори називають аналогіями. Інший тип запитань відноситься до пошуку синонімів або (окремий тип) антонімів.

Які слова найбільш протилежні за змістом слова «музичний»? (1) нестройний, (2) гучний, (3) ліричний, (4) вербальний, (5) евфонічний.


Ключовим для пошуку відповіді на такі питання стало створення системи розрізнення декількох значень або відтінків значення у одного і того ж слова. Працює вона наступним чином. Спочатку автори будують стандартну для семантичного аналізу матрицю частоти зустрічності слів. На основі існуючого корпусу текстів (в даному випадку це були статті Вікіпедії) визначається, наскільки часто різні слова (наприклад, «натягнутий» або «зелений») зустрічаються поблизу від кожного з аналізованих слів (наприклад, «цибуля»). Кожне слово зіставляє вектор зустрічності разом з ним інших слів. Розмірність цього вектора відповідає загальній кількості окремих слів у корпусі.

Однак зазвичай при цьому не враховується, що одне і те ж слово може мати різні значення. У новій роботі автори спробували вирішити цю проблему за допомогою кластеризації: вектор кожного слова вони пропускали через процедуру пошуку окремих значень («підслів»), з яким по-різному групуються інші слова.

За словами вчених, підхід виявився успішним: алгоритм зміг обійти у тестуванні добровольців, залучених до експерименту через сервіс Mechanical Turk. У середньому добровольці відповідали правильно на 46,2 відсотка запитань, тоді як найефективніша версія алгоритму знаходила правильні рішення в 50,86 відсотка випадків. За словами авторів, такі результати займають проміжне положення між середніми результатами бакалаврів і володарів магістерського ступеня.

Підхід з матрицею зустрічності використовується при аналізі текстів досить давно. На ньому засновано багато, хоча і не всі системи автоматичного перекладу - вважається, що якщо вектори зустрічності слів у різних мовах схожі, то значення слів збігаються. Таким чином, наприклад, працює сервіс Google Translate. Менш популярною альтернативою даного підходу є складання словника експертом.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND