Глава 2. Приступим: простая линейная регрессия в TensorFlow.js
105
шему выходному сигналу, а FEAT2 — наоборот. На самом деле, поскольку эти
признаки эквивалентны, если поменять их местами, модель будет выводить точно
те же значения.
Еще один нюанс — необходимо всегда различать корреляцию и причинную связь.
Представьте себе простую модель предсказания силы дождя по степени влажности
крыши. При наличии меры влажности крыши можно, наверное, сделать предсказа
ние относительно осадков за последний час. Однако недостаточно просто налить
воды на датчик, чтобы вызвать дождь!
Упражнения
1. Мы выбрали задачу оценки времени с жестко «зашитыми» обучающими дан
ными из раздела 2.1 потому, что данные были приблизительно линейными.
Впрочем, в других наборах данных поверхности потерь и их поведение во
время обучения могут оказаться другими. Попробуйте заменить данные сво
ими собственными и посмотрите, как среагирует модель. Возможно, вам при
дется поэкспериментировать со скоростью обучения, начальными значениями
и нормализацией, чтобы модель начала сходиться к какомулибо интересному
результату.
2. В подразделе 2.3.5 мы потратили немало времени на рассказ о том, почему нор
мализация так важна и как нормализовать входные данные к нулевому среднему
значению и единичной дисперсии. Модифицируйте этот пример, убрав норма
лизацию, и убедитесь, что модель более не обучается. Можете также модифи
цировать процедуру нормализации так, чтобы среднее значение данных было
ненулевым или среднеквадратичное отклонение было меньше нынешнего, но
все же больше единицы. Одни виды нормализации приведут к работоспособной
модели, а в результате других модель перестанет сходиться.
3. Хорошо известно, что одни признаки набора данных Bostonhousing более полез
ны для предсказания целевого признака, чем другие. Некоторые из его признаков
представляют собой просто шум в том смысле, что не несут информации, по
лезной для предсказания цен на недвижимость. Если бы нам пришлось оставить
из всех признаков лишь один, какой следует выбрать? А если оставить два, то
какие? Поэкспериментируйте с кодом из нашего примера и выясните это.
4. Расскажите, почему оптимизация модели путем обновления весов с помощью
градиентного спуска лучше, чем при случайном выборе параметров.
5. Пример Bostonhousing выводит пять наиболее крупных по абсолютному зна
чению весов. Попробуйте модифицировать код так, чтобы выводить признаки,
соответствующие самым маленьким весам. Как вы думаете, почему они малы?
Если вам зададут вопрос о том, почему эти весовые коэффициенты так малы,
что вы ответите? И о каких нюансах интерпретации значений предостережете
собеседника?
106
Do'stlaringiz bilan baham: |