Rose debug info
---------------

Блог Саши Михайлова

Не делать ненужное

Одним из заданий по анализу данных в Яндекс.Практикуме было проанализировать датасет по недвижимости. А перед этим была тема про пропуски в данных.

И вот в датасете в колонке «этажность» было аж 15% пропусков. Помню, я с завидной фанатичностью поставил себе цель избавиться от эти пропусков всеми вновь изученными способами.

Спустя три дня я сдался на показателе что-то около 3%, коорые ну никак не мог победить. Прихожу к наставнику: «отце, помоги! Как быть? Я потратил 10 часов на эти пропуски, добился снижения до 3%. Как победить оставшиеся??»

На что он спросил, зачем вообще я это делал. Он резонно рекомендовал перечитать задание и найти там вопрос, для ответа на который можно было бы применить эту этажность. Такого там не было ¯\_(ツ)_/¯

 * * *

Этот урок пригодился и на реальной работе. Первое задание на новом проекте: «резберись как в текущую систему АБ тестиирования прикрутить CUPED»

Я, значит, зарылся в репозиторий, нашёл там методы, где это всё используется, оттуда вышёл на сами функции; там, значит, построчно разобрал алгоритм, непонятное загуглил. И на следующий день гордо приношу результат: «вот тут в репозитории нужно поменять формат данных. Разрешите приступать?».

Начальница недоуменно заметила, что править код не надо; а надо было просто вкурить мануалы по новому методу и сделать доклад текущим сотрудникам о новых возможностях. Дел на пару часов вместе с рассказом.

* * *

С тех пор стараюсь, чтобы у меня в голове на фоне всегда вертелся вопрос «что я сейчас делаю? а зачем именно я это делаю? чтобы что?»

 No comments   14 d  

Ложная дихотомия

Ложная дихотомия — это когда кажется, что выбора всего два и надо обязательно выбрать один из них.

Я, как один из тех, кто только выучил новый термин, люблю это рассказывать (вот как сейчас) и находить ложные дихотомии в чужих решениях. Например, с работой: люди решают оставаться или уходить — хотя таких работ на рынке очень много и есть из чего выбрать.

А вчера обсуждали с коллегой курсы по Tableau: он говорил, что дорого — а я вступился и начал оправдывать эту цену (зачем-то). Интересно, что я даже не заметил, как сам провалился в ложную дихотомию! Пока коллега не предложил третий вариант, у меня в голове было всего два выбора: «дорого» и «не дорого».

А вариант, кстати, отличный: за цену групповых курсов нанять себе личного ментора с большим опытом и получить 20+ часов персональных консультаций.

Ложная дихотомия на Википедии

1 mo   логика

Обновил Эгею до v3788 (получилось не сразу)

Обновление Эгеи работает просто: заменяешь файлы и движок сам обновляет нужное под капотом.

У меня так почему-то не сработало. возможно у меня была какая-то слишком старая версия. Апдейт зависал и блог просто не открывался.

Раньше я просто забивал на это и жил со старой версией. Но теперь захотелось разобраться. Нашёл, что Эгея пишет лог действий в папке user/logs. Видел, что там она ищет в таблице несуществующий столбец:

Unknown column 'SubsetID' in 'where clause'

Видимо, в какой-то момент поменялась структура базы данных: в e2BlogActions пропала колонка HitCount, осталась только ReadCount; и во всех таблицах добавилась колонка SubsetID.

Я пробовал по-разному её обновить и в итоге (вроде) получилось.

Решение не идеальное — пока не понял, как восстановить умный эгеешный поиск Rose (остался только родной полнотекстовый от самого MySQL); плюс пропала статистика напопленных просмотров — но она и так была весьма куцей — почему-то только за последние две недели. Не могу исключать, что могло ещё что-то сломаться под капотом.

Обновление в итоге случилось. Записал порядок своих действий:

сделал бэкапы файлов и базы данных — с этим можно в любой момент откатиться назад (что я и делал несколько раз :—)

  1. поднял рядом текующую версию базы данных, чтобы потом смотреть чем она отличается от новой и ходить туда SQL-запросами за старыми данными;
  1. полностью удалил текущую базу данных со всеми таблицами;
  1. обновил папки Эгеи и запустил переустановку по официальному гайду;
  1. создал новый пост, чтобы движок создал себе базу данных;
  1. удалил строки об этом новом тестовом посте из таблиц, чтобы не занимать уникальные индексы
