Python OSS ทางเลือกสำหรับ Matlab Neural Network Toolbox มี intercomparisons ใด?


16

ฉันต้องการเป็นอิสระจากซอฟต์แวร์เชิงพาณิชย์สำหรับงานทางวิทยาศาสตร์ของฉัน ฉันพบว่าการพึ่งพาแพคเกจเชิงพาณิชย์เช่น Matlab และกล่องเครื่องมือของมันไม่น่าพอใจเพราะฉันไม่รู้ว่าฉันจะสามารถเข้าถึง Matlab ในอนาคตได้หรือไม่และเพราะฉันไม่ชอบภาษา ดังนั้นฉันกำลังมองหาทางเลือก

โชคดีที่ฉันใช้ภาษา Python ได้อย่างคล่องแคล่ว (และฉันชอบภาษานี้) และด้วย NumPy, SciPy, Matplotlib, Basemap และ NetCDF การอ่านและการเขียนตามปกติมันตอบสนองความต้องการส่วนใหญ่ของฉันได้ ส่วนใหญ่ - ฉันยังคงกลับไปที่ Matlab เมื่อฉันต้องการฝึกการดึงข้อมูลดาวเทียมโดยใช้ตัวรับส่งข้อมูลหลายเลเยอร์เช่นฟีดใช้เครือข่ายประสาทเทียม

ไม่ผิดปกติกับซอฟต์แวร์โอเพนซอร์ซมีมากกว่าหนึ่งแพ็คเกจที่ทำเครือข่ายประสาทเทียม มากกว่าหนึ่งอย่างมาก:

  • เมื่อไม่นานมานี้ฉันลองPyBrain "มีดทหารชาวสวิสสำหรับการสร้างเครือข่ายประสาท" แต่ฉันไม่ประสบความสำเร็จในการได้รับผลลัพธ์ที่น่าพอใจในช่วงเวลาสั้น ๆ (ทั้งเวลาพัฒนาและเวลาทำงาน) บางทีฉันอาจจะพยายามไม่มากพอหรือบางทีมันอาจจะไม่ตรงกับความต้องการของฉัน

  • เพียงแค่ตอนนี้ผมค้นพบว่ามีเป็นแพคเกจที่เรียกว่าneurolabซึ่งดูแนวโน้ม: ที่ง่ายและมีประสิทธิภาพเครือข่ายห้องสมุดประสาทสำหรับงูหลามกับAPI เช่นโครงข่ายประสาทเทียม Toolbox (NNT) จาก MATLAB

  • มีFFnetซึ่งเป็นโซลูชั่นการฝึกอบรมเครือข่ายนิวรัลฟีดไปข้างหน้าที่ง่ายและรวดเร็วสำหรับ python

  • มีแบบง่าย ๆ

  • มีพีชเป็นห้องสมุดสำหรับการคำนวณทางปัญญาและการเรียนรู้ของเครื่อง

  • มีการเชื่อมโยง Python กับFANNซึ่งเป็นไลบรารีเครือข่ายประสาทเทียมด่วนซึ่งอธิบายว่าเป็นมาตรฐานจริงในโพสต์ StackOverflowนี้

  • อาจมีคนอื่น ๆ

มีใครบ้างที่ผ่านความพยายามในการเปรียบเทียบตัวเลือกต่าง ๆ ตามเกณฑ์เช่นการใช้งานง่ายความเร็ว ฯลฯ กรณีการใช้งานของฉันเองคือการดึงดาวเทียมเช่นปรับฟังก์ชั่นที่ไม่ใช่เชิงเส้นอย่างมากของตัวแปรหลายตัว ฉันเป็นผู้ใช้อวนประสาทมาก ฉันไม่สนใจที่จะค้นคว้าผลงานภายในของพวกเขา

คำถามเกี่ยวกับ Stats.SE นี้เกี่ยวข้อง แต่มีความแตกต่างกัน


