15-amaliy mashg’ulot: Mavzu
Keras - Python-da yozilgan ochiq manbali neyron tarmoq kutubxonasi. U TensorFlow freymworklari ustiga o'rnatilgan bo'lib, ular bilan ishlashni osonlashtiradi
Download 0.83 Mb.
|
Keras - Python-da yozilgan ochiq manbali neyron tarmoq kutubxonasi. U TensorFlow freymworklari ustiga o'rnatilgan bo'lib, ular bilan ishlashni osonlashtiradi.
TensorFlow - bu inson tomonidan idrok etish sifatiga erishish uchun naqshlarni avtomatik ravishda topish va tasniflash maqsadida neyron tarmoqlarni yaratish va o'qitish muammolarini hal qilish uchun Google tomonidan mashinali o’qitish uchun ishlab chiqarilgan ochiq dasturiy kutubxonadir. Avvalo TensorFlow 2.0.0-ni, so'ngra Keras-ni o'rnating. Keyin numpy ni 1.16.4 darajasiga pasaytirishimiz kerak. Barchasi Python 3.6.8 da ishlaydi. pip install tensorflow==2.0.0 pip install keras pip uninstall numpy pip install numpy==1.16.4 MNIST ma'lumotlar bazasi allaqachon kutubxonamiz ma'lumotlarida, biz ma'lumotlar bazasini yuklaymiz: # Ma'lumotlar bazasini ulaymiz. from keras.datasets import mnist # X_train va x_test ma'lumotlarini yuklashda raqamlar tasvirlangan ikki o'lchovli massivni yuklaymiz # x_test, y_test tarmoqni tekshiruvchi ma'lumotlarga ega massiv. (x_train, y_train), (x_test, y_test) = mnist.load_data() # Biz ikki o'lchovli massivni uch o'lchovli (28x28x1 kanal)ga aylantiramiz x_train = x_train.reshape(60000,28,28,1) x_test = x_test.reshape(10000,28,28,1) Reshape () funktsiyasi massivning shaklini uning ma'lumotlarini o'zgartirmasdan o'zgartiradi. Numpy Sinov ma'lumotlarini o'zgartirishimiz kerak. from keras.utils import to_categorical y_train = to_categorical(y_train) y_test = to_categorical(y_test) keras.utils.to_categorical(y, num_classes=None, dtype=’float32′) . Sinf vektorini (butun sonlarni) sinflarning ikkilik matritsasiga o'zgartiriladi. Tarmoq modelini yaratish. Endilikda neyron tarmog'imizni yaratishga tayyormiz. from keras.models import Sequential from keras.layers import Dense, Conv2D, Flatten # modelni yaratamiz model = Sequential() # qatlam qo’shamiz model.add(Conv2D(64, kernel_size=3, activation='relu', input_shape=(28,28,1))) Birinchi qatlam Conv2D bo'ladi. Ushbu svyortkali qatlamlar 2 o'lchovli matritsalar sifatida qaraladigan kirish tasvirlarida ishlaydi. kernel_size = 3 - yadro hajmi 3x3. Aktivizatsiya funktsiyasi 'relu' (Rectified Lineer Activation), 64 - konvolyutsiya yadrolari soni (biz qancha belgini qidirishimiz) # Ikkinchi svyortkali qatlam model.add(Conv2D(32, kernel_size=3, activation='relu')) # To'liq ulangan tarmoq uchun vektor yarating. model.add(Flatten()) Download 0.83 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling