Как птица дуолинго мотивирует нас изучать новые языки

Ну, мы все видели сообщения в наших телефонах… «ты пропустил уроки испанского, ты знаешь, что сейчас происходит» и т. д. и т. д…

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

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

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

Таким образом, бандитский алгоритм Duolingo должен улавливать идею или сообщение, передаваемое каждым уведомлением, и адаптировать его таким образом, чтобы он идеально соответствовал условиям учащегося, и в то же время был достаточно новым, чтобы в игру вступал эффект новизны учащегося. Такие ограничения накладываются на бандитский алгоритм, который затем отбрасывает однотипные уведомления, ловко используя «кривую забывания» человеческого мозга.

«Понижение новизны» в основном означает, что наиболее частые сообщения «понижаются» в конец списка.

Масштабирование этой операции становится большой проблемой, поскольку Duolingo — одно из наиболее широко используемых приложений для изучения языков. Для этих бандитских алгоритмов каждый день генерируются десятки миллионов точек данных, поэтому для машинного обучения используются инструменты больших данных, такие как AWS Kinesis Firehose и Spark.

Так вот как Duolingo убеждает вас открыть этот язык и продолжать учиться!