Ma'lumotlarni o'rganish
Modelni o'rgatishdan oldin ma'lumotlar to'plami formatini ko'rib chiqing.
train_images.shape
#
O'quv to'plamida 60 000 ta rasm mavjud, har bir rasm 28 x 28
piksel sifatida taqdim etilgan
test_images.shape
#
Sinov to'plamida 10 000 ta rasm mavjud, har bir rasm 28 x 28
piksel sifatida taqdim etilgan
len(train_labels)
#
Trening to'plamida 60 000 yorliq mavjud
len(test_labels)
#
Sinov to'plamida 10 000 ta teg mavjud
train_labels
#
Har bir yorliq 0 dan 9 gacha butun son (birinchi 3 ta teg va
oxirgi 3 ta teg koʻrsatilgan)
Ma'lumotlarni oldindan qayta ishlash
Modelni tayyorlashdan oldin ma'lumotlarni oldindan qayta ishlash kerak. Agar siz
o'quv to'plamidagi birinchi rasmni tekshirsangiz, piksel qiymatlari 0 dan 255 gacha
ekanligini ko'rishingiz mumkin:
plt.figure()
plt.imshow(train_images[
0
])
plt.colorbar()
plt.grid(
False
)
Biz ushbu qiymatlarni 0 dan 1 gacha
o'lchaymiz:
train_images = train_images /
255.0
test_images = test_images /
255.0
Keling, o'quv majmuasidan dastlabki 25
ta rasmni ko'rsatamiz va har bir rasm ostida
sinf nomini ko'rsatamiz. Ma'lumotlar to'g'ri
formatda ekanligiga ishonch hosil qiling.
plt.figure(figsize=(
10
,
10
))
for
i
in
range(
25
):
plt.subplot(
5
,
5
,i+
1
)
plt.xticks([])
plt.yticks([])
plt.grid(
False
)
plt.imshow(train_images[i],
cmap=plt.cm.binary)
plt.xlabel(class_names[train_labels[i]])
Model qurish
Neyron tarmoqni qurish model qatlamlarini o'rnatishni talab qiladi.
Neyron tarmoqning asosiy qurilish bloki qatlamdir. Chuqur o'rganishning
ko'p qismi oddiy qatlamlarni birlashtirishdan iborat. Ko'pgina qatlamlar, masalan,
tf.keras.layers.Dense, o'quv jarayonida o'rganiladigan parametrlarga ega.
model = keras.Sequential([
keras.layers.Flatten(input_shape=(
28
,
28
)),
keras.layers.Dense(
128
, activation=tf.nn.relu),
keras.layers.Dense(
10
, activation=tf.nn.softmax)
])
Tf.keras.layers.Flatten tarmog'idagi birinchi qatlam tasvir formatini 2
o'lchamli massivdan (28 ga 28 piksel) 28 * 28 = 784 pikselli 1 o'lchamli massivga
o'zgartiradi. Bu qatlamda o'rganish uchun hech qanday parametr yo'q, u faqat
ma'lumotlarni qayta formatlaydi.
Keyingi ikki qatlam tf.keras.layers.Zich. Bular zich bog'langan yoki to'liq
bog'langan nerv qatlamlari. Birinchi zich qatlam 128 tugunni (yoki neyronlarni) o'z
ichiga oladi. Ikkinchi (va oxirgi) daraja 10 tugunli tf.nn.softmax qatlami bo‘lib, u
yig‘indisi 1 ga teng o‘nta ehtimollik ballari qatorini qaytaradi. Har bir tugun joriy
tasvirning 10 tadan biriga tegishli bo‘lish ehtimolini ko‘rsatadigan ballni o‘z ichiga
oladi. sinflar.
Do'stlaringiz bilan baham: |