อภิธานศัพท์ของแมชชีนเลิร์นนิง: พื้นฐาน ML

หน้านี้มีคำศัพท์ในอภิธานศัพท์ของ ML Fundamentals ดูคำศัพท์ทั้งหมดในอภิธานศัพท์ได้โดยการคลิกที่นี่

ความแม่นยำ

#fundamentals
#Metric

จํานวนการคาดการณ์การจัดประเภทที่ถูกต้องหารด้วยจํานวนการคาดการณ์ทั้งหมด โดยการ

Accuracy=correct predictionscorrect predictions + incorrect predictions 

ตัวอย่างเช่น โมเดลที่ทําการคาดการณ์ที่ถูกต้อง 40 ครั้งและการคาดการณ์ที่ไม่ถูกต้อง 10 ครั้งจะมีความแม่นยําเท่ากับ

Accuracy=4040 + 10=80%

การจัดประเภทแบบไบนารีจะตั้งชื่อเฉพาะสำหรับการคาดการณ์ที่ถูกต้องและการคาดการณ์ที่ไม่ถูกต้องในหมวดหมู่ต่างๆ ดังนั้น สูตรความแม่นยำสำหรับการจัดประเภทแบบไบนารีจึงมีดังนี้

Accuracy=TP+TNTP+TN+FP+FN

where:

  • TP คือจํานวนผลบวกจริง (การคาดการณ์ที่ถูกต้อง)
  • TN คือจํานวนผลลบจริง (การคาดการณ์ที่ถูกต้อง)
  • FP คือจํานวนผลบวกลวง (การคาดการณ์ที่ไม่ถูกต้อง)
  • FN คือจํานวนผลลบเท็จ (การคาดการณ์ที่ไม่ถูกต้อง)

เปรียบเทียบความถูกต้องกับความแม่นยำและความแม่นยำในการจดจำ

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

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

หมวดหมู่ ตัวเลข
TP 0
TN 36499
FP 0
FN 25

ดังนั้นความแม่นยำของโมเดลนี้คือ

accuracy = (TP + TN) / (TP + TN + FP + FN)
accuracy = (0 + 36499) / (0 + 36499 + 0 + 25) = 0.9993 = 99.93%

แม้ว่าความแม่นยำ 99.93% จะดูเหมือนเป็นเปอร์เซ็นต์ที่น่าประทับใจมาก แต่โมเดลนี้ไม่มีความสามารถในการคาดการณ์

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


ดูข้อมูลเพิ่มเติมได้ในการจัดประเภท: ความแม่นยำ การเรียกคืน ความแม่นยำ และเมตริกที่เกี่ยวข้องในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ฟังก์ชันการเปิดใช้งาน

#fundamentals

ฟังก์ชันที่ช่วยให้เครือข่ายประสาทเทียมเรียนรู้ความสัมพันธ์ที่ไม่ใช่เชิงเส้น (ซับซ้อน) ระหว่างฟีเจอร์กับป้ายกำกับ

ฟังก์ชันการเปิดใช้งานยอดนิยมมีดังนี้

ผังฟังก์ชันการเปิดใช้งานจะไม่ได้เป็นเส้นตรงเส้นเดียว เช่น ผังฟังก์ชันการเปิดใช้งาน ReLU ประกอบด้วยเส้นตรง 2 เส้น ดังนี้

ผังพิกัดคาร์ทีเซียนของ 2 เส้น บรรทัดแรกมีค่า y คงที่ที่ 0 ซึ่งวิ่งไปตามแกน x จาก -infinity,0 ถึง 0,-0
          บรรทัดที่สองเริ่มต้นที่ 0,0 เส้นนี้มีความชัน +1 ดังนั้นจึงวิ่งจาก 0,0 ถึง +infinity,+infinity

ผังฟังก์ชันการเปิดใช้งาน Sigmoid มีลักษณะดังนี้

ผังโค้ง 2 มิติที่มีค่า x ครอบคลุมโดเมนจาก -infinity ถึง +positive ส่วนค่า y ครอบคลุมช่วงเกือบ 0 ถึงเกือบ 1 เมื่อ x เป็น 0, y จะเท่ากับ 0.5 ความชันของเส้นโค้งจะเป็นค่าบวกเสมอ โดยมีค่าสูงสุดที่ 0,0.5 และค่อยๆ ลดลงเมื่อค่าสัมบูรณ์ของ x เพิ่มขึ้น

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

ค่าอินพุต น้ำหนักอินพุต
2 -1.3
-1 0.6
3 0.4
ดังนั้นผลรวมถ่วงน้ำหนักจึงเท่ากับ
weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0
สมมติว่านักออกแบบของเครือข่ายประสาทนี้เลือกฟังก์ชัน sigmoid เป็นฟังก์ชันการเปิดใช้งาน ในกรณีนี้ เซลล์ประสาทจะคํานวณ Sigmoid ของ -2.0 ซึ่งเท่ากับประมาณ 0.12 ดังนั้น นิวรอนจะส่ง 0.12 (แทนที่จะเป็น -2.0) ไปยังเลเยอร์ถัดไปในเครือข่ายประสาทเทียม รูปภาพต่อไปนี้แสดงส่วนที่เกี่ยวข้องของกระบวนการ

เลเยอร์อินพุตที่มี 3 ฟีเจอร์ซึ่งส่งค่าฟีเจอร์ 3 ค่าและน้ำหนัก 3 รายการไปยังเซลล์ประสาทในเลเยอร์ที่ซ่อนอยู่ เลเยอร์ที่ซ่อนจะคํานวณค่าดิบ (-2.0) แล้วส่งค่าดิบไปยังฟังก์ชันการเปิดใช้งาน ฟังก์ชันการเปิดใช้งานจะคํานวณ Sigmoid ของค่าดิบ แล้วส่งผลลัพธ์ (0.12) ไปยังเลเยอร์ถัดไปของเครือข่ายประสาท


ดูข้อมูลเพิ่มเติมได้ที่เครือข่ายประสาท: ฟังก์ชันการเปิดใช้งานในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ปัญญาประดิษฐ์ (AI)

#fundamentals

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

แมชชีนเลิร์นนิงเป็นสาขาย่อยของปัญญาประดิษฐ์ (AI) อย่างไรก็ตาม ในช่วงไม่กี่ปีที่ผ่านมา องค์กรบางแห่งเริ่มใช้คำว่าปัญญาประดิษฐ์และแมชชีนเลิร์นนิงแทนกันได้

AUC (พื้นที่ใต้เส้นโค้ง ROC)

#fundamentals
#Metric

ตัวเลขระหว่าง 0.0 ถึง 1.0 ที่แสดงถึงความสามารถของโมเดลการจัดประเภทแบบไบนารีในการแยกคลาสที่เป็นบวกออกจากคลาสที่เป็นลบ ยิ่ง AUC ใกล้เคียงกับ 1.0 มากเท่าใด ความสามารถในการแยกคลาสออกจากกันของโมเดลก็จะยิ่งดีขึ้นเท่านั้น

ตัวอย่างเช่น ภาพต่อไปนี้แสดงโมเดลการจัดประเภทที่แยกคลาสที่เป็นบวก (รูปไข่สีเขียว) ออกจากคลาสที่เป็นลบ (สี่เหลี่ยมผืนผ้าสีม่วง) อย่างสมบูรณ์ โมเดลที่สมบูรณ์แบบเกินจริงนี้มีค่า AUC เท่ากับ 1.0

เส้นจำนวนที่มีตัวอย่างบวก 8 รายการด้านหนึ่ง และตัวอย่างลบ 9 รายการอีกด้านหนึ่ง

ในทางกลับกัน ภาพต่อไปนี้แสดงผลลัพธ์ของโมเดลการจัดประเภทที่สร้างผลลัพธ์แบบสุ่ม โมเดลนี้มีค่า AUC เท่ากับ 0.5

เส้นจำนวนที่มีตัวอย่างเชิงบวก 6 รายการและตัวอย่างเชิงลบ 6 รายการ
          ลําดับของตัวอย่างคือ บวก ลบ บวก ลบ บวก ลบ บวก ลบ บวก ลบ

ใช่ โมเดลก่อนหน้ามี AUC เท่ากับ 0.5 ไม่ใช่ 0.0

โมเดลส่วนใหญ่อยู่ตรงกลางระหว่าง 2 รูปแบบข้างต้น ตัวอย่างเช่น โมเดลต่อไปนี้แยกรายการเชิงบวกออกจากรายการเชิงลบได้บ้าง จึงมี AUC อยู่ระหว่าง 0.5 ถึง 1.0

เส้นจำนวนที่มีตัวอย่างเชิงบวก 6 รายการและตัวอย่างเชิงลบ 6 รายการ
          ลําดับของตัวอย่างคือ เชิงลบ เชิงลบ เชิงลบ เชิงลบ เชิงบวก เชิงลบ เชิงบวก เชิงบวก เชิงลบ เชิงบวก เชิงบวก เชิงบวก

AUC จะไม่สนใจค่าที่คุณตั้งไว้สําหรับเกณฑ์การจัดประเภท แต่ AUC จะพิจารณาเกณฑ์การจัดประเภทที่เป็นไปได้ทั้งหมดแทน

AUC แสดงถึงพื้นที่ใต้กราฟ ROC ตัวอย่างเช่น กราฟ ROC ของโมเดลที่แยกผลบวกออกจากผลลบได้อย่างสมบูรณ์จะมีลักษณะดังนี้

ผังพิกัดคาร์ทีเซียน โดยแกน X คืออัตราผลบวกลวง ส่วนแกน Y คืออัตราผลบวกจริง กราฟเริ่มต้นที่ 0,0 และขึ้นตรงๆ ไปที่ 0,1 จากนั้นไปทางขวาตรงๆ จนจบที่ 1,1

AUC คือพื้นที่ของบริเวณสีเทาในภาพประกอบก่อนหน้า ในกรณีพิเศษนี้ พื้นที่คือความยาวของบริเวณสีเทา (1.0) คูณด้วยความกว้างของบริเวณสีเทา (1.0) ดังนั้นผลคูณของ 1.0 และ 1.0 จะให้ AUC เท่ากับ 1.0 ซึ่งเป็นคะแนน AUC สูงสุดที่เป็นไปได้

ในทางกลับกัน เส้นโค้ง ROC ของตัวแยกประเภทที่แยกคลาสไม่ได้เลยจะเป็นดังนี้ พื้นที่ของบริเวณสีเทานี้คือ 0.5

ผังพิกัดคาร์ทีเซียน โดยแกน X คืออัตราผลบวกลวง และแกน Y คืออัตราผลบวกจริง กราฟเริ่มต้นที่ 0,0 และลากไปทางทแยงมุมถึง 1,1

เส้นโค้ง ROC ทั่วไปจะมีลักษณะดังต่อไปนี้

ผังพิกัดคาร์ทีเซียน โดยแกน X คืออัตราผลบวกลวง และแกน Y คืออัตราผลบวกจริง กราฟเริ่มต้นที่ 0,0 และโค้งไปทาง 1,0

การคํานวณพื้นที่ใต้เส้นโค้งนี้ด้วยตนเองเป็นเรื่องที่ยุ่งยากมาก โปรแกรมจึงมักคํานวณค่า AUC ส่วนใหญ่


AUC คือความน่าจะเป็นที่ตัวแยกประเภทจะมั่นใจมากขึ้นว่าตัวอย่างเชิงบวกที่เลือกแบบสุ่มเป็นเชิงบวกจริงมากกว่าตัวอย่างเชิงลบที่เลือกแบบสุ่มเป็นเชิงบวก


ดูข้อมูลเพิ่มเติมได้ที่การจัดประเภท: ROC และ AUC ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

B

การย้อนกลับ

#fundamentals

อัลกอริทึมที่นําการลดเชิงลาดไปใช้ในโครงข่ายประสาทเทียม

การฝึกโครงข่ายระบบประสาทเทียมเกี่ยวข้องกับiterationsหลายรอบของวงจรแบบ 2 รอบต่อไปนี้

  1. ในระหว่างการส่งผ่านไปข้างหน้า ระบบจะประมวลผลกลุ่มตัวอย่างเพื่อให้ได้การคาดการณ์ ระบบจะเปรียบเทียบการคาดการณ์แต่ละรายการกับค่าป้ายกำกับแต่ละค่า ส่วนต่างระหว่างการคาดการณ์และค่าป้ายกำกับคือการสูญเสียสำหรับตัวอย่างนั้น ระบบจะรวบรวมการสูญเสียของตัวอย่างทั้งหมดเพื่อคํานวณการสูญเสียทั้งหมดของกลุ่มปัจจุบัน
  2. ในระหว่างการส่งผ่านย้อนกลับ (Backpropagation) ระบบจะลดการสูญเสียด้วยการปรับน้ำหนักของนิวรอนทั้งหมดในเลเยอร์ที่ซ่อนอยู่

เครือข่ายประสาทมักจะมีเซลล์ประสาทหลายเซลล์ในหลายเลเยอร์ที่ซ่อนอยู่ เซลล์ประสาทแต่ละเซลล์มีส่วนทำให้เกิดความสูญเสียโดยรวมในลักษณะที่แตกต่างกัน การย้อนกลับจะกำหนดว่าจะเพิ่มหรือลดน้ำหนักที่ใช้กับเซลล์ประสาทบางเซลล์

อัตราการเรียนรู้คือตัวคูณที่ควบคุมระดับที่การย้อนกลับแต่ละครั้งจะเพิ่มหรือลดน้ำหนักแต่ละรายการ อัตราการเรียนรู้ที่สูงจะเพิ่มหรือลดน้ำหนักแต่ละรายการมากกว่าอัตราการเรียนรู้ที่ต่ำ

ในแง่แคลคูลัส การแสดงผลย้อนกลับจะใช้กฎเชนจากแคลคูลัส กล่าวคือ การแสดงผลย้อนกลับจะคํานวณอนุพันธ์บางส่วนของข้อผิดพลาดเทียบกับพารามิเตอร์แต่ละรายการ

เมื่อหลายปีก่อน ผู้ปฏิบัติงานด้าน ML ต้องเขียนโค้ดเพื่อใช้ Backpropagation ตอนนี้ API ML สมัยใหม่อย่าง Keras ใช้ Backpropagation ให้คุณแล้ว ในที่สุด

ดูข้อมูลเพิ่มเติมเกี่ยวกับเครือข่ายประสาทเทียมในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

กลุ่ม

#fundamentals

ชุดตัวอย่างที่ใช้ในการฝึก 1 ครั้งซ้ำ ขนาดกลุ่มจะกําหนดจํานวนตัวอย่างในกลุ่ม

ดูคำอธิบายว่ากลุ่มเกี่ยวข้องกับยุคสมัยอย่างไรได้ที่ยุคสมัย

ดูข้อมูลเพิ่มเติมได้ที่การหาค่าสัมประสิทธ์เชิงเส้น: ตัวแปรพหุนามในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ขนาดกลุ่ม

#fundamentals

จํานวนตัวอย่างในกลุ่ม เช่น หากขนาดกลุ่มเป็น 100 โมเดลจะประมวลผลตัวอย่าง 100 รายการต่อรอบ

กลยุทธ์ขนาดกลุ่มที่ได้รับความนิยมมีดังนี้

  • Stochastic Gradient Descent (SGD) ซึ่งมีขนาดกลุ่มเป็น 1
  • กลุ่มแบบเต็ม ซึ่งขนาดกลุ่มคือจํานวนตัวอย่างในชุดการฝึกทั้งหมด เช่น หากชุดข้อมูลการฝึกมีตัวอย่าง 1 ล้านรายการ ขนาดกลุ่มจะเป็น 1 ล้านตัวอย่าง โดยปกติแล้ว การใช้กลุ่มเต็มเป็นกลยุทธ์ที่ไม่มีประสิทธิภาพ
  • มินิแบทช์ ซึ่งโดยปกติแล้วขนาดของกลุ่มจะอยู่ระหว่าง 10 ถึง 1,000 โดยปกติแล้ว การส่งกลุ่มย่อยเป็นกลยุทธ์ที่มีประสิทธิภาพมากที่สุด

โปรดดูข้อมูลเพิ่มเติมที่ด้านล่าง

อคติ (จริยธรรม/ความเป็นธรรม)

#fairness
#fundamentals

1. การเหมารวม อคติ หรือการเลือกปฏิบัติต่อบางสิ่ง บุคคล หรือกลุ่มคนมากกว่ากลุ่มอื่น ความลำเอียงเหล่านี้อาจส่งผลต่อการรวบรวมและการตีความข้อมูล การออกแบบระบบ และวิธีที่ผู้ใช้โต้ตอบกับระบบ รูปแบบของอคติประเภทนี้ ได้แก่

2. ข้อผิดพลาดเชิงระบบที่เกิดจากขั้นตอนการสุ่มตัวอย่างหรือการรายงาน รูปแบบของอคติประเภทนี้ ได้แก่

โปรดอย่าสับสนกับคำที่เป็นอคติในโมเดลแมชชีนเลิร์นนิงหรืออคติในการคาดการณ์

ดูข้อมูลเพิ่มเติมได้ที่ความเป็นธรรม: ประเภทของอคติในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

อคติ (คณิตศาสตร์) หรือคําอคติ

#fundamentals

การขัดจังหวะหรือการเลื่อนจากต้นทาง ความลำเอียงคือพารามิเตอร์ในโมเดลแมชชีนเลิร์นนิง ซึ่งแสดงด้วยสัญลักษณ์ต่อไปนี้

  • b
  • w0

เช่น ความลำเอียงคือ b ในสูตรต่อไปนี้

y=b+w1x1+w2x2+wnxn

ในเส้น 2 มิติธรรมดา ความลำเอียงหมายถึง "ค่าตัดแกน y" เช่น ความลำเอียงของเส้นในภาพประกอบต่อไปนี้คือ 2

ผังเส้นที่มีความชัน 0.5 และค่าเบี่ยงเบน (จุดตัด Y) เท่ากับ 2

ความลำเอียงเกิดขึ้นเนื่องจากโมเดลบางรุ่นไม่ได้เริ่มต้นจากจุดเริ่มต้น (0,0) ตัวอย่างเช่น สมมติว่าสวนสนุกมีราคาค่าเข้า 20 บาทและคิดเพิ่มอีก 5 บาทต่อทุกๆ ชั่วโมงที่ลูกค้าเข้าชม ดังนั้น โมเดลที่จับคู่ต้นทุนทั้งหมดจึงมีอคติ 2 เนื่องจากต้นทุนต่ำสุดคือ 2 ยูโร

โปรดอย่าสับสนระหว่างอคติกับอคติด้านจริยธรรมและความยุติธรรมหรืออคติในการคาดการณ์

ดูข้อมูลเพิ่มเติมได้ที่การถดถอยเชิงเส้นในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

การจัดประเภทแบบไบนารี

#fundamentals

งานการจัดประเภทประเภทหนึ่งที่คาดการณ์คลาสใดคลาสหนึ่งจาก 2 คลาสที่ไม่เกี่ยวข้องกัน