TRUNCATE TABLE e2BlogAliases;
TRUNCATE TABLE e2BlogNotes;
  1. накатил в базу данных назад свои данные. Автоматическое восстановление не работало из-за таблиц e2BlogActions и e2BlogComments, поэтому пришлось перекидывать данные по каждой таблице отдельно — здесь пригодилась копия базы данных из первого пункта и Jupyter ноутбук с Pandas :—)
  1. после такого обновления не работал поиск по блогу: добавил вернул возможность полнотекстового поиска в MySQL:
ALTER TABLE e2BlogNotes ADD FULLTEXT(Title, Text);
2 mo   Эгея

Вокруг одни вероятности

Как пишет Энни Дьюк в книге «Принцип ставок», покер — это идеальное место для прокачивания навыка принятия правильных решений: есть ограниченный выбор действий и решений, а результат виден сразу — выиграл или проиграл; и так повторить Х раз.

Нельзя просто взять и выиграть, можно лишь оперировать вероятностями. Можно вписаться в игру с одномастными четвёркой и пятёркой, и даже выиграть. Но это не значит, что такая стратегия — идеальная. Чтобы оценить стратегию, игроки в покер проводят мысленный эксперимент: «если бы я выбрал такую стратегию в 1000 играх, остался ли я в итоге в плюсе?». В варианте игры с четвёркой и пятёркой ответ очевиден — нет.

Этот мысленный трюк можно использовать и в реальной жизни:

  • совершить опасный обгон на дороге: да, в этот раз ничего страшного не случилось, но если так сделать 1000 раз?
  • на работе соврать, что тщательно проверил договор: в итоге всё обошлось, но если делать так постоянно?
  • да, можно продавить решение силой и не советоваться с супругой по установке в квартире бризера, но тогда доверительные и партнёрские отношения уже не построить.

Когда я делаю такой трюк, то в голове возникает образ некоего «датчика вероятности» — если дело плохо, то вероятность плохого исхода уходит в красную зону; это сигнал, что лучше бы подумать ещё раз и оценить другие варианты.

2 mo  

Вячеслав Матюхин про рациональность в подкасте «Подлодка»

Когнитивные искажения — это не баг человеческого мозга, мышление по своей сути «создано» из когнитивных искажений. Из нельзя просто «пофиксить»; единственный способ с ними бороться — это знать про их существование, учиться их замечать и контрить. Всю оставшуюся жизнь.

Другие направления, которые обычно интересуют тех, кому близка рациональность:

  • уличная эпистемология — способы докапываться до основ знаний.
  • ненасильственное общение — методы коммуникации, основанные на эмпатии и открытости.
  • эффективные альтруизм — максимизация полезного действия на каждую потраченную единицу усилий
  • этика искусственного интеллекта — как сделать так, чтобы изобретения человека не привели к печальным последствиям; ближайшая аналогия к ИИ — ядерное оружие в 1930-х.

Подкаст в iTunes и Overcast

Книга Элиезера Юдковского «Гарри Поттер и методы рационального мышления»

«Гарри Поттер и методы рационального мышления» — фанфик по вымышленной вселенной Джоан Роулинг, написанный специалистом по искусственному интеллекту Элиезером Юдковским. Автор публиковал главы по мере готовности с 2010 по 2015 год. На русский язык переводили поклонники-энтузиасты.

Сюжет покрывает первый год обучения Гарри Поттера в школе чародейства и волшебства Хогвартс и опирается на события из оригинальных книг. Расхождение с оригиналом заложено ещё в предыстории: приёмная мать главного героя, Петуния Эванс, выходит замуж за университетского профессора, в результате чего Гарри растёт в любящей семье и получает хорошее образование. К началу событий фанфика главный герой владеет методами научного познания мира и готов критически оценивать происходящие события.
Википедия

Сайт перевода https://hpmor.ru/ — со ссылками на электронную книгу в разных форматах, аудиокнигу и рассказ о процессе перевода книги на русский. Я читал книгу на Bookmate.

Удивительная книга. 10 из 10.

Получилось такое введение в рациональность и пособие по её применению в ежедневных мирских делах. Гарри сталкивается с новым и ко всему подходит критчески: ничему не верит на слово и всё проверяет. И автор приводит рассуждения героя шаг за шагом, чтобы читатель мог понять принципы, лежащие в основе принимаемых решений.

С художественной стороны книга тоже получилась отлично: сражения армий учеников, Азкабан, инциденты в школе — эти сцены читаются на одном дыхании и мне буквально приходилось делать усилие, чтобы отложить книгу.

