Код, коты и карандаш
Photo
Только не "дущнилы хорещи", а "душнилы хороши".
А по сути — подтверждаю.
А по сути — подтверждаю.
Forwarded from partially unsupervised
Предположим такую ML ситуацию: например, мы учим классификацию, и на каком-то этапе train accuracy резко выросла (например, 80% => 90%), а на валидации - слегка просела (например, 75% => 74.5%). Как это прокомментировать?
👨🎓Ответ уровня junior: классический оверфит по учебнику, обязательно нужно делать early stopping или вводить другие способы регуляризации!
🤔 Ответ уровня middle: дорогой джун, а вот и необязательно оверфит, вдруг наша задача предполает, что качество трейна важно. Например, если у нас API, которое по адресу сайта предсказывает его тематику, и трейн содержит top-100000 сайтов по запрашиваемости, качество трейна важнее качества на валидации!
👴 Ответ уровня senior: дорогой middle, если у нас большая часть запросов касается трейнсета, давайте не будем там делать никакой ML, а просто запомним популярные значения и будем отдавать их из кэша. И тогда качество модели на трейне снова не важно!
🚁 Ответ уровня staff и выше: молчание - он верит, что коллеги разберутся с этой задачей, а у него есть дела поважнее.
Судя по тому, что я вчера прикрутил подобный lookup table (-17% к среднему времени инференса и +ε к точности), не быть мне пока стаффом!
👨🎓Ответ уровня junior: классический оверфит по учебнику, обязательно нужно делать early stopping или вводить другие способы регуляризации!
🤔 Ответ уровня middle: дорогой джун, а вот и необязательно оверфит, вдруг наша задача предполает, что качество трейна важно. Например, если у нас API, которое по адресу сайта предсказывает его тематику, и трейн содержит top-100000 сайтов по запрашиваемости, качество трейна важнее качества на валидации!
👴 Ответ уровня senior: дорогой middle, если у нас большая часть запросов касается трейнсета, давайте не будем там делать никакой ML, а просто запомним популярные значения и будем отдавать их из кэша. И тогда качество модели на трейне снова не важно!
🚁 Ответ уровня staff и выше: молчание - он верит, что коллеги разберутся с этой задачей, а у него есть дела поважнее.
Судя по тому, что я вчера прикрутил подобный lookup table (-17% к среднему времени инференса и +ε к точности), не быть мне пока стаффом!
😁12🤔1
Блог*
Ну и что ты мне сделаешь, я в другом городе
Только что подошла официантка, попросила показать маникюр, после этого сказала, что красиво и мне очень идёт 😳
❤22🐳9🤮7👍2🔥2
Forwarded from Волосатая семья
Пожалуй, самая важная статья, которую я написал. Обычно о таком не прошу, но "прочитал сам - перешли другому". Мне кажется, это та тема, о которой нужно говорить всем и со всеми.
https://telegra.ph/Travmirovannye-deti-vyrastayut-v-travmirovannyh-vzroslyh-kotorye-travmiruyut-detej-08-18
https://telegra.ph/Travmirovannye-deti-vyrastayut-v-travmirovannyh-vzroslyh-kotorye-travmiruyut-detej-08-18
Telegraph
Травмированные дети вырастают в травмированных взрослых, которые травмируют детей
Когда речь заходит о воспитании детей, то от людей 40+ часто слышу тезис «нас так воспитывали и нормальными выросли». К таким я обращаю слова от тех, кого воспитали ваши поколения: Нет! Вы даже близко не нормальные. У вас куча психотарвм, комплексов, неврозов…
👍7💩1
В поезде дали пакет с перекусом — входит в стоимость билета. Вроде и приятно, но вот апельсин на одном бочке уже слегка порос плесенью 😒
UPD: заменили
UPD: заменили
🔥3❤1
Forwarded from мне не нравится реальность
https://blog.m-ou.se/rust-cpp-concurrency/
Mara aka m-ou-se сравнила недавние C++ proposal'ы связанные с конкурентностью с тем, что существует в Rust 👀
Mara aka m-ou-se сравнила недавние C++ proposal'ы связанные с конкурентностью с тем, что существует в Rust 👀
blog.m-ou.se
Comparing Rust's and C++'s Concurrency Library
The concurrency features that are included in the Rust standard library
are quite similar to what was available in C++11: threads, atomics, mutexes, condition variables, and so on.
In the past few years, however, C++ has gained quite a few new concurrency…
are quite similar to what was available in C++11: threads, atomics, mutexes, condition variables, and so on.
In the past few years, however, C++ has gained quite a few new concurrency…
#soc
В ноябре 2021 года у меня и одной моей знакомой (которую я крайне уважаю за ум в том числе) завязалась дискуссия о социальном неравенстве. В процессе дискуссии речь зашла о квотах, и она заметила, что, по её мнению, квоты вредят в том числе и меньшинствам, которым эти квоты должны, по идее, помогать. Я попросил её привести аргумент в пользу этой позиции, и она в итоге написала сообщение, которое я с минимальными правками привожу ниже.
Этот довод показался мне достаточно убедительным, не смотря на очевидную слабость в виде простоты нижележащей модели. Я неоднократно просил её оформить её это в виде оформленного текста и опубликовать, но у неё так и не доходили до этого руки. В итоге она разрешила мне опубликовать его, как есть.
---
Смотри. Допустим, мы нанимаем/берём в универ честно. Нижняя планка по скору — 80. Но группы А в коллективе 20%, хотя в популяции — 50%. А мы хотим поднять эту долю хотя бы до 40%. А общий набор оставить таким же, например 100 человек. Для этого нам надо разделить отбор на демографические группы и смотреть на них отдельно.
Итак, если брать по планке 80 поинтов — мы наберём только 20 индивидов группы А. А мы хотим 40. Поэтому мы вынуждены снизить планку до 70, например. При этом индивидов группы Б по планке в 80 поинтов набиралось 80 человек, теперь мы можем взять только 60. Значит, придётся повысить планку, например, до 85.
Смотрим за руками далее. Допустим, средний уровень принятых в обеих демографиях был одинаковый. Но в группе А мы добавили индивидов снизу, снизив среднее. А в группе Б мы срезали индивидов снизу, и среднее повысили. Теперь группа Б в среднем кажется более скиллованной, чем группа А. Это вредит репутации ВСЕХ в группе А.
Более того, демографические показатели в целом мы подвинули посредством отказа 20 индивидам со скором выше 80, и принятием вместо них индивидов со скором между 70 и 80. Это значит, что средний уровень всего набора тоже снизился. Это значит, что в универе придётся снижать планку академической нагрузки, что вредит топовым ачиверам обеих демографических групп, но и всему коллективу в целом. На работе это будет означать, что компания будет добиваться меньшего, замедляя финансовый и карьерный рост всех. Более того, даже если планка для чужих групп неизвестна, все индивиды в целом понимают планку своей демографической группы — они могут не знать, одинаковая она или разная, но факт в том, что группа А заметит что их планка — 70 баллов, и будет далее работать на получение 70, а не 80. Это значит, что на определённом отрезке времени средняя квалификация группы А понизится, усугубив проблему. А если, например, академическую нагрузку решат не снижать — то 20 индивидов, принятых по пониженной планке, будут вынуждены уйти. Они потеряют веру в свои силы и будут менее успешны в будущем из-за этого, а помимо того, поскольку рейт дропа в группе А будет выше, это усугубит стереотип о неквалифицированности группы А.
Тем временем вспомним, что 20 индивидов группы Б не получили своё заслуженное место. Если квотирование — это распространённая практика, то они получат такой отказ больше 1 раза, что повлияет на их мотивацию и представление о справедливости мира. Более того, они будут приняты куда-то ниже уровнем, где они не разовьют свой потенциал в той же мере, снижая таким образом среднюю квалифицированность демографической группы Б. Они будут беднее, развиваться медленнее, и меньше верить в свои силы. И более того, если они заметят, что их отмели в пользу группы А, они могут начать дискриминировать против группы А в будущем, чтобы выровнять баланс.
То есть что мы имеем. Среднепопуляционная квалификация снижается в обеих демографических группах, Вера в себя теряется в обеих демографических группах, поляризация между этими группами нарастает, средняя квалификация по организации падает, вредя социальным и материальным перспективам обеих групп.
В ноябре 2021 года у меня и одной моей знакомой (которую я крайне уважаю за ум в том числе) завязалась дискуссия о социальном неравенстве. В процессе дискуссии речь зашла о квотах, и она заметила, что, по её мнению, квоты вредят в том числе и меньшинствам, которым эти квоты должны, по идее, помогать. Я попросил её привести аргумент в пользу этой позиции, и она в итоге написала сообщение, которое я с минимальными правками привожу ниже.
Этот довод показался мне достаточно убедительным, не смотря на очевидную слабость в виде простоты нижележащей модели. Я неоднократно просил её оформить её это в виде оформленного текста и опубликовать, но у неё так и не доходили до этого руки. В итоге она разрешила мне опубликовать его, как есть.
---
Смотри. Допустим, мы нанимаем/берём в универ честно. Нижняя планка по скору — 80. Но группы А в коллективе 20%, хотя в популяции — 50%. А мы хотим поднять эту долю хотя бы до 40%. А общий набор оставить таким же, например 100 человек. Для этого нам надо разделить отбор на демографические группы и смотреть на них отдельно.
Итак, если брать по планке 80 поинтов — мы наберём только 20 индивидов группы А. А мы хотим 40. Поэтому мы вынуждены снизить планку до 70, например. При этом индивидов группы Б по планке в 80 поинтов набиралось 80 человек, теперь мы можем взять только 60. Значит, придётся повысить планку, например, до 85.
Смотрим за руками далее. Допустим, средний уровень принятых в обеих демографиях был одинаковый. Но в группе А мы добавили индивидов снизу, снизив среднее. А в группе Б мы срезали индивидов снизу, и среднее повысили. Теперь группа Б в среднем кажется более скиллованной, чем группа А. Это вредит репутации ВСЕХ в группе А.
Более того, демографические показатели в целом мы подвинули посредством отказа 20 индивидам со скором выше 80, и принятием вместо них индивидов со скором между 70 и 80. Это значит, что средний уровень всего набора тоже снизился. Это значит, что в универе придётся снижать планку академической нагрузки, что вредит топовым ачиверам обеих демографических групп, но и всему коллективу в целом. На работе это будет означать, что компания будет добиваться меньшего, замедляя финансовый и карьерный рост всех. Более того, даже если планка для чужих групп неизвестна, все индивиды в целом понимают планку своей демографической группы — они могут не знать, одинаковая она или разная, но факт в том, что группа А заметит что их планка — 70 баллов, и будет далее работать на получение 70, а не 80. Это значит, что на определённом отрезке времени средняя квалификация группы А понизится, усугубив проблему. А если, например, академическую нагрузку решат не снижать — то 20 индивидов, принятых по пониженной планке, будут вынуждены уйти. Они потеряют веру в свои силы и будут менее успешны в будущем из-за этого, а помимо того, поскольку рейт дропа в группе А будет выше, это усугубит стереотип о неквалифицированности группы А.
Тем временем вспомним, что 20 индивидов группы Б не получили своё заслуженное место. Если квотирование — это распространённая практика, то они получат такой отказ больше 1 раза, что повлияет на их мотивацию и представление о справедливости мира. Более того, они будут приняты куда-то ниже уровнем, где они не разовьют свой потенциал в той же мере, снижая таким образом среднюю квалифицированность демографической группы Б. Они будут беднее, развиваться медленнее, и меньше верить в свои силы. И более того, если они заметят, что их отмели в пользу группы А, они могут начать дискриминировать против группы А в будущем, чтобы выровнять баланс.
То есть что мы имеем. Среднепопуляционная квалификация снижается в обеих демографических группах, Вера в себя теряется в обеих демографических группах, поляризация между этими группами нарастает, средняя квалификация по организации падает, вредя социальным и материальным перспективам обеих групп.
👍20🤔7🔥6👎4