ตัวอย่างเช่น โมเดลแมชชีนเลิร์นนิง 2 รายการต่อไปนี้จะทําการจัดประเภทแบบ 2 กลุ่ม

  • โมเดลที่ระบุว่าข้อความอีเมลเป็นสแปม (คลาสบวก) หรือไม่ใช่สแปม (คลาสลบ)
  • โมเดลที่ประเมินอาการทางการแพทย์เพื่อระบุว่าบุคคลมีโรคหนึ่งๆ (คลาสบวก) หรือไม่ (คลาสลบ)

ตรงข้ามกับการจัดประเภทแบบหลายคลาส

ดูข้อมูลเพิ่มเติมได้ที่โลจิสติกรีเกรชัน และเกณฑ์การจัดประเภท

ดูข้อมูลเพิ่มเติมได้ที่การจัดประเภทในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

การแบ่งกลุ่ม

#fundamentals

การเปลี่ยนฟีเจอร์รายการเดียวให้เป็นฟีเจอร์ไบนารีหลายรายการ ซึ่งเรียกว่าที่เก็บหรือกลุ่ม โดยปกติจะอิงตามช่วงค่า โดยปกติแล้วองค์ประกอบที่ตัดออกจะเป็นองค์ประกอบต่อเนื่อง

เช่น แทนที่จะแสดงอุณหภูมิเป็นฟีเจอร์ทศนิยมต่อเนื่องรายการเดียว คุณอาจแบ่งช่วงอุณหภูมิออกเป็นกลุ่มแบบไม่ต่อเนื่อง เช่น

  • <= 10 องศาเซลเซียสจะเป็นกลุ่ม "หนาวเย็น"
  • 11 - 24 องศาเซลเซียสจะอยู่ในหมวดหมู่ "อบอุ่น"
  • อุณหภูมิ >= 25 องศาเซลเซียสจะอยู่ในกลุ่ม "อบอุ่น"

โมเดลจะถือว่าค่าทุกค่าในที่เก็บเดียวกันเหมือนกัน เช่น ค่า 13 และ 22 อยู่ในที่เก็บข้อมูลแบบอบอุ่นทั้งคู่ ดังนั้นโมเดลจะถือว่าค่าทั้งสองเหมือนกัน

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

การเพิ่มจำนวนที่เก็บข้อมูลจะทำให้โมเดลมีความซับซ้อนมากขึ้นเนื่องจากมีความสัมพันธ์ที่โมเดลต้องเรียนรู้มากขึ้น เช่น กลุ่มที่เย็น ปานกลาง และร้อน เป็นหลักคือฟีเจอร์ 3 รายการแยกกันสำหรับโมเดลของคุณในการฝึก หากตัดสินใจเพิ่มอีก 2 กลุ่ม เช่น หนาวจัดและร้อนจัด โมเดลของคุณจะต้องฝึกด้วยฟีเจอร์แยกกัน 5 รายการ

คุณทราบได้อย่างไรว่าควรสร้างที่เก็บข้อมูลกี่รายการ หรือช่วงของที่เก็บข้อมูลแต่ละรายการควรเป็นเท่าใด โดยทั่วไปแล้วคําตอบต้องอาศัยการทดสอบพอสมควร


ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลตัวเลข: การแบ่งกลุ่มในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

C

ข้อมูลเชิงหมวดหมู่

#fundamentals

ฟีเจอร์ที่มีชุดค่าที่เป็นไปได้ที่เฉพาะเจาะจง ตัวอย่างเช่น ให้พิจารณาฟีเจอร์เชิงหมวดหมู่ชื่อ traffic-light-state ซึ่งอาจมีค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

  • red
  • yellow
  • green

การนําเสนอ traffic-light-state เป็นฟีเจอร์เชิงหมวดหมู่จะช่วยให้โมเดลเรียนรู้ผลกระทบที่แตกต่างกันของ red, green และ yellow ต่อพฤติกรรมของผู้ขับขี่

บางครั้งฟีเจอร์เชิงหมวดหมู่เรียกว่าฟีเจอร์แบบไม่ต่อเนื่อง

ตรงข้ามกับข้อมูลตัวเลข

ดูข้อมูลเพิ่มเติมที่หัวข้อการทํางานกับข้อมูลเชิงหมวดหมู่ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

คลาส

#fundamentals

หมวดหมู่ที่ป้ายกํากับสามารถอยู่ได้ เช่น

โมเดลการจัดประเภทจะคาดการณ์คลาส ในทางตรงกันข้าม โมเดลการถดถอยจะคาดการณ์ตัวเลขแทนที่จะคาดการณ์คลาส

ดูข้อมูลเพิ่มเติมได้ที่การจัดประเภทในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

โมเดลการจัดประเภท

#fundamentals

โมเดลที่การคาดการณ์คือคลาส ตัวอย่างเช่น รูปแบบการจัดประเภททั้งหมดมีดังนี้

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

ในทางตรงกันข้าม โมเดลการเกิดปัญหาซ้ำจะคาดการณ์ตัวเลขแทนคลาส

โมเดลการจัดประเภทที่พบได้ทั่วไป 2 ประเภท ได้แก่

เกณฑ์การจัดประเภท

#fundamentals

ในการจัดประเภทแบบไบนารี ตัวเลขระหว่าง 0 ถึง 1 ที่แปลงเอาต์พุตดิบของโมเดลโลจิสติกรีเกรชันเป็นการคาดการณ์คลาสเชิงบวกหรือคลาสเชิงลบ โปรดทราบว่าเกณฑ์การจัดประเภทคือค่าที่มนุษย์เลือก ไม่ใช่ค่าที่การฝึกโมเดลเลือก

โมเดลการถดถอยเชิงเส้นโลจิสติกจะแสดงผลค่าดิบระหว่าง 0 ถึง 1 จากนั้นให้ทำดังนี้

  • หากค่าดิบนี้มากกว่าเกณฑ์การจัดประเภท ระบบจะคาดการณ์คลาสเชิงบวก
  • หากค่าดิบนี้น้อยกว่าเกณฑ์การจัดประเภท ระบบจะคาดการณ์คลาสเชิงลบ

เช่น สมมติว่าเกณฑ์การแยกประเภทคือ 0.8 หากค่าดิบคือ 0.9 แสดงว่าโมเดลคาดการณ์คลาสเชิงบวก หากค่าดิบคือ 0.7 แสดงว่าโมเดลคาดการณ์คลาสเชิงลบ

การเลือกเกณฑ์การจัดประเภทจะมีผลอย่างมากต่อจํานวนผลบวกลวงและผลลบลวง

เมื่อโมเดลหรือชุดข้อมูลพัฒนาขึ้น บางครั้งวิศวกรก็เปลี่ยนเกณฑ์การจัดประเภทด้วย เมื่อเกณฑ์การจัดประเภทเปลี่ยนแปลงไป การคาดการณ์คลาสเชิงบวกอาจกลายเป็นคลาสเชิงลบอย่างฉับพลัน และในทางกลับกัน

เช่น พิจารณาโมเดลการคาดการณ์โรคแบบการจัดประเภทแบบไบนารี สมมติว่าเมื่อระบบทํางานในปีแรก

  • ค่าดิบของผู้ป่วยรายหนึ่งคือ 0.95
  • เกณฑ์การจัดประเภทคือ 0.94

ดังนั้นระบบจึงวินิจฉัยว่าเป็นคลาสที่เป็นบวก (ผู้ป่วยตกใจแล้วพูดว่า "โอ๊ะ ฉันไม่สบาย")

1 ปีต่อมา ค่าต่างๆ อาจมีลักษณะดังนี้

  • ค่าดิบของผู้ป่วยรายเดิมยังคงอยู่ที่ 0.95
  • เกณฑ์การจัดประเภทจะเปลี่ยนเป็น 0.97

ดังนั้นตอนนี้ระบบจึงจัดผู้ป่วยรายนั้นใหม่เป็นกลุ่มลบ ("สุขสันต์วันเกิด ฉันไม่ได้ป่วย") ผู้ป่วยรายเดียวกัน การวินิจฉัยอื่น


ดูข้อมูลเพิ่มเติมเกี่ยวกับเกณฑ์และตารางความสับสนในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ชุดข้อมูลที่มีจำนวนของคลาสไม่สมดุล

#fundamentals

ชุดข้อมูลสําหรับปัญหาการจัดประเภทซึ่งมีจํานวนป้ายกํากับทั้งหมดของแต่ละคลาสแตกต่างกันอย่างมาก ตัวอย่างเช่น พิจารณาชุดข้อมูลการจัดประเภทแบบไบนารีที่มีป้ายกำกับ 2 รายการซึ่งแบ่งออกเป็นดังนี้

  • ป้ายกำกับเชิงลบ 1,000,000 รายการ
  • ป้ายกำกับเชิงบวก 10 รายการ

อัตราส่วนของป้ายกำกับเชิงลบต่อเชิงบวกคือ 100,000 ต่อ 1 ดังนั้นชุดข้อมูลนี้จึงเป็นชุดข้อมูลที่ไม่สมดุลของคลาส

ในทางตรงกันข้าม ชุดข้อมูลต่อไปนี้ไม่มีความไม่สมดุลของคลาส เนื่องจากอัตราส่วนของป้ายกำกับเชิงลบต่อป้ายกำกับเชิงบวกค่อนข้างใกล้เคียงกับ 1

  • ป้ายกำกับเชิงลบ 517 รายการ
  • ป้ายกำกับเชิงบวก 483 รายการ

ชุดข้อมูลหลายคลาสอาจไม่สมดุลตามคลาสได้เช่นกัน ตัวอย่างเช่น ชุดข้อมูลการจัดประเภทแบบหลายคลาสต่อไปนี้ยังมีความไม่สมดุลของคลาสด้วยเนื่องจากป้ายกำกับหนึ่งมีตัวอย่างมากกว่าอีก 2 ป้ายกำกับ

  • ป้ายกำกับ 1,000,000 รายการที่มีคลาส "green"
  • ป้ายกำกับ 200 รายการที่มีคลาส "purple"
  • ป้ายกำกับ 350 รายการที่มีคลาส "orange"

ดูข้อมูลเพิ่มเติมได้ที่เอนโทรปี คลาสส่วนใหญ่ และคลาสส่วนน้อย

การตัด

#fundamentals

เทคนิคการจัดการค่าผิดปกติโดยทําอย่างใดอย่างหนึ่งหรือทั้ง 2 อย่างต่อไปนี้

  • ลดค่าฟีเจอร์ที่มากกว่าเกณฑ์สูงสุดให้เหลือเท่ากับเกณฑ์สูงสุด
  • การเพิ่มค่าฟีเจอร์ที่น้อยกว่าเกณฑ์ขั้นต่ำให้เท่ากับเกณฑ์ขั้นต่ำ

ตัวอย่างเช่น สมมติว่าค่าของฟีเจอร์หนึ่งๆ น้อยกว่า 0.5% อยู่นอกช่วง 40-60 ในกรณีนี้ คุณจะทำสิ่งต่อไปนี้ได้

  • ตัดค่าทั้งหมดที่มากกว่า 60 (เกณฑ์สูงสุด) ให้เท่ากับ 60
  • ตัดค่าทั้งหมดที่ต่ำกว่า 40 (เกณฑ์ขั้นต่ำ) ให้เท่ากับ 40

ค่าผิดปกติอาจทําให้โมเดลเสียหาย และบางครั้งอาจทําให้น้ำหนัก overflow ในระหว่างการฝึก ค่าที่ผิดปกติบางรายการยังอาจทําให้เมตริกต่างๆ เช่น ความแม่นยํา เสียไปอย่างมาก การตัดเสียงเป็นเทคนิคทั่วไปในการจำกัดความเสียหาย

การปัดเศษ Gradient จะบังคับให้ค่า Gradient อยู่ในช่วงที่กำหนดระหว่างการฝึก

ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลตัวเลข: การปรับมาตรฐานในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

เมตริกความสับสน

#fundamentals

ตาราง NxN ที่สรุปจํานวนการคาดการณ์ที่ถูกต้องและไม่ถูกต้องซึ่งโมเดลการจัดประเภททํา ตัวอย่างเช่น ลองดูเมทริกซ์ความสับสนต่อไปนี้สําหรับโมเดลการจัดประเภทแบบไบนารี

เนื้องอก (คาดการณ์) ไม่ใช่เนื้องอก (คาดการณ์)
เนื้องอก (ข้อมูลจากการสังเกตการณ์โดยตรง) 18 (TP) 1 (FN)
ไม่ใช่เนื้องอก (ข้อมูลจากการสังเกตการณ์โดยตรง) 6 (FP) 452 (TN)

เมตริกความสับสนข้างต้นแสดงข้อมูลต่อไปนี้

  • ในการคาดการณ์ 19 รายการที่ข้อมูลจริงคือเนื้องอก โมเดลจัดประเภทได้อย่างถูกต้อง 18 รายการ และจัดประเภทไม่ถูกต้อง 1 รายการ
  • จากการคาดการณ์ 458 รายการที่ข้อมูลจริงคือ "ไม่ใช่เนื้องอก" โมเดลจัดประเภทได้อย่างถูกต้อง 452 รายการ และจัดประเภทอย่างไม่ถูกต้อง 6 รายการ

เมทริกซ์ความสับสนสําหรับปัญหาการจัดประเภทหลายคลาสจะช่วยคุณระบุรูปแบบของข้อผิดพลาด ตัวอย่างเช่น ลองดูตารางความสับสนต่อไปนี้สําหรับโมเดลการจัดประเภทแบบหลายคลาส 3 คลาสที่จัดหมวดหมู่ม่านตา 3 ประเภทที่แตกต่างกัน (Virginica, Versicolor และ Setosa) เมื่อข้อมูลจริงคือ Virginica เมทริกซ์ความสับสนแสดงให้เห็นว่าโมเดลมีแนวโน้มที่จะคาดการณ์ Versicolor ผิดพลาดมากกว่า Setosa อย่างมาก

  Setosa (คาดการณ์) Versicolor (คาดการณ์) Virginica (คาดการณ์)
Setosa (ข้อมูลจากการสังเกตการณ์โดยตรง) 88 12 0
Versicolor (ข้อมูลจากการสังเกตการณ์โดยตรง) 6 141 7
Virginica (ข้อมูลจากการสังเกตการณ์โดยตรง) 2 27 109

อีกตัวอย่างหนึ่งคือ ตารางความสับสนอาจแสดงให้เห็นว่าโมเดลที่ฝึกให้จดจําตัวเลขที่เขียนด้วยลายมือมีแนวโน้มที่จะคาดคะเน 9 แทน 4 หรือคาดคะเน 1 แทน 7

ตารางความสับสนมีข้อมูลที่เพียงพอในการคํานวณเมตริกประสิทธิภาพที่หลากหลาย ซึ่งรวมถึงความแม่นยําและความครอบคลุม

ฟีเจอร์ต่อเนื่อง

#fundamentals

ฟีเจอร์ทศนิยมที่มีค่าที่เป็นไปได้ในขอบเขตอนันต์ เช่น อุณหภูมิหรือน้ำหนัก

ตรงข้ามกับองค์ประกอบแบบไม่ต่อเนื่อง

การบรรจบ

#fundamentals

สถานะที่พบเมื่อค่า loss เปลี่ยนแปลงเพียงเล็กน้อยหรือไม่เปลี่ยนแปลงเลยในแต่ละรอบ ตัวอย่างเช่น เส้นโค้งการสูญเสียต่อไปนี้แสดงให้เห็นการบรรจบกันเมื่อประมาณ 700 รอบ

ผังพิกัดคาร์ทีเซียน แกน X หายไป แกน Y คือจํานวนการทำซ้ำการฝึก การสูญเสียสูงมากในช่วง 2-3 Iteration แรก แต่ลดลงอย่างรวดเร็ว หลังจากทำซ้ำประมาณ 100 ครั้ง ความสูญเสียจะยังคงลดลงแต่ลดลงอย่างช้าๆ หลังจากการทำซ้ำประมาณ 700 ครั้งแล้ว ผลลัพธ์จะคงที่

โมเดลจะบรรลุความสอดคล้องเมื่อการฝึกเพิ่มเติมไม่ช่วยปรับปรุงโมเดล

ในการเรียนรู้เชิงลึก บางครั้งค่าการสูญเสียจะคงที่หรือเกือบคงที่ตลอดการวนซ้ำหลายครั้งก่อนที่จะลดลงในที่สุด ในช่วงที่มีมูลค่าการสูญเสียคงที่เป็นเวลานาน คุณอาจรู้สึกว่ามีการบรรจบกันชั่วคราว

โปรดดูการหยุดก่อนกำหนดด้วย

ดูข้อมูลเพิ่มเติมที่เส้นโค้งการบรรจบของโมเดลและเส้นโค้งการสูญเสียในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

D

DataFrame

#fundamentals

ประเภทข้อมูล pandas ที่ได้รับความนิยมสําหรับแสดงชุดข้อมูลในหน่วยความจํา

กรอบข้อมูลจะคล้ายกับตารางหรือสเปรดชีต คอลัมน์แต่ละคอลัมน์ของ DataFrame จะมีชื่อ (ส่วนหัว) และแต่ละแถวจะระบุด้วยหมายเลขที่ไม่ซ้ำกัน

แต่ละคอลัมน์ใน DataFrame มีโครงสร้างเหมือนอาร์เรย์ 2 มิติ ยกเว้นที่แต่ละคอลัมน์สามารถกําหนดประเภทข้อมูลของตัวเองได้

โปรดดูหน้าอ้างอิงอย่างเป็นทางการของ pandas.DataFrame ด้วย

ชุดข้อมูล

#fundamentals

ชุดข้อมูลดิบ ซึ่งมัก (แต่ไม่ใช่ทั้งหมด) จัดระเบียบในรูปแบบใดรูปแบบหนึ่งต่อไปนี้

  • สเปรดชีต
  • ไฟล์ในรูปแบบ CSV (ค่าที่คั่นด้วยคอมมา)

โมเดลเชิงลึก

#fundamentals

เครือข่ายประสาทเทียมที่มีเลเยอร์ที่ซ่อนอยู่มากกว่า 1 เลเยอร์

โมเดลเชิงลึกเรียกอีกอย่างว่าโครงข่ายประสาทแบบลึก

ตรงข้ามกับรูปแบบกว้าง

องค์ประกอบที่หนาแน่น

#fundamentals

ฟีเจอร์ซึ่งมีค่าส่วนใหญ่หรือทั้งหมดไม่ใช่ 0 ซึ่งโดยปกติแล้วจะเป็น Tensor ของค่าทศนิยม ตัวอย่างเช่น เทนเซอร์ 10 องค์ประกอบต่อไปนี้เป็นแบบหนาแน่นเนื่องจากค่า 9 ค่าไม่ใช่ 0

8 3 7 5 2 4 0 4 9 6

ตรงข้ามกับองค์ประกอบที่กระจัดกระจาย

ความลึก

#fundamentals

