Bagaimana insinyur listrik mempelajari jaringan saraf dan ulasan kursus gratis “Udacity: Intro to TensorFlow for Deep Learning”

Sepanjang hidup sadar saya, saya adalah seorang insinyur listrik (tidak, sekarang kita tidak berbicara tentang minuman dengan sifat meragukan).

Saya tidak pernah benar-benar tertarik pada dunia teknologi informasi, dan bahkan saya tidak mungkin dapat melipatgandakan matriks pada selembar kertas. Ya, dan saya tidak pernah membutuhkannya, sehingga Anda mengerti sedikit tentang hal-hal spesifik dari pekerjaan saya, saya dapat membagikan kisah yang luar biasa. Saya pernah meminta kolega saya untuk bekerja dalam spreadsheet Excel, setengah hari telah berlalu, saya mendatangi mereka, dan mereka duduk dan meringkas data pada kalkulator, ya, pada kalkulator hitam biasa dengan tombol. Nah, jaringan saraf macam apa yang bisa didiskusikan setelah itu? .. Oleh karena itu, saya belum pernah memiliki prasyarat khusus untuk pencelupan di dunia TI. Tetapi, ketika mereka mengatakan "baik, di mana kita tidak berada," teman-teman saya berdengung di telinga saya tentang augmented reality, tentang jaringan saraf, tentang bahasa pemrograman (terutama tentang Python).

Dengan kata-kata, itu terlihat sangat sederhana, dan saya memutuskan mengapa tidak menguasai seni magis ini untuk menerapkannya dalam bidang kegiatan saya.

Pada artikel ini, saya akan menghilangkan upaya saya untuk mempelajari dasar-dasar Python dan membagikan kepada saya kesan saya tentang kursus TensorFlow gratis dari Udacity.



pengantar


Pertama-tama, perlu dicatat bahwa setelah 11 tahun di sektor energi, ketika Anda tahu dan dapat melakukan segalanya dan bahkan sedikit lagi (dalam hal tanggung jawab Anda), mempelajari hal-hal baru yang radikal - di satu sisi, menimbulkan antusiasme yang kuat, tetapi di sisi lain - berubah menjadi rasa sakit fisik " gigi di kepala. "

Saya masih belum sepenuhnya memahami semua konsep dasar pemrograman dan pembelajaran mesin, jadi saya tidak boleh diadili secara ketat. Saya harap artikel saya akan menarik dan bermanfaat bagi orang-orang seperti saya - jauh dari pengembangan perangkat lunak.

Sebelum beralih ke meninjau kursus, saya akan mengatakan bahwa itu akan membutuhkan setidaknya pengetahuan minimum tentang Python untuk mempelajarinya. Anda dapat membaca beberapa buku untuk boneka (saya masih mulai mengambil kursus tentang Stepic, tetapi belum menguasainya).

Tidak akan ada konstruksi kompleks dalam kursus TensorFlow itu sendiri, tetapi akan perlu untuk memahami mengapa perpustakaan diimpor, bagaimana suatu fungsi didefinisikan, dan mengapa sesuatu diganti ke dalamnya.

Mengapa TensorFlow dan Udacity?


Tujuan utama pelatihan saya adalah keinginan untuk mengenali foto-foto elemen instalasi listrik menggunakan jaringan saraf.

Saya memilih TensorFlow karena saya mendengarnya dari teman-teman saya. Dan seperti yang saya pahami, kursus ini cukup populer.

Saya mencoba mulai belajar dari tutorial resmi .

Dan kemudian saya mengalami dua masalah.

  • Ada banyak materi pelatihan, dan mereka berselisih. Sangat sulit bagi saya untuk membuat setidaknya satu atau lebih gambar yang kurang lengkap untuk menyelesaikan masalah pengenalan gambar.
  • Sebagian besar artikel yang saya butuhkan tidak diterjemahkan ke dalam bahasa Rusia. Kebetulan di masa kecil saya belajar bahasa Jerman dan sekarang, seperti banyak anak-anak Soviet, saya tidak bisa berbahasa Jerman atau Inggris. Tentu saja, sepanjang hidup sadar saya, saya mencoba belajar bahasa Inggris, tetapi ternyata kira-kira seperti pada gambar.



Setelah mencari-cari di situs resmi, saya menemukan rekomendasi untuk mengikuti salah satu dari dua kursus online .

Seperti yang saya pahami, kursus di Courcera dibayar, dan kursus Udacity: Intro to TensorFlow for Deep Learning dapat diambil "gratis, yaitu, tanpa bayaran ."

Isi kursus


Kursus ini terdiri dari 9 pelajaran.

Bagian pertama adalah bagian pengantar, mereka akan memberi tahu Anda mengapa diperlukan pada prinsipnya.

