На чём будет правильнее считать важность признаков бизнес-процесса с SHAP (модель, как обычно, обучается на train, для early stopping (validation set) берётся часть train)? коммент "почему так" приветствуется.
Anonymous Poll
21%
на train
50%
на test
29%
на whole dataset
0%
нет разницы
#ml #shap #interpretability #robustness
Вы работаете над задачей объяснения вклада признаков в результат некоторого бизнес-процесса. Натренировали неплохую модель (видите, что на test предсказания значимо лучше случайного гадания aka DummyClassifier). Посчитали кэфы Шепли, отсортировали по модулю, и собираетесь уже презентовать в статье/руководству/заказчику. И вдруг, перезапустив обучение, видите, что с новым инстансом классификатора список фичей существенно изменил порядок: некоторые фичи в списке упали, другие взлетели.
Вы работаете над задачей объяснения вклада признаков в результат некоторого бизнес-процесса. Натренировали неплохую модель (видите, что на test предсказания значимо лучше случайного гадания aka DummyClassifier). Посчитали кэфы Шепли, отсортировали по модулю, и собираетесь уже презентовать в статье/руководству/заказчику. И вдруг, перезапустив обучение, видите, что с новым инстансом классификатора список фичей существенно изменил порядок: некоторые фичи в списке упали, другие взлетели.
😢1
↑ Что сделаете, если важность некоторых признаков существенно меняется от обучения к обучению?
Anonymous Poll
0%
Зафиксирую random_seed и притворюсь что проблемы нет
13%
Это ок, т.к. модель случайна, а в данных есть мультиколлинеарность. Выберу 1 из классификаторов
87%
Организую Cross-Validation и посчитаю SHAP на CV многими инстансами, итоги усредню.
Forwarded from New Yorko Times (Yury Kashnitsky)
Санёк с Wall Street
#career #coolstorybob #friday #жзл
Как-то в ODS я рассказывал про своего друга, теперь – расширенная версия. Ничего сверхъестественного в его истории, просто как будто сериал про Wall street, запасайтесь попкорном. Wall street тут чисто как клише, речь пойдет про жизнь в ее Лондонском аналоге – the City.
С Саней мы дружим с института – вместе учились на факультете авиации МФТИ. Учился он достаточно, чтоб не терять стипендию, но без чудес. Вместе пили пиво, ходили на концерты альтернативки, вставали на сноуборд, косили траву на военных сборах, ездили волонтерить в Европу (где тоже косили траву) и знакомились с девчонками. Когда у меня все катали матан, он так же пытался меня подстебывать типа я задрот. Сам же стал активно ботать на 5 курсе, когда собрался поступать в РЭШ. Я в него, честно-то, не особо верил, но с 3-й попытки он сдал TOEFL на 112, GMAT нам физтехам проще даётся, да и с экономикой как-то проскочил.
Начались трудовыебудни, жил он с дедом на 15 тыс. рублей в месяц, готовил котлеты, дед их поедал. На неделе было по 7-8 дедлайнов. Как-то ещё умудрился девушку найти, брал у меня в долг 10к на торт и цветы, чтоб с мамой и бабушкой познакомиться (в 2017-ом мы оба женились). В РЭШ народ был еще более лютый, чем на физтехе, Саня по рейтингу был где-то на 25-ом месте, но повезло, именно он выбил грант на обучение.
Саня услышал в РЭШке про возможность постажироваться в Barclays, и понеслось. Как банный лист к заднице, приставал ко всем, кто прошёл эту программу, опять заботал просто все что можно было, и вот он в Лондоне с окладом 5к фунтов и налогами 10% (а не 40, как обычно, ибо стажировка). В барклайсе спокойно решал задачку типа регрессии с временными рядами, никакого кипиша, как в РЭШке, не было, жил припеваючи, с боссом ладил, пиво пил. Оказывается, когда тебя подсиживают ещё человек 16-17, надо быть начеку: знакомиться с руководителями прочих подразделений, даже ходить на собесы (!) внутри того же барклайса. Решают даже такие мелочи, что как-то ехал Саня в лифте, зашёл супер-босс и как-то разговор за 40 сек. не склеился. В итоге не предложили Сане контракт, хотя вся команда его за была, и босс был им доволен, а вот супер-босс нашёл на его место кого-то еще. Саня ходил 3 дождливых дня вдоль Темзы и пил джин.
В Москву (точнее, Жуковский) он вернулся зимой, как оказалось, почти на 3 месяца. Стал атаковать топовые инвест-банки, взяв прицел на JP Morgan и Goldman Sachs. И пошли собеседования... почти каждый день. Опять Саня заботал просто все брейн-тизеры и деривативы, на собесы ходил как на работу, даже волноваться перестал, в конце вёл себя просто нагло, сразу отвечая на вопросы, даже не скрывая, что знает ответ. В итоге JP Morgan устроил ему 18 (!) собесов, а на очной встрече в Лондоне эйчар честно признался, что есть 4 равноценных кандидата, и он не знает, кого брать. Отшили из-за week communication skills и отсутствия боевого опыта C++, хотя это и так из резюме было видно. А вот Голдман принял после 14 собесов.
#career #coolstorybob #friday #жзл
Как-то в ODS я рассказывал про своего друга, теперь – расширенная версия. Ничего сверхъестественного в его истории, просто как будто сериал про Wall street, запасайтесь попкорном. Wall street тут чисто как клише, речь пойдет про жизнь в ее Лондонском аналоге – the City.
С Саней мы дружим с института – вместе учились на факультете авиации МФТИ. Учился он достаточно, чтоб не терять стипендию, но без чудес. Вместе пили пиво, ходили на концерты альтернативки, вставали на сноуборд, косили траву на военных сборах, ездили волонтерить в Европу (где тоже косили траву) и знакомились с девчонками. Когда у меня все катали матан, он так же пытался меня подстебывать типа я задрот. Сам же стал активно ботать на 5 курсе, когда собрался поступать в РЭШ. Я в него, честно-то, не особо верил, но с 3-й попытки он сдал TOEFL на 112, GMAT нам физтехам проще даётся, да и с экономикой как-то проскочил.
Начались трудовыебудни, жил он с дедом на 15 тыс. рублей в месяц, готовил котлеты, дед их поедал. На неделе было по 7-8 дедлайнов. Как-то ещё умудрился девушку найти, брал у меня в долг 10к на торт и цветы, чтоб с мамой и бабушкой познакомиться (в 2017-ом мы оба женились). В РЭШ народ был еще более лютый, чем на физтехе, Саня по рейтингу был где-то на 25-ом месте, но повезло, именно он выбил грант на обучение.
Саня услышал в РЭШке про возможность постажироваться в Barclays, и понеслось. Как банный лист к заднице, приставал ко всем, кто прошёл эту программу, опять заботал просто все что можно было, и вот он в Лондоне с окладом 5к фунтов и налогами 10% (а не 40, как обычно, ибо стажировка). В барклайсе спокойно решал задачку типа регрессии с временными рядами, никакого кипиша, как в РЭШке, не было, жил припеваючи, с боссом ладил, пиво пил. Оказывается, когда тебя подсиживают ещё человек 16-17, надо быть начеку: знакомиться с руководителями прочих подразделений, даже ходить на собесы (!) внутри того же барклайса. Решают даже такие мелочи, что как-то ехал Саня в лифте, зашёл супер-босс и как-то разговор за 40 сек. не склеился. В итоге не предложили Сане контракт, хотя вся команда его за была, и босс был им доволен, а вот супер-босс нашёл на его место кого-то еще. Саня ходил 3 дождливых дня вдоль Темзы и пил джин.
В Москву (точнее, Жуковский) он вернулся зимой, как оказалось, почти на 3 месяца. Стал атаковать топовые инвест-банки, взяв прицел на JP Morgan и Goldman Sachs. И пошли собеседования... почти каждый день. Опять Саня заботал просто все брейн-тизеры и деривативы, на собесы ходил как на работу, даже волноваться перестал, в конце вёл себя просто нагло, сразу отвечая на вопросы, даже не скрывая, что знает ответ. В итоге JP Morgan устроил ему 18 (!) собесов, а на очной встрече в Лондоне эйчар честно признался, что есть 4 равноценных кандидата, и он не знает, кого брать. Отшили из-за week communication skills и отсутствия боевого опыта C++, хотя это и так из резюме было видно. А вот Голдман принял после 14 собесов.
❤1⚡1
Forwarded from New Yorko Times (Yury Kashnitsky)
Когда математики в ступоре и опять про важность софт-скиллов
#math #science
Статья в моем блоге: https://yorko.github.io/2022/rus-abc-conjecture/
Эта история не нова, завязалась она в 2012-ом и, как кажется, развязалась – в 2018-ом. Кто следил за историей док-ва abc-гипотезы - поставьте 🤓 к посту, а для остальных я вкратце перескажу суть этой истории, от которой любители математики могут почувствовать настоящий фриссон – тот самый мороз по коже.
abc-гипотеза – одна из главных в теории чисел, она связывает сложение, умножение и простые числа где-то на “самом низком уровне”. В английском “conjecture” означает, что большинство верит в верность утверждения, но оно еще не доказано (в переводе на русский эта коннотация теряется, гипотеза – это всего лишь гипотеза). Я не буду тут играть в тру математика, смысл abc-гипотезы я не смогу толком оценить (после доклада декана ФКН Аржанцева по алгебраической геометрии я даже бабушке перестал говорить, что математик). Но важность abc-гипотезы можно оценить по вторичным признакам: во-первых, она еще не доказана, а значит, скорее всего с помощью существующих математических аппаратов ее либо невозможно либо очень сложно доказать (вряд ли уж за почти 40 лет человечество проглядело простое элегантное доказательство, хотя как знать). Когда наконец будет доказана, значит, математика скорее всего выработает принципиально новый аппарат и продвинется далеко вперед. Во-вторых, как говорят математики, великая теорема Ферма – просто следствие abc-гипотезы, значит, если доказать abc-гипотезу, то можно “за бесплатно” получить доказательство пресловутой великой теоремы Ферма, формулировку которой поймет любой школьник, а на доказательство которой понадобилось более 350 лет человечества и несколько лет затворничества одного конкретного человека – британца Эндрю Уайлса.
И вот в 2012 году японец Синъити Мотидзуки выкладывает 4 статьи объемом более 500 стр. в сумме и утверждает, что доказал abc-гипотезу. Первая статья под названием «Интер-универсальная теория Тейхмюллера 1: Построение театров Ходжа», начинается с утверждения, что цель работы в «разработке арифметической версии теории Тейхмюллера для цифровых полей ограниченных эллиптической кривой… с помощью применения теории полуграфов анабелиоидов, фробениоидов, эталь тета-функций и логарифмических оболочек». Звучит как что-то на марсианском. Причем не только для нас, но и для специалистов. «Смотря на неё, ты чувствуешь будто читаешь статью из будущего или далёкого космоса», – написал в своем блоге Джордан Элленберг, профессор математики в Висконсинского университета.
Сообщество математиков было в полнейшем ступоре. Игнорировать статью не получалось: Мотидзуки к своим 43 годам уже добился всего чего можно в математике, в 16 лет он поступил в университет Принстона, а в 22 года уже получил докторскую степень под руководством лауреата Филдсовской премии в области алгебраической геометрии Герда Фальтингса. Но и вникнуть в доказательство было почти невозможно: Мотидзуки цитирует в основном себя самого, в статьях, цитирующих опять же Мотидзуки, и т.д. по рекурсии – получается гора из почти 2000 статей. Лучшие умы алгебраической геометрии оценивали, что им нужно около года вникать в теории Мотидзуки, чтоб хотя бы сформировать хоть какое-то мнение о его теории. Не помогало и то что Мотидзуки не очень спешил пояснять свои “театры Ходжа” и прочие головоломные исхищрения, его не раз приглашали в топовые универы с курсами лекций, но японец довольно высокомерно отказывался, считая, что ни за неделю, ни за месяц нельзя объяснить его доказательство.
И получается патовая ситуация. Труд математиков могут оценить только математики (peer review), но в данном случае верификация слишком сложна, как будто подрываются сами основы самой, казалось бы, точнейшей и чистейшей из наук – математики. А пока лучшие умы вникают в новую статью, нам простым смердам остается только гадать, что происходит, надо ли гению распинаться и пояснять свои выкладки или мы, человечество поймем все веке эдак в 24-ом, пусть лучше гений тем временем еще дальше продвинет науку.
#math #science
Статья в моем блоге: https://yorko.github.io/2022/rus-abc-conjecture/
Эта история не нова, завязалась она в 2012-ом и, как кажется, развязалась – в 2018-ом. Кто следил за историей док-ва abc-гипотезы - поставьте 🤓 к посту, а для остальных я вкратце перескажу суть этой истории, от которой любители математики могут почувствовать настоящий фриссон – тот самый мороз по коже.
abc-гипотеза – одна из главных в теории чисел, она связывает сложение, умножение и простые числа где-то на “самом низком уровне”. В английском “conjecture” означает, что большинство верит в верность утверждения, но оно еще не доказано (в переводе на русский эта коннотация теряется, гипотеза – это всего лишь гипотеза). Я не буду тут играть в тру математика, смысл abc-гипотезы я не смогу толком оценить (после доклада декана ФКН Аржанцева по алгебраической геометрии я даже бабушке перестал говорить, что математик). Но важность abc-гипотезы можно оценить по вторичным признакам: во-первых, она еще не доказана, а значит, скорее всего с помощью существующих математических аппаратов ее либо невозможно либо очень сложно доказать (вряд ли уж за почти 40 лет человечество проглядело простое элегантное доказательство, хотя как знать). Когда наконец будет доказана, значит, математика скорее всего выработает принципиально новый аппарат и продвинется далеко вперед. Во-вторых, как говорят математики, великая теорема Ферма – просто следствие abc-гипотезы, значит, если доказать abc-гипотезу, то можно “за бесплатно” получить доказательство пресловутой великой теоремы Ферма, формулировку которой поймет любой школьник, а на доказательство которой понадобилось более 350 лет человечества и несколько лет затворничества одного конкретного человека – британца Эндрю Уайлса.
И вот в 2012 году японец Синъити Мотидзуки выкладывает 4 статьи объемом более 500 стр. в сумме и утверждает, что доказал abc-гипотезу. Первая статья под названием «Интер-универсальная теория Тейхмюллера 1: Построение театров Ходжа», начинается с утверждения, что цель работы в «разработке арифметической версии теории Тейхмюллера для цифровых полей ограниченных эллиптической кривой… с помощью применения теории полуграфов анабелиоидов, фробениоидов, эталь тета-функций и логарифмических оболочек». Звучит как что-то на марсианском. Причем не только для нас, но и для специалистов. «Смотря на неё, ты чувствуешь будто читаешь статью из будущего или далёкого космоса», – написал в своем блоге Джордан Элленберг, профессор математики в Висконсинского университета.
Сообщество математиков было в полнейшем ступоре. Игнорировать статью не получалось: Мотидзуки к своим 43 годам уже добился всего чего можно в математике, в 16 лет он поступил в университет Принстона, а в 22 года уже получил докторскую степень под руководством лауреата Филдсовской премии в области алгебраической геометрии Герда Фальтингса. Но и вникнуть в доказательство было почти невозможно: Мотидзуки цитирует в основном себя самого, в статьях, цитирующих опять же Мотидзуки, и т.д. по рекурсии – получается гора из почти 2000 статей. Лучшие умы алгебраической геометрии оценивали, что им нужно около года вникать в теории Мотидзуки, чтоб хотя бы сформировать хоть какое-то мнение о его теории. Не помогало и то что Мотидзуки не очень спешил пояснять свои “театры Ходжа” и прочие головоломные исхищрения, его не раз приглашали в топовые универы с курсами лекций, но японец довольно высокомерно отказывался, считая, что ни за неделю, ни за месяц нельзя объяснить его доказательство.
И получается патовая ситуация. Труд математиков могут оценить только математики (peer review), но в данном случае верификация слишком сложна, как будто подрываются сами основы самой, казалось бы, точнейшей и чистейшей из наук – математики. А пока лучшие умы вникают в новую статью, нам простым смердам остается только гадать, что происходит, надо ли гению распинаться и пояснять свои выкладки или мы, человечество поймем все веке эдак в 24-ом, пусть лучше гений тем временем еще дальше продвинет науку.
Yury Kashnitsky
[RU] Lost in Hodge theaters: the ABC-conjecture thriller
On the thrilling story about the unpenetrable proof of the ABC conjecture which is one of the corner stones of the modern number theory.
Forwarded from New Yorko Times (Yury Kashnitsky)
Она выбивает +10% к зарплате с помощью одного простого трюка…
#career #tips
Пародия на дешевый кликбейт есть, теперь можно к сути. Поделюсь одним лайфхаком про переговоры, узнал про него, кажется, в книге “Never Split the Difference: Negotiating As If Your Life Depended On It” (отзыв на Goodreads – https://www.goodreads.com/review/show/4376349339). Пока применил два раза – консультировал друзей, сработало. Два наблюдения – это уже статистика, мы ведь все знаем, что две точки уникально определяют прямую, а значит, и регрессионную модель.
Итак, хак в том, что если хочешь зарплату X, не проси именно ее, а называй вилку, условно, от 1.1*X до 1.2*X. При этом избегай круглых цифр. Если тебя спрашивают “ну что, сколько хочешь?” и ты говоришь “200к евро в год” или “500к рублей в месяц”, то складывается ощущение, что ты не особо то и обдумала этот вопрос, а взяла круглую цифру с потолка.
А вилка создает пространство для маневра, тем более завышенная. Итого, если хочешь 120к в год, говори что-то типа “Я хочу от 136200 до 148400 в зависимости от того-то и того” (тут можно назвать другие перки типа sign-on бонусов, компенсации участия в конференции и т.д.). При такой постановке вопроса, вполне вероятно сторговаться по нижней границе обозначенной вилки (136200), что и так лучше чем исходные ожидания (120к). Сейчас рыночек мерзлый, так что есть риск, что работодатель все равно прогнет по зарплате, но в таком случае хотя бы есть некий буфер для уступок (между теми же 136200 и 120к).
PS. По переговорам, кстати, все советуют этот годный длиннопост https://haseebq.com/my-ten-rules-for-negotiating-a-job-offer/. Вероятно, на рынке не скоро будет классно и получится диктовать свои условия, но прокачать переговорные навыки все равно стоит.
#career #tips
Пародия на дешевый кликбейт есть, теперь можно к сути. Поделюсь одним лайфхаком про переговоры, узнал про него, кажется, в книге “Never Split the Difference: Negotiating As If Your Life Depended On It” (отзыв на Goodreads – https://www.goodreads.com/review/show/4376349339). Пока применил два раза – консультировал друзей, сработало. Два наблюдения – это уже статистика, мы ведь все знаем, что две точки уникально определяют прямую, а значит, и регрессионную модель.
Итак, хак в том, что если хочешь зарплату X, не проси именно ее, а называй вилку, условно, от 1.1*X до 1.2*X. При этом избегай круглых цифр. Если тебя спрашивают “ну что, сколько хочешь?” и ты говоришь “200к евро в год” или “500к рублей в месяц”, то складывается ощущение, что ты не особо то и обдумала этот вопрос, а взяла круглую цифру с потолка.
А вилка создает пространство для маневра, тем более завышенная. Итого, если хочешь 120к в год, говори что-то типа “Я хочу от 136200 до 148400 в зависимости от того-то и того” (тут можно назвать другие перки типа sign-on бонусов, компенсации участия в конференции и т.д.). При такой постановке вопроса, вполне вероятно сторговаться по нижней границе обозначенной вилки (136200), что и так лучше чем исходные ожидания (120к). Сейчас рыночек мерзлый, так что есть риск, что работодатель все равно прогнет по зарплате, но в таком случае хотя бы есть некий буфер для уступок (между теми же 136200 и 120к).
PS. По переговорам, кстати, все советуют этот годный длиннопост https://haseebq.com/my-ten-rules-for-negotiating-a-job-offer/. Вероятно, на рынке не скоро будет классно и получится диктовать свои условия, но прокачать переговорные навыки все равно стоит.
#ml #shap #interpretabiity #mutualinformation
О, этот удивительный мир халатности и безответственности. А может, просто здорового пофигизма? Как общеизвестно, пакет SHAP раскладывает предсказание модели для каждой строки данных на линейную сумму "вкладов" каждого признака, по сути формируя матрицу NxM (строк данных на число признаков). На базе этой информации SHAP предлагает пользователю несколько основных визуализаций:
1) summary всех признаков, отсортированные по убыванию модуля средней значимости на всём рабочем датасете
идёт в 2 вкусах: плоский одноцветный bar plot, где построен только модуль среднего, и более продвинутый beeswarm plot, где напротив признака отображены значения Шэпли этого признака для все строк данных. Да ещё и раскрашены в цветовой шкале значений этой фичи. Тем самым по beeswarm можно понять, к примеру, что в среднем повышение/понижение какой-то фичи сподвигает модель прогнозировать более высокий/низкий таргет.
2) объяснение индивидуального прогноза
идёт в 3 фасонах: force plot, waterfall plot, decision plot. последний обладает широкой функциональностью: может отображать несколько примеров сразу, работает с мультиклассовой классификацией, позволяет кластеризовать "пути" в пространстве признаков, по которым модель приходит к решению;
3) объяснение вклада индивидуального признака: scatte plot, ранее dependence plot. По X значение признака, по Y значение кэфа Шэпли для этого примера. Похоже чем-то на PDP по виду (но разная суть). И вот тут автор SHAP, видимо, вдохновлённый тем, что PDP может быть не только одномерным, предлагает бесплатно из коробки киллер фичу: так как по Y на графике все равно уже есть вариабельность, SHAP вам автоматически раскрасит точки в цвета...другой наиболее влияющей фичи (на основную фичу вашего графика). Звучит шикарно, и я думал, что "наиболее влияющая" уж в пакете-то SHAP определяется хитрыми интеракциями теории игр... Полез в код, куда там... Во-первых, там просто np.corrcoeff, во-вторых, и то на максимум 10_000 точек. Так а как же квартет Энскомба? Нелинейность у нас отменили? Хочу попробовать заменить пирсоновский corrcoeff на хотя бы взаимную информацию.
UPD: на мой взгляд, MI куда чётче разделяет низкие и высокие прогнозы. Пример в аттаче. Надо бы замёрджить PR.
О, этот удивительный мир халатности и безответственности. А может, просто здорового пофигизма? Как общеизвестно, пакет SHAP раскладывает предсказание модели для каждой строки данных на линейную сумму "вкладов" каждого признака, по сути формируя матрицу NxM (строк данных на число признаков). На базе этой информации SHAP предлагает пользователю несколько основных визуализаций:
1) summary всех признаков, отсортированные по убыванию модуля средней значимости на всём рабочем датасете
идёт в 2 вкусах: плоский одноцветный bar plot, где построен только модуль среднего, и более продвинутый beeswarm plot, где напротив признака отображены значения Шэпли этого признака для все строк данных. Да ещё и раскрашены в цветовой шкале значений этой фичи. Тем самым по beeswarm можно понять, к примеру, что в среднем повышение/понижение какой-то фичи сподвигает модель прогнозировать более высокий/низкий таргет.
2) объяснение индивидуального прогноза
идёт в 3 фасонах: force plot, waterfall plot, decision plot. последний обладает широкой функциональностью: может отображать несколько примеров сразу, работает с мультиклассовой классификацией, позволяет кластеризовать "пути" в пространстве признаков, по которым модель приходит к решению;
3) объяснение вклада индивидуального признака: scatte plot, ранее dependence plot. По X значение признака, по Y значение кэфа Шэпли для этого примера. Похоже чем-то на PDP по виду (но разная суть). И вот тут автор SHAP, видимо, вдохновлённый тем, что PDP может быть не только одномерным, предлагает бесплатно из коробки киллер фичу: так как по Y на графике все равно уже есть вариабельность, SHAP вам автоматически раскрасит точки в цвета...другой наиболее влияющей фичи (на основную фичу вашего графика). Звучит шикарно, и я думал, что "наиболее влияющая" уж в пакете-то SHAP определяется хитрыми интеракциями теории игр... Полез в код, куда там... Во-первых, там просто np.corrcoeff, во-вторых, и то на максимум 10_000 точек. Так а как же квартет Энскомба? Нелинейность у нас отменили? Хочу попробовать заменить пирсоновский corrcoeff на хотя бы взаимную информацию.
UPD: на мой взгляд, MI куда чётче разделяет низкие и высокие прогнозы. Пример в аттаче. Надо бы замёрджить PR.
Forwarded from Борис опять
В последнее время у меня в канале много постов о собственном сверхчеловечестве.
Вот что остается за кадром:
* Перестал читать статьи. Причем очень жалею об этом. Вчера первый раз за два месяца прочитал блог пост о статье и сразу начал галлюцинировать идеями стартапов. Статьи реально необходимая для развития штука, которая круто развивает воображение.
* Перестал проходить Anki. Накопилось что-то около 50 непройденных карточек. Мое золотое правило такое: если я за день прошел карточку в Анки, то день прошел не зря, потому что я хотя бы не откатился назад.
* Перестал системно заниматься курсом по Computer Vision. Мой план это реализовать на классическом CV panorama stitcher (сделано), классификатор, сегментатор и детектор. Плюс все базовые алгоритмы: billinear interpolation (сделано), Histogram normalization (сделано), Harris (сделано), SIFT (сделано на 90%, дальше бросил), HOG, RANSAC, итд.
* Спорта больше нет. Точнее все еще нет с конца февраля. Хотя бы стал делать 10-минутную разминку по утрам, чтобы все не болело.
* Хобби практически нет. Раньше я водил партии в Fate Core (настольная ролевка как DnD, но с большим фокусом на повествование, а не на кубы) и занимался пением. Теперь возобновил пение хотя бы раз в две недели.
* Общения практически нет. Тяжело поддерживать удаленный контакт с друзьями, хоть CRMку заводи. Но все реально, если прикладывать усилия: берешь и звонишь. Или общаешься с новыми знакомыми из местных эмигрантов. Или с коллегами с работы. Короче варианты есть, но я ничего не делаю.
Все из-за чего-то похожего на то, о чем пишет Лаида выше. Только в моем случае причина в постоянном переключении. И работа, и учеба, и адаптация в новой стране, и консультации по поиску работы, и преподавание в ОТУС, и пет проект в который я серьезно закопался, и друзья зовут делать ML на аутсорсе для рекламной компании.
Я очень сильно концентрируюсь на работе из-за того, что реальность оказалась не такой, как хотелось бы. Банально просел уровень жизни, но это не самое главное. Главное, что появилось ощущение, будто обстоятельства диктуют мне как жить: теперь ты просто чувак с работой белого воротничка, живешь в маленьком городке и трясешься о счетах за электричество. Возникает внутренний бунт. Кажется, что сейчас я похреначу и снова все будет красочно и искрометно. Конечно истиный путь это сесть в позу лотоса, принять реальность и просто жить в новых условиях, но я пока не познал дзен.
Вот что остается за кадром:
* Перестал читать статьи. Причем очень жалею об этом. Вчера первый раз за два месяца прочитал блог пост о статье и сразу начал галлюцинировать идеями стартапов. Статьи реально необходимая для развития штука, которая круто развивает воображение.
* Перестал проходить Anki. Накопилось что-то около 50 непройденных карточек. Мое золотое правило такое: если я за день прошел карточку в Анки, то день прошел не зря, потому что я хотя бы не откатился назад.
* Перестал системно заниматься курсом по Computer Vision. Мой план это реализовать на классическом CV panorama stitcher (сделано), классификатор, сегментатор и детектор. Плюс все базовые алгоритмы: billinear interpolation (сделано), Histogram normalization (сделано), Harris (сделано), SIFT (сделано на 90%, дальше бросил), HOG, RANSAC, итд.
* Спорта больше нет. Точнее все еще нет с конца февраля. Хотя бы стал делать 10-минутную разминку по утрам, чтобы все не болело.
* Хобби практически нет. Раньше я водил партии в Fate Core (настольная ролевка как DnD, но с большим фокусом на повествование, а не на кубы) и занимался пением. Теперь возобновил пение хотя бы раз в две недели.
* Общения практически нет. Тяжело поддерживать удаленный контакт с друзьями, хоть CRMку заводи. Но все реально, если прикладывать усилия: берешь и звонишь. Или общаешься с новыми знакомыми из местных эмигрантов. Или с коллегами с работы. Короче варианты есть, но я ничего не делаю.
Все из-за чего-то похожего на то, о чем пишет Лаида выше. Только в моем случае причина в постоянном переключении. И работа, и учеба, и адаптация в новой стране, и консультации по поиску работы, и преподавание в ОТУС, и пет проект в который я серьезно закопался, и друзья зовут делать ML на аутсорсе для рекламной компании.
Я очень сильно концентрируюсь на работе из-за того, что реальность оказалась не такой, как хотелось бы. Банально просел уровень жизни, но это не самое главное. Главное, что появилось ощущение, будто обстоятельства диктуют мне как жить: теперь ты просто чувак с работой белого воротничка, живешь в маленьком городке и трясешься о счетах за электричество. Возникает внутренний бунт. Кажется, что сейчас я похреначу и снова все будет красочно и искрометно. Конечно истиный путь это сесть в позу лотоса, принять реальность и просто жить в новых условиях, но я пока не познал дзен.
❤3
https://www.youtube.com/watch?v=km2Hd_xgo9Q
#joboffer #stayatthetable #ignoreultimatums
"Everybody has a plan until he gets punched in the face"
#joboffer #stayatthetable #ignoreultimatums
"Everybody has a plan until he gets punched in the face"
YouTube
How to Negotiate Your Job Offer - Prof. Deepak Malhotra (Harvard Business School)
Prof. Deepak Malhotra offers 15 pieces of negotiation advice, followed by Q&A, in an informal session for students at the Harvard Business School. Deepak is the author of:
- The Peacemaker's Code (new release in 2021): https://amzn.to/2YcfSEl
- Negotiating…
- The Peacemaker's Code (new release in 2021): https://amzn.to/2YcfSEl
- Negotiating…
https://www.youtube.com/watch?v=GLay7kksLtc&ab_channel=MicroConf
#startup
Don't charge early customers until they start receiving ample value
#startup
Don't charge early customers until they start receiving ample value
YouTube
How to Validate Your Idea & Launch to $7k in Recurring Revenue – Rob Walling – MicroConf 2014
Rob works step-by-step through his idea validation process and launch experience with Drip, an email service provider he launched in 2013.
MicroConf 2014
http://microconf.com
#microconf #microconf2014
Join our exclusive community for SaaS founders → ht…
MicroConf 2014
http://microconf.com
#microconf #microconf2014
Join our exclusive community for SaaS founders → ht…
https://3dnews.ru/1081225/moskovskiy-student-napisal-diplom-s-pomoshchyu-chatgpt-i-dage-smog-ego-zashchitit
"Алексей Жадан писал дипломную работу по теме «Анализ и совершенствование управления игровой компании». На начальном этапе он сгенерировал план работы по заданной теме и направил его научному руководителю. План пришлось переработать в соответствии с методическим пособием по написанию научных работ. Для этого студент попросил ChatGPT изучить справочный материал и адаптировать под него план диплома.
Для генерации введения к работе Жадан отправил чат-боту основной запрос на английском языке, а позднее просил дополнить материал из-за ограничений бота по количеству символов. Получившийся текст объёмом 6200 символов он перевёл на русский. Аналогичным образом была написана теоретическая часть работы. Чтобы сделать выводы по трём частям первой главы, студент скопировал последние абзацы каждой части и попросил чат-бота обобщить их.
Вторая и третья части работы требовали анализа с расчётами и практическими рекомендациями. Для их генерации студент нашёл похожую работу по другой компании и отправил её ChatGPT, попросив изменить содержание под свою тематику. В общей сложности на подготовку дипломной работы ушло 23 часа. Из них 15 часов ушло на написание материала через ChatGPT и 9 часов — на редактирование сгенерированного материала. При этом оригинальность диплома составила 82 %. Научный руководитель и дипломная комиссия отмечали несвязность и нарушение логики русского языка в работе, но Жадан смог защитить её, получив оценку «удовлетворительно»."
"Алексей Жадан писал дипломную работу по теме «Анализ и совершенствование управления игровой компании». На начальном этапе он сгенерировал план работы по заданной теме и направил его научному руководителю. План пришлось переработать в соответствии с методическим пособием по написанию научных работ. Для этого студент попросил ChatGPT изучить справочный материал и адаптировать под него план диплома.
Для генерации введения к работе Жадан отправил чат-боту основной запрос на английском языке, а позднее просил дополнить материал из-за ограничений бота по количеству символов. Получившийся текст объёмом 6200 символов он перевёл на русский. Аналогичным образом была написана теоретическая часть работы. Чтобы сделать выводы по трём частям первой главы, студент скопировал последние абзацы каждой части и попросил чат-бота обобщить их.
Вторая и третья части работы требовали анализа с расчётами и практическими рекомендациями. Для их генерации студент нашёл похожую работу по другой компании и отправил её ChatGPT, попросив изменить содержание под свою тематику. В общей сложности на подготовку дипломной работы ушло 23 часа. Из них 15 часов ушло на написание материала через ChatGPT и 9 часов — на редактирование сгенерированного материала. При этом оригинальность диплома составила 82 %. Научный руководитель и дипломная комиссия отмечали несвязность и нарушение логики русского языка в работе, но Жадан смог защитить её, получив оценку «удовлетворительно»."
3DNews - Daily Digital Digest
Московский студент за сутки написал диплом с помощью ChatGPT и смог его защитить
Студент бакалавриата из Москвы Александр Жадан написал дипломную работу с помощью чат-бота ChatGPT компании Open AI и смог успешно защитить её в вузе.
https://3dnews.ru/1081233/agiotag-vokrug-chatgpt-sposobstvoval-rostu-stoimosti-aktsiy-kompaniy-svyazannih-s-iskusstvennim-intellektom
Хмм, а что если мониторить гугл трендс, и покупать акции компаний, связанных с хайповыми штуками.. да не, чушь какая-то.
Хмм, а что если мониторить гугл трендс, и покупать акции компаний, связанных с хайповыми штуками.. да не, чушь какая-то.
3DNews - Daily Digital Digest
Ажиотаж вокруг ChatGPT запустил взрывной рост акций компаний, связанных с искусственным интеллектом
Стремительно взлетевшая популярность продвинутого ИИ-чат-бота ChatGPT компании Open AI способствует росту стоимости акций других компаний, так или иначе связанных с технологиями на основе искусственного интеллекта и в названии которых присутствует сочетание…
Forwarded from Техножрица 👩💻👩🏫👩🔧
Расскажу про одну статью, которая перманентно висит у меня во вкладках в браузере: https://arxiv.org/pdf/1908.08962.pdf . Называется Well-Read Students Learn Better: On the Importance of Pre-training Compact Models.
В этой статье рассказывается про уменьшенные версии модели BERT: от самой маленькой - 2 слоя attention, 2 головы attention на каждом слое (Tiny) до базовой - 12 слоев attention, 12 голов на каждом (Base).
Центральная тема статьи - трехэтапный метод обучения этих моделей, называемый Pre-trained Distillation (Figure 1 в статье или Рис. 1 в посте ниже). Имеется в виду следующая схема: сначала маленькая моделька предобучается на стандартной задаче Masked Language Modelling (учится угадывать пропущенные слова в текстах), потом в нее дистиллируются знания из большой модели (маленькую модель учат подражать "поведению" большой - в данном случае ее просто учат выдавать те же выходы, что и большая, на каждом показанном примере из датасета), и только затем происходит обычное дообучение (fine-tuning).
В результате получения столь всестороннего образования маленькие модельки начинают показывать достойные результаты на датасете GLUE (General Language Understanding Evaluation) - лучше, чем при стандартной схеме Pre-Training + Fine-tuning. Ну а самостоятельно испытать способности этих маленьких моделек нам предлагают прямо на хабе huggingface, куда они и были выложены: https://huggingface.co/google/bert_uncased_L-12_H-768_A-12 (правда, я не до конца уверена в том, после какого именно метода обучения выложены веса, об этом будет сказано ниже) .
Кроме сравнения разных методов обучения, авторы проводят еще и анализ того, как ширина и глубина влияют на качество модели. Мне очень понравилась эта тема, и я сильно залипла в график на Рис. 2 (также известный как Figure 6). Здесь PD означает Pre-trained Distillation, PF - Pre-trained Fine-tuning. Красным я отметила результаты, соответствующие размерам моделей, выложенных на huggingface. Справа от графика я поместила кусок из таблицы, выложенной на huggingface по ссылке.
Вроде бы, результаты из таблицы соответствуют результатам обучения после Pre-training (MLM) + Fine-tuning с графика. Но в моем эксперименте Tiny Bert с huggingface на SST-2 показала результат лучше, чем в таблице - на уровне Pre-trained Distillation. Может быть, у меня по-другому разбит датасет SST-2? Или они вставили на страницу в huggingface не ту таблицу и все-таки выложили модели не просто после Pre-training, а после Pre-trained Distillation (хотя тогда неясно, на каком именно датасете проводилась дистилляция, ведь говорится, что она task-specific)? Хотелось бы уточнить у авторов, но они пока не отвечают.
Ну а в общем и целом выводы из графика такие, что при продвинутых методах обучения (D, PD, PF) глубина модели в среднем дает больший выигрыш в качестве, чем ширина, а при простейшем методе (Fine-tuning без предварительного обучения) и глубина, и ширина на датасетах из GLUE помогают мало.
Кроме прочего, авторы сравнивают указанные методы с методом truncation (когда маленькую модель инициализируют некоторым подмножеством весов большой) + distillation, а также изучают влияние того, на каком именно датасете производилась дистилляция, на итоговую точность, в частности, немного написали про явление domain shift (это когда целевая задача и задача дистилляции сильно отличаются).
В общем, получился обстоятельный анализ, который можно использовать как справочный материал для своих исследований.
#объяснения_статей
В этой статье рассказывается про уменьшенные версии модели BERT: от самой маленькой - 2 слоя attention, 2 головы attention на каждом слое (Tiny) до базовой - 12 слоев attention, 12 голов на каждом (Base).
Центральная тема статьи - трехэтапный метод обучения этих моделей, называемый Pre-trained Distillation (Figure 1 в статье или Рис. 1 в посте ниже). Имеется в виду следующая схема: сначала маленькая моделька предобучается на стандартной задаче Masked Language Modelling (учится угадывать пропущенные слова в текстах), потом в нее дистиллируются знания из большой модели (маленькую модель учат подражать "поведению" большой - в данном случае ее просто учат выдавать те же выходы, что и большая, на каждом показанном примере из датасета), и только затем происходит обычное дообучение (fine-tuning).
В результате получения столь всестороннего образования маленькие модельки начинают показывать достойные результаты на датасете GLUE (General Language Understanding Evaluation) - лучше, чем при стандартной схеме Pre-Training + Fine-tuning. Ну а самостоятельно испытать способности этих маленьких моделек нам предлагают прямо на хабе huggingface, куда они и были выложены: https://huggingface.co/google/bert_uncased_L-12_H-768_A-12 (правда, я не до конца уверена в том, после какого именно метода обучения выложены веса, об этом будет сказано ниже) .
Кроме сравнения разных методов обучения, авторы проводят еще и анализ того, как ширина и глубина влияют на качество модели. Мне очень понравилась эта тема, и я сильно залипла в график на Рис. 2 (также известный как Figure 6). Здесь PD означает Pre-trained Distillation, PF - Pre-trained Fine-tuning. Красным я отметила результаты, соответствующие размерам моделей, выложенных на huggingface. Справа от графика я поместила кусок из таблицы, выложенной на huggingface по ссылке.
Вроде бы, результаты из таблицы соответствуют результатам обучения после Pre-training (MLM) + Fine-tuning с графика. Но в моем эксперименте Tiny Bert с huggingface на SST-2 показала результат лучше, чем в таблице - на уровне Pre-trained Distillation. Может быть, у меня по-другому разбит датасет SST-2? Или они вставили на страницу в huggingface не ту таблицу и все-таки выложили модели не просто после Pre-training, а после Pre-trained Distillation (хотя тогда неясно, на каком именно датасете проводилась дистилляция, ведь говорится, что она task-specific)? Хотелось бы уточнить у авторов, но они пока не отвечают.
Ну а в общем и целом выводы из графика такие, что при продвинутых методах обучения (D, PD, PF) глубина модели в среднем дает больший выигрыш в качестве, чем ширина, а при простейшем методе (Fine-tuning без предварительного обучения) и глубина, и ширина на датасетах из GLUE помогают мало.
Кроме прочего, авторы сравнивают указанные методы с методом truncation (когда маленькую модель инициализируют некоторым подмножеством весов большой) + distillation, а также изучают влияние того, на каком именно датасете производилась дистилляция, на итоговую точность, в частности, немного написали про явление domain shift (это когда целевая задача и задача дистилляции сильно отличаются).
В общем, получился обстоятельный анализ, который можно использовать как справочный материал для своих исследований.
#объяснения_статей
huggingface.co
google/bert_uncased_L-12_H-768_A-12 · Hugging Face
We’re on a journey to advance and democratize artificial intelligence through open source and open science.
❤1
Forwarded from Записки Ппилифа (Ppilif Uliankin [GMT+1])
Про собеседования по алгоритмам #собесы
Когда ты устраиваешься в ML или в аналитику, много где надо пройти секцию c кодом. Чаще всего на этих секциях встречаются довольно простые алгоритмические задачки.
На таких собесах хороший интервьюер пытается понять, как именно кандидат рассуждает и пишет код. Задача — это просто повод поговорить (плохой интервьюер заставляет вертеть красно-чёрные деревья, чтобы потешить своё чсв).
При подготовке к таким секциям люди задрачивают leetcode, но забывают про разговор. В итоге это приводит к тому, что на собесах возникают ступоры и кандидат уходит в себя. Он сидит и думает молча. Так делать нельзя, надо начинать рассуждать вслух.
Я бы готовился, в первую очередь, к разговору и учился бы на литкодных задачках рассуждать.
1. Читаешь условие. Проговариваешь свой алгоритм голосом. Оцениваешь голосом его сложность по памяти и времени. Если слишком большая, думаешь где ты в алгоритме делаешь лишние действия. Обычно, на секциях для аналитиков, все должно делаться за O(n).
Тут можно сформулировать самую грубую версию, оценить её сложность, а дальше в рассуждених улучшить её.
2. Если со сложностью все ок — проговариваешь голосом какие могут быть краевые случаи и как их надо обработать. Записываешь их.
3. Пишешь код в блокноте. Без автоподсказок и интерпретатора. Не запускаешь его до последнего.
4. Смотришь на получившийся код, выписываешь пару тестов для проверки — краевые и обычные, проговариваешь голосом, как тесты проходят сквозь код. Если нашел баг, правишь.
5. Запускаешь код. Если работает норм — комитишь на литкод. Если падает, смотришь тест, ищешь ошибку, правишь и больше не допускаешь.
Если ты на собесе будешь разговаривать с интервьюером по этой схеме, он будет счастлив. Говорю как интервьюер, которому доводилось проводить секции на код.
Решать задачи с литкода — это, конечно, хорошо. Что делать если не шаришь во всех этих О(n)? Я бы в таком случае прочитал грокаем алгоритмы. Читается за выходные и открывает кучу чакр.
Ну а дальше можно пойти на литкод либо пальнуть яндексовые видосы про алгоритмы с Густокашиным. К ним прилагаются контесты, которые можно порешать. Не забывайте делать это по схеме, которую я вкинул выше. В любом собеседовании — главное разговор, а не задача.
Когда ты устраиваешься в ML или в аналитику, много где надо пройти секцию c кодом. Чаще всего на этих секциях встречаются довольно простые алгоритмические задачки.
На таких собесах хороший интервьюер пытается понять, как именно кандидат рассуждает и пишет код. Задача — это просто повод поговорить (плохой интервьюер заставляет вертеть красно-чёрные деревья, чтобы потешить своё чсв).
При подготовке к таким секциям люди задрачивают leetcode, но забывают про разговор. В итоге это приводит к тому, что на собесах возникают ступоры и кандидат уходит в себя. Он сидит и думает молча. Так делать нельзя, надо начинать рассуждать вслух.
Я бы готовился, в первую очередь, к разговору и учился бы на литкодных задачках рассуждать.
1. Читаешь условие. Проговариваешь свой алгоритм голосом. Оцениваешь голосом его сложность по памяти и времени. Если слишком большая, думаешь где ты в алгоритме делаешь лишние действия. Обычно, на секциях для аналитиков, все должно делаться за O(n).
Тут можно сформулировать самую грубую версию, оценить её сложность, а дальше в рассуждених улучшить её.
2. Если со сложностью все ок — проговариваешь голосом какие могут быть краевые случаи и как их надо обработать. Записываешь их.
3. Пишешь код в блокноте. Без автоподсказок и интерпретатора. Не запускаешь его до последнего.
4. Смотришь на получившийся код, выписываешь пару тестов для проверки — краевые и обычные, проговариваешь голосом, как тесты проходят сквозь код. Если нашел баг, правишь.
5. Запускаешь код. Если работает норм — комитишь на литкод. Если падает, смотришь тест, ищешь ошибку, правишь и больше не допускаешь.
Если ты на собесе будешь разговаривать с интервьюером по этой схеме, он будет счастлив. Говорю как интервьюер, которому доводилось проводить секции на код.
Решать задачи с литкода — это, конечно, хорошо. Что делать если не шаришь во всех этих О(n)? Я бы в таком случае прочитал грокаем алгоритмы. Читается за выходные и открывает кучу чакр.
Ну а дальше можно пойти на литкод либо пальнуть яндексовые видосы про алгоритмы с Густокашиным. К ним прилагаются контесты, которые можно порешать. Не забывайте делать это по схеме, которую я вкинул выше. В любом собеседовании — главное разговор, а не задача.
🔥1