Tidak perlu belajar Pembelajaran Mesin

Belajar membuat perangkat lunak menggunakan model pembelajaran mesin


gambar

Penafian: Artikel ini semata-mata didasarkan pada pengamatan saya terhadap tim pengembangan di bidang pembelajaran mesin dan bukan merupakan hasil tinjauan ilmiah industri. Sebagai referensi, saya membantu mengembangkan Cortex , platform open source untuk meluncurkan model menjadi produksi.

Jika Anda seorang pengembang, maka setidaknya Anda memiliki minat yang lewat dalam pembelajaran mesin. Konsep suatu algoritma yang siswa pelajari untuk membuat prediksi nanti hanyalah ... keren.

Namun, jika Anda memutuskan untuk mulai mempelajari ML mengikuti semua kanon, maka ada kemungkinan bahwa setelah dua minggu aljabar linier dan analisis multivariat, Anda berhenti dari pelajaran ini.

Alasannya terletak pada kenyataan bahwa sebagian besar materi pengantar tentang ML difokuskan bukan pada pengembang, tetapi pada peneliti - yang merupakan masalah bagi pengembang yang hanya ingin membuat produk pembelajaran mesin.

Apakah Anda ingin membuat produk atau melakukan penelitian?


Sampai akhir tahun 2000-an, pembelajaran mesin hampir secara eksklusif merupakan masalah penelitian. Tidak banyak perusahaan yang benar-benar menggunakan pembelajaran mesin dalam produksi.

Dengan demikian, banyak bahan keakraban yang tersedia pada pembelajaran mesin didasarkan pada pendekatan penelitian. Semuanya dimulai dengan penjelasan tentang jaringan saraf dari sudut pandang matematika, dan teori yang mendasari pembelajaran mesin. Hal-hal diberikan, seperti metode propagasi balik dan jaringan permusuhan.

Bahkan materi terkait non-universitas sampai batas tertentu mengikuti pola ini. Sebagai contoh, ini diambil langsung dari perpustakaan "Quickstart for Beginners" TensorFlow:

gambar

Jika Anda berpikir saya bertindak selektif, saya sarankan membaca yang berikut ini .

Jika Anda sudah terbiasa dengan pembelajaran mesin yang mendasari matematika, atau Anda suka mempelajarinya, pendekatan ini cocok untuk Anda. Namun, jika Anda terutama tertarik untuk menciptakan sesuatu dengan pembelajaran mesin, maka kemungkinan besar ini tidak cukup apa yang Anda cari.

Menggunakan pemrograman sebagai tambahan untuk matematika sama dengan belajar menulis kode dengan terlebih dahulu mempelajari assembler. Tidak ada pengembang yang akan belajar seperti itu.

Catatan: Jika entah bagaimana Anda belajar kode dalam bahasa assembly, saya mengakui semua komentar jahat di pihak saya, dan saya terkesan bahwa Anda menemukan browser pada distribusi Linux Anda yang tidak jelas.

Ketika Anda belajar cara membuat kode, kemungkinan besar Anda melakukannya dengan menulis "halo dunia" dalam bahasa tingkat tinggi. Kemudian, ketika proyek menjadi lebih kompleks, Anda mulai mempelajari pemrograman tingkat rendah.

Model pelatihan ini berhasil di antara orang-orang yang membuat perangkat lunak karena dengan jelas menetapkan prioritas ketika mengerjakan suatu proyek. Jika Anda lebih tertarik untuk membuat sistem rekomendasi daripada menerbitkan artikel, maka ini adalah bagaimana Anda harus mendekati studi pembelajaran mesin.

Cara belajar ML dengan membuat perangkat lunak


Jika Anda adalah tipe orang yang belajar terbaik melalui kursus, maka sumber daya terbaik untuk mempromosikan pendekatan top-down, belajar-dan-proses ini untuk bekerja dengan ML adalah kursus di fast.ai Praktis Mendalam Pembelajaran Untuk Coders .