Далее несколько разрозненных цитат с моими впечатлениями. В конце — список литературы.

* * *

Хотя в этой версии вселенно Гарри жил в любящей семье, Дамблдор говорит ему, что ощущение, как будто он «вырос в маленькой каморке под лестницей». На что Гарри замечает, что действительно чувствует себя одиноко в мире, где никто не понимает рацинональсти и не осознаёт всех опасностей не-рациональности.

подобно Гарри Поттеру ощущаю одиночество и массовое непонимание вокруг

* * *

полное рациональное разбитие расизма и ксенофобии:

«…представь что мы полетели в космос и встретили инопланетян, которые произошли от кристаллов. Они вообще не отличат двух людей друг от друга»

и действительно с этой точки зрения любые возможные различия между людьми кажутся совершенно несущественными по сравнению с какими-нибудь разумными кристаллами.

* * *

Положительная обратная связь для одаренных учеников: стоит в начале чуть выделиться и тебе оказывают внимание — менторы дают полезные советы, передают мощные артефакты. Это помогает добаваться ещё бо́льших упехов и подкрепляется репутация одарённого ученика, что привлекает новых мудрых советчиков и более мощные артефакты…

* * *

неприятие смерти и желание жить вечно:

  • «…я не хочу умирать сегодня, а завтра будет такой же день; значит, по простому закону логики я хочу жить вечно…»
  • «…представь что было бы люди, которые не умирали; и вот ты к ним приходишь и расписываешь прелести смерти и рассказываешь как много они упускают…»

* * *

трансгуманистические ценности: любая жизнь ценнее всего и как следствие тотальное неприятие Азкабана как пыточной по своей сути.

* * *

Подавляющее большинство магов не понимает магию, не хочет разбираться в ней. Кажется, что в среднем они ограничиваются 1% от всех возможностей. Люди типа авроров доходят процентов до пяти и оттого «обычным» магам кажутся супер-магами. Но если покопаться в предмете поглубже и получается Дамблор… или Волдеморт.

(У меня такое ощущение сложилось от этой книги и темы рациональности в целом: читаю про методы рационального мышления и ощущение, как будто читаю свитки с древней мудростью — вот где действительная сила, вот как работает мир.)

* * *

Чтобы узнать новое, надо много путешествовать. Что тут данность, там будет по-другому; а тамошние базовые штуки могут быть из ряда вон.

* * *

Интересно, как Гарри использовал байесовкие методы для расчёта вероятности возвращения к жизни Волдеморта с использованием априрной вероятности.

* * *

«Вокруг все сумасшедшие. Ты уже это понял и пути назад нет»

* * *

Порадовала отсылка к Эндрю Виггинзу из книги «Игра Эндера» Орсона Скотта Карда. Ждал её с самого начала темы с Гарри в роле генерала армии — уж слишком много совпадений; и дождался! Первая отсылка была неявная: когда в битве в озере (та же невосомость, ага) Гарри выстраивал свой Легион специальным образом. Во второй раз Гарри и его отец уже напрямую брали метафоры из книги, упоминая и названия, и имя главного героя.

* * *

Ещё нельзя не отметить Дамблдора, цитирующего «Властелина колец».

* * *

Список литературы

Книги, на которые Гарри Поттер опирается, принятии решений (те, которые я опознал):

Если интересно дальше копать в тему рациональности, на сайте сообщества рационалистов есть продвинутый список литературы.

Другие посты по теме рациональности:

Обучение на синтетических данных

Чтобы автомобили научились управлять сами собой, алгоритмы автопилотов обучают на видео, как ездят обычные водители. Таких видео надо очень много и они должны быть «размечены»: там должны быть отмечены и подписаны все важные элементы.

Эти обучающие видео можно брать с настоящих машин, но это долго и дорого. Умные ребята смекнули и сгенерировали такие видео прямо из компьютера: взяли условный Need for Speed и послали накатывать часы по условному Сан-Франциско. Получились синтетические данные, пригодные для обучения настоящих автопилотов.

Когда читал «Гарри Поттер и методы рационального мышления» Юдковского
подумал, что мы учимся точно так же: вместо того, чтобы самим строить лунные фермы и спасать страну от белых ходоков, мы читаем про то как вымышленные герои ведут себя в разных условиях. Те же синтетические данные, пригодные для обучения и применения навыков в реальном мире.

Только пример одиннадцатилетнего Гарри Поттера, дающего советы зрелому Северусу Снейпу по поводу отношения с девушками, показывает, что всё-таки «на практике есть разница между теорией и практикой».

3 mo  

книга «Принцип ставок», Энни Дьюк

прочитал книгу про то как чемпионы покера принимают решения и, кажется, это лучшая книга после «Thinking Fast and Slow» Канемана-Тверски.

Почему?

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

Во-вторых, автор проделала большую работу: как над своим навыком принятия решений, так и над книгой. В книге присутствует большой список литературы (я не считал, но по ощущениям там пара сотен книг и статей — ниже приведу несколько знакомых имён оттуда).

Судя по тексту, Энни не просто прочитала источники, но лично разговаривала со многими их авторами и обсуждала свои тезисы.

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

чаще всего теперь думаю о «группах поиска истины» (глава 5): чтобы оттачивать навык принятия решений, Энни обсуждала сыгранные руки с коллегами по покеру.

в этой группе применяются стандарт деятельности научного сообщества, разработанный Робертом Метроном:

  • коммунизм (данные принадлежат группе; не имеет никакого отношения к общественному строю);
  • универсализм (единые требования к утверждениям и аргументам, независимо от их источника);
  • беспристрастность или бескорыстие (бдительность в отношении потенциальных конфликтов интересов, которые могут повлиять на оценки);
  • организованный скептицизм (поощрение дискуссионной активности).

а принцип мысленного путешествия во времени уже даже применял несколько раз — сам думал о чём-то таком, а теперь нашёл хорошо сформулированный принцип.

Бизнес-журналист и писатель Сюзи Уэлч разработала так называемый метод 10-10-10, который помогает привлекать нас-в-будущем к принятию текущих решений. Для этого нужно задать себе вопросы: «Каковы будут последствия решения через десять минут? Через десять месяцев? Через десять лет?»

несколько имён из огромного списка литературы:

  • Дэн Арейли
  • Йоги Берра
  • Роберт Чалдини
  • Рей Дало
  • Ричард Докинз
  • Чарльз Дахигг
  • Ричард Фейнман
  • Малькольм Гладвелл
  • Даниель Канеман и Амос Тверски
  • Насим Талеб
  • Джон Фон Нейнманн
6 mo   книги

Ротация книжных жанров

раньше читал только «полезные» книги: например, книги по менеджементу, переговорам и всяким когнитивных наукам. Я считал, что жизнь слишком коротка, чтобы «читать придуманные кем-то сказки».

Столько всего «надо было» прочитать: лист чтения был года на два.

Потом заметил, что чтение как-то не заладилось: надо было сделать усилие над собой, чтобы открыть очередную умную книгу. Ведь должно совпасть много условий: ведь надо не просто почитать, а подумать над этим, а ещё записать и сделать конспект.

Чаще всего книга так и оставалась закрытой и я шёл читать ещё один канальчик в телеге)

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

Удивился, насколько быстро пролетела целая книга, а за ней и два продолжения: до этого уходило два месяца на нонфикшн и всего четыре дня на художку.

Кажется, это потому что художку удобно читать в любой момент: есть свободная минутка — достал телефон, открыл приложение и читаешь. Хоть 1.5 минуты, хоть час. Никаких особых приготовлений, сюжет течёт сам собой, когнитивных усилий особо не требует.

А после этого, кстати, появились силы дочитать брошенный на половине нонфикшн. Теперь стараюсь чередовать жанры литературы и по очереди читать книги для работы, для семьи и для себя.

Получился такой список:

[для работы] «кому нужна математика?» один месяц
[для работы] «Удовольствие от Х» один месяц
[для работы] «Moneyball» — 50% ← здесь случился сбой
[для себя] «Задача трёх тел» 4 дня (!)
[для работы] «Moneyball» — 50% ← таки дочитал и даже сделал конспект
[для себя] «Задача трёх тел 2» неделя
[для себя] «Задача трёх тел 3» неделя
[для семьи] «азбука НО» — 30%
[для семьи] «Секреты спокойствия ленивой мамы» две недели
[для себя] «Просто Маса» неделя
[для работы] «Принцип ставок» месяц
[для себя] «Гипперион» ← сейчас я здесь

Получается, что художка пролетает где-то за неделю, а на нонфикшн уходит в среднем месяц.

Ещё заметил, что когда за «умной» книжкой следует что-то попроще, то мысли из умной успевают уложится и обдуматься в голове. А, если повезёт, ещё и конспект напишется :-)

6 mo   книги