ผลรวมของรายการต่อไปนี้ในโครงข่ายประสาทเทียม

เช่น เครือข่ายประสาทที่มีเลเยอร์ที่ซ่อนอยู่ 5 ชั้นและเลเยอร์เอาต์พุต 1 ชั้นจะมีระดับความลึก 6

โปรดทราบว่าเลเยอร์อินพุตไม่มีผลต่อความลึก

ฟีเจอร์แบบไม่ต่อเนื่อง

#fundamentals

ฟีเจอร์ที่มีชุดค่าที่เป็นไปได้แบบจำกัด เช่น ฟีเจอร์ที่มีค่าเป็นได้เพียง สัตว์ ผัก หรือแร่เป็นฟีเจอร์แบบไม่ต่อเนื่อง (หรือแบบหมวดหมู่)

ตรงข้ามกับองค์ประกอบต่อเนื่อง

ไดนามิก

#fundamentals

กิจกรรมที่ทำบ่อยหรือต่อเนื่อง คําว่าแบบไดนามิกและออนไลน์เป็นคําพ้องกันในแมชชีนเลิร์นนิง ต่อไปนี้เป็นการใช้งานแบบไดนามิกและออนไลน์ที่พบบ่อยในแมชชีนเลิร์นนิง

  • โมเดลแบบไดนามิก (หรือโมเดลออนไลน์) คือโมเดลที่ฝึกซ้ำบ่อยครั้งหรืออย่างต่อเนื่อง
  • การฝึกแบบไดนามิก (หรือการฝึกอบรมออนไลน์) คือกระบวนการฝึกอบรมบ่อยครั้งหรืออย่างต่อเนื่อง
  • การอนุมานแบบไดนามิก (หรือการอนุมานออนไลน์) คือกระบวนการสร้างการคาดการณ์ตามคําขอ

โมเดลแบบไดนามิก

#fundamentals

โมเดลที่ได้รับการฝึกใหม่บ่อยครั้ง (หรืออาจฝึกอย่างต่อเนื่อง) รูปแบบแบบไดนามิกคือ "ผู้เรียนรู้ตลอดชีวิต" ที่ปรับตัวให้เข้ากับข้อมูลที่เปลี่ยนแปลงอยู่ตลอดเวลา รูปแบบแบบไดนามิกเรียกอีกอย่างว่ารูปแบบออนไลน์

ตรงข้ามกับโมเดลแบบคงที่

E

การหยุดก่อนกำหนด

#fundamentals

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

การหยุดก่อนกำหนดอาจดูขัดกับสัญชาตญาณ ท้ายที่สุดแล้ว การบอกให้โมเดลหยุดการฝึกอบรมในขณะที่การสูญเสียยังคงลดลงอาจดูเหมือนการบอกเชฟให้หยุดทำอาหารก่อนที่ของหวานจะอบเสร็จ อย่างไรก็ตาม การฝึกโมเดลเป็นเวลานานเกินไปอาจทําให้โมเดลมีการปรับให้พอดีมากเกินไป กล่าวคือ หากคุณฝึกโมเดลนานเกินไป โมเดลอาจปรับให้เข้ากับข้อมูลการฝึกอย่างใกล้ชิดมากจนคาดการณ์ตัวอย่างใหม่ได้ไม่ดี


เลเยอร์การฝัง

#language
#fundamentals

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

ตัวอย่างเช่น ปัจจุบัน Earth รองรับพันธุ์ไม้ประมาณ 73,000 ชนิด สมมติว่าพันธุ์ไม้เป็นฟีเจอร์ในโมเดลของคุณ เลเยอร์อินพุตของโมเดลจึงมีเวกเตอร์แบบฮอตเวิร์กที่มีองค์ประกอบยาว 73,000 รายการ เช่น baobab อาจแสดงเป็นดังนี้

อาร์เรย์ที่มีองค์ประกอบ 73,000 รายการ องค์ประกอบ 6,232 รายการแรกมีค่าเป็น 0 องค์ประกอบถัดไปมีค่า 1 องค์ประกอบสุดท้าย 66,767 รายการมีค่าเป็น 0

อาร์เรย์ที่มีองค์ประกอบ 73,000 รายการนั้นยาวมาก หากไม่เพิ่มเลเยอร์การฝังลงในโมเดล การฝึกจะใช้เวลานานมากเนื่องจากการคูณ 0 72,999 ครั้ง สมมติว่าคุณเลือกเลเยอร์การฝังให้มีมิติข้อมูล 12 รายการ เลเยอร์การฝังจึงค่อยๆ เรียนรู้เวกเตอร์การฝังใหม่สำหรับต้นไม้แต่ละสายพันธุ์

ในบางสถานการณ์ การแฮชเป็นทางเลือกที่สมเหตุสมผลแทนเลเยอร์การฝัง

ดูข้อมูลเพิ่มเติมได้ที่การฝังในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

Epoch

#fundamentals

การฝึกแบบเต็มจะทํางานกับชุดข้อมูลการฝึกทั้งหมดเพื่อให้ระบบประมวลผลตัวอย่างแต่ละรายการ 1 ครั้ง

Epoch แสดงจำนวนรอบการฝึก N/ขนาดกลุ่ม โดยที่ N คือจํานวนตัวอย่างทั้งหมด

ตัวอย่างเช่น สมมติว่า

  • ชุดข้อมูลประกอบด้วยตัวอย่าง 1,000 รายการ
  • ขนาดกลุ่มคือ 50 ตัวอย่าง

ดังนั้น 1 ยุคจึงต้องมีการทําซ้ำ 20 ครั้ง

1 epoch = (N/batch size) = (1,000 / 50) = 20 iterations

ดูข้อมูลเพิ่มเติมได้ที่การหาค่าสัมประสิทธ์เชิงเส้น: ตัวแปรพหุนามในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ตัวอย่าง

#fundamentals

ค่าของฟีเจอร์ 1 แถวและป้ายกำกับ (ไม่บังคับ) ตัวอย่างในการเรียนรู้แบบควบคุมจะแบ่งออกเป็น 2 หมวดหมู่ทั่วไป ดังนี้

  • ตัวอย่างที่มีป้ายกำกับประกอบด้วยฟีเจอร์อย่างน้อย 1 รายการและป้ายกำกับ ระบบจะใช้ตัวอย่างที่มีป้ายกำกับในระหว่างการฝึก
  • ตัวอย่างที่ไม่มีป้ายกำกับประกอบด้วยฟีเจอร์อย่างน้อย 1 รายการแต่ไม่มีป้ายกำกับ ระบบจะใช้ตัวอย่างที่ไม่มีป้ายกำกับในระหว่างการอนุมาน

ตัวอย่างเช่น สมมติว่าคุณกําลังฝึกโมเดลเพื่อระบุอิทธิพลของสภาพอากาศที่มีต่อคะแนนสอบของนักเรียน ตัวอย่างที่มีป้ายกำกับ 3 รายการมีดังนี้

ฟีเจอร์ ป้ายกำกับ
อุณหภูมิ ความชื้น ความกดอากาศ คะแนนสอบ
15 47 998 ดี
19 34 1020 ดีมาก
18 92 1012 แย่

ตัวอย่างที่ไม่มีป้ายกำกับ 3 รายการมีดังนี้

อุณหภูมิ ความชื้น ความกดอากาศ  
12 62 1014  
21 47 1017  
19 41 1021  

แถวของชุดข้อมูลมักเป็นแหล่งข้อมูลดิบสําหรับตัวอย่าง กล่าวคือ ตัวอย่างมักจะประกอบด้วยชุดย่อยของคอลัมน์ในชุดข้อมูล นอกจากนี้ ฟีเจอร์ในตัวอย่างยังอาจรวมถึงฟีเจอร์สังเคราะห์ เช่น การครอสฟีเจอร์

ดูข้อมูลเพิ่มเติมได้ที่การเรียนรู้แบบควบคุมดูแลในหลักสูตรข้อมูลเบื้องต้นเกี่ยวกับแมชชีนเลิร์นนิง

F

ผลลบลวง (FN)

#fundamentals
#Metric

ตัวอย่างที่โมเดลคาดการณ์คลาสเชิงลบอย่างไม่ถูกต้อง เช่น โมเดลคาดการณ์ว่าข้อความอีเมลหนึ่งๆ ไม่ใช่สแปม (คลาสเชิงลบ) แต่ข้อความอีเมลนั้นเป็นจดหมายขยะจริงๆ

ผลบวกลวง (FP)

#fundamentals
#Metric

ตัวอย่างที่โมเดลคาดการณ์คลาสบวกอย่างไม่ถูกต้อง เช่น โมเดลคาดการณ์ว่าข้อความอีเมลหนึ่งๆ เป็นจดหมายขยะ (คลาสเชิงบวก) แต่ข้อความอีเมลนั้นไม่ใช่จดหมายขยะจริงๆ

ดูข้อมูลเพิ่มเติมเกี่ยวกับเกณฑ์และตารางความสับสนในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

อัตราผลบวกลวง (FPR)

#fundamentals
#Metric

สัดส่วนของตัวอย่างเชิงลบจริงที่โมเดลคาดการณ์คลาสที่เป็นบวกอย่างไม่ถูกต้อง สูตรต่อไปนี้จะคํานวณอัตราผลบวกลวง

false positive rate=false positivesfalse positives+true negatives

อัตราผลบวกลวงคือแกน x ในกราฟ ROC

ดูข้อมูลเพิ่มเติมได้ที่การจัดประเภท: ROC และ AUC ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ฟีเจอร์

#fundamentals

ตัวแปรอินพุตของโมเดลแมชชีนเลิร์นนิง ตัวอย่างประกอบด้วยฟีเจอร์อย่างน้อย 1 รายการ ตัวอย่างเช่น สมมติว่าคุณกําลังฝึกรูปแบบเพื่อระบุอิทธิพลของสภาพอากาศที่มีต่อคะแนนสอบของนักเรียน ตารางต่อไปนี้แสดงตัวอย่าง 3 รายการ โดยแต่ละรายการมีฟีเจอร์ 3 รายการและป้ายกำกับ 1 รายการ

ฟีเจอร์ ป้ายกำกับ
อุณหภูมิ ความชื้น ความกดอากาศ คะแนนสอบ
15 47 998 92
19 34 1020 84
18 92 1012 87

คอนทราสต์กับป้ายกำกับ

ดูข้อมูลเพิ่มเติมได้ที่การเรียนรู้แบบควบคุมในหลักสูตรข้อมูลเบื้องต้นเกี่ยวกับแมชชีนเลิร์นนิง

การครอสฟีเจอร์

#fundamentals

ฟีเจอร์สังเคราะห์ที่เกิดจากการ "ครอส" ฟีเจอร์เชิงหมวดหมู่หรือฟีเจอร์ที่มีการแบ่งกลุ่ม

ตัวอย่างเช่น ลองพิจารณาโมเดล "การคาดการณ์อารมณ์" ที่แสดงอุณหภูมิในหนึ่งในกลุ่ม 4 กลุ่มต่อไปนี้

  • freezing
  • chilly
  • temperate
  • warm

และแสดงความเร็วลมในหมวดหมู่ใดหมวดหมู่หนึ่งต่อไปนี้

  • still
  • light
  • windy

หากไม่มีการครอสฟีเจอร์ รูปแบบเชิงเส้นจะฝึกแยกกันในแต่ละกลุ่มที่ต่างกัน 7 กลุ่มก่อนหน้า ดังนั้น โมเดลจะฝึกจากตัวอย่าง เช่น freezing โดยไม่เกี่ยวข้องกับการฝึกจากตัวอย่าง เช่น windy

หรือจะสร้างฟีเจอร์ครอสของอุณหภูมิและความเร็วลมก็ได้ ฟีเจอร์สังเคราะห์นี้จะมีค่าที่เป็นไปได้ 12 ค่าต่อไปนี้

  • freezing-still
  • freezing-light
  • freezing-windy
  • chilly-still
  • chilly-light
  • chilly-windy
  • temperate-still
  • temperate-light
  • temperate-windy
  • warm-still
  • warm-light
  • warm-windy

การครอสฟีเจอร์ช่วยให้โมเดลเรียนรู้ความแตกต่างของอารมณ์ระหว่างfreezing-windyวันกับfreezing-stillวัน

หากคุณสร้างฟีเจอร์สังเคราะห์จากฟีเจอร์ 2 รายการที่แต่ละรายการมีที่เก็บข้อมูลที่แตกต่างกันจํานวนมาก การรวมฟีเจอร์ที่ได้จะมีชุดค่าผสมที่เป็นไปได้จํานวนมหาศาล เช่น หากฟีเจอร์หนึ่งมีที่เก็บข้อมูล 1,000 รายการ และอีกฟีเจอร์หนึ่งมีที่เก็บข้อมูล 2,000 รายการ การครอสฟีเจอร์ที่ได้จะมีที่เก็บข้อมูล 2,000,000 รายการ

ครอสเป็นผลคูณคาร์ทีเซียน

การครอสฟีเจอร์มักใช้กับโมเดลเชิงเส้นและไม่ค่อยใช้กับเครือข่ายประสาท

ดูข้อมูลเพิ่มเติมที่ข้อมูลเชิงหมวดหมู่: ฟีเจอร์ครอสในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

Feature Engineering

#fundamentals
#TensorFlow

กระบวนการที่มีขั้นตอนต่อไปนี้

  1. พิจารณาว่าฟีเจอร์ใดบ้างที่อาจมีประโยชน์ในการเทรนโมเดล
  2. แปลงข้อมูลดิบจากชุดข้อมูลเป็นฟีเจอร์เหล่านั้นในเวอร์ชันที่มีประสิทธิภาพ

เช่น คุณอาจพิจารณาว่า temperature อาจเป็นฟีเจอร์ที่มีประโยชน์ จากนั้น คุณอาจลองใช้การแบ่งกลุ่มเพื่อเพิ่มประสิทธิภาพสิ่งที่โมเดลสามารถเรียนรู้จากช่วง temperature ที่ต่างกัน

บางครั้งเราเรียกวิศวกรรมด้านฟีเจอร์ว่าการดึงข้อมูลฟีเจอร์หรือการสร้างฟีเจอร์

ใน TensorFlow การสร้างองค์ประกอบของฟีเจอร์มักหมายถึงการแปลงรายการไฟล์บันทึกดิบเป็นบัฟเฟอร์โปรโตคอล tf.Example โปรดดูหัวข้อ tf.Transform ด้วย


ดูข้อมูลเพิ่มเติมที่ข้อมูลตัวเลข: วิธีที่โมเดลนำเข้าข้อมูลโดยใช้เวกเตอร์ฟีเจอร์ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ชุดฟีเจอร์

#fundamentals

กลุ่มฟีเจอร์ที่โมเดลแมชชีนเลิร์นนิงใช้ฝึก เช่น ชุดฟีเจอร์ง่ายๆ สําหรับโมเดลที่คาดการณ์ราคาบ้านอาจประกอบด้วยรหัสไปรษณีย์ ขนาดที่พัก และสภาพที่พัก

เวกเตอร์องค์ประกอบ

#fundamentals

อาร์เรย์ของค่า feature ที่ประกอบไปด้วยตัวอย่าง เวกเตอร์ลักษณะจะป้อนระหว่างการฝึกและระหว่างการอนุมาน ตัวอย่างเช่น เวกเตอร์ลักษณะสําหรับโมเดลที่มี 2 ลักษณะที่แยกกันอาจมีลักษณะดังนี้

[0.92, 0.56]

4 เลเยอร์ ได้แก่ เลเยอร์อินพุต เลเยอร์ที่ซ่อนอยู่ 2 เลเยอร์ และเลเยอร์เอาต์พุต 1 เลเยอร์
          เลเยอร์อินพุตมีโหนด 2 โหนด โดยโหนดหนึ่งมีค่า 0.92 และอีกโหนดมีค่า 0.56

ตัวอย่างแต่ละรายการระบุค่าที่แตกต่างกันสำหรับเวกเตอร์ลักษณะ ดังนั้นเวกเตอร์ลักษณะของตัวอย่างถัดไปจึงอาจเป็นดังนี้

[0.73, 0.49]

วิศวกรรมด้านฟีเจอร์จะกําหนดวิธีแสดงฟีเจอร์ในเวกเตอร์ฟีเจอร์ เช่น ฟีเจอร์เชิงหมวดหมู่แบบไบนารีที่มีค่าที่เป็นไปได้ 5 ค่าอาจแสดงด้วยการเข้ารหัส One-Hot ในกรณีนี้ ส่วนของเวกเตอร์ลักษณะสำหรับตัวอย่างหนึ่งๆ จะประกอบด้วย 0 4 ตัวและ 1.0 1 ตัวในตำแหน่งที่ 3 ดังนี้

[0.0, 0.0, 1.0, 0.0, 0.0]

อีกตัวอย่างหนึ่งคือสมมติว่าโมเดลของคุณประกอบด้วยฟีเจอร์ 3 รายการ ได้แก่

  • ฟีเจอร์เชิงหมวดหมู่แบบไบนารีซึ่งมีค่าที่เป็นไปได้5 ค่าที่แสดงด้วยการเข้ารหัสแบบฮอตเดียว เช่น [0.0, 1.0, 0.0, 0.0, 0.0]
  • ฟีเจอร์เชิงหมวดหมู่แบบไบนารีอีกรายการที่มีค่าที่เป็นไปได้3 ค่าซึ่งแสดงด้วยการเข้ารหัสแบบฮอตเดียว เช่น [0.0, 0.0, 1.0]
  • ฟีเจอร์จุดลอยตัว เช่น 8.3

ในกรณีนี้ เวกเตอร์ฟีเจอร์ของตัวอย่างแต่ละรายการจะแสดงด้วยค่า 9 ค่า เมื่อพิจารณาจากค่าตัวอย่างในรายการก่อนหน้า เวกเตอร์ลักษณะจะเป็นดังนี้

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

ดูข้อมูลเพิ่มเติมที่ข้อมูลตัวเลข: วิธีที่โมเดลนำเข้าข้อมูลโดยใช้เวกเตอร์ฟีเจอร์ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

รายงานความคิดเห็น

#fundamentals

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

ดูข้อมูลเพิ่มเติมได้ที่ระบบ ML เวอร์ชันที่ใช้งานจริง: คำถามที่ควรถามในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

G

การทั่วไป

#fundamentals

ความสามารถของโมเดลในการทําการคาดการณ์ที่ถูกต้องเกี่ยวกับข้อมูลใหม่ซึ่งไม่เคยเห็นมาก่อน โมเดลที่ทํานายได้ทั่วไปจะตรงข้ามกับโมเดลที่ปรับให้พอดีมากเกินไป

คุณฝึกโมเดลด้วยตัวอย่างในชุดการฝึก ด้วยเหตุนี้ โมเดลจึงเรียนรู้ความผิดปกติของข้อมูลในชุดการฝึก การทํานายทั่วไปคือการถามว่าโมเดลของคุณทําการคาดการณ์ที่ดีกับตัวอย่างที่ไม่ได้อยู่ในชุดข้อมูลการฝึกหรือไม่

