# การเรียนรู้ของเครื่อง
การเรียนรู้ของเครื่อง (- ML) เป็นส่วนหนึ่งของปัญญาประดิษฐ์ และเป็นสาขาวิชาที่พัฒนาและการศึกษาแบบจำลองเชิงสถิติที่สามารถเรียนรู้และพัฒนาตัวเองจากข้อมูล ซึ่งมักแบ่งเป็นชุดข้อมูลฝึกฝน ตรวจสอบ และทดสอบ (training, validation, test data set)  แล้ววางนัยทั่วไปหรือคาดการณ์จากข้อมูลใหม่ที่ยังไม่เคยเห็น และทำภารกิจ (task) ต่าง ๆ โดยไม่ต้องระบุคำสั่งอย่างชัดเจน ตัวแบบโครงข่ายประสาทเทียมสามารถแสดงสมรรถนะเหนือแนวทางรูปแบบอื่น ๆ

มีการประยุกต์ใช้การเรียนรู้ของเครื่องในหลากหลายสาขา ไม่ว่าจะเป็นการประมวลภาษาธรรมชาติ คอมพิวเตอร์วิทัศน์ การรู้จำคำพูด การกรองอีเมล (email filtering) การเกษตร และการแพทย์ ในการประยุกต์ใช้ทางธุรกิจ การเรียนรู้ของเครื่องเป็นที่รู้จักในอีกชื่อว่าการพิเคราะห์เชิงทำนาย (predictive analytics) แม้ว่าการเรียนรู้ของเครื่องไม่ได้มีพื้นฐานเชิงสถิติไปทุกรูปแบบ แต่วิธีวิทยาในสาขานี้มาจากสาขาวิชาสถิติเชิงคำนวณ (Computational statistics) เป็นสำคัญ 

พื้นฐานทางคณิตศาสตร์ของการเรียนรู้ของเครื่องประกอบด้วยวิธีการการหาค่าเหมาะที่สุดเชิงคณิตศาสตร์ อีกหนึ่งสาขาวิชาที่เกี่ยวข้องกันคือการทำเหมืองข้อมูลซึ่งสนใจกับการวิเคราะห์ข้อมูลเชิงสำรวจ (exploratory data analysis) ผ่านการเรียนรู้แบบไม่มีผู้สอน 

การเรียนรู้ที่น่าจะถูกต้องโดยประมาณ (Probably approximately correct learning) เป็นกรอบคำอธิบายเชิงทฤษฎีสำหรับการเรียนรู้ของเครื่อง

 ประวัติ 
thumb|ภาพที่ 1 เทคนิคการเรียนรู้ของเครื่องจักร

อาเธอร์ ซามูเอล นักวิทยาศาสตร์คอมพิวเตอร์ชาวอเมริกัน ลูกจ้างไอบีเอ็ม และผู้บุกเบิกสาขาเกมคอมพิวเตอร์กับปัญญาประดิษฐ์  บัญญัติคำว่า machine learning ไว้ใน ค.ศ. 1959 และให้นิยามของการเรียนรู้ของเครื่องไว้ ว่า "เป็นสาขาที่ให้คอมพิวเตอร์มีความสามารถในการเรียนรู้โดยไม่ต้องโปรแกรมให้ชัดเจน" ในช่วงเวลาเดียวกันนั้น มีการใช้คำว่า self-teaching computers (คอมพิวเตอร์สอนตัวเอง)

หนึ่งในตัวแบบเรียนรู้ของเครื่องตัวแรก ๆ ในคริสต์ทศวรรษ 1950 เป็นโปรแกรมคอมพิวเตอร์ที่เขียนขึ้นโดยอาเธอร์ ซามูเอล ซึ่งคำนวณโอกาสชนะของแต่ละฝั่งในตาหมากรุก แต่ประวัติศาสตร์ของการเรียนรู้ของเครื่องมีรากเหง้าจากความพยายามและความปรารถนาที่จะศึกษากระบวนการรู้คิดของมนุษย์เป็นเวลานานนับสิบปี ใน ค.ศ. 1949 นักจิตวิทยาชาวแคนาดา ดอนัลด์ โอ. เฮบบ์ (Donald O. Hebb) เผยแพร่หนังสือ Organization of Behavior ซึ่งเสนอโครงข่ายประสาททางทฤษฎี (Hebbian theory) ที่ประกอบด้วยปฏิสัมพันธ์ระหว่างเซลล์ประสาท ตัวแบบปฏิสัมพันธ์ระหว่างเซลล์ประสาทของเฮบบ์วางรากฐานให้กับการทำงานของปัญญาประดิษฐ์และการเรียนรู้ของเครื่องด้วยโหนด หรือเซลล์ประสาทเทียม (artificial neuron) ที่คอมพิวเตอร์ใช้สื่อสารข้อมูล นอกจากนี้ ยังมีนักตรรกวิทยา วอลเตอร์ พิตส์ (Walter Pitts) และวอร์เรน แมคคัลลอค (Warren Sturgis McCulloch) ผู้เสนอตัวแบบทางคณิตศาสตร์ของโครงข่ายประสาทเป็นขั้นตอนวิธีที่จำลองกระบวนการคิดของมนุษย์

