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



Download 30,75 Mb.
Pdf ko'rish
bet216/457
Sana27.03.2022
Hajmi30,75 Mb.
#513488
1   ...   212   213   214   215   216   217   218   219   ...   457
Bog'liq
Цэй Ш., Байлесчи С., и др. - JаvaScript для глубокого обучения (Библиотека программиста) - 2021


Часть III • Продвинутые возможности глубокого обучения с TensorFlow.js
После подключения нашего простого генератора к игровой логике необходимо от­
форматировать данные способом, подходящим для нашей задачи обучения. А имен­
но: наша задача состоит в предсказании бита 
player1Win
на основе 
player1Hand

Для этого необходимо, чтобы наш объект 
Dataset
возвращал элементы формы 
[batchOfFeatures,
batchOfTargets]
, где признаки вычисляются на основе карт на 
руках игрока 1. Следующий код (листинг 6.8) — упрощенный вариант кода, при­
веденного в файле 
tfjs-examples/data-generator/index.js
.
Листинг 6.8.
Создание набора данных признаков для игроков
Получив набор данных в нужном виде, можем подключить его к нашей модели 
с помощью 
model.fitDataset()
, как показано в листинге 6.9 (упрощенный вариант 
кода из файла 
tfjs-examples/data-generator/index.js
).
Листинг 6.9.
Создание и обучение модели на полученном наборе данных


Глава 6. Работа с данными
257
Как видно из предыдущего листинга, подгонка модели к набору данных оказыва­
ется ничуть не сложнее подгонки модели к паре тензоров 
x

y
. Чтобы все прекрасно 
работало и мы получали поток данных от (возможно) удаленного источника без 
каких­либо забот о координации всего процесса, достаточно, чтобы наш объект 
Dataset
выдавал тензорные значения в нужном формате. Помимо передачи объекта 
Dataset
вместо пары тензоров, у объекта конфигурации есть несколько заслужива­
ющих упоминания отличий.
z
z
batchesPerEpoch
— как видно в листинге 6.9, в настройках 
model.fitDataset()
есть необязательное поле для указания количества батчей в эпохе. Когда мы пере­
давали методу 
model.fit()
весь массив данных, можно было легко вычислить, 
сколько примеров данных во всем наборе данных — просто взять 
data.shape[0]

При использовании же 
model.fitDataset()
указать TensorFlow.js, когда закан­
чивается эпоха, можно двумя способами. Первый способ — воспользоваться 
указанным полем настроек и 
fitDataset()
после соответствующего числа батчей 
выполнит обратные вызовы 
onEpochEnd
и 
onEpochStart
. Второй способ — ис­
пользовать завершение самого набора данных в качестве сигнала его исчерпания. 
Для моделирования подобного поведения в листинге 6.7 достаточно поменять:
while (true) { ... }
на:
for (let i = 0; iz
z
validationData
при использовании 
model.fitDataset()
может также представ­
лять собой набор данных. Но не обязательно. Если хотите, можете продолжать 


258
Download 30,75 Mb.

Do'stlaringiz bilan baham:
1   ...   212   213   214   215   216   217   218   219   ...   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