Difference between revisions of "Keras: Konsep Secara Umum"

From OnnoWiki
Jump to navigation Jump to search
(Created page with "Getting started: 30 seconds to Keras The core data structure of Keras is a model, a way to organize layers. The simplest type of model is the Sequential model, a linear stack...")
 
 
Line 1: Line 1:
Getting started: 30 seconds to Keras
+
Persiapan: 30 detik Mengenal Keras
  
The core data structure of Keras is a model, a way to organize layers. The simplest type of model is the Sequential model, a linear stack of layers. For more complex architectures, you should use the Keras functional API, which allows to build arbitrary graphs of layers.
+
Inti Struktur data Keras adalah model, cara untuk mengatur lapisan. Jenis model paling sederhana adalah model Sequential, setumpuk linear lapisan. Untuk arsitektur yang lebih kompleks, anda harus menggunakan API fungsional Keras, yang memungkinkan untuk membuat lapisan graph secara bebas.
  
Here is the Sequential model:
+
Berikut adalah model Sequential:
  
 
  from keras.models import Sequential
 
  from keras.models import Sequential
Line 9: Line 9:
 
  model = Sequential()
 
  model = Sequential()
  
Stacking layers is as easy as .add():
+
Menumpuk lapisan sangat mudah dengan .add():
  
 
  from keras.layers import Dense
 
  from keras.layers import Dense
Line 16: Line 16:
 
  model.add(Dense(units=10, activation='softmax'))
 
  model.add(Dense(units=10, activation='softmax'))
  
Once your model looks good, configure its learning process with .compile():
+
Setelah model anda tampak baik, konfigurasi proses learning dengan .compile():
  
 
  model.compile(loss='categorical_crossentropy',
 
  model.compile(loss='categorical_crossentropy',
Line 22: Line 22:
 
               metrics=['accuracy'])
 
               metrics=['accuracy'])
  
If you need to, you can further configure your optimizer. A core principle of Keras is to make things reasonably simple, while allowing the user to be fully in control when they need to (the ultimate control being the easy extensibility of the source code).
+
Jika perlu, anda dapat mengkonfigurasi pengoptimal lebih lanjut. Prinsip inti Keras adalah membuat hal-hal menjadi sederhana, sambil memungkinkan pengguna untuk sepenuhnya mengendalikan ketika mereka perlu (kontrol utama adalah kemudahan ekstensibilitas dari source code).
  
 
  model.compile(loss=keras.losses.categorical_crossentropy,
 
  model.compile(loss=keras.losses.categorical_crossentropy,
 
               optimizer=keras.optimizers.SGD(lr=0.01, momentum=0.9, nesterov=True))
 
               optimizer=keras.optimizers.SGD(lr=0.01, momentum=0.9, nesterov=True))
  
You can now iterate on your training data in batches:
+
Kita sekarang dapat melakukan iteeasi dari training data dalam beberapa batch:
  
 
  # x_train and y_train are Numpy arrays --just like in the Scikit-Learn API.
 
  # x_train and y_train are Numpy arrays --just like in the Scikit-Learn API.
 
  model.fit(x_train, y_train, epochs=5, batch_size=32)
 
  model.fit(x_train, y_train, epochs=5, batch_size=32)
  
Alternatively, you can feed batches to your model manually:
+
Alternatif lain, kita dapat memasukan batch secara manual ke model:
  
 
  model.train_on_batch(x_batch, y_batch)
 
  model.train_on_batch(x_batch, y_batch)
  
Evaluate your performance in one line:
+
Evaluasi performance dalam satu kalimat:
  
 
  loss_and_metrics = model.evaluate(x_test, y_test, batch_size=128)
 
  loss_and_metrics = model.evaluate(x_test, y_test, batch_size=128)
  
Or generate predictions on new data:
+
Atau generate prediksi (per-"dukun"-an) terhadap data:
  
 
  classes = model.predict(x_test, batch_size=128)
 
  classes = model.predict(x_test, batch_size=128)
  
Building a question answering system, an image classification model, a Neural Turing Machine, or any other model is just as fast. The ideas behind deep learning are simple, so why should their implementation be painful?
+
Membangun sistem penjawab pertanyaan, model klasifikasi gambar, Neural Turing Machine, atau model lain sama cepatnya. Gagasan di balik Deep Learning sederhana, jadi mengapa penerapannya harus susah?
 +
 
  
 
==Pranala Menarik==
 
==Pranala Menarik==
  
 
* [[Keras]]
 
* [[Keras]]

Latest revision as of 10:06, 5 August 2019

Persiapan: 30 detik Mengenal Keras

Inti Struktur data Keras adalah model, cara untuk mengatur lapisan. Jenis model paling sederhana adalah model Sequential, setumpuk linear lapisan. Untuk arsitektur yang lebih kompleks, anda harus menggunakan API fungsional Keras, yang memungkinkan untuk membuat lapisan graph secara bebas.

Berikut adalah model Sequential:

from keras.models import Sequential
model = Sequential()

Menumpuk lapisan sangat mudah dengan .add():

from keras.layers import Dense

model.add(Dense(units=64, activation='relu', input_dim=100))
model.add(Dense(units=10, activation='softmax'))

Setelah model anda tampak baik, konfigurasi proses learning dengan .compile():

model.compile(loss='categorical_crossentropy',
              optimizer='sgd',
              metrics=['accuracy'])

Jika perlu, anda dapat mengkonfigurasi pengoptimal lebih lanjut. Prinsip inti Keras adalah membuat hal-hal menjadi sederhana, sambil memungkinkan pengguna untuk sepenuhnya mengendalikan ketika mereka perlu (kontrol utama adalah kemudahan ekstensibilitas dari source code).

model.compile(loss=keras.losses.categorical_crossentropy,
              optimizer=keras.optimizers.SGD(lr=0.01, momentum=0.9, nesterov=True))

Kita sekarang dapat melakukan iteeasi dari training data dalam beberapa batch:

# x_train and y_train are Numpy arrays --just like in the Scikit-Learn API.
model.fit(x_train, y_train, epochs=5, batch_size=32)

Alternatif lain, kita dapat memasukan batch secara manual ke model:

model.train_on_batch(x_batch, y_batch)

Evaluasi performance dalam satu kalimat:

loss_and_metrics = model.evaluate(x_test, y_test, batch_size=128)

Atau generate prediksi (per-"dukun"-an) terhadap data:

classes = model.predict(x_test, batch_size=128)

Membangun sistem penjawab pertanyaan, model klasifikasi gambar, Neural Turing Machine, atau model lain sama cepatnya. Gagasan di balik Deep Learning sederhana, jadi mengapa penerapannya harus susah?


Pranala Menarik