ช่วงต้นคริสต์ทศวรรษ 1960 บริษัทเรย์เธียนได้พัฒนา "เครื่องเรียนรู้" (learning machine) ทดลองด้วยหน่วยความจำแถบกระดาษเจาะรู (punched tape) ชื่อว่า ไซเบอร์ตรอน (Cybertron) สำหรับใช้วิเคราะห์สัญญาณโซนาร์ คลื่นไฟฟ้าหัวใจ และแบบแผนคำพูด ด้วยวิธีการเรียนรู้แบบเสริมกำลังระดับพื้นฐาน โดยมีมนุษย์ผู้ควบคุมคอยฝึกสอนซ้ำหลายครั้งให้รู้จำแบบแผน ผู้ควบคุมมีปุ่ม "goof" ที่ทำให้เครื่องประเมินค่าคำตัดสินที่ผิดพลาดใหม่อีกที หนังสือตัวแทนของงานวิจัยด้านการเรียนรู้ของเครื่องในยุคคริสต์ทศวรรษ 1960 คือ Learning Machines ของนิลส์ จอห์น นิลสัน (Nils John Nilsson) เนื้อหาส่วนใหญ่เกี่ยวกับการเรียนรู้ของเครื่องเพื่อรู้จำแบบ ความสนใจต่อการรู้จำแบบดำรงมาจนถึงคริสต์ทศวรรษ 1970 เช่นในหนังสือของริชาร์ด โอ. ดูดา (Richard O. Duda) และปีเตอร์ อี. ฮาร์ต (Peter E. Hart) Pattern Recognition and Scene Analysis ใน ค.ศ. 1981 มีการเผยแพร่รายงานเกี่ยวกับกลยุทธ์การสอนให้โครงข่ายประสาทเทียมสามารถรู้จำอักขระ 40 ตัว (ตัวอักษร 26 ตัว ตัวเลข 10 ตัว สัญลักษณ์พิเศษ 4 ตัว) จากคอมพิวเตอร์เทอร์มินัล

ทอม เอ็ม. มิตเชลล์ (Tom M. Mitchell) ได้ให้นิยามแบบรูปนัยแก่ขั้นตอนวิธีที่สาขาการเรียนรู้ของเครื่องศึกษาว่า "กล่าวได้ว่าโปรแกรมคอมพิวเตอร์เรียนรู้จากประสบการณ์ E เพื่อทำงานประเภทหนึ่ง T ได้โดยมีประสิทธิผล P เมื่อสามารถทำงาน T ที่วัดผลด้วย P แล้วพัฒนาขึ้นจากประสบการณ์ E" คำนิยามนี้เป็นการจำกัดความการเรียนรู้ของเครื่องในแง่การดำเนินการมากกว่าในแง่ความรู้สึกนึกคิด คล้ายข้อเสนอของแอลัน ทัวริง ในงานเขียนทรงอิทธิพล Computing Machinery and Intelligence ที่เปลี่ยนคำถามว่า "เครื่องจักรคิดได้หรือไม่" เป็นคำถามว่า "เครื่องจักรจะทำงานที่พวกเรา (ในฐานะสิ่งที่มีความคิดความอ่าน) ทำได้หรือไม่"

 ความสัมพันธ์กับสาขาอื่น 
 ปัญญาประดิษฐ์ 
thumb|การเรียนรู้ของเครื่องเป็นสาขาย่อยของปัญญาประดิษฐ์
ศาสตร์ด้านการเรียนรู้ของเครื่องเติบโตจากความพยายามค้นหาปัญญาประดิษฐ์ ในยุคแรก ๆ ของปัญญาประดิษฐ์ในฐานะสาขาวิชา  นักวิทยาศาสตร์สนใจการสร้างเครื่องจักรที่สามารถเรียนรู้จากข้อมูลได้ จึงเริ่มทดลองด้วยวิธีการที่หลายหลาย ไม่ว่าจะด้วยวิธีการทางสัญลักษณ์ หรือด้วยโครงข่ายประสาทเทียม อันประกอบด้วยเพอร์เซปตรอนและตัวแบบอื่นเช่น ADALINE เป็นหลัก ซึ่งในเวลาต่อมาพบว่าเป็นเพียงการคิดค้นขึ้นซ้ำกับตัวแบบเชิงเส้นนัยทั่วไป (generalized linear model) จากวิชาสถิติ และยังได้ใช้การให้เหตุผลเชิงน่าจะเป็น (probabilistic reasoning) โดยเฉพาะในการประยุกต์ด้านการวินิจฉัยโรคอัตโนมัติ (Computer-aided diagnosis)

อย่างไรก็ตาม นักวิจัยในสายปัญญาประดิษฐ์ยุคต่อมาเริ่มหันมาให้ความสำคัญกับแนวทางที่ใช้วิธีการทางตรรกศาสตร์และการแทนความรู้มากขึ้น จนทำให้ปัญญาประดิษฐ์เริ่มแยกตัวออกจากกับศาสตร์การเรียนรู้ของเครื่อง ระบบที่ใช้ความน่าจะเป็นเต็มไปด้วยปัญหาทางทฤษฎีและปฏิบัติ ทั้งในการแทนและการได้มาซึ่งข้อมูล ต่อมาในปี 1980 ระบบผู้เชี่ยวชาญเริ่มโดดเด่นในสายของปัญญาประดิษฐ์จนหมดยุคของการใช้หลักสถิติ งานวิจัยด้านการเรียนรู้เชิงสัญลักษณ์และบนฐานความรู้ยังคงออกมาเรื่อย ๆ จนนำมาสู่การเขียนโปรแกรมเชิงตรรกะแบบอุปนัย ส่วนงานวิจัยด้านสถิติไปมีบทบาทนอกสาขาเฉพาะของปัญญาประดิษฐ์ เช่นในการรู้จำแบบและการค้นคืนสารสนเทศ นักวิจัยสายปัญญาประดิษฐ์และนักวิทยาศาสตร์คอมพิวเตอร์ได้ทิ้งงานวิจัยด้านโครงข่ายประสาทเทียมไปในเวลาเดียวกัน แต่ก็ยังมีนักวิจัยนอกสาขา เช่น จอห์น ฮอปฟีลด์ เดวิด รูเมลฮาร์ต และ เจฟฟรีย์ ฮินตัน ที่ยังพัฒนาโครงข่ายประสาทเทียมต่อไปในชื่อ "connectionism" โดยช่วงกลางคริสต์ทศวรรษ 1980 ได้คิดค้นหลักการการแพร่กระจายย้อนกลับขึ้นใหม่ซ้ำ และประสบความสำเร็จมากมายในเวลาต่อมา

การเรียนรู้ของเครื่อง ที่จัดระเบียบใหม่และเป็นที่รู้จักในฐานะสาขาวิชาเฉพาะตัว เริ่มเฟื่องฟูอีกทีในคริสต์ทศวรรษ 1990 โดยเปลี่ยนเป้าหมายจากปัญญาประดิษฐ์เป็นการจัดการแก้ไขปัญหาเชิงปฏิบัติ และเริ่มหันหน้าจากแนวทางของปัญญาประดิษฐ์เชิงสัญลักษณ์ (symbolic artificial intelligence) ที่ตกทอดมาจากสาขาปัญญาประดิษฐ์ ไปหาวิธีการและตัวแบบที่หยิบยืมจากสาขาสถิติศาสตร์ ตรรกศาสตร์คลุมเครือ และทฤษฎีความน่าจะเป็น

 การทำเหมืองข้อมูล 
ส่วนการเรียนรู้ของเครื่องกับการทำเหมืองข้อมูลมักจะใช้วิธีการเหมือน ๆ กันและมีส่วนคาบเกี่ยวกันอย่างเห็นได้ชัด สิ่งที่แตกต่างระหว่างสองศาสตร์นี้คือ
 การเรียนรู้ของเครื่อง เน้นเรื่องการพยากรณ์ข้อมูลจากคุณสมบัติที่ "รู้" แล้วที่ได้เรียนรู้มาจากข้อมูลชุดสอน
 การทำเหมืองข้อมูล เน้นเรื่องการค้นหาคุณสมบัติที่ "ไม่รู้" มาก่อนจากข้อมูลที่ได้มา กล่าวได้ว่าเป็นขั้นตอนการวิเคราะห์เพื่อค้นหา "ความรู้" ในฐานข้อมูล

สองศาสตร์นี้มีส่วนคาบเกี่ยวกันไม่น้อย คือ การทำเหมืองข้อมูลใช้วิธีการทางการเรียนรู้ของเครื่อง แต่มักจะมีเป้าหมายที่แตกต่างออกไป ส่วนการเรียนรู้ของเครื่องก็ใช้วิธีการของการทำเหมืองข้อมูลบางอย่าง เช่น การเรียนรู้แบบไม่มีผู้สอน หรือขั้นตอนการเตรียมข้อมูลเพื่อปรับปรุงความแม่นยำของการเรียนรู้ ความสับสนปนกันระหว่างสองสาขาวิชามีเหตุจากฐานคติพื้นฐานที่ทั้งสองยึดถือ ในสาขาการเรียนรู้ของเครื่อง ว่าประสิทธิภาพจะประเมินจากความสามารถในการผลิตซ้ำความรู้ที่รู้อยู่แล้ว ส่วนในสาขาการทำเหมืองข้อมูลหรือการค้นหาความรู้ ว่าภารกิจสำคัญคือการค้นหาความรู้ซึ่งไม่รู้มาก่อน วิธีการเรียนรู้แบบไม่มีผู้สอนย่อมด้อยประสิทธิภาพกว่าวิธีการแบบมีผู้สอนหากใช้กับความรู้ที่รู้อยู่แล้ว แต่ในงานของการทำเหมืองข้อมูลส่วนใหญ่นั้นจะไม่สามารถใช้วิธีแบบมีผู้สอนได้ เนื่องจากไม่มีชุดข้อมูลฝึกสอนดังกล่าวให้ใช้