การปรับให้เหมาะสมจะช่วยโมเดลในการฝึกให้น้อยลงตรงกับความผิดปกติของข้อมูลในชุดการฝึก เพื่อส่งเสริมให้เกิดการทั่วไป


ดูข้อมูลเพิ่มเติมได้ที่การทั่วไปในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

เส้นโค้งการทั่วไป

#fundamentals

ผังทั้งการลดลงของการฝึกและการลดลงของการตรวจสอบตามจำนวนการทำซ้ำ

เส้นโค้งทั่วไปจะช่วยคุณตรวจหาการประมาณที่มากเกินไปที่อาจเกิดขึ้น ตัวอย่างเช่น เส้นโค้งทั่วไปต่อไปนี้บ่งชี้ว่ามีการจับคู่ที่มากเกินไปเนื่องจากความสูญเสียในการตรวจสอบจะสูงกว่าความสูญเสียในการฝึกอย่างมากในท้ายที่สุด

กราฟคาร์ทีเซียนที่แกน Y มีป้ายกำกับว่า &quot;การสูญเสีย&quot; และแกน X มีป้ายกำกับว่า &quot;การทำซ้ำ&quot; ผัง 2 รายการจะปรากฏขึ้น ผังหนึ่งแสดงการสูญเสียในการฝึกอบรมและอีกผังหนึ่งแสดงการสูญเสียในการทดสอบ
          แผนภูมิ 2 แผนภูมินี้เริ่มต้นในลักษณะคล้ายกัน แต่ในที่สุดแล้ว Loss ของการฝึกก็ลดลงต่ำกว่า Loss ของการตรวจสอบ

ดูข้อมูลเพิ่มเติมได้ที่การทั่วไปในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

การลดค่าของ Gradient

#fundamentals

เทคนิคทางคณิตศาสตร์เพื่อลดการสูญเสีย วิธีการลดเชิงลาดจะปรับน้ำหนักและค่ากําหนดล่วงหน้าซ้ำๆ เพื่อค้นหาการผสมผสานที่ดีที่สุดเพื่อลดการสูญเสีย

การลดเชิงลาดมีอายุเก่ากว่าแมชชีนเลิร์นนิงมาก

ดูข้อมูลเพิ่มเติมได้ที่การถดถอยเชิงเส้น: การลดลงของลาดในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ข้อมูลจากการสังเกตการณ์โดยตรง

#fundamentals

ความจริง

สิ่งที่เกิดขึ้นจริง

ตัวอย่างเช่น ลองพิจารณาโมเดลการจัดประเภทแบบ 2 กลุ่มที่คาดการณ์ว่านักเรียนปีแรกของมหาวิทยาลัยจะสำเร็จการศึกษาภายใน 6 ปีหรือไม่ ข้อมูลจากการสังเกตการณ์โดยตรงสําหรับโมเดลนี้คือนักเรียนคนนั้นจบการศึกษาภายใน 6 ปีจริงหรือไม่

เราประเมินคุณภาพโมเดลเทียบกับข้อมูลจากการสังเกตการณ์โดยตรง อย่างไรก็ตาม ข้อมูลความจริงอาจไม่ได้เป็นความจริงอย่างสมบูรณ์เสมอไป ตัวอย่างเช่น โปรดดูตัวอย่างข้อบกพร่องที่อาจเกิดขึ้นในข้อมูลจริงต่อไปนี้

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

H

เลเยอร์ที่ซ่อนอยู่

#fundamentals

เลเยอร์ในเครือข่ายประสาทเทียมระหว่างเลเยอร์อินพุต (ฟีเจอร์) กับเลเยอร์เอาต์พุต (การคาดการณ์) แต่ละชั้นที่ซ่อนอยู่ประกอบด้วยเซลล์ประสาทอย่างน้อย 1 เซลล์ ตัวอย่างเช่น เครือข่ายประสาทต่อไปนี้มีเลเยอร์ที่ซ่อนอยู่ 2 เลเยอร์ โดยเลเยอร์แรกมีเซลล์ประสาท 3 เซลล์ และเลเยอร์ที่ 2 มีเซลล์ประสาท 2 เซลล์

4 เลเยอร์ เลเยอร์แรกคือเลเยอร์อินพุตที่มีองค์ประกอบ 2 รายการ เลเยอร์ที่ 2 เป็นเลเยอร์ที่ซ่อนอยู่ซึ่งมีนิวรอน 3 ตัว ชั้นที่ 3 เป็นชั้นที่ซ่อนอยู่ซึ่งมีเซลล์ประสาท 2 เซลล์ เลเยอร์ที่ 4 คือเลเยอร์เอาต์พุต แต่ละองค์ประกอบมีขอบ 3 เส้น ซึ่งแต่ละเส้นจะชี้ไปยังเซลล์ประสาทที่แตกต่างกันในชั้นที่ 2 เซลล์ประสาทแต่ละเซลล์ในชั้นที่ 2 จะมีขอบ 2 เส้น โดยแต่ละเส้นจะชี้ไปยังเซลล์ประสาทอื่นในชั้นที่ 3 เซลล์ประสาทแต่ละเซลล์ในชั้นที่ 3 จะมีขอบ 1 เส้น ซึ่งแต่ละเส้นจะชี้ไปยังชั้นเอาต์พุต

โครงข่ายประสาทแบบลึกมีเลเยอร์ที่ซ่อนอยู่มากกว่า 1 เลเยอร์ ตัวอย่างเช่น ภาพด้านบนคือเครือข่ายประสาทเทียม (Deep Neural Network) เนื่องจากโมเดลมีเลเยอร์ที่ซ่อนอยู่ 2 เลเยอร์

ดูข้อมูลเพิ่มเติมได้ที่โครงข่ายประสาท: โหนดและเลเยอร์ที่ซ่อนอยู่ในบทแนะนำสั้นๆ เกี่ยวกับแมชชีนเลิร์นนิง

ไฮเปอร์พารามิเตอร์

#fundamentals

ตัวแปรที่คุณหรือบริการการปรับแต่งไฮเปอร์พารามิเตอร์ ปรับในระหว่างการเรียกใช้การฝึกโมเดลอย่างต่อเนื่อง ตัวอย่างเช่น อัตราการเรียนรู้คือไฮเปอร์พารามิเตอร์ คุณสามารถตั้งค่าอัตราการเรียนรู้เป็น 0.01 ก่อนเซสชันการฝึกอบรม 1 รายการ หากพิจารณาแล้วว่า 0.01 สูงเกินไป คุณอาจตั้งอัตราการเรียนรู้เป็น 0.003 สำหรับเซสชันการฝึกอบรมถัดไป

ในทางตรงกันข้าม พารามิเตอร์คือน้ำหนักและค่ากําหนดต่างๆ ที่โมเดลเรียนรู้ระหว่างการฝึก

ดูข้อมูลเพิ่มเติมได้ที่การหาค่าสัมประสิทธ์เชิงเส้น: ตัวแปรพหุนามในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

I

กระจายอย่างอิสระและเหมือนกัน (i.i.d)

#fundamentals

ข้อมูลที่ดึงมาจากการแจกแจงที่ไม่เปลี่ยนแปลง และค่าแต่ละค่าที่ดึงมานั้นไม่ขึ้นอยู่กับค่าที่ดึงมาก่อนหน้านี้ ข้อมูลอิสระเป็นก๊าซอุดมคติของการเรียนรู้ของเครื่อง ซึ่งเป็นโครงสร้างทางคณิตศาสตร์ที่มีประโยชน์แต่แทบจะไม่พบในชีวิตจริง เช่น การแจกแจงผู้เข้าชมหน้าเว็บอาจเป็นแบบ i.i.d. ในช่วงเวลาสั้นๆ กล่าวคือ การแจกแจงไม่เปลี่ยนแปลงในช่วงเวลาสั้นๆ นั้น และโดยทั่วไปการเข้าชมของบุคคลหนึ่งจะไม่เกี่ยวข้องกับการเข้าชมของอีกคนหนึ่ง อย่างไรก็ตาม หากคุณขยายกรอบเวลาดังกล่าว ความแตกต่างตามฤดูกาลของผู้เข้าชมหน้าเว็บอาจปรากฏขึ้น

โปรดดูความไม่เป็นเชิงเส้นด้วย

การให้เหตุผล

#fundamentals

ในแมชชีนเลิร์นนิง กระบวนการทำนายโดยใช้โมเดลที่ผ่านการฝึกกับตัวอย่างที่ไม่มีป้ายกำกับ

การคํานวณค่าประมาณมีความหมายที่แตกต่างออกไปในสถิติ ดูรายละเอียดได้ในบทความ บทความใน Wikipedia เกี่ยวกับการอนุมานทางสถิติ

ดูการเรียนรู้ที่มีการควบคุมดูแลในหลักสูตรข้อมูลเบื้องต้นเกี่ยวกับ ML เพื่อดูบทบาทของการอนุมานในระบบการเรียนรู้ที่มีการควบคุมดูแล

เลเยอร์อินพุต

#fundamentals

เลเยอร์ของเครือข่ายประสาทเทียมที่มีเวกเตอร์องค์ประกอบ กล่าวคือ เลเยอร์อินพุตจะแสดงตัวอย่างสําหรับการฝึกหรือการอนุมาน ตัวอย่างเช่น เลเยอร์อินพุตในเครือข่ายประสาทต่อไปนี้ประกอบด้วยฟีเจอร์ 2 รายการ

4 เลเยอร์ ได้แก่ เลเยอร์อินพุต เลเยอร์ที่ซ่อนอยู่ 2 เลเยอร์ และเลเยอร์เอาต์พุต

ความสามารถในการตีความ

#fundamentals

ความสามารถในการอธิบายหรือนำเสนอเหตุผลของโมเดล ML โดยใช้คำศัพท์ที่มนุษย์เข้าใจได้

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

คุณสามารถใช้เครื่องมือการตีความการเรียนรู้ (LIT)เพื่อตีความโมเดล ML

การทำซ้ำ

#fundamentals

การอัปเดตพารามิเตอร์ของโมเดลครั้งเดียว ซึ่งก็คือน้ำหนักและความลำเอียงของโมเดลในระหว่างการฝึก ขนาดกลุ่มจะกําหนดจํานวนตัวอย่างที่โมเดลจะประมวลผลในการวนซ้ำ 1 ครั้ง เช่น หากขนาดกลุ่มเป็น 20 โมเดลจะประมวลผลตัวอย่าง 20 รายการก่อนปรับพารามิเตอร์

เมื่อฝึกโครงข่ายระบบประสาทเทียม การทำซ้ำ 1 ครั้งจะเกี่ยวข้องกับ 2 ขั้นตอนต่อไปนี้

  1. การส่งต่อเพื่อประเมินการสูญเสียในบATCH เดียว
  2. การส่งผ่านย้อนกลับ (Backpropagation) เพื่อปรับพารามิเตอร์ของโมเดลตามการสูญเสียและอัตราการเรียนรู้

ดูข้อมูลเพิ่มเติมได้ที่การลดการลาดชันในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

L

Regularization แบบ L0

#fundamentals

การถ่วงน้ำหนักประเภทหนึ่งที่ลงโทษจํานวนทั้งหมดของน้ำหนักที่ไม่ใช่ 0 ในโมเดล เช่น โมเดลที่มีน้ำหนักที่ไม่ใช่ 0 จำนวน 11 รายการจะได้รับค่าปรับมากกว่าโมเดลที่คล้ายกันซึ่งมีน้ำหนักที่ไม่ใช่ 0 จำนวน 10 รายการ

บางครั้งการถ่วงน้ำหนัก L0 เรียกว่าการถ่วงน้ำหนักตาม L0-norm

โดยทั่วไปแล้ว การปรับ L0 จะใช้ไม่ได้กับโมเดลขนาดใหญ่ เนื่องจากการปรับ L0 จะเปลี่ยนการฝึกให้เป็นปัญหาการเพิ่มประสิทธิภาพแบบConvex


แพ้ L1

#fundamentals
#Metric

ฟังก์ชันการสูญเสียที่คำนวณค่าสัมบูรณ์ของความแตกต่างระหว่างค่าป้ายกำกับจริงกับค่าที่โมเดลคาดการณ์ ตัวอย่างเช่น ต่อไปนี้คือการคํานวณการสูญเสีย L1 สําหรับกลุ่มตัวอย่าง 5 รายการ

ค่าจริงของตัวอย่าง ค่าที่คาดการณ์ของโมเดล ค่าสัมบูรณ์ของเดลต้า
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = แพ้ L1

ผลต่าง L1 ไวต่อค่าผิดปกติน้อยกว่าผลต่าง L2

ค่าเฉลี่ยความผิดพลาดสัมบูรณ์คือค่าเฉลี่ยของการสูญเสีย L1 ต่อตัวอย่าง

L1loss=i=0n|yiy^i|

where:
  • n คือจํานวนตัวอย่าง
  • y คือค่าจริงของป้ายกํากับ
  • y^ คือค่าที่โมเดลคาดการณ์สำหรับ y

ดูข้อมูลเพิ่มเติมได้ในหัวข้อการหาค่าสัมประสิทธ์เชิงเส้น: ค่าการสูญเสียในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

Regularization แบบ L1

#fundamentals

การทำให้สมดุลประเภทหนึ่งที่ลงโทษน้ำหนักตามสัดส่วนกับผลรวมของค่าสัมบูรณ์ของน้ำหนัก การปรับ L1 ช่วยเพิ่มน้ำหนักของฟีเจอร์ที่ไม่เกี่ยวข้องหรือเกี่ยวข้องเพียงเล็กน้อยเป็น 0 ระบบจะนําฟีเจอร์ที่มีน้ำหนัก 0 ออกจากโมเดล

ตรงข้ามกับ Regularization แบบ L2

อัตราสูญเสีย L2

#fundamentals
#Metric

ฟังก์ชันการสูญเสียที่คำนวณผลคูณของความแตกต่างระหว่างค่าป้ายกำกับจริงกับค่าที่โมเดลคาดการณ์ ตัวอย่างเช่น นี่คือการคำนวณความสูญเสีย L2 สําหรับกลุ่มตัวอย่าง 5 รายการ

ค่าจริงของตัวอย่าง ค่าที่คาดการณ์ของโมเดล ตารางของเดลต้า
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
  16 = แพ้ L2

เนื่องจากการยกกำลัง 2 จะทำให้ความสูญเสีย L2 ขยายอิทธิพลของค่าผิดปกติ กล่าวคือ ผลลัพธ์ L2 จะตอบสนองต่อการคาดการณ์ที่ไม่ดีมากกว่าผลลัพธ์ L1 เช่น อัตราสูญเสีย L1 ของกลุ่มก่อนหน้าจะเป็น 8 ไม่ใช่ 16 โปรดทราบว่าค่าที่ผิดปกติรายการเดียวคิดเป็น 9 จาก 16

โมเดลการหาค่าสัมพัทธ์มักใช้การสูญเสีย L2 เป็นฟังก์ชันการสูญเสีย

ความคลาดเคลื่อนกำลังสองเฉลี่ยคือค่าเฉลี่ยของการสูญเสีย L2 ต่อตัวอย่าง ความสูญเสียแบบยกกำลังสองเป็นชื่อเรียกอีกอย่างของความสูญเสีย L2

L2loss=i=0n(yiy^i)2

where:
  • n คือจํานวนตัวอย่าง
  • y คือค่าจริงของป้ายกํากับ
  • y^ คือค่าที่โมเดลคาดการณ์สำหรับ y

ดูข้อมูลเพิ่มเติมได้ที่การถดถอยเชิงเส้นโลจิสติก: การสูญเสียและการควบคุมในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

Regularization แบบ L2

#fundamentals

การทำให้สม่ำเสมอประเภทหนึ่งที่ลงโทษน้ำหนักตามสัดส่วนกับผลรวมของค่าสัมบูรณ์ของน้ำหนัก การปรับ L2 ช่วยเพิ่มน้ำหนักของค่าผิดปกติ (ค่าบวกสูงหรือค่าลบต่ำ) ให้ใกล้กับ 0 แต่ไม่เท่ากับ 0 ฟีเจอร์ที่มีค่าใกล้เคียงกับ 0 จะยังคงอยู่ในโมเดล แต่จะไม่ส่งผลต่อการคาดการณ์ของโมเดลมากนัก

การปรับ L2 จะช่วยปรับปรุงการทั่วไปในโมเดลเชิงเส้นเสมอ

ตรงข้ามกับ Regularization แบบ L1

ดูข้อมูลเพิ่มเติมได้ที่การประมาณที่มากเกินไป: การปรับL2ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ป้ายกำกับ

#fundamentals

ในแมชชีนเลิร์นนิงที่ควบคุมดูแล ส่วน "คำตอบ" หรือ "ผลลัพธ์" ของตัวอย่าง

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

ดูข้อมูลเพิ่มเติมได้ที่การเรียนรู้แบบควบคุมดูแลในข้อมูลเบื้องต้นเกี่ยวกับแมชชีนเลิร์นนิง

ตัวอย่างที่มีป้ายกำกับ

#fundamentals

ตัวอย่างที่มีฟีเจอร์อย่างน้อย 1 รายการและป้ายกำกับ ตัวอย่างเช่น ตารางต่อไปนี้แสดงตัวอย่างที่มีป้ายกำกับ 3 รายการจากโมเดลการประเมินมูลค่าบ้าน โดยแต่ละรายการมีฟีเจอร์ 3 รายการและป้ายกำกับ 1 รายการ

จำนวนห้องนอน จำนวนห้องน้ำ อายุของบ้าน ราคาบ้าน (ป้ายกำกับ)
3 2 15 $345,000
2 1 72 $179,000
4 2 34 $392,000

ในแมชชีนเลิร์นนิงที่มีการควบคุมดูแล รูปแบบจะฝึกจากตัวอย่างที่ติดป้ายกำกับและทำการคาดการณ์จากตัวอย่างที่ไม่มีป้ายกำกับ

เปรียบเทียบตัวอย่างที่มีป้ายกำกับกับตัวอย่างที่ไม่มีป้ายกำกับ

ดูข้อมูลเพิ่มเติมได้ที่การเรียนรู้แบบควบคุมดูแลในข้อมูลเบื้องต้นเกี่ยวกับแมชชีนเลิร์นนิง

lambda

#fundamentals

คำพ้องความหมายของอัตราปกติ

Lambda เป็นคําที่ใช้งานมากเกินไป ในที่นี้เราจะมุ่งเน้นที่คำจำกัดความของคำนี้ในการปรับให้เป็นไปตามข้อกำหนด

เลเยอร์

#fundamentals

ชุดเซลล์ประสาทในโครงข่ายประสาทเทียม เลเยอร์ 3 ประเภทที่ใช้กันทั่วไปมีดังนี้

ตัวอย่างเช่น ภาพต่อไปนี้แสดงเครือข่ายประสาทที่มีเลเยอร์อินพุต 1 เลเยอร์ เลเยอร์ที่ซ่อนอยู่ 2 เลเยอร์ และเลเยอร์เอาต์พุต 1 เลเยอร์

