Интересное что-то – Telegram
Интересное что-то
517 subscribers
2.72K photos
253 videos
138 files
4.52K links
Материалы и мысли, понадерганные отовсюду
Блог: https://news.1rj.ru/str/asisakov_channel
Чат: https://news.1rj.ru/str/youknowds_chat
Download Telegram
#mlops
Возможно уже пересылал, но крутая штука
Forwarded from Дмитрий Колодезев
#softskills #interview
Вопросы работодателю
Как тимлиду собеседовать работодателя

Не так давно мне довелось поучаствовать в круглом столе на тему того, что тимлид должен уточнить у своего будущего работодателя, чтобы принять решение о трудоустройстве.

Я считаю эту тему очень важной и нужной. Причем и для самого тимлида, и для компании.

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

Делюсь с вами ссылкой и надеюсь, что она вам когда-нибудь сможет помочь🤝
https://www.youtube.com/watch?v=p1wXMci7L2Q
#Tip30 #Train

В отличии от других бустингов в LGBM деревья растут асимметрично (по листьям). В то время как в CatBoost и XGBoost рост происходит по уровням. И это декларируется разработчиками LGBM как одно из основных преимуществ.

И тут закралась ловушка: если вы ограничите глубину дерева в LGBM (а для бустингов рекомендуются не глубокие деревья), то вы по сути превратите его в симметричное урезанное дерево!

Именно поэтому по умолчанию в LGBM глубина деревьев (max_depth) = -1 (что значит - бесконечная), а в CatBoost и XGBoost глубина = 6.

Но бесконечно расти тоже не вариант - так мы просто запомним все данные. Поэтому, чтобы ограничить глубину деревьев используйте такие параметры как:
num_leaves — максимальное количество листьев в одном дереве
min_data_in_leaf — минимальное количество данных в одном листе
min_data_in_bin — минимальное количество данных внутри одного бина
min_data_per_group — минимальное количество данных на одно значение категориальной фичи
min_gain_to_split — минимальный прирост, которое дает разделение
min_sum_hessian_in_leaf — минимальная сумма гессиана в одном листе

Считается, что асимметричные деревья более склонны к переобучению, особенно на маленьких датасетах. В этом случае рекомендуется задействовать max_depth. Также стоит использовать max_depth на очень больших датасетах - иначе модель будет слишком долго учиться.

З.Ы. Недавно поведение аналогичное LGBM и XGBoost реализовали в катбусте.
Forwarded from New Yorko Times (Yury Kashnitsky)
Про бигтех, софт-скиллы и английский
#career

Скоро тут будут кванты, матан и прочие прелести 🤓, а пока начнем с чего-то более попсового.

Сейчас умеренно активно собеседую на ML-инженера в Польше, замысел – помочь именно кому-то пострадавшему от действий РФ, независимо от национальности. К сожалению, топовым вроде бы (чисто по хард-скиллам) кандидатам часто не хватает двух вещей: как вы поняли по названию поста, это софт-скиллы и английский.

То как яндексоиды-олимпиадники, успешно вертящие пресловутые красно-черные деревья даже после 14 пив и двух-трёх шаурм, проваливают behavioral (поведенческое интервью) – это уже притча во языцех. Из недавнего – мой знакомый, бывший коллега по Mail.ru, который сейчас тащит почти весь ML в VK, должен был бы попадать в Meta на E7. Но он вообще ничего не знал про поведенческое интервью (далее – бихейв), думал, там будут только технические вопросы, в итоге – E6. Я успешно прошел собесы в Амазон на applied scientist (но фриз) на L5, по фидбеку это “почти L6”, как узнал потом от знакомых в Амазоне, на L6 ожидают чуть больше историй про проекты на кучу команд, когда прям пошел, убедил и поднял несколько команд на проект.

Поэтому совет про бихейв: прежде всего узнайте про формат и поговорите со знакомыми в конкретной компании, возможны особенности. И относитесь к этому типу интервью серьезно, это не булщит. В частности, у Амазона бихейв – почти половина всего времени, отведенного на собесы, то есть 2-3 часа чистого времени (кстати, свой подход они неплохо поясняют в книге “Working backwards”). Представьте вопрос “Расскажите, как вы поменяли процесс в компании”. Можно оборжать, конечно, закатить глаза, но если подумать, то можно многое узнать о кандидате по ответу на такой вопрос. Одно дело пожаловался на сардельки в столовой, их заменили на сосиски. Другое дело – человек увидел неэффективность в команде/компании и реально поменял, какой-то из процессов, например, предложил те же бихейв-интервью при найме или потащил демо-сессии всех Data-Science команд в компании для обмена знаниями.

