ควรใช้ sklearn หรือ tensorflow สำหรับเครือข่ายประสาท


7

ฉันเพิ่งเริ่มเรียนรู้ Neural Networks สำหรับการเรียนรู้อย่างลึกซึ้งจาก cs231 ฉันพยายามใช้ Neural Network ใน Python ฉันกำลังดูที่ใช้ Tensorflow หรือ scikit-learn ข้อดีและข้อเสียของห้องสมุดเหล่านี้สำหรับแอปพลิเคชันนี้คืออะไร

คำตอบ:


11

Sklearn ไม่ได้รับการสนับสนุนสำหรับ Deep Neural Networks มากนัก ระหว่างทั้งสองเนื่องจากคุณมีความสนใจในการเรียนรู้ลึกรับtensorflow

อย่างไรก็ตามฉันขอแนะนำให้ไปกับkerasซึ่งใช้ tensorflow เป็นแบ็กเอนด์ แต่ให้อินเตอร์เฟซที่ง่ายขึ้น


4

ในหลักสูตร cs231n เท่าที่ฉันจำได้คุณใช้เวลาส่วนใหญ่ในการติดตั้งเครือข่ายประสาทด้วยตัวคุณเองโดยไม่ใช้อะไรนอกจาก NumPy! นั่นเป็นประสบการณ์การเรียนรู้ที่น่าทึ่งสำหรับฉันอย่างแน่นอน

หลังจากนั้นในการมอบหมายครั้งสุดท้ายคุณต้องดูที่TensorFlow ( ตัวอย่าง ) หรือPytorch ( ตัวอย่าง ) อย่างแน่นอนเพื่อสร้างเครือข่ายที่ซับซ้อนมากขึ้น เฟรมเวิร์กเหล่านี้สร้างขึ้นโดยคนเช่นเดียวกับหลักสูตรสร้างเช่น CS231n - นักวิจัยและผู้เชี่ยวชาญในอุตสาหกรรม

SciKit เรียนรู้โมดูลเครือข่ายประสาทประกอบด้วยเครือข่ายฟีดไปข้างหน้าสำหรับการจัดหมวดหมู่อย่างใดอย่างหนึ่งหรือถดถอย แต่ไม่มีอะไรที่คนชอบเล่นเช่นเครือข่ายความสับสน (CNNs) เครือข่ายที่เกิดขึ้นอีก (RNNs) หรือส่วนประกอบที่แปลกใหม่มากขึ้นอื่น ๆ เช่นฟังก์ชั่นการเปิดใช้งานแยกต่างหาก

ฉันเห็นด้วยกับ Djib2011 ว่า Keras เป็นทางเลือกที่ยอดเยี่ยมในการเริ่มต้นและจะให้คุณเลือกระหว่าง TensorFlow, CNTK หรือ Theano เป็นแบ็กเอนด์ Keras เป็นชุดคลุมที่ดีรอบ ๆ โครงร่างสัตว์ประหลาดทั้งสามดังนั้นคุณจะทำให้สิ่งต่าง ๆ และทำงานได้อย่างรวดเร็ว นี่คือการเปรียบเทียบแบบย้อนหลังที่มีประโยชน์ล่าสุดของ Keras กับ Pytorch

เมื่อคุณคุ้นเคยกับเครื่องมืออย่าง Keras มันจะเร็วกว่าที่จะใช้สิ่งนั้นมากกว่าข้อเสนอง่ายๆใน SciKit Learn


ฉันรู้ว่าคุณไม่ได้ถาม PyTorch แต่ฉันคิดว่าฉันพูดถึงมันในฐานะหนึ่งในผู้สร้างดั้งเดิมของ CS231n Andrej Karpathy กล่าวว่าเป็นกรอบที่ดีที่สุด (ที่มา 1 , แหล่งที่ 2 )


ในขณะที่เรากำลังพูดถึง Pytorch: มันอยู่เหนือกรอบอื่น ๆ เมื่อมันมาถึงเครือข่ายซ้ำความยาวตัวแปร
Evpok

@Evpok - เราน่าจะพูดถึง Tensorflow ว่าขณะนี้รองรับเครือข่ายแบบไดนามิกโดยใช้tf.eagerapi ซึ่งเทียบได้กับ PyTorch
n1k31t4
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.