เครือข่ายประสาทที่มีชั้นอินพุต 1 ชั้น ชั้นที่ซ่อนอยู่ 2 ชั้น และชั้นเอาต์พุต 1 ชั้น เลเยอร์อินพุตประกอบด้วยองค์ประกอบ 2 อย่าง เลเยอร์ซ่อนแรกประกอบด้วยนิวรอน 3 ตัว และเลเยอร์ซ่อนที่สองประกอบด้วยนิวรอน 2 ตัว เลเยอร์เอาต์พุตประกอบด้วยโหนดเดียว

ใน TensorFlow เลเยอร์ยังเป็นฟังก์ชัน Python ที่รับเทนเซอร์และตัวเลือกการกําหนดค่าเป็นอินพุต และสร้างเทนเซอร์อื่นๆ เป็นเอาต์พุต

อัตราการเรียนรู้

#fundamentals

จํานวนทศนิยมที่บอกอัลกอริทึม Gradient Descent ว่าควรปรับน้ำหนักและค่ากําหนดของแต่ละรอบอย่างไร เช่น อัตราการเรียนรู้ 0.3 จะปรับน้ำหนักและค่ากําหนดให้มีประสิทธิภาพมากกว่าอัตราการเรียนรู้ 0.1 ถึง 3 เท่า

อัตราการเรียนรู้เป็นไฮเปอร์พารามิเตอร์ที่สําคัญ หากคุณตั้งค่าอัตราการเรียนรู้ต่ำเกินไป การฝึกจะใช้เวลานานเกินไป หากตั้งค่าอัตราการเรียนรู้สูงเกินไป บ่อยครั้งที่การลดเชิงลาดจะประสบปัญหาในการบรรจบ

ในระหว่างการวนซ้ำแต่ละครั้ง อัลกอริทึมการลดเชิงลาดจะคูณอัตราการเรียนรู้ด้วยเชิงลาด ผลลัพธ์ที่ได้เรียกว่าขั้นตอนของเส้นลาด


ดูข้อมูลเพิ่มเติมได้ที่การหาค่าสัมประสิทธ์เชิงเส้น: ตัวแปรพหุนามในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

เชิงเส้น

#fundamentals

ความสัมพันธ์ระหว่างตัวแปรตั้งแต่ 2 ตัวขึ้นไปที่แสดงได้ด้วยการบวกและคูณเท่านั้น

ผังความสัมพันธ์เชิงเส้นคือเส้น

ตรงข้ามกับnonlinear

รูปแบบเชิงเส้น

#fundamentals

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

โดยทั่วไปแล้ว โมเดลเชิงเส้นจะฝึกได้ง่ายกว่าและตีความได้มากกว่าโมเดลเชิงลึก อย่างไรก็ตาม รูปแบบเชิงลึกสามารถเรียนรู้ความสัมพันธ์ที่ซับซ้อนระหว่างฟีเจอร์

การถดถอยเชิงเส้นและการถดถอยเชิงลอจิสติกเป็นโมเดลเชิงเส้น 2 ประเภท

รูปแบบเชิงเส้นเป็นไปตามสูตรนี้

y=b+w1x1+w2x2+wnxn
where:
  • y' คือการคาดการณ์ดิบ (ในบางประเภทของโมเดลเชิงเส้น ระบบจะแก้ไขการคาดการณ์ดิบนี้เพิ่มเติม เช่น ดูการถดถอยแบบโลจิสติก)
  • b คือค่ากําหนด
  • w คือน้ำหนัก ดังนั้น w1 คือน้ำหนักของฟีเจอร์แรก w2 คือน้ำหนักของฟีเจอร์ที่ 2 และอื่นๆ
  • x คือฟีเจอร์ ดังนั้น x1 คือค่าของฟีเจอร์แรก x2 คือค่าของฟีเจอร์ที่ 2 และอื่นๆ
ตัวอย่างเช่น สมมติว่ารูปแบบเชิงเส้นสำหรับฟีเจอร์ 3 รายการเรียนรู้ค่าอคติและน้ำหนักต่อไปนี้
  • b = 7
  • w1 = -2.5
  • w2 = -1.2
  • w3 = 1.4
ดังนั้น เมื่อพิจารณาถึงฟีเจอร์ 3 รายการ (x1, x2 และ x3) รูปแบบเชิงเส้นจะใช้สมการต่อไปนี้เพื่อสร้างการคาดการณ์แต่ละรายการ
y' = 7 + (-2.5)(x1) + (-1.2)(x2) + (1.4)(x3)

สมมติว่าตัวอย่างหนึ่งๆ มีค่าต่อไปนี้

  • x1 = 4
  • x2 = -10
  • x3 = 5
การป้อนค่าเหล่านั้นลงในสูตรจะให้การคาดการณ์สำหรับตัวอย่างนี้
y' = 7 + (-2.5)(4) + (-1.2)(-10) + (1.4)(5)
y' = 16