Tujuan artikel ini bukan untuk mengiklankan fast.ai sama sekali, tetapi perlu dicatat bahwa pendiri platform (Jeremy Howard dan Rachel Thomas) telah mengumpulkan beberapa kursus untuk pengembang dengan pelatihan mendalam, yang secara harfiah memaksa untuk menciptakan sesuatu, menggali teori utama, karena secara langsung terhubung dengan proyek. Untuk lebih memahami gaya belajar mereka, tonton video dari Rachel Thomas.



Di sisi lain, jika Anda termasuk tipe orang yang belajar terbaik dengan membenamkan diri sendiri dan menciptakan sesuatu sendiri, maka Anda dapat mulai menguasai pembelajaran mesin seperti di bidang pemrograman lainnya. Pilih saja proyek yang menarik minat Anda - saya telah mengumpulkan daftar besar proyek pemrosesan bahasa alami untuk pemula - pilih.

Untuk lebih memahami apa yang membuat perangkat lunak dengan ML (jika Anda melakukannya):

  1. Tetapkan tujuan, misalnya, buat pelengkapan otomatis untuk bidang teks atau pengenal plat nomor.
  2. Temukan model yang sudah disiapkan yang cocok untuk proyek Anda - model GPT-2 atau YOLOv3 juga akan bekerja dengan proyek yang disebutkan sebelumnya.
  3. Jika Anda mau, Anda bahkan dapat menggunakan perpustakaan sebagai gpt-2-simple untuk menyempurnakan (menyesuaikan dengan data Anda sendiri) model Anda.
  4. Akhirnya, gunakan model ini sebagai layanan mikro.


Setelah model digunakan sebagai API, Anda dapat memintanya, seperti layanan web lainnya, dan membangun aplikasi Anda di sekitarnya.

Anda dapat melihat aplikasi nyata dari proses ini dalam sebuah proyek yang dibuat oleh seorang insinyur pembelajaran mesin solo.



Berkat metode pembelajaran ini, Anda dapat berkenalan dengan berbagai arsitektur model populer, belajar tentang pendekatan lain untuk pembelajaran mesin, dan untuk aplikasi mana mereka dimaksudkan. Yang sama pentingnya adalah kenyataan bahwa Anda akan belajar tentang infrastruktur pembelajaran mesin yang diperlukan untuk membangun produk dunia nyata berdasarkan model.

Segera setelah Anda dapat membuat produk berbasis ML, mulailah belajar teori


Sebagai seorang insinyur, Anda mungkin sudah menerapkan beberapa bentuk otentikasi sebelumnya, yang berarti bahwa Anda (saya harap) mengacak kata sandi.

Saat mengatur hashing kata sandi, apakah Anda menulis algoritma hashing khusus? Sudahkah Anda menghabiskan beberapa minggu mempelajari kriptografi? Atau apakah Anda hanya menggunakannya bcrypt?

Demikian pula, ketika Anda membuat aplikasi web pertama Anda, apakah Anda mempelajari database selama beberapa minggu? Apakah Anda menulis dari awal? Atau apakah Anda menggunakan ORM acak dari kerangka favorit Anda?
Logika yang sama berlaku untuk pembelajaran mesin. Jika Anda adalah orang yang suka membuat perangkat lunak, mulailah dengan membuat perangkat lunak pembelajaran mesin dan biarkan diri Anda melepaskan diri dari teori ML yang mendasari menggunakan alat, model yang disiapkan sebelumnya, dan kerangka kerja pembelajaran mesin. Kemudian, jika Anda tertarik, atau jika proyek Anda membutuhkan lebih banyak kerumitan, gali lebih dalam untuk melihat bagaimana semuanya bekerja.



gambar
Pelajari detail tentang cara mendapatkan profesi yang dicari dari awal atau Tingkatkan keterampilan dan gaji dengan mengambil kursus online SkillFactory:



Baca lebih banyak



All Articles