Этим летом специалисты по обработке и анализу данных компании Gousto снова сотрудничали со студентами магистратуры, проходящими курсы по науке о данных и расширенной аналитике, для работы над проектами, специфичными для компании. Эта программа выросла с 7 студентов в прошлом году до 17 студентов в этом году, и мы планируем продолжать эту тенденцию в будущем!

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

Пожалуйста, представьтесь и расскажите нам о курсе, который вы изучаете

Fengyi: Меня зовут Fengyi Zhu, и я специализируюсь на управлении рисками и страховании. Во время исследования я понял, что был одержим данными и увлечен извлечением скрытых правил или значений из данных. Поэтому я выбрал науку о данных в качестве своей специальности для дальнейшего обучения. Первый семестр Data Science (Business Management) в Манчестерском университете начинается с основ управления данными, принципов и приложений баз данных, основ Python и базовых статистических знаний о машинном обучении, а второй семестр начинается с изучения общих алгоритмов и применения машинного и глубокого обучения.

Аакаш: Меня зовут Аакаш Арора, и у меня более 3 лет опыта работы в области данных и информатики. Я получил степень магистра в области аналитики данных и решений в Университете Саутгемптона в сентябре 2022 года. Мне нравится создавать инновационные решения с использованием кода, и после моих ежедневных занятий с 9 до 5 вы, скорее всего, найдете меня на тренировках в тренажерном зале.

Поскольку это блог Gousto, мы должны спросить вас, какая ваша любимая еда?

Фэнъи: Поскольку я китаец, моя любимая еда - китайская еда! Например, яичница с помидорами и рисом на одного человека или хот-пот на компанию.

Аакаш: Поскольку я родом из Индии, я люблю острую пищу. Я также вегетарианец, поэтому мой выбор может немного отличаться. В Индии есть несколько кухонь. Так что с точки зрения кухни моими любимыми блюдами были бы панир тикка (север), доса (юг), вада пав (запад), расагулла (восток).

Что впервые заинтересовало вас в науке о данных?

Fengyi: Будучи студентом, мы исследовали финансовые данные с помощью R, предсказывая будущие цены на акции и изучая отношения между ними. Во время учебы в то время я увлекался кодированием, созданием новых алгоритмов с помощью математических и статистических знаний, чтобы исследовать информацию и ценность данных, а также продолжать изучать новые вещи. Это был первый раз, когда я почувствовал, что мне нравится и подходит для этой области, а затем я начал все больше и больше увлекаться проектами по интеллектуальному анализу данных в различных областях в Интернете.

Аакаш: Во время работы в моей предыдущей компании у меня появился интерес к области данных, когда я работал с командой по науке о данных. Это заставило меня осознать важность данных и того, как они влияют на решения, принимаемые сегодня в мире. Это было время, когда почти каждая организация использовала подход, основанный на данных, для решения проблем и создания инновационных решений. Мне посчастливилось создать решение для чат-бота на основе искусственного интеллекта, которое помогло сэкономить рабочее время и фактически оказало влияние на организацию. Опыт успеха этого проекта наряду с изучением различных методов и методов в этой области пробудил во мне интерес к области науки о данных, и поэтому я решил получить степень магистра в области анализа данных и принятия решений.

На решение какой проблемы был направлен ваш проект с Густо, и какие методы вы пробовали?

Fengyi: Мой проект с Gousto направлен на решение проблемы холодного старта пользователя в системе рекомендаций Gousto путем публикации игры парного сравнения и изучения предпочтений пользователей для рекомендаций. Я решил использовать модель Брэдли-Терри, чтобы рассчитать предпочтения каждого пользователя для каждого продукта и объединить их с функциями продукта, чтобы получить предпочтительные функции пользователя. После того, как мы получили предпочтения пользователя в отношении функций продукта, мы используем модель MCDA и алгоритм ранжирования LightGBM для ранжирования каждого пользователя и выбора рецептов из первых N мест, чтобы рекомендовать их пользователю. Метрики создаются для оценки того, какой алгоритм работает лучше с точки зрения точности и разнообразия.

Аакаш: Поскольку Gousto предоставляет своим клиентам новые рецепты, ключевой частью роста и устойчивости компании является возможность создавать новые рецепты, которые могут хорошо зарекомендовать себя на рынке. Хотя у Густо есть специальная команда разработчиков рецептов, может быть сложно часто придумывать новые идеи рецептов. Чтобы решить эту проблему, этот проект направлен на создание системы искусственного интеллекта с участием человека, которая способна генерировать новые рецепты, используя набор переданных ей ингредиентов. Этот сгенерированный ИИ рецепт может помочь команде разработчиков рецептов в качестве отправной точки или даже окончательного рецепта в зависимости от того, насколько реалистичен (и съедобен) рецепт. Наряду с генератором рецептов мы также создаем предсказатель производительности, чтобы предсказать, насколько хорошо рецепт может работать на рынке.

Чтобы создать генератор рецептов, я использовал T5 (преобразователь преобразования текста в текст), который представляет собой многоцелевой преобразователь, который используется для решения задач последовательного преобразования в приложениях НЛП. Чтобы построить предиктор производительности, я использовал набор моделей на основе регрессии, таких как случайный лес, XGBoost, LGBM, и сравнил, какая модель будет лучшей.

Как вы работали с командой Gousto?

Фэнъи: Время от времени мы встречались, чтобы поделиться результатами моей работы и обменяться идеями друг с другом, и Хай Нгуен давала мне советы о том, как решить мои проблемы и, таким образом, продвигать мой проект вперед.

Аакаш: Было приятно работать с командой. Моим гидом был Стивен Джордж. Стивен помогал мне на каждом этапе и вел через времена, когда я застревал. Чтобы предоставлять быстрые обновления и постоянно оставаться на связи, мы общались через Slack. У нас также были еженедельные встречи, которые длились около часа, чтобы подробно обсудить все обновления.

В целом, это был очень хороший опыт, и общение между нами было очень эффективным.

С какими проблемами вы столкнулись на этом пути и какие советы вы могли бы дать другим специалистам по данным, начинающим свой первый проект с компанией?

Fengyi: Самой большой трудностью, с которой я столкнулся во время проекта, был выбор алгоритма. Поскольку нам нужен более высокий порядок ранжирования всех элементов для каждого пользователя, я выбрал алгоритм ранжирования для решения проблемы рекомендаций. Раньше я не сталкивался с алгоритмами в области обучения ранжированию, поэтому от начала до написания кода и получения конечного результата потребовалось много времени и много ухабов на дороге.

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

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

1. Общайтесь со своим гидом

2. Попробуйте сделать перерыв. Возможно, вы перегорели, и ваш разум работает не так эффективно. Так что перерыв определенно поможет (конечно, только если у вас есть время)

Что вам больше всего понравилось в работе над этим проектом?

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

Аакаш: Мне больше всего понравилось в этом проекте то, что он был очень уникальным и инновационным. Ему удалось произвести впечатление на аудиторию и повернуть к нему несколько голов, и это то, что меня мотивирует.

Какие навыки вы приобрели во время проекта и как они помогут вам в ваших будущих начинаниях?

Fengyi: благодаря этому проекту я чувствую, что мои навыки обучения и исследования улучшились. Независимо от того, работаете ли вы или учитесь на докторскую степень, очень важно иметь свои собственные методы обучения и быстро усваивать новые знания, которые отражают вашу ценность на рабочем месте и в академических кругах.

Аакаш: Работая над этим проектом, я получил много знаний. Одними из ключевых, которые действительно помогли мне, были использование преобразователей, передача обучения, точная настройка параметров и форматирование данных для точной настройки задач НЛП. Презентация в конце проекта также помогла мне обрести больше уверенности в разговоре о проектах чистой науки о данных.

Спасибо за прочтение. Если вы пропустили первую часть этой серии, вы можете найти ее здесь. Чтобы быть в курсе постов в блоге Gousto, подписывайтесь на нашу страницу в Medium. Если вы часто пользуетесь LightGBM, вы не захотите пропустить один из наших самых популярных постов на тему Проблема с усилением градиента (гремлины, усиленные градиентом).