Pelajaran nomor 2 adalah favorit saya. Itu cukup sederhana untuk dipahami, dan juga menunjukkan keajaiban sains. Singkatnya, dalam pelajaran ini, di samping informasi dasar tentang jaringan saraf, pencipta menunjukkan bagaimana memecahkan masalah mengubah suhu dari derajat Fahrenheit ke derajat Celcius menggunakan jaringan saraf lapis tunggal.

Ini adalah contoh yang sangat bagus. Saya masih berpikir tentang bagaimana membuat dan memecahkan masalah yang sama, tetapi hanya untuk tukang listrik.

Sayangnya, saya berhenti lebih jauh, karena agak sulit untuk mempelajari hal-hal aneh dalam bahasa yang tidak dikenal. Itu menyelamatkan saya bahwa saya menemukan di Habré terjemahan dari kursus ini ke dalam bahasa Rusia .

Terjemahan dilakukan dengan kualitas tinggi, notebook Colab juga diterjemahkan, jadi kemudian saya mengintip baik yang asli maupun terjemahannya.

Pelajaran nomor 3 sebenarnya adalah pengaturan materi dari tutorial resmi TensorFlow. Dalam pelajaran ini, kita belajar bagaimana mengklasifikasikan gambar pakaian menggunakan Multilayer Neural Network (Fashion MNIST dataset).

Pelajaran dari nomor 4 hingga nomor 7 juga merupakan pengaturan tutorial. Tetapi karena fakta bahwa mereka diatur dengan benar, Anda tidak perlu memahami urutan belajar Anda sendiri. Dalam pelajaran ini, kita akan secara singkat berbicara tentang jaringan saraf ultraprecise, bagaimana meningkatkan akurasi pelatihan dan menyimpan model. Pada saat yang sama, kami secara bersamaan akan memecahkan masalah klasifikasi kucing dan anjing dalam gambar.

Pelajaran nomor 8 umumnya merupakan kursus yang terpisah, ada guru lain, dan kursus itu sendiri cukup banyak. Pelajarannya adalah tentang deret waktu. Karena ini belum menarik minat saya, saya melihatnya secara diagonal.

Lengkapi semua pelajaran nomor 9, yang merupakan undangan untuk mengambil kursus gratis di TensorFlow lite.

Apa yang saya suka dan tidak suka


Saya akan mulai dengan pro:

  • Kursus - Gratis
  • Kursusnya ada di TensorFlow 2. Beberapa buku pelajaran yang saya lihat dan beberapa kursus di Internet ada di TensorFlow 1. Saya tidak tahu apakah ada perbedaan besar, tetapi senang mempelajari versi saat ini.
  • Para guru di video itu tidak mengganggu (meskipun dalam versi Rusia mereka tidak membaca dengan riang seperti pada aslinya)
  • Kursus tidak membutuhkan banyak waktu
  • Kursus ini tidak mengarah ke rasa melankolis dan putus asa. Tugas-tugas dalam kursus sederhana dan selalu ada petunjuk dalam bentuk Colab dengan solusi yang tepat, jika ada sesuatu yang tidak jelas (dan sebagian tugas yang baik tidak jelas bagi saya)
  • Tidak perlu menginstal apa pun, semua pekerjaan laboratorium tentu saja dapat dilakukan di browser

Sekarang kontra:

  • Hampir tidak ada bahan kontrol. Tidak ada tes, tidak ada tugas, tidak ada untuk setidaknya entah bagaimana memeriksa kursus
  • Tidak semua notebook berfungsi seperti seharusnya. Menurut pendapat saya, dalam pelajaran ketiga dari kursus bahasa Inggris asli, Colab memberikan kesalahan, dan saya tidak tahu apa yang harus dilakukan dengannya
  • . , Udacity . , , , . . 6
  • , , . (, Max Pooling).


Tentunya Anda sudah menebak bahwa mukjizat itu tidak terjadi. Dan setelah menyelesaikan kursus singkat ini, tidak mungkin untuk benar-benar mengetahui cara kerja jaringan saraf.

Tentu saja, saya tidak dapat menyelesaikan masalah saya setelah itu dengan klasifikasi foto-foto pemutus sirkuit dan tombol-tombol pada switchgears.

Namun secara keseluruhan, kursus ini sangat membantu. Ini menunjukkan hal-hal apa yang dapat dilakukan dengan TensorFlow dan ke arah mana untuk melanjutkan.

Saya pikir, sebagai permulaan, saya perlu mempelajari dasar-dasar Python dan membaca buku dalam bahasa Rusia tentang cara kerja jaringan saraf, dan kemudian mengambil TensorFlow.

Sebagai penutup, saya ingin mengucapkan terima kasih kepada teman-teman saya karena mendorong saya untuk menulis artikel pertama tentang "Habr" dan membantu mengaturnya.

PS Saya akan senang dengan komentar Anda dan kritik yang membangun.

All Articles