"Машинное обучение"

Машинное обучение в основе рекомендаций по подбору персонала в LinkedIn

Обзор архитектуры и методов машинного обучения, лежащих в основе LinkedIn Recruiter.

Недавно я запустил образовательный информационный бюллетень, посвященный ИИ, у которого уже более 100 000 подписчиков. TheSequence — это информационный бюллетень, ориентированный на машинное обучение, без BS (то есть без шумихи, без новостей и т. д.), чтение которого занимает 5 минут. Цель состоит в том, чтобы держать вас в курсе проектов машинного обучения, научных работ и концепций. Пожалуйста, попробуйте, подписавшись ниже:



LinkedIn — одна из самых популярных площадок для рекрутинга на рынке. Каждый день рекрутеры со всего мира полагаются на LinkedIn для поиска и фильтрации кандидатов для конкретных карьерных возможностей. В частности, LinkedIn Recruiter — это продукт, который помогает рекрутерам создавать кадровый резерв и управлять им, оптимизируя шансы на успешный найм. Эффективность LinkedIn Recruiter обеспечивается невероятно сложной серией алгоритмов поиска и рекомендаций, в которых современные архитектуры машинного обучения сочетаются с прагматизмом реальных систем.

Не секрет, что LinkedIn был одним из софтверных гигантов, раздвигающих границы исследований и разработок в области машинного обучения. Помимо создания одного из самых богатых наборов данных в мире, LinkedIn постоянно экспериментирует с передовыми методами машинного обучения, чтобы сделать искусственный интеллект (ИИ) первоклассным гражданином LinkedIn. Опыт рекомендаций в их продукте Recruiter потребовал всего опыта машинного обучения LinkedIn, поскольку это оказалось очень уникальной задачей. Помимо работы с невероятно большим и постоянно растущим набором данных, LinkedIn Recruiter должен обрабатывать произвольно сложные запросы и фильтры и предоставлять результаты, соответствующие определенным критериям. Среды поиска настолько динамичны, что их очень сложно смоделировать как проблемы машинного обучения. В случае с Recruiter LinkedIn использовала трехфакторный критерий для определения целей модели поиска и рекомендаций.

1) Релевантность. Результаты поиска должны не только возвращать релевантных кандидатов, но и выявлять кандидатов, которые могут быть заинтересованы в целевой позиции.

2) Информация о запросах: результаты поиска должны возвращать не только кандидатов, соответствующих определенным критериям, но и похожие критерии. Например, поиск по машинному обучению должен возвращать кандидатов, у которых наука о данных указана в их наборах навыков.

3) Персонализация. Очень часто поиск идеальных кандидатов для компании основывается на сопоставлении атрибутов, которые не входят в критерии поиска. В других случаях рекрутеры не уверены, какие критерии использовать. Персонализация результатов поиска — ключевой элемент любого успешного поиска и рекомендаций.

Четвертый ключевой критерий опыта поиска и рекомендаций LinkedIn Recruiter, который не так заметен, как предыдущие три, — это акцент на простых показателях. Чтобы упростить рекомендацию, LinkedIn смоделировал ряд ключевых показателей, которые являются реальными показателями успешного найма. Например, количество принятых сообщений InMail кажется четким показателем эффективности процессов поиска и рекомендаций. С этой точки зрения LinkedIn использует эти ключевые показатели в качестве цели, чтобы максимизировать свои алгоритмы машинного обучения.

Наука: от линейной регрессии к деревьям решений с градиентным усилением

Первоначальный опыт поиска и рекомендаций в LinkedIn Recruiter основывался на моделях линейной регрессии. Хотя алгоритмы линейной регрессии легко интерпретировать и отлаживать, они не могут найти нелинейные корреляции в больших наборах данных, таких как LinkedIn. Чтобы улучшить этот опыт, LinkedIn решила испытать Градиентные деревья принятия решений (GBDT), чтобы объединить различные модели в более сложную древовидную структуру. Помимо большего пространства гипотез, GBDT имеет несколько других преимуществ, таких как хорошая работа с коллинеарностью признаков, обработка признаков с разными диапазонами и отсутствующими значениями признаков и т. д.

