16 พฤศจิกายน 2558

Published พฤศจิกายน 16, 2558 by with 0 comment

Deep Learning กับภาษาไพทอน

สวัสดีผู้อ่านทุกท่านครับ บทความี้ผมจะพาผู้อ่านไปแนะนำ Deep Learning กับภาษาไพทอนกันครับ




Deep Learning คืออะไร ?
ระบบเรียนรู้เชิงลึก (Deep Learning system) เป็นระบบชุดคำสั่งเพื่อการเรียนรู้ของเครื่องคอมพิวเตอร์ โดยจำลองมาจากระบบประสาทของมนุษย์ เพื่อให้เครื่องคอมพิวเตอร์สามารถเรียนรู้ได้ด้วยตัวมันเอง ปัจจุบันนี้ Deep Learning ได้เข้ามามีบทบาทในชีวิตประจำวัน ตัวอย่างเช่น Speech Recognition ของ Google ใน Android เป็นต้น

เอกสาร Deep Learning ที่ควรศึกษา





ในภาษาไพทอน ได้มีนักวิจัยและนักพัฒนาโปรแกรมได้สร้างโมดูลด้าน Deep Learning ขึ้นมา เพื่อใช้ในงานวิจัยและเพื่อนำไปใช้งานจริง โดยมีโมดูลแนะนำดังนี้ (ใช้งานได้ทั้ง Python 2 และ Python 3)

1. Theano
Theano เป็นโมดูลด้าน numerical computation ในภาษาไพทอน รองรับการทำงานบน GPU และทำงานได้รวดเร็ว จึงเป็นฐานให้กับโมดูลด้าน Deep Learning ส่วนใหญ่ในภาษาไพทอน
ใช้ License: BSD
รองรับทั้ง Python 2 และ Python 3

วิธีติดตั้ง Theano
ในขั้นตอนการติดตั้ง บทความนี้ผมขอตัดส่วนติดตั้งและตั้งค่าให้ทำงานบน GPU ออกครับ เพราะผมไม่ได้ใช้ NVIDIA CUDA ผมจึงเลือกที่จะรันบน CPU เป็นหลักแทนครับ
วิธีติดตั้ง Theano ใน Windows
อ่านรายละอียดได้ที่ https://www.kaggle.com/c/otto-group-product-classification-challenge/forums/t/13973/a-few-tips-to-install-theano-on-windows-64-bits/77314#post77314
วิธีติดตั้ง Theano ใน Debian/Ubuntu
ใช้คำสั่ง
$ sudo apt-get install python3-numpy python3-scipy python3-dev python3-pip python3-nose g++ libopenblas-dev git
$ sudo pip3 install Theano

ตัวอย่างการใช้งาน

[python]
import theano.tensor as T
from theano import function
x = T.dscalar('x') #float64
y = T.dscalar('y') #float64
z = x + y
f = function([x, y], z)

f(2, 3) # array(5.0)
print(f(2, 303))[/python]

ผลลัพธ์
305.0

อ่านเอกสารการใช้งาน Theano ได้ที่ http://deeplearning.net/software/theano/tutorial/และ https://github.com/Newmu/Theano-Tutorials
กลุ่มผู้ใช้งาน Theano https://groups.google.com/forum/#!forum/theano-users




2. Keras เป็น Deep Learning โดยใช้ Theano ช่วยในการทำงาน http://keras.io (MIT License)




3. Lasagne เป็นโมดูลสำหรับ build และ train neural networks โดยใช้ Theano https://github.com/Lasagne/Lasagne (MIT License)




4. Blocks เป็น Theano framework สำหรับใช้ Build และ Training neural networks https://github.com/mila-udem/blocks (MIT License)




5. pylearn2 เป็น Machine Learning โดยใช้ Theano https://github.com/lisa-lab/pylearn2 (BSD 3-clause license)




6. Chainer
Chainer เป็น framework สำหรับใช้สร้าง Deep Learning ในภาษาไพทอน


    • ใช้ MIT License

    • รองรับทั้ง Python 2 และ Python 3




สไลค์แนะนำ Chainer


เว็บไซต์ Chainer http://chainer.org/
เอกสารการใช้งาน Chainer http://docs.chainer.org/




7. theanets
theanets เป็นเครื่องมือสำหรับใช้สร้าง Deep Learning และ Neural Network ในภาษาไพทอน โดยได้ใช้โมดูล theano เป็นฐานในการพัฒนา
เว็บ theanets https://github.com/lmjohns3/theanets
เอกสารการใช้งาน theanets http://theanets.readthedocs.org

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)