Расскажи про последний проект

«Расскажи про последний проект» — вопрос из категории Софт-скиллы, который задают на 26% собеседований Data Scientist / ML Инженер. Ниже — развёрнутый пример ответа, который можно адаптировать под свой опыт.

Ответ

На последнем проекте я разрабатывал рекомендательную систему для e-commerce платформы. Основной стек — Python, PySpark и FastAPI. Я использовал гибридный подход, сочетающий collaborative filtering на основе матричных разложений (ALS в PySpark) и контентные рекомендации, где эмбеддинги товаров получал с помощью предобученной модели Sentence-BERT.

Ключевые результаты:

  • Удалось снизить RMSE на 15% по сравнению с baseline-моделью на основе SVD.
  • В ходе A/B-тестирования гибридная система увеличила конверсию в покупки на 8%.
  • Для оптимизации инференса в production перевел часть пайплайна на ONNX Runtime, что дало прирост скорости в 3 раза.

Пример реализации обучения ALS-модели:

from pyspark.ml.recommendation import ALS

als = ALS(
    userCol="user_id",
    itemCol="item_id",
    ratingCol="rating",
    rank=50,
    maxIter=10,
    regParam=0.01,
    coldStartStrategy="drop"
)
model = als.fit(ratings_df)

Основной вывод: комбинация методов (collaborative + content-based) оказалась значительно эффективнее, чем использование любого из них по отдельности.