Хочется поблагодарить лектора за баланс между "научностью" и простотой объяснения. Я до этого видео пробовал читать что такое регрессия на википедии, но у меня закипели мозги ещё на первом абзаце где определение даётся через кучу неизвестных мне терминов. Здесь же я за 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)]
1. Классический подход - Correspondence Analysis. Это распространение факторного анализа на случай переменных в номинальной шкале. 2. Самые модный подход - использовать autoencoder. 3. Самый "крутой" подход - обучить нейронную сеть, выходы нейронов внутренних слоев - features.
В scipy есть, в sclearn нет. Накладка. Сначал был scipy, потом я решил не использовать его в курсе, обойтись только sclearn, но невнимательно чистил код.
Понял, просто у Воронцова все довольно математично, а у Вас доступно и с примерами из жизни. А что SVM уже неэффективен? у Microsoft в пакете аж 2 метрики SVM есть: support SVM и locally deep SVM.
Доброго времени суток, нельзя ли метрики для кластерного анализа отбирать представленным в лекции способом? 1. Проверка на коллинеарность; 2 Регрессия; 3 Отбор через проверку гипотезы о равенстве 0 коэффициента. Спасибо!
Расстояние отражает наше представление о том, какие объекты схожи. Что касается использования регрессии, для нее нужна зависимая переменная, отклик. В кластерном анализе чаще всего все переменные равноправны.
У меня тут задачу поставили. Понятно объяснить результаты регрессии. Я посчитал коэффициент В, а вот значимость не совсем понимаю как правильно: У меня набор независимых переменных принимающих значения 1/0 но модель такая, что значение равное 1 принимает только 1 переменная одновременно. Как я понял, значимость считается согласно критерию t-Стьюдента, либо с помощью критерия Фишера? То есть мне надо распределение по каждой из переменных прогнать через t критерий где х1 - те значения зависимой переменной, в которых независимая переменная принимает значение равное 1, а х2 - все остальные. Или можно разделить на две группы - мои предикторы которые я учитываю в анализе и говорю, что они значимо предсказывают значение зависимой переменной и все остальные, у которых как мне кажется слишком большой разброс коэффициентов В? При этом те, что я выделил предсказывают по разному :) Одна из переменных даёт -1, другая -25.
мне не совсем понятно как может быть R2 меньше 0 т.к. это все таки невозможно. Там два квадрата чисел делятся друг на друга по формуле. Отрицательный R2 это что то из области фантастики т.к. квадрат любого числа больше 0.
@@Vadim_Abbakumov чет эта функция ужасно реализованна в библиотеке... :) Я даже не смог разобраться как сделать, то бы она корректно считала, сделал как предлагабт умельцы со стаковерфлоу. Спасибо им и вам :)
@@pavelbrudanov6701 Обычное дело. Тогда Вам легче написать процедуру самому. Там несложно. Я это обсуждал в версии курса на R. После 14 минуты ua-cam.com/video/8mwJ3mEjdIg/v-deo.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х
Спасибо огромное! Замечательный лектор!
Если говорят, что плохо знаете математику и экономику, то просто идите в стендап, вам там этого точно не скажут и даже без знаний этих областей очень интересно слушать
Спасибо, очень информативно
Добрый день, а не подскажите где можно найти тот самый архив с ноутбуками?) Спасибо Вам, за труд
А как правильно интерпретировать тот факт, что в линейной регрессии мы после отброса "лишних" предикторов получили коэф-т детерминации хуже первоначального (стало 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)]
@@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.
Коллеги подскажите, пожалуйста! В 14 ячейке выражение:
# Вычисляем регрессионные коэффициенты
coef = pd.DataFrame(zip(['intercept'] + X.columns.tolist(), [model.intercept_] +
columns=['predictor','coef'])
Что написано после второго знака +
model.coef_.tolist()),
А что можете посоветовать для feature selection with categorical variables?
1. Классический подход - Correspondence Analysis.
Это распространение факторного анализа на случай
переменных в номинальной шкале.
2. Самые модный подход - использовать autoencoder.
3. Самый "крутой" подход - обучить нейронную сеть,
выходы нейронов внутренних слоев - features.
@@Vadim_Abbakumov а в чем разница между 2 и 3 пунктом?
Логарифм AGE типа нормальный даже. Почему мы его удалили? Могли же деревом восстановить из остальных значений и использовать в регрессии
Половина наблюдений пропуски. Деформации слишком велики. Проще удалить.
в полиноминальную регрессию бы графиков добавить для наглядности
Максимальное значение R² равно 1, но минимальное может быть минус бесконечность.
На обучающей выборке минимальное значение равно 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 он очень склонен к переобучению.
Доброго времени суток, нельзя ли метрики для кластерного анализа отбирать представленным в лекции способом? 1. Проверка на коллинеарность; 2 Регрессия; 3 Отбор через проверку гипотезы о равенстве 0 коэффициента. Спасибо!
Расстояние отражает наше представление о том, какие объекты схожи. Что касается использования регрессии, для нее нужна зависимая переменная, отклик. В кластерном анализе чаще всего все переменные равноправны.
У меня тут задачу поставили.
Понятно объяснить результаты регрессии.
Я посчитал коэффициент В, а вот значимость не совсем понимаю как правильно:
У меня набор независимых переменных принимающих значения 1/0 но модель такая, что значение равное 1 принимает только 1 переменная одновременно.
Как я понял, значимость считается согласно критерию t-Стьюдента, либо с помощью критерия Фишера?
То есть мне надо распределение по каждой из переменных прогнать через t критерий где х1 - те значения зависимой переменной, в которых независимая переменная принимает значение равное 1, а х2 - все остальные.
Или можно разделить на две группы - мои предикторы которые я учитываю в анализе и говорю, что они значимо предсказывают значение зависимой переменной и все остальные, у которых как мне кажется слишком большой разброс коэффициентов В? При этом те, что я выделил предсказывают по разному :)
Одна из переменных даёт -1, другая -25.
Сумма значений всех переменных = 1? У вас индикаторные переменные. Одну можно вообще убрать, приняв её единицу за базовый уровень.
А где можно взять dataset для этого урока?
Заранее спасибо.
Смотрите подпись и ищите на сайте. Это предпоследние прочтение этого курса.
R^2 может быть отрицательным, если модель описывает набор точек "хуже", чем функция y = y.mean()
"Лучшая" модель не может быть "хуже"
Прежде чем найти лучшую модель, надо перелопатить те, которые могут быть еще хуже, чем среднее арифметическое.
мне не совсем понятно как может быть R2 меньше 0 т.к. это все таки невозможно.
Там два квадрата чисел делятся друг на друга по формуле.
Отрицательный R2 это что то из области фантастики т.к. квадрат любого числа больше 0.
а ваще библиотека может центрировать нулевую модель как начало координат и тогда R2 все таки может быть отрийательным.
@@pavelbrudanov6701 Тоже так когда-то думал. Тут надо следить за руками :} R2 может быть отрицательным на тестовом множестве, на обучающем не может.
Свободный член это стоимость для среднего дома, разве не так? 46:30
Нет. Это стоимость дома нулевой площади и тд
Зная американские расценки 1 фут не может стоить 29 долл, это минимум 290, а то и 2900 долл.
Откуда ты знаеш расценки в америке не смеши.
здесь приведены данные 30 летней давности
а как коллениарность то проверить?
vif или tolerance считать. Например процедура variance_inflation_factor в statsmodels.stats.outliers_influence
@@Vadim_Abbakumov чет эта функция ужасно реализованна в библиотеке... :)
Я даже не смог разобраться как сделать, то бы она корректно считала, сделал как предлагабт умельцы со стаковерфлоу. Спасибо им и вам :)
@@pavelbrudanov6701 Обычное дело. Тогда Вам легче написать процедуру самому.
Там несложно. Я это обсуждал в версии курса на R.
После 14 минуты
ua-cam.com/video/8mwJ3mEjdIg/v-deo.html
Сношать мозг полтора часа, чтобы запутаться самому, запутать других в вопросе, которые можно разжевать пятикласснику за 15 минут.... Надо бы пересмотреть подход к обучению...
Объясните... дайте ссылку на ваш канал, мы посмотрим.