คำถามของคุณน่าสนใจมาก แต่ฉันคิดว่าคุณกำลังขอมากเกินไป การประเมินที่ครอบคลุมของซอฟต์แวร์เครือข่ายประสาทที่แตกต่างกันในไพ ธ อนนั้นกว้างเกินกว่าจะตอบได้ในฟอรัมนี้ อาจเป็นประโยชน์ในการ จำกัด การมุ่งเน้นคำถามของคุณให้แคบลงไปถึงเกณฑ์เฉพาะและซอฟต์แวร์ที่คุณสนใจ
เปาโล

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

ไม่ใช่ Python แต่ขณะนี้ฉันกำลังใช้ caffe สำหรับเครือข่ายประสาท ส่วนใหญ่สำหรับเครือข่ายประสาทเทียม แต่มันง่ายยิ่งขึ้นในการติดตั้ง NN แบบดั้งเดิม
Siyuan Ren

สำเนาข้ามไซต์: datascience.stackexchange.com/q/694/6
gerrit

คำตอบ:


1

คุณตรวจสอบscikit เรียนรู้ ? ไม่ใช่โดเมนของฉันทั้งหมด แต่ฉันเคยได้ยินประสบการณ์ผู้ใช้ที่ดีมาก ...


จะตกอยู่ในประเภทที่อาจมีคนอื่น ๆ - ยังเพิ่มห้องสมุดอีกครั้งเพื่อให้รายการไม่ได้แก้ปัญหาของฉัน แต่ขยายขอบเขตของนั้น intercomparison ฉันหวังว่าจะได้เห็น ...
Gerrit

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

3
scikit-Learn ไม่มีวิธีเครือข่ายประสาทเทียมโมเดลโครงข่ายประสาทเทียมถูกลบออกใน 0.12 และพวกเขาแนะนำในเวลาที่ผู้ใช้ที่ต้องการฟังก์ชั่นเปลี่ยนเป็น PyBrain
Aron Ahmadia

1

คุณเคยดูTheanoไหม? ดูเหมือนว่ามีประสิทธิภาพมาก


1
แท้จริงแล้ว Theano นั้นทรงพลังมาก แต่คอมไพเลอร์ (หรือกรอบ) ที่อนุญาตให้หนึ่งเขียนรหัสหลามซึ่งได้รับการรวบรวมและดำเนินการใน GPU Theano สามารถใช้ในการติดตั้ง NNs ได้ แต่ไม่ใช่ห้องสมุด ML
Artem Sobolev

1

ฉันก็มาจากการใช้โครงข่ายประสาทใน Matlab ถึง Python หนึ่งในห้องสมุดที่มีประสิทธิภาพที่สุดในหลามคือ "Pylearn2" http://deeplearning.net/software/pylearn2/ ปัจจุบันนี้เป็นห้องสมุดที่มีการใช้งานมากที่สุดและมีคุณสมบัติที่แตกต่างมากมายสำหรับการทดสอบ มันขึ้นอยู่กับ Theano และเป็นเช่นนั้นอย่างรวดเร็วและสามารถทำงานบน GPU ของ น่าเสียดายที่นี่เป็นข้อเสียของมันเช่นกัน: API มีการเปลี่ยนแปลงอยู่ตลอดเวลาและมีช่วงการเรียนรู้สูง คุณต้องกำหนดค่าโครงข่ายประสาทโดยใช้ไฟล์ YAML ด้วย ฉันประสบความสำเร็จในการใช้ PyBrain ในการสร้างเครือข่ายประสาทขั้นพื้นฐาน ฉันต้องการวิธีแก้ไขปัญหาการถดถอยซึ่งฉันต้องคาดการณ์ภาระของสถานีพลังงานโดยพิจารณาจากปัจจัยสภาพอากาศ คำแนะนำที่นี่: http://fastml.com/pybrain-a-simple-neural-networks-library-in-python/ ให้โซลูชัน 90% แก่ฉันที่ฉันต้องการ

ปัญหาหนึ่งที่ฉันพบกับ PyBrain คือความเร็ว มันเขียนไว้ในภาษาไพ ธ อน ฉันพบว่าการฝึกอบรมของโครงข่ายประสาทเทียมจะช้ากว่า Matlab ประมาณ 50 เท่า บางคนประสบความสำเร็จด้วยการเร่งกระบวนการฝึกอบรมของ PyBrain ด้วยห้องสมุดอาแร็ค

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.