Top 5 Machine Learning Python libraries แห่งปี 2017

1. SciKit – Learn (Commits: 21793, Contributors: 842)

SciKit – Learn นับว่าเป็น Library ที่ Hot มาก สำหรับการทำ Machine Learning จริงๆ แล้ว library  นี้ ตอนออกมาใหม่ตั้งใจออกมาเป็นตัวเสริมต่อจาก library SciPy แต่กลับโด่งดัง ได้รับความนิยมอย่างแพร่หลายในเวลาอันรวดเร็ว  เนื่องจากครอบคลุม Algorithm หลักๆ ของ Machine Learning ไว้แทบจะทั้งหมด ที่ต้องบอกว่าหลักๆ เนื่องจาก ML พัฒนาเร็วมาก การจะเคลมว่าทำได้ทุกอย่างก็คงจะรับประกันไม่ได้ แต่เอาเป็นว่าถ้าต้องการทำ  Algorithmic Trading ใช้ library นี้ก็เพียงพอแล้วค่ะ ยกเว้น ถ้าต้องการสร้าง Multiple layer Neural Network หรือ  Deep learning ก็อาจจะต้องเพิ่มเติม library อื่นเข้าไปอีกซักหน่อย

Screen Shot 2017-05-25 at 20.19.42image cr: http://www.isaziconsulting.co.za/machinelearning.html

 

2. Theano (Commits: 25870, Contributors: 300)

ถือเป็น library ที่ถือว่ามีความโดดเด่นมากในการจัดการกับ multi-dimensional array Theano ถูกพัฒนาขึ้นโดย Université de Montréal ถึงแม้ว่าการทำงานจะมีความคล้ายคลึงกันกับ Numpy แต่ก็มีการเพิ่มเติมการทำงานทางคณิตศาสตร์เข้าไปอีกมากมาย อีกทั้ง Theano ยังมีการทำงานร่วมกับทั้ง CPU และ GPU ทำให้สามารถ Optimise การทำงานของ Machine Learning ให้มีการทำงานได้อย่างรวดเร็ว Library นี้เป็นอีกหนึ่ง library ที่นิยมนำมาใช้ทำงานกับ Neural Network ไปจนถึง Multi-layer Nueral network อย่าง Deep Learning และ Convolutional Neural Network

Deep2
(Introduction to Theano: https://www.youtube.com/watch?v=fWkArbYtQbM)

3. TensorFlow (Commits: 16785, Contributors: 795)

tf1อีกหนึ่ง  library ของ Machine Learning ที่ตีคู่สูสีกับ Theano ได้รับการพัฒนาขึ้นโดยทีมงานยักษ์ใหญ่อย่าง Google Tensorflow ถือว่ามีความโดดเด่นมากๆ ในการพัฒนาระบบ  Machine Learning บนพื้นฐานของ Neural Network หรือ Multi-layer Neural Network หรือ Deep Learning โดยสามารถ Optimise  การทำงานบนฐานข้อมูลขนาดใหญ่บน CPU และ  GPU ได้อย่างมีประสิทธิภาพ จนพูดได้อย่างเต็มปากว่า library นี้มีความเหมาะสมเป็นอย่างมากในงานของ Pattern Recognition ซึ่งทาง QuantML ของเราก็ทำงานส่วนหนึ่งอยู่บน library นี้เช่นกัน

Screen Shot 2017-05-25 at 22.54.15

4. Keras (Commits: 3519, Contributors: 428)

Keras เป็นอีกหนึ่ง library (อีกหนึ่ง library อีกแล้วที่พัฒนามาเพื่อ Neural Network! คงจะพอเห็นแล้วนะคะว่าเจ้า Neural Network นี้มาแรงแซงแค่ไหน!) ถ้าจะให้พูดถึง Keras ให้เข้าใจง่ายๆ เลยนะคะ ก็จะขอพูดว่า Keras เป็นเสมือ library ตัวช่วยให้สามารถทำงานกับ Neural Network ได้ง่ายขึ้นค่ะ เหมาะมากสำหรับผู้เริ่มต้น Keras ไม่สามารถทำงานโดดๆ ได้ ทำได้เพียงแค่เป็น Front – end โดยมี Theano หรือ Tensorflow ทำหน้าที่เป็น back – end ให้ (เวลาทำงาน จะขึ้นว่า using Tensorflow / Theano backend)

Deep4

5. Caffe (Commits: 3801, Contributors: 215)

Library สุดท้ายที่จะขอพูดถึงวันนี้ คือ Caffee เป็นอีกหนึ่ง library ที่พัฒนาขึ้นเพื่อนการทำงานกับ Deep Learning Neural Network (อีกแล้ว!) library  นี้พัฒนาขึ้นจากห้องวิจัย Berkeley Artificial Intelligence Research ต้องขอยอมรับไว้ก่อนเลยว่า library นี้เป็น library เดียวจากที่เขียนมากที่ตัวแอดมินเองก็ยังไม่มีโอกาสได้ทดลองใช้งานโดยส่วนตัวเลยซักที แต่ก็ได้ทราบจากการพูดคุยกับเพื่อนๆ ที่ทำงานวิจัยทางด้าน Robotic หรือ  Image Process ที่ Oxford ว่า library  นี้เป็นที่นิยมมากทีเดียว ตั้งขนาดตั้งกลุ่มวิจัยที่ใช้ library นี้โดยเฉพาะ เนื่องจากความได้เปรียบทางด้านความรวดเร็วในการประมวลผลข้อมูล

จบกันไปแล้วนะคะกับ 5 ML Python Libraries ที่เป็นที่นิยมกันในปี 2017 นี้ อย่าลืมหาเวลาไปทดสอบประสิทธิภาพกันนะคะ รับประกันได้ว่ามีประโยชน์กับการทำ Algorithmic Trading อย่างแน่นอน

(ใครสนใจอ่านเพิ่มเติมกันได้ที่นี่นะคะ แต่เป็นสถิติเก่าของปี 2016 (ซึ่งในบทความเป็น 2017)
http://www.kdnuggets.com/2016/11/top-20-python-machine-learning-open-source-updated.html)

 

13062103_233130583716199_6224283738921716075_n
Enjoy Machine Learning!

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s