<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=TF%3A_Optimasi_kinerja_pelatihan_model</id>
	<title>TF: Optimasi kinerja pelatihan model - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=TF%3A_Optimasi_kinerja_pelatihan_model"/>
	<link rel="alternate" type="text/html" href="https://onnocenter.or.id/wiki/index.php?title=TF:_Optimasi_kinerja_pelatihan_model&amp;action=history"/>
	<updated>2026-05-04T17:14:59Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.4</generator>
	<entry>
		<id>https://onnocenter.or.id/wiki/index.php?title=TF:_Optimasi_kinerja_pelatihan_model&amp;diff=71919&amp;oldid=prev</id>
		<title>Onnowpurbo: Created page with &quot;Mengoptimalkan kinerja pelatihan model TensorFlow dapat dicapai melalui berbagai teknik lanjutan yang dirancang untuk meningkatkan efisiensi dan efektivitas proses pelatihan....&quot;</title>
		<link rel="alternate" type="text/html" href="https://onnocenter.or.id/wiki/index.php?title=TF:_Optimasi_kinerja_pelatihan_model&amp;diff=71919&amp;oldid=prev"/>
		<updated>2025-03-11T03:56:19Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Mengoptimalkan kinerja pelatihan model TensorFlow dapat dicapai melalui berbagai teknik lanjutan yang dirancang untuk meningkatkan efisiensi dan efektivitas proses pelatihan....&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Mengoptimalkan kinerja pelatihan model TensorFlow dapat dicapai melalui berbagai teknik lanjutan yang dirancang untuk meningkatkan efisiensi dan efektivitas proses pelatihan. Berikut adalah beberapa teknik utama beserta contoh implementasinya:&lt;br /&gt;
&lt;br /&gt;
==1. '''Paralelisme Model dan Data'''==&lt;br /&gt;
&lt;br /&gt;
Paralelisme memungkinkan distribusi beban kerja pelatihan model ke beberapa perangkat keras, seperti CPU atau GPU, untuk mempercepat proses pelatihan.&lt;br /&gt;
&lt;br /&gt;
'''Paralelisme Data:'''&lt;br /&gt;
&lt;br /&gt;
Data pelatihan dibagi menjadi beberapa subset yang diproses secara paralel. https://lmsspada.kemdiktisaintek.go.id/pluginfile.php/795078/mod_resource/content/2/Modul%20Digital%20-%20Machine%20Learning%20-%20Hartono-compressed.pdf&lt;br /&gt;
&lt;br /&gt;
'''Contoh:'''&lt;br /&gt;
&lt;br /&gt;
 import tensorflow as tf&lt;br /&gt;
 &lt;br /&gt;
 # Membuat strategi untuk distribusi data&lt;br /&gt;
 strategy = tf.distribute.MirroredStrategy()&lt;br /&gt;
 &lt;br /&gt;
 # Memasukkan model dalam konteks strategi&lt;br /&gt;
 with strategy.scope():&lt;br /&gt;
     model = tf.keras.Sequential([&lt;br /&gt;
         tf.keras.layers.Dense(128, activation='relu', input_shape=(784,)),&lt;br /&gt;
         tf.keras.layers.Dense(10, activation='softmax')&lt;br /&gt;
     ])&lt;br /&gt;
     model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])&lt;br /&gt;
 &lt;br /&gt;
 # Melatih model dengan data yang didistribusikan&lt;br /&gt;
 model.fit(train_dataset, epochs=10)&lt;br /&gt;
