Google’s Tensorflow memiliki cara unik untuk memecahkan masalah. Cara unik ini memungkinkan kita untuk memecahkan masalah belajar sangat efisien mesin. Pembelajaran mesin digunakan dalam hampir semua bidang kehidupan dan pekerjaan, tetapi beberapa daerah yang lebih terkenal computer vision, speech recognition, language translations, dan healthcare.
Pada awalnya, perhitungan dalam TensorFlow mungkin tampak sia-sia dan rumit. Tetapi ada alasan untuk itu karena bagaimana TensorFlow memperlakukan komputasi, mengembangkan algoritma yang lebih rumit adalah relatif mudah. Tutorial ini akan membimbing kita melalui pseudocode algoritma TensorFlow.
Pada awalnya, perhitungan dalam TensorFlow mungkin tampak sia-sia dan rumit. Tetapi ada alasan untuk itu karena bagaimana TensorFlow memperlakukan komputasi, mengembangkan algoritma yang lebih rumit adalah relatif mudah. Tutorial ini akan membimbing kita melalui pseudocode algoritma TensorFlow.
Di sini kita akan memperkenalkan aliran umum algoritma TensorFlow. Kebanyakan tutorial akan mengikuti garis besar ini:
1. Import atau menghasilkan dataset
Semua algoritma Machine Learning akan tergantung pada dataset. Pada artikel selanjutnya kita akan menghasilkan data atau menggunakan sumber luar dataset. Kadang-kadang itu lebih baik untuk bergantung pada data yang dihasilkan karena kita hanya ingin tahu hasil yang diharapkan.
2. Mengubah dan menormalisasi data
Biasanya, masukan dataset tidak datang dalam bentuk yang diharapkan TensorFlow jadi kita perlu mengubah TensorFlow mereka menjadi bentuk yang bisa diterima. Data ini biasanya tidak dalam dimensi yang benar atau jenis yang diharapkan oleh algoritma. Kita akan mentransform data sebelum dapat menggunakannya. TensorFlow memiliki fungsi builtin yang dapat menormalisasi data sebagai berikut:
data = tf.nn.batch_norm_with_global_normalization(...)
3. Partisi dataset (train,test and validation sets)
Kita umumnya ingin menguji algoritma pada sets berbeda yang telah dilatih. Juga, banyak algoritma memerlukan hyperparameter tuning, sehingga kita menyisihkan validation set yang ditetapkan untuk menentukan set terbaik hyperparameters.
4. Tetapkan parameter algoritma (hyperparameters)
Algoritma kita biasanya memiliki satu set parameter yang kita jalankan konstan sepanjang prosedur. Misalnya, ini bisa menjadi jumlah iterasi, tingkat belajar atau parameter tetap lainnya yang kita pilih. Hal ini dianggap bentuk yang baik untuk menginisialisasi parameter bersama-sama sehingga pembaca atau pengguna dapat dengan mudah menemukan mereka, sebagai berikut:
learning_rate = 0,01
batch_size = 100
iterasi = 1000
5. Inisialisasi variabel dan pengganti
TensorFlow tergantung pada mengetahui apa yang dapat dan tidak dapat diubah. TensorFlow akan mengubah/menyesuaikan variabel dan berat/bias selama optimasi untuk meminimalkan kehilangan fungsi. Untuk mencapai hal ini, kita feed data melalui placeholders. Kita perlu untuk menginisialisasi kedua variabel dan pengganti dengan ukuran dan jenis, sehingga TensorFlow tahu apa yang diharapkan. TensorFlow juga perlu tahu jenis data yang diharapkan, kita akan menggunakan float32. Lihat kode berikut:
TensorFlow tergantung pada mengetahui apa yang dapat dan tidak dapat diubah. TensorFlow akan mengubah/menyesuaikan variabel dan berat/bias selama optimasi untuk meminimalkan kehilangan fungsi. Untuk mencapai hal ini, kita feed data melalui placeholders. Kita perlu untuk menginisialisasi kedua variabel dan pengganti dengan ukuran dan jenis, sehingga TensorFlow tahu apa yang diharapkan. TensorFlow juga perlu tahu jenis data yang diharapkan, kita akan menggunakan float32. Lihat kode berikut:
a_var = tf.constant(42)
x_input = tf.placeholder (tf.float32, [None, input_size])
y_input = tf.placeholder (tf.float32, [None, num_classes])
6. Mendefinisikan struktur model
Setelah kita memiliki data, dan telah menginisialisasi variabel dan placeholders, kita bisa menentukan model. Hal ini dilakukan dengan membangun sebuah grafik komputasi. TensorFlow memilih operasi dan nilai-nilai harus variabel dan placeholders untuk sampai pada hasil model. Model kita untuk contoh ini akan menjadi suatu model linier:
Setelah kita memiliki data, dan telah menginisialisasi variabel dan placeholders, kita bisa menentukan model. Hal ini dilakukan dengan membangun sebuah grafik komputasi. TensorFlow memilih operasi dan nilai-nilai harus variabel dan placeholders untuk sampai pada hasil model. Model kita untuk contoh ini akan menjadi suatu model linier:
y_pred = tf.add (tf.mul (x_input, weight_matrix), b_matrix)
7. Loss function
Setelah menentukan model, kita harus dapat mengevaluasi output. Ini adalah dimana kita mendeklarasikan loss function. Loss function sangat penting karena itu memberitahu kita seberapa jauh prediksi kita dari nilai yang sebenarnya.
loss = tf.reduce_mean(tf.square(y_actual – y_pred))
8. Inisialisasi dan train model
Sekarang setelah kita memiliki segalanya, kita perlu membuat turunan dari grafik kita, feed pada data melalui placeholder, dan biarkan TensorFlow mengubah variabel untuk memprediksi data pelatihan kita menjadi lebih baik. Berikut ini salah satu cara untuk menginisialisasi
grafik komputasional:
with tf.Session(graph=graph) as session:
...
session.run(...)
...
Kita juga bisa menggunakan :
session = tf.Session(graph=graph) session.run(…)
9. Evaluasi model
Setelah kita membangun dan melatih model, kita harus mengevaluasi model dengan melihat seberapa baik hal itu dengan data baru melalui beberapa kriteria yang ditentukan. Kita mengevaluasi pada set train dan test kemudian evaluasi ini akan memungkinkan kita untuk melihat apakah model adalah underfit atau overfit.
10. Tune hyperparameters
Sebagian besar waktu, kita ingin kembali dan mengubah beberapa hyperparamters, berdasarkan kinerja model. Kita kemudian ulangi langkah sebelumnya dengan hyperparameters berbeda dan mengevaluasi model pada set validasi.
Sebagian besar waktu, kita ingin kembali dan mengubah beberapa hyperparamters, berdasarkan kinerja model. Kita kemudian ulangi langkah sebelumnya dengan hyperparameters berbeda dan mengevaluasi model pada set validasi.
11. Deploy/memprediksi hasil baru
Hal ini juga penting untuk mengetahui bagaimana untuk membuat prediksi pada data baru. Kita dapat melakukan ini dengan semua model kita, setelah kita telah melatih mereka.
How Tensorflow work
Reviewed by Jimmy Pujoseno
on
March 27, 2018
Rating:
Ngeri
ReplyDeletewadauuw
DeleteDahsyatttt
ReplyDelete