esokolov / ml-course-hse Goto Github PK
View Code? Open in Web Editor NEWМашинное обучение на ФКН ВШЭ
Машинное обучение на ФКН ВШЭ
В середине стр. 2 лекции 19, вероятно, имеется в виду w_{ij}, а не w_{uv}, а суммирование под радикалами в знаменателе ведется по u, а не по i
• каждой листовой вершине v приписан прогноз c_v ∈ Y (в случае с классифика-
цией листу также может быть приписан вектор вероятностей).
Есть несколько вопросов к выводу неравенства из номера 3. Во-первых, в формуле (0.6) явно потерялось деление на двойку в правой части. Во-вторых, для использования этого неравенства выпуклость
Страница 5, Параграв 4.2 "Классификация".
В формуле b_N внутри exp пропущен минус перед произведением y_i на a_N-1(x_i).
Лекция 12, страница 4, предложение перед формулой p(i|j) :
Отнормируем эти близости так, чтобы получить распределений расстояний от объ-
екта xj до всех остальных объектов:
Пропущено слово "вектор" перед "распределений".
В лекции 18, самый верх 3 страницы - в формуле для гауссова ядра, видимо, должно быть z^2 вместо r^2
В задании 2 говорится об "усредненной по всем деревьям зависимости". Она должна быть одна для всех графиков, или пересчитывать в зависимости от количества опытов?
В задании 12:
В разделе "Градиентный бустинг и бэггинг" вместо формулы отображается unknown character
Предпоследняя строчка перед списком литературы — должно быть x_{j_1}, x_{j_2} вместо x_1, x_2
В моменте где доказывается что градиент ортогонален линиям уровня где обе части равенства делятся на эпсилон, надо делить на норму от эпсилонта, а не на эпсилон.
Лекция 8, Задача 3.1. В телеграмме обсуждали, что не совсем ясно куда пропадает случайность от бутстрапа при взятии МО только по всем выборкам.
В 9 семинаре в разделе про построение градиентного бустинга, кажется, перепутаны термины - функционал ошибки и функционал качества
В методе Нистрома опечатка - нет такого ядрового преобразования.
Лекция 11, Страница 2, Последнее предложение перед началом 2го раздела "Обучение и обратное распространение ошибк"
О примерах слоёв них мы поговорим позже, а пока обсудим обучение графов
вычислений в общем случае.
По-моему надо "в них"
"метрика не должна учитывать истинные значения меток объектов, попавших в кластер (в случае, если истинные метки известны)"
Видимо, должна.
Задание называется "Число деревьев в случайном лесе и в градиентном бустинге", но в условии речь только о RF.
В лекции 3, стр. 5, раздел "Штрафы при малых весах"
в обеих формулах по L2-норму нужно убрать верхний индекс
Не очень понятна фраза:
при фиксированной метрике качества для разного числа кластеров обучают алгоритм и выбирают то значение гиперпараметра, начиная с которого качество "стабилизируется"
При увеличении числа классов от 1 до samples_num метрика качества сначала возрастает, затем убывает.
Правильно ли я понимаю, что следует выбирать количество по максимуму метрики качества? Как следует интерпретировать "стабилизацию"?
Было бы удобно, если бы лекции были выложены в исходниках (TeX), чтобы вместо создания issue можно было просто предложить Pull Request.
Лекция 8, стр. 10. В формуле ответа композиции, в итоговой формуле, во внутренней сумме, видимо, либо суммирование по n, либо индекс у w должен быть j.
При организации своего дерева не уточнено, что делать с пропусками в данных.
Надо ли проводить их обработку или можно их заполнить перед обучением дерева?
Пропущена константа и знак суммы перед max.
На странице 2, при выводе оценки ковариационной матрицы, после фразы "найдём производную по
Мы считаем критерий Джини для каждого разбиения - но он меняется при смене порога для правого и левого дерева, а не вершины. Из этого получается, что ответом тогда должен быть функционал качества, использующий посчитанные критерии для поддеревьев. Как понимаю, в Q(R) не используется H(R_m) как раз ввиду константности.
Страница 7:
"...доля правильных ответов должна быть равна 2.000/1.000.000 = 99.8%"
Забыли вычесть 2.000/1.000.000 из единицы
В Лекции 8, стр. 4, в определении метода обучения в области определения должно быть (X•Y)^l .
В лекции 7, на странице 3, при разбиении X на R_1 и R_2, в одном случае должно стоять строгое равенство. Потому что по крайней мере некоторые функционалы качества могут считать оптимальным t, равное значению j-го признака.
Не совсем понятно, когда речь идет о категориальных признаках("Обозначим через Rm(u) множество объектов, которые попали в вершину m и у которых j-й признак имеет значение u"), при чем тут j - видимо есть опечатка.
Страница 5, в самом конце, последний переход в вычислении s для логистической функции потерь.
Для простоты обозначим y_{i} * a_{N - 1}(x_{i}) за x, теперь проделаем последний переход:
(sigmoid(x) - 1) * y = (1 / (1 + exp(-x)) - 1) * y = ( (1 - 1 - exp(-x)) / (1 + exp(-x)) ) * y =
= ( (-exp(-x)) / (1 + exp(-x)) ) * y = ( -1 / (exp(x) + 1) ) * y = -y / (exp(x) + 1) != y / (exp(x) + 1)
В самом начале(1ая стр)
Рассмотрим задачу минимизации квадратичной функции потерь:
Мы вроде функционал качества/ошибки минимизируем.
В формулах раздела 2 (Bias-Variance decomposition) начиная со страницы 4 встречается следующая опечатка: после
Кажется, что для оценивания мат.ожинания нужно не только складывать значения функции, а еще и делить на M, чтобы итоговая сумма все таки сошлась к искомому мат.ожиданию. Именно так и делается дальше, однако в формуле стоит просто сумма значений функции.
В выражении для нормированных близостей p(i | j) (середина 4-й страницы) опечатки: аргументы экспонент нужно взять со знаком "-", а ещё сигмы должны быть в квадрате.
Похоже, условием задачи на реализацию класса DecisionTree не учтено, что в выборке, в принципе, могут найтись два объекта с идентичным признаковым описанием и разными ответами. В таком случае требование выдавать класс объектов в листе некорректно. Связанный момент – стоит, наверное, уточнить, что должен возвращать стандартный вариант функции find_best_split, получив постоянный признак – кажется, например, что сгодится -inf оптимальный Джини, остальные возвращаемые значения None.
Предпоследний абзац ядровых методов на стр. 1 — "после ее проецирования на исходное пространствА"
Стр. 2, первая формула. Не хватает деления на 2h под пределом.
В самой первой строчке курсивом - функционал ошибки. Видимо, имеется в виду функционал качества.
В лекции 7, в определении критерия информативности минус должен быть внутри оптимизации.
В формуле пропущено sign у скалярного произведения весов на признаки.
Сначала записывается опт. задача для линейной регрессии через параметр Ф и получается обычная задача для линейной регрессии с квадратичной функцией потерь, потом говорится, что w=(Ф.T)a и ниже "можно показать, что оптимальное а=(Ф.TФ+lambda*I)^(-1)*y".
Тогда получается, что оптимальный вектор весов: w= (Ф.T)a=(Ф.T)(Ф.T * Ф+lambda*I)^(-1)*y.
Но это же не правда, оптимальный вектор весов должен быть (Ф.T * Ф+lambda * I)^(-1) (Ф.T) * y ?
В самой последней формуле на 2й странице, видимо, должно быть a(x_j) вместо a(x_k)
А на 4 странице: "используя эти векторы, мы можем сформировать аппроксимацию преобразования phi(x)" - пропущен бэкслэш, должно быть \phi(x)
Наверху страницы: вместо multi-class classification -- multi-label classification.
В номере 15 по условию используется 100, 110 ... 5000 деревьев, в примере же говорится об обучении 10, 20 ... 5000 деревьев.
В секции "Градиентный бустинг и бэггинг" немного поехала формула.
В числителе неравенство должно быть строгим, иначе считается расстояние кластера самим с собой.
Внизу 1 страницы, "значит, векторы $u_j = \lambda^{1/2}...$" - должно быть
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.