/https%3A%2F%2Fs3.eu-central-1.amazonaws.com%2Fmedia.my.ua%2Ffeed%2F265%2Fd382f574088875d747d17d54c245ad0d.png)
Як працюють алгоритми Duolingo. І як кожен з нас їх щодня вдосконалює
Популярним додатком для вивчення мов Duolingo щодня користуються 50 мільйонів користувачів, які роблять до 1 млрд вправ щодня. За простим інтерфейсом ховається складний алгоритм роботи штучного інтелекту, які постійно удосконалюються. Видання Spectrum опублікувало великий текст про те, як влаштовано ці механізми від імені розробників, які працюють з додатком. ТЕКСТи наводять скорочену версію у перекладі.
Витоки Duolingo
Ще в 1984 році педагог-психолог Бенджамін Блум визначив, що середньостатистичні учні, яких навчали індивідуально, показали результати на два стандартних відсоткових відхилення краще, ніж коли вони навчалися в класі. Цього достатньо, щоб підняти результати тесту людини з 50-го процентиля до 98-го.
Коли в 2012 році Луїс фон Ан і Северін Хакер запустили Duolingo в рамках дослідницького проекту Університету Карнегі-Меллона, мета полягала в тому, щоб створити простий у користуванні онлайн-репетитор мови, який міг би наблизити цей ефект. Засновники не намагалися замінити чудових вчителів. Але будучи самі іммігрантами (відповідно з Гватемали та Швейцарії), вони визнавали, що не кожен має доступ до чудових вчителів. Протягом наступних років зростаюча команда Duolingo продовжувала думати про те, як автоматизувати три ключові якості хороших репетиторів:
- вони добре знають матеріал,
- вони залучають студентів і
- відстежують, що кожен студент знає на даний момент, щоб вони могли представити матеріал, який не є ані занадто легким, ані занадто важким.
Duolingo використовує машинне навчання та інші передові технології, щоб імітувати ці три якості хорошого викладача.
По-перше, щоб забезпечити експертність, ми використовуємо інструменти обробки природної мови, щоб допомогти нашим розробникам контенту перевірити та вдосконалити наші 100 курсів більш ніж 40 різними мовами. Ці інструменти аналізують лексику та граматику уроків і допомагають створити низку можливих перекладів (тому програма прийматиме відповіді учнів, якщо є кілька правильних способів сказати щось).
По-друге, щоб зацікавити учнів, ми застосували очки та рівні, використали технологію синтезу мовлення, щоб створити власний голос для кожного персонажа, що населяє світ Duolingo, і вдосконалили наші системи сповіщень.
Залучення і складність уроку - основні параметри, з якими працює штучний інтелект
Що стосується того, щоб проникнути в голови учнів і дати їм потрібний урок, ось тут на допомогу приходить система штучного інтелекту Birdbrain.
Birdbrain має вирішальне значення, оскільки залучення учнів і складність уроку пов’язані. Коли учням дають надто складний матеріал, вони часто розчаровуються й кидають. Матеріал, який здається легким, може зацікавити їх, але не викликає у них великих труднощів. Duolingo використовує штучний інтелект, щоб утримувати своїх учнів у зоні, де вони залишаються залученими, але навчаються на межі своїх можливостей.
Рання робота з машинного навчання в Duolingo вирішувала досить прості проблеми, як-от те, як часто повертатися до певного словникового слова чи поняття (що ґрунтувалося на освітніх дослідженнях повторення через інтервал). Ми також проаналізували помилки учнів, щоб визначити проблемні моменти в навчальній програмі, а потім змінили порядок, у якому викладали матеріал.
Тоді Duolingo подвоївся на створенні персоналізованих систем. Приблизно в 2017 році компанія почала зосереджено інвестувати в машинне навчання, і саме тоді до команди приєдналися співавтори Бруст і Бікнелл. У 2020 році ми запустили першу версію системи Birdbrain.
Як ми створили Birdbrain
До створення Birdbrain Duolingo робив деякі спроби, не пов’язані зі штучним інтелектом, підтримувати зацікавленість учнів на потрібному рівні, зокрема оцінював складність вправ на основі евристики, наприклад кількості слів або символів у реченні. Але компанія часто виявляла, що має справу з компромісами між тим, скільки люди насправді навчаються та наскільки вони залучені. Метою Birdbrain було знайти правильний баланс.
Питання, з якого ми почали, полягало в наступному: для будь-якого учня та будь-якої вправи, чи можемо ми передбачити, наскільки ймовірно, що учень правильно виконає цю вправу? Щоб зробити таке передбачення, Birdbrain має оцінити як складність вправи, так і поточний рівень знань учня. Щоразу, коли учень виконує вправу, система оновлює обидві оцінки. А Duolingo використовує отримані прогнози в своєму алгоритмі генерації сеансів, щоб динамічно вибирати нові вправи для наступного уроку.
Тут діє узагальнення рейтингової системи Elo, яка використовується для ранжирування гравців у шахах та інших іграх. У шахах, коли гравець виграє партію, оцінка його здібностей зростає, а опонента знижується. У Duolingo, коли учень неправильно виконує вправу, ця система знижує оцінку його здібностей і підвищує оцінку складності вправи. Так само, як і в шахах, розмір цих змін залежить від пари: якщо шахіст-початківець перемагає гравця-експерта, рахунок експерта буде суттєво знижений, а рахунок його опонента — суттєво підвищений. Подібним чином тут, якщо учень-початківець правильно виконує складну вправу, параметри здібностей і складності можуть різко змінитися, але якщо модель вже очікує, що учень буде відповідати вірно, жоден з параметрів не сильно зміниться.
Щоб перевірити продуктивність Birdbrain, ми спочатку запустили його в «тіньовому режимі», тобто він робив прогнози, які просто реєструвалися для аналізу й ще не використовувалися генератором сеансів для персоналізації уроків. З часом, коли учні виконували вправи й отримували правильні чи неправильні відповіді, ми бачили, чи прогнози Birdbrain щодо їхнього успіху відповідають дійсності, а якщо ні, ми вдосконалювали їх.
ШІ не просто прораховує складність вправи, але й передбачає, чи учень зможе з нею впоратися
Коли ми були задоволені продуктивністю Birdbrain, ми почали проводити контрольовані тести: ми ввімкнули персоналізацію на основі Birdbrain для частини учнів (експериментальна група) і порівняли їхні результати навчання з тими, хто все ще використовував старішу евристичну систему (контрольна група). Ми хотіли побачити, як Birdbrain вплине на залучення учнів — вимірюється часом, витраченим на виконання завдань у додатку — а також на навчання (вимірюється тим, як швидко учні просунулися до більш складного матеріалу). Нам було цікаво, чи побачимо ми компроміси, як це часто траплялося раніше, коли ми намагалися внести покращення за допомогою більш звичайних методів розробки продукту чи програмного забезпечення. На нашу радість, Birdbrain постійно сприяв зростанню залученості та навчання.
Розширення систем ШІ Duolingo
З самого початку ми сткнулися з величезним масштабом даних, які нам потрібно було обробити. Щоденне виконання близько мільярда вправ вимагало багато винахідницької розробки. Однією з ранніх проблем із першою версією Birdbrain було встановлення моделі в пам’ять. Це було складне рішення: щодня доводилось обробляти велику кількість нових даних і зберігати їх на випадок, якщо повернуться учні, які кинули займатися.
Порівняння двох версій Birdbrain
Одним із недоліків цієї першої версії Birdbrain було те, що програма чекала, поки учень закінчить урок, перш ніж повідомляти нашим серверам, які вправи користувач виконав правильно та які помилки.
Проблема такого підходу полягає в тому, що приблизно 20 відсотків уроків, розпочатих у Duolingo, не завершуються, можливо, через те, що людина відклала телефон або перейшла на інший додаток. Кожного разу, коли це траплялося, Birdbrain втрачав відповідні дані, які потенційно були дуже цікавими! Ми були майже впевнені, що люди не кидають роботу навмання — у багатьох випадках вони, швидше за все, кидають роботу, коли натрапляють на матеріал, який для них є особливо складним або страшним. Тож коли ми оновили Birdbrain до версії 2, ми також почали передавати дані протягом усього уроку частинами. Це дало нам важливу інформацію про те, які концепції чи типи вправ були проблемними.
Раніше система оновлювала дані про параметри навчання раз на добу, тепер - у режимі реального часу
Ще одна проблема з першим Birdbrain полягала в тому, що він оновлював свої моделі лише раз на 24 години (під час низького рівня глобального використання додатків, який був уночі в штаб-квартирі Duolingo в Піттсбурзі).
З Birdbrain V2 ми хотіли обробляти всі вправи в режимі реального часу. Зміна була бажаною, оскільки навчання діє як у короткостроковому, так і в довгостроковому масштабах. Якщо ви вивчаєте певну концепцію зараз, ви, швидше за все, згадаєте її через 5 хвилин, і якщо пощастить, ви також запам’ятаєте частину з неї наступного тижня. Щоб персоналізувати досвід, нам потрібно було дуже швидко оновити нашу модель для кожного учня. Таким чином, протягом кількох хвилин після того, як учень виконає вправу, Birdbrain V2 оновить свою «розумову модель» рівня його знань.
Нова версія дозволяє системі вловити, наприклад, що даний учень чудово справляється з вправами на минулий час, але йому важко з майбутнім часом. V2 може почати розрізняти траєкторію навчання кожної людини, яка може значно відрізнятися від типової траєкторії. І це дозволяє набагато більше персоналізувати уроки, які Duolingo готує для цієї людини.
У травні 2022 року ми вимкнули першу версію Birdbrain і повністю перейшли на нову вдосконалену систему.
Що буде далі для ШІ Duolingo
Більшість того, що ми робимо з Birdbrain і пов’язаними технологіями, не стосується вивчення мов. В принципі, ядро моделі є дуже загальним, і його також можна застосувати до нових програм нашої компанії з математики та грамотності або до того, що Duolingo придумає далі.
Birdbrain дав нам чудовий старт для оптимізації навчання та підвищення адаптивності та ефективності навчальної програми. Питання, наскільки далеко ми можемо зайти з персоналізацією, залишається відкритим. Ми хочемо створити адаптивні системи, які відповідають учням не лише на основі того, що вони знають, але й на підходах до навчання, які найкраще підходять для них. На які типи вправ учень звертає увагу? Які вправи змушують клацати для них?
Це питання, над якими можуть працювати чудові вчителі, розглядаючи різних студентів, які мають труднощі у своїх класах. Ми не віримо, що ви можете замінити чудового вчителя додатком, але ми сподіваємося, що зможемо краще наслідувати деякі його якості та охопити більше потенційних учнів у всьому світі за допомогою технологій.
машинне навчання штучний інтелект додатки duolingo вивчення мови