แบบจําลองเชิงเส้นไม่เพียงรวมถึงแบบจําลองที่ใช้สมการเชิงเส้นเท่านั้นในการสร้างการคาดการณ์ แต่ยังรวมถึงชุดแบบจําลองที่กว้างขึ้นซึ่งใช้สมการเชิงเส้นเป็นองค์ประกอบเพียงอย่างเดียวของสูตรที่สร้างการคาดการณ์ เช่น ขั้นตอนหลังการประมวลผลของ Logistic Regression จะประมวลผลการคาดการณ์ดิบ (y') เพื่อสร้างค่าการคาดการณ์สุดท้ายระหว่าง 0 ถึง 1 เท่านั้น


การถดถอยเชิงเส้น

#fundamentals

โมเดลแมชชีนเลิร์นนิงประเภทหนึ่งที่มีลักษณะตรงตามทั้ง 2 ข้อต่อไปนี้

เปรียบเทียบการถดถอยเชิงเส้นกับการถดถอยแบบโลจิสติก นอกจากนี้ ให้เปรียบเทียบการถดถอยกับการจัดประเภท

ดูข้อมูลเพิ่มเติมเกี่ยวกับการหาค่าสัมประสิทธ์เชิงเส้นในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

การถดถอยแบบโลจิสติก

#fundamentals

โมเดลการถดถอยประเภทหนึ่งที่คาดการณ์ความน่าจะเป็น โมเดลการถดถอยเชิงโลจิสติกมีลักษณะดังนี้

  • ป้ายกํากับคือเชิงหมวดหมู่ คําว่า "การถดถอยเชิงโลจิสติก" มักหมายถึงการถดถอยเชิงโลจิสติกแบบไบนารี ซึ่งก็คือโมเดลที่คํานวณความน่าจะเป็นสําหรับป้ายกำกับที่มีค่าที่เป็นไปได้ 2 ค่า ตัวแปรที่พบไม่บ่อยนักคือการถดถอยเชิงเส้นโลจิสติกแบบหลายตัวแปร ซึ่งจะคํานวณความน่าจะเป็นสําหรับป้ายกํากับที่มีค่าที่เป็นไปได้มากกว่า 2 ค่า
  • ฟังก์ชันการสูญเสียระหว่างการฝึกคือ Log Loss (คุณสามารถวางหน่วยการสูญเสียข้อมูลบันทึกได้หลายหน่วยพร้อมกันสําหรับป้ายกํากับที่มีค่าที่เป็นไปได้มากกว่า 2 ค่า)
  • โมเดลนี้มีสถาปัตยกรรมแบบเชิงเส้น ไม่ใช่เครือข่ายประสาทเทียม อย่างไรก็ตาม ส่วนที่เหลือของคําจํากัดความนี้ยังมีผลกับโมเดลเชิงลึกที่คาดการณ์ความน่าจะเป็นสําหรับป้ายกํากับเชิงหมวดหมู่ด้วย

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

  • มีโอกาส 72% ที่อีเมลจะเป็นสแปม
  • มีโอกาส 28% ที่อีเมลไม่ใช่จดหมายขยะ

โมเดลการถดถอยเชิงเส้นใช้สถาปัตยกรรมแบบ 2 ขั้นตอนต่อไปนี้

  1. โมเดลจะสร้างการคาดการณ์ดิบ (y') โดยใช้ฟังก์ชันเชิงเส้นของฟีเจอร์อินพุต
  2. โดยโมเดลจะใช้การคาดการณ์ดิบเป็นอินพุตสําหรับฟังก์ชัน sigmoid ซึ่งจะแปลงการคาดการณ์ดิบเป็นค่าระหว่าง 0 ถึง 1

โมเดลการถดถอยแบบโลจิสติกจะคาดการณ์ตัวเลขเช่นเดียวกับโมเดลการถดถอยอื่นๆ อย่างไรก็ตาม โดยทั่วไปแล้วตัวเลขนี้จะเป็นส่วนหนึ่งของโมเดลการจัดประเภทแบบไบนารี ดังนี้

  • หากตัวเลขที่คาดการณ์มากกว่าเกณฑ์การจัดประเภท โมเดลการจัดประเภทแบบไบนารีจะคาดการณ์คลาสที่เป็นบวก
  • หากตัวเลขที่คาดการณ์ได้น้อยกว่าเกณฑ์การจัดประเภท โมเดลการจัดประเภทแบบไบนารีจะคาดการณ์คลาสเชิงลบ

ดูข้อมูลเพิ่มเติมได้ที่โลจิสติกส์รีเกรชันในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

การสูญหายของบันทึก

#fundamentals

ฟังก์ชันการสูญเสียที่ใช้ในการถดถอยเชิงเส้นโลจิสติกแบบไบนารี

สูตรต่อไปนี้จะคํานวณ Log Loss

Log Loss=(x,y)Dylog(y)(1y)log(1y)
where:
  • (x,y)D คือชุดข้อมูลที่มีตัวอย่างที่มีป้ายกำกับจำนวนมาก ซึ่งก็คือ (x,y) คู่
  • y คือป้ายกำกับในตัวอย่างที่มีป้ายกำกับ เนื่องจากเป็นแบบเรียลจีสติก y ทุกค่าต้องเป็น 0 หรือ 1
  • y คือค่าที่คาดการณ์ (อยู่ระหว่าง 0 ถึง 1 โดยยกเว้น 0 และ 1) จากชุดฟีเจอร์ใน x

ดูข้อมูลเพิ่มเติมได้ที่การถดถอยเชิงเส้นโลจิสติก: การสูญเสียและการปรับให้เหมาะสมในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

อัตราส่วนแบบลอการิทึม

#fundamentals

ลอการิทึมของอัตราต่อรองของเหตุการณ์บางอย่าง

หากเหตุการณ์เป็นเหตุการณ์ที่มีความน่าจะเป็นแบบ 2 ค่า โอกาสหมายถึงอัตราส่วนของความน่าจะเป็นที่จะประสบความสําเร็จ (p) กับความน่าจะเป็นที่จะประสบความสําเร็จ (1-p) ตัวอย่างเช่น สมมติว่าเหตุการณ์หนึ่งๆ มีความน่าจะเป็นที่จะประสบความสําเร็จ 90% และมีความน่าจะเป็นที่จะล้มเหลว 10% ในกรณีนี้ ระบบจะคำนวณโอกาสดังนี้

odds=p(1-p)=.9.1=9

ลอการิทึมความน่าจะเป็นคือลอการิทึมของอัตราต่อรอง ตามธรรมเนียมแล้ว คำว่า "ลอการิทึม" หมายถึงลอการิทึมธรรมชาติ แต่จริงๆ แล้วลอการิทึมอาจเป็นฐานใดก็ได้ที่มากกว่า 1 ดังนั้น ลอการิทึมความน่าจะเป็นของตัวอย่างตามแบบแผนจึงมีดังนี้

log-odds=ln(9) =2.2

ฟังก์ชันลอการิทึมอัตราต่อรองเป็นฟังก์ชันผกผันของฟังก์ชัน Sigmoid


แพ้

#fundamentals
#Metric

ในระหว่างการฝึกโมเดลที่มีการควบคุมดูแล เป็นการวัดระยะห่างระหว่างการคาดการณ์ของโมเดลกับป้ายกำกับ

ฟังก์ชันการสูญเสียจะคํานวณการสูญเสีย

ดูข้อมูลเพิ่มเติมได้ที่การหาค่าสัมประสิทธ์เชิงเส้น: ค่าการสูญเสียในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

เส้นโค้งการสูญเสีย

#fundamentals

ผังการสูญเสียตามจำนวนรอบการฝึก ผังต่อไปนี้แสดงเส้นโค้งการสูญเสียทั่วไป

กราฟคาร์ทีเซียนแสดงการสูญเสียเทียบกับจำนวนรอบการฝึก ซึ่งแสดงให้เห็นการสูญเสียที่ลดลงอย่างรวดเร็วในรอบแรกๆ ตามด้วยการลดลงอย่างช้าๆ และเส้นลาดชันที่ราบเรียบในช่วงรอบสุดท้าย

เส้นโค้งการสูญเสียช่วยให้คุณระบุได้ว่าเมื่อใดที่โมเดลกำลังเข้าใกล้หรือกำลังปรับให้พอดีมากเกินไป

เส้นโค้งการสูญเสียสามารถแสดงการสูญเสียประเภทต่อไปนี้ทั้งหมด

โปรดดูเส้นโค้งทั่วไปด้วย

ดูข้อมูลเพิ่มเติมได้ที่การประมาณที่มากเกินไป: การตีความเส้นโค้งการสูญเสียในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ฟังก์ชันการสูญเสีย

#fundamentals
#Metric

ในระหว่างการฝึกหรือทดสอบ ฟังก์ชันทางคณิตศาสตร์ที่คำนวณการสูญเสียในกลุ่มตัวอย่าง ฟังก์ชันการสูญเสียจะแสดงผลลัพธ์การสูญเสียที่ต่ำลงสำหรับโมเดลที่ทําการคาดการณ์ได้ดี เมื่อเทียบกับโมเดลที่ทําการคาดการณ์ได้ไม่ดี

โดยทั่วไป เป้าหมายของการฝึกคือลดการสูญเสียที่ฟังก์ชันการสูญเสียแสดง

ฟังก์ชันการสูญเสียมีหลายประเภท เลือกฟังก์ชันการสูญเสียที่เหมาะสมสำหรับประเภทโมเดลที่คุณกําลังสร้าง เช่น

M

แมชชีนเลิร์นนิง

#fundamentals

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

แมชชีนเลิร์นนิงยังหมายถึงสาขาการศึกษาที่เกี่ยวข้องกับโปรแกรมหรือระบบเหล่านี้ด้วย

ดูข้อมูลเพิ่มเติมได้ที่หลักสูตรข้อมูลเบื้องต้นเกี่ยวกับแมชชีนเลิร์นนิง

คลาสที่มีเสียงข้างมาก

#fundamentals

ป้ายกำกับที่พบบ่อยกว่าในชุดข้อมูลที่ไม่สมดุลของคลาส ตัวอย่างเช่น หากชุดข้อมูลมีป้ายกำกับเชิงลบ 99% และป้ายกำกับเชิงบวก 1% ป้ายกำกับเชิงลบจะเป็นคลาสส่วนใหญ่

ตรงข้ามกับคลาสของชนกลุ่มน้อย

ดูข้อมูลเพิ่มเติมได้ที่ชุดข้อมูล: ชุดข้อมูลที่ไม่สมดุลในบทแนะนำเบื้องต้นเกี่ยวกับแมชชีนเลิร์นนิง

มินิแบทช์

#fundamentals

ชุดย่อยขนาดเล็กที่เลือกแบบสุ่มของกลุ่มที่ประมวลผลในรอบเดียว ขนาดกลุ่มของมินิแบทช์มักจะอยู่ระหว่าง 10 ถึง 1,000 ตัวอย่าง

ตัวอย่างเช่น สมมติว่าชุดการฝึกทั้งหมด (กลุ่มเต็ม) ประกอบด้วยตัวอย่าง 1,000 รายการ สมมติว่าคุณตั้งค่าขนาดกลุ่มของมินิกลุ่มแต่ละกลุ่มเป็น 20 ดังนั้น การวนซ้ำแต่ละครั้งจะกำหนดการสูญเสียในตัวอย่าง 20 รายการแบบสุ่มจาก 1,000 รายการ จากนั้นจึงปรับน้ำหนักและความลำเอียงตามความเหมาะสม

การคํานวณการสูญเสียในมินิแบตช์มีประสิทธิภาพมากกว่าการสูญเสียในตัวอย่างทั้งหมดในแบตช์แบบเต็ม

ดูข้อมูลเพิ่มเติมได้ที่การหาค่าสัมประสิทธ์เชิงเส้น: ตัวแปรพหุนามในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

คลาสสำหรับชนกลุ่มน้อย

#fundamentals

ป้ายกำกับที่พบน้อยกว่าในชุดข้อมูลที่เกิดความไม่สมดุลของคลาส เช่น หากชุดข้อมูลมีป้ายกำกับเชิงลบ 99% และป้ายกำกับเชิงบวก 1% ป้ายกำกับเชิงบวกจะเป็นคลาสส่วนน้อย

เปรียบเทียบกับคลาสส่วนใหญ่

ชุดข้อมูลการฝึกที่มีตัวอย่าง 1 ล้านรายการฟังดูน่าประทับใจ อย่างไรก็ตาม หากมีการแสดงคลาสที่น้อยมากอย่างไม่ถูกต้อง แม้แต่ชุดข้อมูลการฝึกขนาดใหญ่มากก็อาจไม่เพียงพอ ให้ความสำคัญกับจำนวนตัวอย่างทั้งหมดในชุดข้อมูลน้อยลง และให้ความสำคัญกับจำนวนตัวอย่างในคลาสที่น้อยลงมากขึ้น

หากชุดข้อมูลมีตัวอย่างของคลาสที่พบน้อยไม่เพียงพอ ให้ลองใช้downsampling (คำจำกัดความอยู่ในหัวข้อย่อยที่ 2) เพื่อเสริมคลาสที่พบน้อย


ดูข้อมูลเพิ่มเติมได้ที่ชุดข้อมูล: ชุดข้อมูลที่ไม่สมดุลในบทแนะนำเบื้องต้นเกี่ยวกับแมชชีนเลิร์นนิง

รุ่น

#fundamentals

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

คุณสามารถบันทึก กู้คืน หรือทำสำเนาของรูปแบบได้

แมชชีนเลิร์นนิงแบบไม่ควบคุมดูแลยังสร้างโมเดลด้วย โดยปกติแล้วจะเป็นฟังก์ชันที่สามารถแมปตัวอย่างอินพุตกับคลัสเตอร์ที่เหมาะสมที่สุด

ฟังก์ชันพีชคณิต เช่น ตัวอย่างต่อไปนี้คือรูปแบบ

  f(x, y) = 3x -5xy + y2 + 17

ฟังก์ชันก่อนหน้าจะจับคู่ค่าอินพุต (x และ y) กับเอาต์พุต

ในทํานองเดียวกัน ฟังก์ชันการเขียนโปรแกรมต่อไปนี้ก็เป็นโมเดลเช่นกัน

def half_of_greater(x, y):
  if (x > y):
    return(x / 2)
  else
    return(y / 2)

ผู้เรียกใช้จะส่งอาร์กิวเมนต์ไปยังฟังก์ชัน Python ก่อนหน้า และฟังก์ชัน Python จะสร้างเอาต์พุต (ผ่านคำสั่ง return)

แม้ว่าเครือข่ายประสาทเทียมลึกจะมีโครงสร้างทางคณิตศาสตร์ที่แตกต่างจากฟังก์ชันพีชคณิตหรือการเขียนโปรแกรม แต่เครือข่ายประสาทเทียมลึกจะยังคงรับอินพุต (ตัวอย่าง) และแสดงผลเอาต์พุต (การคาดการณ์)

นักเขียนโปรแกรมเขียนโค้ดฟังก์ชันการเขียนโปรแกรมด้วยตนเอง ในทางตรงกันข้าม โมเดลแมชชีนเลิร์นนิงจะค่อยๆ เรียนรู้พารามิเตอร์ที่ดีที่สุดในระหว่างการฝึกอัตโนมัติ


การจัดประเภทแบบหลายคลาส

#fundamentals

ในการเรียนรู้แบบควบคุม ปัญหาการจัดประเภทซึ่งชุดข้อมูลมีป้ายกำกับคลาสมากกว่า 2 คลาส ตัวอย่างเช่น ป้ายกำกับในชุดข้อมูล Iris ต้องเป็นคลาสใดคลาสหนึ่งต่อไปนี้

  • Iris setosa
  • Iris virginica
  • Iris versicolor

โมเดลที่ฝึกในชุดข้อมูล Iris ซึ่งคาดการณ์ประเภท Iris จากตัวอย่างใหม่จะทําการจัดประเภทแบบหลายคลาส

ในทางตรงกันข้าม ปัญหาการจัดประเภทที่แยกแยะระหว่างคลาส 2 คลาสเท่านั้นคือโมเดลการจัดประเภทแบบไบนารี เช่น โมเดลอีเมลที่คาดการณ์ว่าเป็นจดหมายขยะหรือไม่ใช่จดหมายขยะเป็นโมเดลการจัดประเภทแบบไบนารี

ในปัญหาการคลัสเตอร์ การจัดประเภทแบบหลายคลาสหมายถึงคลัสเตอร์มากกว่า 2 คลัสเตอร์

ดูข้อมูลเพิ่มเติมได้ที่เครือข่ายประสาท: การแยกประเภทหลายคลาสในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

N

คลาสเชิงลบ

#fundamentals
#Metric

ในการจัดประเภทแบบไบนารี คลาสหนึ่งจะเรียกว่าบวก และอีกคลาสหนึ่งจะเรียกว่าลบ คลาสที่เป็นบวกคือสิ่งหรือเหตุการณ์ที่โมเดลกำลังทดสอบ และคลาสที่เป็นลบคือความเป็นไปได้อื่นๆ เช่น

  • คลาสเชิงลบในการทดสอบทางการแพทย์อาจเป็น "ไม่ใช่เนื้องอก"
  • คลาสเชิงลบในตัวจัดประเภทอีเมลอาจเป็น "ไม่ใช่สแปม"

ตรงข้ามกับคลาสที่เป็นบวก

โครงข่ายระบบประสาทเทียม

#fundamentals

โมเดลที่มีเลเยอร์ที่ซ่อนอยู่อย่างน้อย 1 เลเยอร์ โครงข่ายประสาทแบบลึกเป็นโครงข่ายประสาทประเภทหนึ่งที่มีเลเยอร์ที่ซ่อนอยู่มากกว่า 1 เลเยอร์ ตัวอย่างเช่น แผนภาพต่อไปนี้แสดงเครือข่ายประสาทเทียมที่มีชั้นที่ซ่อนอยู่ 2 ชั้น

เครือข่ายประสาทที่มีชั้นอินพุต ชั้นซ่อน 2 ชั้น และชั้นเอาต์พุต

เซลล์ประสาทแต่ละเซลล์ในเครือข่ายประสาทจะเชื่อมต่อกับโหนดทั้งหมดในชั้นถัดไป ตัวอย่างเช่น ในแผนภาพก่อนหน้า โปรดสังเกตว่าเซลล์ประสาททั้ง 3 เซลล์ในเลเยอร์ซ่อนแรกเชื่อมต่อกับเซลล์ประสาททั้ง 2 เซลล์ในเลเยอร์ซ่อนที่สองแยกกัน

บางครั้งเราเรียกโครงข่ายประสาทที่ใช้ในคอมพิวเตอร์ว่าโครงข่ายประสาทเทียมเพื่อแยกความแตกต่างจากโครงข่ายประสาทที่พบในสมองและระบบประสาทอื่นๆ

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

ดูข้อมูลเพิ่มเติมได้ที่โครงข่ายประสาทแบบ Convolutive และโครงข่ายประสาทแบบ Recurrent

ดูข้อมูลเพิ่มเติมเกี่ยวกับเครือข่ายประสาทเทียมในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

เซลล์ประสาท

#fundamentals

ในแมชชีนเลิร์นนิง หมายถึงหน่วยที่แยกต่างหากภายในเลเยอร์ที่ซ่อนอยู่ของเครือข่ายประสาทเทียม เซลล์ประสาทแต่ละเซลล์จะทําการดําเนินการ 2 ขั้นตอนต่อไปนี้

  1. คํานวณผลรวมถ่วงน้ำหนักของค่าอินพุตที่คูณด้วยน้ำหนักที่สอดคล้องกัน
  2. ส่งผลรวมถ่วงน้ำหนักเป็นอินพุตให้กับฟังก์ชันการเปิดใช้งาน

เซลล์ประสาทในชั้นซ่อนแรกจะรับอินพุตจากค่าฟีเจอร์ในชั้นอินพุต เซลล์ประสาทในชั้นซ่อนใดๆ นอกเหนือจากชั้นแรกจะรับอินพุตจากเซลล์ประสาทในชั้นซ่อนก่อนหน้า เช่น เซลล์ประสาทในเลเยอร์ซ่อนที่สองจะรับอินพุตจากเซลล์ประสาทในเลเยอร์ซ่อนแรก

ภาพประกอบต่อไปนี้ไฮไลต์เซลล์ประสาท 2 เซลล์และอินพุตของเซลล์ประสาท

เครือข่ายประสาทที่มีชั้นอินพุต ชั้นซ่อน 2 ชั้น และชั้นเอาต์พุต มีไนรอน 2 ตัวที่ไฮไลต์อยู่ 1 ตัวในเลเยอร์ซ่อนแรกและอีก 1 ตัวในเลเยอร์ซ่อนที่สอง นิวรอนที่ไฮไลต์ในชั้นซ่อนแรกรับอินพุตจากทั้ง 2 ฟีเจอร์ในชั้นอินพุต เซลล์ประสาทที่ไฮไลต์ในชั้นซ่อนที่สองรับอินพุตจากเซลล์ประสาททั้ง 3 เซลล์ในชั้นซ่อนแรก

เซลล์ประสาทในโครงข่ายระบบประสาทเทียมจะเลียนแบบการทำงานของเซลล์ประสาทในสมองและส่วนอื่นๆ ของระบบประสาท

โหนด (โครงข่ายประสาทเทียม)

#fundamentals

เซลล์ประสาทในเลเยอร์ที่ซ่อนอยู่

ดูข้อมูลเพิ่มเติมเกี่ยวกับเครือข่ายประสาทเทียมในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

nonlinear

#fundamentals

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

ผัง 2 ผัง ผัง 1 ผังคือเส้น จึงเป็นความสัมพันธ์เชิงเส้น
          ผังอีกผังเป็นเส้นโค้ง แสดงว่าเป็นความสัมพันธ์ที่ไม่ใช่เชิงเส้น

ดูโครงข่ายระบบประสาทเทียม: โหนดและชั้นที่ซ่อนอยู่ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิงเพื่อทดลองใช้ฟังก์ชันที่ไม่ใช่เชิงเส้นประเภทต่างๆ

ความไม่คงที่

#fundamentals

ฟีเจอร์ที่มีค่าเปลี่ยนแปลงไปตามมิติข้อมูลอย่างน้อย 1 รายการ ซึ่งมักจะเป็นเวลา ตัวอย่างเช่น ลองดูตัวอย่างความไม่คงที่ต่อไปนี้

  • จำนวนชุดว่ายน้ำที่ขายในร้านค้าหนึ่งๆ จะแตกต่างกันไปตามฤดูกาล
  • จำนวนผลไม้ที่เก็บเกี่ยวในภูมิภาคหนึ่งๆ นั้นมีค่าเป็น 0 ตลอดทั้งปี แต่มีปริมาณมากในช่วงระยะเวลาสั้นๆ
  • อุณหภูมิเฉลี่ยรายปีมีการเปลี่ยนแปลงเนื่องจากการเปลี่ยนแปลงสภาพภูมิอากาศ

ตรงข้ามกับความคงที่

การแปลงเป็นรูปแบบมาตรฐาน

#fundamentals

กล่าวโดยคร่าวๆ ก็คือ กระบวนการแปลงช่วงค่าจริงของตัวแปรเป็นช่วงค่ามาตรฐาน เช่น

  • -1 ถึง +1
  • 0 ถึง 1
  • คะแนนมาตรฐาน (ประมาณ -3 ถึง +3)

ตัวอย่างเช่น สมมติว่าช่วงค่าจริงของฟีเจอร์หนึ่งๆ คือ 800 ถึง 2,400 ในการปรับแต่งฟีเจอร์ คุณอาจทำให้ค่าจริงเป็นค่ามาตรฐานในขอบเขตมาตรฐาน เช่น -1 ถึง +1

การทำให้เป็นมาตรฐานเป็นงานที่พบได้ทั่วไปในการสร้างฟีเจอร์ โดยทั่วไปแล้ว โมเดลจะฝึกได้เร็วขึ้น (และให้การคาดการณ์ที่ดีขึ้น) เมื่อฟีเจอร์ตัวเลขทั้งหมดในเวกเตอร์ฟีเจอร์มีช่วงใกล้เคียงกัน

ดูข้อมูลเพิ่มเติมได้ที่การปรับมาตรฐานคะแนน z

ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลตัวเลข: การทำให้ค่าเป็นมาตรฐานในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ข้อมูลตัวเลข

#fundamentals

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

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

บางครั้งเราจะเรียกฟีเจอร์ที่เป็นตัวเลขว่าฟีเจอร์ต่อเนื่อง

ดูข้อมูลเพิ่มเติมที่หัวข้อการทํางานกับข้อมูลตัวเลขในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

O

ออฟไลน์

#fundamentals

คำพ้องความหมายของ static

การอนุมานแบบออฟไลน์

#fundamentals

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

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

การคํานวณผลลัพธ์แบบออฟไลน์เรียกอีกอย่างว่าการคํานวณผลลัพธ์แบบคงที่

ตรงข้ามกับการอนุมานออนไลน์

ดูข้อมูลเพิ่มเติมได้ที่ระบบ ML เวอร์ชันที่ใช้งานจริง: การอนุมานแบบคงที่เทียบกับการอนุมานแบบไดนามิกในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

การเข้ารหัสแบบฮอตเดียว

#fundamentals

การนำเสนอข้อมูลเชิงหมวดหมู่เป็นเวกเตอร์โดยที่

  • องค์ประกอบหนึ่งตั้งค่าเป็น 1
  • ส่วนองค์ประกอบอื่นๆ ทั้งหมดจะตั้งค่าเป็น 0

โดยทั่วไปแล้ว การเข้ารหัสแบบฮอตเดียวจะใช้เพื่อแสดงสตริงหรือตัวระบุที่มีชุดค่าที่เป็นไปได้แบบจํากัด ตัวอย่างเช่น สมมติว่าฟีเจอร์เชิงหมวดหมู่ชื่อ Scandinavia มีค่าที่เป็นไปได้ 5 ค่า ดังนี้

  • "เดนมาร์ก"
  • "สวีเดน"
  • "นอร์เวย์"
  • "ฟินแลนด์"
  • "ไอซ์แลนด์"

การโค้ด One-Hot อาจแสดงค่า 5 ค่าแต่ละค่าดังนี้

country เวกเตอร์
"เดนมาร์ก" 1 0 0 0 0
"สวีเดน" 0 1 0 0 0
"นอร์เวย์" 0 0 1 0 0
"ฟินแลนด์" 0 0 0 1 0
"ไอซ์แลนด์" 0 0 0 0 1

การเข้ารหัสแบบฮอตเดียวช่วยให้โมเดลเรียนรู้การเชื่อมต่อต่างๆ ตามแต่ละประเทศทั้ง 5 ประเทศ

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

  • "เดนมาร์ก" คือ 0
  • "สวีเดน" คือ 1
  • "นอร์เวย์" คือ 2
  • "ฟินแลนด์" คือ 3
  • "ไอซ์แลนด์" คือ 4

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

ดูข้อมูลเพิ่มเติมในข้อมูลเชิงหมวดหมู่: พจนานุกรมและการเข้ารหัสแบบฮอตเวิร์กในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

แบบหนึ่งเทียบกับทั้งหมด

#fundamentals

เมื่อพิจารณาปัญหาการจัดประเภทที่มี N คลาส โซลูชันประกอบด้วย ตัวแยกประเภทแบบไบนารีแยกกัน N ตัว โดยตัวแยกประเภทแบบไบนารี 1 ตัวสําหรับผลลัพธ์ที่เป็นไปได้แต่ละรายการ ตัวอย่างเช่น เมื่อพิจารณาโมเดลที่จัดประเภทตัวอย่างเป็นสัตว์ ผัก หรือแร่ธาตุ โซลูชันแบบหนึ่งเทียบกับทั้งหมดจะให้ตัวแยกประเภทไบนารีแยกกัน 3 รายการต่อไปนี้

  • สัตว์กับไม่ใช่สัตว์
  • ผักกับไม่ใช่ผัก
  • แร่ธาตุกับไม่ใช่แร่ธาตุ

ออนไลน์

#fundamentals

คำพ้องความหมายของแบบไดนามิก

การให้เหตุผลออนไลน์

#fundamentals

สร้างการคาดการณ์ตามคําขอ ตัวอย่างเช่น สมมติว่าแอปส่งอินพุตไปยังโมเดลและส่งคำขอการคาดการณ์ ระบบที่ใช้การอนุมานออนไลน์จะตอบสนองต่อคําขอด้วยการดำเนินการกับโมเดล (และแสดงการคาดการณ์ไปยังแอป)

ตรงข้ามกับการอนุมานแบบออฟไลน์

ดูข้อมูลเพิ่มเติมได้ที่ระบบ ML เวอร์ชันที่ใช้งานจริง: การอนุมานแบบคงที่เทียบกับการอนุมานแบบไดนามิกในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

เลเยอร์เอาต์พุต

#fundamentals

เลเยอร์ "สุดท้าย" ของโครงข่ายระบบประสาทเทียม เลเยอร์เอาต์พุตมีการคาดการณ์

ภาพต่อไปนี้แสดงโครงข่ายประสาทแบบลึกขนาดเล็กที่มีชั้นอินพุต ชั้นซ่อน 2 ชั้น และชั้นเอาต์พุต

เครือข่ายประสาทที่มีชั้นอินพุต 1 ชั้น ชั้นที่ซ่อนอยู่ 2 ชั้น และชั้นเอาต์พุต 1 ชั้น เลเยอร์อินพุตประกอบด้วยองค์ประกอบ 2 อย่าง เลเยอร์ซ่อนแรกประกอบด้วยนิวรอน 3 ตัว และเลเยอร์ซ่อนที่สองประกอบด้วยนิวรอน 2 ตัว เลเยอร์เอาต์พุตประกอบด้วยโหนดเดียว

Overfitting

#fundamentals

การสร้างโมเดลที่ตรงกับข้อมูลการฝึกอย่างใกล้ชิดมากจนโมเดลไม่สามารถคาดการณ์ข้อมูลใหม่ได้อย่างถูกต้อง

การปรับให้เหมาะสมจะช่วยลดการประมาณที่มากเกินไปได้ การฝึกด้วยชุดข้อมูลขนาดใหญ่และหลากหลายยังช่วยลดการจับคู่ที่มากเกินไปได้อีกด้วย

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


ดูข้อมูลเพิ่มเติมได้ที่การประมาณมากเกินไปในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

P

แพนด้า

#fundamentals

API การวิเคราะห์ข้อมูลที่มุ่งเน้นคอลัมน์ซึ่งสร้างขึ้นจาก numpy เฟรมเวิร์กแมชชีนเลิร์นนิงจํานวนมาก รวมถึง TensorFlow รองรับโครงสร้างข้อมูล pandas เป็นอินพุต ดูรายละเอียดได้ในเอกสารประกอบของ pandas

พารามิเตอร์

#fundamentals

น้ำหนักและความลำเอียงที่โมเดลเรียนรู้ระหว่างการฝึก เช่น ในรูปแบบการถดถอยเชิงเส้น พารามิเตอร์ประกอบด้วยค่าอคติ (b) และน้ำหนักทั้งหมด (w1, w2 และอื่นๆ) ในสูตรต่อไปนี้

y=b+w1x1+w2x2+wnxn

ในทางตรงกันข้าม ไฮเปอร์พารามิเตอร์คือค่าที่คุณ (หรือบริการการปรับแต่งไฮเปอร์พารามิเตอร์) ระบุให้กับโมเดล เช่น อัตราการเรียนรู้คือไฮเปอร์พารามิเตอร์

คลาสที่เป็นบวก

#fundamentals
#Metric

ชั้นเรียนที่คุณทดสอบ

เช่น คลาสที่เป็นบวกในโมเดลโรคมะเร็งอาจเป็น "เนื้องอก" คลาสที่เป็นบวกในตัวจัดประเภทอีเมลอาจเป็น "จดหมายขยะ"

ตรงข้ามกับคลาสที่เป็นลบ

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

คุณต้องยอมรับว่าคุณกําลังทดสอบทั้งคลาสเชิงบวกและเชิงลบพร้อมกัน


หลังการประมวลผล

#fairness
#fundamentals

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

เช่น คุณอาจใช้การประมวลผลหลังการประมวลผลกับตัวแยกประเภทแบบ 2 ค่าโดยการตั้งค่าเกณฑ์การจัดประเภทเพื่อให้โอกาสที่เท่าเทียมสำหรับแอตทริบิวต์บางรายการ โดยตรวจสอบว่าอัตราผลบวกจริงเหมือนกันสำหรับค่าทั้งหมดของแอตทริบิวต์นั้น

การคาดการณ์

#fundamentals

เอาต์พุตของโมเดล เช่น

  • การคาดการณ์ของโมเดลการจัดประเภทแบบไบนารีคือคลาสเชิงบวกหรือคลาสเชิงลบ
  • การคาดการณ์ของโมเดลการจัดประเภทแบบหลายคลาสคือ 1 คลาส
  • การคาดการณ์ของโมเดลการถดถอยเชิงเส้นคือตัวเลข

ป้ายกํากับพร็อกซี

#fundamentals

ข้อมูลที่ใช้ประมาณป้ายกำกับซึ่งไม่พร้อมใช้งานในชุดข้อมูลโดยตรง

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

ตัวอย่างที่ 2 สมมติว่าคุณต้องการให้ is it raining? เป็นป้ายกำกับบูลีนสำหรับชุดข้อมูล แต่ชุดข้อมูลไม่มีข้อมูลฝน หากมีรูปภาพ คุณอาจสร้างรูปภาพคนถือร่มเป็นป้ายกำกับพร็อกซีสำหรับฝนตกไหม ป้ายกำกับพร็อกซีนี้ดีไหม เป็นไปได้ แต่ผู้คนในบางวัฒนธรรมอาจถือร่มเพื่อป้องกันแดดมากกว่าฝน

ป้ายกํากับพร็อกซีมักไม่สมบูรณ์ เลือกป้ายกำกับจริงแทนป้ายกำกับพร็อกซีเมื่อเป็นไปได้ อย่างไรก็ตาม เมื่อไม่มีป้ายกำกับจริง ให้เลือกป้ายกำกับพร็อกซีอย่างระมัดระวัง โดยเลือกป้ายกำกับพร็อกซีที่ไม่น่ากลัวที่สุด

ดูข้อมูลเพิ่มเติมที่ชุดข้อมูล: ป้ายกำกับในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

R

RAG

#fundamentals

ตัวย่อของ Generation ที่เพิ่มการดึงข้อมูล

ผู้ให้คะแนน

#fundamentals

บุคคลที่ระบุป้ายกำกับสำหรับตัวอย่าง "ผู้กำกับเนื้อหา" เป็นชื่อเรียกผู้ให้คะแนนอีกชื่อหนึ่ง

ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลเชิงหมวดหมู่: ปัญหาที่พบบ่อยในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

Rectified Linear Unit (ReLU)

#fundamentals

ฟังก์ชันการเปิดใช้งานที่มีลักษณะการทำงานดังต่อไปนี้

  • หากอินพุตเป็นลบหรือ 0 เอาต์พุตจะเป็น 0
  • หากอินพุตเป็นค่าบวก เอาต์พุตจะเท่ากับอินพุต

เช่น

  • หากอินพุตคือ -3 เอาต์พุตจะเป็น 0
  • หากอินพุตคือ +3 เอาต์พุตจะเป็น 3.0

นี่คือผัง ReLU

ผังพิกัดคาร์ทีเซียนของ 2 เส้น บรรทัดแรกมีค่า y คงที่ที่ 0 ซึ่งวิ่งไปตามแกน x จาก -infinity,0 ถึง 0,-0
          บรรทัดที่สองเริ่มต้นที่ 0,0 เส้นนี้มีความชัน +1 ดังนั้นจึงวิ่งจาก 0,0 ถึง +infinity,+infinity

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

โมเดลการเกิดปัญหาซ้ำ

#fundamentals

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

  • โมเดลที่คาดการณ์มูลค่าของบ้านหลังหนึ่งเป็นสกุลเงินยูโร เช่น 423,000
  • โมเดลที่คาดการณ์อายุคาดเฉลี่ยของต้นไม้บางต้นเป็นปี เช่น 23.2
  • โมเดลที่คาดการณ์ปริมาณน้ำฝนเป็นนิ้วที่จะตกในบางเมืองในช่วง 6 ชั่วโมงข้างหน้า เช่น 0.18

โมเดลการถดถอยที่พบได้ทั่วไป 2 ประเภท ได้แก่

โมเดลที่แสดงผลลัพธ์การคาดการณ์เชิงตัวเลขบางโมเดลไม่ใช่โมเดลการถดถอย ในบางกรณี การคาดการณ์ตัวเลขเป็นเพียงโมเดลการจัดประเภทที่มีชื่อคลาสเป็นตัวเลข ตัวอย่างเช่น โมเดลที่คาดการณ์รหัสไปรษณีย์ที่เป็นตัวเลขเป็นโมเดลการจัดประเภท ไม่ใช่โมเดลการถดถอย

Regularization

#fundamentals

กลไกใดๆ ที่ช่วยลดการจับคู่ที่มากเกินไป ประเภทของการทำให้เป็นระเบียบที่ได้รับความนิยม ได้แก่

การปรับให้เหมาะสมยังหมายถึงการลดโทษความซับซ้อนของโมเดลได้ด้วย

การปรับให้สม่ำเสมอขัดกับความรู้สึก การเพิ่มการถ่วงน้ำหนักมักจะเพิ่มการสูญเสียระหว่างการฝึก ซึ่งอาจสร้างความสับสนเนื่องจากเป้าหมายคือลดการสูญเสียระหว่างการฝึก

ไม่ เป้าหมายไม่ใช่การลดการลดลงของการฝึก โดยมีเป้าหมายเพื่อคาดการณ์ได้อย่างยอดเยี่ยมจากตัวอย่างในชีวิตจริง สิ่งที่น่าทึ่งคือแม้ว่าการเพิ่มความถี่ของการปรับให้เหมาะสมจะเพิ่ม Loss ของการฝึก แต่มักจะช่วยให้โมเดลคาดการณ์ตัวอย่างในชีวิตจริงได้ดีขึ้น


ดูข้อมูลเพิ่มเติมได้ที่การประมาณที่มากเกินไป: ความซับซ้อนของโมเดลในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

อัตราการจัดระเบียบ

#fundamentals

จํานวนที่จะระบุความสําคัญแบบสัมพัทธ์ของการปรับให้เหมาะสมระหว่างการฝึก การเพิ่มอัตราการควบคุมดูแลจะลดการจับคู่ที่มากเกินไป แต่อาจลดความสามารถในการคาดการณ์ของโมเดล ในทางกลับกัน การลดหรือละเว้นอัตราการปรับให้เหมาะสมจะทําให้เกิดการพอดีมากเกินไป

โดยปกติอัตราการปรับค่าใช้จ่ายจะแสดงเป็นตัวอักษรกรีก λ สมการการสูญเสียแบบง่ายต่อไปนี้แสดงอิทธิพลของ λ

minimize(loss function + λ(regularization))

โดยที่การปรับให้เป็นระเบียบคือกลไกการปรับให้เป็นระเบียบ ซึ่งรวมถึง


ดูข้อมูลเพิ่มเติมได้ที่การประมาณที่มากเกินไป: การปรับL2ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ReLU

#fundamentals

ตัวย่อของ Rectified Linear Unit

การสร้างที่เพิ่มการดึงข้อมูล (RAG)

#fundamentals

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

แรงจูงใจทั่วไปในการใช้การสร้างที่เพิ่มการดึงข้อมูล ได้แก่

  • เพิ่มความแม่นยำของข้อเท็จจริงของคำตอบที่โมเดลสร้างขึ้น
  • การให้สิทธิ์เข้าถึงความรู้ที่โมเดลไม่ได้ฝึก
  • การเปลี่ยนความรู้ที่โมเดลใช้
  • การเปิดใช้โมเดลเพื่ออ้างอิงแหล่งที่มา

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

  1. ค้นหา ("ดึงข้อมูล") ข้อมูลที่เกี่ยวข้องกับคําค้นหาของผู้ใช้
  2. ต่อท้าย ("เสริม") ข้อมูลเคมีที่เกี่ยวข้องลงในข้อความค้นหาของผู้ใช้
  3. สั่งให้ LLM สร้างข้อมูลสรุปตามข้อมูลที่ต่อท้าย

เส้นโค้ง ROC (Receiver Operating Characteristic)

#fundamentals
#Metric

กราฟของอัตราผลบวกจริงเทียบกับอัตราผลบวกลวงสําหรับเกณฑ์การจัดประเภทแบบต่างๆ ในการจัดประเภทแบบไบนารี

รูปร่างของเส้นโค้ง ROC บ่งบอกถึงความสามารถของโมเดลการจัดประเภทแบบไบนารีในการแยกคลาสที่เป็นบวกออกจากคลาสที่เป็นลบ ตัวอย่างเช่น สมมติว่าโมเดลการจัดประเภทแบบไบนารีแยกคลาสเชิงลบทั้งหมดออกจากคลาสเชิงบวกทั้งหมดได้อย่างสมบูรณ์

เส้นจำนวนที่มีตัวอย่างบวก 8 รายการทางด้านขวาและตัวอย่างลบ 7 รายการทางด้านซ้าย

เส้นโค้ง ROC ของรูปแบบก่อนหน้ามีลักษณะดังนี้

เส้นโค้ง ROC โดยแกน X คืออัตราผลบวกลวงและแกน Y คืออัตราผลบวกจริง เส้นโค้งเป็นรูปตัว L กลับหัว เส้นโค้งจะเริ่มต้นที่ (0.0,0.0) และขึ้นตรงๆ ไปที่ (0.0,1.0) จากนั้นเส้นโค้งจะเปลี่ยนจาก (0.0,1.0) เป็น (1.0,1.0)

ในทางตรงกันข้าม ภาพประกอบต่อไปนี้แสดงกราฟค่าการถดถอยเชิงลอจิสติกส์ดิบสําหรับโมเดลที่ทํางานได้แย่มากซึ่งแยกคลาสเชิงลบออกจากคลาสเชิงบวกไม่ได้เลย

เส้นจำนวนที่มีตัวอย่างที่เป็นบวกและคลาสที่เป็นลบปะปนกัน

เส้นโค้ง ROC ของรูปแบบนี้จะมีลักษณะดังนี้

เส้นโค้ง ROC ซึ่งจริงๆ แล้วคือเส้นตรงจาก (0.0,0.0) ไป (1.0,1.0)

ในทางกลับกัน โมเดลการจัดประเภทแบบไบนารีส่วนใหญ่จะแยกคลาสที่เป็นบวกและลบในระดับหนึ่ง แต่มักจะไม่แยกได้อย่างสมบูรณ์ ดังนั้น กราฟ ROC ทั่วไปจึงอยู่ตรงกลางระหว่าง 2 ค่าสุดขั้วนี้

เส้นโค้ง ROC โดยแกน X คืออัตราผลบวกลวงและแกน Y คืออัตราผลบวกจริง เส้นโค้ง ROC แสดงเป็นเส้นโค้งที่ผันผวนซึ่งลากผ่านจุดต่างๆ ของเข็มทิศจากตะวันตกไปเหนือ

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

เมตริกตัวเลขที่เรียกว่า AUC จะสรุปเส้นโค้ง ROC เป็นค่าทศนิยมเดียว

ค่าเฉลี่ยความคลาดเคลื่อนกำลังสอง (RMSE)

#fundamentals
#Metric

รากที่สองของความคลาดเคลื่อนเฉลี่ยกำลังสอง

S

ฟังก์ชัน Sigmoid

#fundamentals

ฟังก์ชันทางคณิตศาสตร์ที่ "บีบอัด" ค่าอินพุตให้อยู่ในช่วงที่จํากัด ซึ่งโดยทั่วไปคือ 0 ถึง 1 หรือ -1 ถึง +1 กล่าวคือ คุณสามารถส่งตัวเลขใดก็ได้ (2 ล้าน ลบ 1,000 ล้าน หรืออะไรก็ตาม) ไปยัง Sigmoid และเอาต์พุตจะยังคงอยู่ในช่วงที่ถูกจำกัด ผังฟังก์ชันการเปิดใช้งาน Sigmoid มีลักษณะดังนี้

ผังโค้ง 2 มิติที่มีค่า x ครอบคลุมโดเมนจาก -infinity ถึง +positive ส่วนค่า y ครอบคลุมช่วงเกือบ 0 ถึงเกือบ 1 เมื่อ x เป็น 0, y จะเท่ากับ 0.5 ความชันของเส้นโค้งจะเป็นค่าบวกเสมอ โดยมีค่าสูงสุดที่ 0,0.5 และค่อยๆ ลดลงเมื่อค่าสัมบูรณ์ของ x เพิ่มขึ้น

ฟังก์ชัน Sigmoid มีประโยชน์หลายอย่างในแมชชีนเลิร์นนิง ดังนี้

ฟังก์ชัน Sigmoid ของจำนวนอินพุต x มีสูตรดังนี้

sigmoid(x)=11+ex

ในแมชชีนเลิร์นนิง โดยทั่วไป x คือผลรวมถ่วงน้ำหนัก


Softmax

#fundamentals

ฟังก์ชันที่กําหนดความน่าจะเป็นสําหรับแต่ละคลาสที่เป็นไปได้ในโมเดลการจัดประเภทแบบหลายคลาส ความน่าจะเป็นทั้งหมดจะเท่ากับ 1.0 เช่น ตารางต่อไปนี้แสดงวิธีที่ Softmax แจกแจงความน่าจะเป็นต่างๆ

รูปภาพเป็น... Probability
สุนัข .85
แมว .13
ม้า .02

Softmax เรียกอีกอย่างว่า Full Softmax

ตรงข้ามกับการสุ่มตัวอย่างผู้สมัคร

สมการ Softmax มีดังนี้

σi=ezij=1j=Kezj
where:
  • σi คือเวกเตอร์เอาต์พุต องค์ประกอบแต่ละรายการของเวกเตอร์เอาต์พุตจะระบุความน่าจะเป็นขององค์ประกอบนี้ ผลรวมขององค์ประกอบทั้งหมดในเวกเตอร์เอาต์พุตคือ 1.0 เวกเตอร์เอาต์พุตมีจำนวนองค์ประกอบเท่ากับเวกเตอร์อินพุต z
  • z คือเวกเตอร์อินพุต องค์ประกอบแต่ละรายการของเวกเตอร์อินพุตจะมีค่าทศนิยม
  • K คือจํานวนองค์ประกอบในเวกเตอร์อินพุต (และเวกเตอร์เอาต์พุต)

เช่น สมมติว่าเวกเตอร์อินพุตคือ

[1.2, 2.5, 1.8]

ดังนั้น Softmax จะคํานวณตัวหารดังนี้

denominator=e1.2+e2.5+e1.8=21.552

ดังนั้นความน่าจะเป็นแบบ Softmax ขององค์ประกอบแต่ละรายการจึงเท่ากับ

σ1=e1.221.552=0.154
σ2=e2.521.552=0.565
σ1=e1.821.552=0.281

ดังนั้นเวกเตอร์เอาต์พุตจึงมีดังนี้

σ=[0.154,0.565,0.281]

ผลรวมขององค์ประกอบ 3 รายการใน σ คือ 1.0 ในที่สุด


ดูข้อมูลเพิ่มเติมได้ที่เครือข่ายประสาท: การแยกประเภทหลายคลาสในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

องค์ประกอบที่กระจัดกระจาย

#language
#fundamentals

ฟีเจอร์ที่มีค่าเป็น 0 หรือว่างเปล่าเป็นส่วนใหญ่ เช่น ฟีเจอร์ที่มีค่า 1 รายการเดียวและค่า 0 1 ล้านรายการจะมีความกระจัดกระจาย ในทางตรงกันข้าม ฟีเจอร์แบบหนาแน่นมีค่าที่ส่วนใหญ่ไม่ใช่ 0 หรือว่าง

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

ในโมเดล โดยทั่วไปคุณแสดงฟีเจอร์แบบเบาบางด้วยการเข้ารหัสแบบฮอตเวิร์ก หากการเข้ารหัสแบบฮอตเวิร์กมีขนาดใหญ่ คุณอาจใส่เลเยอร์การฝังไว้ด้านบนการเข้ารหัสแบบฮอตเวิร์กเพื่อให้มีประสิทธิภาพมากขึ้น

การนําเสนอแบบเบาบาง

#language
#fundamentals

การจัดเก็บเฉพาะตําแหน่งขององค์ประกอบที่ไม่ใช่ 0 ในฟีเจอร์แบบเบาบาง

ตัวอย่างเช่น สมมติว่าองค์ประกอบเชิงหมวดหมู่ชื่อ species ระบุสายพันธุ์ต้นไม้ 36 ชนิดในป่าแห่งหนึ่ง และสมมติเพิ่มเติมว่า ตัวอย่างแต่ละรายการระบุเพียงสปีชีส์เดียว

คุณสามารถใช้เวกเตอร์แบบฮอตเวิร์ก 1 รายการเพื่อแสดงสายพันธุ์ต้นไม้ในแต่ละตัวอย่าง เวกเตอร์แบบฮอตเวิร์กเดียวจะมี 1 รายการเดียว (เพื่อแสดงถึงพันธุ์ไม้บางชนิดในตัวอย่างนั้น) และ 0 35 รายการ (เพื่อแสดงถึงพันธุ์ไม้ 35 ชนิดที่ไม่อยู่ในตัวอย่างนั้น) ดังนั้นการนําเสนอแบบฮอตเวิร์ดของ maple จึงอาจมีลักษณะดังนี้

เวกเตอร์ที่ตำแหน่ง 0 ถึง 23 มีค่าเป็น 0, ตำแหน่ง 24 มีค่าเป็น 1 และตำแหน่ง 25 ถึง 35 มีค่าเป็น 0

หรือการแสดงแบบเบาบางจะระบุตำแหน่งของพันธุ์นั้นๆ เท่านั้น หาก maple อยู่ที่ตําแหน่ง 24 การแสดงแบบเบาบางของ maple จะเป็นดังนี้

24

โปรดสังเกตว่าการนําเสนอแบบเบาบางมีความกะทัดรัดกว่าการนําเสนอแบบฮอตเวิร์ก

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

ลองพิจารณาประโยคต่อไปนี้

My dog is a great dog

คุณอาจใช้ตัวแปรของเวกเตอร์แบบฮอตเวิร์กเพื่อแสดงคําในประโยคนี้ได้ ในตัวแปรนี้ เซลล์หลายเซลล์ในเวกเตอร์อาจมีค่าที่ไม่ใช่ 0 นอกจากนี้ ในตัวแปรนี้ เซลล์อาจมีจำนวนเต็มอื่นที่ไม่ใช่ 1 แม้ว่าคำว่า "my", "is", "a" และ "great" จะปรากฏเพียงครั้งเดียวในประโยค แต่คำว่า "dog" ปรากฏ 2 ครั้ง การใช้เวกเตอร์ One-Hot รูปแบบนี้เพื่อแสดงคําในประโยคนี้จะให้เวกเตอร์องค์ประกอบ 170,000 รายการดังต่อไปนี้

เวกเตอร์จำนวนเต็ม 170,000 รายการ ตัวเลข 1 อยู่ที่ตำแหน่งเวกเตอร์ 0, 45770, 58906 และ 91520 ตัวเลข 2 อยู่ตําแหน่ง 26,100
          ตำแหน่งที่เหลือ 169,996 ตำแหน่งจะเป็นเลข 0

การแสดงประโยคเดียวกันแบบเบาบางจะเป็นดังนี้

0: 1
26100: 2
45770: 1
58906: 1
91520: 1

คําว่า "การนําเสนอแบบเบาบาง" ทําให้ผู้คนจำนวนมากสับสน เนื่องจากการนําเสนอแบบเบาบางไม่ใช่เวกเตอร์แบบเบาบาง แต่การแสดงผลแบบเบาบางคือการแสดงผลแบบหนาแน่นของเวกเตอร์แบบเบาบาง คำพ้องความหมายอย่างการนําเสนอดัชนีมีความชัดเจนกว่า "การนําเสนอแบบเบาบาง" เล็กน้อย


ดูข้อมูลเพิ่มเติมที่หัวข้อการทํางานกับข้อมูลเชิงหมวดหมู่ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

เวกเตอร์แบบเบาบาง

#fundamentals

เวกเตอร์ที่มีค่าเป็น 0 ส่วนใหญ่ โปรดดูฟีเจอร์แบบเบาบางและความเบาบางด้วย

ผลรวมของค่าสัมบูรณ์ของข้อผิดพลาด

#fundamentals
#Metric

คำพ้องความหมายของการสูญเสีย L2

คงที่

#fundamentals

การดำเนินการแบบครั้งเดียวแทนที่จะเป็นการดำเนินการอย่างต่อเนื่อง คําว่าคงที่และออฟไลน์เป็นคําพ้องกัน ต่อไปนี้เป็นการใช้งานทั่วไปของแบบคงที่และออฟไลน์ในแมชชีนเลิร์นนิง

  • โมเดลแบบคงที่ (หรือโมเดลออฟไลน์) คือโมเดลที่ฝึกเพียงครั้งเดียวแล้วนําไปใช้เป็นระยะเวลาหนึ่ง
  • การฝึกแบบคงที่ (หรือการฝึกแบบออฟไลน์) คือกระบวนการฝึกโมเดลแบบคงที่
  • การอนุมานแบบคงที่ (หรือการอนุมานแบบออฟไลน์) เป็นกระบวนการที่โมเดลสร้างการคาดการณ์หลายรายการพร้อมกัน

ตรงข้ามกับแบบไดนามิก

การให้เหตุผลแบบคงที่

#fundamentals

คำพ้องความหมายของการอนุมานแบบออฟไลน์

ความเป็นสถานี

#fundamentals

ฟีเจอร์ที่มีค่าไม่เปลี่ยนแปลงในมิติข้อมูลอย่างน้อย 1 รายการ ซึ่งมักจะเป็นเวลา เช่น ฟีเจอร์ที่มีค่าใกล้เคียงกันในปี 2021 และ 2023 แสดงถึงความคงที่

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

ตรงข้ามกับความไม่เป็นเชิงเส้น

การลดเชิงสุ่มตามลาดชัน (SGD)

#fundamentals

อัลกอริทึมการลดเชิงลาดซึ่งมีขนาดกลุ่มเท่ากับ 1 กล่าวคือ SGD จะฝึกจากตัวอย่างเดียวที่เลือกแบบสุ่มอย่างสม่ำเสมอจากชุดข้อมูลการฝึก

ดูข้อมูลเพิ่มเติมได้ที่การถดถอยเชิงเส้น: ไฮเปอร์พารามิเตอร์ในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

แมชชีนเลิร์นนิงที่มีการควบคุมดูแล

#fundamentals

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

เปรียบเทียบกับแมชชีนเลิร์นนิงแบบไม่ควบคุมดูแล

ดูข้อมูลเพิ่มเติมได้ที่การเรียนรู้แบบควบคุมดูแลในหลักสูตรข้อมูลเบื้องต้นเกี่ยวกับ ML

องค์ประกอบสังเคราะห์

#fundamentals

องค์ประกอบที่ไม่มีอยู่ในองค์ประกอบอินพุต แต่ประกอบขึ้นจากองค์ประกอบอย่างน้อย 1 รายการ วิธีการสร้างฟีเจอร์ที่ผ่านการสังเคราะห์มีดังนี้

  • การจัดกลุ่มองค์ประกอบแบบต่อเนื่องลงในที่เก็บข้อมูลช่วง
  • การสร้างการครอสฟีเจอร์
  • การคูณ (หรือหาร) ค่าฟีเจอร์หนึ่งด้วยค่าฟีเจอร์อื่นๆ หรือคูณด้วยค่าฟีเจอร์นั้นเอง ตัวอย่างเช่น หาก a และ b เป็นฟีเจอร์อินพุต ตัวอย่างฟีเจอร์สังเคราะห์มีดังนี้
    • ab
    • a2
  • การใช้ฟังก์ชันที่ไม่ใช่ตรีโกณมิติกับค่าองค์ประกอบ ตัวอย่างเช่น หาก c เป็นฟีเจอร์อินพุต ตัวอย่างฟีเจอร์สังเคราะห์มีดังนี้
    • sin(c)
    • ln(c)

ฟีเจอร์ที่สร้างขึ้นโดยการการปรับให้เป็นมาตรฐานหรือการปรับขนาดเพียงอย่างเดียวไม่ถือเป็นฟีเจอร์สังเคราะห์

T

การสูญเสียในการทดสอบ

#fundamentals
#Metric

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

บางครั้งช่องว่างระหว่างการสูญเสียในชุดทดสอบกับการสูญเสียในชุดฝึกหรือชุดตรวจสอบที่มากอาจบ่งบอกว่าคุณต้องเพิ่มอัตราการปรับสมดุล

การฝึกอบรม

#fundamentals

กระบวนการกำหนดพารามิเตอร์ (น้ำหนักและค่ากําหนด) ที่เหมาะสมซึ่งประกอบกันเป็นโมเดล ในระหว่างการฝึก ระบบจะอ่านตัวอย่างและค่อยๆ ปรับพารามิเตอร์ การฝึกอบรมจะใช้ตัวอย่างแต่ละรายการตั้งแต่ 2-3 ครั้งไปจนถึงหลายพันล้านครั้ง

ดูข้อมูลเพิ่มเติมได้ที่การเรียนรู้แบบควบคุมดูแลในหลักสูตรข้อมูลเบื้องต้นเกี่ยวกับ ML

การสูญเสียจากการฝึก

#fundamentals
#Metric

เมตริกที่แสดงถึงการสูญเสียของโมเดลระหว่างการทำซ้ำการฝึกหนึ่งๆ เช่น สมมติว่าฟังก์ชันการสูญเสียคือความคลาดเคลื่อนกำลังสองเฉลี่ย ตัวอย่างเช่น การสูญเสียในการฝึก (ข้อผิดพลาดค่าเฉลี่ยสี่เหลี่ยมจัตุรัส) ของการทำซ้ำครั้งที่ 10 คือ 2.2 และการสูญเสียในการฝึกของการทำซ้ำครั้งที่ 100 คือ 1.9

เส้นโค้งการสูญเสียจะแสดงการลดลงของการฝึกเทียบกับจํานวนการวนซ้ำ เส้นโค้งการสูญเสียจะให้คำแนะนำต่อไปนี้เกี่ยวกับการฝึก

  • เส้นที่ลาดลงหมายความว่าโมเดลมีประสิทธิภาพดีขึ้น
  • เส้นลาดขึ้นหมายความว่าโมเดลมีประสิทธิภาพแย่ลง
  • เส้นลาดชันที่ราบเรียบหมายความว่าโมเดลบรรลุการบรรจบแล้ว

ตัวอย่างเช่น เส้นโค้งการสูญเสียต่อไปนี้ซึ่งค่อนข้างเป็นอุดมคติจะแสดงข้อมูลต่อไปนี้

  • เส้นลาดลงชันในช่วงการทำซ้ำครั้งแรก ซึ่งหมายความว่าโมเดลได้รับการปรับปรุงอย่างรวดเร็ว
  • เส้นลาดชันที่ค่อยๆ ราบลง (แต่ยังคงลดลง) จนใกล้ถึงช่วงสิ้นสุดการฝึก ซึ่งหมายความว่ามีการปรับปรุงโมเดลอย่างต่อเนื่องในอัตราที่ช้ากว่าช่วงการทำซ้ำครั้งแรก
  • เส้นลาดชันที่ราบเรียบในช่วงท้ายของการฝึก ซึ่งบ่งบอกถึงการบรรจบ

ผังของการสูญเสียของการฝึกเทียบกับจำนวนรอบ เส้นโค้งการสูญเสียนี้เริ่มต้นด้วยเส้นลาดชันชันลง ความชันจะค่อยๆ ลดลงจนกว่าจะมีค่าเป็น 0

แม้ว่าการสูญเสียระหว่างการฝึกจะมีความสำคัญ แต่โปรดดูการทั่วไปด้วย

ความคลาดเคลื่อนระหว่างการฝึกและการให้บริการ

#fundamentals

ความแตกต่างระหว่างประสิทธิภาพของโมเดลระหว่างการฝึกกับประสิทธิภาพของโมเดลเดียวกันระหว่างการทํางาน

ชุดการฝึก

#fundamentals

ชุดย่อยของชุดข้อมูลที่ใช้ฝึกโมเดล

โดยทั่วไปแล้ว ตัวอย่างในชุดข้อมูลจะแบ่งออกเป็นชุดย่อยที่แตกต่างกัน 3 ชุดต่อไปนี้

ตามหลักการแล้ว ตัวอย่างแต่ละรายการในชุดข้อมูลควรอยู่ในชุดย่อยก่อนหน้าเพียงชุดเดียว เช่น ตัวอย่างเดียวไม่ควรอยู่ในทั้งชุดการฝึกและชุดทดสอบ

ดูข้อมูลเพิ่มเติมที่ชุดข้อมูล: การแบ่งชุดข้อมูลเดิมในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ผลลบจริง (TN)

#fundamentals
#Metric

ตัวอย่างที่โมเดลคาดการณ์คลาสเชิงลบได้อย่างถูกต้อง ตัวอย่างเช่น โมเดลอนุมานว่าข้อความอีเมลหนึ่งๆ ไม่ใช่จดหมายขยะ และข้อความอีเมลนั้นไม่ใช่จดหมายขยะจริงๆ

ผลบวกจริง (TP)

#fundamentals
#Metric

ตัวอย่างที่โมเดลคาดการณ์คลาสที่เป็นบวกได้อย่างถูกต้อง เช่น โมเดลอนุมานว่าข้อความอีเมลหนึ่งๆ เป็นจดหมายขยะ และข้อความอีเมลนั้นจริงๆ แล้วเป็นจดหมายขยะ

อัตราผลบวกจริง (TPR)

#fundamentals
#Metric

คำพ้องความหมายของ recall โดยการ

true positive rate=true positivestrue positives+false negatives

อัตราผลบวกจริงคือแกน y ในกราฟ ROC

U

Underfitting

#fundamentals

การสร้างโมเดลที่คาดการณ์ได้ไม่ดีเนื่องจากโมเดลไม่ได้จับความซับซ้อนของข้อมูลการฝึกอย่างเต็มรูปแบบ ปัญหาหลายอย่างอาจทําให้เกิดการประมาณที่น้อยเกินไปได้ ดังนี้

ดูข้อมูลเพิ่มเติมได้ที่การประมาณมากเกินไปในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ตัวอย่างที่ไม่มีป้ายกำกับ

#fundamentals

ตัวอย่างที่มีฟีเจอร์แต่ไม่มีป้ายกำกับ ตัวอย่างเช่น ตารางต่อไปนี้แสดงตัวอย่าง 3 รายการที่ไม่มีป้ายกำกับจากโมเดลการประเมินมูลค่าบ้าน โดยแต่ละรายการมี 3 ฟีเจอร์ แต่ไม่มีมูลค่าบ้าน

จำนวนห้องนอน จำนวนห้องน้ำ อายุของบ้าน
3 2 15
2 1 72
4 2 34

ในแมชชีนเลิร์นนิงที่มีการควบคุมดูแล รูปแบบจะฝึกจากตัวอย่างที่ติดป้ายกำกับและทำการคาดการณ์จากตัวอย่างที่ไม่มีป้ายกำกับ

ในการเรียนรู้แบบควบคุมดูแลบางส่วนและไม่มีการควบคุมดูแล ระบบจะใช้ตัวอย่างที่ไม่มีป้ายกำกับในระหว่างการฝึก

เปรียบเทียบตัวอย่างที่ไม่มีป้ายกำกับกับตัวอย่างที่มีป้ายกำกับ

แมชชีนเลิร์นนิงแบบไม่มีการควบคุมดูแล

#clustering
#fundamentals

การฝึกโมเดลเพื่อค้นหารูปแบบในชุดข้อมูล ซึ่งมักจะเป็นชุดข้อมูลที่ไม่มีป้ายกำกับ

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

ตรงข้ามกับแมชชีนเลิร์นนิงที่มีการควบคุมดูแล

อีกตัวอย่างหนึ่งของแมชชีนเลิร์นนิงที่ไม่มีการควบคุมคือการวิเคราะห์องค์ประกอบหลัก (PCA) เช่น การใช้ PCA ในชุดข้อมูลที่มีเนื้อหาของรถเข็นช็อปปิ้งหลายล้านคันอาจแสดงให้เห็นว่ารถเข็นช็อปปิ้งที่มีมะนาวมักจะมียาลดกรดด้วย


ดูข้อมูลเพิ่มเติมได้ที่แมชชีนเลิร์นนิงคืออะไรในหลักสูตรข้อมูลเบื้องต้นเกี่ยวกับ ML

V

การตรวจสอบความถูกต้อง

#fundamentals

การประเมินคุณภาพโมเดลเบื้องต้น การตรวจสอบจะตรวจสอบคุณภาพของการคาดการณ์ของโมเดลเทียบกับชุดข้อมูลที่ใช้ตรวจสอบ

เนื่องจากชุดที่ใช้ตรวจสอบแตกต่างจากชุดข้อมูลการฝึก การทดสอบจึงช่วยป้องกันการประมาณค่ามากเกินไป

คุณอาจคิดว่าการประเมินโมเดลเทียบกับชุดข้อมูลการตรวจสอบเป็นการทดสอบรอบแรก และการประเมินโมเดลเทียบกับชุดทดสอบเป็นการทดสอบรอบที่ 2

การสูญเสียการตรวจสอบ

#fundamentals
#Metric

เมตริกที่แสดงถึงความสูญเสียของโมเดลในชุดทดสอบระหว่างการทำซ้ำการฝึกหนึ่งๆ

โปรดดูเส้นโค้งทั่วไปด้วย

ชุดการตรวจสอบ

#fundamentals

ชุดย่อยของชุดข้อมูลที่ทําการประเมินเบื้องต้นกับโมเดลที่ผ่านการฝึก โดยปกติแล้ว คุณจะต้องประเมินโมเดลที่ผ่านการฝึกอบรมกับชุดข้อมูลที่ใช้ตรวจสอบหลายครั้งก่อนที่จะประเมินโมเดลกับชุดทดสอบ

โดยทั่วไปแล้ว คุณจะต้องแบ่งตัวอย่างในชุดข้อมูลออกเป็นชุดย่อย 3 ชุดที่แตกต่างกัน ดังนี้

ตามหลักการแล้ว ตัวอย่างแต่ละรายการในชุดข้อมูลควรอยู่ในชุดย่อยก่อนหน้าเพียงชุดเดียว เช่น ตัวอย่างเดียวไม่ควรอยู่ในทั้งชุดการฝึกและชุดทดสอบ

ดูข้อมูลเพิ่มเติมที่ชุดข้อมูล: การแบ่งชุดข้อมูลเดิมในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

W

น้ำหนัก

#fundamentals

ค่าที่โมเดลคูณด้วยค่าอื่น การฝึกคือกระบวนการกำหนดน้ำหนักที่เหมาะสมของโมเดล ส่วนการอนุมานคือกระบวนการใช้น้ำหนักที่เรียนรู้มาเพื่อคาดการณ์

ลองจินตนาการถึงรูปแบบเชิงเส้นที่มี 2 ฟีเจอร์ สมมติว่าการฝึกกำหนดน้ำหนัก (และค่ากําหนด) ต่อไปนี้

  • ค่าอคติ b มีค่า 2.2
  • น้ำหนัก w1 ที่เชื่อมโยงกับฟีเจอร์หนึ่งคือ 1.5
  • น้ำหนัก w2 ที่เชื่อมโยงกับฟีเจอร์อื่นคือ 0.4

ลองจินตนาการถึงตัวอย่างที่มีค่าฟีเจอร์ต่อไปนี้

  • ค่าขององค์ประกอบ x1 คือ 6
  • ค่าของฟีเจอร์อื่น x2 คือ 10

แบบจําลองเชิงเส้นนี้ใช้สูตรต่อไปนี้ในการสร้างการคาดการณ์ "y"

y=b+w1x1+w2x2

ดังนั้นการคาดการณ์คือ

y=2.2+(1.5)(6)+(0.4)(10)=15.2

หากน้ำหนักเป็น 0 แสดงว่าฟีเจอร์ที่เกี่ยวข้องไม่ได้มีส่วนช่วยในการสร้างโมเดล เช่น หาก w1 เป็น 0 ค่าของ x1 จะถือว่าไม่เกี่ยวข้อง


ดูข้อมูลเพิ่มเติมเกี่ยวกับการหาค่าสัมประสิทธ์เชิงเส้นในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

ผลรวมถ่วงน้ำหนัก

#fundamentals

ผลรวมของค่าอินพุตที่เกี่ยวข้องทั้งหมดที่คูณด้วยน้ำหนักที่สอดคล้องกัน ตัวอย่างเช่น สมมติว่าอินพุตที่เกี่ยวข้องประกอบด้วยข้อมูลต่อไปนี้

ค่าอินพุต น้ำหนักอินพุต
2 -1.3
-1 0.6
3 0.4

ดังนั้นผลรวมถ่วงน้ำหนักจึงเท่ากับ

weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0

ผลรวมถ่วงน้ำหนักคืออาร์กิวเมนต์อินพุตของฟังก์ชันการเปิดใช้งาน

Z

การแปลงข้อมูลเป็นรูปแบบมาตรฐาน Z-Score

#fundamentals

เทคนิคการปรับขนาดที่ใช้แทนค่า ฟีเจอร์ดิบด้วยค่าทศนิยมที่แสดงจํานวนค่าเบี่ยงเบนมาตรฐานจากค่าเฉลี่ยของฟีเจอร์นั้น ตัวอย่างเช่น พิจารณาฟีเจอร์ที่มีค่าเฉลี่ย 800 และค่าความเบี่ยงเบนมาตรฐาน 100 ตารางต่อไปนี้แสดงวิธีที่การหาค่า Z-Score มาตรฐานจะจับคู่ค่าดิบกับ Z-Score

ค่าดิบ คะแนนมาตรฐาน (Z-Score)
800 0
950 +1.5
575 -2.25

จากนั้นโมเดลแมชชีนเลิร์นนิงจะฝึกด้วยคะแนน Z ของฟีเจอร์นั้นแทนค่าดิบ

ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลตัวเลข: การทำให้ค่าเป็นมาตรฐานในหลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง