Penting
Ini adalah meme yang rumit yang saya berupaya keras. Jadi tolong, tidak ada yang menuntut saya.
Shamboflow adalah API open source untuk membuat model pembelajaran mesin. Ini hanya tersedia di Python.
Shamboflow adalah penurunan super cepat dalam replacemnet untuk TensorFlow (baca tidak menambah apa pun, bahkan peningkatan kinerja). Ini dibangun dari awal (baca, menggunakan numpy) dan dilengkapi dengan dukungan GPU CUDA di luar kotak. Saya akan menceritakan kisahnya di akhir file ini tentang bagaimana hal ini terjadi.
Pada catatan yang serius, saya selalu ingin mengimplementasikan jaringan saraf menggunakan Numpy dan tidak ada perpustakaan tambahan dan ini memberi saya alasan untuk melakukannya. Jadi saya lakukan. Saya membuat ini dalam seminggu. Belajar banyak hal dalam proses dan itu adalah pengalaman yang penuh tekanan dan menyenangkan. Perpustakaan ini bergantung pada Numpy seperti yang dinyatakan tetapi juga menggunakan Cupy untuk menambahkan dukungan GPU. Dua dependensi lainnya adalah TQDM untuk bilah kemajuan dan colorama untuk teks berwarna -warni. Saya mungkin akan bekerja lebih banyak tentang ini karena saya sudah berusaha keras.
Instal menggunakan paket PIP.
$ pip install shamboflow Untuk memperbarui Shamboflow ke versi terbaru, tambahkan -Bendera --upgrade ke perintah di atas
Program contoh kecil yang menunjukkan cara membuat JST sederhana dengan topologi 3-2-1 dan melatihnya dengan data untuk melakukan prediksi.
import numpy as np
# Dataset
x_data = np . array ([[ 1 , 0 , 1 ]])
y_data = np . array ([[ 1 ]])
# Parameters
learning_rate = 0.9
train_epochs = 20
# Import the library
import shamboflow as sf
# Create a model
model = sf . models . Sequential ()
# Add layers
model . add ( sf . layers . Dense ( 3 ))
model . add ( sf . layers . Dense ( 2 , activation = 'sigmoid' ))
model . add ( sf . layers . Dense ( 1 , activation = 'sigmoid' ))
# Compile the model
model . compile ( learning_rate = learning_rate , loss = 'mean_squared_error' , verbose = True )
# Callbacks
checkpoint = sf . callbacks . ModelCheckpoint ( monitor = 'loss' , save_best_only = True , verbose = True )
# Train the model with the dataset
model . fit (
x_data ,
y_data ,
epochs = train_epochs ,
callbacks = [ checkpoint ]
)
# Save the trained model to disk
model . save ( 'model.meow' ) import numpy as np
import shamboflow as sf
model = sf . models . load_model ( "./model.meow" )
a = np . array ([[ 1 , 0 , 1 ]])
res = model . predict ( a )
print ( res )Storytime -nya.
Minggu lalu kami memiliki kelas di jaringan saraf di universitas. Di akhir kelas, profesor kami menyuruh kami mengimplementasikan jaringan yang diberikan di Python. Sekarang, sebelumnya dia mengatakan kepada kami untuk tidak menggunakan perpustakaan mana pun untuk melakukan tugas kami karena itu hanya akan merusak tujuan mempelajari algoritma. Jadi, saya senang bahwa saya akan menerapkan jaringan saraf hanya menggunakan Python. Kemudian dia memberi tahu kami bahwa kami dapat menggunakan perpustakaan untuk membuat jaringan. Dan saya sedikit kecewa. Teman saya dengan bercanda mengatakan itu, "Tidak, Anda harus membuatnya". Dan saya berkata, jika saya menyelesaikannya dalam waktu seminggu, akankah Anda menggunakannya dalam tugas. Teman -teman saya menyetujuinya.
Jadi begini. Perpustakaan saya. Saya akan membuat mereka menggunakan ini untuk tugas.