Есть явный плюс подготовки к бихейв-интервью: детальный взгляд на свой предыдущий опыт и выжимание сути из своих проектов. Это в любом случае пригодится, независимо от того, с какой компанией собеседуетесь. И как бонус, никогда не придется на собесе говорить “ой, это было давно, деталей не помню” (наличие такого ответа – еще одна фича с отрицательным весом).

Итак, подготовка к бихейв-интервью:
- Посмотрите типовые вопросы, их штук 150. Вот неплохой список для Амазона https://igotanoffer.com/blogs/tech/amazon-behavioral-interview Но вопросы там хорошо общаются и на прочие компании
- Также почитайте “Время Валеры” @cryptovalerii по тегу InterviewPreparation
- Выделите десяток самых популярных вопросов (таких видео полно на ютубе, точно стоит включить: “Tell us about a project you are most proud of”, “Tell me about a time you solved a big problem in your company”, “Tell me about your biggest career failure and what you learned from it” и “Tell me about a time you had a conflict with a coworker or manager and how you approached it”) и по кажому вопросу опишите по 2-3 истории из своей карьеры (работы, учебы, пет-проджектов и т.д.). Это немалая инвестиция времени (от 15 часов точно), но вы точно не пожалеете!
- В ответе можно придерживаться формата STAR – Situation, Task, Action, Result, легко гуглится

Ресурсы, которые помогли мне:

- Хорош бесплатный текстовый курс Яндекс.Практикума про алгоритмические собеседования https://practicum.yandex.ru/profile/algorithms-interview/ там есть часть про поведенческие интервью, это можно считать ликбезом (остальные части – тоже топ)
- видео Jackson Gabbard https://www.youtube.com/watch?v=PJKYqLP6MRE
- много полезного нашел на этом ресурсе https://igotanoffer.com/blogs/tech, условно, как отвечать на вопросы типа “почему компания X?”
- пост про вопросы с подвохом https://leetcode.com/discuss/interview-experience/1532708/tips-for-answering-few-tricky-behavioural-interview-questions
Forwarded from New Yorko Times (Yury Kashnitsky)
Наконец, английский. Зависит от компании, конечно, у нас, например, полно носителей, а уровень языка не-носителей тоже очень высокий. Хочется не тупить в таких вещах как презентации, если надо убедить в своем взгляде. Да и даже во время 2-3-минутных айсбрейкингов с англичанами не хочется выпадать. Для некоторых ролей (PM, менеджеры любого звена) топ-инглиш на входе – просто обязательное условие.

Можно долго обсуждать стратегии изучения иностранных языков. Прозвучит банально, но важна практика, то есть беседы с носителями. Без этого сложно сдвинуться. Я в свое время прокачался в английском через разговорные клубы, но это может быть и SkyEng, см. статью “Как я осилил английский” на Хабре https://habr.com/ru/post/413633/

Сейчас время непростое, конечно, рыночек мёрзлый. Но всяко паузы можно использовать для прокачки. Если после этого поста хотя бы один человек заменит десяток часов литкода на практику бихейв-интервью и английского, значит, я тут не зря строчил.
Forwarded from Заработок онлайн 💰NOSCAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Vladimir
У нас вопрос образовался. Вот мы арендовали yandex compute cloud, можем в него ходить по ssh и все такое. Код для бота мы залили в github. Теперь пытаемся положить код бота на тачку в клауде, чтобы бот хостился не локально, а на клауде. Как мне кажется, тут появляются 4 возможных сценария:
1. Залить код вручную. Насколько я понял, из web ui невозможно попасть в файловый менеджер тачки и просто положить код на диск
2. Воспользоваться object storage. Это отдельный сервис (может отдельно тарифицироваться), и как будто это предназначено немного для других целей
3. Спуллить код из гита вручную в консоли и запустить бота. Просто, но может быть неудобно каждый раз вручную пуллить и перезапускать бота
4. Настроить CI\CD, чтобы при обновлении кода бота он пуллил новый код на клауд тачку и перезапускал бота. Пока что выглядит неизвестно, пугающе и вообще непонятно, что это нам действительно нужно.

Как поступают в таких ситуациях и кто как сделал у себя в проекте?
Forwarded from Slava Polianskii
Vladimir
У нас вопрос образовался. Вот мы арендовали yandex compute cloud, можем в него ходить по ssh и все такое. Код для бота мы залили в github. Теперь пытаемся положить код бота на тачку в клауде, чтобы бот хостился не локально, а на клауде. Как мне кажется, тут…
Обычно используется пункт 4. За тем исключением, что чаще на сервер попадает не сам код, а собранный docker образ приложения. На сервере образ просто запускается в составе стека, либо одиночного сервиса.
Можно собрать образ локально, чтобы не возмться с настройкой ci/cd