คำว่า ปัญญาประดิษฐ์ (Artificial Intelligence - AI), การเรียนรู้ของเครื่องจักร (Machine Learning - ML) และ การเรียนรู้เชิงลึก (Deep Learning - DL) ทั้งสามคำนี้เป็น Buzzword ที่เราได้ยินบ่อยมากในช่วงไม่กี่ปีที่ผ่านมานี้ พวกมันเป็นเทคโนโลยีที่มีบทบาทสำคัญในช่วงรอยต่อของการทำ Digital Transformation (กระบวนการที่นำเทคโนโลยีดิจิทัลมาใช้เพื่อสร้างสิ่งใหม่ หรือเปลี่ยนแปลงสิ่งเก่าที่ยังใช้วิธีการเดิม ๆ อยู่) สามสิ่งนี้มีการทำงานที่เชื่อมโยงกัน แต่ว่าพวกมันแตกต่างกันค่อนข้างชัดเจน
โดย AI เป็นแนวคิดที่ค่อนข้างกว้าง เราใช้เรียกคำนี้กับเครื่องจักร หรือซอฟต์แวร์ที่สามารถทำงานด้วยวิธีการที่มนุษย์รู้สึกว่า "ฉลาด" ได้ ในการพัฒนา AI ต้องอาศัยวิทยาศาสตร์หลายแขนง แต่ส่วนที่ทำให้เกิดความเปลี่ยนแปลงเด่นชัดที่สุด ส่งผลให้ AI มีพัฒนาการก้าวกระโดดแบบชัดเจน ก็คือ Machine Learning (ML) และ Deep Learning (DL) ที่ทำให้ AI ฉลาดขึ้นกว่าเดิมมาก จนนำไปประยุกต์ใช้ในอุตสาหกรรม และธุรกิจได้หลากหลาย
สำหรับในบทความนี้ เราจะมาเจาะลึกรายละเอียดเกี่ยวกับ Machine Learning (ML) กันเลย ...
คำว่า "Machine Learning" นั้นหากแปลเป็นไทยตรง ๆ ก็คือ "การเรียนรู้ของเครื่องจักร" มันเป็นหน่วยย่อย (Subset) หนึ่งของเทคโนโลยี AI ถูกพัฒนาขึ้นจากแนวคิดที่ว่า "ระบบฉลาดขึ้นได้หากมีข้อมูลให้มันเรียนรู้" ด้วยการอาศัยคลังฐานข้อมูลขนาดใหญ่, จำแนกรูปแบบ และหลักตรรกศาสตร์ ทำให้มันสามารถ "ตัดสิน" ข้อมูลได้โดยไม่ต้องพึ่งพามนุษย์ หรือพึ่งพาแค่เพียงเล็กน้อย
หลังจากที่ผ่านการเรียนรู้เป็นที่เรียบร้อยแล้ว Machine Learning ก็จะสามารถเลือกตัดสินใจเลือกข้อมูลที่จะนำมาตอบสนองต่อคำร้องที่มนุษย์ป้อนคำสั่ง (Prompt) เข้าไปได้อย่างชาญฉลาด
สิ่งสำคัญคือ เราสามารถปรับแต่งตัวโมเดลให้ Machine Learning เรียนรู้ในหัวข้อเฉพาะด้านที่ต้องการได้ ส่งผลให้มันมีความแม่นยำ, มีประสิทธิภาพ และมีความปลอดภัยมากขึ้น จนสามารถนำไปใช้ได้ในงานที่ต้องการความแม่นยำสูง อย่างเช่น งานทางด้านสุขภาพ, บัญชี หรือกฏหมาย
Machine Learning ทำงานด้วยการอาศัยอัลกอริทึมฝึกฝน (Training Algorithm) กับชุดข้อมูล เพื่อให้ได้ผลลัพธ์ตามที่คาดหวัง เช่น การระบุรูปแบบ หรือจดจำวัตถุ โดยการทำ Machine Learning เป็นกระบวนการปรับแต่งโมเดลเพื่อให้ AI สามารถคาดการณ์คำตอบที่ถูกต้องได้โดยอ้างอิงจากตัวอย่างข้อมูลที่มันได้เรียนรู้ไปแล้ว
ข้อมูลเพิ่มเติม : Algorithm คืออะไร ? ดูการทำงาน ข้อดี-ข้อเสีย และประเภทของอัลกอริทึม
ความแม่นยำในการทำงานของ Machine Learning จะขึ้นอยู่กับขนาดของ และคุณภาพของชุดข้อมูลที่มันได้เรียนรู้ ยิ่งมีปริมาณข้อมูลที่มีคุณภาพให้มันเรียนรู้มากเท่าไหร่ โมเดลดังกล่าวก็จะยิ่งตอบสนองได้แม่นยำมากขึ้นเท่านั้น
อัลกอริทึมที่ใช้ในการฝึกฝนโมเดลในขั้นตอนเรียนรู้จะเรียกว่า "Fitting Proess" หากผลลัพธ์ที่ได้ยังไม่เป็นไปตามความคาดหวัง อัลกอริทึมจะเริ่มต้นทำการฝึกฝนใหม่อีกครั้งวนซ้ำไปเรื่อย ๆ จนกว่าจะได้ผลลัพธ์ที่แม่นยำตามที่คาดหวัง
ภาพจาก : https://medium.com/@ngneha090/a-guide-to-supervised-learning-f2ddf1018ee0
มหาวิทยาลัยแคลิฟอร์เนีย เบิร์กลีย์ (University of California, Berkeley) ได้แยกส่วนการทำงานระบบเรียนรู้ของอัลกอริทึมที่ Machine Learning ออกเป็น 3 ส่วน ดังต่อไปนี้
โดยทั่วไปแล้ว หลักอัลกอริทึมที่ใช้จะมีการ "คาดการณ์" หรือ "แบ่งกลุ่ม" โดยอ้างอิงจากชุดข้อมูลที่ถูกป้อนเข้าไป ซึ่งข้อมูลนั้นอาจจะถูกทางอัลกอริทึมติด หรือไม่ติดป้ายกำกับ (Label) ว่ามันเป็นข้อมูลอะไรก็ได้ แต่ท้ายที่สุดแล้วทางอัลกอริทึมจะสามารถคาดการณ์รูปแบบของข้อมูลได้
เราจะรู้ได้อย่างไรว่าข้อมูลที่เรารู้มันถูกต้อง หากไม่มีข้อมูลผิดมาใช้ในการเปรียบเทียบ ดังนั้น คุณสมบัติข้อผิดพลาด (Error Function) จึงถูกนำมาใช้ในการเปรียบเทียบเพื่อวัดความแม่นยำของโมเดล
เมื่อโมเดลได้รับการเทรนจนได้ผลลัพธ์การฝึกฝนในระดับที่น่าพึงพอใจแล้ว ขั้นตอนถัดมาจะเริ่มปรับแต่งการให้น้ำหนักกับแต่ละผลลัพธ์ที่เป็นไปได้ เพื่อลดความคลาดเคลื่อนระหว่างตัวอย่างข้อมูลที่ป้อนเข้าไป กับข้อมูลที่โมเดลคาดการณ์ได้ ค่าน้ำหนักนี้จะถูกปรับไปเรื่อย ๆ จนกว่าจะถึงเกณฑ์ความแม่นยำที่ต้องการ
สำหรับ Machine Learning มีการจำแนกประเภทตามวิธีการที่โมเดลใช้ในการเรียนรู้ ซึ่งมีการแยกออกเป็น 3 ประเภทหลัก ๆ ดังต่อไปนี้
Supervised learning เป็นโมเดล Machine Learning ที่ใช้การติดป้ายกำกับ (Label) ในการจำแนกข้อมูลที่เรียนรู้ อย่างในภาพตัวอย่างด้านล่างนี้ ที่เราป้อนข้อมูลรูปผลแอปเปิลเข้าไปจำนวนมาก จนมันรู้จัก และติดป้ายกำกับว่าภาพลักษณะนี้คือผลแอปเปิล ทำให้ในอนาคตต่อให้เป็นผลแอปเปิลที่มันไม่เคยเห็นมาก่อน มันก็รู้จัก และตอบได้ว่านี่คือผลแอปเปิล
ภาพจาก : https://www.simplilearn.com/tutorials/machine-learning-tutorial/what-is-machine-learning
อัลกอริทึมที่ใช้ในการฝึกฝนแบบ Supervised Learning ประกอบไปด้วย
เป็นโมเดล Machine Learning แบบที่ไม่มีการทำป้ายกำกับข้อมูล หรือข้อมูลแบบไร้โครงสร้าง ในการเรียนรู้รูปแบบข้อมูล ทำให้มันแตกต่างจากการทำงานของโมเดลแบบ Supervised Learning จากการที่มันไม่มีการทำป้ายกำกับ ทำให้มันไม่รู้คำตอบล่วงหน้า
อัลกอริทึมตัวนี้จะเรียนรู้ข้อมูลด้วยตัวเองโดยที่มนุษย์ไม่ต้องคอยกำกับ (มันถึงได้ชื่อว่า Unsupervised) โดยมันจะทำการจัดหมวดหมู่ข้อมูลเป็นกลุ่ม ๆ ตามคุณลักษณะของข้อมูล ตัวอย่างเช่น หากเราป้อนข้อมูลของมะเขือยาว, หอมใหญ่ และพริกหยวกเข้าไป มันจะทำการจัดระเบียบข้อมูลว่าอะไรเป็นอะไร Unsupervised Learning เป็นโมเดลที่เหมาะกับการใช้ในการหาคำตอบเชิงพรรณนา และจับคู่รูปแบบ
ภาพจาก : https://databasetown.com/unsupervised-learning-types-applications/
อัลกอริทึมที่นิยมใช้ในการฝึกฝนแบบ Unsupervised Learning มากที่สุดในปัจจุบันนี้ ประกอบไปด้วย
อย่างไรก็ตาม มีการฝึกโมเดล Machine Learning ที่เรียกว่า "Semi-Superviesed learning ด้วย" โดยวิธีการนี้จะมีการติดป้ายกำกับให้ข้อมูลแค่เพียงบางส่วน ตัวอย่างเช่น หากฝึกฝนให้มันรู้จักผลแอปเปิล ก็จะมีข้อมูลบางส่วนที่ถูกจัดกลุ่มเป็นผลแอปเปิล และมีบางส่วนที่ถูกติดป้ายกำกับเอาไว้เลยว่ามันคือแอปเปิล
เป็นโมเดล Machine Learning ที่ฝึกฝนด้วยการ "เรียนรู้ด้วยการลงมือทำ" เทคนิคนี้จะเรียนรู้ชุดข้อมูลผ่านการทดสอบ และประสบการณ์ที่ผิดพลาดหลายต่อหลายครั้ง โดยจะมีการกำหนด "ตัวแทน" (Agent) ขึ้นมาเพื่อใช้ในการทำบททดสอบต่าง ๆ วนซ้ำไปเรื่อย ๆ จนกว่าจะได้ผลลัพธ์ที่น่าพึงพอใจ
นอกจากนี้ เมื่อ Agent ทำการทดสอบ มันจะเก็บข้อมูล "ผลลัพธ์ที่ดี" และ "ผลลัพธ์ที่ไม่ดี" เก็บเอาไว้ด้วย ในตอนที่ Google พัฒนา AlphaGo ก็ใช้โมเดลรูปแบบนี้ในการฝึกฝนเอไอที่ไม่รู้จักเกมโกะ มันทดลองเดิน "ตาเดิน" ที่แย่ จนรู้ว่าตาเดินไหนที่ดี จนในที่สุดมันก็เรียนรู้ว่า "ตาเดินที่สุด" ต้องเดินแบบไหน ? แล้วเอาชนะผู้เล่นโกะระดับแชมป์โลกได้ในที่สุด
ภาพจาก : https://www.researchgate.net/figure/The-main-types-of-machine-learning-Main-approaches-include-classification-and_fig1_354960266
Machine Learning ถูกสร้างขึ้นมาเพื่อให้คอมพิวเตอร์สามารถ "ตัดสินใจ" ทำสิ่งต่าง ๆ ได้ด้วยตัวเอง โดยที่มนุษย์ไม่จำเป็นต้องเข้าไปควบคุมทุกอย่าง การตัดสินใจของมันอาศัยการฝึกฝนชุดข้อมูลที่มนุษย์ได้ป้อนเข้าไปสอนให้มันรู้จัก
มีการตั้งทฤษฏีเกี่ยวกับการทำงานของเซลล์สมองในปี ค.ศ. 1949 โดย Donald Hebb นักจิตวิทยาชาวแคนาดาผู้มีอิทธิพลในด้านประสาทวิทยา โดยในหนังสือ "The Organization of Behavior" เขาได้เสนอทฤษฏีเกี่ยวกับเซลล์ประสาทเอาไว้ว่า "เมื่อเซลล์มีปฏิสัมพันธ์กับอีกเซลล์หนึ่ง ส่วนปลายสุดของเอ็กซอน (Axon) ที่มีลักษณะโป่งออกเป็นถุงเล็กๆ (Synaptic Knob) จะก่อตัวขึ้น หรือหากมีอยู่แล้วมันก็จะขยายใหญ่ขึ้นเพื่อสื่อสารกับอีกเซลล์หนึ่ง"
ทฤษฏีดังกล่าวสามารถใช้อธิบายความสัมพันธ์ของโครงสร้างประสาทเทียม (Artificial Neurons หรือ Nodes) และความเปลี่ยนแปลงที่เมื่อ Nodes หนึ่งเกิดความเปลี่ยนแปลง จะส่งผลกระทบต่อ Nodes อื่น ๆ ได้อย่างไร ซึ่งความเปลี่ยนแปลงดังกล่าวก็จะมี "น้ำหนัก" ที่แตกต่างกัน ขึ้นอยู่กับความสัมพันธ์ที่มีอยู่ โดยถ้า ทั้งสอง Nodes มีค่าเป็นบวก หรือลบ จะมีน้ำหนักในการส่งผลมาก แต่ถ้าทั้งสอง Nodes มีค่าตรงข้ามกัน น้ำหนักของผลกระทบก็จะยิ่งติดลบ หากเปรียบเป็นสมการทางคณิตศาสตร์ก็อย่างเช่น "1X1=1", "-1x-1=1" แต่ -1x1=-1
ภาพจาก : https://www.brainfacts.org/for-educators/for-the-classroom/2018/squishy-neurons-activity-111918
Arthur Samuel นักพัฒนาแห่งบริษัท IBM ได้พัฒนาซอฟต์แวร์คอมพิวเตอร์สำหรับใช้เล่นหมากรุกขึ้นมาในปี ค.ศ. 1950 (พ.ศ. 2493) แต่ในยุคนั้นคอมพิวเตอร์ยังมีหน่วยความจำต่ำมาก การเขียนโค้ดจึงมีข้อจำกัดมาก เขาจึงพัฒนาเทคนิคที่เรียกว่า "Alpha-Beta Pruning" เป็นการออกแบบให้ตัวหมากคำนวณหาตาเดินที่ดีที่สุดด้วยการคำนวณตำแหน่งของหมากที่เหลืออยู่บนกระดาน ว่าตำแหน่งไหนที่เดินแล้วจะมีโอกาสชนะมากที่สุด โดยอ้างอิงจากหลักการที่เรียกว่า "Minimax Strategy" ซึ่งภายหลังได้พัฒนาเป็นอัลกอริทึมที่เรียกว่า "Minimax algorithm"
ภาพจาก : https://www.r-bloggers.com/2022/07/programming-a-simple-minimax-chess-engine-in-r/
ไม่เพียงเท่านั้น Arthur Samuel ยังพัฒนาอัลกอริทึมขึ้นมาอีกหลายตัวเพื่อช่วยให้ซอฟต์แวร์ทำงานได้ดียิ่งขึ้น โดยตัวเขาเรียกเทคนิคนี้ว่า "Rote Learning" (การเรียนรู้แบบท่องจำ) เขาได้เขียนโค้ดให้ตัวซอฟต์แวร์สามารถบันทึกรูปแบบตาเดิน และจดจำรูปแบบการเดินใหม่ที่เพิ่งเคยเจอลงในฐานข้อมูลได้ จากนั้นก็นำมันมาทำงานร่วมกับระบบคะแนนของตาเดินแต่ละตำแหน่งด้วย Minimax algorithm ด้วยรูปแบบการทำงานในลักษณะนี้ ในปี ค.ศ. 1952 (พ.ศ. 2495) Arthur Samuel ก็ได้บัญญัติคำว่า "Machine Learning" ขึ้นมา
Frank Rosenblatt นักจิตวิทยาชาวอเมริกัน บางครั้งเขาได้รับการยกย่องว่าเป็นบิดาแห่ง Deep Learning เนื่องจากเขาเป็นหนึ่งในผู้บุกเบิกการสร้างระบบเครือข่ายประสาทเทียม (Artificial Neural Networks)
ในปี ค.ศ. 1957 (พ.ศ. 2500) ตอนนั้น Frank Rosenblatt ซึ่งทำงานอยู่ที่ Cornell Aeronautical Laboratory ซึ่งด้านวิทยาศาสตร์ และเทคโนโลยี ได้ร่วมมือกับ Donald Hebb ยังไม่ลืมชื่อนี้นะ เรามีกล่าวถึงเขาไปแล้วในหัวข้อก่อนหน้า และอีกคนคือพี่ Arthur Samuel ที่สร้างเกมหมากรุกบนคอมพิวเตอร์ ร่วมกันสร้าง "Perceptron" ขึ้นมา
เดิมทีพวกเขาจะ Perceptron เป็นซอฟต์แวร์สำหรับติดตั้งในเครื่อง IBM 704 แต่ภายหลังได้เปลี่ยนไปติดตั้งใน Mark 1 Perceptron ซึ่งเป็นเครื่องที่ถูกสร้างขึ้นมาเป็นพิเศษ มันได้รับการยอมรับว่าเป็น Neuro-Computer เครื่องแรกของโลก มันมีความสามารถในการรับรู้ภาพ (Image Recognition) มันถูกใช้ในการวิเคราะห์ภาพ และแจกจ่ายรูปภาพให้กับคอมพิวเตอร์เครื่องอื่น ๆ
เครื่อง Mark I Perceptron ที่ตั้งใน Cornell Aeronautical Laboratory
ภาพจาก : https://en.wikipedia.org/wiki/Perceptron
อย่างไรก็ตาม การพัฒนา Mark I Perceptron ไม่ประสบความสำเร็จตามความคาดหวังเท่าไหร่นัก ถึงมันจะทำงานได้ตามแผน แต่มันก็ไม่สามารถแยกแยะรูปแบบได้มากนัก เช่นว่า ไม่สามารถจำแนกความแตกต่างใบหน้าของมนุษย์ได้ ซึ่งมันส่งผลให้การวิจัยโครงข่ายประสาทเทียมเป็นไปอย่างล่าช้า และนั่นส่งผลให้เงินลงทุน จากนักลงทุนค่อย ๆ ละลายหายไป กว่าที่เทคโนโลยี Neural Network และ Machine Learning จะกลับมามีพัฒนาการที่เด่นชัดอีกครั้ง ก็ข้ามไปถึงช่วงยุค 90 กันเลยทีเดียว
ในปี ค.ศ. 1967 (พ.ศ. 2510) ได้มีการคิดค้นอัลกอริธึมที่ชื่อไทยอ่านแล้วตลกช่ะมัดขึ้นมา นั่นคือ "เพื่อนบ้านที่ใกล้ที่สุด" หรือ "Nearest Neighbor Algorithm)" โดยมันถูกคิดขึ้นมาโดย Marcello Pelillo นักวิทยาศาสตร์คอมพิวเตอร์จากมหาวิทยาลัยเวนิส ประเทศอิตาลี เพื่อใช้คำนวณหาเส้นทางที่พนักงานขายจะเดินทางได้อย่างมีประสิทธิภาพมากที่สุด โดยมันทำงานด้วยการเลือกเมืองเป้าหมายแรก จากนั้นก็ไปเยี่ยมเมืองข้าง ๆ จนกว่าจะครบ แล้วมาคำนวณหาว่าต้องใช้เส้นทางไหน ถึงจะมีระยะทางที่สั้นที่สุด ซึ่งมันถูกเรียกว่า Nearest Neighbor Rules หรือ NN Rule
ภายหลังได้ NN Rule ได้นำมาประยุกต์ใช้ในหลักการในอัลกอริทึม K-Nearest Neighbors (K-NN) ซึ่งเป็นวิธีการที่ใช้ในการจัดแบ่ง หรือจำแนกคลาสของข้อมูล (Classification) โดยหลักการของมันคือมีอยู่ว่า ข้อมูลใหม่ที่ไม่รู้จักมาก่อนจะถูกจัดอยู่ในคลาสชนิดใด ด้วยการดูจากข้อมูลที่มีคุณลักษณะใกล้เคียงกันมากที่สุดในชุดข้อมูลที่มีอยู่เดิม
ในช่วงปี ค.ศ. 1960 (พ.ศ. 2503) ได้มีการค้นพบเทคนิค Multilayer ที่ช่วยเปิดเส้นทางใหม่ให้กับการวิจัย Neural Network โดยนักวิจัยได้ค้นพบว่าหากแบ่งการทำงานของ Perceptron ออกเป็น 2 Layers หรือมากกว่า จะทำให้ประสิทธิภาพในการทำงานดีขึ้นกว่าเดิมมาก ส่งผลให้เครื่อง Neural network ที่ถูกสร้างขึ้นหลังจากนั้น ล้วนแต่ออกแบบมาให้ทำงานแบบหลายชั้น (Multilayers) เป็นหลัก โดยจะมีการเพิ่ม Layers เข้ามาอีก 2 ชั้น คือ Artificial Neural Network (ANN) และ Backpropagation
Backpropagation ถูกสร้างขึ้นมาในช่วงปี ค.ศ. 1970 (พ.ศ. 2513) มันได้พัฒนาโดยมีชั้นลับ (Hidden layers) ของ Neurons/nodes สำหรับทำงานในสถานการณ์ใหม่ที่ไม่เคยเจอมาก่อน โดยเมื่อ Layers หลักเกิดความผิดพลาดในการทำงาน ข้อมูลจะถูกส่งไปยัง Layers สำรองที่ถูกซ่อนไว้ เพื่อให้ระบบทำความเข้าใจกับข้อมูลใหม่ได้
ส่วน Artificial Neural Network (ANN) เป็น Layers ที่ใช้ในการตอบสนองงานที่มีความซับซ้อนกว่าที่การทำงานของ Perceptrons แบบเดิมจะทำได้ โดยมันถูกออกแบบมาให้เปลี่ยนข้อมูลที่ได้รับมาให้เป็นข้อมูลรูปแบบใหม่ที่ Layers อื่น ๆ สามารถนำไปใช้ทำงานต่อได้ มันถูกใช้ในการจำแนกข้อมูลที่มีความซับซ้อนเกินกว่าที่มนุษย์จะแยกได้
ในช่วงระหว่าง ค.ศ. 1970-1980 (พ.ศ. 2513-2523) การวิจัยเทคโนโลยี Artificial Intelligence จะให้ความสำคัญกับตรรกศาสตร์ และอ้างอิงกับความรู้มากกว่าที่จะใช้อัลกอริทึม นอกจากนี้ งานวิจัยด้านประสาทเทียม (Neural network) ก็ไม่ได้รับความสนใจจากนักวิทยาศาสตร์คอมพิวเตอร์ และนักวิจัย Artificial Intelligence
นั่นทำให้เกิดความแบ่งแยกระหว่างการพัฒนา Machine Learning และ Artificial Intelligence ทั้งที่ก่อนหน้านี้ Machine Learning ถูกใช้ในการพัฒนา Artificial Intelligence
อุตสาหกรรม Machine Learning ตกอยู่ในสถานการณ์ลำบากเป็นเวลาเกือบ 10 ปี จนกระทั่ง นักวิจัยทั้งหลายมองเห็นเป้าหมายชัดเจนขึ้นว่า แทนที่จะตั้งเป้าการพัฒนา Machine Learning เพื่อฝึกฝน Artificial Intelligence มาเป็นการช่วยแก้ปัญหาทางสถิติ หาความน่าจะเป็นแทน กอปรกับเป็นยุคที่อินเทอร์เน็ตเริ่มแพร่หลายแล้ว ทำให้การหาข้อมูลมาใช้ในการพัฒนา Machine Learning มีปริมาณข้อมูลใหญ่ขึ้นกว่าเดิมมาก
การ Boosting เป็นองค์ประกอบสำคัญต่อการพัฒนา Machine Learning อย่างมาก อัลกอริทึม Boosting ถูกนำมาใช้ในการลดค่าอคติของข้อมูลที่นำมาฝึกฝน Machine Learning โดยมันได้แนวคิดมาจาก Robert Schapire นักวิทยาศาสตร์คอมพิวเตอร์ชาวอเมริกัน โดยเขาเชื่อว่า "กลุ่มคนโง่ขนาดใหญ่สามารถมีค่าเท่ากับคนฉลาดหนึ่งคน" หลักการคิดมีอยู่ว่าคนโง่อาจตอบคำถามไม่ถูก แต่อย่างน้อยก็ผ่านการคิด และน่าจะได้คำตอบที่ใกล้เคียงมากกว่าการเดาสุ่ม และเมื่อคำตอบมีจำนวนมากพอ ก็น่าจะมีโอกาสที่สักคนในนั้นจะตอบคำถามถูกต้อง
เทคนิค Boosting จะแบ่งข้อมูลที่คุณภาพต่ำเหล่านั้นออกเป็นกลุ่มย่อยจำนวนมาก และเมื่อนำข้อมูลทั้งหมดมาวัดคุณค่าแล้ว ในที่สุดก็จะได้คำตอบที่มีคุณภาพสูงสุดมาหนึ่งอัน ซึ่งมีโอกาสสูงมากที่จะเป็นคำตอบที่ถูกต้อง
ปัจจุบันนี้มีอัลกอริทึม Boosting หลายตัวที่นิยมใช้ในการฝึกฝน Machine Learning เช่น BrownBoost, LPBoost, MadaBoost, TotalBoost, xgboost และ LogitBoost เป็นต้น
การจดจำเสียง (Speech Recognition) ในปัจจุบันนี้จะใช้เทคโนโลยี Deep Learning ที่เรียกว่า "Long short-term memory (LSTM)" เป็นโมเดล Neural network ที่ Jürgen Schmidhuber and Sepp Hochreiter ได้นิยามเอาไว้ในปี ค.ศ. 1997 (พ.ศ. 2540) LTSM สามารถทำงานที่ต้องอาศัยข้อมูลในอดีตที่มีอยู่หลายพันเหตุการณ์ได้ ซึ่งเป็นปัจจัยที่สำคัญต่อการเข้าใจคำพูด
ในช่วงปี ค.ศ. 2007 (พ.ศ. 2550) การทำงานของ LSTM มีประสิทธิภาพเหนือกว่าระบบจดจำเสียงแบบเก่า และเมื่อถึงปี ค.ศ. 2015 (พ.ศ. 2558) ระบบจดจำเสียงของ Google ที่ใช้โมเดล CTC-trained LSTM มีรายงานว่าทำงานได้ดีกว่าเทคนิคดั้งเดิมถึง 49%
เทคโนโลยีจดจำใบหน้าเป็นสิ่งที่ถูกพัฒนามาตั้งแต่ยุคเริ่มต้นของการพัฒนา Machine Learning แต่กว่ามันจะทำได้ดี มีผลลัพธ์ในระดับที่ยอมรับได้ ก็ต้องรอมาจนถึงปี ค.ศ. 2006 (พ.ศ. 2549) โดยทางสถาบันมาตรฐานและเทคโนโลยีแห่งชาติ (National Institute of Standards and Technology) ได้ทำการวัดผลเทคโนโลยีจดจำใบหน้าที่มีอยู่ในขณะนั้น ไม่ว่าจะเป็น การสแกนใบหน้า 3 มิติ, ภาพม่านตา และภาพถ่ายความละเอียดสูง
ผลปรากฏว่าเทคโนโลยีจดจำใบหน้าในปีนี้ แม่นยำกว่าที่ใช้ในปี ค.ศ. 2002 (พ.ศ. 2545) ถึง 10 เท่า และหากเทียบกับเทคโนโลยีของปี ค.ศ. 1995 (พ.ศ. 2538) ก็แม่นยำกว่าถึง 100 เท่า
ในปี ค.ศ. 2012 (พ.ศ. 2555) Google X Lab ได้พัฒนาอัลกอริทึมที่สามารถค้นหาวิดีโอเกี่ยวกับแมวในอินเทอร์เน็ตได้อัตโนมัติ ถัดมาในปี ค.ศ. 2014 (พ.ศ. 2557) ทาง Facebook ได้พัฒนา DeepFace อัลกอริทึมที่สามารถจำแนกบุคคลในภาพได้อย่างแม่นยำออกมา
สำหรับ Machine Learning ในปัจจุบันมีการนำมาใช้อย่างแพร่หลาย ตั้งแต่ในระบบขับขี่รถยนต์อัตโนมัติ ไปจนถึงการสำรวจอวกาศ ไม่นานมานี้ มหาวิทยาลัยสแตนฟอร์ด (Stanford University) ได้นิยามความหมายของ Machine Learning เอาไว้ว่า "ศาสตร์ที่ทำให้คอมพิวเตอร์สามารถงานด้วยตนเองได้ โดยไม่ต้องใช้โปรแกรมที่กำหนดไว้ล่วงหน้า"
|
แอดมินสายเปื่อย ชอบลองอะไรใหม่ไปเรื่อยๆ รักแมว และเสียงเพลงเป็นพิเศษ |