Data Engineering в Яндекс Такси

посмотрел запись доклада Евгения Ермакова —архитектора Data Management Platform Яндекс. Делюсь заметками и слайдами.

Ссылка на видео и презентацию на сайте митапа

Хранилище данных разделено на слои:

  1. RAW — собрать всё, что даёт источник. Система сбора автоматизирована и нечувствительная к изменению доступных полей (кроме первичных ключей)
  2. ODS — стандартизировать, привести к единому формату
  3. DDS — сохранить и версионировать данные
  4. CDM — предоставить доступы, витрины данных, оптимизация доступа (вход в данные для аналитиков)
  5. REP — проанализировать; отчётные срезы.

(аббревиатуры, кроме разве что RAW, списываю без понимания смысла ¯\_(ツ)_/¯ надо будет загуглить)

Подходы к проектированию:

  1. Никакого — полная денормализация; неустойчиво к изменению.
  2. Звезда и снежинка — нормализация; неудобно перестраивать
  3. Data Vault — строгая нормализация
  4. Anchor modeling — ультра нормализация (прим. как в Авито)

люди и роли

между «бизнесом» и дата инженером есть «партнёр по данным» — по сути это проджект менеджер, который переводит с языка бизнеса на язык даных. А «под» дата инженером (ближе к ядру данных) есть разработчик платформы. Над всем этим стоит Архитектор — в данном случае это Евгений Ермаков.

Всё автоматизируется

(Особенно мне сложно представить сбор данных, нечувствительный к изменению полей и последующий разбор этих [нестабильных] полей по объектам внутреннего хранилища)

Любой менеджер в Яндексе должен уметь «программировать» — при необходимости залезьть под капот и понять что там происходит.

Итоговая система работы с данными в Такси:

Практика — приложение для медитации

Последние два года стараюсь медитировать каждый день. Начинал с Headspace и трёхминутных подходов; сейчас сижу по 15 минут.

Когда пропускаю день, то прям чувствуется, что не хватает какого-то спокойствия: так и тянет просто посидеть с закрытыми глазами.

Успел попробовать разные приложения — Headspace, Waking Up, 10% Happier — каждое чем-то привлекало в своё время. Может быть своей новизной: хотелось просто поменять голос в наушниках :-)

Из поста Димы Черненькова узнал о «Практике». Почти прошёл там базовый курс — и пока всё нравится. У автора приятный голос и он умеет говорить неспешно и без напряга.

Рекомендую и приложение, и канал Димы.

Можно ли учиться в рабочее время?

Когда пришёл на новую работу, смотрел туториалы, чтобы погрузиться в стэк технологий. И всё время боялся, что начальник спалит, что я вместо РАБОТЫ занимаюсь не пойми чем.

И, в целом, есть какое-то внутреннее ощущение, что на работе надо работать: например, писать код или хотя бы отчёты. А почитать профильные статейки или (о, ужас!) книгу — это уже в какое-то другое время.

С другой стороны, полученные знания я применяю для той самой работы
чтобы делать её быстрее и лучше — всеобщий профит очевиден.

Я задумался, как найти баланс и спросил совета Фёдора Борщёва: он не дал священного, единственного верного ответа, а поделился своим опытом и мыслями.

6 mo   подход

Устал сбрасывать спам-звонки — перевёл телефон в круглосуточный режим «не беспокоить»

Работа требует сосредоточенности: надо сесть, вникнуть в вопрос, придумать решение и реализовать его. Это всё требует времени — и не просто обрезков, а прямо какого-то достаточного непрерывного отрезка.

Любой звонок вытаскивает из рабочего состояния: «алло? Нет. Нет, спасибо. Не интересно. Пожалуйста, больше не звоните». И всё! — контекст задачи потерян, надо начинать заново.

И ничего, если бы звонки были полезные — нет. Кажется, сейчас звонят только банки, интернет провайдеры и телефонные опросы. Все важные вещи решаются в телеграме и слаке; даже в почте остались только рассылки и служебные письма.

Добавлять номера в общий контакт «спам» уже бессмысленно: звонить каждый раз с нового номера — кажется вообще не проблема. Чёрный список уже не работает.

Устал сбрасывать — ведь даже это вытаскивает из потока! — и поставил в телефоне расписание «не беспокоить» с 10:00 до 9:59 каждый день. И теперь звонки не сбивают рабочий процесс. Просто потом видишь пропущенные — всегда ведь можно перезвонить, если что.

7 mo   подход
Earlier Ctrl + ↓