🔥

Тред (Филипп Филиппак)


Простите, что я немного пропал. Обещал про боль в изучении математики, будет про боль. Возможно, не только в математике, но и вообще.

Самое сложное в переходе от нетехнического мышления к техническому — это умение в формальность. Описать алгоритм (строго), доказать теорему (тоже строго). Это жутко непривычно, когда кажется, что "всё же и так ясно".

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

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

Теперь по дисциплинам внутри математики. Хуже всего мне всегда давались алгебра и теория чисел, лучше всего — комбинаторика и теория графов. Под "хуже" и "лучше" здесь я подразумеваю скорость сопутствующего ментального истощения.

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

Помимо вышеупомянутых легче воспринимаемых вещей, большая часть новых идей даётся сложно. Очень болезненно изучать методы dimensionality reduction. PCA, t-SNE, вот это всё. Ещё одна боль — это задачи численной оптимизации, вроде BFGS. Конкретно этот алгоритм не копал пока что.

Довольно тяжело было понять, куда должны течь градиенты при умножении тензоров. Сейчас с этим уже сильно легче, и даже shape rotation внутри моделей поддаётся без особых кошмаров.

Хотя когда-то казалось чем-то нереальным. В принципе, если взглянуть на первые пару лет в программировании, сейчас все те задачи я бы решил намного быстрее и разумнее.

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

Возможно, склонность к такому написанию кода сильно подстегнула профессиональный рост.

@dsunderhood А матан? Или он в алгебре у вас?
Матан даётся средне, не могу назвать его болью. В целом, понятия типа производных, пределов и интегралов кажутся довольно интуитивными, но бывают затыки в прикладных моментах. twitter.com/c0ntr0ller/sta…

Филипп ФилиппакФилипп Филиппак