Хочется поблагодарить лектора за баланс между "научностью" и простотой объяснения. Я до этого видео пробовал читать что такое регрессия на википедии, но у меня закипели мозги ещё на первом абзаце где определение даётся через кучу неизвестных мне терминов. Здесь же я за 10 минут понял что регрессия это метод когда мы берём исторические данные, находим функцию которая наилучшим образом в них "попадает" и при необходимости спрогнозировать значение для новых исходных данных (аргументов/предикторов) мы просто подставляем их в нашу функцию, а полученное значение и будет прогнозом.
Очень не хватало такого канала, посмотреть лекцию иногда в тысячу раз удобнее, чем допытываться до истины самому. Отличный лектор! Особенно при просмотре на скорости 2х
Если говорят, что плохо знаете математику и экономику, то просто идите в стендап, вам там этого точно не скажут и даже без знаний этих областей очень интересно слушать
А как правильно интерпретировать тот факт, что в линейной регрессии мы после отброса "лишних" предикторов получили коэф-т детерминации хуже первоначального (стало 0.73 - 0.8 было)? Выходит, что наша модель стала предсказывать хуже?
Заполните столбец случайными числами. Добавьте его к предикторам. Коэффициент увеличится. Это математический факт. Отбрасывание увеличивает коэффициент на тестовом множестве, а это важнее. О тестовом множестве см далее в курсе. Кроме того, работает принцип KISS.
Добрый день! Подскажите пожалуйста, ВАдим Леонидович в прогнозировании временных рядов есть такая запись for x in xrange(1, 13): df['season_' + str(x)] = df['date'].dt.month == x. В phyton 3 она не работает, если менять xrange на range тоже не выходит.
В блокноте 06_linear_regression-forecast_ver3.ipynb не нашел... Возможно давно переделано. Укажите скрипт и все содержимое ячейки, сейчас не могу ответить, но помню что и как там было.
@@Vadim_Abbakumov for x in xrange(1, 13): df['season_' + str(x)] = df['date'].dt.month == x # xrange(2, 13) соответствует всем месяцам с февраля по декабрь season_columns = ['season_' + str(x) for x in xrange(2, 13)]
мне не совсем понятно как может быть R2 меньше 0 т.к. это все таки невозможно. Там два квадрата чисел делятся друг на друга по формуле. Отрицательный R2 это что то из области фантастики т.к. квадрат любого числа больше 0.
1. Классический подход - Correspondence Analysis. Это распространение факторного анализа на случай переменных в номинальной шкале. 2. Самые модный подход - использовать autoencoder. 3. Самый "крутой" подход - обучить нейронную сеть, выходы нейронов внутренних слоев - features.
У меня тут задачу поставили. Понятно объяснить результаты регрессии. Я посчитал коэффициент В, а вот значимость не совсем понимаю как правильно: У меня набор независимых переменных принимающих значения 1/0 но модель такая, что значение равное 1 принимает только 1 переменная одновременно. Как я понял, значимость считается согласно критерию t-Стьюдента, либо с помощью критерия Фишера? То есть мне надо распределение по каждой из переменных прогнать через t критерий где х1 - те значения зависимой переменной, в которых независимая переменная принимает значение равное 1, а х2 - все остальные. Или можно разделить на две группы - мои предикторы которые я учитываю в анализе и говорю, что они значимо предсказывают значение зависимой переменной и все остальные, у которых как мне кажется слишком большой разброс коэффициентов В? При этом те, что я выделил предсказывают по разному :) Одна из переменных даёт -1, другая -25.
Доброго времени суток, нельзя ли метрики для кластерного анализа отбирать представленным в лекции способом? 1. Проверка на коллинеарность; 2 Регрессия; 3 Отбор через проверку гипотезы о равенстве 0 коэффициента. Спасибо!
Расстояние отражает наше представление о том, какие объекты схожи. Что касается использования регрессии, для нее нужна зависимая переменная, отклик. В кластерном анализе чаще всего все переменные равноправны.
В scipy есть, в sclearn нет. Накладка. Сначал был scipy, потом я решил не использовать его в курсе, обойтись только sclearn, но невнимательно чистил код.
Понял, просто у Воронцова все довольно математично, а у Вас доступно и с примерами из жизни. А что SVM уже неэффективен? у Microsoft в пакете аж 2 метрики SVM есть: support SVM и locally deep SVM.
@@Vadim_Abbakumov чет эта функция ужасно реализованна в библиотеке... :) Я даже не смог разобраться как сделать, то бы она корректно считала, сделал как предлагабт умельцы со стаковерфлоу. Спасибо им и вам :)
@@pavelbrudanov6701 Обычное дело. Тогда Вам легче написать процедуру самому. Там несложно. Я это обсуждал в версии курса на R. После 14 минуты ruclips.net/video/8mwJ3mEjdIg/видео.html
Сношать мозг полтора часа, чтобы запутаться самому, запутать других в вопросе, которые можно разжевать пятикласснику за 15 минут.... Надо бы пересмотреть подход к обучению...
Хочется поблагодарить лектора за баланс между "научностью" и простотой объяснения. Я до этого видео пробовал читать что такое регрессия на википедии, но у меня закипели мозги ещё на первом абзаце где определение даётся через кучу неизвестных мне терминов.
Здесь же я за 10 минут понял что регрессия это метод когда мы берём исторические данные, находим функцию которая наилучшим образом в них "попадает" и при необходимости спрогнозировать значение для новых исходных данных (аргументов/предикторов) мы просто подставляем их в нашу функцию, а полученное значение и будет прогнозом.
Огромное спасибо лектору! Особенно за то, что смещает фокус с математических нюансов на аналитические тонкости.
КРутой лектор! Спасибо за лекции и звук отличный.
i realize Im kinda off topic but does anyone know of a good website to stream newly released movies online?
@John Martin I use FlixZone. You can find it by googling =)
@Curtis Rodney Definitely, been using Flixzone for years myself :D
@Curtis Rodney thanks, I went there and it seems like a nice service :) Appreciate it !
@John Martin happy to help xD
Очень не хватало такого канала, посмотреть лекцию иногда в тысячу раз удобнее, чем допытываться до истины самому. Отличный лектор! Особенно при просмотре на скорости 2х
Спасибо огромное! Замечательный лектор!
Спасибо, очень информативно
Если говорят, что плохо знаете математику и экономику, то просто идите в стендап, вам там этого точно не скажут и даже без знаний этих областей очень интересно слушать
Спасибо большое!
Максимальное значение R² равно 1, но минимальное может быть минус бесконечность.
На обучающей выборке минимальное значение равно 0
-Не люблю линейную регрессию. -Ты просто не умеешь ее готовить.)
Логарифм AGE типа нормальный даже. Почему мы его удалили? Могли же деревом восстановить из остальных значений и использовать в регрессии
Половина наблюдений пропуски. Деформации слишком велики. Проще удалить.
в полиноминальную регрессию бы графиков добавить для наглядности
А как правильно интерпретировать тот факт, что в линейной регрессии мы после отброса "лишних" предикторов получили коэф-т детерминации хуже первоначального (стало 0.73 - 0.8 было)? Выходит, что наша модель стала предсказывать хуже?
Заполните столбец случайными числами. Добавьте его к предикторам. Коэффициент увеличится. Это математический факт. Отбрасывание увеличивает коэффициент на тестовом множестве, а это важнее. О тестовом множестве см далее в курсе. Кроме того, работает принцип KISS.
Добрый день, а не подскажите где можно найти тот самый архив с ноутбуками?) Спасибо Вам, за труд
Коллеги подскажите, пожалуйста! В 14 ячейке выражение:
# Вычисляем регрессионные коэффициенты
coef = pd.DataFrame(zip(['intercept'] + X.columns.tolist(), [model.intercept_] +
columns=['predictor','coef'])
Что написано после второго знака +
model.coef_.tolist()),
Добрый день! Подскажите пожалуйста, ВАдим Леонидович в прогнозировании временных рядов есть такая запись for x in xrange(1, 13):
df['season_' + str(x)] = df['date'].dt.month == x. В phyton 3 она не работает, если менять xrange на range тоже не выходит.
В блокноте 06_linear_regression-forecast_ver3.ipynb не нашел...
Возможно давно переделано.
Укажите скрипт и все содержимое ячейки,
сейчас не могу ответить, но помню что и как там было.
@@Vadim_Abbakumov for x in xrange(1, 13):
df['season_' + str(x)] = df['date'].dt.month == x
# xrange(2, 13) соответствует всем месяцам с февраля по декабрь
season_columns = ['season_' + str(x) for x in xrange(2, 13)]
@@Dmitrykholodov
df_2["m01"] = [1,0,0,0,0,0,0,0,0,0,0,0]*12
df_2["m02"] = [0,1,0,0,0,0,0,0,0,0,0,0]*12
df_2["m03"] = [0,0,1,0,0,0,0,0,0,0,0,0]*12
df_2["m04"] = [0,0,0,1,0,0,0,0,0,0,0,0]*12
df_2["m05"] = [0,0,0,0,1,0,0,0,0,0,0,0]*12
df_2["m06"] = [0,0,0,0,0,1,0,0,0,0,0,0]*12
df_2["m07"] = [0,0,0,0,0,0,1,0,0,0,0,0]*12
df_2["m08"] = [0,0,0,0,0,0,0,1,0,0,0,0]*12
df_2["m09"] = [0,0,0,0,0,0,0,0,1,0,0,0]*12
df_2["m10"] = [0,0,0,0,0,0,0,0,0,1,0,0]*12
df_2["m11"] = [0,0,0,0,0,0,0,0,0,0,1,0]*12
df_2["m12"] = [0,0,0,0,0,0,0,0,0,0,0,1]*12
@@Vadim_Abbakumov Вадим Леонидович, получилось с помощью загрузки библиотеки Series из pandas и замены xrange на range.
R^2 может быть отрицательным, если модель описывает набор точек "хуже", чем функция y = y.mean()
"Лучшая" модель не может быть "хуже"
Прежде чем найти лучшую модель, надо перелопатить те, которые могут быть еще хуже, чем среднее арифметическое.
мне не совсем понятно как может быть R2 меньше 0 т.к. это все таки невозможно.
Там два квадрата чисел делятся друг на друга по формуле.
Отрицательный R2 это что то из области фантастики т.к. квадрат любого числа больше 0.
а ваще библиотека может центрировать нулевую модель как начало координат и тогда R2 все таки может быть отрийательным.
@@pavelbrudanov6701 Тоже так когда-то думал. Тут надо следить за руками :} R2 может быть отрицательным на тестовом множестве, на обучающем не может.
А что можете посоветовать для feature selection with categorical variables?
1. Классический подход - Correspondence Analysis.
Это распространение факторного анализа на случай
переменных в номинальной шкале.
2. Самые модный подход - использовать autoencoder.
3. Самый "крутой" подход - обучить нейронную сеть,
выходы нейронов внутренних слоев - features.
@@Vadim_Abbakumov а в чем разница между 2 и 3 пунктом?
У меня тут задачу поставили.
Понятно объяснить результаты регрессии.
Я посчитал коэффициент В, а вот значимость не совсем понимаю как правильно:
У меня набор независимых переменных принимающих значения 1/0 но модель такая, что значение равное 1 принимает только 1 переменная одновременно.
Как я понял, значимость считается согласно критерию t-Стьюдента, либо с помощью критерия Фишера?
То есть мне надо распределение по каждой из переменных прогнать через t критерий где х1 - те значения зависимой переменной, в которых независимая переменная принимает значение равное 1, а х2 - все остальные.
Или можно разделить на две группы - мои предикторы которые я учитываю в анализе и говорю, что они значимо предсказывают значение зависимой переменной и все остальные, у которых как мне кажется слишком большой разброс коэффициентов В? При этом те, что я выделил предсказывают по разному :)
Одна из переменных даёт -1, другая -25.
Сумма значений всех переменных = 1? У вас индикаторные переменные. Одну можно вообще убрать, приняв её единицу за базовый уровень.
Доброго времени суток, нельзя ли метрики для кластерного анализа отбирать представленным в лекции способом? 1. Проверка на коллинеарность; 2 Регрессия; 3 Отбор через проверку гипотезы о равенстве 0 коэффициента. Спасибо!
Расстояние отражает наше представление о том, какие объекты схожи. Что касается использования регрессии, для нее нужна зависимая переменная, отклик. В кластерном анализе чаще всего все переменные равноправны.
Неужели p-значения до сих пор не появились в scipy? 51:27:00
В scipy есть, в sclearn нет.
Накладка. Сначал был scipy, потом я решил не использовать
его в курсе, обойтись только sclearn, но невнимательно чистил
код.
Вадим Аббакумов понял , значит можно подгрузить Scipy и использовать стандартные библиотеки ? А у вас нет видео по методу опорных векторов ?
Видео нет. Я SVM не люблю и не рассказываю.
Понял, просто у Воронцова все довольно математично, а у Вас доступно и с примерами из жизни. А что SVM уже неэффективен? у Microsoft в пакете аж 2 метрики SVM есть: support SVM и locally deep SVM.
1. IMHO XGBoost лучше
2. IMHO он очень склонен к переобучению.
А где можно взять dataset для этого урока?
Заранее спасибо.
Смотрите подпись и ищите на сайте. Это предпоследние прочтение этого курса.
Зная американские расценки 1 фут не может стоить 29 долл, это минимум 290, а то и 2900 долл.
Откуда ты знаеш расценки в америке не смеши.
здесь приведены данные 30 летней давности
Свободный член это стоимость для среднего дома, разве не так? 46:30
Нет. Это стоимость дома нулевой площади и тд
а как коллениарность то проверить?
vif или tolerance считать. Например процедура variance_inflation_factor в statsmodels.stats.outliers_influence
@@Vadim_Abbakumov чет эта функция ужасно реализованна в библиотеке... :)
Я даже не смог разобраться как сделать, то бы она корректно считала, сделал как предлагабт умельцы со стаковерфлоу. Спасибо им и вам :)
@@pavelbrudanov6701 Обычное дело. Тогда Вам легче написать процедуру самому.
Там несложно. Я это обсуждал в версии курса на R.
После 14 минуты
ruclips.net/video/8mwJ3mEjdIg/видео.html
Сношать мозг полтора часа, чтобы запутаться самому, запутать других в вопросе, которые можно разжевать пятикласснику за 15 минут.... Надо бы пересмотреть подход к обучению...
Объясните... дайте ссылку на ваш канал, мы посмотрим.