&lt;br /&gt;
'''Paralelisme Model:'''&lt;br /&gt;
&lt;br /&gt;
Model dibagi menjadi beberapa bagian yang dapat diproses secara paralel. Misalnya, menggunakan Amazon SageMaker untuk paralelisme model dengan TensorFlow. https://docs.aws.amazon.com/id_id/sagemaker/latest/dg/model-parallel-customize-training-script-tf.html&lt;br /&gt;
&lt;br /&gt;
'''Contoh:'''&lt;br /&gt;
&lt;br /&gt;
 import tensorflow as tf&lt;br /&gt;
 import smdistributed.modelparallel.tensorflow as smp&lt;br /&gt;
 &lt;br /&gt;
 # Inisialisasi paralelisme model&lt;br /&gt;
 smp.init()&lt;br /&gt;
 &lt;br /&gt;
 # Definisikan model dalam konteks paralelisme&lt;br /&gt;
 class MyModel(tf.keras.Model):&lt;br /&gt;
     def __init__(self):&lt;br /&gt;
         super(MyModel, self).__init__()&lt;br /&gt;
         self.dense1 = tf.keras.layers.Dense(128, activation='relu')&lt;br /&gt;
         self.dense2 = tf.keras.layers.Dense(10, activation='softmax') &lt;br /&gt;
 &lt;br /&gt;
     def call(self, inputs):&lt;br /&gt;
         x = self.dense1(inputs)&lt;br /&gt;
         return self.dense2(x)&lt;br /&gt;
 &lt;br /&gt;
 # Membuat instance model&lt;br /&gt;
 model = MyModel()&lt;br /&gt;
 &lt;br /&gt;
 # Kompilasi model&lt;br /&gt;
 model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])&lt;br /&gt;
 &lt;br /&gt;
 # Melatih model&lt;br /&gt;
 model.fit(train_dataset, epochs=10)&lt;br /&gt;
&lt;br /&gt;
==2. '''Kuantisasi Model'''==&lt;br /&gt;
&lt;br /&gt;
Kuantisasi adalah teknik untuk mengurangi presisi angka dalam model, seperti mengubah bobot dari 32-bit float menjadi 8-bit integer, yang dapat mengurangi ukuran model dan meningkatkan kecepatan inferensi. https://ai.google.dev/edge/litert/models/model_optimization?hl=id&lt;br /&gt;
&lt;br /&gt;
'''Contoh:'''&lt;br /&gt;
&lt;br /&gt;
 import tensorflow as tf&lt;br /&gt;
 &lt;br /&gt;
 # Memuat model yang telah dilatih&lt;br /&gt;
 model = tf.keras.models.load_model('model_path')&lt;br /&gt;
 &lt;br /&gt;
 # Membuat converter untuk kuantisasi&lt;br /&gt;
 converter = tf.lite.TFLiteConverter.from_keras_model(model)&lt;br /&gt;
 converter.optimizations = [tf.lite.Optimize.DEFAULT]&lt;br /&gt;
 &lt;br /&gt;
 # Mengonversi model&lt;br /&gt;
 tflite_model = converter.convert()&lt;br /&gt;
 &lt;br /&gt;
 # Menyimpan model yang telah dikuantisasi&lt;br /&gt;
 with open('quantized_model.tflite', 'wb') as f:&lt;br /&gt;
     f.write(tflite_model)&lt;br /&gt;
&lt;br /&gt;
==3. '''Augmentasi Data'''==&lt;br /&gt;
&lt;br /&gt;
Augmentasi data adalah teknik untuk memperbesar jumlah dan keragaman data pelatihan dengan melakukan transformasi seperti rotasi, flipping, atau penambahan noise pada data yang ada. Ini membantu model menjadi lebih robust dan mengurangi overfitting. https://blog.algorit.ma/augmentasi-data/&lt;br /&gt;
&lt;br /&gt;
'''Contoh:'''&lt;br /&gt;
&lt;br /&gt;
 import tensorflow as tf&lt;br /&gt;
 &lt;br /&gt;
 # Membuat generator augmentasi data&lt;br /&gt;
 datagen = tf.keras.preprocessing.image.ImageDataGenerator(&lt;br /&gt;
     rotation_range=20,&lt;br /&gt;
     width_shift_range=0.2,&lt;br /&gt;
     height_shift_range=0.2,&lt;br /&gt;
     horizontal_flip=True&lt;br /&gt;
 )&lt;br /&gt;
 &lt;br /&gt;
 # Melatih model menggunakan data yang diaugmentasi&lt;br /&gt;
 model.fit(datagen.flow(train_images, train_labels, batch_size=32), epochs=50)&lt;br /&gt;
