Машинное обучение для понимания финансовых целей клиентов банка
Monzo – это британский необанк (онлайн-банк), основанный в 2015 году.
Monzo Pots – это популярная функция, позволяющая клиентам виртуально откладывать деньги со своего основного счета в так называемые "горшки" (англ. pot - горшок) и персонализировать их для достижения цели накопления, управления расходами и других целей.
Другими словами это нечто вроде отдельных копилок или кошельков, которым клиенты банка могут давать собственные названия в свободной форме и использовать для этого эмодзи. Такой подход создает сложный набор данных с почти 5 миллионами уникальных названий. При этом каждый месяц создается порядка 350 тысяч новых горшков и поэтому количество этих данных продолжает расти.
Это как раз и является проблемой – названия в виде произвольного текста, включение в них эмодзи и тот факт, что названия обычно короткие делает сложным понимание того, как и для чего клиенты банка используют свои горшки обычными методами.
Идея разработчиков Monzo состояла в том, чтобы разобраться в названиях горшков клиентов банка с помощью машинного обучения и выявить характерные закономерности их использования. Знание того, на чем клиенты экономят или на что копят, может помочь в разработке новых продуктов, которые лучше всего отвечают их потребностям.
Для понимания и обобщения больших объемов текста был выбран метод машинного обучения, который называется тематическое моделирование. Этот подход позволяет обнаружить закономерности в текстовых данных, автоматически выявлять темы и слова, характеризующие каждую тему.
Для своего проекта по выявлению закономерностей в названиях горшков клиентов разработчики Monzo использовали выборку из 800 тысяч уникальных названий, созданных пользователями банка. Было отмечено что 50% названий состоят всего из одного слова, например «Savings» (сбережения) или «Bills» (счета).
Эти данные прошли через процесс очистки — все буквы слов были преобразованы в строчные, из них удалены знаки препинания, выявлены опечатки и сокращения и приведены к базовой форме слов (этот процесс называется лемматизацией. Например, сокращение «bday» меняется на «birthday» (день рождения)).
Также 8% названий содержали хотя бы один эмодзи. Некоторые из них оказались действительно полезны для определения того, на что клиент копит деньги, поэтому далее эмодзи были заменены на их текстовый эквивалент, например картинка с домом – на слово «house» (дом).
Тематическое моделирование работает путем подсчета, сколько раз пары слов встречаются вместе. Обычно с его помощью ищутся слова, которые в предложении находятся рядом друг с другом – например, если речь идет о длинных документах, таких как книга или научная статья и нужно убедиться, что два слова находятся в одном контексте, а не в абзацах, в которых обсуждаются совершенно разные вещи.
Однако, поскольку названия горшков, как правило, очень короткие, был использован особый тип тематического моделирования, называемый битермическим тематическим моделированием (BTM), где битермы это шаблоны совместной встречаемости двух слов в одном контексте. Модель подсчитывает, когда слова используются вместе во всем названии горшка и затем, вычисляя силу связи между словами, группирует похожие горшки вместе.
Для своего проекта по выявлению закономерностей в названиях горшков клиентов в Monzo разработчики использовали выборку из 800 тысяч уникальных названий, созданных клиентами. Было отмечено что 50% названий этих сущностей состоят всего из одного слова, например «Savings» (сбережения) или «Bills» (счета).
Эти данные прошли через процесс очистки — все буквы слов были преобразованы в строчные, удалены знаки препинания, выявлены опечатки и сокращения и приведены к базовой форме слов (этот процесс называется лемматизацией. Например, сокращение «bday» меняется на «birthday» (день рождения)).
Также 8% названий содержали хотя бы один эмодзи. Некоторые из них оказались действительно полезны для определения того, на что клиент копит деньги, поэтому далее эмодзи были заменены на их текстовый эквивалент, например картинка с домом на слово «house» (дом).
Тематическое моделирование работает путем подсчета, сколько раз пары слов встречаются вместе. Обычно с его помощью ищутся слова, которые в предложении находятся рядом друг с другом – например, если речь идет о длинных документах, таких как книга или научная статья и нужно убедиться, что два слова находятся в одном контексте, а не в абзацах, в которых обсуждаются совершенно разные вещи.
Однако, поскольку названия горшков, как правило, очень короткие, был использован особый тип тематического моделирования, называемый битермическим тематическим моделированием (BTM), где битермы это шаблоны совместной встречаемости двух слов в одном контексте. Модель подсчитывает, когда слова используются вместе во всем названии горшка и затем, вычисляя силу связи между словами, группирует похожие горшки вместе.
Использование тематического моделирования требует достаточно много настроек, в частности, указания количества тем, на которые нужно разделить входные тексты. Чтобы найти их оптимальное число, модель была обучена на разных количествах тем, после чего была рассчитана оценка согласованности. Этот показатель измеряет степень сходства между словами, получившими высокие баллы в теме. Высокая оценка согласованности означает, что темы более целостны, то есть хорошо классифицированы. После нескольких итераций было отобрано количество тем с наибольшей средней оценкой. При изучении результатов итоговой модели были выявлены некоторые темы, например, горшки, посвященные счетам, праздникам или жизненным событиям, таким как дни рождения или девичники.
Далее результаты моделирования тем были использованы для создания ряда категорий. После того как был найден устраивающий результат, модель была использована для создания списков ключевых слов, фраз и эмодзи, которые помогают отнести горшки к той или иной теме. Преимущества этого метода заключались в том, что стало возможным точно определить, что является драйвером категоризации, и позволило учитывать крайние случаи, когда модель не может этого сделать.
Одним из таких примеров является то, что большая часть названий горшков состоит из одного слова. Поскольку механика тематического моделирования работает на понимании контекста слов по отношению к другим словам в том же документе, это означает, что для однословных горшков нет контекста, который можно было бы понять. Создание списков ключевых слов, которые были общими для всей темы, в итоге позволило эффективно классифицировать эти однословные горшки.
В результате моделирования было получено 20 отдельных тем и более 500 слов/фраз/ эмодзи для их категоризации. Это такие темы, как путешествия, жизненные события, общая экономия и домашние счета.
Такое моделирование позволило получить представление о поведении клиентов, связанном с горшками и выяснить, что 30% горшков попадают в категорию общей экономии, а 15% попадают в категорию путешествий.
При этом создание различных тем имеет сезонные колебания, например, пик создания «жизненных событий» приходится на конец года – было обнаружено, что клиенты экономят деньги к Рождеству.
Горшки, используемые для «путешествий», обычно создаются в новом году, возможно, так выражается попытка борьбы с январской депрессией. Также увеличение числа таких горшков наблюдается в июне, когда люди готовятся к предстоящим летним отпускам.
В современном мире эмодзи являются важной формой самовыражения, и используя результаты моделирования тем, можно увидеть, какие эмодзи используются чаще всего для каждой темы. Так, для горшков с «жизненными событиями» основными темами, отображаемыми с помощью эмодзи, являются Рождество и подарки. Для горшков для путешествий, в названии которых упоминается направление, превалируют такие страны, как Италия, Испания и США. Также эмодзи могут дать представление о типе отдыха — часть людей указывает в названиях пальмы или, например, горные лыжи. В горшках для «домашних животных» клиенты, как правило, указывают эмодзи питомца, на которого они копят деньги, - в большинстве случаев это были собаки.