GBDT сам по себе обеспечил некоторые ощутимые улучшения по сравнению с линейной регрессией, но также не смог решить некоторые ключевые проблемы поиска. В известном примере при поиске стоматологов возвращались кандидаты с должностями в области разработки программного обеспечения, поскольку модели поиска отдавали предпочтение кандидатам, ищущим работу. Чтобы улучшить это, LinkedIn добавил ряд контекстно-зависимых функций, основанных на методе, известном как парная оптимизация. По сути, этот метод расширяет GBDT с целью попарного ранжирования, чтобы сравнивать кандидатов в одном контексте и оценивать, какой кандидат лучше соответствует текущему контексту поиска.

Еще одна проблема LinkedIn Recruiter заключается в подборе кандидатов с похожими должностями, такими как «Ученый по данным» и «Инженер по машинному обучению». Такого типа корреляции трудно достичь, просто используя GBDT. Чтобы решить эту проблему, LinkedIn представила методы обучения представлению, основанные на сетевых функциях семантического сходства. В этой модели результаты поиска будут дополнены кандидатами с похожими названиями в зависимости от релевантности запроса.

Возможно, самой сложной проблемой, которую нужно было решить в LinkedIn Recruiter, была персонализация. Концептуально персонализацию можно разделить на две основные группы. Персонализация на уровне объекта фокусируется на включении предпочтений для различных объектов в процессе найма, таких как рекрутеры, контракты, компании и кандидаты. Чтобы решить эту проблему, LinkedIn полагался на хорошо известный статистический метод под названием Обобщенный линейный смешанный (GLMix), который использует логические выводы для улучшения результатов задач прогнозирования. В частности, LinkedIn Recruiter использовала архитектуру, которая сочетает в себе функции обучения для ранжирования, функции взаимодействия с деревом и оценки модели GBDT. Функции обучения для ранжирования используются в качестве входных данных для предварительно обученной модели GBDT, которая генерирует ансамбли деревьев, которые закодированы в функции взаимодействия деревьев и оценку модели GBDT для каждой точки данных. Затем, используя исходные функции обучения для ранжирования и их нелинейные преобразования в виде функций взаимодействия дерева и оценок модели GBDT, модель GLMix может обеспечить персонализацию на уровне рекрутера и на уровне контракта.

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

Архитектура

Опыт поиска и рекомендаций LinkedIn Recruiter был основан на собственном проекте под названием Galene, построенном поверх стека поиска Lucene. Модели машинного обучения, описанные в предыдущем разделе, способствуют созданию индекса для различных сущностей, используемых в процессе поиска.

Модель ранжирования в системе поиска рекрутеров основана на архитектуре с двумя основными уровнями.

  • L1: добавляется в кадровый резерв и оценивает/ранжирует кандидатов. На этом уровне поиск и ранжирование кандидатов выполняются распределенным образом.​
  • L2: уточнение талантов из короткого списка для применения более динамичных функций с использованием внешних кешей.​

В этой архитектуре брокерская система Galene разветвляет запрос поискового запроса на несколько разделов поискового индекса. Каждый раздел извлекает совпадающие документы и применяет модель машинного обучения к найденным кандидатам. Каждый раздел ранжирует подмножество кандидатов, затем брокер собирает ранжированных кандидатов и возвращает их в федерацию. Федерация дополнительно ранжирует найденных кандидатов, используя дополнительные функции ранжирования, и результаты доставляются в приложение.

LinkedIn — одна из компаний, которая занимается созданием систем машинного обучения в больших масштабах. Идеи рекомендаций и методов поиска, используемые для LinkedIn Recruiter, невероятно актуальны для многих подобных систем в разных отраслях. Команда инженеров LinkedIn опубликовала подробную презентацию, которая дает больше информации об их пути к созданию рекомендательной системы мирового уровня.