Apakah Anda ingin mengajar emoji mesin Anda? ?
Saya membuat jaringan saraf sepenuhnya di Swift. Ini adalah demo untuk menunjukkan apa yang mungkin dipecahkan.
Saya menggunakan taman bermain di macOS.
Saya percaya pada open source saya pikir untuk mendorong umat ke depan Anda harus Anda harus open source semua hal o/
Anda dapat menonton video YouTube di sini
Saya menggunakan tantangan ini untuk mempelajari lebih lanjut tentang jaringan saraf dan pembelajaran mesin. Jaringan saraf terdiri dari lapisan, dan setiap lapisan memiliki neuron. Jaringan saya memiliki tiga lapisan: lapisan input, lapisan tersembunyi, dan lapisan output.
Input ke jaringan saya memiliki 64 angka biner. Input ini terhubung ke neuron di lapisan tersembunyi. Lapisan tersembunyi melakukan beberapa perhitungan dan meneruskan hasilnya ke output layer neuron. Ini juga melakukan perhitungan dan kemudian mengeluarkan 0 atau 1. Lapisan input sebenarnya tidak melakukan apa -apa, mereka hanya placeholder untuk nilai input. Hanya neuron di lapisan tersembunyi dan lapisan output melakukan perhitungan. Neuron dari lapisan input terhubung ke neuron di lapisan tersembunyi. Demikian juga, kedua neuron dari lapisan tersembunyi terhubung ke lapisan output. Jenis lapisan ini disebut sepenuhnya terhubung karena setiap neuron terhubung ke setiap neuron di lapisan berikutnya. Setiap koneksi antara dua neuron memiliki berat, yang hanya angka. Bobot ini membentuk otak jaringan saya. Untuk fungsi aktivasi di jaringan saya, saya menggunakan fungsi sigmoid.
Sigmoid adalah fungsi matematika. Sigmoid mengambil beberapa bilangan x dan mengubahnya menjadi nilai antara 0 dan 1. Itu ideal untuk tujuan saya, karena saya berurusan dengan angka biner. Ini akan mengubah persamaan linier menjadi sesuatu yang non-linear. Ini penting karena tanpa ini, jaringan tidak akan dapat mempelajari hal -hal menarik.
Saya telah menyebutkan bahwa input ke jaringan ini adalah 64 nomor biner. Saya mengubah ukuran gambar yang ditarik menjadi 8x8 piksel yang membuat 64 piksel. Saya membaca gambar dan memeriksa setiap piksel jika piksel memiliki warna merah muda saya menambahkan 1 ke array saya lagi, saya menambahkan 0. Pada akhirnya saya akan memiliki 64 nomor biner yang dapat saya tambahkan ke lapisan input saya.
Tujuan utama saya adalah membuat jaringan saraf dan pembelajaran mesin lebih mudah diakses dan menyenangkan. Selain itu untuk mempelajari lebih lanjut tentang fitur -fitur kuat dari taman bermain dan jaringan saraf.
@reffas_bilal
Vincent Esche
Per Harald Borgen
Matthijs Hollemans
Jika Anda menyukai proyek ini, silakan tinggalkan bintang? Di sini di GitHub dan bagikan.
Saya bekerja dengan @leomehlig di Luubra. Anda akan menemukan lebih banyak tentang itu di sini
Semua bagian dibuat dengan banyak cinta ❤️ dan dikirim ke seluruh dunia?
Proyek ini saat ini hanya bekerja pada macOS. Ada bug di iPad yang sudah saya kirimkan masalah pada reporter bug. Saya harap Apple akan segera memperbaikinya.
MIT License
Copyright (c) 2017 Luubra
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.