Sebenarnya Machine Learning (ML) bekerja di backend. Tetapi tidak ada salahnya bagi data saintis mencoba aplikasi front-end nya, misalnya menggunakan Flask dan Jinja2 untuk bahasa Python (lihat pos tentang Flask dan Jinja2). Untuk Jupyter Notebook sebenarnya sudah disiapkan library Tkinter, tetapi berbasis desktop (lihat pos yang lalu tentang Tkinter).
Cukup baik hanya saja perlu menjalankan Jupyter Notebook dan tampilan GUI berbasis desktop. Jika kita bisa menggunakan aplikasi tersebut berbasis web, maka pengguna tidak perlu memiliki Python dengan library-library yang dibutuhkan.
Persiapan
Flask memberikan fasilitas pemrograman web-based ML di sisi server. Oleh karena itu pustaka perlu disiapkan terlebih dahulu. Seperti disinggung pos yang lalu, diperlukan satu file python dan template. Di sisi python perlu diimpor library yang diperlukan. Pastikan tidak ada error di sisi impor seperti tampilan di bawah ini dimana library pandas belum ada di environment.
Tes Running ML
Terkadang kita sudah membuat aplikasi ML di backend dan akan dibuatkan aplikasi front-end nya di web. Langkah pertama adalah mencoba menjalankan ML tersebut langsung saja di web tanpa input-output (GUI) di web. Hal ini memastikan mesin berjalan sebelum dibuatkan GUI-nya mengingat fase ini adalah krusial. Repot juga kan ketika GUI dibuat tapi ML tidak berfungsi. Istilahnya ML kita jadikan seperti “Hello World”.
Masukan saja tiap sel satu-satu dari ML yang sudah ok di Jupyter Notebook. Dan pastikan di indikator web tidak ada error. Tiap kali source kita save ternyata langsung dieksekusi realtime. Di sini ada dua data csv, untuk training dan untuk testing, yang nanti dalam implementasinya berupa GUI input.
Tampak instruksi “print(y_train)” pada baris 21 muncul di indikator server web. Hal ini terjadi karena di baris 27 “debug=True” sehingga ketika perubahan kode di “svm.py” langsung dieksekusi. Di sini hasil proses dari instruksi “print” belum dimunculkan di web.
Berikutnya jika ML sudah berjalan via web, tinggal membuat GUI input data yang akan diprediksi. Sekian semoga bisa jadi inspirasi.
NOTE: Untuk lebih jelas, silahkan lihat video Youtube berikut iniyang membahas kasus di atas.
Satu respons untuk “Membuat Aplikasi Web-based Machine Learning dengan Flask dan Jinja2”