Решение задачи регрессии | Глубокое обучение на Python

preview_player
Показать описание
Применяем нейронную сеть для решения задачи регрессии: предсказания стоимости недвижимости.

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

Особенности решения задачи регрессии с помощью глубоких нейронных сетей:
- Линейный нейрон на последнем слое
- Функция ошибки: среднеквадратичная
- Метрика качества работы: средняя абсолютная ошибка


Мой канал с краткими и понятными объяснениями сложных тем в ИТ и компьютерных науках -
Рекомендации по теме
Комментарии
Автор

Большое, ОГРОМНОЕ, спасибо за такой понятный и наглядный курс! Вы делаете чрезвычайно полезное дело!

a-lobanov
Автор

Спасибо за курс, отличная подача материала

darkmitya
Автор

Суперские курсы!!! Огромная благодарность! Очень доходчиво и все по полочкам!

АлексеевА-лн
Автор

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

Conradthenagain
Автор

Друже! Огромное тебе спасибо!
Перерыл весь инет чтобы найти внятный пример задачи регрессии на питоне. Убил правда кучу времени чтобы keras и tensorflow прикрутить к jupyter notebook, но в итоге удалось всё запустить и отладить.

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

Ещё раз спасибо за невероятно емкое и понятное объяснение!

surfonBaLi
Автор

Полезный пример готовых процедур нормализации и стандартизации:

from sklearn import preprocessing
# normalize the data attributes
normalized_X = preprocessing.normalize(X)
# standardize the data attributes
standardized_X = preprocessing.scale(X)

IExSet
Автор

Спасибо за лекцию, добрый человек! Прям, многое встало на свои места!

MrKennyKey
Автор

Очень понравились ваши лекции - короткие, информативные, до этого окончил специализацию Машинного обучения на Coursera (3 курса) так ваш курс отличное к ним дополнение, т.к. они там к нейросетям не особо подходят и используют в качестве инструмента их проектирования pypbrain. Спасибо большое)

romanzakharov
Автор

спасибо! я не мог понять почему точность 'accuracy' не меняется, а оказывается при регрессии ее как метрику нельзя использовать...

shncl
Автор

Андрей, отличное видео, впрочем как всегда) Жду прогнозирование временных рядов.

simplechannel
Автор

3:32 numpy.random.seed(42) не сработает т.к. numpy импортирован как np

5:24 стандартизация не сработает правильно, если стандартное отклонение окажется равным нулю

IExSet
Автор

@Андрей Владимирович преподавал у на курсы по ML и Ops в магистратуре УрФУ. Остались только хорошие воспоминания

DancheG_ZK
Автор

Добрый день. Не подскажите почему среднеарифмитическое рассчитывается по массиву x_train, а применяется также на x_test.

glaviznin
Автор

Андрей, в реальной жизни при решении задачи регрессии бывает, что для какого-то примера значение некоего количественного фактора неизвестно. Например, для некоего строения известны все факторы, кроме года постройки.
Как поступать в этом случае?
Подавать в этом примере средний (по всей обучающей выборке) год постройки?
Медианный год?
Наиболее часто встречающийся в обучающей выборке год?
Добавлять ещё один вход, подача на который единицы будет означать "нет данных по году постройки"?

AB-ejfr
Автор

Андрей, прошёл курс на курсере, но то, что читаете Вы намного лучше. Огромное спасибо за Ваш труд! Нет ли у вас чуть более продвинутых лекций, где также рассматривается R-CNN?

АндрейЧеранев-пй
Автор

Здравствуйте. А почему на 5:16 мы не можем провести линейную нормировку вместо стандартизации? Мы можем взять размах значений (лучше усечённый от выбросов подальше) и представлять каждое число от 0 до 1 в пределах столбцов. Сети удобно работать будет. Заранее спасибо за ответ на мой глупый, скорее всего, вопрос

DDDD_D-uxy
Автор

Андрей, здравствуйте, возник вопрос. Если у меня имеется на входе допустим 8 столбиков чисел пусть(x1, x2, x3 ..., x8), а на выходе 6 (y1...y6), верно ли я понял, что тогда модель будет выглядеть так:

trg = dataset[['y1', 'y2', 'y3', 'y4', 'y5', 'y6']]
trn = dataset.drop(['y1', 'y2', 'y3', 'y4', 'y5', 'y6'], axis=1)

Xtrn, Xtest, Ytrn, Ytest = train_test_split(trn, trg, test_size=0.4)

def norm(x):
return (x - Xtrn.mean(axis=0)) / Xtrn.std(axis=0)
normed_Xtrn = norm(Xtrn)
normed_Xtest = norm(Xtest)

def build_model():
model = keras.Sequential([
layers.Dense(128, activation='relu', input_shape=[len(normed_Xtrn.keys())]),
layers.Dense(128, activation='relu'),
layers.Dense(128, activation='relu'),
layers.Dense(6)
])
очень нужна помощь

МихаилНефедов-лж
Автор

Андрей, не могли бы вы уточнить как в вот в этой строке (x_train, y_train), (x_test, представлен набор данных, чтобы определялось, где именно обучающая, а где тестовая выборка? Как представить свой массив данных, чтобы программа смогла различить эти два набора выборок?Заранее благодарю за ответ

ЮлияОлюнина-гъ
Автор

Большое спасибо за подготовленный материал и прекрасное изложение! У меня есть такой вопрос: что если данные которые использовались для обучения сети отчасти недостоверны, ну или как в приведенном примере с ценой на дома, не учтены какие-либо ключевые параметры? Получается мы не сможем добиться приемлемого уровня распознавания или хуже того, путем неверного обучения создадим сеть которая будет всегда переобучена? Есть ли способы определения и удаления из выборки тех данных которые выбиваются из общей закономерности? Или это невозможно ?

Pikrat
Автор

Отличное видео только вопрос вот в чем.Используйте для обучения например 10 параметров которые известны, а спрогнозировать надо по 3м параметрам. Это возможно сделать?

deadmopo
visit shbcf.ru