คุณต้องการสอนอิโมจิเครื่องของคุณหรือไม่? -
ฉันสร้างเครือข่ายประสาททั้งหมดใน Swift นี่คือการสาธิตเพื่อแสดงให้เห็นถึงสิ่งที่เป็นไปได้ในการแก้ปัญหา
ฉันใช้สนามเด็กเล่นบน MacOS
ฉันเชื่อในโอเพ่นซอร์สฉันคิดว่าจะผลักดันมนุษยชาติไปข้างหน้าคุณต้องโอเพนซอร์สทุกสิ่ง o/
คุณสามารถดูวิดีโอ YouTube ได้ที่นี่
ฉันใช้ความท้าทายนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับเครือข่ายประสาทและการเรียนรู้ของเครื่อง เครือข่ายประสาทประกอบด้วยเลเยอร์และแต่ละชั้นมีเซลล์ประสาท เครือข่ายของฉันมีสามเลเยอร์: เลเยอร์อินพุตเลเยอร์ที่ซ่อนอยู่และเลเยอร์เอาต์พุต
อินพุตไปยังเครือข่ายของฉันมีหมายเลขไบนารี 64 หมายเลข อินพุตเหล่านี้เชื่อมต่อกับเซลล์ประสาทในเลเยอร์ที่ซ่อนอยู่ เลเยอร์ที่ซ่อนอยู่ทำการคำนวณบางอย่างและส่งผลให้เซลล์ประสาทชั้นเอาต์พุตออก นอกจากนี้ยังทำการคำนวณแล้วส่งออก 0 หรือ 1 เลเยอร์อินพุตไม่ได้ทำอะไรเลยพวกเขาเป็นเพียงตัวยึดตำแหน่งสำหรับค่าอินพุต เฉพาะเซลล์ประสาทในเลเยอร์ที่ซ่อนอยู่และเลเยอร์เอาต์พุตดำเนินการคำนวณ เซลล์ประสาทจากเลเยอร์อินพุตเชื่อมต่อกับเซลล์ประสาทในเลเยอร์ที่ซ่อนอยู่ ในทำนองเดียวกันเซลล์ประสาททั้งสองจากเลเยอร์ที่ซ่อนอยู่เชื่อมต่อกับเลเยอร์เอาต์พุต เลเยอร์ชนิดนี้เรียกว่าเชื่อมต่ออย่างเต็มที่เนื่องจากเซลล์ประสาททุกตัวเชื่อมต่อกับเซลล์ประสาททุกตัวในชั้นถัดไป การเชื่อมต่อแต่ละครั้งระหว่างเซลล์ประสาทสองเซลล์มีน้ำหนักซึ่งเป็นเพียงตัวเลข น้ำหนักเหล่านี้เป็นสมองของเครือข่ายของฉัน สำหรับฟังก์ชั่นการเปิดใช้งานในเครือข่ายของฉันฉันใช้ฟังก์ชัน sigmoid
Sigmoid เป็นฟังก์ชันทางคณิตศาสตร์ Sigmoid ใช้เวลา X และแปลงเป็นค่าระหว่าง 0 ถึง 1 ซึ่งเหมาะสำหรับวัตถุประสงค์ของฉันเนื่องจากฉันกำลังจัดการกับตัวเลขไบนารี สิ่งนี้จะเปลี่ยนสมการเชิงเส้นเป็นสิ่งที่ไม่ใช่เชิงเส้น นี่เป็นสิ่งสำคัญเพราะหากไม่มีสิ่งนี้เครือข่ายจะไม่สามารถเรียนรู้สิ่งที่น่าสนใจได้
ฉันได้กล่าวไปแล้วว่าอินพุตไปยังเครือข่ายนี้เป็นหมายเลขไบนารี 64 หมายเลข ฉันปรับขนาดภาพวาดเป็น 8x8 พิกเซลซึ่งสร้าง 64 พิกเซลร่วมกัน ฉันผ่านภาพและตรวจสอบแต่ละพิกเซลว่าพิกเซลมีสีชมพูฉันเพิ่ม 1 ลงในอาร์เรย์ของฉันฉันเพิ่ม 0 ในตอนท้ายฉันจะมีหมายเลขไบนารี 64 หมายเลขซึ่งฉันสามารถเพิ่มลงในเลเยอร์อินพุตของฉันได้
เป้าหมายหลักของฉันคือการทำให้เครือข่ายประสาทและการเรียนรู้ของเครื่องสามารถเข้าถึงได้ง่ายขึ้นและสนุกสนาน เช่นเดียวกับการเรียนรู้เพิ่มเติมเกี่ยวกับคุณสมบัติที่ทรงพลังของสนามเด็กเล่นและเครือข่ายประสาท
@reffas_bilal
Vincent Esche
ต่อ Harald Borgen
Matthijs Hollemans
ถ้าคุณชอบโครงการนี้โปรดออกจากดาว? ที่นี่ใน GitHub และแบ่งปัน
ฉันทำงานกับ @leomehlig บน Luubra คุณจะพบเพิ่มเติมเกี่ยวกับที่นี่
ชิ้นส่วนทั้งหมดได้รับการทำด้วยมือด้วยความรักมากมาย❤และส่งไปทั่วโลก?
projecty นี้กำลังทำงานกับ macOS เท่านั้น มีข้อผิดพลาดบน iPad ฉันได้ส่งปัญหาไปยังผู้รายงานข้อผิดพลาดแล้ว ฉันหวังว่า Apple จะแก้ไขได้เร็ว ๆ นี้
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.