JavaScript для глубокого обучения 2021 TensorFlow js Ббк



Download 30,75 Mb.
Pdf ko'rish
bet273/457
Sana27.03.2022
Hajmi30,75 Mb.
#513488
1   ...   269   270   271   272   273   274   275   276   ...   457
Bog'liq
Цэй Ш., Байлесчи С., и др. - JаvaScript для глубокого обучения (Библиотека программиста) - 2021


Глава 8. Недообучение, переобучение и универсальный процесс ML
327
Рис. 8.4.
Кривые потерь двух различных моделей на основе MLP для задачи предсказания 
температуры. Блок A: от модели MLP без какой-либо регуляризации. Блок Б: от модели MLP 
с теми же размерами и количеством слоев, что и модель в блоке A, но с L2-регуляризацией 
ядер плотных слоев. Обратите внимание, что диапазоны значений по оси Y слегка отличаются 
в двух графиках
Потери на обучающем наборе данных ниже более чем в четыре раза относитель­
но предыдущего результата из­за больших возможностей нашего MLP по сравне­
нию с моделью линейной регрессии, что достигается благодаря дополнительному 
слою и в несколько раз большему числу весовых параметров. Впрочем, есть у воз­
росших возможностей модели и побочный эффект: модель оказывается подогнана 
к обучающим данным намного лучше, чем к проверочным (данным, которые мо­
дель не видела во время обучения). Это пример 
переобучения
(overfitting), когда 
модель «уделяет слишком много внимания» несущественным деталям обучающих 
данных — до такой степени, что ее предсказания плохо обобщаются на не виденные 
ею данные.


328
Часть III • Продвинутые возможности глубокого обучения с TensorFlow.js
8.2.3. Сокращаем переобучение за счет регуляризации 
весов и визуализируем эффект от нее
В главе 4 мы сокращали переобучение сверточной сети за счет добавления в мо­
дель слоев дропаута. Здесь мы рассмотрим еще один часто используемый подход 
к снижению переобучения: регуляризацию весовых коэффициентов. Если выбрать 
в UI демонстрации Jena­weather тип модели 
MLP with L2 Regularization
(Многослойный 
перцептрон с L2­регуляризацией), то в коде будет создан MLP с помощью вызова 
buildMLPModel()
(листинг 8.3):
model = buildMLPModel(inputShape, tf.regularizers.l2());
Второй аргумент — возвращаемое функцией 
tf.regularizers.l2()
значение — 
представляет собой 
L2-регуляризатор
. Соотнеся вышеприведенный код с функцией 
buildMLPModel()
в листинге 8.3, вы увидите, что L2­регуляризатор попадает в параметр 
kernelRegularizer
конфигурации скрытого плотного слоя, в результате чего при­
меняется к ядру этого плотного слоя. А когда к весу (например, ядра плотного слоя) 
применяется регуляризатор, говорят, что он 
регуляризован
. Аналогично, когда часть 
или все веса модели регуляризованы, говорят, что регуляризована модель в целом.
Так что же делает регуляризатор с ядром плотного слоя и MLP в целом? Он до­
бавляет к функции потерь дополнительный член. Функция потерь нерегуляризован­
ного MLP вычисляется просто как MAE между целями и предсказаниями модели. 
В псевдокоде это можно выразить следующим образом:
loss = meanAbsoluteError(targets, predictions)
При регуляризации весов функция потерь модели включает дополнительный 
член. В псевдокоде:
loss = meanAbsoluteError(targets, prediciton) + 12Rate * 12(kernel)
12Rate
*
12(kernel)
представляет собой дополнительный член L2­регуляризации 
функции потерь. В отличие от MAE этот член 
не
зависит от предсказаний модели, 
а только от регуляризуемого ядра (весового коэффициента) слоя. Для заданного 
ядра он выдает число, связанное лишь со значениями этого ядра. Это число можно 
рассматривать как меру нежелательности текущего значения ядра.
Теперь рассмотрим подробное описание функции L2­регуляризации: 
l2(kernel)

Она вычисляет сумму квадратов всех значений весовых коэффициентов. Например, 
если ради простоты форма нашего ядра невелика: 
[2,
2]
, а его значения — 
[[0.1,
0.2],
[-0.3,
-0.4]]
, то:
l2(kernel) = 0.1^2 + 0.2^2 + (-0.3)^2 + (-0.4)^2 = 0.3
Следовательно, функция 
l2(kernel)
всегда возвращает положительное число, 
делающее невыгодными большие значения весов в 
kernel
. Этот член при включении 
его в общие потери поощряет меньшие по модулю значения элементов 
kernel
при 
прочих равных условиях.
Теперь общие потери включают два различных члена: расхождение цели с пред­
сказанием и член, отражающий величину значений 
kernel
. В результате в процессе 


Download 30,75 Mb.

Do'stlaringiz bilan baham:
1   ...   269   270   271   272   273   274   275   276   ...   457




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish