หลังจากที่เราได้เรียนรู้ด้านทฤษฎีไปแล้วว่าการเรียนรู้ของคอมพิวเตอร์แบบ Linear Regression เป็นอย่างไร ในบทความนี้เราจะกล่าวถึงเครื่องมือที่เราจะใช้ในการจัดการข้อมูลและการทำ Machine Learning ที่เรียกว่า Jupyter Notebook โดยเราจะมาดูกันว่า
- Jupyter Notebook คือ อะไร
- Library ที่สำคัญในการประมาณการข้อมูลของเรา
- Python คือ อะไร เกี่ยวกับการทำ Machine Learning อย่างไร
- ขั้นตอนการติดตั้ง Jupyter Notebook
1. Jupyter Notebook คือ อะไร
Jupyter Notebook คือ เครื่องมือที่ใช้เขียนcodeในการที่เราจะสร้าง machine learning model เป็นเครื่องมือที่ที่นิยมมากในกลุ่มคนที่ทำงานด้าน Data Science เหมาะกับการทำงานที่เกี่ยวกับการจัดการข้อมูลเป็นจำนวนมากแล้วยังต้องรายงานงานวิจัยที่ตนเองได้ทำขึ้นมา
ซึ่งตัว Jupyter Notebook ก็ได้ออกแบบมาตรงตามจุดประสงค์การใช้งานไม่ว่าจะเป็น การเรียกใช้งาน library พร้อมทั้งเขียน code และดูผลได้เลย Jupyter Notebook นั้นถูกออกแบบมาให้ทำงานและอ่านได้ง่ายกว่าการที่เรา text editer รวมไปถึงเรายังสามารถที่จะพิมพ์ตัวหนังสือภาษาไทยลงไปได้เลย เหมือนเราพิมพ์รายงานใน Microsoft Word ได้เลยทีเดียว
2. Library ที่สำคัญในการประมาณการข้อมูลของเรา
ในที่นี้เราจะแนะนำ Library ที่สำคัญในการประมาณการข้อมูลของเรา ซึ่งประกอบไปด้วย
- Numpy คือ library ที่เกี่ยวกับฟังก์ชั่นทางคณิตศาสตร์และการคำนวณต่างๆ โดยมันจะเข้าไปจัดการข้อมูลที่เป็นตารางแบบ array ได้ดี
- Matplotlib เป็น library พื้นฐานในการสร้างกราฟจาก array พล็อตค่าแสดงความสัมพันธ์ของตัวแปร ซึ่งสามารถสร้างกราฟได้ทั้ง 2 มิติ , 3 มิติ, กราฟเส้นตรง, พาราโบลา และกราฟอื่นๆได้หลากหลาย แต่ทั้งนี้การที่มันจะทำงานได้ ต้องมีการใช้ควบคู่ไปกับ numpy
- Pandas เป็น library ที่สำคัญมากๆ การที่เราจะจัดการข้อมูลใดนั้น เราจำเป็นที่จะต้อง import ข้อมูลนั้นๆ และแสดงข้อมูล ซึ่งเราจะใช้คำสั่งจาก Pandas นี่แหละ Pandas สามารถอ่านไฟล์ได้เกือบทั้งหมดไม่ว่าจะเป็นแบบ CSV, TSV,Excel,Zip ,FWF เป็นต้น แต่….ยังไม่หมดแค่นั้น Pandas ยังมีคำสั่งที่จะช่วยเตรียมข้อมูลให้สมบูรณ์ก่อนที่จะนำไปคำนวณ เช่น คำสั่งเรื่อง date and time , การจัดเรียงข้อมูล, การทำ pivot table , การจัดการ missing value เป็นต้น
- Seaborn หากใครที่ต้องการพล็อตกราฟให้สวยขึ้นไปอีก ต้องไม่พลาด library seaborn ตัวนี้ ที่พัฒนาขึ้นมาจาก Matplolib
- Scikit-learn (sklearn) เป็น library ที่สำคัญมากในการทำ Machine Learning ซึ่ง Scikit-learn มี code ที่สามารถจัดการข้อมูลได้หลากหลายมาก ไม่ว่าจะเป็นการทำ Clustering , Classification , regression เป็นต้น ซึ่งในที่นี้เราจะให้คอมพิวเตอร์เรียนรู้แบบ linear regression
นี่เป็นแค่ส่วนหนึ่งเท่านั้น ยังมี library อื่นๆอีกมากที่สามารถ ทำ Data visualization ไม่ว่าจะเป็น statsmodels ,Bokeh, Scipy เป็นต้น เพื่อนๆสามารถเลือกใช้ library ไหนก็ได้ ตามความถนัดและเหมาะสมกับข้อมูลของเราได้เลย
3. Python คืออะไร เกี่ยวกับการทำ Machine Learning อย่างไร
เนื่องจาก Library ทั้งหมดที่กล่าวมา ถูกเขียนขึ้นมาภายใต้ภาษา Python ดังนั้นเพื่อนๆจำเป็นที่จะต้องมีความรู้พื้นฐานเกี่ยวกับ Python ก่อน
Python คือ ภาษาหนึ่งที่ใช้ในการเขียนโปรแกรมคอมพิวเตอร์ คล้ายๆกับ ภาษา c , c++, Java หรือ Javascrip ซึ่งข้อดีของมันที่ทำให้มันเหมาะกับการเขียนคำสั่งให้คอมพิวเตอร์มีการเรียนรู้ตามที่เราต้องการคือ
- Python เป็นภาษาที่ถูกพัฒนาขึ้นมา เพื่อต้องการให้อ่านง่าย คำสั่งที่เขียนขึ้นมาก็ไม่ซับซ้อนเท่ากับภาษาอื่นๆ
- Python ถูกออกแบบให้สามารถทำงานได้ในทุกแพลตฟอร์ม ไม่ว่าจะเป็นใน Windows , Linux,macOS เป็นต้น
- Python เป็น open source ที่เราสามารถนำมาพัฒนาเป็นโปรแกรม หรือคำสั่งของเราเองได้ ดังนั้นจึงมีคนเข้ามาพัฒนาโปรแกรมต่างๆ โดยใช้ภาษา python นี้เป็นพื้นฐาน ทำให้มันมี Library ที่ถูกสร้างและพัฒนาขึ้นสำหรับการทำ Machine Learning และการทำ Data Visualization มากมาย โดยเราสามารถที่จะเรียกใช้ Library นั้นๆได้ฟรี ไม่ว่าจะเป็น numpy ,pandas, sklearn หรือ matplotlib เป็นต้น
ดังนั้น Pythonจึงเป็น ภาษาที่นิยมใช้มากที่สุดในงานด้าน MachineLearning และการทำ Data Visualization โดยอ้างอิงจาก KDnuggetsAnalytics,Data Science,Machine Learning Software poll 2016-2018 ซึ่งเป็นการสำรวจโพลเกี่ยวกับเครื่องมือที่นิยมที่สุดในการทำงานด้าน Analytics,DataScience,Machine Learning 10 อันดับ จากผู้เข้าตอบแบบสำรวจทั้งหมด 2,052 คน

จากภาพการเปรียบเทียบ 10 อันดับเครื่องมือที่ใช้ในการทำงานด้าน Analytics , Data science และ Machine Learning จะเห็นได้ว่า Python เป็นเครื่องมือที่ได้รับความนิยมสูงสุดโดยมีสัดส่วนการใช้มากถึง 65.6% ของเครื่องมือทั้งหมดที่ใช้งานด้าน Analytics,Data science และ Machine Learning ในปี 2018
4. ขั้นตอนการติดตั้ง Jupyter Notebook
เริ่มจากการติดตั้ง Anaconda ซึ่งเป็นที่นิยมมากในหมู่ Data science และการทำ Machine Learning เนื่องจากหากเราติดตั้งตัว Anacoda มันจะมี package ต่างๆมากกว่า 200 packages สำคัญในการใช้ในการประมาณการข้อมูลติดตั้งมาให้ด้วย รวมไปถึงตัว Jupyter notebook ด้วย Anaconda นี้ถือเป็น Onestop-Service ได้เลยทีเดียว โดยการติดตั้งจะเริ่มจาก
เข้าไปที่เว็บไซต์ https://www.anaconda.com/>>> จากนั้น click download ที่มุมบนด้านขวา

จากนั้นเราจะเจอหน้านี้ ซึ่งจะบอกรายละเอียดเกี่ยวกับตัว Anaconda ซึ่งฝั่งขวามือนั้นจะเป็นตัวอย่าง package ที่เราจะได้เมื่อเราติดตั้งตัว Anaconda ซึ่งมีตัว Jupyter Notebook ที่เราต้องการอยู่ด้วย และยังมี numpy , pandas ,matplotlib ที่เราจำเป็นต้องใช้ในการทำการประมาณการต่อไป แต่จริงๆแล้วมันไม่ได้มีเท่านี้ โดยรวมแล้วมันมีมากกว่า 200 packages เราสามารถเข้าไปดูว่ามี package อะไรบ้างในลิ้งนี้เลย (https://docs.anaconda.com/anaconda/packages/py3.7_win-64/)

ในหน้าเดียวกันนี้ ให้เลื่อนลงมข้างล่าง จะเจอ Version ที่เลือกให้เรา Install เราจำเป็นที่จะต้องเลือกรุ่นคอมพิวเตอร์ของเราก่อนว่าใช้ของอะไร ในที่นี้ผู้เขียนใช้ Windows ดังนั้นก็ click Windows >>>จากนั้นก็เลือกที่ python 3.7 version >>> เลือก 64-bit Graphical Installer (486) [ทั้งที่เราจะเลือกขนาดเท่าไร เราจำเป็นที่จะต้องไปเช็คที่ system information>> system type มันจะมีบอกข้อมูลขนาดที่เราควรติดตั้ง]

เมื่อ download เสร็จแล้ว >>>เราก็เข้าไปใน folder ที่เรา download ตัว Anacoda เก็บไว้>>> จากนั้นก็กด install

เมื่อ install เสร็จเรียบร้อยแล้ว >>> ให้ click ที่ค้นหาด้านล่างซ้ายมือ >>> พิมพ์ Anacoda Navigator เพื่อเปิดใช้งาน

เมื่อเปิดเข้ามาแล้ว เราจะเจอ package ต่างๆ ซึ่งหนึ่งในนั้นคือ Jupyter Notebook ที่เราต้องการใช้งาน>>> click Launch เพื่อเปิดใช้งาน Jupyter Notebook

เมื่อเข้ามา เราจะเจอหน้านี้ก่อน ซึ่งมันจะมีการเชื่อมต่อกับ folder ในเครื่องของเรา เราสามารถบันทึกงานจาก Jupyter Notebook ไว้ใน folder ไหนก็ได้ >>> จากนั้นให้ click ตรง New >>> เลือก Python 3 เพื่อสร้างหน้า Notebook ใหม่ ในการทำงาน

เราก็จะได้หน้า Notebook ใหม่ ที่พร้อมใช้งาน ในการที่เราจะประมาณการต่อไป

มาถึงตรงนี้เพื่อนๆคงเข้าใจเกี่ยวกับ Jupyter Notebook บ้างแล้วในบทความต่อไป เราจะมาเริ่มต้นการทำ Data visualization และ Machine Learning โดยใช้ Jupyter Notebook กัน!!!