Modul ini akan membahas Artificial Neural Network (ANN) menggunakan TensorFlow 2.
Kita akan mencoba membuat model untuk memprediksi image classification menggunakan dataset Fashion MNIST. Informasi dataset dapat dilihat di https://www.kaggle.com/zalando-research/fashionmnist

Pada bagian pertama, kita akan membahas mengenai dataset dan data preprocessing.
Fashion MNIST terdiri dari 60000 images training dataset dan 10000 test dataset dengan 10 label class. Setiap image berukuran 28 x 28 pixels yang berarti total adalah 784 pixels.
Setiap pixel menunjukan tingkat kecerahan, makin tinggi nilainya makin gelap. Nilainya dengan range 0 – 255. Training dan test data sets memiliki 785 kolom dimana kolom pertama adalah class labels, yang menunjukan kategori dari fashion. 784 kolom lainnya berisi nilai dari pixel yang menunjukan gambar tersebut.
Berikut class label yang menunjukan kategori fashion
- 0 T-shirt/top
- 1 Trouser
- 2 Pullover
- 3 Dress
- 4 Coat
- 5 Sandal
- 6 Shirt
- 7 Sneaker
- 8 Bag
- 9 Ankle boot
Jadi tujuan tutorial ini adalah melatih model dengan 60000 dataset training, kemudian model mampu memprediksi class dari test image dengan tingkat akurasi yang tinggi.
Yang perlu diperhatikan adalah, Input akan berupa vektor 1 dimensi, jadi image 2D akan diubah menjadi vektor 1D dengan menggunakan perintah reshape.
Pertama, import library yang diperlukan.
import numpy as np import datetime import tensorflow as tf from tensorflow.keras.datasets import fashion_mnist
Kemudian load dataset fashion MNIST.
(X_train, y_train), (X_test, y_test) = fashion_mnist.load_data()
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-labels-idx1-ubyte.gz
32768/29515 [=================================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-images-idx3-ubyte.gz
26427392/26421880 [==============================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/t10k-labels-idx1-ubyte.gz
8192/5148 [===============================================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/t10k-images-idx3-ubyte.gz
4423680/4422102 [==============================] - 0s 0us/step
Proses selanjutnya adalah normalisasi image. Normalisasi berguna agar training model ANN berjalan lebih cepat.
Metoda yang dipakai adalah membagi tiap pixel dengan nilai max pixel yaitu 255. Normalisasi dilakukan untuk training dan test dataset.
X_train = X_train / 255.0 X_test = X_test / 255.0
Proses selanjutnya adalah reshape image menjadi 1D vektor. Reshape dilakukan untuk training dan test dataset.
X_train = X_train.reshape(-1, 28*28) X_test = X_test.reshape(-1, 28*28)
Shape yang diharapkan adalah x_train (60000, 784) dan x_test (10000, 784).
Proses model building akan dilanjutkan pada modul berikutnya.
1 thought on “ANN Menggunakan TensorFlow 2 – Bag 1”