Оффер в крупный синий холдинг в РФ и Head of Data Science в 19 лет
Мне предложили позицию Junior Data Scientist в крупном синем холдинге в РФ. Я там буду заниматься созданием рекомендательной системы для сотрудников всего холдинга, поэтому скоро будут ссылочки на ресурсы по рекомендалкам... 🤗Какой Head of Data Scientist, ты еб@#%*ый !?
Я был один Дата Саентист старой в компании, поэтому задача упала на одного меня, грубя говоря, я был Head of Data Science в 19 лет 🤡🤡🤡
Что нужно сделать ?
Передо мной стояла задача многоклассовой классификации. У нас есть бабушки, которые работают в аптеках, и они отсылают мега кривые записи об препаратах ,и мне нужно понять эту запись и выдать её эталон, который есть в справочнике 🤓
Как я сделал ?
1️⃣ Предобработал данные и построил TF-IDF эмбеддинги, Пробовал обучить FastText, но скор в конце был меньше, дообучить BERT было проблемно, так как мне дали комп с встроенным графическим процессором...
2️⃣ С помощью косинусного расстояния нашёл наиболее похожие записи и взял от них 100 первых записей. Почему именно 100 - эмпирическим путём я понял, что скор на данном количестве самый большой
3️⃣ Взял фичи с этих похожих записей и обучил CatBoost
4️⃣ Выкатил в прод, отсылая в БД предсказанный эталон
Идеи улучшения
1️⃣ Можно сначала кривые бабушкины записи обучить на эталоннах с помощью трансформера - seq2seq задача, а после этого можно выделять наиболее информативные фичи, что будет очень полезно для модели
2️⃣ Перебрать модели - я пробовал использовать только CatBoost, но я бы попробовал использовать случайный лес и построить нейронку
3️⃣ Попробовать обучить BERT-модель, так как там много данных ~25млн, бертовая модель смогла бы построить информативные эмбеддинги
Итог
От меня требовали, чтобы с вероятностью 97% моя штука предсказывала 25% данных. Пришло 100 штук, предсказал 25 штук, и я могу ошибиться только в 3%. Но я не смог достичь 25%, я сделал только 15%, то ли из-за моей тупости, то ли из-за мощностей. Скорее всего первое... 💩