&lt;br /&gt;
==4. '''Penyetelan Hyperparameter (Hyperparameter Tuning)'''==&lt;br /&gt;
&lt;br /&gt;
Menggunakan teknik seperti Grid Search atau Random Search untuk menemukan kombinasi hyperparameter yang optimal dapat meningkatkan kinerja model secara signifikan. https://lmsspada.kemdiktisaintek.go.id/pluginfile.php/795078/mod_resource/content/2/Modul%20Digital%20-%20Machine%20Learning%20-%20Hartono-compressed.pdf&lt;br /&gt;
&lt;br /&gt;
'''Contoh:'''&lt;br /&gt;
&lt;br /&gt;
 from sklearn.model_selection import RandomizedSearchCV&lt;br /&gt;
 from tensorflow.keras.wrappers.scikit_learn import KerasClassifier&lt;br /&gt;
 &lt;br /&gt;
 # Membuat fungsi untuk membuat model&lt;br /&gt;
 def create_model(optimizer='adam'):&lt;br /&gt;
     model = tf.keras.Sequential([&lt;br /&gt;
         tf.keras.layers.Dense(128, activation='relu', input_shape=(784,)),&lt;br /&gt;
         tf.keras.layers.Dense(10, activation='softmax')&lt;br /&gt;
     ])&lt;br /&gt;
     model.compile(optimizer=optimizer, loss='sparse_categorical_crossentropy', metrics=['accuracy'])&lt;br /&gt;
     return model&lt;br /&gt;
 &lt;br /&gt;
 # Membuat KerasClassifier&lt;br /&gt;
 model = KerasClassifier(build_fn=create_model)&lt;br /&gt;
 &lt;br /&gt;
 # Mendefinisikan ruang hyperparameter&lt;br /&gt;
 param_dist = {&lt;br /&gt;
     'optimizer': ['adam', 'sgd'],&lt;br /&gt;
     'epochs': [10, 20],&lt;br /&gt;
     'batch_size': [32, 64]&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 # Melakukan Random Search&lt;br /&gt;
 random_search = RandomizedSearchCV(estimator=model, param_distributions=param_dist, n_iter=5, cv=3)&lt;br /&gt;
 random_search_result = random_search.fit(train_images, train_labels)&lt;br /&gt;
 &lt;br /&gt;
 # Menampilkan hasil terbaik&lt;br /&gt;
 print(f&amp;quot;Best: {random_search_result.best_score_} using {random_search_result.best_params_}&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
==5. '''Penggunaan Mini-Batch'''==&lt;br /&gt;
&lt;br /&gt;
Melatih model menggunakan mini-batch, yaitu subset kecil dari data pelatihan, dapat meningkatkan efisiensi pelatihan dengan memanfaatkan paralelisme komputasi dan stabilitas dalam pembaruan bobot. https://lmsspada.kemdiktisaintek.go.id/course/view.php?id=3839&lt;br /&gt;
&lt;br /&gt;
'''Contoh:'''&lt;br /&gt;
&lt;br /&gt;
 import tensorflow as tf&lt;br /&gt;
 &lt;br /&gt;
 # Kompilasi model&lt;br /&gt;
 model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])&lt;br /&gt;
 &lt;br /&gt;
 # Melatih model dengan mini-batch&lt;br /&gt;
 model.fit(train_images, train_labels, batch_size=32, epochs=10)&lt;br /&gt;
				&lt;br /&gt;
&lt;br /&gt;
Dengan menerapkan teknik-teknik lanjutan di atas, Anda dapat mengoptimalkan kinerja pelatihan model TensorFlow, sehingga mencapai hasil yang lebih efisien dan akurat.&lt;/div&gt;</summary>
		<author><name>Onnowpurbo</name></author>
	</entry>
</feed>