การหาค่าเหมาะที่สุด
การเรียนรู้ของเครื่องยังมีความคล้ายคลึงกับการหาค่าเหมาะที่สุด (optimization) นั่นคือ หลาย ๆ ปัญหาเกี่ยวกับการเรียนรู้มักจะถูกจัดให้อยู่ในรูปแบบของการหาค่าที่น้อยที่สุดของฟังก์ชันการสูญเสีย (loss function) บางอย่างจากข้อมูลชุดสอน ฟังก์ชันการสูญเสียหมายถึงความแตกต่างระหว่างค่าพยากรณ์ของตัวแบบที่กำลังสอนกับตัวอย่างจริงในปัญหา (เช่นการจัดประเภท เมื่อต้องการกำหนดประเภทให้ข้อมูลตัวอย่าง จะเป็นการฝึกสอนตัวแบบให้สามารถพยากรณ์ประเภทของชุดตัวอย่างซึ่งถูกกำหนดไว้ก่อนแล้วได้อย่างถูกต้อง)

 สถิติศาสตร์ 
การเรียนรู้ของเครื่องมีความสัมพันธ์กับสถิติศาสตร์อย่างใกล้ชิดในแง่ของวิธีการ แต่เป้าหมายหลักต่างกัน สถิติศาสตร์หาข้ออนุมาน (statistical inference) เกี่ยวกับประชากรจากกลุ่มตัวอย่างกลุ่มหนึ่ง (sample (statistics) ในขณะที่การเรียนรู้ของเครื่องหาแบบแผนพยากรณ์ที่สามารถวางนัยทั่วไปได้ ไมเคิล ไอ. จอร์แดน (Michael I. Jordan) นักวิทยาศาสตร์คอมพิวเตอร์ชาวอเมริกันชี้ว่าแนวคิดของการเรียนรู้ของเครื่อง ทั้งหลักวิธีวิทยาและเครื่องมือทางทฤษฎี มีที่มาจากสถิติศาสตร์ และเสนอให้ใช้คำว่าวิทยาการข้อมูลไว้เรียกแทนทั้งสาขาวิชา

ในการวิเคราะห์ทางสถิติแบบธรรมดา จำเป็นต้องคัดเลือกหาตัวแบบที่เหมาะสมที่สุดสำหรับชุดข้อมูลที่กำลังจะศึกษาไว้ก่อนล่วงหน้า ซึ่งคจะำนึงถึงตัวแปรที่สำคัญหรือเกี่ยวข้องทางทฤษฎีเท่านั้น โดยอิงกับประสบการณ์ในอดีต ตรงกันข้ามกับการเรียนรู้ของเครื่องซึ่งไม่ได้สร้างขึ้นด้วยตัวแบบที่กำหนดโครงสร้างไว้ก่อน แต่ข้อมูลจะเป็นตัวก่อร่างใหัตัวแบบซึ่งจะตรวจหาแบบแผนที่แฝงอยู่ในนั้น ยิ่งตัวแปรเข้าที่ใช้ใช้ฝึกตัวแบบมีจำนวนมากเท่าใด ตัวแบบสุดท้ายจะยิ่งมีความแม่นยำมากขึ้นเท่านั้น

ลีโอ ไบรแมน (Leo Breiman) มองว่าสามารถแบ่งกรอบการสร้างแบบจำลองเชิงสถิติออกเป็นสองแนว แนวหนึ่งให้ความสำคัญกับข้อมูล ขณะที่อีกแนวให้ความสำคัญกับขั้นตอนวิธีมากกว่า นักสถิติศาสตร์บางคนก็ยังปรับเอาหลักการของการเรียนรู้ของเครื่องไปใช้ นำไปสู่กับผสมผสานกันระหว่างสองศาสตร์ กลายเป็นศาสตร์ที่ชื่อการเรียนรู้ทางสถิติ

 ทฤษฎี 
หัวใจสำคัญของการเรียนรู้ของเครื่องคือ การทำให้แบบจำลองวางนัยทั่วไปจากประสบการณ์ที่ได้มา การวางนัยทั่วไปในบริบทนี้คือความสามารถทำงานด้วยภารกิจหรือตัวอย่างใหม่ที่ไม่เคยเห็นมาก่อนได้อย่างแม่นยำภายหลังจากได้ประสบกับชุดข้อมูลฝึกแล้ว โดยทั่วไป ข้อมูลฝึกจะถูกดึงตัวอย่างมาจากการแจกแจงความน่าจะเป็นในรูปแบบที่ไม่รู้จัก (แต่ซึ่งถือว่าเป็นตัวแทนของข้อมูลที่ดำรงอยู่) และเครื่องจะต้องเรียนรู้เพื่อสร้างตัวแบบทั่วไปของข้อมูล ซึ่งจะทำให้สามารถพยากรณ์จากข้อมูลใหม่ ๆ ได้อย่างถูกต้องเพียงพอ

ทฤษฎีการเรียนรู้เชิงคำนวณ (computational learning theory) เป็นอีกสาขาหนึ่งทางวิทยาการคอมพิวเตอร์เชิงทฤษฎี (theoretical computer science) ซึ่งวิเคราะห์เชิงคำนวณเกี่ยวกับขั้นตอนวิธีและประสิทธิภาพของการเรียนรู้ของเครื่อง ผ่านตัวแบบการเรียนรู้ที่น่าจะถูกต้องโดยประมาณ (Probably approximately correct learning) อย่างไรก็ตาม ทฤษฎีเกี่ยวกับการเรียนรู้ไม่สามารถรับประกันประสิทธิภาพของขั้นตอนวิธีได้เพราะข้อมูลนั้นมีจำกัดและอนาคตมีความไม่แน่นอน แต่ทฤษฎีก็สามารถบอกขอบเขตบนความน่าจะเป็นได้ว่า ประสิทธิภาพน่าจะอยู่ในช่วงใด หนึ่งในวิธีการวัดความคลาดเคลื่อน (errors and residuals) ของการวางนัยทั่วไปคือการแยกความแปรปรวน-ความเอนเอียง (bias–variance decomposition)

สำหรับการวางนัยทั่วไปอย่างมีประสิทธิภาพสูงสุด สมมุติฐานควรมีความซับซ้อนที่ทัดเทียมกับความซับซ้อนของฟังก์ชันที่อยู่เบื้องหลังข้อมูล หากสมมุติฐานซับซ้อนน้อยกว่าฟังก์ชัน ตัวแบบจะเข้ารูปข้อมูลหลวมเกินไป (underfitting) และเมื่อเพิ่มความซับซ้อนของตัวแบบ ค่าความคลาดเคลื่อนหลังการฝึกก็จะลดลง แต่หากสมมุติฐานซับซ้อนเกินไป ตัวแบบก็จะประสบกับปัญหาการเข้ารูปสนิทเกิน (overfitting) และจะสามารถวางนัยทั่วไปได้แย่ลง

นอกจากขอบเขตของประสิทธิภาพแล้ว นักวิทยาศาสตร์ด้านนี้ยังศึกษาความซับซ้อนด้านเวลา (time complexity) และความเป็นไปได้ของการเรียนรู้ของเครื่องด้วย ทฤษฎีการเรียนรู้เชิงคำนวณระบุว่าการคำนวณอันหนึ่งจะถือว่าเป็นไปได้ถ้าสามารถทำได้เสร็จภายในเวลาพหุนาม (polynomial time) โดยสามารถแบ่งออกเป็นสองชนิด หนึ่งคือผลลัพธ์เชิงบวก ซึ่งแสดงว่าฟังก์ชันบางประเภทสามารถเรียนรู้ได้ภายในเวลาพหุนาม และผลลัพธ์เชิงลบ ซึ่งแสดงว่าฟังก์ชันบางประเภทไม่สามารถเรียนรู้ได้ภายในเวลาพหุนาม

 วิธีการเรียนรู้ 

 ประเภทของการเรียนรู้ 
การเรียนรู้ของเครื่องสามารถแบ่งออกเป็นสามประเภทกว้าง ๆ โดยอิงจากกระบวนทัศน์การเรียนรู้ และขึ้นกับลักษณะของ "สัญญาณ" หรือ "ผลป้อนกลับ" ที่ส่งให้กับระบบที่กำลังเรียนรู้:
 การเรียนรู้แบบมีผู้สอน: เครื่องเรียนรู้จะรับเอากลุ่มตัวอย่างของข้อมูลขาเข้าพร้อมกับข้อมูลขาออกที่ประสงค์จาก "ผู้สอน" โดยมีเป้าหมายว่าจะเรียนรู้กฎทั่วไปที่จะส่งข้อมูลขาเข้าเป็นข้อมูลขาออก
 การเรียนรู้แบบไม่มีผู้สอน: เครื่องจะไม่ได้รับ "ฉลาก" หรือข้อมูลขาออกที่ประสงค์ และต้องค้นหาโครงสร้างภายในข้อมูลขาเข้าด้วยตัวของตัวเอง โดยอาจใช้ในการค้นหาแบบแผนที่แฝงตัวอยู่ในข้อมูล หรือใช้เป็นขั้นตอนหนึ่งในกระบวนการเรียนรู้ เช่นในขั้นตอนการเรียนรู้ค่าแทนลักษณะ 
 การเรียนรู้แบบเสริมกำลัง: เครื่องจะปฏิสัมพันธ์กับสภาพแวดล้อมที่มีพลวัต โดยจะต้องทำภารกิจบางอย่าง (เช่นการขับรถ (Self-driving car) หรือการเล่นเกมเอาชนะคู่แข่ง) และระหว่างควานหาทางในปริภูมิของปัญหา เครื่องจะได้รับผลป้อนกลับซึ่งเทียบได้กับรางวัล และเป็นสิ่งที่จะต้องทำค่าให้ได้สูงสุด 
แต่ละขั้นตอนวิธีมีข้อดีและข้อจำกัดแตกต่างกันไป ไม่มีขั้นตอนวิธีอันใดอันหนึ่งซึ่งสามารถใช้ได้กับปัญหาทุกรูปแบบ

 การเรียนรู้แบบมีผู้สอน 

thumb|เครื่องเวกเตอร์ค้ำยัน (SVM) เป็นแบบจำลองการเรียนรู้แบบมีผู้สอนรูปแบบหนึ่ง ซึ่งแบ่งข้อมูลออกเป็นสองฝั่งด้วยเส้นตรง (linear classifier) ในตัวอย่างนี้ เป็นเส้นแบ่งวงกลมสีดำจากวงกลมสีขาว
ขั้นตอนวิธีการเรียนรู้แบบมีผู้สอนเป็นขั้นตอนวิธีที่สร้างตัวแบบทางคณิตศาสตร์ของชุดข้อมูลที่ประกอบด้วยข้อมูลขาเข้าและข้อมูลขาออกที่ต้องการ ข้อมูลนี้เรียกว่าข้อมูลฝึกฝน (training data) เป็นชุดข้อมูลของตัวอย่างที่ใช้ฝึก แต่ละตัวอย่างประกอบด้วยค่าป้อนเข้าซึ่งอาจมีมากกว่าหนึ่งค่า และค่าขาออกที่ต้องการหรือเรียกว่าสัญญาณสอน (supervisory signal) ตัวอย่างฝึกอันหนึ่งจะแทนด้วยแถวลำดับหรือเวกเตอร์ในตัวแบบทางคณิตศาสตร์ เรียกว่า เวกเตอร์ค่าแทนลักษณะ (feature vector) และจะแทนข้อมูลฝึกด้วยเมทริกซ์อันหนึ่ง ขั้นตอนวิธีการเรียนรู้แบบมีผู้สอนจะวนซ้ำหาค่าเหมาะที่สุดของฟังก์ชันการสูญเสีย เพื่อเรียนรู้ฟังก์ชันที่สามารถนำมาใช้ทำนายข้อมูลขาออกซึ่งสัมพันธ์กับข้อมูลขาเข้าใหม่ ๆ ฟังก์ชันที่เหมาะที่สุดคือฟังก์ชันซึ่งทำให้ขั้นตอนวิธีการทำนายข้อมูลขาออกสำหรับข้อมูลขาเข้าที่ไม่ได้อยู่ในชุดข้อมูลฝึกฝนได้อย่างถูกต้อง ขั้นตอนวิธีที่ปรับปรุงความแม่นยำของข้อมูลขาออกหรือคำทำนายเมื่อเวลาผ่านไป กล่าวได้ว่าขั้นตอนวิธีนั้นได้เรียนรู้การทำภารกิจดังกล่าว

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

การเรียนรู้ความคล้าย (similarity learning) เป็นสาขาหนึ่งของการเรียนรู้ของเครื่องแบบมีผู้สอนที่เกี่ยวข้องอย่างยิ่งกับการวิเคราะห์การถดถอยและการแบ่งประเภท แต่มีเป้าหมายที่จะเรียนรู้ฟังก์ชันความคล้ายจากตัวอย่าง ซึ่งวัดความคล้ายหรือความเกี่ยวข้องกันระหว่างสิ่งสองสิ่ง การเรียนรู้รูปแบบนี้มีประยุกต์ใช้ในการจัดอันดับ (ranking) ระบบแนะนำ (recommender system) การพิสูจน์ยืนยันใบหน้า และการพิสูจน์ยืนยันผู้พูด (speaker verification)

 การเรียนรู้แบบไม่มีผู้สอน (unsupervised learning) 
ไม่มีการทำฉลากใด ๆ และให้คอมพิวเตอร์หาโครงสร้างของข้อมูลขาเข้าเอง

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

 การเรียนรู้แบบเสริมกำลัง (reinforcement learning) 
คอมพิวเตอร์มีปฏิสัมพันธ์กับสิ่งแวดล้อมที่เปลี่ยนไปตลอดเวลาโดยคอมพิวเตอร์จะต้องทำงานบางอย่าง (เช่น ขับรถ) โดยที่ไม่มี "ผู้สอน" คอยบอกอย่างจริงจังว่าวิธีการที่ทำอยู่นั้นเข้าใกล้เป้าหมายแล้วหรือไม่ ตัวอย่างเช่น การเรียนรู้เพื่อเล่นเกม การเรียนรู้แบบเสริมกำลัง พิจารณาว่า เอเยนต์ ควรจะมี การกระทำ ใดใน สิ่งแวดล้อม เพื่อที่จะได้ รางวัล สูงสุด ขั้นตอนวิธีของการเรียนรู้แบบเสริมกำลังนี้พยายามจะหา นโยบาย ที่เชื่อมโยง สถานะ ของโลกเข้ากับการกระทำที่เอเยนต์ควรจะทำในสถานะนั้น ๆ การเรียนรู้แบบเสริมกำลังนี้มีความแตกต่างไปจากการเรียนรู้แบบมีผู้สอนตรงที่ว่า คอมพิวเตอร์จะไม่รู้เลยว่าอะไรถูกอะไรผิด กล่าวคือ ไม่มีการบอกอย่างชัดเจนว่าการกระทำใดยังไม่ดี

 การเรียนรู้แบบกึ่งมีผู้สอน (semi supervised Learning) 
เป็นการเรียนรู้อีกแบบหนึ่งที่ระหว่างการเรียนรู้แบบมีผู้สอนกับการเรียนรู้แบบไม่มีผู้สอน โดยที่ "ผู้สอน" จะไม่สอนอย่างสมบูรณ์  นั่นคือ บางข้อมูลในเซ็ตการสอนนั้นขาดข้อมูลขาออก

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

 การเรียนวิธีการเรียน (learning to learn, meta-learning) 
เป็นวิธีที่จะเรียนวิธีการเรียนรู้ของตนเอง โดยปรับปรุงอคติแบบอุปนัยที่เป็นข้อสมมติฐานที่ขั้นตอนวิธีใช้ในการเรียนรู้จากประสบการณ์ที่ผ่านมา

 การเรียนรู้ตัวแทน (representation learning) 
การเรียนรู้บางอย่างโดยเฉพาะการเรียนรู้แบบไม่มีผู้สอนนั้นพยายามจะค้นหาการแทนข้อมูลขาเข้าที่ดีขึ้นเมื่อมีชุดข้อมูลฝึก ตัวอย่างของการเรียนรู้ตัวแทนนี้ได้แก่ การวิเคราะห์องค์ประกอบหลักและการจับกลุ่มข้อมูล ขั้นตอนวิธีการเรียนรู้ตัวแทนมักจะเปลี่ยนข้อมูลไปในรูปแบบที่มีประโยชน์แต่ยังคงรักษาสารสนเทศของข้อมูลเอาไว้ มักใช้ในกระบวนการเตรียมข้อมูลก่อนจะแบ่งประเภทข้อมูลหรือพยากรณ์ ตัวอย่างอื่นของการเรียนรู้ตัวแทนได้แก่ การเรียนรู้เชิงลึก

 การเรียนรู้พจนานุกรมแบบห่าง (sparse dictionary learning) 

 การเรียนรู้กฎความเกี่ยวพัน (association rule learning) 
เป็นวิธีการหาความสัมพันธ์ที่น่าสนใจจากตัวแปรในฐานข้อมูลขนาดใหญ่ นอกจากนี้ยังมีการเขียนโปรแกรมเชิงตรรกะแบบอุปนัย เป็นวิธีการเรียนรู้จากกฎโดยใช้การโปรแกรมตรรกะ เมื่อมีข้อมูลเบื้องหลังและกลุ่มของตัวอย่างที่เป็นฐานข้อมูลตรรกะแล้ว ในการเขียนโปรแกรมเชิงตรรกะแบบอุปนัยจะหาโปรแกรมตรรกะที่ครอบคลุมตัวอย่างบวกแต่ไม่รอบคลุมตัวอย่างลบ

 แบบจำลอง 
การเรียนรู้ของเครื่องเกี่ยวข้องกับการสร้างแบบจำลอง (model) ซึ่งเกิดจากการสอนด้วยข้อมูลสอนและสามารถพยากรณ์ข้อมูลที่เข้ามาใหม่ได้ แบบจำลองมีหลากหลายรูปแบบ ได้แก่

 โครงข่ายประสาทเทียม (artificial neural networks) 
โครงข่ายประสาทเทียม เป็นขั้นตอนวิธีที่ได้แรงบันดาลใจมาจากโครงสร้างและการทำงานของเซลล์ประสาทในสมอง การคำนวณของโครงข่ายประสาทเทียมถูกสร้างเป็นโครงสร้างของการเชื่อมต่อของประสาทเทียมแต่ละตัว ประมวลผลข้อมูลโดยหลักการการเชื่อมต่อ โครงข่ายประสาทเทียมสมัยใหม่เป็นเครื่องวิเคราะห์ทางสถิติที่ไม่เป็นเชิงเส้น มักใช้ในการจำลองความสัมพันธ์ที่ซับซ้อนระหว่างข้อมูลขาเข้าและขาออก เพื่อหารูปแบบจากข้อมูล หรือเพื่อหาโครงสร้างทางสถิติระหว่างตัวแปรที่สำรวจ

 การเรียนรู้ต้นไม้ตัดสินใจ (decision tree learning) 
การเรียนรู้ต้นไม้ตัดสินใจ ใช้ต้นไม้ตัดสินใจในการสร้างแบบจำลองที่พยากรณ์ได้ ซึ่งจะเชื่อมโยงข้อมูลสังเกตการณ์เข้ากับข้อมูลปลายทาง

 เครื่องเวกเตอร์ค้ำยัน (support vector machines) 
เครื่องเวกเตอร์ค้ำยัน เป็นหนึ่งในวิธีการเรียนรู้แบบมีผู้สอน ใช้เพื่อการการแบ่งประเภทข้อมูลและการวิเคราะห์การถดถอย เมื่อมีข้อมูลฝึกมาให้และแต่ละข้อมูลถูกจัดอยู่ในประเภทใดประเภทหนึ่งจากสองประเภท เครื่องเวกเตอร์ค้ำยันจะสร้างแบบจำลองที่สามารถพยากรณ์ได้ว่าตัวอย่างใหม่นี้จะตกอยู่ในกลุ่มใด

 การวิเคราะห์การถดถอย (regression analysis) 

 โครงข่ายแบบเบส์ (Bayesian networks) 
โครงข่ายแบบเบส์ เป็นแบบจำลองความน่าจะเป็นเชิงกราฟที่แทนกลุ่มของตัวแปรสุ่มและความเป็นอิสระแบบมีเงื่อนไขด้วยกราฟอวัฏจักรระบุทิศทาง ตัวอย่างเช่น โครงข่ายแบบเบส์สามารถใช้แทนความสัมพันธ์เชิงความน่าจะเป็นระหว่างอาการแสดงกับโรคได้ เมื่อมีอาการแสดง โครงข่ายจะคำนวณความน่าจะเป็นที่จะเป็นโรคแต่ละโรค มีหลายขั้นตอนวิธีที่สามารถอนุมานและเรียนรู้ได้อย่างมีประสิทธิภาพ

 ขั้นตอนวิธีเชิงพันธุกรรม (genetic algorithms) 
ขั้นตอนวิธีเชิงพันธุกรรม เป็นการค้นหาแบบฮิวริสติกที่เลียนแบบกระบวนการคัดเลือกตามธรรมชาติในช่วงวิวัฒนาการของสิ่งมีชีวิต โดยใช้เทคนิคการกลายพันธุ์ของยีนและการไขว้เปลี่ยนของโครโมโซมในการหาประชากรที่น่าจะอยู่รอดเพื่อพาไปสู่คำตอบของปัญหาได้ ขั้นตอนวิธีนี้ได้รับความสนใจมากในสาขาการเรียนรู้ของเครื่องในช่วงทศวรรษ 1980 และ 1990 และเทคนิคทางการเรียนรู้ของเครื่องก็ช่วยปรับปรุงประสิทธิภาพของขั้นตอนวิธีเชิงพันธุกรรมและขั้นตอนวิธีเชิงวิวัฒนาการเช่นกัน

 การประยุกต์ 

การเรียนรู้ของเครื่อง สามารถประยุกต์ใช้งานได้หลากหลาย เช่น

 เว็บไซต์ปรับรูปแบบเองได้ (Adaptive website)
 การคำนวณเชิงอารมณ์ (affective computing)
 ชีวสารสนเทศศาสตร์ (bioinformatics)
 ส่วนต่อประสานสมอง–คอมพิวเตอร์ (brain–computer interface)
 เคมีสารสนเทศศาสตร์ (chemoinformatics)
 การจัดประเภทลำดับดีเอ็นเอ
 คอมพิวเตอร์วิทัศน์ (computer vision)
 การตรวจจับการฉ้อโกงบัตรเครดิต (credit card fraud)
 การเล่นเกมกลยุทธ์
 การค้นคืนสารสนเทศ (information retrieval)
 การตรวจสอบการฉ้อโกงทางอินเทอร์เน็ต (Internet fraud)
 การรับรู้ของเครื่อง (Machine perception)
 การวินิจฉัยทางการแพทย์ (medical diagnosis)
 การประมวลผลภาษาธรรมชาติ (natural language processing)
 การหาค่าเหมาะที่สุด (optimization)
 ระบบแนะนำ (recommender systems)
 ระบบเคลื่อนไหวของหุ่นยนต์
 เสิร์ชเอนจิน (search engines)
 วิศวกรรมซอฟต์แวร์ (software engineering)
 การรู้จำเสียงพูด (speech recognition)

 ซอฟต์แวร์ 

 ซอฟต์แวร์เสรีและซอฟต์แวร์โอเพนซอร์ส 

 CNTK
 Deeplearning4j
 Keras
 Caffe
 Mahout
 GNU Octave
 OpenNN
 Orange
 scikit-learn
 TensorFlow
 ROOT
 PyTorch
 Weka
 R

 ซอฟต์แวร์จำกัดสิทธิ์ที่มีรุ่นฟรีและโอเพนซอร์ซ 
ซอฟต์แวร์จำกัดสิทธิ์
 ดูเพิ่ม 

 ข้อมูลขนาดใหญ่ (Big data)
 การทำเหมืองข้อมูล (Data mining)
วิทยาการข้อมูล (Data science)