SlideShare a Scribd company logo
1 of 30
Download to read offline
KATA PENGANTAR
Era Digitalisasi pada Industri 4.0 di Indonesia saat ini dihadapkan pada tantangan hadirnya
permintaan dan penawaran talenta digital dalam mendukung perkembangan ekosistem industri teknologi.
Tantangan tersebut perlu dihadapi salah satunya melalui kegiatan inovasi dan inisiasi dari berbagai pihak
dalam memajukan talenta digital Indonesia, baik dari pemerintah maupun mitra kerja pemerintah yang
dapat menyiapkan angkatan kerja muda sebagai talenta digital Indonesia. Kementerian Komunikasi dan
Informatika melalui Badan Penelitian dan Pengembangan Sumber Daya Manusia sejak tahun 2018-2019,
telah menginisiasi Program Digital Talent Scholarship yang telah berhasil dianugerahkan kepada 26.000
penerima pelatihan di bidang teknologi informasi dan komunikasi. Program Digital Talent Scholarship ini
ditujukan untuk memberikan pelatihan dan sertifikasi tema-tema bidang teknologi informasi dan
komunikasi, diharapkan menjadi bagian untuk memenuhi permintaan dan penawaran talenta digital
Indonesia.
Tahun ini, Program Digital Talent Scholarship menargetkan pelatihan peningkatan kompetensi bagi
60.000 peserta yang bertujuan untuk meningkatkan keterampilan dan daya saing SDM bidang teknologi
informasi dan komunikasi sebagai bagian dari program pembangunan prioritas nasional. Program pelatihan
DTS 2021 ditujukan untuk meningkatkan keterampilan, keahlian angkatan kerja muda Indonesia,
masyarakat umum dan aparatur sipil negara di bidang teknologi informasi dan komunikasi sehingga dapat
meningkatkan produktivitas dan daya saing bangsa di era Industri 4.0.
Program DTS 2021 secara garis besar dibagi menjadi Tujuh akademi, yaitu: Fresh Graduate Academy
(FGA), Program pelatihan berbasis kompetensi bersama GlobalTech yang ditujukan kepada peserta
pelatihan bagi lulusan S1 bidang TIK dan MIPA, dan terbuka bagi penyandang disabilitas; Vocational School
Graduate Academy (VSGA), Program pelatihan berbasis kompetensi nasional yang ditujukan kepada peserta
pelatihan bagi lulusan SMK dan Pendidikan Vokasi bidang TI, Telekomunikasi, Desain, dan Multimedia;
Coding Teacher Academy (CTA), Program pelatihan merupakan program pelatihan pengembangan
sumberdaya manusia yang ditujukan kepada peserta pelatihan bagi Guru setingkat SMA/SMK/MA/SMP/SD di
bidang pemrograman. Online Academy (OA), Program pelatihan OA merupakan program pelatihan Online di
bidang Teknologi Informasi yang ditujukan kepada peserta pelatihan bagi Masyarakat umum, ASN,
mahasiswa, dan pelaku industri; Thematic Academy (TA), Program pelatihan TA merupakan program
pelatihan multisektor bagi pengembangan sumberdaya manusia yang ditujukan kepada peserta pelatihan
dari jenjang dan multidisiplin yang berbeda; Regional Development Academy (RDA), Program pelatihan RDA
merupakan program pelatihan pengembangan sumberdaya manusia yang ditujukan untuk meningkatkan
kompetensi ASN di Kawasan Prioritas Pariwisata dan 122 Kabupaten Prioritas Pembangunan. Digital
Entrepreneurship Academy (DEA), Program pelatihan DEA merupakan program pelatihan pengembangan
sumberdaya manusia yang ditujukan kepada talenta digital di bidang Usaha Mikro, Kecil, dan Menengah
(UMKM).
Selamat mengikuti Pelatihan Digital Talent Scholarship, mari persiapkan diri kita menjadi talenta digital
Indonesia.
Jakarta, 24 Februari 2021
Kepala Badan Penelitian dan Pengembangan Sumber Daya Manusia
Kementerian Komunikasi dan Informatika Republik Indonesia
Dr. Hary Budiarto, M.Kom
Pendahuluan
Tujuan Pembelajaran
A. Tujuan Umum
Setelah mempelajari modul ini peserta latih diharapkan mampu Membangun Model
(ANN)
B. Tujuan Khusus
Adapun tujuan mempelajari unit kompetensi melalui buku informasi Pelatihan Data
Scientist: Artificial Intelligence untuk Dosen dan Instruktur ini guna memfasilitasi
peserta latih sehingga pada akhir pelatihan diharapkan memiliki kemampuan sebagai
berikut:
1. Menyiapkan parameter model
1. Menggunakan tools pemodelan
Latar belakang
Unit kompetensi ini dinilai berdasarkan tingkat kemampuan dalam merancang
website. Adapun penilaian dilakukan dengan menggabungkan serangkaian metode
untuk menilai kemampuan dan penerapan pengetahuan pendukung penting. Penilaian
dilakukan dengan mengacu kepada Kriteria Unjuk Kerja (KUK) dan dilaksanakan di
Tempat Uji Kompetensi (TUK), ruang simulasi atau workshop dengan cara:
1.1. Lisan
1.2. Wawancara
1.3. Tes tertulis
1.4. Demonstrasi
1.5. Metode lain yang relevan.
Deskripsi Pelatihan
Materi ini berisi penjelasan mengenai pembangunan Model (ANN)
Kompetensi Dasar
A. Mampu mengoperasikan aplikasi Jupiter notebook atau Spyder
B. Mampu menormalisasi data set untuk disiapkan sebagai input machine learning
Indikator Hasil Belajar
Dapat melakukan pemodelan ANN
INFORMASI PELATIHAN
Akademi Thematic Academy
Mitra Pelatihan Kementerian Komunikasi dan Informatika
Tema Pelatihan Data Scientist: Artificial Intelligence untuk Dosen dan Instruktur
Sertifikasi β€’ Certificate of Attainment;
β€’ Sertifikat Kompetensi Associate Data Scientist
Persyaratan Sarana
Peserta/spesifikasi device
Tools/media ajar yang akan
digunakan
Memiliki laptop/komputer dengan spesifikasi minimal :
β€’ RAM minimal 2 GB (disarankan 4 GB)
β€’ Laptop dengan 32/64-bit processor
β€’ Laptop dengan Operating System Windows 7, 8, 10, MacOS X atau
Linux
β€’ Laptop dengan konektivitas WiFi dan memiliki Webcam
β€’ Akses Internet Dedicated 126 kbps per peserta per perangkat
β€’ Memiliki aplikasi Zoom
β€’ Memiliki akun Google Colab
Aplikasi yang akan di
gunakan selamat pelatihan
β€’ Spyder
β€’ Jupyter notebook
Tim Penyusun Dr. Eng. Chastine Fatichah, S.Kom, M.Kom
INFORMASI PEMBELAJARAN
Unit Kompetensi Materi
pembelajaran
Kegiatan
pembelajaran
Durasi
Pelatihan
Rasio
Praktek : Teori
Sumber pembelajaran
Peserta mampu
melakukan proses
pemodelan ANN
Modul dan
Slide
pemodelan
ANN
Daring/Online Live Class
2
JP
LMS 4 JP
@ 45 Menit
70:30
Materi Pokok
Membangun Model ANN
Sub Materi Pokok
Metode Fully Connected Network
Metode Convolutional Network
Metode Recurrent Neural Network
Penggunaan library sklearn dan keras Model ANN
MEMBANGUN MODEL ARTIFICIAL NEURAL NETWORK (ANN)
Artificial Neural Network (ANN) merupakan salah satu metode mesin pembelajaran yang
terinspirasi oleh cara kerja jaringan saraf di otak manusia dalam menyelesaikan masalah
melalui perubahan bobot sinapsisnya. ANN adalah metode supervised learning yang
mampu mempelajari pola suatu data dengan menggunakan rekam data di masa lalu
sebagai data latih. Pada ANN, terdapat neuron yang terhubung dengan neuron lainnya.
Neuron-neuron tersebut akan mentransformasikan informasi yang diterima menuju ke
neuron yang lain. Metode ANN merupakan arsitektur Fully Connected Network (FCN)
dimana setiap hubungan antar neuron ini terdapat nilai bobot. Arsitektur FCN terdiri dari
3 layer, yaitu input layer, hidden layer, dan output layer. FCN dapat diklasifikasikan
menjadi 2 (dua) jenis, yaitu single-layer dan multi-layer.
a. Arsitektur single-layer terdiri dari 2 layer, yaitu input dan output. Input layer
menerima masukkan, sedangkan output layer memberikan respon berdasarkan
masukkan.
b. Arsitektur multi-layer seperti pada Gambar 1 memiliki struktur tambahan yaitu
hidden layer yang menghubungkan input layer dan output layer. Jumlah hidden layer
merepresentasikan tingkat kompleksitas sebuah jaringan, semakin kompleks
permasalahan maka akan dibutuhkan semakin banyak jumlah hidden unit.
Gambar 1. Arsitektur Multi-layer FCN
Jumlah neuron pada input layer merepresentasikan jumlah fitur pada sebuah dataset, jika
input berupa data citra maka jumlah neuron sesuai ukuran citra input. Jumlah neuron
pada hidden layer umumnya lebih banyak daripada jumlah neuron di output layer.
Sedangkan jumlah neuron pada output layer sesuai dengan jumlah kelas pada
permasalahan klasifikasi. Pada kasus prediksi dan klasifikasi dua kelas, jumlah neuron
pada output layer adalah satu neuron.
Gambar 2. Representasi sebuah neuron pada metode ANN
Gambar 2 menunjukkan bahwa setiap neuron mempunyai luaran y yang diperoleh dari
persamaan linear yaitu penjumlahan dari perkalian input x dan bobot w dan
menambahkan bias b. Perhitungan luaran pada setiap neuron dapat dilihat pada
persamaan 1.
y
Μ‚ = π‘Ž(βˆ‘ 𝑀𝑖π‘₯𝑖
π‘š
𝑖=1 + 𝑏) (1)
Dimana a adalah fungsi aktivasi.
Sebuah neuron pada ANN dapat menyelesaikan permasalahan klasifikasi biner sebagai
fungsi pemisah (hyperspace separation) dan binary threshold seperti ditunjukkan pada
Gambar 3.
Gambar 3. Sebuah neuron dapat menyelesaikan permasalahan klasifikasi biner
Permasalahan klasifikasi dapat dikategorikan sebagai:
β€’ Permasalahan Linear, misalnya fungsi OR dan AND
β€’ Permasalahan Non-Linear, misalnya fungsi XOR
Pada ANN, fungsi aktivasi dapat merubah neuron menjadi non-linear. Beberapa contoh
fungsi aktivasi yang umum digunakan pada metode ANN sebagai berikut:
1. Fungsi Sigmoid
π‘Ž(𝑧) =
1
1+π‘’βˆ’π‘§
(2)
2. Fungsi Gaussian
π‘Ž(𝑧) =
1
√2πœ‹πœŽ
π‘’βˆ’
1
2
(
π‘§βˆ’πœ‡
𝜎
)2
(3)
3. Fungsi Hyperbolic Tangent
π‘Ž(𝑧) =
π‘’π‘§βˆ’ π‘’βˆ’π‘§
𝑒𝑧+π‘’βˆ’π‘§
(4)
4. Fungsi Rectified Linear Unit (ReLU)
π‘Ž(𝑧) = max (0, 𝑧) (5)
Adapun grafik dari fungsi aktivasi dapat dilihat pada Gambar 4.
(a) Sigmoid (b) Gaussian
(c) Hyperbolic Tangent (d) ReLU
Gambar 4. Contoh grafik fungsi aktivasi
Pada permasalahan non-linear dan permasalahan yang lebih kompleks, dapat
menggunakan arsitektur Multi-layer ANN.
Desain Arsitektur ANN
Terdiri dari tiga layer yaitu:
β€’ input layer
β€’ hidden layer
β€’ output layer
Hubungan antar neuron pada ANN merupakan Fully connected layer. Jumlah hidden layer
sebaiknya disesuaikan dengan kompleksitas permasalahan. Jumlah neuron pada hidden
layer umumnya lebih banyak daripada jumlah neuron di output layer.
Penentuan jumlah neuron pada input layer
β€’ Jumlah neuron sesuai dengan jumlah fitur pada data input
Penentuan jumlah neuron pada output layer
β€’ Jumlah neuron sesuai dengan permasalahan
β€’ Pada permasalahan klasifikasi biner dan regresi bisa menggunakan hanya satu
neuron
β€’ Pada permasalahan klasifikasi multiclass menggunakan jumlah neuron sesuai
jumlah label kelasnya, misalnya: 10 neuron pada pengenalan angka
Penentuan jumlah hidden layer:
β€’ Semakin banyak jumlah layer memerlukan komputasi waktu lebih lama
β€’ Jumlah layer sebaiknya disesuaikan dengan kompleksitas permasalahan
Penentuan jumlah node (neuron) pada hidden layer:
β€’ Semakin banyak jumlah node memungkinkan mempelajari pola yang lebih rumit
β€’ Untuk mencegah overfitting sebaiknya menambah jumlah node secara bertahap
Contoh desain aristektur Multi-layer ANN untuk pengenalan angka dapat dilihat pada
Gambar 5.
Gambar 5. Contoh desain arsitektur ANN pada pengenalan angka
Proses pembelajaran pada metode ANN adalah proses mendapatkan nilai bobot yang
optimal pada setiap koneksi antara neuron yang memenuhi kriteria fungsi obyektif.
Fungsi obyektif metode ANN berupa fungsi loss seperti pada persamaan 6. Persaman 7
merupakan fungsi Means square loss dan persamaan 8 merupakan fungsi Cross entropy
loss. Fungsi Means square loss umumnya digunakan pada permasalahan regresi,
sedangkan pada permasalahan klasifikasi menggunakan fungsi Cross entropy loss. Pada
kasus permasalahan klaisifikasi biner, umumnya menggunakan fungsi Binary Cross
entropy loss.
𝐽(π‘Š) =
1
𝑛
βˆ‘ β„’(𝑓(π‘₯(𝑖)
; π‘Š), 𝑦(𝑖)
)
𝑛
𝑖=1 (6)
𝐽(π‘Š) =
1
𝑛
βˆ‘ (𝑦(𝑖)
βˆ’ 𝑓(π‘₯(𝑖)
; π‘Š))
2
𝑛
𝑖=1 (7)
𝐽(π‘Š) =
1
𝑛
βˆ‘ 𝑦(𝑖)
π‘™π‘œπ‘” (𝑓(π‘₯(𝑖)
; π‘Š)) + (1 βˆ’ 𝑦(𝑖)
)π‘™π‘œπ‘” (1 βˆ’ 𝑓(π‘₯(𝑖)
; π‘Š))
𝑛
𝑖=1 (8)
Algoritma Pembelajaran Backpropagation
Proses pembelajaran pada ANN bertujuan untuk mendapatkan bobot-bobot yang optimal
melalui proses meminimalisasi fungsi obyektif. Algoritma backpropagation merupakan
algoritma pembelajaran yang digunakan oleh metode ANN dalam proses mengupdate
nilai bobot. Pembelajaran dengan algoritma backpropagation terdiri atas tiga tahap, yaitu
(i) feed forward, (ii) propagasi error, dan (iii) pembaruan bobot dan bias.
Tahap satu adalah feed forward yaitu menghitung luaran dari semua neuron yang
diaktifkan menggunakan suatu fungsi aktivasi. Pada tahap feed forward ini, persamaan 1
digunakan untuk estimasi nilai luaran setiap neuron. Sinyal luaran setiap neuron ini
kemudian dikirim ke seluruh neuron pada layer selanjutnya hingga output layer.
Tahap kedua adalah menghitung propagate error antara hasil perhitungan nilai luaran
pada output layer (nilai prediksi) dengan nilai target yang sudah ditentukan pada data
latih. Tahap ketiga adalah mengupdate nilia bobot pada semua layer dengan fungsi tujuan
adalah meminimalkan fungsi loss seperti pada persamaan 9 dan 10.
π‘Šβˆ—
= argmin
π‘Š
𝐽(π‘Š) (9)
π‘Šβˆ—
= argmin
π‘Š
1
𝑛
βˆ‘ β„’(𝑓(π‘₯(𝑖)
; π‘Š), 𝑦(𝑖)
)
𝑛
𝑖=1 (10)
Algoritma pembelajaran pada metode ANN umumnya menggunakan algoritima
backpropagation gradient descent.
Algoritma Backpropagation Gradient descent
β€’ Inisialisasi bobot secara random
β€’ Iterasi sampai konvergen
β€’ Hitung gradient,
πœ•π½(π‘Š)
πœ•π‘Š
β€’ Update bobot, π‘Š ← π‘Š βˆ’ πœ‚
πœ•π½(π‘Š)
πœ•π‘Š
β€’ Mengembalikan nilai bobot
Gambar 6. Grafik optimasi nilai bobot dengan fungsi obyektif
Algoritma Stochastic Gradient Descent
Tahapan Pembelajaran Multi-layer Perceptron ANN
Langkah 0 – Inisialisasi bobot, learning rate, maksimum iterasi
Langkah 1 – Membaca vektor input X
Langkah 2 – Lakukan iterasi (epoch)
Langkah 3 – Hitung luaran neuron di hidden layer dan output layer
Langkah 4 – Hitung back propagate error (pada output layer dan hidden layer)
Langkah 5 – Perbarui semua bobot (pada output layer dan hidden layer)
Langkah 6 – Ulangi langkah 3 – 5 hingga bobot konvergen atau maksimum iterasi
Langkah 7 – Luaran berupa matrik bobot (pada output layer dan hidden layer)
Contoh perhitungan dari penerapan algoritma pembelajaran perceptorn Multi-layer ANN
pada kasus operasi logika AND dapat dilihat pada tabel dibawah ini:
Strategi Pembelajaran Metode ANN
Ada beberapa strategi pembelajaran pada metode ANN untuk menangani beberapa
kendala dalam proses pelatihan yaitu:
1. Permasalahan overfitting
Overfitting adalah permasalahan yang umum dihadapi pada saat membangun model
ANN yaitu kinerja dari data latih lebih tinggi daripada kinerja dari data validasi.
Strategi yang bisa dilakukan untuk mencegah overfitting adalah:
β€’ regularisasi
β€’ melakukan augmentasi data
β€’ penggunaan dropout pada saat proses pelatihan
β€’ Early stopping
2. Permasalahan kinerja model yang rendah
Sumber: MICHAEL NEGNEVITSKY, Artificial Intelligence: A Guide to Intelligent
Systems, Second Edition, Addision Wesley, 2005
Pada proses pembangunan model terkadang kinerja model masih rendah, sehingga
model tersebut belum bisa digunakan untuk proses prediksi pada data uji. Strategi
untuk meningkatkan kinerja model yang masih rendah sebagai berikut:
β€’ Modifikasi network
β€’ Merubah fungsi aktivasi
β€’ Menggunakan adaptive learning rate
Regularization
Regularisasi dilakukan untuk mengurangi generalization error dengan mencegah model
lebih kompleks. Penerapan regularisasi dengan cara menambahkan regularization term
pada semua parameter (bobot) ke fungsi obyektif.
β€’ Regularization L1 norm
o Menambahkan sum of the absolute weights sebagai penalty term ke fungsi
obyektif
β€’ Regularization L2 norm (weight decay)
o Menambahkan sum of the squared weights sebagai penalty term ke fungsi
obyektif
Augmentasi Data
Augmentasi data adalah proses memperbanyak variasi data latih, sehingga model yang
dihasilkan lebih baik dalam memprediksi data uji. Metode augmentasi data yang
digunakan tergantung dari jenis data input. Pada data citra, metode augmentasi yang
umum digunakan adalah rotasi, translasi, flip, dan zoom (dapat dilihat pada Gambar 7).
Gambar 7. Ilustrasi penggunaan Augmentasi Data
Konsep Dropout
Dropout adalah cara untuk meregulasi parameter untuk menghindari overfitting
sehingga model lebih general. Umumnya dilakukan pada Fully Connected Layer. Selama
proses training, setiap iterasi sebelum menghitung gradient dilakukan penentuan neuron
yang diset tidak aktif sesuai prosentase dropout p%. Contoh ilustrasi konsep Dropout
pada saat proses pelatihan dapat dilihat pada Gambar 8.
Gambar 8. Ilustrasi penggunaan Dropout
Konsep Early Stopping
Iterasi pada saat training dihentikan jika generalization error mulai naik seperti pada
Gambar 9.
Gambar 9. Ilustrasi penggunaan Early Stopping
Adaptive Learning Rate
Nilai learning rate berpengaruh pada perhitungan bobot baru, umumnya penggunaan
learning rate yang menyesuaikan nilai gradien (adaptive learning rate) menunjukkan
kinerja model yang lebih baik. Contoh algoritma adaptive learning rate:
β€’ SGD [Kiefer & Wolfowitz, Ann. Math. Statits. 1952]
β€’ Adagrad [John Duchi, JMLR 2011]
β€’ Adadelta [Matthew D. Zeiler, arXiv 2012]
β€’ AdaSecant [Caglar Gulcehre, arXiv 2014]
β€’ Adam [Diederik P. Kingma, ICLR 2015]
β€’ RMSProp https://www.youtube.com/watch?v=O3sxAc4hxZU
Tahapan Implementasi ANN
1. Load data: membaca file data input
2. Split data: membagi data menjadi data latih, data validasi, data uji
3. Define model: merancang arsitektur atau model ANN
4. Compile model: menjalankan model ANN yang sudah dirancang
5. Fit model: membangun model ANN berdasarkan data latih
6. Evaluation model: mengevaluasi model ANN berdasarkan data validasi
7. Prediction: memprediksi output dari data uji menggunakan model ANN yang terbaik
TOOLS: Scikit-learn
Parameter MLPClassifier:
● hidden_layer size: jumlah neuron di hidden layer
● activation: fungsi aktivasi yang digunakan di hidden layer
● solver: metode adaptive learning rate yang digunakan
● batch_size: ukuran batch
● learning_rate_init: inisialisasi learning rate
● max_iter: maksimum iterasi
● early_stopping: bernilai false jika tidak menerapkan early stopping
Contoh implementasi ANN pada dataset Iris menggunakan library Scikit-learn
1. Load Data
2. Split Data
from sklearn import datasets
iris = datasets.load_iris()
X = iris.data
y = iris.target
3. Define Model
from sklearn.model_selection import train_test_split
X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=.10)
X_train, X_val, Y_train, Y_val = train_test_split(X_train, Y_train,
test_size=.15)
print('X_train', X_train.shape)
print('X_val', X_val.shape)
print('X_test', X_test.shape)
from sklearn.neural_network import MLPClassifier
mlp = MLPClassifier(hidden_layer_sizes=(64, ), activation='relu’,
learning_rate_init=0.001, max_iter=100)
4. Fit Model dan Evaluation Model
5. Prediction
TOOLS: TENSOR FLOW DAN KERAS
β€’ TensorFlow merupakan end-to-end open-source platform untuk mesin
pembelajaran (https://www.tensorflow.org/overview/)
β€’ Keras merupakan sebuah deep learning API berbasis Python, berjalan diatas
platform TensorFlow. Dimana fokus pengembangan adalah untuk mempercepat
proses eksperimen. (https://keras.io/getting_started/)
Keras Model Sequential dan Layers
Pembangungan model pada Keras dapat dilihat pada link berikut ini:
https://keras.io/api/models/ dan https://keras.io/guides/sequential_model/
Contoh pembangunan model Sequential pada Keras seperti berikut ini:
atau
from sklearn.metrics import accuracy_score
mlp.fit(X_train, Y_train)
prediksi_val = mlp.predict(X_val)
acc_val = accuracy_score(Y_val, prediksi_val)
print('Akurasi Validasi Training ANN:', acc_val)
from sklearn.metrics import accuracy_score, plot_confusion_matrix
prediksi_test = mlp.predict(X_test)
acc_test = accuracy_score(Y_test, prediksi_test)
print('Akurasi Testing ANN:', acc_test)
plot_confusion_matrix(mlp, X_test, Y_test)
Contoh implementasi ANN pada dataset Iris menggunakan library Keras
1. Load Data dan Split Data
2. Define Model dan Compile Model
3. Fit Model dan Evaluation Model
from sklearn import datasets
from sklearn.model_selection import train_test_split
from keras.utils import to_categorical
iris = datasets.load_iris()
X = iris.data
y = iris.target
X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=.10)
X_train, X_val, Y_train, Y_val = train_test_split(X_train, Y_train, test_size=.2)
print('X_train', X_train.shape)
print('X_val', X_val.shape)
print('X_test', X_test.shape)
Y_train = to_categorical(Y_train,3)
Y_val = to_categorical(Y_val,3)
Y_test = to_categorical(Y_test,3)
from keras.models import Sequential
from keras.layers import Flatten, Dense
model = Sequential()
model.add(Flatten())
model.add(Dense(64,activation='relu'))
model.add(Dense(3,activation='softmax’))
model.compile(optimizer='adam',loss='categorical_crossentropy', metrics=['acc'])
model.fit(X_train,Y_train,epochs=64,batch_size=5,validation_data=(X_test,Y_test))
model.summary()
loss, accuracy = model.evaluate(X_test, Y_test)
print('Akurasi Testing MLP:', accuracy)
Contoh Penerapan Arsitektur ANN Pada Permasalahan Pengenalan Angka
Arsitektur MLP ANN yang akan dibagun untuk pengenalan angka dari citra tulisan tangan
seperti pada Gambar 10. Arsitektur MLP yang digunakan adalah input layer dengan
jumlah neuron sesuai ukuran citra input, jumlah neuron pada hidden layer adalah 64, dan
jumlah neuron pada output layer adalah 10 sesuai jumlah angka yang akan diklasifikasi.
Dataset yang digunakan adalah dataset MNITS Handwritten Digit.
Gambar 10. Contoh arsitektur Multi-layer ANN untuk pengenalan angka
Dataset MNIST Handwritten Digit dibagi menjadi 3 bagian:
β€’ 55,000 training data
β€’ 10,000 test data
β€’ 5,000 validation data
Setiap citra berukuran 28 Γ— 28 pixels dan label kelas berupa one hot encoded. Dibawah
ini adalah contoh citra pada dataset MNIST beserta contoh label kelasnya.
1. Load Data
2. Define Model Multi-layer ANN
import keras
from keras.datasets import mnist
(X_train, y_train), (X_test, y_test) = mnist.load_data()
X_train = X_train.reshape(-1, 28,28,1)
X_test = X_test.reshape(-1, 28,28,1)
X_train = X_train.astype('float32')
X_test = X_test.astype('float32')
X_train /= 255
X_test /= 255
y_train = keras.utils.to_categorical(y_train, 10)
y_test = keras.utils.to_categorical(y_test, 10)
from keras.models import Sequential
from keras.layers import Flatten, Dense
model1 = Sequential()
model1.add(Flatten())
model1.add(Dense(64,activation='relu'))
model1.add(Dense(10,activation='softmax'))
0 [1 0 0 0 0 0 0 0 0 0]
1 [0 1 0 0 0 0 0 0 0 0]
2 [0 0 1 0 0 0 0 0 0 0]
3 [0 0 0 1 0 0 0 0 0 0]
4 [0 0 0 0 1 0 0 0 0 0]
5 [0 0 0 0 0 1 0 0 0 0]
6 [0 0 0 0 0 0 1 0 0 0]
7 [0 0 0 0 0 0 0 1 0 0]
8 [0 0 0 0 0 0 0 0 1 0]
9 [0 0 0 0 0 0 0 0 0 1]
3. Model, Fit Model, Save Model, dan Evaluasi Model
Visualiasasi Evaluasi Model
4. Load Model dan Prediction
import numpy as np
from keras.models import load_model
model_simpan = load_model('my_model.h5')
pred = model_simpan.predict(X_test)
print('label actual:',np.argmax(y_test[30]))
print('label prediction:',np.argmax(pred[30]))
model1.compile(optimizer='adam',loss='categorical_crossentropy',metrics=['acc'])
history =
model1.fit(X_train,y_train,epochs=10,batch_size=100,validation_data=(X_test,y_test))
model1.save('my_model1.h5')
model1.evaluate(X_test,y_test)
Pengantar Deep Learning
Pendekatan klasifikasi secara konvensional umumnya melakukan ektraksi fitur secara
terpisah kemudian dilanjutkan proses pembelajaran menggunakan metode klasifikasi
konvensional (Gambar 11). Kelemahan pendekatan konvensional:
● Memerlukan waktu dan pengetahuan lebih untuk ekstraksi fitur
● Sangat tergantung pada satu domain permasalahan saja sehingga tidak berlaku
general
Pendekatan klasifikasi berbasis Deep learning mempelajari representasi hirarki (pola
fitur) secara otomatis melalui beberapa tahapan proses feature learning.
Gambar 11. Ilustrasi konsep machine learning dan deep learning
CONVOLUTIONAL NEURAL NETWORK
Convolutional Neural Network (CNN) adalah salah satu jenis arsitektur dari ANN untuk
memproses data yang memiliki susunan topologi seperti grid (I. Goodfellow, dkk., 2016).
Misalnya data time-series merupakan data yang berbentuk grid 1D, yang menyatakan
sampel data terhadap satuan waktu. Contoh lain data citra merupakan data grid 2D yang
terdiri dari nilai piksel. Penamaan Convolutional karena penggunaan operator konvolusi
pada salah satu layer ANN yang menggantikan operasi aljabar matriks biasa. Tahapan
pada layer CNN umumnya terbagi menjadi 3 tahap, yaitu: 1) convolution, 2) pooling 3)
flatten 4) fully connected layer. Aristektur CNN untuk proses klasifikasi diilustrasikan
pada Gambar 12.
Gambar 12. Arsitektur Convolutional Neural Network (CNN)
Tahap pertama merupakan tahap convolution, ilustrasi proses konvolusi dapat dilihat
pada Gambar 13. Pada tahap ini, melakukan operasi konvolusi pada data input dengan
kernel. Kernel pada CNN merupakan array multidimensional yang menjadi operator
untuk melakukan operasi tertentu dengan array input seperti pada persamaan 11. Nilai
yang terdapat pada kernel merupakan nilai yang diperoleh dari hasil learning. Hasil
operasi aljabar antara input dengan kernel disebut dengan feature map. Proses operasi
antara input dengan kernel ini disebut dengan proses ekstraksi fitur ke dalam feature
map. Contoh proses konvolusi pada sebuah citra dapat dilihat pada Gambar 14.
(𝐼 βˆ— 𝐾)(𝑖, 𝑗) == βˆ‘ βˆ‘ 𝐼(π‘š, 𝑛)𝐾(𝑖 + π‘š, 𝑗 + 𝑛)
𝑛
π‘š (11)
Gambar 13. Ilustrasi proses Konvolusi
Gambar 14. Contoh proses Konvolusi pada input citra
Tahap kedua merupakan tahap detector yaitu hasil dari tahap sebelumnya dijadikan
sebagai input ke dalam suatu fungsi aktivasi misalnya Rectified linear unit (ReLU). Tahap
ketiga merupakan tahap pooling yaitu mereduksi dimensi dari input array yang masuk
dengan memanfaatkan fungsi maksimum, penjumlahan, atau rata-rata, yang disebut max-
pooling, sum-pooling, atau average-pooling. Luaran dari tahapan ini menghasilkan
dimensi data menjadi lebih kecil namun tanpa menghilangkan informasi penting dari
data yang diterima. Pooling layer yang umum digunakan untuk mengurangi ukuran
gambar menjadi lebih kecil (downsample) dan mengekstrak salient features adalah
Maximum pooling dan Average pooling. Ilustrasi konsep dari Max-pooling dan Average-
pooling dapat dilihat pada Gambar 15.
Gambar 15. Contoh proses Pooling pada sebuah feature map
Setelah menggunakan beberapa convolutional dan pooling layer, umumnya untuk
permasalahan klasifikasi digunakan layer tambahan berupa fully connected layer sebagai
tahap 4 yang melakukan proses flattening dari matriks menjadi sebuah vektor, dan
selanjutnya digunakan untuk melakukan klasifikasi.
Contoh Penerapan Arsitektur CNN Pada Permaslahan Klasifikasi
Arsitektur CNN yang akan dibagun untuk pengenalan angka dari citra tulisan tangan
seperti pada Gambar 16. Arsitektur CNN yang digunakan adalah input layer dengan
jumlah neuron sesuai ukuran citra input, dua convolution layer dengan ukuran filter 3x3
sejumlah 16 dan 32, dua max-pooling layer dengan filter 2x2, sedangkan pada arsitektur
FCN menggunakan 64 neuron pada hidden layer dan 10 neuron pada output layer sesuai
jumlah angka yang akan diklasifikasi. Dataset yang digunakan adalah dataset MNITS
Handwritten Digit.
Gambar 16. Contoh Arsitektur CNN untuk pengenalan angka
1. Define Model, Fit Model dan Evaluasi Model CNN
from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
model2 = Sequential()
model2.add(Conv2D(16,(3,3),activation='relu',input_shape=(28,28,1),padding='s
ame'))
model2.add(MaxPooling2D(2,2))
model2.add(Conv2D(32,(3,3),activation='relu',padding='same'))
model2.add(MaxPooling2D(2,2))
model2.add(Flatten())
model2.add(Dense(64,activation='relu'))
model2.add(Dense(10,activation='softmax’))
model2.summary()
2. Compile Model, Fit Model, Save Model, dan Evaluasi Model CNN
3. Load Model dan Prediction
model.
Compile(optimizer='adam',loss='categorical_crossentropy',metrics=['acc’])
history =
model.fit(X_train,y_train,epochs=10,batch_size=100,validation_data=(X_test,y_
test))
model2.save('my_model2.h5')
model.evaluate(X_test,y_test)
import numpy as np
from keras.models import load_model
model_simpan2 = load_model('my_model2.h5')
pred = model_simpan2.predict(X_test)
print('label actual:',np.argmax(y_test[30]))
print('label prediction:',np.argmax(pred[30]))
Tipe aplikasi yang menggunakan metode CNN misalnya image classification, object
detection, dan instance semantic segmentation seperti pada Gambar 17.
Gambar 17. Contoh tipe aplikasi CNN
import matplotlib.pyplot as plt
epochs = range(10)
loss1 = history1.history['loss']
val_loss1 = history1.history['val_loss']
plt.plot(epochs,loss1,'r',label='train loss ANN')
plt.plot(epochs,val_loss1,'b',label='val loss ANN’)
loss2 = history2.history['loss']
val_loss2 = history2.history['val_loss']
plt.plot(epochs,loss2,'r+',label='train loss CNN')
plt.plot(epochs,val_loss2,'b+',label='val loss CNN')
plt.legend()
TIPE APLIKASI DAN VARIAN ARSITEKTUR CNN
Tipe Aplikasi Arsitektur CNN
Image Classification β€’ LeNet-5 (1998)
β€’ AlexNet (2012)
β€’ GoogLeNet/Inception (2014)
β€’ VGGNet (2014)
β€’ ResNet (2015)
Object Detection β€’ R-CNN (2013)
β€’ Fast R-CNN (2014)
β€’ Faster R-CNN (2015)
β€’ Single Shot Detector (SSD) (2016)
β€’ YOLO (2016)
Semantic (Instance) Segmentation β€’ Fully Convolutional Network (FCN) (2015)
β€’ U-Net (2015)
β€’ Feature Pyramid Network (FPN) (2016)
β€’ Mask R-CNN (2017
β€’ DeepLab (2016), DeepLabv3 (2017),
DeepLabv3+ (2018)
Generative model β€’ Autoencoders, Variational Autoencoders
(VAE)
β€’ Generative Adversarial Network (GAN)
RECCURENT NEURAL NETWORK
Recurrent Neural Netword (RNN) adalah salah satu arsitektur ANN yang mampu
merepresentasikan data sequential, misalnya teks, suara, time series, dan sebagainya.
RNN berfokus pada sifat data yang mana data sebelumnya mempengaruhi data
selanjutnya. Misalnya, diberikan sebuah sequence input x = ( π‘₯1, π‘₯2, π‘₯3.. π‘₯𝑑). Data π‘₯𝑑
dipengaruhi oleh data sebelumnya, ditulis sebagai 𝑃( π‘₯𝑑 | (π‘₯1, π‘₯2, π‘₯3.. π‘₯π‘‘βˆ’1). Ide utamanya
adalah memorisasi yaitu mengingat keseluruan sekuens. Sel RNN dapat diilustrasikan
pada Gambar 18. Perhitungan hidden state 𝐻 pada waktu ke-t bergantung pada fungsi
aktivasi πœ™ dari input pada waktu ke-t (𝑋𝑑), hidden state sebelumnya (π»π‘‘βˆ’1) dan
parameter pada ANN bias b. Konsep ini sesuai dengan prinsip recurrent yaitu mengingat
kejadian sebelumnya. Persamaan RNN dapat dilihat pada persamaan 12 dan 13.
𝑦
̂𝑑 = π»π‘‘π‘Šβ„Žπ‘¦ + 𝑏𝑦 (12)
𝐻𝑑 = πœ™(π‘‹π‘‘π‘Šπ‘₯β„Ž + π»π‘‘βˆ’1π‘Šβ„Žβ„Ž + π‘β„Ž) (13)
Gambar 19 menunjukkan urutan komputasi RNN pada tiga waktu yang berdekatan.
Dalam tahap waktu t, perhitungan hidden state dapat diperlakukan sebagai entri dari
lapisan yang terhubung penuh dengan fungsi aktivasi f setelah menggabungkan input Xt
dengan hidden state Ht-1 dari waktu sebelumnya. Output dari lapisan yang terhubung
penuh adalah hidden state saat ini Ht. Parameter modelnya adalah gabungan dari Wxh
dan Whh, dengan bias bh. Hidden state dari waktu saat ini t (Ht) akan berpartisipasi dalam
menghitung hidden state Ht+1 dari langkah waktu berikutnya t+1, yang hasilnya akan
menjadi input untuk layer output yang terhubung penuh pada waktu saat ini.
Gambar 18. Arsitektur Recurrent Neural Network (RNN)
Gambar 19. Arsitektur Recurrent Neural Network (RNN)
Gambar 20 menunjukkan tipe-tipe arsitektur RNN dan Gambar 21 merupakan contoh
penerapan salah satu tipe RNN pada aplikasi analisis sentiment. Contoh-contoh aplikasi
dari tipe arsitektur RNN sebagai berikut:
a. Many to One: Sentiment classification, Opinion mining, Speech recognition, Automated
answer scoring, dsb.
b. One to Many: Text generation, Image captioning, dsb.
c. Many to Many: Translation, Forecasting, Music generation, Chatbot, dsb.
(a) (b) (c)
Gambar 20. Tipe arsitektur RNN (a) Many to One (b) One to Many (c) Many to Many
Gambar 21. Contoh aplikasi analisis sentiment menggunakan arsitektur RNN
Varian Arsitektur RNN
Varian dari arsitektur RNN dapat dilihat pada Gambar 22 dan penjelasan setiap arsitektur
sebagai berikut:
● Long Short-Term Memory (LSTM)
Merupakan salah satu jenis arsitektur RNN yang terdiri dari beberapa unit yaitu
input gate, output gate, dan forget gate. LSTM diusulkan untuk mengatasi
permasalahan vanishing gradient pada arsitektur RNN.
● Gate Recurrent Unit (GRU)
Merupakan simplifikasi dari arsitektur LSTM dengan menggabungkan input gate dan
forget gate sehingga jumlah parameter lebih sedikit.
● Independently RNN (IndRNN)
Arsitektur RNN dimana setiap neuron dalam satu layer independen dari yang lain
● Bi-directional RNN
Merupakan arsitektur RNN menghubungkan dua hidden layer dari arah yang
berlawanan ke output yang sama.
● Echo State Network (ESN)
Ide dasar ESN adalah untuk membuat jaringan berulang yang terhubung secara acak,
yang disebut reservoir.
Gambar 22. Varian arsitektur RNN (LSTM, GRU, IndRNN, Bi-directional RNN, ESN)
REFERENSI
1. θ™žε°ζ–‡, Feed-Forward Neural Networks, Course slides presentation
2. Andrew Ng, Machine Learning, Course slides presentation
3. Michael Negnevitsky, Artificial Intelligence: A Guide to Intelligent Systems, Second
Edition, Addision Wesley, 2005.
4. Hung-yi Lee, Deep Learning Tutorial
5. Alexander Amini, Intro to Deep Learning, MIT 6.S191, 2021
Tugas Dan Proyek Pelatihan
1. Implementasi metode Artificial Neural Network (ANN) pada permasalahan klasifikasi
a. Download dataset Hepatitis C pada link berikut
https://archive.ics.uci.edu/ml/datasets/HCV+data
b. Membagi dataset menjadi 3 bagian yaitu data train, data validasi, dan data uji
c. Merancang dan membangun model ANN
d. Lakukan tuning parameter agar menghasilkan model yang terbaik
e. Menampilkan grafik loss train dan validasi dari hasil pembangunan model
f. Menampilkan hasil confusion matrix dan akurasi dari data uji.
2. Implementasi metode Convolutional Neural Network (CNN) pada permasalahan klasifikasi yaitu
pengenalan karakter Bahasa isyarat
a. Download dataset Bahasa isyarat pada link berikut https://www.kaggle.com/ayuraj/asl-
dataset
b. Membagi dataset menjadi 3 bagian yaitu data train, data validasi, dan data uji dengan
prosentase 70%, 20%, dan 10%
c. Merancang dan membangun model CNN
d. Lakukan tuning parameter agar menghasilkan model yang terbaik
e. Menampilkan grafik loss train dan validasi dari hasil pembangunan model
f. Menampilkan hasil confusion matrix dan akurasi dari data uji.
Link Referensi Modul Empat Belas
1. But what is a neural network? https://www.youtube.com/watch?v=aircAruvnKk
2. Gradient descent, how neural networks learn https://www.youtube.com/watch?v=IHZwWFHWa-w
3. What is backpropagation really doing https://www.youtube.com/watch?v=Ilg3gGewQ5U
4. Introduction to Deep Learning
https://www.youtube.com/watch?v=5tvmMX8r_OM&list=PLtBw6njQRU-
rwp5__7C0oIVt26ZgjG9NI&index=1
Link Pertanyaan Modul Empat Belas
Bahan Tayang
Power Point
Link room Pelatihan dan Jadwal live sesi bersama instruktur
Zoom
Penilaian
Komposisi penilaian Tugas Membangun Model: Nilai 100
Target Penyelesaian Modul Empat Belas
1 hari/sampai 6JP
14. modul ta dts2021   model ann 14 juli 2021-v2

More Related Content

What's hot

Proses Data Mining
Proses Data MiningProses Data Mining
Proses Data Miningdedidarwis
Β 
Data Mining - Naive Bayes
Data Mining - Naive BayesData Mining - Naive Bayes
Data Mining - Naive Bayesdedidarwis
Β 
12. komunikasi data
12. komunikasi data12. komunikasi data
12. komunikasi dataRumah Belajar
Β 
16.modul melakukan deployment model (final) v1 1
16.modul melakukan deployment model (final) v1 116.modul melakukan deployment model (final) v1 1
16.modul melakukan deployment model (final) v1 1ArdianDwiPraba
Β 
Modul 8 - Jaringan Syaraf Tiruan (JST)
Modul 8 - Jaringan Syaraf Tiruan (JST)Modul 8 - Jaringan Syaraf Tiruan (JST)
Modul 8 - Jaringan Syaraf Tiruan (JST)ahmad haidaroh
Β 
Pertemuan 11 Kualitas Data
Pertemuan 11 Kualitas DataPertemuan 11 Kualitas Data
Pertemuan 11 Kualitas DataEndang Retnoningsih
Β 
9 dts-transformasi data-univ-gunadarma
9 dts-transformasi data-univ-gunadarma9 dts-transformasi data-univ-gunadarma
9 dts-transformasi data-univ-gunadarmaArdianDwiPraba
Β 
Soal essay basis data xi
Soal essay basis data xiSoal essay basis data xi
Soal essay basis data xitia irma
Β 
Data Management (Data Mining Klasifikasi)
Data Management (Data Mining Klasifikasi)Data Management (Data Mining Klasifikasi)
Data Management (Data Mining Klasifikasi)Adam Mukharil Bachtiar
Β 
Materi Data Mining - C4.5
Materi Data Mining - C4.5Materi Data Mining - C4.5
Materi Data Mining - C4.5dedidarwis
Β 
Kd4 fungsi fungsi agregasi
Kd4 fungsi fungsi agregasiKd4 fungsi fungsi agregasi
Kd4 fungsi fungsi agregasiDesty Yani
Β 
Data mining 1 pengantar
Data mining 1   pengantarData mining 1   pengantar
Data mining 1 pengantarIrwansyahSaputra1
Β 
Algoritma untuk mengecek bilangan di antara 2 bilangan masukan
Algoritma untuk mengecek bilangan di antara 2 bilangan masukanAlgoritma untuk mengecek bilangan di antara 2 bilangan masukan
Algoritma untuk mengecek bilangan di antara 2 bilangan masukanputraindo
Β 
Jawaban Struktur data soal-latihan
Jawaban Struktur data soal-latihanJawaban Struktur data soal-latihan
Jawaban Struktur data soal-latihanBina Sarana Informatika
Β 
Analisa pengembangan sistem aplikasi krl access
Analisa pengembangan sistem aplikasi krl accessAnalisa pengembangan sistem aplikasi krl access
Analisa pengembangan sistem aplikasi krl accessAnisa Intan Damayanti
Β 
Mengapa kita memerlukan basis data
Mengapa kita memerlukan basis dataMengapa kita memerlukan basis data
Mengapa kita memerlukan basis dataAhmad Saktia Yunus
Β 
Slide Sidang Skripsi Sistem Informasi
Slide Sidang Skripsi Sistem InformasiSlide Sidang Skripsi Sistem Informasi
Slide Sidang Skripsi Sistem InformasiIsmi Islamia
Β 

What's hot (20)

Proses Data Mining
Proses Data MiningProses Data Mining
Proses Data Mining
Β 
Data Mining - Naive Bayes
Data Mining - Naive BayesData Mining - Naive Bayes
Data Mining - Naive Bayes
Β 
12. komunikasi data
12. komunikasi data12. komunikasi data
12. komunikasi data
Β 
Logika fuzzy
Logika fuzzyLogika fuzzy
Logika fuzzy
Β 
16.modul melakukan deployment model (final) v1 1
16.modul melakukan deployment model (final) v1 116.modul melakukan deployment model (final) v1 1
16.modul melakukan deployment model (final) v1 1
Β 
Modul 8 - Jaringan Syaraf Tiruan (JST)
Modul 8 - Jaringan Syaraf Tiruan (JST)Modul 8 - Jaringan Syaraf Tiruan (JST)
Modul 8 - Jaringan Syaraf Tiruan (JST)
Β 
Pertemuan 11 Kualitas Data
Pertemuan 11 Kualitas DataPertemuan 11 Kualitas Data
Pertemuan 11 Kualitas Data
Β 
9 dts-transformasi data-univ-gunadarma
9 dts-transformasi data-univ-gunadarma9 dts-transformasi data-univ-gunadarma
9 dts-transformasi data-univ-gunadarma
Β 
20731 21 visualisasi data
20731 21 visualisasi data20731 21 visualisasi data
20731 21 visualisasi data
Β 
Soal essay basis data xi
Soal essay basis data xiSoal essay basis data xi
Soal essay basis data xi
Β 
Data Management (Data Mining Klasifikasi)
Data Management (Data Mining Klasifikasi)Data Management (Data Mining Klasifikasi)
Data Management (Data Mining Klasifikasi)
Β 
Materi Data Mining - C4.5
Materi Data Mining - C4.5Materi Data Mining - C4.5
Materi Data Mining - C4.5
Β 
Kd4 fungsi fungsi agregasi
Kd4 fungsi fungsi agregasiKd4 fungsi fungsi agregasi
Kd4 fungsi fungsi agregasi
Β 
Data mining 1 pengantar
Data mining 1   pengantarData mining 1   pengantar
Data mining 1 pengantar
Β 
Algoritma untuk mengecek bilangan di antara 2 bilangan masukan
Algoritma untuk mengecek bilangan di antara 2 bilangan masukanAlgoritma untuk mengecek bilangan di antara 2 bilangan masukan
Algoritma untuk mengecek bilangan di antara 2 bilangan masukan
Β 
Jawaban Struktur data soal-latihan
Jawaban Struktur data soal-latihanJawaban Struktur data soal-latihan
Jawaban Struktur data soal-latihan
Β 
12 regresi
12 regresi12 regresi
12 regresi
Β 
Analisa pengembangan sistem aplikasi krl access
Analisa pengembangan sistem aplikasi krl accessAnalisa pengembangan sistem aplikasi krl access
Analisa pengembangan sistem aplikasi krl access
Β 
Mengapa kita memerlukan basis data
Mengapa kita memerlukan basis dataMengapa kita memerlukan basis data
Mengapa kita memerlukan basis data
Β 
Slide Sidang Skripsi Sistem Informasi
Slide Sidang Skripsi Sistem InformasiSlide Sidang Skripsi Sistem Informasi
Slide Sidang Skripsi Sistem Informasi
Β 

Similar to 14. modul ta dts2021 model ann 14 juli 2021-v2

Online Learning Management System and Analytics using Deep Learning
Online Learning Management System and Analytics using Deep LearningOnline Learning Management System and Analytics using Deep Learning
Online Learning Management System and Analytics using Deep LearningDr. Amarjeet Singh
Β 
C++chapter2671
C++chapter2671C++chapter2671
C++chapter2671AshokBabu49
Β 
files_1570175665_204715750.pdf
files_1570175665_204715750.pdffiles_1570175665_204715750.pdf
files_1570175665_204715750.pdfbeherapravat936
Β 
Dsip and aisc syllabus
Dsip and aisc syllabusDsip and aisc syllabus
Dsip and aisc syllabusVarsha Patil
Β 
Minor Project Synopsis on Data Structure Visualizer
Minor Project Synopsis on Data Structure VisualizerMinor Project Synopsis on Data Structure Visualizer
Minor Project Synopsis on Data Structure VisualizerRonitShrivastava057
Β 
IRJET-Impact of Manual VS Automatic Transfer Switching on Reliability of Powe...
IRJET-Impact of Manual VS Automatic Transfer Switching on Reliability of Powe...IRJET-Impact of Manual VS Automatic Transfer Switching on Reliability of Powe...
IRJET-Impact of Manual VS Automatic Transfer Switching on Reliability of Powe...IRJET Journal
Β 
Automated Image Captioning – Model Based on CNN – GRU Architecture
Automated Image Captioning – Model Based on CNN – GRU ArchitectureAutomated Image Captioning – Model Based on CNN – GRU Architecture
Automated Image Captioning – Model Based on CNN – GRU ArchitectureIRJET Journal
Β 
OPENSKIMR A JOB- AND LEARNINGPLATFORM
OPENSKIMR A JOB- AND LEARNINGPLATFORMOPENSKIMR A JOB- AND LEARNINGPLATFORM
OPENSKIMR A JOB- AND LEARNINGPLATFORMcsandit
Β 
Openskimr A Job and Learning Platform
Openskimr A Job and Learning PlatformOpenskimr A Job and Learning Platform
Openskimr A Job and Learning Platformcscpconf
Β 
Java Developer Working at CSIR-URDIP
Java Developer Working at CSIR-URDIPJava Developer Working at CSIR-URDIP
Java Developer Working at CSIR-URDIPLaxmi Narayan Khatri
Β 
Manish123 CV
Manish123 CVManish123 CV
Manish123 CVManish Saini
Β 
A Hand Book of Visual Basic 6.0.pdf.pdf
A Hand Book of Visual Basic 6.0.pdf.pdfA Hand Book of Visual Basic 6.0.pdf.pdf
A Hand Book of Visual Basic 6.0.pdf.pdfAnn Wera
Β 
2015_CTI_IS-Internet-Development_Module-Description_Final
2015_CTI_IS-Internet-Development_Module-Description_Final2015_CTI_IS-Internet-Development_Module-Description_Final
2015_CTI_IS-Internet-Development_Module-Description_FinalMoses75
Β 
1DS21LVS01-DEEKSHITHA P.pptx
1DS21LVS01-DEEKSHITHA P.pptx1DS21LVS01-DEEKSHITHA P.pptx
1DS21LVS01-DEEKSHITHA P.pptxTcManjunath1
Β 
SE-IT JAVA LAB SYLLABUS
SE-IT JAVA LAB SYLLABUSSE-IT JAVA LAB SYLLABUS
SE-IT JAVA LAB SYLLABUSnikshaikh786
Β 
Presentation_Conversion of Sign language to text.pptx
Presentation_Conversion of Sign language to text.pptxPresentation_Conversion of Sign language to text.pptx
Presentation_Conversion of Sign language to text.pptxsandeep506550
Β 
Performance Comparison between Pytorch and Mindspore
Performance Comparison between Pytorch and MindsporePerformance Comparison between Pytorch and Mindspore
Performance Comparison between Pytorch and Mindsporeijdms
Β 

Similar to 14. modul ta dts2021 model ann 14 juli 2021-v2 (20)

Online Learning Management System and Analytics using Deep Learning
Online Learning Management System and Analytics using Deep LearningOnline Learning Management System and Analytics using Deep Learning
Online Learning Management System and Analytics using Deep Learning
Β 
C++chapter2671
C++chapter2671C++chapter2671
C++chapter2671
Β 
files_1570175665_204715750.pdf
files_1570175665_204715750.pdffiles_1570175665_204715750.pdf
files_1570175665_204715750.pdf
Β 
Dsip and aisc syllabus
Dsip and aisc syllabusDsip and aisc syllabus
Dsip and aisc syllabus
Β 
Minor Project Synopsis on Data Structure Visualizer
Minor Project Synopsis on Data Structure VisualizerMinor Project Synopsis on Data Structure Visualizer
Minor Project Synopsis on Data Structure Visualizer
Β 
IRJET-Impact of Manual VS Automatic Transfer Switching on Reliability of Powe...
IRJET-Impact of Manual VS Automatic Transfer Switching on Reliability of Powe...IRJET-Impact of Manual VS Automatic Transfer Switching on Reliability of Powe...
IRJET-Impact of Manual VS Automatic Transfer Switching on Reliability of Powe...
Β 
Automated Image Captioning – Model Based on CNN – GRU Architecture
Automated Image Captioning – Model Based on CNN – GRU ArchitectureAutomated Image Captioning – Model Based on CNN – GRU Architecture
Automated Image Captioning – Model Based on CNN – GRU Architecture
Β 
OPENSKIMR A JOB- AND LEARNINGPLATFORM
OPENSKIMR A JOB- AND LEARNINGPLATFORMOPENSKIMR A JOB- AND LEARNINGPLATFORM
OPENSKIMR A JOB- AND LEARNINGPLATFORM
Β 
Openskimr A Job and Learning Platform
Openskimr A Job and Learning PlatformOpenskimr A Job and Learning Platform
Openskimr A Job and Learning Platform
Β 
Java Developer Working at CSIR-URDIP
Java Developer Working at CSIR-URDIPJava Developer Working at CSIR-URDIP
Java Developer Working at CSIR-URDIP
Β 
Manish123 CV
Manish123 CVManish123 CV
Manish123 CV
Β 
Gaurav agarwal
Gaurav agarwalGaurav agarwal
Gaurav agarwal
Β 
A Hand Book of Visual Basic 6.0.pdf.pdf
A Hand Book of Visual Basic 6.0.pdf.pdfA Hand Book of Visual Basic 6.0.pdf.pdf
A Hand Book of Visual Basic 6.0.pdf.pdf
Β 
2015_CTI_IS-Internet-Development_Module-Description_Final
2015_CTI_IS-Internet-Development_Module-Description_Final2015_CTI_IS-Internet-Development_Module-Description_Final
2015_CTI_IS-Internet-Development_Module-Description_Final
Β 
Ict in learning
Ict in learningIct in learning
Ict in learning
Β 
1DS21LVS01-DEEKSHITHA P.pptx
1DS21LVS01-DEEKSHITHA P.pptx1DS21LVS01-DEEKSHITHA P.pptx
1DS21LVS01-DEEKSHITHA P.pptx
Β 
resume
resumeresume
resume
Β 
SE-IT JAVA LAB SYLLABUS
SE-IT JAVA LAB SYLLABUSSE-IT JAVA LAB SYLLABUS
SE-IT JAVA LAB SYLLABUS
Β 
Presentation_Conversion of Sign language to text.pptx
Presentation_Conversion of Sign language to text.pptxPresentation_Conversion of Sign language to text.pptx
Presentation_Conversion of Sign language to text.pptx
Β 
Performance Comparison between Pytorch and Mindspore
Performance Comparison between Pytorch and MindsporePerformance Comparison between Pytorch and Mindspore
Performance Comparison between Pytorch and Mindspore
Β 

More from ArdianDwiPraba

15. modul model evaluasi v 0.6
15. modul model evaluasi v 0.615. modul model evaluasi v 0.6
15. modul model evaluasi v 0.6ArdianDwiPraba
Β 
10 feature engineering-univ-gunadarma
10 feature engineering-univ-gunadarma10 feature engineering-univ-gunadarma
10 feature engineering-univ-gunadarmaArdianDwiPraba
Β 
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v27. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2ArdianDwiPraba
Β 
6 data-understanding-v2
6 data-understanding-v26 data-understanding-v2
6 data-understanding-v2ArdianDwiPraba
Β 
3. metodologi data science dts ta v.1
3. metodologi data science dts ta v.13. metodologi data science dts ta v.1
3. metodologi data science dts ta v.1ArdianDwiPraba
Β 
4. tools proyek data science dts ta v.2
4. tools proyek data science dts ta v.24. tools proyek data science dts ta v.2
4. tools proyek data science dts ta v.2ArdianDwiPraba
Β 
5 ta-2021-05-business-understanding-modul-ariw-2021-07-17
5 ta-2021-05-business-understanding-modul-ariw-2021-07-175 ta-2021-05-business-understanding-modul-ariw-2021-07-17
5 ta-2021-05-business-understanding-modul-ariw-2021-07-17ArdianDwiPraba
Β 

More from ArdianDwiPraba (8)

15. modul model evaluasi v 0.6
15. modul model evaluasi v 0.615. modul model evaluasi v 0.6
15. modul model evaluasi v 0.6
Β 
10 feature engineering-univ-gunadarma
10 feature engineering-univ-gunadarma10 feature engineering-univ-gunadarma
10 feature engineering-univ-gunadarma
Β 
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v27. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
Β 
6 data-understanding-v2
6 data-understanding-v26 data-understanding-v2
6 data-understanding-v2
Β 
1 modul 1
1 modul 11 modul 1
1 modul 1
Β 
3. metodologi data science dts ta v.1
3. metodologi data science dts ta v.13. metodologi data science dts ta v.1
3. metodologi data science dts ta v.1
Β 
4. tools proyek data science dts ta v.2
4. tools proyek data science dts ta v.24. tools proyek data science dts ta v.2
4. tools proyek data science dts ta v.2
Β 
5 ta-2021-05-business-understanding-modul-ariw-2021-07-17
5 ta-2021-05-business-understanding-modul-ariw-2021-07-175 ta-2021-05-business-understanding-modul-ariw-2021-07-17
5 ta-2021-05-business-understanding-modul-ariw-2021-07-17
Β 

Recently uploaded

Call Girls Raipur Just Call 9630942363 Top Class Call Girl Service Available
Call Girls Raipur Just Call 9630942363 Top Class Call Girl Service AvailableCall Girls Raipur Just Call 9630942363 Top Class Call Girl Service Available
Call Girls Raipur Just Call 9630942363 Top Class Call Girl Service AvailableGENUINE ESCORT AGENCY
Β 
Call Girls Service Jaipur {8445551418} ❀️VVIP BHAWNA Call Girl in Jaipur Raja...
Call Girls Service Jaipur {8445551418} ❀️VVIP BHAWNA Call Girl in Jaipur Raja...Call Girls Service Jaipur {8445551418} ❀️VVIP BHAWNA Call Girl in Jaipur Raja...
Call Girls Service Jaipur {8445551418} ❀️VVIP BHAWNA Call Girl in Jaipur Raja...parulsinha
Β 
Top Rated Hyderabad Call Girls Erragadda ⟟ 9332606886 ⟟ Call Me For Genuine ...
Top Rated  Hyderabad Call Girls Erragadda ⟟ 9332606886 ⟟ Call Me For Genuine ...Top Rated  Hyderabad Call Girls Erragadda ⟟ 9332606886 ⟟ Call Me For Genuine ...
Top Rated Hyderabad Call Girls Erragadda ⟟ 9332606886 ⟟ Call Me For Genuine ...chandars293
Β 
Top Quality Call Girl Service Kalyanpur 6378878445 Available Call Girls Any Time
Top Quality Call Girl Service Kalyanpur 6378878445 Available Call Girls Any TimeTop Quality Call Girl Service Kalyanpur 6378878445 Available Call Girls Any Time
Top Quality Call Girl Service Kalyanpur 6378878445 Available Call Girls Any TimeCall Girls Delhi
Β 
Coimbatore Call Girls in Coimbatore 7427069034 genuine Escort Service Girl 10...
Coimbatore Call Girls in Coimbatore 7427069034 genuine Escort Service Girl 10...Coimbatore Call Girls in Coimbatore 7427069034 genuine Escort Service Girl 10...
Coimbatore Call Girls in Coimbatore 7427069034 genuine Escort Service Girl 10...chennailover
Β 
All Time Service Available Call Girls Marine Drive πŸ“³ 9820252231 For 18+ VIP C...
All Time Service Available Call Girls Marine Drive πŸ“³ 9820252231 For 18+ VIP C...All Time Service Available Call Girls Marine Drive πŸ“³ 9820252231 For 18+ VIP C...
All Time Service Available Call Girls Marine Drive πŸ“³ 9820252231 For 18+ VIP C...Arohi Goyal
Β 
Best Rate (Guwahati ) Call Girls Guwahati ⟟ 8617370543 ⟟ High Class Call Girl...
Best Rate (Guwahati ) Call Girls Guwahati ⟟ 8617370543 ⟟ High Class Call Girl...Best Rate (Guwahati ) Call Girls Guwahati ⟟ 8617370543 ⟟ High Class Call Girl...
Best Rate (Guwahati ) Call Girls Guwahati ⟟ 8617370543 ⟟ High Class Call Girl...Dipal Arora
Β 
Models Call Girls In Hyderabad 9630942363 Hyderabad Call Girl & Hyderabad Esc...
Models Call Girls In Hyderabad 9630942363 Hyderabad Call Girl & Hyderabad Esc...Models Call Girls In Hyderabad 9630942363 Hyderabad Call Girl & Hyderabad Esc...
Models Call Girls In Hyderabad 9630942363 Hyderabad Call Girl & Hyderabad Esc...GENUINE ESCORT AGENCY
Β 
9630942363 Genuine Call Girls In Ahmedabad Gujarat Call Girls Service
9630942363 Genuine Call Girls In Ahmedabad Gujarat Call Girls Service9630942363 Genuine Call Girls In Ahmedabad Gujarat Call Girls Service
9630942363 Genuine Call Girls In Ahmedabad Gujarat Call Girls ServiceGENUINE ESCORT AGENCY
Β 
VIP Hyderabad Call Girls Bahadurpally 7877925207 β‚Ή5000 To 25K With AC Room πŸ’šπŸ˜‹
VIP Hyderabad Call Girls Bahadurpally 7877925207 β‚Ή5000 To 25K With AC Room πŸ’šπŸ˜‹VIP Hyderabad Call Girls Bahadurpally 7877925207 β‚Ή5000 To 25K With AC Room πŸ’šπŸ˜‹
VIP Hyderabad Call Girls Bahadurpally 7877925207 β‚Ή5000 To 25K With AC Room πŸ’šπŸ˜‹TANUJA PANDEY
Β 
Call Girls Hosur Just Call 9630942363 Top Class Call Girl Service Available
Call Girls Hosur Just Call 9630942363 Top Class Call Girl Service AvailableCall Girls Hosur Just Call 9630942363 Top Class Call Girl Service Available
Call Girls Hosur Just Call 9630942363 Top Class Call Girl Service AvailableGENUINE ESCORT AGENCY
Β 
Premium Bangalore Call Girls Jigani Dail 6378878445 Escort Service For Hot Ma...
Premium Bangalore Call Girls Jigani Dail 6378878445 Escort Service For Hot Ma...Premium Bangalore Call Girls Jigani Dail 6378878445 Escort Service For Hot Ma...
Premium Bangalore Call Girls Jigani Dail 6378878445 Escort Service For Hot Ma...tanya dube
Β 
Night 7k to 12k Chennai City Center Call Girls πŸ‘‰πŸ‘‰ 7427069034⭐⭐ 100% Genuine E...
Night 7k to 12k Chennai City Center Call Girls πŸ‘‰πŸ‘‰ 7427069034⭐⭐ 100% Genuine E...Night 7k to 12k Chennai City Center Call Girls πŸ‘‰πŸ‘‰ 7427069034⭐⭐ 100% Genuine E...
Night 7k to 12k Chennai City Center Call Girls πŸ‘‰πŸ‘‰ 7427069034⭐⭐ 100% Genuine E...hotbabesbook
Β 
The Most Attractive Hyderabad Call Girls Kothapet π– ‹ 9332606886 π– ‹ Will You Mis...
The Most Attractive Hyderabad Call Girls Kothapet π– ‹ 9332606886 π– ‹ Will You Mis...The Most Attractive Hyderabad Call Girls Kothapet π– ‹ 9332606886 π– ‹ Will You Mis...
The Most Attractive Hyderabad Call Girls Kothapet π– ‹ 9332606886 π– ‹ Will You Mis...chandars293
Β 
Night 7k to 12k Navi Mumbai Call Girl Photo πŸ‘‰ BOOK NOW 9833363713 πŸ‘ˆ ♀️ night ...
Night 7k to 12k Navi Mumbai Call Girl Photo πŸ‘‰ BOOK NOW 9833363713 πŸ‘ˆ ♀️ night ...Night 7k to 12k Navi Mumbai Call Girl Photo πŸ‘‰ BOOK NOW 9833363713 πŸ‘ˆ ♀️ night ...
Night 7k to 12k Navi Mumbai Call Girl Photo πŸ‘‰ BOOK NOW 9833363713 πŸ‘ˆ ♀️ night ...aartirawatdelhi
Β 
Saket * Call Girls in Delhi - Phone 9711199012 Escorts Service at 6k to 50k a...
Saket * Call Girls in Delhi - Phone 9711199012 Escorts Service at 6k to 50k a...Saket * Call Girls in Delhi - Phone 9711199012 Escorts Service at 6k to 50k a...
Saket * Call Girls in Delhi - Phone 9711199012 Escorts Service at 6k to 50k a...BhumiSaxena1
Β 
Russian Call Girls Service Jaipur {8445551418} ❀️PALLAVI VIP Jaipur Call Gir...
Russian Call Girls Service  Jaipur {8445551418} ❀️PALLAVI VIP Jaipur Call Gir...Russian Call Girls Service  Jaipur {8445551418} ❀️PALLAVI VIP Jaipur Call Gir...
Russian Call Girls Service Jaipur {8445551418} ❀️PALLAVI VIP Jaipur Call Gir...parulsinha
Β 
Call Girls Rishikesh Just Call 9667172968 Top Class Call Girl Service Available
Call Girls Rishikesh Just Call 9667172968 Top Class Call Girl Service AvailableCall Girls Rishikesh Just Call 9667172968 Top Class Call Girl Service Available
Call Girls Rishikesh Just Call 9667172968 Top Class Call Girl Service Availableperfect solution
Β 
Russian Call Girls Lucknow Just Call πŸ‘‰πŸ‘‰7877925207 Top Class Call Girl Service...
Russian Call Girls Lucknow Just Call πŸ‘‰πŸ‘‰7877925207 Top Class Call Girl Service...Russian Call Girls Lucknow Just Call πŸ‘‰πŸ‘‰7877925207 Top Class Call Girl Service...
Russian Call Girls Lucknow Just Call πŸ‘‰πŸ‘‰7877925207 Top Class Call Girl Service...adilkhan87451
Β 
Call Girls Jaipur Just Call 9521753030 Top Class Call Girl Service Available
Call Girls Jaipur Just Call 9521753030 Top Class Call Girl Service AvailableCall Girls Jaipur Just Call 9521753030 Top Class Call Girl Service Available
Call Girls Jaipur Just Call 9521753030 Top Class Call Girl Service AvailableJanvi Singh
Β 

Recently uploaded (20)

Call Girls Raipur Just Call 9630942363 Top Class Call Girl Service Available
Call Girls Raipur Just Call 9630942363 Top Class Call Girl Service AvailableCall Girls Raipur Just Call 9630942363 Top Class Call Girl Service Available
Call Girls Raipur Just Call 9630942363 Top Class Call Girl Service Available
Β 
Call Girls Service Jaipur {8445551418} ❀️VVIP BHAWNA Call Girl in Jaipur Raja...
Call Girls Service Jaipur {8445551418} ❀️VVIP BHAWNA Call Girl in Jaipur Raja...Call Girls Service Jaipur {8445551418} ❀️VVIP BHAWNA Call Girl in Jaipur Raja...
Call Girls Service Jaipur {8445551418} ❀️VVIP BHAWNA Call Girl in Jaipur Raja...
Β 
Top Rated Hyderabad Call Girls Erragadda ⟟ 9332606886 ⟟ Call Me For Genuine ...
Top Rated  Hyderabad Call Girls Erragadda ⟟ 9332606886 ⟟ Call Me For Genuine ...Top Rated  Hyderabad Call Girls Erragadda ⟟ 9332606886 ⟟ Call Me For Genuine ...
Top Rated Hyderabad Call Girls Erragadda ⟟ 9332606886 ⟟ Call Me For Genuine ...
Β 
Top Quality Call Girl Service Kalyanpur 6378878445 Available Call Girls Any Time
Top Quality Call Girl Service Kalyanpur 6378878445 Available Call Girls Any TimeTop Quality Call Girl Service Kalyanpur 6378878445 Available Call Girls Any Time
Top Quality Call Girl Service Kalyanpur 6378878445 Available Call Girls Any Time
Β 
Coimbatore Call Girls in Coimbatore 7427069034 genuine Escort Service Girl 10...
Coimbatore Call Girls in Coimbatore 7427069034 genuine Escort Service Girl 10...Coimbatore Call Girls in Coimbatore 7427069034 genuine Escort Service Girl 10...
Coimbatore Call Girls in Coimbatore 7427069034 genuine Escort Service Girl 10...
Β 
All Time Service Available Call Girls Marine Drive πŸ“³ 9820252231 For 18+ VIP C...
All Time Service Available Call Girls Marine Drive πŸ“³ 9820252231 For 18+ VIP C...All Time Service Available Call Girls Marine Drive πŸ“³ 9820252231 For 18+ VIP C...
All Time Service Available Call Girls Marine Drive πŸ“³ 9820252231 For 18+ VIP C...
Β 
Best Rate (Guwahati ) Call Girls Guwahati ⟟ 8617370543 ⟟ High Class Call Girl...
Best Rate (Guwahati ) Call Girls Guwahati ⟟ 8617370543 ⟟ High Class Call Girl...Best Rate (Guwahati ) Call Girls Guwahati ⟟ 8617370543 ⟟ High Class Call Girl...
Best Rate (Guwahati ) Call Girls Guwahati ⟟ 8617370543 ⟟ High Class Call Girl...
Β 
Models Call Girls In Hyderabad 9630942363 Hyderabad Call Girl & Hyderabad Esc...
Models Call Girls In Hyderabad 9630942363 Hyderabad Call Girl & Hyderabad Esc...Models Call Girls In Hyderabad 9630942363 Hyderabad Call Girl & Hyderabad Esc...
Models Call Girls In Hyderabad 9630942363 Hyderabad Call Girl & Hyderabad Esc...
Β 
9630942363 Genuine Call Girls In Ahmedabad Gujarat Call Girls Service
9630942363 Genuine Call Girls In Ahmedabad Gujarat Call Girls Service9630942363 Genuine Call Girls In Ahmedabad Gujarat Call Girls Service
9630942363 Genuine Call Girls In Ahmedabad Gujarat Call Girls Service
Β 
VIP Hyderabad Call Girls Bahadurpally 7877925207 β‚Ή5000 To 25K With AC Room πŸ’šπŸ˜‹
VIP Hyderabad Call Girls Bahadurpally 7877925207 β‚Ή5000 To 25K With AC Room πŸ’šπŸ˜‹VIP Hyderabad Call Girls Bahadurpally 7877925207 β‚Ή5000 To 25K With AC Room πŸ’šπŸ˜‹
VIP Hyderabad Call Girls Bahadurpally 7877925207 β‚Ή5000 To 25K With AC Room πŸ’šπŸ˜‹
Β 
Call Girls Hosur Just Call 9630942363 Top Class Call Girl Service Available
Call Girls Hosur Just Call 9630942363 Top Class Call Girl Service AvailableCall Girls Hosur Just Call 9630942363 Top Class Call Girl Service Available
Call Girls Hosur Just Call 9630942363 Top Class Call Girl Service Available
Β 
Premium Bangalore Call Girls Jigani Dail 6378878445 Escort Service For Hot Ma...
Premium Bangalore Call Girls Jigani Dail 6378878445 Escort Service For Hot Ma...Premium Bangalore Call Girls Jigani Dail 6378878445 Escort Service For Hot Ma...
Premium Bangalore Call Girls Jigani Dail 6378878445 Escort Service For Hot Ma...
Β 
Night 7k to 12k Chennai City Center Call Girls πŸ‘‰πŸ‘‰ 7427069034⭐⭐ 100% Genuine E...
Night 7k to 12k Chennai City Center Call Girls πŸ‘‰πŸ‘‰ 7427069034⭐⭐ 100% Genuine E...Night 7k to 12k Chennai City Center Call Girls πŸ‘‰πŸ‘‰ 7427069034⭐⭐ 100% Genuine E...
Night 7k to 12k Chennai City Center Call Girls πŸ‘‰πŸ‘‰ 7427069034⭐⭐ 100% Genuine E...
Β 
The Most Attractive Hyderabad Call Girls Kothapet π– ‹ 9332606886 π– ‹ Will You Mis...
The Most Attractive Hyderabad Call Girls Kothapet π– ‹ 9332606886 π– ‹ Will You Mis...The Most Attractive Hyderabad Call Girls Kothapet π– ‹ 9332606886 π– ‹ Will You Mis...
The Most Attractive Hyderabad Call Girls Kothapet π– ‹ 9332606886 π– ‹ Will You Mis...
Β 
Night 7k to 12k Navi Mumbai Call Girl Photo πŸ‘‰ BOOK NOW 9833363713 πŸ‘ˆ ♀️ night ...
Night 7k to 12k Navi Mumbai Call Girl Photo πŸ‘‰ BOOK NOW 9833363713 πŸ‘ˆ ♀️ night ...Night 7k to 12k Navi Mumbai Call Girl Photo πŸ‘‰ BOOK NOW 9833363713 πŸ‘ˆ ♀️ night ...
Night 7k to 12k Navi Mumbai Call Girl Photo πŸ‘‰ BOOK NOW 9833363713 πŸ‘ˆ ♀️ night ...
Β 
Saket * Call Girls in Delhi - Phone 9711199012 Escorts Service at 6k to 50k a...
Saket * Call Girls in Delhi - Phone 9711199012 Escorts Service at 6k to 50k a...Saket * Call Girls in Delhi - Phone 9711199012 Escorts Service at 6k to 50k a...
Saket * Call Girls in Delhi - Phone 9711199012 Escorts Service at 6k to 50k a...
Β 
Russian Call Girls Service Jaipur {8445551418} ❀️PALLAVI VIP Jaipur Call Gir...
Russian Call Girls Service  Jaipur {8445551418} ❀️PALLAVI VIP Jaipur Call Gir...Russian Call Girls Service  Jaipur {8445551418} ❀️PALLAVI VIP Jaipur Call Gir...
Russian Call Girls Service Jaipur {8445551418} ❀️PALLAVI VIP Jaipur Call Gir...
Β 
Call Girls Rishikesh Just Call 9667172968 Top Class Call Girl Service Available
Call Girls Rishikesh Just Call 9667172968 Top Class Call Girl Service AvailableCall Girls Rishikesh Just Call 9667172968 Top Class Call Girl Service Available
Call Girls Rishikesh Just Call 9667172968 Top Class Call Girl Service Available
Β 
Russian Call Girls Lucknow Just Call πŸ‘‰πŸ‘‰7877925207 Top Class Call Girl Service...
Russian Call Girls Lucknow Just Call πŸ‘‰πŸ‘‰7877925207 Top Class Call Girl Service...Russian Call Girls Lucknow Just Call πŸ‘‰πŸ‘‰7877925207 Top Class Call Girl Service...
Russian Call Girls Lucknow Just Call πŸ‘‰πŸ‘‰7877925207 Top Class Call Girl Service...
Β 
Call Girls Jaipur Just Call 9521753030 Top Class Call Girl Service Available
Call Girls Jaipur Just Call 9521753030 Top Class Call Girl Service AvailableCall Girls Jaipur Just Call 9521753030 Top Class Call Girl Service Available
Call Girls Jaipur Just Call 9521753030 Top Class Call Girl Service Available
Β 

14. modul ta dts2021 model ann 14 juli 2021-v2

  • 1. KATA PENGANTAR Era Digitalisasi pada Industri 4.0 di Indonesia saat ini dihadapkan pada tantangan hadirnya permintaan dan penawaran talenta digital dalam mendukung perkembangan ekosistem industri teknologi. Tantangan tersebut perlu dihadapi salah satunya melalui kegiatan inovasi dan inisiasi dari berbagai pihak dalam memajukan talenta digital Indonesia, baik dari pemerintah maupun mitra kerja pemerintah yang dapat menyiapkan angkatan kerja muda sebagai talenta digital Indonesia. Kementerian Komunikasi dan Informatika melalui Badan Penelitian dan Pengembangan Sumber Daya Manusia sejak tahun 2018-2019, telah menginisiasi Program Digital Talent Scholarship yang telah berhasil dianugerahkan kepada 26.000 penerima pelatihan di bidang teknologi informasi dan komunikasi. Program Digital Talent Scholarship ini ditujukan untuk memberikan pelatihan dan sertifikasi tema-tema bidang teknologi informasi dan komunikasi, diharapkan menjadi bagian untuk memenuhi permintaan dan penawaran talenta digital Indonesia. Tahun ini, Program Digital Talent Scholarship menargetkan pelatihan peningkatan kompetensi bagi 60.000 peserta yang bertujuan untuk meningkatkan keterampilan dan daya saing SDM bidang teknologi informasi dan komunikasi sebagai bagian dari program pembangunan prioritas nasional. Program pelatihan DTS 2021 ditujukan untuk meningkatkan keterampilan, keahlian angkatan kerja muda Indonesia, masyarakat umum dan aparatur sipil negara di bidang teknologi informasi dan komunikasi sehingga dapat meningkatkan produktivitas dan daya saing bangsa di era Industri 4.0. Program DTS 2021 secara garis besar dibagi menjadi Tujuh akademi, yaitu: Fresh Graduate Academy (FGA), Program pelatihan berbasis kompetensi bersama GlobalTech yang ditujukan kepada peserta pelatihan bagi lulusan S1 bidang TIK dan MIPA, dan terbuka bagi penyandang disabilitas; Vocational School Graduate Academy (VSGA), Program pelatihan berbasis kompetensi nasional yang ditujukan kepada peserta pelatihan bagi lulusan SMK dan Pendidikan Vokasi bidang TI, Telekomunikasi, Desain, dan Multimedia; Coding Teacher Academy (CTA), Program pelatihan merupakan program pelatihan pengembangan sumberdaya manusia yang ditujukan kepada peserta pelatihan bagi Guru setingkat SMA/SMK/MA/SMP/SD di bidang pemrograman. Online Academy (OA), Program pelatihan OA merupakan program pelatihan Online di bidang Teknologi Informasi yang ditujukan kepada peserta pelatihan bagi Masyarakat umum, ASN, mahasiswa, dan pelaku industri; Thematic Academy (TA), Program pelatihan TA merupakan program pelatihan multisektor bagi pengembangan sumberdaya manusia yang ditujukan kepada peserta pelatihan dari jenjang dan multidisiplin yang berbeda; Regional Development Academy (RDA), Program pelatihan RDA merupakan program pelatihan pengembangan sumberdaya manusia yang ditujukan untuk meningkatkan kompetensi ASN di Kawasan Prioritas Pariwisata dan 122 Kabupaten Prioritas Pembangunan. Digital Entrepreneurship Academy (DEA), Program pelatihan DEA merupakan program pelatihan pengembangan sumberdaya manusia yang ditujukan kepada talenta digital di bidang Usaha Mikro, Kecil, dan Menengah (UMKM). Selamat mengikuti Pelatihan Digital Talent Scholarship, mari persiapkan diri kita menjadi talenta digital Indonesia. Jakarta, 24 Februari 2021 Kepala Badan Penelitian dan Pengembangan Sumber Daya Manusia Kementerian Komunikasi dan Informatika Republik Indonesia Dr. Hary Budiarto, M.Kom Pendahuluan
  • 2. Tujuan Pembelajaran A. Tujuan Umum Setelah mempelajari modul ini peserta latih diharapkan mampu Membangun Model (ANN) B. Tujuan Khusus Adapun tujuan mempelajari unit kompetensi melalui buku informasi Pelatihan Data Scientist: Artificial Intelligence untuk Dosen dan Instruktur ini guna memfasilitasi peserta latih sehingga pada akhir pelatihan diharapkan memiliki kemampuan sebagai berikut: 1. Menyiapkan parameter model 1. Menggunakan tools pemodelan Latar belakang Unit kompetensi ini dinilai berdasarkan tingkat kemampuan dalam merancang website. Adapun penilaian dilakukan dengan menggabungkan serangkaian metode untuk menilai kemampuan dan penerapan pengetahuan pendukung penting. Penilaian dilakukan dengan mengacu kepada Kriteria Unjuk Kerja (KUK) dan dilaksanakan di Tempat Uji Kompetensi (TUK), ruang simulasi atau workshop dengan cara: 1.1. Lisan 1.2. Wawancara 1.3. Tes tertulis 1.4. Demonstrasi 1.5. Metode lain yang relevan. Deskripsi Pelatihan Materi ini berisi penjelasan mengenai pembangunan Model (ANN) Kompetensi Dasar A. Mampu mengoperasikan aplikasi Jupiter notebook atau Spyder B. Mampu menormalisasi data set untuk disiapkan sebagai input machine learning Indikator Hasil Belajar Dapat melakukan pemodelan ANN INFORMASI PELATIHAN Akademi Thematic Academy
  • 3. Mitra Pelatihan Kementerian Komunikasi dan Informatika Tema Pelatihan Data Scientist: Artificial Intelligence untuk Dosen dan Instruktur Sertifikasi β€’ Certificate of Attainment; β€’ Sertifikat Kompetensi Associate Data Scientist Persyaratan Sarana Peserta/spesifikasi device Tools/media ajar yang akan digunakan Memiliki laptop/komputer dengan spesifikasi minimal : β€’ RAM minimal 2 GB (disarankan 4 GB) β€’ Laptop dengan 32/64-bit processor β€’ Laptop dengan Operating System Windows 7, 8, 10, MacOS X atau Linux β€’ Laptop dengan konektivitas WiFi dan memiliki Webcam β€’ Akses Internet Dedicated 126 kbps per peserta per perangkat β€’ Memiliki aplikasi Zoom β€’ Memiliki akun Google Colab Aplikasi yang akan di gunakan selamat pelatihan β€’ Spyder β€’ Jupyter notebook Tim Penyusun Dr. Eng. Chastine Fatichah, S.Kom, M.Kom INFORMASI PEMBELAJARAN Unit Kompetensi Materi pembelajaran Kegiatan pembelajaran Durasi Pelatihan Rasio Praktek : Teori Sumber pembelajaran Peserta mampu melakukan proses pemodelan ANN Modul dan Slide pemodelan ANN Daring/Online Live Class 2 JP LMS 4 JP @ 45 Menit 70:30 Materi Pokok Membangun Model ANN Sub Materi Pokok Metode Fully Connected Network Metode Convolutional Network Metode Recurrent Neural Network Penggunaan library sklearn dan keras Model ANN
  • 4. MEMBANGUN MODEL ARTIFICIAL NEURAL NETWORK (ANN) Artificial Neural Network (ANN) merupakan salah satu metode mesin pembelajaran yang terinspirasi oleh cara kerja jaringan saraf di otak manusia dalam menyelesaikan masalah melalui perubahan bobot sinapsisnya. ANN adalah metode supervised learning yang mampu mempelajari pola suatu data dengan menggunakan rekam data di masa lalu sebagai data latih. Pada ANN, terdapat neuron yang terhubung dengan neuron lainnya. Neuron-neuron tersebut akan mentransformasikan informasi yang diterima menuju ke neuron yang lain. Metode ANN merupakan arsitektur Fully Connected Network (FCN) dimana setiap hubungan antar neuron ini terdapat nilai bobot. Arsitektur FCN terdiri dari 3 layer, yaitu input layer, hidden layer, dan output layer. FCN dapat diklasifikasikan menjadi 2 (dua) jenis, yaitu single-layer dan multi-layer. a. Arsitektur single-layer terdiri dari 2 layer, yaitu input dan output. Input layer menerima masukkan, sedangkan output layer memberikan respon berdasarkan masukkan. b. Arsitektur multi-layer seperti pada Gambar 1 memiliki struktur tambahan yaitu hidden layer yang menghubungkan input layer dan output layer. Jumlah hidden layer merepresentasikan tingkat kompleksitas sebuah jaringan, semakin kompleks permasalahan maka akan dibutuhkan semakin banyak jumlah hidden unit. Gambar 1. Arsitektur Multi-layer FCN Jumlah neuron pada input layer merepresentasikan jumlah fitur pada sebuah dataset, jika input berupa data citra maka jumlah neuron sesuai ukuran citra input. Jumlah neuron pada hidden layer umumnya lebih banyak daripada jumlah neuron di output layer. Sedangkan jumlah neuron pada output layer sesuai dengan jumlah kelas pada permasalahan klasifikasi. Pada kasus prediksi dan klasifikasi dua kelas, jumlah neuron pada output layer adalah satu neuron.
  • 5. Gambar 2. Representasi sebuah neuron pada metode ANN Gambar 2 menunjukkan bahwa setiap neuron mempunyai luaran y yang diperoleh dari persamaan linear yaitu penjumlahan dari perkalian input x dan bobot w dan menambahkan bias b. Perhitungan luaran pada setiap neuron dapat dilihat pada persamaan 1. y Μ‚ = π‘Ž(βˆ‘ 𝑀𝑖π‘₯𝑖 π‘š 𝑖=1 + 𝑏) (1) Dimana a adalah fungsi aktivasi. Sebuah neuron pada ANN dapat menyelesaikan permasalahan klasifikasi biner sebagai fungsi pemisah (hyperspace separation) dan binary threshold seperti ditunjukkan pada Gambar 3. Gambar 3. Sebuah neuron dapat menyelesaikan permasalahan klasifikasi biner Permasalahan klasifikasi dapat dikategorikan sebagai: β€’ Permasalahan Linear, misalnya fungsi OR dan AND β€’ Permasalahan Non-Linear, misalnya fungsi XOR Pada ANN, fungsi aktivasi dapat merubah neuron menjadi non-linear. Beberapa contoh fungsi aktivasi yang umum digunakan pada metode ANN sebagai berikut: 1. Fungsi Sigmoid π‘Ž(𝑧) = 1 1+π‘’βˆ’π‘§ (2) 2. Fungsi Gaussian π‘Ž(𝑧) = 1 √2πœ‹πœŽ π‘’βˆ’ 1 2 ( π‘§βˆ’πœ‡ 𝜎 )2 (3) 3. Fungsi Hyperbolic Tangent π‘Ž(𝑧) = π‘’π‘§βˆ’ π‘’βˆ’π‘§ 𝑒𝑧+π‘’βˆ’π‘§ (4) 4. Fungsi Rectified Linear Unit (ReLU) π‘Ž(𝑧) = max (0, 𝑧) (5) Adapun grafik dari fungsi aktivasi dapat dilihat pada Gambar 4.
  • 6. (a) Sigmoid (b) Gaussian (c) Hyperbolic Tangent (d) ReLU Gambar 4. Contoh grafik fungsi aktivasi Pada permasalahan non-linear dan permasalahan yang lebih kompleks, dapat menggunakan arsitektur Multi-layer ANN. Desain Arsitektur ANN Terdiri dari tiga layer yaitu: β€’ input layer β€’ hidden layer β€’ output layer Hubungan antar neuron pada ANN merupakan Fully connected layer. Jumlah hidden layer sebaiknya disesuaikan dengan kompleksitas permasalahan. Jumlah neuron pada hidden layer umumnya lebih banyak daripada jumlah neuron di output layer. Penentuan jumlah neuron pada input layer β€’ Jumlah neuron sesuai dengan jumlah fitur pada data input Penentuan jumlah neuron pada output layer β€’ Jumlah neuron sesuai dengan permasalahan β€’ Pada permasalahan klasifikasi biner dan regresi bisa menggunakan hanya satu neuron β€’ Pada permasalahan klasifikasi multiclass menggunakan jumlah neuron sesuai jumlah label kelasnya, misalnya: 10 neuron pada pengenalan angka Penentuan jumlah hidden layer: β€’ Semakin banyak jumlah layer memerlukan komputasi waktu lebih lama β€’ Jumlah layer sebaiknya disesuaikan dengan kompleksitas permasalahan Penentuan jumlah node (neuron) pada hidden layer:
  • 7. β€’ Semakin banyak jumlah node memungkinkan mempelajari pola yang lebih rumit β€’ Untuk mencegah overfitting sebaiknya menambah jumlah node secara bertahap Contoh desain aristektur Multi-layer ANN untuk pengenalan angka dapat dilihat pada Gambar 5. Gambar 5. Contoh desain arsitektur ANN pada pengenalan angka Proses pembelajaran pada metode ANN adalah proses mendapatkan nilai bobot yang optimal pada setiap koneksi antara neuron yang memenuhi kriteria fungsi obyektif. Fungsi obyektif metode ANN berupa fungsi loss seperti pada persamaan 6. Persaman 7 merupakan fungsi Means square loss dan persamaan 8 merupakan fungsi Cross entropy loss. Fungsi Means square loss umumnya digunakan pada permasalahan regresi, sedangkan pada permasalahan klasifikasi menggunakan fungsi Cross entropy loss. Pada kasus permasalahan klaisifikasi biner, umumnya menggunakan fungsi Binary Cross entropy loss. 𝐽(π‘Š) = 1 𝑛 βˆ‘ β„’(𝑓(π‘₯(𝑖) ; π‘Š), 𝑦(𝑖) ) 𝑛 𝑖=1 (6) 𝐽(π‘Š) = 1 𝑛 βˆ‘ (𝑦(𝑖) βˆ’ 𝑓(π‘₯(𝑖) ; π‘Š)) 2 𝑛 𝑖=1 (7) 𝐽(π‘Š) = 1 𝑛 βˆ‘ 𝑦(𝑖) π‘™π‘œπ‘” (𝑓(π‘₯(𝑖) ; π‘Š)) + (1 βˆ’ 𝑦(𝑖) )π‘™π‘œπ‘” (1 βˆ’ 𝑓(π‘₯(𝑖) ; π‘Š)) 𝑛 𝑖=1 (8) Algoritma Pembelajaran Backpropagation Proses pembelajaran pada ANN bertujuan untuk mendapatkan bobot-bobot yang optimal melalui proses meminimalisasi fungsi obyektif. Algoritma backpropagation merupakan algoritma pembelajaran yang digunakan oleh metode ANN dalam proses mengupdate nilai bobot. Pembelajaran dengan algoritma backpropagation terdiri atas tiga tahap, yaitu (i) feed forward, (ii) propagasi error, dan (iii) pembaruan bobot dan bias. Tahap satu adalah feed forward yaitu menghitung luaran dari semua neuron yang diaktifkan menggunakan suatu fungsi aktivasi. Pada tahap feed forward ini, persamaan 1 digunakan untuk estimasi nilai luaran setiap neuron. Sinyal luaran setiap neuron ini kemudian dikirim ke seluruh neuron pada layer selanjutnya hingga output layer.
  • 8. Tahap kedua adalah menghitung propagate error antara hasil perhitungan nilai luaran pada output layer (nilai prediksi) dengan nilai target yang sudah ditentukan pada data latih. Tahap ketiga adalah mengupdate nilia bobot pada semua layer dengan fungsi tujuan adalah meminimalkan fungsi loss seperti pada persamaan 9 dan 10. π‘Šβˆ— = argmin π‘Š 𝐽(π‘Š) (9) π‘Šβˆ— = argmin π‘Š 1 𝑛 βˆ‘ β„’(𝑓(π‘₯(𝑖) ; π‘Š), 𝑦(𝑖) ) 𝑛 𝑖=1 (10) Algoritma pembelajaran pada metode ANN umumnya menggunakan algoritima backpropagation gradient descent. Algoritma Backpropagation Gradient descent β€’ Inisialisasi bobot secara random β€’ Iterasi sampai konvergen β€’ Hitung gradient, πœ•π½(π‘Š) πœ•π‘Š β€’ Update bobot, π‘Š ← π‘Š βˆ’ πœ‚ πœ•π½(π‘Š) πœ•π‘Š β€’ Mengembalikan nilai bobot Gambar 6. Grafik optimasi nilai bobot dengan fungsi obyektif Algoritma Stochastic Gradient Descent Tahapan Pembelajaran Multi-layer Perceptron ANN
  • 9. Langkah 0 – Inisialisasi bobot, learning rate, maksimum iterasi Langkah 1 – Membaca vektor input X Langkah 2 – Lakukan iterasi (epoch) Langkah 3 – Hitung luaran neuron di hidden layer dan output layer Langkah 4 – Hitung back propagate error (pada output layer dan hidden layer) Langkah 5 – Perbarui semua bobot (pada output layer dan hidden layer) Langkah 6 – Ulangi langkah 3 – 5 hingga bobot konvergen atau maksimum iterasi Langkah 7 – Luaran berupa matrik bobot (pada output layer dan hidden layer) Contoh perhitungan dari penerapan algoritma pembelajaran perceptorn Multi-layer ANN pada kasus operasi logika AND dapat dilihat pada tabel dibawah ini: Strategi Pembelajaran Metode ANN Ada beberapa strategi pembelajaran pada metode ANN untuk menangani beberapa kendala dalam proses pelatihan yaitu: 1. Permasalahan overfitting Overfitting adalah permasalahan yang umum dihadapi pada saat membangun model ANN yaitu kinerja dari data latih lebih tinggi daripada kinerja dari data validasi. Strategi yang bisa dilakukan untuk mencegah overfitting adalah: β€’ regularisasi β€’ melakukan augmentasi data β€’ penggunaan dropout pada saat proses pelatihan β€’ Early stopping 2. Permasalahan kinerja model yang rendah Sumber: MICHAEL NEGNEVITSKY, Artificial Intelligence: A Guide to Intelligent Systems, Second Edition, Addision Wesley, 2005
  • 10. Pada proses pembangunan model terkadang kinerja model masih rendah, sehingga model tersebut belum bisa digunakan untuk proses prediksi pada data uji. Strategi untuk meningkatkan kinerja model yang masih rendah sebagai berikut: β€’ Modifikasi network β€’ Merubah fungsi aktivasi β€’ Menggunakan adaptive learning rate Regularization Regularisasi dilakukan untuk mengurangi generalization error dengan mencegah model lebih kompleks. Penerapan regularisasi dengan cara menambahkan regularization term pada semua parameter (bobot) ke fungsi obyektif. β€’ Regularization L1 norm o Menambahkan sum of the absolute weights sebagai penalty term ke fungsi obyektif β€’ Regularization L2 norm (weight decay) o Menambahkan sum of the squared weights sebagai penalty term ke fungsi obyektif Augmentasi Data Augmentasi data adalah proses memperbanyak variasi data latih, sehingga model yang dihasilkan lebih baik dalam memprediksi data uji. Metode augmentasi data yang digunakan tergantung dari jenis data input. Pada data citra, metode augmentasi yang umum digunakan adalah rotasi, translasi, flip, dan zoom (dapat dilihat pada Gambar 7). Gambar 7. Ilustrasi penggunaan Augmentasi Data Konsep Dropout Dropout adalah cara untuk meregulasi parameter untuk menghindari overfitting sehingga model lebih general. Umumnya dilakukan pada Fully Connected Layer. Selama proses training, setiap iterasi sebelum menghitung gradient dilakukan penentuan neuron yang diset tidak aktif sesuai prosentase dropout p%. Contoh ilustrasi konsep Dropout pada saat proses pelatihan dapat dilihat pada Gambar 8.
  • 11. Gambar 8. Ilustrasi penggunaan Dropout Konsep Early Stopping Iterasi pada saat training dihentikan jika generalization error mulai naik seperti pada Gambar 9. Gambar 9. Ilustrasi penggunaan Early Stopping Adaptive Learning Rate Nilai learning rate berpengaruh pada perhitungan bobot baru, umumnya penggunaan learning rate yang menyesuaikan nilai gradien (adaptive learning rate) menunjukkan kinerja model yang lebih baik. Contoh algoritma adaptive learning rate: β€’ SGD [Kiefer & Wolfowitz, Ann. Math. Statits. 1952] β€’ Adagrad [John Duchi, JMLR 2011] β€’ Adadelta [Matthew D. Zeiler, arXiv 2012] β€’ AdaSecant [Caglar Gulcehre, arXiv 2014] β€’ Adam [Diederik P. Kingma, ICLR 2015] β€’ RMSProp https://www.youtube.com/watch?v=O3sxAc4hxZU Tahapan Implementasi ANN 1. Load data: membaca file data input 2. Split data: membagi data menjadi data latih, data validasi, data uji 3. Define model: merancang arsitektur atau model ANN 4. Compile model: menjalankan model ANN yang sudah dirancang 5. Fit model: membangun model ANN berdasarkan data latih 6. Evaluation model: mengevaluasi model ANN berdasarkan data validasi 7. Prediction: memprediksi output dari data uji menggunakan model ANN yang terbaik
  • 12. TOOLS: Scikit-learn Parameter MLPClassifier: ● hidden_layer size: jumlah neuron di hidden layer ● activation: fungsi aktivasi yang digunakan di hidden layer ● solver: metode adaptive learning rate yang digunakan ● batch_size: ukuran batch ● learning_rate_init: inisialisasi learning rate ● max_iter: maksimum iterasi ● early_stopping: bernilai false jika tidak menerapkan early stopping Contoh implementasi ANN pada dataset Iris menggunakan library Scikit-learn 1. Load Data 2. Split Data from sklearn import datasets iris = datasets.load_iris() X = iris.data y = iris.target
  • 13. 3. Define Model from sklearn.model_selection import train_test_split X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=.10) X_train, X_val, Y_train, Y_val = train_test_split(X_train, Y_train, test_size=.15) print('X_train', X_train.shape) print('X_val', X_val.shape) print('X_test', X_test.shape) from sklearn.neural_network import MLPClassifier mlp = MLPClassifier(hidden_layer_sizes=(64, ), activation='relu’, learning_rate_init=0.001, max_iter=100)
  • 14. 4. Fit Model dan Evaluation Model 5. Prediction TOOLS: TENSOR FLOW DAN KERAS β€’ TensorFlow merupakan end-to-end open-source platform untuk mesin pembelajaran (https://www.tensorflow.org/overview/) β€’ Keras merupakan sebuah deep learning API berbasis Python, berjalan diatas platform TensorFlow. Dimana fokus pengembangan adalah untuk mempercepat proses eksperimen. (https://keras.io/getting_started/) Keras Model Sequential dan Layers Pembangungan model pada Keras dapat dilihat pada link berikut ini: https://keras.io/api/models/ dan https://keras.io/guides/sequential_model/ Contoh pembangunan model Sequential pada Keras seperti berikut ini: atau from sklearn.metrics import accuracy_score mlp.fit(X_train, Y_train) prediksi_val = mlp.predict(X_val) acc_val = accuracy_score(Y_val, prediksi_val) print('Akurasi Validasi Training ANN:', acc_val) from sklearn.metrics import accuracy_score, plot_confusion_matrix prediksi_test = mlp.predict(X_test) acc_test = accuracy_score(Y_test, prediksi_test) print('Akurasi Testing ANN:', acc_test) plot_confusion_matrix(mlp, X_test, Y_test)
  • 15. Contoh implementasi ANN pada dataset Iris menggunakan library Keras 1. Load Data dan Split Data 2. Define Model dan Compile Model 3. Fit Model dan Evaluation Model from sklearn import datasets from sklearn.model_selection import train_test_split from keras.utils import to_categorical iris = datasets.load_iris() X = iris.data y = iris.target X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=.10) X_train, X_val, Y_train, Y_val = train_test_split(X_train, Y_train, test_size=.2) print('X_train', X_train.shape) print('X_val', X_val.shape) print('X_test', X_test.shape) Y_train = to_categorical(Y_train,3) Y_val = to_categorical(Y_val,3) Y_test = to_categorical(Y_test,3) from keras.models import Sequential from keras.layers import Flatten, Dense model = Sequential() model.add(Flatten()) model.add(Dense(64,activation='relu')) model.add(Dense(3,activation='softmax’)) model.compile(optimizer='adam',loss='categorical_crossentropy', metrics=['acc']) model.fit(X_train,Y_train,epochs=64,batch_size=5,validation_data=(X_test,Y_test)) model.summary() loss, accuracy = model.evaluate(X_test, Y_test) print('Akurasi Testing MLP:', accuracy)
  • 16. Contoh Penerapan Arsitektur ANN Pada Permasalahan Pengenalan Angka Arsitektur MLP ANN yang akan dibagun untuk pengenalan angka dari citra tulisan tangan seperti pada Gambar 10. Arsitektur MLP yang digunakan adalah input layer dengan jumlah neuron sesuai ukuran citra input, jumlah neuron pada hidden layer adalah 64, dan jumlah neuron pada output layer adalah 10 sesuai jumlah angka yang akan diklasifikasi. Dataset yang digunakan adalah dataset MNITS Handwritten Digit. Gambar 10. Contoh arsitektur Multi-layer ANN untuk pengenalan angka Dataset MNIST Handwritten Digit dibagi menjadi 3 bagian: β€’ 55,000 training data β€’ 10,000 test data β€’ 5,000 validation data Setiap citra berukuran 28 Γ— 28 pixels dan label kelas berupa one hot encoded. Dibawah ini adalah contoh citra pada dataset MNIST beserta contoh label kelasnya.
  • 17. 1. Load Data 2. Define Model Multi-layer ANN import keras from keras.datasets import mnist (X_train, y_train), (X_test, y_test) = mnist.load_data() X_train = X_train.reshape(-1, 28,28,1) X_test = X_test.reshape(-1, 28,28,1) X_train = X_train.astype('float32') X_test = X_test.astype('float32') X_train /= 255 X_test /= 255 y_train = keras.utils.to_categorical(y_train, 10) y_test = keras.utils.to_categorical(y_test, 10) from keras.models import Sequential from keras.layers import Flatten, Dense model1 = Sequential() model1.add(Flatten()) model1.add(Dense(64,activation='relu')) model1.add(Dense(10,activation='softmax')) 0 [1 0 0 0 0 0 0 0 0 0] 1 [0 1 0 0 0 0 0 0 0 0] 2 [0 0 1 0 0 0 0 0 0 0] 3 [0 0 0 1 0 0 0 0 0 0] 4 [0 0 0 0 1 0 0 0 0 0] 5 [0 0 0 0 0 1 0 0 0 0] 6 [0 0 0 0 0 0 1 0 0 0] 7 [0 0 0 0 0 0 0 1 0 0] 8 [0 0 0 0 0 0 0 0 1 0] 9 [0 0 0 0 0 0 0 0 0 1]
  • 18. 3. Model, Fit Model, Save Model, dan Evaluasi Model Visualiasasi Evaluasi Model 4. Load Model dan Prediction import numpy as np from keras.models import load_model model_simpan = load_model('my_model.h5') pred = model_simpan.predict(X_test) print('label actual:',np.argmax(y_test[30])) print('label prediction:',np.argmax(pred[30])) model1.compile(optimizer='adam',loss='categorical_crossentropy',metrics=['acc']) history = model1.fit(X_train,y_train,epochs=10,batch_size=100,validation_data=(X_test,y_test)) model1.save('my_model1.h5') model1.evaluate(X_test,y_test)
  • 19. Pengantar Deep Learning Pendekatan klasifikasi secara konvensional umumnya melakukan ektraksi fitur secara terpisah kemudian dilanjutkan proses pembelajaran menggunakan metode klasifikasi konvensional (Gambar 11). Kelemahan pendekatan konvensional: ● Memerlukan waktu dan pengetahuan lebih untuk ekstraksi fitur ● Sangat tergantung pada satu domain permasalahan saja sehingga tidak berlaku general Pendekatan klasifikasi berbasis Deep learning mempelajari representasi hirarki (pola fitur) secara otomatis melalui beberapa tahapan proses feature learning. Gambar 11. Ilustrasi konsep machine learning dan deep learning CONVOLUTIONAL NEURAL NETWORK Convolutional Neural Network (CNN) adalah salah satu jenis arsitektur dari ANN untuk memproses data yang memiliki susunan topologi seperti grid (I. Goodfellow, dkk., 2016). Misalnya data time-series merupakan data yang berbentuk grid 1D, yang menyatakan sampel data terhadap satuan waktu. Contoh lain data citra merupakan data grid 2D yang terdiri dari nilai piksel. Penamaan Convolutional karena penggunaan operator konvolusi pada salah satu layer ANN yang menggantikan operasi aljabar matriks biasa. Tahapan pada layer CNN umumnya terbagi menjadi 3 tahap, yaitu: 1) convolution, 2) pooling 3) flatten 4) fully connected layer. Aristektur CNN untuk proses klasifikasi diilustrasikan pada Gambar 12.
  • 20. Gambar 12. Arsitektur Convolutional Neural Network (CNN) Tahap pertama merupakan tahap convolution, ilustrasi proses konvolusi dapat dilihat pada Gambar 13. Pada tahap ini, melakukan operasi konvolusi pada data input dengan kernel. Kernel pada CNN merupakan array multidimensional yang menjadi operator untuk melakukan operasi tertentu dengan array input seperti pada persamaan 11. Nilai yang terdapat pada kernel merupakan nilai yang diperoleh dari hasil learning. Hasil operasi aljabar antara input dengan kernel disebut dengan feature map. Proses operasi antara input dengan kernel ini disebut dengan proses ekstraksi fitur ke dalam feature map. Contoh proses konvolusi pada sebuah citra dapat dilihat pada Gambar 14. (𝐼 βˆ— 𝐾)(𝑖, 𝑗) == βˆ‘ βˆ‘ 𝐼(π‘š, 𝑛)𝐾(𝑖 + π‘š, 𝑗 + 𝑛) 𝑛 π‘š (11) Gambar 13. Ilustrasi proses Konvolusi
  • 21. Gambar 14. Contoh proses Konvolusi pada input citra Tahap kedua merupakan tahap detector yaitu hasil dari tahap sebelumnya dijadikan sebagai input ke dalam suatu fungsi aktivasi misalnya Rectified linear unit (ReLU). Tahap ketiga merupakan tahap pooling yaitu mereduksi dimensi dari input array yang masuk dengan memanfaatkan fungsi maksimum, penjumlahan, atau rata-rata, yang disebut max- pooling, sum-pooling, atau average-pooling. Luaran dari tahapan ini menghasilkan dimensi data menjadi lebih kecil namun tanpa menghilangkan informasi penting dari data yang diterima. Pooling layer yang umum digunakan untuk mengurangi ukuran gambar menjadi lebih kecil (downsample) dan mengekstrak salient features adalah Maximum pooling dan Average pooling. Ilustrasi konsep dari Max-pooling dan Average- pooling dapat dilihat pada Gambar 15. Gambar 15. Contoh proses Pooling pada sebuah feature map Setelah menggunakan beberapa convolutional dan pooling layer, umumnya untuk permasalahan klasifikasi digunakan layer tambahan berupa fully connected layer sebagai tahap 4 yang melakukan proses flattening dari matriks menjadi sebuah vektor, dan selanjutnya digunakan untuk melakukan klasifikasi. Contoh Penerapan Arsitektur CNN Pada Permaslahan Klasifikasi Arsitektur CNN yang akan dibagun untuk pengenalan angka dari citra tulisan tangan seperti pada Gambar 16. Arsitektur CNN yang digunakan adalah input layer dengan jumlah neuron sesuai ukuran citra input, dua convolution layer dengan ukuran filter 3x3 sejumlah 16 dan 32, dua max-pooling layer dengan filter 2x2, sedangkan pada arsitektur FCN menggunakan 64 neuron pada hidden layer dan 10 neuron pada output layer sesuai jumlah angka yang akan diklasifikasi. Dataset yang digunakan adalah dataset MNITS Handwritten Digit.
  • 22. Gambar 16. Contoh Arsitektur CNN untuk pengenalan angka 1. Define Model, Fit Model dan Evaluasi Model CNN from keras.models import Sequential from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense model2 = Sequential() model2.add(Conv2D(16,(3,3),activation='relu',input_shape=(28,28,1),padding='s ame')) model2.add(MaxPooling2D(2,2)) model2.add(Conv2D(32,(3,3),activation='relu',padding='same')) model2.add(MaxPooling2D(2,2)) model2.add(Flatten()) model2.add(Dense(64,activation='relu')) model2.add(Dense(10,activation='softmax’)) model2.summary()
  • 23. 2. Compile Model, Fit Model, Save Model, dan Evaluasi Model CNN 3. Load Model dan Prediction model. Compile(optimizer='adam',loss='categorical_crossentropy',metrics=['acc’]) history = model.fit(X_train,y_train,epochs=10,batch_size=100,validation_data=(X_test,y_ test)) model2.save('my_model2.h5') model.evaluate(X_test,y_test) import numpy as np from keras.models import load_model model_simpan2 = load_model('my_model2.h5') pred = model_simpan2.predict(X_test) print('label actual:',np.argmax(y_test[30])) print('label prediction:',np.argmax(pred[30]))
  • 24. Tipe aplikasi yang menggunakan metode CNN misalnya image classification, object detection, dan instance semantic segmentation seperti pada Gambar 17. Gambar 17. Contoh tipe aplikasi CNN import matplotlib.pyplot as plt epochs = range(10) loss1 = history1.history['loss'] val_loss1 = history1.history['val_loss'] plt.plot(epochs,loss1,'r',label='train loss ANN') plt.plot(epochs,val_loss1,'b',label='val loss ANN’) loss2 = history2.history['loss'] val_loss2 = history2.history['val_loss'] plt.plot(epochs,loss2,'r+',label='train loss CNN') plt.plot(epochs,val_loss2,'b+',label='val loss CNN') plt.legend()
  • 25. TIPE APLIKASI DAN VARIAN ARSITEKTUR CNN Tipe Aplikasi Arsitektur CNN Image Classification β€’ LeNet-5 (1998) β€’ AlexNet (2012) β€’ GoogLeNet/Inception (2014) β€’ VGGNet (2014) β€’ ResNet (2015) Object Detection β€’ R-CNN (2013) β€’ Fast R-CNN (2014) β€’ Faster R-CNN (2015) β€’ Single Shot Detector (SSD) (2016) β€’ YOLO (2016) Semantic (Instance) Segmentation β€’ Fully Convolutional Network (FCN) (2015) β€’ U-Net (2015) β€’ Feature Pyramid Network (FPN) (2016) β€’ Mask R-CNN (2017 β€’ DeepLab (2016), DeepLabv3 (2017), DeepLabv3+ (2018) Generative model β€’ Autoencoders, Variational Autoencoders (VAE) β€’ Generative Adversarial Network (GAN) RECCURENT NEURAL NETWORK Recurrent Neural Netword (RNN) adalah salah satu arsitektur ANN yang mampu merepresentasikan data sequential, misalnya teks, suara, time series, dan sebagainya. RNN berfokus pada sifat data yang mana data sebelumnya mempengaruhi data selanjutnya. Misalnya, diberikan sebuah sequence input x = ( π‘₯1, π‘₯2, π‘₯3.. π‘₯𝑑). Data π‘₯𝑑 dipengaruhi oleh data sebelumnya, ditulis sebagai 𝑃( π‘₯𝑑 | (π‘₯1, π‘₯2, π‘₯3.. π‘₯π‘‘βˆ’1). Ide utamanya adalah memorisasi yaitu mengingat keseluruan sekuens. Sel RNN dapat diilustrasikan pada Gambar 18. Perhitungan hidden state 𝐻 pada waktu ke-t bergantung pada fungsi aktivasi πœ™ dari input pada waktu ke-t (𝑋𝑑), hidden state sebelumnya (π»π‘‘βˆ’1) dan parameter pada ANN bias b. Konsep ini sesuai dengan prinsip recurrent yaitu mengingat kejadian sebelumnya. Persamaan RNN dapat dilihat pada persamaan 12 dan 13. 𝑦 ̂𝑑 = π»π‘‘π‘Šβ„Žπ‘¦ + 𝑏𝑦 (12) 𝐻𝑑 = πœ™(π‘‹π‘‘π‘Šπ‘₯β„Ž + π»π‘‘βˆ’1π‘Šβ„Žβ„Ž + π‘β„Ž) (13) Gambar 19 menunjukkan urutan komputasi RNN pada tiga waktu yang berdekatan. Dalam tahap waktu t, perhitungan hidden state dapat diperlakukan sebagai entri dari lapisan yang terhubung penuh dengan fungsi aktivasi f setelah menggabungkan input Xt dengan hidden state Ht-1 dari waktu sebelumnya. Output dari lapisan yang terhubung penuh adalah hidden state saat ini Ht. Parameter modelnya adalah gabungan dari Wxh dan Whh, dengan bias bh. Hidden state dari waktu saat ini t (Ht) akan berpartisipasi dalam
  • 26. menghitung hidden state Ht+1 dari langkah waktu berikutnya t+1, yang hasilnya akan menjadi input untuk layer output yang terhubung penuh pada waktu saat ini. Gambar 18. Arsitektur Recurrent Neural Network (RNN) Gambar 19. Arsitektur Recurrent Neural Network (RNN) Gambar 20 menunjukkan tipe-tipe arsitektur RNN dan Gambar 21 merupakan contoh penerapan salah satu tipe RNN pada aplikasi analisis sentiment. Contoh-contoh aplikasi dari tipe arsitektur RNN sebagai berikut: a. Many to One: Sentiment classification, Opinion mining, Speech recognition, Automated answer scoring, dsb. b. One to Many: Text generation, Image captioning, dsb. c. Many to Many: Translation, Forecasting, Music generation, Chatbot, dsb. (a) (b) (c) Gambar 20. Tipe arsitektur RNN (a) Many to One (b) One to Many (c) Many to Many
  • 27. Gambar 21. Contoh aplikasi analisis sentiment menggunakan arsitektur RNN Varian Arsitektur RNN Varian dari arsitektur RNN dapat dilihat pada Gambar 22 dan penjelasan setiap arsitektur sebagai berikut: ● Long Short-Term Memory (LSTM) Merupakan salah satu jenis arsitektur RNN yang terdiri dari beberapa unit yaitu input gate, output gate, dan forget gate. LSTM diusulkan untuk mengatasi permasalahan vanishing gradient pada arsitektur RNN. ● Gate Recurrent Unit (GRU) Merupakan simplifikasi dari arsitektur LSTM dengan menggabungkan input gate dan forget gate sehingga jumlah parameter lebih sedikit. ● Independently RNN (IndRNN) Arsitektur RNN dimana setiap neuron dalam satu layer independen dari yang lain ● Bi-directional RNN Merupakan arsitektur RNN menghubungkan dua hidden layer dari arah yang berlawanan ke output yang sama. ● Echo State Network (ESN) Ide dasar ESN adalah untuk membuat jaringan berulang yang terhubung secara acak, yang disebut reservoir. Gambar 22. Varian arsitektur RNN (LSTM, GRU, IndRNN, Bi-directional RNN, ESN) REFERENSI 1. θ™žε°ζ–‡, Feed-Forward Neural Networks, Course slides presentation 2. Andrew Ng, Machine Learning, Course slides presentation 3. Michael Negnevitsky, Artificial Intelligence: A Guide to Intelligent Systems, Second Edition, Addision Wesley, 2005. 4. Hung-yi Lee, Deep Learning Tutorial 5. Alexander Amini, Intro to Deep Learning, MIT 6.S191, 2021
  • 28. Tugas Dan Proyek Pelatihan 1. Implementasi metode Artificial Neural Network (ANN) pada permasalahan klasifikasi a. Download dataset Hepatitis C pada link berikut https://archive.ics.uci.edu/ml/datasets/HCV+data b. Membagi dataset menjadi 3 bagian yaitu data train, data validasi, dan data uji c. Merancang dan membangun model ANN d. Lakukan tuning parameter agar menghasilkan model yang terbaik e. Menampilkan grafik loss train dan validasi dari hasil pembangunan model f. Menampilkan hasil confusion matrix dan akurasi dari data uji. 2. Implementasi metode Convolutional Neural Network (CNN) pada permasalahan klasifikasi yaitu pengenalan karakter Bahasa isyarat a. Download dataset Bahasa isyarat pada link berikut https://www.kaggle.com/ayuraj/asl- dataset b. Membagi dataset menjadi 3 bagian yaitu data train, data validasi, dan data uji dengan prosentase 70%, 20%, dan 10% c. Merancang dan membangun model CNN d. Lakukan tuning parameter agar menghasilkan model yang terbaik e. Menampilkan grafik loss train dan validasi dari hasil pembangunan model f. Menampilkan hasil confusion matrix dan akurasi dari data uji. Link Referensi Modul Empat Belas 1. But what is a neural network? https://www.youtube.com/watch?v=aircAruvnKk 2. Gradient descent, how neural networks learn https://www.youtube.com/watch?v=IHZwWFHWa-w 3. What is backpropagation really doing https://www.youtube.com/watch?v=Ilg3gGewQ5U 4. Introduction to Deep Learning https://www.youtube.com/watch?v=5tvmMX8r_OM&list=PLtBw6njQRU- rwp5__7C0oIVt26ZgjG9NI&index=1 Link Pertanyaan Modul Empat Belas Bahan Tayang Power Point Link room Pelatihan dan Jadwal live sesi bersama instruktur
  • 29. Zoom Penilaian Komposisi penilaian Tugas Membangun Model: Nilai 100 Target Penyelesaian Modul Empat Belas 1 hari/sampai 6JP