Easysize очень клевые и я готов рекомендовать их всем. Один из лучших опытов собеседований. Полная прозрачность, отношение на равных, очень приятные люди и никакого булщита. На собеседовании с СЕО я испытал такое доверие, что нарушил все правила поведения и сказал, что на самом деле не знаю чего хочу. Интересны и рисерч, и инженерия, и бизнес. Не делайте так. Несмотря на это, они все равно сделали мне оффер.
Они делают рекомендации размеров одежды на Shopify. При выборе размера покупатель заполняет небольшой опрос: обычно ношу 36-ой, рост 156, бывает жмет в плечах. В ответ получает ML рекомендацию: покупай 36-ой. Это растит конверсию в покупку.
На собеседовании мы с СТО сразу нашли общий язык. Он рассказал, что под каждый магазин они тренируют модель руками. Вначале бывает очень мало данных от магазинов. Я сразу понял: "Значит проблема в том, что так масштабироваться невозможно. Нужно подключать магазины автоматически и решить проблему холодного старта." СТО очень понравилось, что я ухватил суть проблемы. Я сказал, что могу это сделать.
После ряда собеседований они прислали мне тестовое задание. CSV с 300 ответами покупателей на опрос. Id продукта, категория, рост покупателя, обычно покупаемый размер, ответы в каких местах обычно жмет, какой размер в итоге купил, какой фидбек оставил, какие были проблемы с купленной вещью. Задача: дать рекомендации.
Первая проблема, что нет таргета. Мы не знаем какой размер человеку действительно подходит, знаем только какой он купил. Вторая проблема: ничего не учится. Я подошел к задаче как к классификации, где рекомендуемый размер это класс. Попробовал для начала предсказывать купленный размер. Логрег просто не сходится. Еще в начале подумал, что влияют только две фичи: обычно покупаемый размер и рост. Визуализация это подтвердила: какой человек обычно носит размер, такой и покупает. Данных нет, таргета нет, фичей нет, какой тут ML?
Я уже хотел бросить это тестовое. Но решил поиграть в игру: что если бы я уже работал в этой компании? Приходит ко мне бизнес, и что я ему скажу? "Ой тут ничего не сделать, я сдаюсь"? Стало интересно, что же можно выжать.
ML не обучается. Максимум можно сделать какую-то таблицу: с таким обычным размером, таким ростом и прочими ответами как у тебя люди чаще всего покупают эту вещь с размеро• Х. Не руками же эту таблицу составлять: и оверфит большой, и обновлять трудно, и проблему масштабирования так не решить. Нужна обучаемая автоматическая таблица.
И я как раз знаю такую! Random Forest. Раскладывает обучающую выборку по полочкам. Не переобучается. Экстраполировать не умеет, а нам как раз не нужно. Все виды фичей умеет обрабатывать из коробки, никакого препроцессинга не надо. На train-test split данных нет, а RF как раз дает бесплатно out-of-bag оценку тестовой ошибки. Обучил на предсказание купленного размера: красота, около 0.7 OOB f1-score. Но как же рекомендовать не тот размер, что обычно покупают, а тот, что подойдет? Придумал трюк: выкидываем все примеры, где у людей был негативный фидбек, на остальных обучаем. Получаем модель, которая говорит "люди с твоими параметрами, которые оказались довольны, купили Х."
Попробовал, изучил результаты предсказаний на недовольных покупкой, которые не попали в трейн сет модели. Нашел несколько крутых случаев: человек купил размер Х, написал фидбек, что вещт оказалась маловата. Рекомендация модели: стоило покупать на размер больше. Вау, полезные рекомендации, отпад!
Но это только начало, потому что это выполнение на сто процентов. Надо на стопятьдесят. Что еще можно выжать? Я задумался, что для эффективности рекомендаций важно доверие к ним. С чего тебе верить черному ящику, который говорит покупать 50-ый размер?
Easysize очень клевые и я готов рекомендовать их всем. Один из лучших опытов собеседований. Полная прозрачность, отношение на равных, очень приятные люди и никакого булщита. На собеседовании с СЕО я испытал такое доверие, что нарушил все правила поведения и сказал, что на самом деле не знаю чего хочу. Интересны и рисерч, и инженерия, и бизнес. Не делайте так. Несмотря на это, они все равно сделали мне оффер.
Они делают рекомендации размеров одежды на Shopify. При выборе размера покупатель заполняет небольшой опрос: обычно ношу 36-ой, рост 156, бывает жмет в плечах. В ответ получает ML рекомендацию: покупай 36-ой. Это растит конверсию в покупку.
На собеседовании мы с СТО сразу нашли общий язык. Он рассказал, что под каждый магазин они тренируют модель руками. Вначале бывает очень мало данных от магазинов. Я сразу понял: "Значит проблема в том, что так масштабироваться невозможно. Нужно подключать магазины автоматически и решить проблему холодного старта." СТО очень понравилось, что я ухватил суть проблемы. Я сказал, что могу это сделать.
После ряда собеседований они прислали мне тестовое задание. CSV с 300 ответами покупателей на опрос. Id продукта, категория, рост покупателя, обычно покупаемый размер, ответы в каких местах обычно жмет, какой размер в итоге купил, какой фидбек оставил, какие были проблемы с купленной вещью. Задача: дать рекомендации.
Первая проблема, что нет таргета. Мы не знаем какой размер человеку действительно подходит, знаем только какой он купил. Вторая проблема: ничего не учится. Я подошел к задаче как к классификации, где рекомендуемый размер это класс. Попробовал для начала предсказывать купленный размер. Логрег просто не сходится. Еще в начале подумал, что влияют только две фичи: обычно покупаемый размер и рост. Визуализация это подтвердила: какой человек обычно носит размер, такой и покупает. Данных нет, таргета нет, фичей нет, какой тут ML?
Я уже хотел бросить это тестовое. Но решил поиграть в игру: что если бы я уже работал в этой компании? Приходит ко мне бизнес, и что я ему скажу? "Ой тут ничего не сделать, я сдаюсь"? Стало интересно, что же можно выжать.
ML не обучается. Максимум можно сделать какую-то таблицу: с таким обычным размером, таким ростом и прочими ответами как у тебя люди чаще всего покупают эту вещь с размеро• Х. Не руками же эту таблицу составлять: и оверфит большой, и обновлять трудно, и проблему масштабирования так не решить. Нужна обучаемая автоматическая таблица.
И я как раз знаю такую! Random Forest. Раскладывает обучающую выборку по полочкам. Не переобучается. Экстраполировать не умеет, а нам как раз не нужно. Все виды фичей умеет обрабатывать из коробки, никакого препроцессинга не надо. На train-test split данных нет, а RF как раз дает бесплатно out-of-bag оценку тестовой ошибки. Обучил на предсказание купленного размера: красота, около 0.7 OOB f1-score. Но как же рекомендовать не тот размер, что обычно покупают, а тот, что подойдет? Придумал трюк: выкидываем все примеры, где у людей был негативный фидбек, на остальных обучаем. Получаем модель, которая говорит "люди с твоими параметрами, которые оказались довольны, купили Х."
Попробовал, изучил результаты предсказаний на недовольных покупкой, которые не попали в трейн сет модели. Нашел несколько крутых случаев: человек купил размер Х, написал фидбек, что вещт оказалась маловата. Рекомендация модели: стоило покупать на размер больше. Вау, полезные рекомендации, отпад!
Но это только начало, потому что это выполнение на сто процентов. Надо на стопятьдесят. Что еще можно выжать? Я задумался, что для эффективности рекомендаций важно доверие к ним. С чего тебе верить черному ящику, который говорит покупать 50-ый размер?
BY Борис опять
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
Friday’s performance was part of a larger shift. For the week, the Dow, S&P 500 and Nasdaq fell 2%, 2.9%, and 3.5%, respectively. He adds: "Telegram has become my primary news source." However, the perpetrators of such frauds are now adopting new methods and technologies to defraud the investors. As a result, the pandemic saw many newcomers to Telegram, including prominent anti-vaccine activists who used the app's hands-off approach to share false information on shots, a study from the Institute for Strategic Dialogue shows. What distinguishes the app from competitors is its use of what's known as channels: Public or private feeds of photos and videos that can be set up by one person or an organization. The channels have become popular with on-the-ground journalists, aid workers and Ukrainian President Volodymyr Zelenskyy, who broadcasts on a Telegram channel. The channels can be followed by an unlimited number of people. Unlike Facebook, Twitter and other popular social networks, there is no advertising on Telegram and the flow of information is not driven by an algorithm.
from ua