NextGenAI-2024 | Neural Network #1

NextGen AI Camp www.youtube.com

สรุปย่อ

วิดีโอนี้เป็นการแนะนำเกี่ยวกับ Neural Network โดยเริ่มจาก Perceptron ซึ่งเป็นหน่วยพื้นฐานที่สำคัญของ AI ในปัจจุบัน อธิบายถึงการทำงานของ Perceptron, การพัฒนาจากอดีตสู่ Deep Learning ในปัจจุบัน, และการใช้ Machine Learning เพื่อทำความเข้าใจ Perceptron รวมถึงการสร้าง Perceptron ด้วยภาษา Python และการใช้ Gradient Descent เพื่อหาค่าที่เหมาะสม

  • Perceptron เป็นหน่วยพื้นฐานของ Neural Network
  • Deep Learning คือ Neural Network ที่มีความซับซ้อน
  • Machine Learning ช่วยให้ AI เรียนรู้จากข้อมูล
  • Gradient Descent ใช้ในการหาค่าที่เหมาะสมในการเรียนรู้ของ AI

ทำไมต้องเรียนรู้ Neural Network

อธิบายถึงความสำคัญของการเรียนรู้ Neural Network เนื่องจากเป็นพื้นฐานการทำงานของ AI ที่กำลังเป็นที่นิยมในปัจจุบัน เช่น ChatGPT และอื่น ๆ การเข้าใจโครงสร้างของ Neural Network จะช่วยให้สามารถสร้าง AI ของตนเองได้

Perceptron คืออะไร

Perceptron เป็นชื่อที่ตั้งโดยนักวิทยาศาสตร์สองท่าน คือ วอน (นักประสาทวิทยา) และ W (นักตรรกศาสตร์) โดยวอนได้อธิบายการทำงานของเซลล์ประสาท และ W ได้สังเกตว่าการทำงานของเซลล์ประสาทคล้ายกับ Logic ในตรรกศาสตร์ จึงได้เขียนบทความวิจัยเรื่อง "A Logical Calculus of the Ideas Ent in Nervous Activity" โดยนำเสนอว่าเหตุการณ์ทางประสาทสามารถอธิบายได้ด้วย Logic และเสนอแบบจำลองของเซลล์ประสาทที่เรียกว่าโครงข่ายประสาทเทียม (Artificial Neural Network) ซึ่งมีลักษณะคล้ายกับเซลล์ประสาทจริง คือมี Input, Process และ Output

การทำงานของ Perceptron ในยุคแรก

ในยุคแรกของการพัฒนา Perceptron มีการกำหนดว่าถ้าผลรวมของ Input มีค่ามากกว่า Threshold จะมี Output แต่ถ้าน้อยกว่าจะไม่ Output ต่อมาในปี 1957 ได้มีการพัฒนา Perceptron เครื่องแรกชื่อ Mark One Perceptron ซึ่งมีความสามารถในการจดจำตัวอักษรและเล่นเกมได้ ถือเป็นเครื่องจักรเรียนรู้เครื่องแรกของโลก

การพัฒนาสู่ Deep Learning ในปัจจุบัน

จาก Neural Network ได้พัฒนามาเป็น Deep Learning ซึ่งเป็นโครงข่ายประสาทเทียมที่มีความซับซ้อนมากขึ้น โดย ChatGPT และ Mid Journey เป็นตัวอย่างของ Deep Learning องค์ประกอบที่เล็กที่สุดของ Deep Learning ยังคงเป็น Perceptron ซึ่งเป็นโมเดลที่ตั้งขึ้นมาตั้งแต่แรก

การทำความเข้าใจ Perceptron ด้วย Machine Learning

ใช้รูปแบบของ Machine Learning เพื่อทำความเข้าใจ Perceptron โดยให้ AI เรียนรู้จากข้อมูลที่กำหนดให้ เช่น คู่ลำดับ (x, y) และให้หาความสัมพันธ์ระหว่าง x และ y โดยใช้ Perceptron เพียงตัวเดียว

การสร้าง Perceptron ด้วยภาษา Python

แสดงตัวอย่างการสร้าง Perceptron โดยใช้ภาษา Python และ Library ที่ชื่อว่า Numpy เพื่อจัดการข้อมูลแบบ Matrix โดยเริ่มต้นจากการสร้างข้อมูล, Random ค่า Noise, และสร้างค่า Y จากสมการ 5x + 10 จากนั้นนำค่า x และ y มาต่อกันเป็นคู่ลำดับ

การหาเส้นที่เหมาะสมที่สุด (Best Fit) ด้วย Regression

อธิบายถึงวิธีการหาเส้นตรงที่เหมาะสมที่สุด (Best Fit) โดยใช้หลักการทางคณิตศาสตร์ที่เรียกว่า Regression ซึ่งเป็นการหาเส้นตรงที่มีระยะห่างจากจุดทุกจุดน้อยที่สุด โดยใช้ Sum of Absolute Error (SAE) หรือ Sum of Square Error (SSE) เป็นตัววัด

การปรับค่า A และ B ด้วย Gradient Descent

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

ผลของ Learning Rate ต่อการทำงานของ Gradient Descent

อธิบายถึงผลของ Learning Rate ซึ่งเป็นค่าที่ใช้ในการปรับขนาดของการเปลี่ยนแปลงในการไล่ตามความชัน ถ้า Learning Rate น้อย จะไปถึงจุดต่ำสุดได้ แต่จะช้า แต่ถ้า Learning Rate มาก อาจจะข้ามจุดต่ำสุดไป

Gradient Descent กับ 2 ตัวแปร

อธิบายถึงการใช้ Gradient Descent กับ 2 ตัวแปร (X1 และ X2) โดยการหาค่าความชันของแต่ละตัวแปร และปรับค่าตามความชันนั้น ๆ โดย Learning Rate ยังคงมีผลต่อการทำงานเช่นเดิม

การเขียน Gradient Descent ของโปรแกรม

แสดงตัวอย่างการเขียน Gradient Descent ของโปรแกรม โดยใช้สมการ AX + B และอธิบายถึงการทำงานของฟังก์ชัน Gradient Step และ Gradient Descent Runner รวมถึงการปรับค่า Learning Rate และ Number of Iteration เพื่อให้ได้ผลลัพธ์ที่ดีที่สุด

สรุปและสิ่งที่ควรทำ

สรุปเนื้อหาที่ได้เรียนรู้ในวันนี้ และแนะนำให้ไปศึกษาเพิ่มเติมเกี่ยวกับการทำงานของ Perceptron, Trading Loop, การหา Loss โดยใช้ Sum of Square Error, การหาจุดต่ำสุดของกราฟโดยใช้ Gradient Descent, และผลของ Learning Rate และจำนวนรอบการทำงาน

Summarize any YouTube video in seconds

Get summaries like this one for any video, in your language, with the free Summ app.

Download on the Apple Store
Get it on Google Play

Transcript

YouTube Transcript Generator

0:05 next gen AI [เพลง] Camp อ่าสวัสดี ครับวันนี้ก็เป็นตอนแรกของเรื่อง neural Network อ่าทำไมถึงต้องเรียนเรื่อง neural Network เพราะว่า AI ในยุคปัจจุบันเนี่ย ที่ดังๆทั้งหลายเนี่ยไม่ว่าจะเป็นแช gpt อ่าเป็นจี่

0:52 de นะหรือว่าเินหรือค่ายไหนๆก็ตาม อ่าเบื้องหลังการทำงานของมันเนี่ยคือ neural Network นะเพราะฉะนั้นเนี่ยจึงมีความ จำเป็นที่เราจะต้องเรียนรู้โครงสร้างของ neural Network เพื่อให้เข้าใจการทำงาน ของ AI ในปัจจุบันเพราะว่าถ้าเราไม่เข้า ใจ neal Network เราก็จะไม่สามารถที่จะ สร้าง AI ของเราเองได้นะครับ อ่ะทีนี้มาเราจะเริ่มด้วย perceptron perceptron เนี่ยนะครับเป็นชื่อเรียกที่

1:39 ตั้งโดย อ่าอ่าเรียกว่านักวิทยาศาสตร์แล้วะกันนะ ครับคนแรกเนี่ยชื่อ วอนนะเป็นนักประสาวิทยาหรือจะพูดให้มัน กว้างขึ้นก็คือเป็นนัก ชีววิทยาอีกคนนึงเนี่ยเป็นนัก คณิตศาสตร์แต่ว่าทำงานเรื่องตรรกศาสตร์ ชื่อ W นะครับอ่า 2 คนเนี่ยก็มาทำงานร่วมกัน นะครับอ่าสมัยนั้นเนี่ยยังไม่มี คอมพิวเตอร์นะ ครับเพราะว่าคอมพิวเตอร์เครื่องแรกเนี่ย สร้างขึ้นมาในปี 1944 80 ปีแล้วนะครับอันนี้คือ 80 ปี ที่ แล้ว 2 คนเนี่ยมาเจอกันได้ยังไงไม่รู้นะ

2:29 ครับ นะอันนี้ผมเข้าใจนะเอาเอาเป็นว่าเดาๆก็ แล้วกันว่านักประสาวิทยาเนี่ยก็คงเล่าว่า เอ่อเสพศาสตรทำงานยังไงอะไรแบบเนี้ยนะ ครับอ่าวเตอร์เนี่ยในฐานะที่เขาเป็นนัก ตรรกศาสตร์เนี่ยเค้าก็เลยสังเกตว่าเอ๊ะเซ ประศาสเนี่ยมันมีการทำงานเป็นคล้ายๆ Logic นะครับเค้าก็เลยเขียนบทความวิจัย ขึ้นมาเรื่อง 1 ชื่อว่า a logical Calculus of the Idea ent in nervous activity โดยเนื้อหาเนี่ยก็นำเสนอว่าอ่า เมื่อเซล์ประสาทเนี่ยได้รับการกระตุ้น

3:15 ผ่านเนะครับอ่าดูรูปนิดนึงนะ ครับอันนี้เป็นรูปของเซลล์ประสาทก็ถ้าเรา ไปเสิร์ชในอินเทอร์เน็ตก็จะมีหลายรูปนะฮ มีอันนี้รูปนึงแล้วก็มีรูปที่เป็นป้องๆ อีกรูปนึงนะครับอ่ะผมเลือกรูปนี้นะ ครับมันจะมีเดน Drive นะครับก็คือถ้าใคร เรียนชีวะมาแล้วเนี่ยก็น่าจะพอจำได้ว่า เดน dve เนี่ยมีหน้าที่รับข้อมูลจาก อ่าสิ่งต่างๆของมันเช่นอาจจะเป็นเซ ประศาสตร์อื่นหรืออาจจะรับจาก input โดย ตรงนะครับเช่นจากตาอ่าจากตา จากการสัมผัสจากกลิ่นจากรสชาติอะไรพวก

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

4:53 เนี้ยนะ ครับเค้าก็เลยบอกว่าเอ๊ะลักษณะมันเนี่ย คล้ายๆกับลอจิก นะครับคล้ายๆกับ 0 แล้วก็ 1 ในตรรกศาสตร์ นะครับคราวนี้เค้าก็เลยอนุมานไปเลยนะครับ ว่าเหตุการณ์ทางประสาทนะครับคือสิ่งต่างๆ ที่เกิดขึ้นเกี่ยวกับระบบประสาท เนี่ยสามารถที่อธิบายด้วย Logic หรือ ตรรกศาสตร์ ได้เค้าก็เลยเสนอแบบจำลองของเซลล์ ประศาสตร์นะครับก็ออกมาเป็นรูปร่างเนี่ย นะครับอันนี้คือแบบจำลองของเซลประศาสตร์ อ่าเค้าก็เรียกเรียกว่าเป็นโครงขายปสาท เทียมนะหรือว่าปัจจุบันเนี่ยก็เรียกกันใน ชื่อของว่า artificial neural

5:40 Network ก็จะเห็นว่าลักษณะถ้าดูจากรูปนะ ฮะจะเห็นว่าลักษณะเนี่ยคล้ายๆกันนะครับ คือมี input นะครับแล้วก็มีกลมๆเนี่ยเป็น กระเปาะเนี่ยนะครับคือเป็นส่วน process ess ปุ๊บได้ output ออกมานะ ครับ output เนี่ยจะมี 1 output ก็ได้ หรือือแยกไป output เนี่ยจะถูกส่งไปหลายๆ อันก็ได้อะไรอย่างเงี้นะครับทีนี้เนื่อง จากว่าไอ้เซลล์าสาเทียมเนี่ยมันเป็น เวอร์ชั่นที่ทำให้ง่ายขึ้นของเซลภาสาจริง นะครับเพราะเซภาสาจริงเนี่ย output เนี่ย ก็อาจจะไปต่อกับอะไรอีกเยอะแยะนะครับแต่ เซประสาทเทียมเนี่ยกำหนดให้มี output แค่ อันเดียวแต่ output อันเดียวเนี่ยสามารถ ที่จะส่งออกไปได้หลายทางอะไรประมาณเนี้ย

6:25 นะครับเพราะว่าก็ต้องเป็นเวอร์ชั่นที่มัน ทำให้ง่ายๆนะครับเพราะว่าเค้าจำลองอ่ะ คราวนี้อันนี้คือ 80 ปีที่แล้วนะครับคราว นี้ผ่านมานะครับสมัยก่อน เนี่ยอ่าสมัยก่อนเนี่ยอ่าวิวัฒนาการของ อ่าเรียกว่าอะไรวิทยาศาสตร์เนี่ยมันก็จะ เป็นไปไม่ค่อยเร็วเท่าไหร่ไม่เหมือนทุก วันเนี้ยนะครับเนี่ยแช jpt เพิ่งออกมา 2 ปีเองนะครับเนี่ยโอ้โหเหมือนโลกมัน เปลี่ยนไปเยอะนะครับ แต่สมัยก่อนเนี่ยนะครับมันจะไม่เร็วขนาด นั้นทีนี้จากโครงสร้างของเศพประศาสตร์ เทียมเนี่ยนะครับเขาก็บอกว่าเอาให้มันทำ

7:13 งานยังไงทำงานอย่างนี้ก็แล้วกันว่าถ้าผล รวมบวกกันเนี่ยมีค่ามากกว่าเส Show ก็ให้ output ถ้ามีค่าน้อยกว่า Test Show ก็ไม่ต้องให้ output เหมือนที่ผมยก ตัวอย่างอ่ะเช่นมีอะไรมาสะกิดเราเบาๆจน เราไม่รู้สึกเนี่ยก็ไม่ต้องมี output แต่ ถ้าใครเอาทู่มาจี้ปุ๊บเนี่ยอ่าอันนี้เรา สะดุ้งอันเนี้ยก็มี output ออกมานะครับ อะไรแบบ เนี้ยทีนี้ถ้าเศพประศาสตร์จริงของมนุษย์ สมองเนี่ยมันคงทำงานซับซ้อนกว่านี้เพราะ มันมันคงไม่ได้เอาแค่มาบวกกันแต่เนื่อง จากว่าเ้าทำเวอร์ชั่นที่ง่ายนะครับเพราะ ว่าเราไม่สามารถที่จะจำลองสมองได้ ปัจจุบันเนี่ยนี่ขนาดผ่านมา 80 นะครับก็

8:00 ยังมีคนพยายามทำเข้าใจการทำงานของสมอง อยู่นะพอดีผมไม่อยู่ไม่ได้อยู่สาย นี้เข้าใจว่าน่าจะเข้าใจเพิ่มขึ้นเยอะและ แต่ก็ยังมีสิ่งที่ไม่เข้าใจอีกเยอะนะ ครับทีนี้ผ่านมาในปี 1957 นะครับผ่านมา อีก 10 กว่าปีเลยนะ ครับเค้าก็ได้พัฒนาไอเดียตรงเนี้ยนะครับ พัฒนาไอเดียตรงเนี้ย อ่าจำได้มั้ครับที่ผมบอกว่าคอมพิวเตอร์ เครื่องแรกเนี่ยเกิดขึ้นในปี 1944 นะครับและคอมพิวเตอร์ก็พัฒนามา เรื่อยๆถ้าใครสนใจก็ไปค้นในวกิก็ได้นะ ครับว่าวิวิวัฒนาการของคอมพิวเตอร์เนี่ย

8:48 เป็นมายัง ไงทีนี้อันนี้เป็นอีกสายนึงนะครับเค้าก็ เอาทฤษฎีเรื่องของ artificial neural Network เนี่ยไลองมาสร้างเนี้ว่าถ้าจะ จำลองเซลล์ประสาทเนี่ยจำลองสมองมนุษย์ เนี่ยทำได้มยนะครับเค้าก็สร้างสำเร็จในปี 1957 เครื่องนี้มีชื่อว่า Mark One perceptron อาจจะเรียกว่าไอ้ตัวเเป็น AI เครื่องแรก ก็ได้นะครับในโลกนะครับก็น่าจะเรียกได้ อยู่นะครับเพราะว่าเ่อก่อนหน้านี้น่าจะ ไม่มีการสร้างอะไรที่สำเร็จขึ้นมาเป็น เครื่องแบบ นี้เครื่องนี้ก็ทำงานตามไอ้เซอนที่ที่ได้ เล่าไปก่อนหน้าเนี้ยแล้วก็มีความสามารถ แบบง่ายๆนะครับมันมีมันจะมีเซ็นเซอร์นะ

9:36 ครับเซ็นเซอร์วัดอ่าอะไรความสว่างอยู่ 16 ตัวนะครับ input ก็น้อยอนะครับแต่ว่าก็จด จำตัวอักษรได้เล่นเกมได้นะครับก็ถือได้ ว่าเป็นเครื่องจักรเรียนรู้เครื่องแรกของ โลกนะครับเหน้าตาเป็นอย่างนี้ใครสนใจก็ ลองไปเสิร์ชนะดูอันนี้ผมก็เอามาจากวิกิ pia นะครับรุ่ม นี้ก็ดูเส้นก็ยุ่งเหยืองดีพอสมควรนะครับ เครื่องก็ใหญ่เบ้อเร่อเลยอ่ะทีนี้พอผ่าน มานะครับผมข้ามเวลามาเลยะกันนะครับผมจะ ไม่ค่อยค่อยๆเล่านะเพราะว่า ไอ้เรื่องของ neural Network เนี่ยมันไป

10:23 มันจะมีช่วงเค้าเรียกว่า Dead Air นะ ครับคือช่วงที่มันชงักงันอยู่อยู่นานเป็น 10 ๆปีอยู่สัก 2 ช่วงมั้งนะครับจน กระทั่งมีใครพบอะไรใหม่มันก็กระโดดทีนึง พบพบอะไรใหม่มันก็กระโดดทีนึงการทำงาน เนี่ยก็เป็นไปอย่างเชื่องช้านะครับเริ่ม มามีพอใช้ได้จริงๆเนี่ยก็สักในปีอ่าแถวๆ ปี 1990 หรือว่าปี 2000 อะไรประมาณเนี้ย อ่ะที่เริ่มมีการพัฒนามา ได้เพิ่มขึ้นนะครับ ทีนี้ผมข้ามมาเลยแล้วกันนะครับมาถึง ปัจจุบันปัจจุบันเนี่ยจาก newal Network เนี่ยก็พัฒนากลายเป็น Deep Learning นะ

11:12 กลายเป็น Deep Learning ปัจจุบันเนี่ย อ่าถ้าเรียกว่า neal Network เนี่ยหมาย ถึงอ่าโครงข่ายประสาทเทียมที่ไม่ค่อยซับ ซ้อนแต่ถ้าโครงข่ายประสาทเทียมที่มีความ ซับซ้อนเนี่ยจะเรียกว่า Deep Learning นะครับก็คือไม่ว่าจะเป็น H jbt หรืออ่า mid Journey หรืออะไรก็ตามเนี่ยทุกอัน เป็น Deep Learning หมดนะ ครับแล้วก็แต่ว่ายังไงเนี่ยไอ้ตัวองค์ ประกอบเล็กสุดของมันเนี่ยก็ยังคงเป็น perceptron นะครับก็เป็นโมเดลที่เา้า ตั้งขึ้นมาตั้งแต่แรกอาจจะมีการปรับปรุง โมเดลแต่ว่าโดยภาพรวมของโมเดลเนี่ยก็ยัง เป็นแบบนั้นอยู่ดีนะครับทีนี้เราจะมาทำ เข้าใจ perceptron กันนะครับทีนี้นี้ใน

11:59 การทำความเข้าใจ เนี่ยเราจะใช้รูปแบบของ Machine Learning นะ ครับซึ่งเป็นสิ่งที่ AI เนี่ยนะครับต่าง กับการเขียนโปรแกรมซึ่งอ่าในวิดีโอเรื่อง ของ introduction to AI ก็คงพูดไว้แล้ว ว่า Machine Learning เนี่ยมันมีหน้าที่ ในการ เรรู้จากข้อมูลที่กำหนดให้อ่ะผมก็จะเอา แบบนั้นนะครับ สมมุติว่าอันนี้คือข้อมูลที่กำหนด ให้ข้อมูลที่กำหนดให้เนี่ยเป็นคู่ลำดับนะ ครับเป็นคู่ ลำดับทีนี้ถ้าสังเกตนะสมมติว่าเป็น x กับ Y ถ้า x เนี่ยเริ่มจาก 0 แล้วก็เพิ่ม

12:46 ขึ้นทีละ 0.1 ไปเรื่อยๆเห็นมฮะเพิ่มขึ้น ทีละ 0.1 ค่า Y เนี่ยก็เป็นค่าที่เพิ่ม ขึ้นนะฮะเห็นมฮะเพิ่มขึ้นมีลงบ้างลงบ้าง ขึ้นบ้างนะครับให้หาว่าระหว่าง x กับ Y เนี่ยมีความสัมพันธ์กันยังไงอันเนี้ยเป็น หน้าที่ของ Machine Learning ทีนี้เราจะเอา perceptron 1 ตัวนะครับตัวเดียวนะ ครับ peron แค่ตัวเดียวปัจจุบันเนี่ยอ่า โมเดลพวก Last Language Model เนี่ยเ้า มีพารามิเตอร์เนี่ยหรือมีไอ้ตัว perceptron เนี่ยเป็นพัน

13:31 ล้านแต่ไอ้ตัวเนี้ยมีเซอนแค่ตัวเดียวอ่า เรามาดูว่าเซอนแค่ตัวเดียวเนี่ยมันทำอะไร ได้บ้างนะครับอ่าคราว นี้อันนี้เป็นโปรแกรมภาษา python ที่เรา เรียนไปแล้วแต่ตัวเนี้ยเขียนด้วย Library ที่ื่อว่า pytorch คือตอนเนี้ยถ้าคุณอ่านคุณก็จะงงๆหน่อยนะ ครับอันนี้เป็นโปรแกรมที่ของ percept 1 ตัวที่ทำหน้าที่ในการหาความสัมพันธ์ ระหว่างไอ้คู่ลำดับ ตะกี้นะครับว่ามันเป็นอะไรกันแน่นะครับ อันนี้เดี๋ยวเราจะเรียนในตอนต่อๆไปในราย ละเอียดของตัว py ตัวนี้นะ

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

15:06 ของ mine Learning นะครับเพียงแต่ว่า เป็นโจทย์แบบง่ายๆที่ยกโจทย์แบบง่ายๆมา เพราะว่าเราเพิ่งเริ่ม เรียนก็มาดูอะไรแบบง่ายๆกันนะครับอ่ะคราว นี้โอเคเราข้ามตรง pyth ไปก่อนนะครับเรา จะย้อนกลับมาคือเราเห็นแล้วอ P ทเนี่ยมัน ทำ ได้แล้วคำถามคือเราจะสร้าง perceptron โดยใช้ python ได้ มั้ยคือไม่ใช้ Library อะไรเลยเขียนด้วย ภาษา python ที่เราเรียนไปแล้วอ่ะจะทำได้ มนะครับอ่ะเราก็มาลองดูนะ ครับเราจะมีโปรแกรมนี้นะครับเริ่มต้นเรา

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

16:41 ครับเราก็จะเรียก liy ของนายชื่อว่า a Range ตัวเนี้จะคล้ายๆกับ Range นะครับ คล้ายๆกับ Range ของ python เลยก็คือ start Stop แล้วก็ steep นะครับเหมือน กันเพราะฉะนั้นตัวเนี้ยก็จะสร้างตัวแรกนะ ครับสร้างตัวแรกคือ 0 0.1 0.2 0.3 ไล่ ไปเรื่อยๆจนกระทั่งถึง 10.0 นะครับเพราะฉะนั้นตนี้ก็จะสร้างอ่า array นะครับตรงนี้จะเรียกว่า array นะครับจะไม่เรียกว่า List เพราะ ว่า List เนี่ยคือข้อมูลมัน Mix type กันได้แต่ array เนี่ยจะเป็นข้อมูลชนิด เดียวอันนี้เป็นข้อมูลชนิดเดียวคือเป็น ข้อมูลชนิดตัว เลขเราจะเรียกว่า array

17:29 ถามว่าทำไมถึงใช้ array เพราะเวลาทำงาน แล้วเนี่ย array มันทำงานเร็วกว่านะครับ ไอ้นำพายเนี่ยเวลาคูณเมตริกซ์หรือบวก เมตริกเนี่ยมันจะเร็วกว่าลิสเป็น 10 เท่า เลยเพราะฉะนั้นก็เลยจะใช้แนำพายนะครับ เนี่ยก็จะเห็นว่าเนี่ยอันนี้นะฮะพอสร้าง ปุ๊บจะได้เป็นแบบนี้ทีนี้ต่อ มานำพาย do expand Dimension นะครับน พาย do ex Dimension ไปอีก 1 Dimension นะครับ x เนี่ย X ตัวเนี้ยคือตัวที่คือลิ นี้นะครับก็คือ array ตัวนี้นะ ครับตัวเนี้ยเป็นการเพิ่ม Dimension ข้อ มูลไปอีก 1 Dimension จาก array 1 มิติ

18:15 ก็จะกลายเป็น array 2 มิตินะครับอันนี้ array 1 มิติถูกมั้ยฮะ array 1 มิติ อันนี้ก็คือ array 2 มิติเพิ่ม Dimension เป็น 2 มิตินะครับก็ คือ 0 นะ 0 เนี่ยตอนนี้มีตัวเดียวอยู่ 0.1 แต่ว่ามันเป็นอยู่ในอเรอีกอรยนึงซ้อนกัน อยู่เป็น 2 มิตินะครับถามว่าทำไมต้องทำ แบบนี้เพราะว่าเดี๋ยวเราจะเอาค่า Y ค่า Y ที่เราสร้างขึ้นมาเนี่ยมาปะเข้าไปตรงของ แต่ละอันเพราะเราต้องการให้มันเป็นคู่ ลำดับพอเราต้องการเป็นคู่ลำดับปุ๊บเนี่ย เราก็เลยต้องการ 2 มิติ นะครับอ่ะถัดมานะ

19:02 ครับอันนี้เราจะ Random ค่าน้อยมานะครับ เราจะ Random ข่าง น้อยก็คือโดย Random เนี่ยอันนี้ก็คือ Random เท่ากับจำนวนของไอ้ x เนี่ยนะ ครับเนี่ย x. shap เนี่ยก็คือ Random เท่ากับจำนวนของ x. shap คำสั่งเชฟเนี่ยเป็นคำสั่งที่ คล้ายๆเลนส์น่ะนะครับหาขนาดหาขนาดของอ่า rax เพราะฉะนั้นมันจะ Random อันนี้ก็ คือข้อมูลจะมีอ่า 100 ตัวใช่มอันนี้ก็จะ Random มาได้ 100 ตัวเสร็จแล้วไอ้ Y เนี่ยนะครับ Y เนี่ยก็

19:50 เอาตัวสมการตัวเนี้ยมาบวกกับ No นะครับที นี้ x ตรงเนี้ยมันไม่ใช่ไอ้อะไร อ่ะมันไม่ใช่เป็นตัวแปรเดี่ยวนะครับ X ตัวเนี้ยมันเป็นข้อมูลของอรยแล้วเพราะ ฉะนั้นตัวเนี้ยคือเอา 5 เนี่ยไปคูณกับ ทั้งอรยเลยแล้วบวกกับ 10 นะครับเนี่ยอัน นี้เพราะฉะนั้นออกมาเนี่ยตรงนี้จะได้ array ออกมาเป็น array ของเหมือนตัว เนี้ยก็ 0 * 5 ก็ได้ 0 0.1 * 5 ก็ ได้ 0.5 นะครับแล้วก็ไปบวกกับ 10 นะครับบวกกับ 10 เพราะฉะนั้น 10 ตัวเนี้ย ก็จะบวกกับทุก Element ของ

20:35 array แล้วก็บวกกับ No เพื่อให้มันข้อ มูลเป็นสวิงนะครับไม่งั้นมันจะถ้าเราไม่ บวกกับนอยเนี่ยข้อมูลที่เจนได้เนี่ยมันจะ เป็นเส้นตรงนะครับมันก็จะรู้สึกว่าเอ๊ะ ข้อมูล มันมันเห็นอะไร อ่ะเห็นแพทเทิร์นชัดเจนเกินไปอะไรประมาณ เนี้ยเราก็จะได้ Y มาตัวเพราะฉะนั้น Y เนี่ยก็จะเป็นอะไร 1 มิตินะครับอร 1 มิติ ที่เป็นค่าที่สร้างได้จากสมการ 5x + 10 แล้วเราก็เอาค่า Y มาต่อกับ x นะครับ ต่อกับ x อันนี้ก็คือเอามาพให้ดูก็ได้ เป็นอย่างนี้ทีนี้ถ้าเราอยากรู้ว่าไอ้ตัว

21:21 Point เนี่ยที่มันรีเทิร์นเนี่ยที่ตัว เนี้ย Point ที่เป็นผลลัพธ์ของการ ทำงานตรงเนี้ยที่เอา 2 ตัวมาต่อกันหน้าตา เป็นไงเราสามารถจะใช้ตรงเมารันได้นะครับ Point คลน 5 ก็คือเอาเฉพาะ 5 ตัวแรกนะ ครับก็จะได้แบบนี้เห็นมยฮะได้แบบนี้เป็น คู่ลำดับ x กับ Y นะครับเพราะฉะนั้นผล ลัพธ์ของโปรแกรมตรงเนี้ยคือคู่ลำดับของ x กับ Y ทีนี้โอเคเราได้ข้อมูลแล้วะนะครับเรา ได้เราได้ข้อข้อมูละแล้วเรารู้คำตอบะ เพราะว่าตะกี้เราเป็นคนสร้างขึ้นมาเองคำ ตอบเนี่ยเรา ต้องการ 2 คำตอบคำตอบแรกคือ 5 คำตอบที่ 2

22:10 คือ 10 นะครับสมมุติว่า y = a AX + B เราต้องการบอกว่า a = 5 B = 10 นะ ครับแต่ตรงเนี้ยไม่ได้เป็น input ของ โปรแกรมนะ input ของโปรแกรมเนี่ยคือ Point เฉยๆ Point ที่สร้างจากสมการนี้เพราะ ฉะนั้นโปรแกรมเนี่ยเนี่ยจะไม่รู้ว่า 5 กับ 10 โปรแกรมเนี่ยจะได้ลิส์ของคู่ลำดับ ตรงเนี้ออกไป 100 จุดนะครับทีนี้ทำยังไง วิธี การวิธีการตรงเนี้ยจะมีคณิศาสตร์แนนหนึง เรียกว่า regression นะครับก็ถ้าเรียนสาย คณิตศาสตร์เนี่ยเดี๋ยวคงได้เรียนนะครับ regression regression

22:55 เนี่ยมันก็คือการหาเส้น มันจะมีถ้าเป็นียนะครับถ้าเป็น LINE regress เนี่ยคือเป็นการหาเส้นตรงเส้น นึงที่มีระยะห่างจากจุดทุกจุดนะครับมี ระยะห่างจากจุดทุกจุด เนี่ยน้อยที่ สุดจะเรียกว่าเป็น Best Fit นะครับจะ เรียกว่าเป็น Best Fit ก็คือหาทางขยับ เส้นตรงเนี้ยให้มันใกล้กับตรงเนี้ยก็คือ ตรงเนี้ยตรงนี้คือ 1 ค่านะครับ 1 จุดเรา ต้องหาแบบเนี้ยทุกๆจุดว่าแล้วมาบวกกันว่า อันไหนน้อยที่ สุดเราจะเรียกตรงนี้ว่าเป็น อ่า Error นะครับเนี่ย residue Error

23:44 บวกกันก็ sum of residue Error ก็ ได้ทีนี้ถ้าเราใช้ residue Error โดยตรง เนี่ยมันจะมีปัญหาเพราะว่าตรงเนี้ยค่าจะ เป็นบวกถูกมั้ยฮะ แต่ตรงเนี้ยค่ามันจะเป็น ลบมันทำให้ค่าของความห่างเนี่ยเกิดการหัก ล้าง กันซึ่งเป็นสิ่งที่เราไม่ต้องการเรา ต้องการให้มันเป็นบวก หมดทีนี้ถ้าเราต้องการให้เป็นบวกหมดเราทำ ไงครับอ่าให้คิดนิด นึงถ้าเราต้องการให้เป็นบวกหมด

24:30 เนี่ยเราจะมี 2 วิธีวิธีแรกคือใช้ Absolute วิธี 2 คือใช้ยก กำลังนะครับเพราะฉะนั้นก็เลยเกิดเป็น 2 วิธีวิธีแรกเรียกว่า sum of Absolute Error นะครับหรือเรียกสั้นๆว่า Sae คือ sum of Absolute Error ก็เขียนเป็นสูตรได้แบบ นี้ก็คืออันเนี้ยคือข้อมูลตั้งแต่จุดแรก จนกระทั่งถึงจุดสุดท้ายคือ n กรนี้ของเรา มี 100 จุดใช่มย I ก็คือเท่ากับ 1-1 แล้วก็หาค่า Absolute ของ Yi นะครับ Yi Yi ก็คือข้อมูลจริงนะครับ ที่เป็น input จริงส่วน yh ตัวเนี้ยตัว

25:18 นี้เรียกว่า yh นะครับ yh แต่บางสูตร เนี่ยจะใช้ YD บางเหบางทีจะเห็น YD บางทีทีจะเป็น yh อะไรเงี้ยแล้วแต่นะครับหรืออาจจะเป็นอะไร ก็แล้วแต่ตัวนี้คือเป็นค่าเป้าหมายค่า เป้าหมายตัวเนี้ยจะเป็นค่าที่ได้จากการ คำนวณคำนวณอะไรก็เอาไอ้สูตรตะกี้แหละนะ ครับ Y = 5x + 10 อ่ะมาคำนวณแล้วก็ เอาค่า x ใส่เข้าไปอันนี้คือค่าเป้าหมาย เพราะฉะนั้นเนี่ยมันก็จะมีค่าเท่ากับตรง นี้นะครับมีค่าเท่ากับตรงเนี้ยเพราะตงนี้ คือค่าเป้าหมายถูกมั้ย เนี่ยเนี่ย YD หรือ Y H นะครับค่าเป้า หมายตงนี้คือค่า Y ที่เป็น input เพราะ

26:05 ฉะนั้นพอเอามาลบกันและใส่ Absolute มันก็จะเป็นความห่างของค่าเป้า หมายกับค่าจริงที่เป็น input นะครับเพราะ ฉะนั้นเนี่ยก็เอามาบวกกันนะครับอันนี้ เรียกว่า Su App Absolute Error อีก วิธีนึงที่ทำให้ เป็นบวกหมดคือจับมันยกกำลัง 2 ไปเลยนะ ครับเพราะว่าข้อมูลอะไรก็ตามที่ยกกำลัง 2 เนี่ยถึงแม้จะเป็นค่าลบมันก็จะกลายเป็น บวกอ่ะคราวนี้พอเรารู้วิธีะเราลองเอามา เขียนเป็นโปรแกรมดูนะครับผมเขียนมา 2 อัน เลยนะ

26:51 ครับสมการแรกเนี่ยชื่อว่า comp Sae for LINE given Point อ่านะครับทีนี้ตรง เนี้ยให้อะไรมานะครับให้ค่า a ก็คือค่า เป้าหมายที่เป็น a กับ B ออกมานะครับเสีย สลับนิดนึงเป็น b กับ a จะจะสลับที่ก็ได้ นะครับเป็น a b ส่วน Point เนี่ย Point เนี่ยอ่าจะเป็นตัวแปรของ array คู่ ลำดับนะ ครับเราก็เริ่มต้นนะครับก็เซต error เพราะว่า Error เนี่ยเป็นค่าที่จะ นับสะสมเราก็จะเริ่มจาก 0 เราก็ว Loop นะวทุกจุดนะครับก็บอก for

27:39 I in Range 0 อ 0 ตรงนี้ไม่มีก็ได้นะ จนถึงเลนส์ของ Point ก็คือมีทั้งหมด 100 จุดมันก็จะทำ 100 ครั้งเราก็ดึงค่า x ออกมานะครับจำ ได้มยฮะมันเป็นคู่ข้างในของเนี่ยมันจะ เป็นคู่ลำดับคู่ลำดับคู่ลำดับเพราะฉะนั้น เราต้องเอาตัวนี้อมาก่อนนะครับ I คือตัว ที่เท่าไหร่เช่นูปแรกเนี่ย I ก็เป็น 0 แล้วเป็น 1 เป็น 2 ไอ้ตัวที่ 2 เนี่ยก็ คือเป็น index ของข้างในนะครับคือ index ตัวที่ 0 ก็คือ x นะครับ index ตัวที่ 2 ก็คือ Y นะครับ

28:26 Y ก็คือตัวที่ 2 คือเป็น 1 นะครับเเพราะ ฉะนั้นอันนี้อันนี้ก็คืออรย 2 มิติผมต้อง บอกว่าเวลาที่เราทำงานกับ Machine Learning เนี่ยอ่าความคุ้นเคยกับ array เนี่ยเป็นเรื่องสำคัญนะครับเพราะฉะนั้น ต้องนึกให้ออกว่าตรงเนี้ยเป็นการล้วงเข้า ไปเอาค่า x ที่เป็นคู่ลำดับแต่ละตัวนะ ครับของ array ของคู่ลำดับออก มาเสร็จแล้วเราก็เอาค่า X ตัวเนี้ย เอาค่า x ไปใส่สูตรเอาค่า x ไปใส่สูตร เพราะว่าอันนี้คือค่าเป้าหมาย y คือค่า จริงเห็นมตามสูตรเป๊ะ เลยค่าจริงลบค่าเป้าหมายแล้วใส่ Absolute

29:15 แล้ววนูปบวกไปเรื่อยๆสุดท้าย เอาจำนวนของจุดเนี่ยมาหารนะครับก็จะได้ อ่า ค่าอะไรอ่ะเรียกว่าค่า Error เฉลี่ยของ จุดค่า Error เฉลี่ยของจุดก็คือเอาตัวนี้ มา หารอ่าทีนี้อีกอันนึงก็เหมือนกันเพียงแต่ ว่าแทนที่เราจะใช้ Absolute เราจะเอาสูตร ไอ้ตัวเนี้ยมายกกำลัง 2 เพื่อให้มันกลาย เป็นบวกนะครับตัวนี้ก็เป็น compute of sum Of Square นะครับเราได้มา 2 โปรแกรมะ 2 ฟังก์ชันะนะ

30:03 ครับที่เราเอาไว้ใช้ ได้ทีนี้พอเราได้มาปุ๊บเราทำไงต่อนะครับ วิธีการเจะเป็นอย่างนี้ ครับเริ่มต้น เนี่ยตอนเนี้ยเราไม่รู้ว่า x เป็นอะไร เอ้ยมันขอโทษไม่รู้ว่า a เป็นอะไรไม่รู้ ว่า B เป็นอะไรเราไม่รู้เลยเพราะฉะนั้น เริ่มต้นเนี่ยเราจะสุ่มค่า x ก็คือเอาค่า อะไรก็ได้มั่วๆไป a กับ b a กับ B แล้ว ไม่รู้ว่า a กับ B เป็นอะไรแล้วก็สุ่มเอา นะครับแล้วก็เอา a กับ B เนี่ยมาใส่ใน สมการนะครับมาใส่ใน สมการเพราะไอ้ฟังก์ชันเนี้ยตรงเนี้ยก็คือ เป็นฟังก์ชันที่หานะแต่ว่าแปลว่า a กับ B

30:51 เนี่ยถ้า a กับ B เนี่ยเป็น a กับ B ที่ ถูกต้องมันจะได้ค่ารีเทิร์นตรงเนี้ยน้อย ที่สุดแต่แต่ถ้าเป็นค่าที่ไม่ถูกต้อง เนี่ยอ่ายกตัวอย่างเช่นสมมุติว่าเส้นมัน เป็นอย่างเงี้ยเส้นมันเฉียอย่างเงี้นะ ครับเส้นมันเฉียอย่างงี้ค่าของไอ้ suum of ทุกจุดเนี่ยมันก็จะไม่ใช่ค่าที่น้อย ที่สุดนะครับคราวนี้วิธีการก็คือเราสุ่ม ก่อนเสร็จแล้วเอาค่า X เนี่ยมาคำนวณนะ ครับเพื่อหาค่า YD ของทุกจุดเราเอาค่า YD ของทุกจุดเนี่ยมาเทียบกับค่า Y แล้วก็หา SA E หรือ SS แล้วแต่เราจะ เลือกสุดท้ายข้อ 4 คือเอา Error ตรงเนี้ย ที่ได้เนี่ยมาปรับ a กับ

31:37 B ปรับไปเรื่อยๆแล้วก็กลับไปทำข้อ 2 ว Loop อ่าตามทันมครับก็คือเราเอาตแรกเรา สุ่มก่อนเนื่องจากเราไม่รู้ a กับ B เรา ก็สุ่มค่าอะไรมั่วๆไปอัน นึงเราก็ลองมาคำนวณคำนวณเสร็จหาระยะ ของค่าเป้าหมายกับ จุดตัวที่ Best Fit เนี่ยก็คือตัวที่ทำ ให้ suum of ผลต่างของค่าเป้าหมายกับทุก จุดเนี่ยมีค่าน้อยที่ สุดนะครับอันนี้คือ Best Fit เพราะ ฉะนั้นเนื่องจากว่าตอนแรกเราเดาเอาเนี่ย เราก็คงไม่โชคดีที่จะเดาแล้วถูกเพราะ

32:24 ฉะนั้นเนี่ยมันอาจจะไม่ถูกนะครับ ทีนี้วิธีการเนี่ยความสำคัญจะอยู่ที่ข้อ ที่ 4 ก็คือเอาค่า Error ที่ได้เนี่ยมา ปรับค่า AB ให้ถูกต้องมากขึ้นซึ่งเดี๋ยว เราจะบอกว่าการปรับค่า AB ให้ถูกต้องมาก ขึ้นเนี่ยทำยังไงนะ ครับทีนี้ไอ้ค่าของตัวเนี้ยนะครับค่าที่ รีเทิร์นตเนี้ย Total Error ลบด้วยจำนวน จุดเนี่ยตอนนี้เราจะตั้งชื่อมาแล้วเราจะ ตั้งชื่อว่า loss ค่านี้คือค่า loss แล้วก็ต่อไป เนี่ยถ้ายังถ้าเรายังใช้งาน Deep Learning อยู่เราจะได้ยินคำเนี้ย

33:11 loss ให้ทำจนกระทั่งค่า Los ต่ำสุดหรือ Los ลดลงจนถึงจุดที่ยอมรับ ได้อ่ะคราวนี้ผมก็จะลองเอามาเขียนเป็น โปรแกรมนะครับคราวนี้ผมเริ่มต้นเนี่ยให้ a เป็น 10 a เป็น 20 B เป็น 30 ก็แล้วกัน นะครับเพราะเรามั่วๆเอาอันนี้ก็เป็นอ่า ตัวที่สร้างจุดนะครับคือก็มาจากโปรแกรม ก่อนหน้าเนี้ยนะครับก็งไม่ต้องอธิบายซ้ำ นะฮะฟังก์ชันนี้ก็มาจากไอ้ฟังก์ชันคำนวณ หา S AE ฟังก์ชันนะครับก่อนหน้านี้ เหมือนกันอ่าทีนี้ก็มาตัวโปรแกรม ละโปรแกรมเริ่มต้นเนี่ยผมก็ต้องสร้าง Point ก่อนอ่าตัวนี้ก็ generate Point

33:59 ข้อมูลจะถูกเก็บไว้ในตัวแปร Point เพราะ ฉะนั้นในตัวแในตัวแปร Point เนี่ยจะเป็น ข้อมูล array ของคู่ ลำดับอ่าแล้วผมก็ตั้งอ่า a เป็น 20 B เป็น 30 อ่าทีนี้อีกตัวนึง steep size อ่า ตรงนี้เดี๋ยวจะอธิบายว่า steep siz คือ อะไร steep size เนี่ยก็คือเนื่องจากว่า โปรแกรมเมันต้องวว Loop นะครับทีนี้ว Loop แล้วเอาค่ามา ปรับทีนี้เวลาปรับเนี่ยเราจะปรับยังไงดี นะครับตอนแรกผมก็เลยคิดว่าเ้าก็ลองเอามา

34:45 ลบดูแล้วกันนะครับลบลงทีละ 0.1 อ่าไป เรื่อยๆอลองทำสัก 50 รอบนะเนี่ยผมก็ใช้ วิธีนี้ก็คือือบอกว่าตอนแรกให้ก็ให้เท่า กับค่าเริ่มต้นตัวเนี้ยเพราะฉะนั้น Base E เอ้ย Base a กับ Base B เนี่ยก็จะ เท่ากับ 20 กับ 30 แล้วผมก็คำนวณนะ ครับเสร็จแล้วพอคำนวณปุ๊บเนี่ยผมก็เอามา ปรับค่าโดยเอา b a เนี่ยตรงเนี้ยมาลบ ด้วย i คูณสป size นะครับลบด้วย i คูณสป size ก็คือลด ค่า a กับค่า B ลงทีละนิดทีละนิดนะครับ

35:31 เราลดค่า a ทีละ 0.1 ค่า BT 0.1 แล้วก็ คำนวณทีนี้ผมก็เพราะฉะนั้นเนี่ยโปรแกรม เนี่ยมันก็จะวน Loop นะฮะวน Loop เอาค่า a ลดลงทีละ 0.1 ก็คือจาก 20 เอเดี๋ยวเท่า ไหร่นะเริ่มต้นอ่า 20 กับ 30 20 10 ลด ลงทีละ 0.1 ก็เป็น 19.9 b จาก 30 ก็เป็น 29.9 เสร็จแล้วก็มาคำนวณใส่สูตรนะครับ ใส่สูตรก็จะได้เป็น Sae ของค่านี้ของค่า เนี้ยค่า

36:16 ที่คำนวณได้ตรงเนี้ยนะครับก็คือ 19.9 กับ 29.9 คำนวณตามสูตรแล้วก็มาเปรียบเทียบ ว่า มันมีค่าน้อยกว่ามมตัวนี้ไหมถ้ามีค่าน้อย กว่ามมก็เก็บเอาไว้ถ้ามีค่าไม่มากกว่ามก็ ไม่เก็บก็คือโดยรวมตรงเนี้ยผมก็จะไล่ไป เรื่อยๆกละลงทีละ 0.1 0.1 0.1 แล้วก็คำนวณนะครับแล้วก็ดูว่าณจุด ที่ a และ b ตรงไหนนะครับณจุดที่ a และ b ตรงไหน ทำให้กลาคำนวณตรงเนี้ยแล้วเกิดค่าต่ำสุด

37:02 เราเอาค่านั้นมาเก็บไว้เราลองทำสักประมาณ 50 รอบนะก็คือลดทีละ 0.1 เนี่ย 50 ครั้ง นะ ครับเสร็จแล้วก็ปิ้นออกมานะครับว่า B slope เพราะว่าค่า a เป็นค่า slope ถูก มยค่า B เนี่เป็นค่า Y อร์ซก็จะได้ว่า B slope เท่ากับ 4.6 b y interp เท่ากับ 14.7 นะตรงมอ่า a เนี่ยใกล้เคียงนะแต่ B เนี่ย ไม่ไม่ตรงนะครับเพราะ B เป็น 10 ถูก มยแล้วก็ค่า sum of Absolute Error ต่ำสุดเนี่ยเป็น

37:50 3.15 นะก็คือเท่าที่ตรงเนี้ยจะว Loop อีกก็ได้นะจะวน Loop หาอีกก็ได้แล้วก็ หรือว่าจะวน 2 ูปก็ไดู้ปนึงูปนึงปรับค่า a อีกูปนึงปรับค่า B นะโปรแกรมก็จะรันนาน ขึ้นแล้วก็อาจจะได้ข้อมูลที่ถูกต้องมาก ขึ้นอันนี้ก็เป็นวิธีแบบบ้านๆนะ ครับอ่าแต่ทีนี้ถามว่าเอ๊ะแล้วมัน AI ตรง ไหนเนี่ยจะเห็นว่าพอพตกราฟแล้วก็ไม่ตรง ยังไม่ยังไม่ Best Fit นะครับ อ่ะคราวนี้ เราจะเริ่มเอาความฉลาดมา ใส่นะครับเราจะเริ่มเอาความฉลาดมา

38:39 ใส่เราก็จะขอนำหลักการทางคณิตศามาอันนึง นะ ครับก็คือเรื่องของ เเยนพูดถึงคำว่า gradient เนี่ยเราอาจจะ งงๆนะครับแต่ถ้าบอกว่า gradient คืออะไร นะครับเเนคือความเปลี่ยนแปลงของ Y เมื่อ เทียบกับความเปลี่ยนแปลงของ x อ่าอันนี้ เริ่มคุ้นๆะมันก็คือ dy / DX อ่ะก็คือฟ นะครับฟ Y เทียบกับ x เพราะฉะนั้นเเนเนี่ยก็คือิ Y เทกับ x อ่านี้คือแั ะถามว่าเอามาใช้ยังไงนะครับเอามาใช้อย่าง

39:24 นี้ อ่าลองดูรูปนะครับลองดูรูปเนี้ยไอ้ที่มัน วิ่งไปวิ่งมาตรงเนี้ยวิ่งไปวิ่งมาที่เป็น a เนี่ยตรงนี้คือค่าความชันของแต่ละจุด แต่ละจุดแต่ละจุดนะครับค่าความชันของแต่ ละจุดแต่ละ จุดเพราะฉะนั้นเราสามารถหาค่าความชันได้ เราเขียนโปรแกรมหาค่าความชันก็ได้นะครับ เพราะว่าเอา Y มาหาร x เนี่ยก็เป็นความ ชันะนะครับฟ by เทียบ x หรือเราจะใช้คนิสาก็ได้นะครับอย่างดิฟ Y เทียบ x ของ x ^ 2 ก็ได้เป็น 2x

40:10 อะไรแบบเนี้ยก็ได้นะครับก็ทำได้ทั้ง 2 อย่างจะเขียนสมการเขียนโปรแกรมหรือว่าจะ ใช้ความรู้แคลคูลัสมาช่วยก็ได้นะครับแต่ อันเนี้ยผมจะเลือกใช้ความรู้แคลคูลัสมา ช่วยนะครับ ที นี้เนื่องจาก Los ฟังก์ชันเนี่ย Los ฟังก์ชันเนี่ยนะ ครับ Los ฟังก์ชันก็ คือ sum of Square Error แล้วก็ sum of Absolute eror ตรงเมันเป็นฟังก์ชัน ถูกมยครับมันเป็น ฟังก์ชันอะไรก็ตามที่เป็นฟังก์ชันเนี่ย มันสามารถิฟ ได้ถูกต้องมย

40:57 อะไรก็ตามที่เป็นฟังก์ชันเนี่ยต้องมันจะ สามาถฟ ได้เพราะฉะนั้นถ้าเราหาค่าเเนหรือหาค่าฟ เนี่ยของฟังก์ชัน 2 อันเราจะได้ อะไรอย่างที่บอกนะมันคือความเปลี่ยนแปลง นะครับเราจะได้ความเปลี่ยนแปลง ของเส้นทีนี้ระหว่าง 2 อันเนี้ยนะครับ sum of Absolute Error กับ sum of Square Error เนี่ยอ่านักคอมพิวเตอร์เนี่ยเเลือกใช้ sum of Square Error เพราะว่า sum of Square Error

41:42 เนี่ยเราคงจำได้ใช่มว่า of Square Error เนี่ยมันคือสมการยกกำลัง 2 สมการที่เป็น ยกกำลัง 2 เนี่ยก็คือสมการ พาราโบลาสมการพาราโบลาเนี่ยเป็นสมการต่อ เนื่อง นะครับแล้วก็เป็นสมการที่ดิฟได้นะครับ สมการพาราโบลาดิฟแล้วก็จะได้เป็นไอ้ตัว ที่เป็น x ^ 2 ก็ได้เป็น 2x ใช่ม x ^ 2 ก็ได้ 2x ตัวหลังก็ตัด ทิ้งไปหรือเป็นค่าคงที่นะ ครับที นี้เนี่ยจากสมการ Su f Square Error

42:29 ซึ่งเป็นตัวนี้นะ ครับซึ่งเป็น 100 ฟังก์ชันของเราเนี่ยนะ ครับคราวนี้เราจะหาค่าเเยนหรือความชันของ มันในแต่ละจุดแต่ละจุดนะครับก็คือทำคล้าย ๆแบบเนี้ยหาค่าความชันในแต่ละจุดนะ ครับพอเราหาความชันเราก็ต้องดิฟมันนะครับ เนี่ยเราก็เอาค่ามาแทนนะครับอันนี้คือ เฉพาะกรณีนี้นะครับเพราะว่ากรณีเนี้ยมัน คือ AX + B เตัวนี้คือค่า Y ค่า Y เป้า หมายลบด้วยอ่อไม่ใช่อันนี้คือค่า y ของ input นะครับอันนี้คือค่า Y เป้าหมาย ซึ่งค่า Y เป้าหมายเนี่ยได้จากสมการ Y =

43:16 AX + B แล้วก็เอา AX + B มาแทนค่านะ ครับแล้วก็ทั้งหมดยกกำลัง 2 นะครับ เสร็จแล้วพอเราจะหาิฟนะครับตรงนี้เราต้อง ทำ 2 ครั้งเพราะว่าเราจะทำสิ่งที่เรียก ว่า paral ิ partial ิก็คือดิฟเทียบกับ ตัวแปรทีละตัวโดยสมการแรกเนี่ยคือจะดิฟ เทียบกับตัวแปร a นะครับพอดิฟเทียบกับตัว แปร a เนี่ยตัวแปร B เราไม่ไม่สนใจเราก็ ตัดมันทิ้งนะครับมันก็จะได้เท่ากับตรงนี้ เนี่ย 2 2 นะ ครับ 2 คูณกับ Y -บ AX +

44:07 B ถูกมเพราะว่า 2 ตัวเนี้ยดิฟแล้วก็เอา มา 2 มาอยู่ข้างหน้าตรงนี้นะครับแล้ว เสร็จแล้วเราดิฟไส้มันนะครับเนื่องจากตัว เนี้ยมันข้างมัน เป็นอ่าเป็นฟังก์ชันที่ยกกำลัง 2 ก็คือ เป็นฟังก์ชันซ้อมฟังก์ชันอีกทีนึง ฟังก์ชันข้างในคือ AX + B ฟังก์ชันข้าง นอกก็คือฟังก์ชันนี้ยกกำลัง 2 ตัวนี้คือ เป็นการดิฟตัวข้างนอกส่วนตรงเนี้ยเป็นดิฟ ไส้ดิฟไส้ก็ได้เป็น - x นะครับได้เป็น - x พอเราลบรูปปุ๊บเนี่ยก็ได้เป็น -2 นะครับแล้วก็เป็น Yi - x + B นะครับอันนี้ก็คือดิฟนะครับเป็นการดิฟ

44:55 เทียบ A อีกอันนึงเนี่ยนะครับดิฟเทียบ B นะครับ ดิฟเทียบ B เนี่ยก็ทำเหมือนกันนะครับตอน ดิฟเนี่ยทำเหมือน กันแต่ว่าไอ้พจน์หลังเนี่ยนะครับพจน์หลัง เนี่ยพนหลังของการดิฟตัวแรกเนื่องจากเป็น การดิฟเทียบ a นะครับเราตัดค่า B ออกไป แต่พอการดิฟอันหลังเนี่ยเป็นการดิฟเทียบ B เราก็ตัดตรงนี้ออกไปนะครับตัดตงนี้ออกไป ก็เลยเหลือแค่ B ตัวเดียวนะครับแล้วข้าง หน้าเป็นลบก็เลยได้ -1 นะ ครับเพราะฉะนั้นเพื่อลดรูปแล้วเนี่ยนะ ครับอ่า sum of Square Error อ่า di

45:41 เนี่ยนะ ครับก็จะได้เท่ากับ -2 นะ Yi - AX + B นะครับเพราะะนั้นตอนเนี้เราได้ 2 สมการ แล้วนะที่เป็นค่าดิฟหรือเป็นค่า เเยนนะครับเป็นค่าเเยน ของอ่าของ x เอ้ยของ A ของ A แล้วของ B ทีนี้ไอ้ค่าที่คำนวณเนี่ยมันเป็นค่า การคำนวณค่าความชันณ จุดจุดเดียวก็คือ้าจุดที่ a กับ B เป็น ค่านั้นค่านี้

46:27 ก็คือจุดจุด เดียวแต่สิ่งที่เราต้องการเนี่ยเรา ต้องการหาจุดตำสุดของสมการอย่างเช่น พาราโบลาจุดตสุดก็คือไอตรงที่มันห้อยลงมา น้อยที่สุดอ่ะอันนั้นคือจุดต่ำสุดทีนี้ทำ ไงถึงจะหาจุดต่ำสุด ได้จริงๆเราก็รู้นะจุดต่ำสุดถ้าเป็น พาราโบลาเนี่ยก็คือจุดที่ความชันเป็น 0 น่ะแต่ปัญหาคือตอนเนี้ยเรามี Data 100 ตัวเรามี Data 100 ตัวก็คือค่าเเยนนะครับค่าเกรเดียนของแต่ ละจุดแต่ละจุดแต่ละ จุดเราไม่รู้ว่าจุด

47:15 ไหนเป็นจุดต่ำ สุดนะครับเราไม่รู้ว่าจุดไหนเป็นจุดต่ำ สุดจริงๆในโจทย์เนี้ยเราจะใช้ World Loop ก็ได้นะครับเราใช้ vol ก็ ได้ก็คือเอาทั้ง 100 จุดเนี่ยนะครับเอา ทั้ง 100 จุดเนี่ยมาใส่สูตรแล้วก็ดูว่า ได้ค่าไอ้ตรงไหนมีค่าต่ำสุดก็ได้เหมือน กันคล้ายๆกับโปรแกรมก่อนหน้า นี้เพราะว่าจุดมันน้อยแต่ถ้าไม่มีสักล้าน จุด หรอโปรแกรมมันก็จะรันเป็นล้าน Loop เลยซึ่งเค้าก็จะบอกว่าในทางโปรแกรมมิ่ง

48:02 เนี่ยมันไม่ค่อย ฉลาดที่จะต้องเอาข้อมูลทั้งหมดมาคำนวณ เพื่อหาว่าจุดเเดนตรงไหนเป็นจุดต่ำ สุดมันไม่ค่อย ฉลาดและนอกเหนือจากนั้นนะครับบางครั้ง เนี่ยมันไม่ได้มีแค่ a กับ B มันอาจจะมี ตัว X1 x2 จนถึง X1 ก็ได้คือมีมเตอร์ 100 ตัวเพราะฉะนั้นเนี่ยจำนวน Loop ก็จะมาก ขึ้นไป อีกนะครับเก็เลยบอกว่าไม่เอาวิธีนี้ไม่ เอาทีนี้ต่อมาคืออ่าวิธีเอาจุดทั้งหมดมา หาค่าความชันหรือาค่าเกรเดียนเพื่อดูว่า ความชันตรงไหนน้อยที่สุดเนี่ยไม่เอาละทำ

48:48 ไงเขาก็ใช้อีกวิธีนึงนะครับวิธีเนี้ย เรียกว่า gradient de Sense เดนเซนเนี่ยให้นึกไปนะครับว่าสมมุติ ว่ามีใครักคนจับคุณไปไว้ตรงเขาบนภูเขาที่ ใดที่หนึ่งของเขาลูก หนึเขาลูกเนี้ยข้างล่างเนี่ยต้นไม้ขึ้น เต็มคือไม่ใช่หุบเขาที่มองเห็นปุ๊บรู้เลย ว่าตรงไหนเป็นก้นเหวมีต้นไม้ขึ้นเต็ม เลยทีนี้เขาบอกว่าให้คุณหาวิธีให้ลงมาจน

49:37 ถึงก้นเหวคือจุดต่ำ สุดคุณจะทำไง ครับเขาใช้วิธีนี้นะครับอ่ะสมมุติว่าอนี้ เป็นเหวนะฮะเป็น เหวก็ลองดูว่า a จากจุดที่เราอยู่เนี่ย ควรจะเดินไปทางไหนดี 1 ก็คือเดินแล้ว เนี่ยมันต้องทิศทาง ลงนะครับทิศทางลงและทิศทางลงตรงนั้นน่ะ เป็นทิศทางที่จะลงได้เร็วที่สุด ด้วยนะครับเหมือนอย่างเงี้ยเส้นตรงเนี้ย ถ้าลงตามแนวเนี้ยเป็นทิศทางลงแล้วก็ลงได้ เร็วที่สุดเพื่อหาจุดต่ำสุดนะ ครับอันเนี้ยเป็นวิธีการที่เราจะใช้นะ

50:24 ครับวิธีการนี้เราเราจะเรียกว่า gradient des Sense des Sense เนี่ยคำแปลคือ ไล่ตาม des Sense คือไล่ตามเพราะฉะนั้น gradient des Sense ก็คือไล่ตามความ ชันเพราะฉะนั้นเนี่ยหลักการก็คือว่าไม่ ว่าเราจะอยู่จุดไหนเราจะหาความชันของจุด นั้นนะครับเราหาความชันของจุด นั้นเพื่อหาทิศทางนะครับเพื่อเพื่อหาทิศ ทางว่าจะลงไปทางไหนให้เร็วที่สุดเนี่ยเรา ต้องการแค่นั้นว่าก้าวต่อไปจะก้าวไปทาง ไหนแล้วพอก้าวต่อไปปุ๊บแล้วหาความชันใหม่ แล้วก็หาว่าก้าวต่อไปจะก้าวไปทากไหนอีกก็

51:11 หาความชันอีกแล้วก็หาดูว่าก้าวต่อไกลไปจะ ก้าวไว้ทางไหนอีกทำแบบนี้ไปเรื่อยๆจน กระทั่งเราไปถึงจุดต่ำสุดนะ ครับทีนี้ถามว่าใช้วิธีการนี้ศาตได้มั้ย ในการหาความชันเนี่ยคำตอบคือได้นะครับ เนี่ยได้อย่างเงี้ย a กับ B เนี่ยแต่นี้คือมีแค่ตัวแปร 2 ตัวมันค่อนข้างยาก อ่ะถ้าตัวแปร 10 ตัวเนี่ยโอ้โหสมการเนี่ย ขึ้นมาพรึบเลยนะ ครับเนี่ยเค้าก็เลยใช้ GR ก็คือไล่ตามความชันวิธีการคืออย่าง งี้คือตอนแรกให้สมมุติขึ้นมาจุดนึงอยู่

51:57 ตรงไหนก็ได้นะครับไม่สนใจอยู่ตรงไหนก็ ได้สุ่มมาเลยจุดไหนก็ได้บนข้อมูล 1 ตัว เสร็จแล้วก็ดูว่าจุดเนี้ยมีความชันเท่า ไหร่แล้วจะลงทางทิศ ไหนจะลงทางทิศไหนถึงจะมีถึงจะทำให้ตัวเอง เนี่ยลงได้เร็วที่สุดนะครับ เนี่ยพอมาถึงอีกจุดนึงก็คำนวณใหม่แล้วก็ ลงเป็นเลือยจนกระทั่งถึงจุดตรงเนี้นะครับ มันจะได้ว่าจุดเคือจุดต่ำสุดเพราะว่าถ้า เคลื่อนไปอีกเนี่ยค่า loss มันจะเพิ่ม ขึ้น แล้วะนะครับอันนี้เราเรียกว่า Gran

52:43 Essence นะ ครับอันนี้เป็นรูปของ Gran Essence ที่ สมการ 2 ตัวแปรมันจะมีลักษณะเป็นผืน ผ้าทีนี้วิธีการเนี่ยเขาจะเนื่องจากมี 2 ตัวแปรใช่มั้ยเจะดิฟดิฟทีเดีตัวแปรเช่นมี a กับ B ก็ดิฟ a ได้ทิศทางนึงดิฟ B ได้ ทิศทางนึงแล้วก็ a กับ B เนี่ยมาร่วมกัน มันก็จะได้เป็นเวกเตอร์นะครับเวกเตอร์ที่ จะเดิน ไปแล้วก็ค่อยๆเดินไปเรื่อยๆๆทีละจุดค่อยๆ ไต่ลงตามความชันว่าตรงไหนลงแล้วชันมากสุด เพื่อจะได้ไปถึงจุดต่ำสุดเร็วที่สุดนะ ครับวิธีเนี้ยมีข้อดีตรงที่ว่าเราไม่ จำเป็นต้องรู้ภาพรวมทั้งหมดของข้อมูลเรา

53:29 เริ่มที่จุดๆนึงเราเริ่มที่จุดเดียวพอ แล้วเราทำงานไปเรื่อยๆนะครับเราทำงานไป เรื่อยๆในที่สุดเราจะถึงจุดต่ำสุด เองมันจะกิน computing Power น้อยกว่านะ ครับเรื่องเนี้ยเป็นเรื่องที่ อ่าเป็นคีย์ของการเรียนครั้งเนี้ยคือ gradient des Sense คือถ้าเราเข้าใจ เรื่อง gradient des เเนี่ยแปลว่าการ เรียนครั้งเนี้ยโอเคเราใช้ได้แล้วนะครับ นะคราว นี้การเน ent ทำยังไงนะครับ 1 เราหาทิศ ทางของการเปลี่ยน แปลง 2 เราหาขนาดของการเปลี่ยนแปลงเพราะ

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

55:03 เยอะค่าดิฟมันจะได้เยอะมันก็จะมันค่าเยอะ มันมันก็จะเดินก้าวใหญ่ หน่อยแต่พอมันลงล่างๆเนี่ยค่าดิฟมันจะ น้อยลงน้อยลงเพราะความชันมันลดลงมันก็จะ เดินช้า ลงนะครับปกติมันจะเป็นอย่าง งี้อันนี้นี่คือทิศทางของการเปลี่ยนแปลง นะครับว่าทิศทางก็คือต้องลงอย่างนี้ลง อย่างงนี้ทีนี้ขนาของการเปลี่ยนแปลงนะ ครับเราไม่สามารถที่จะเอาค่าเเดนไปใช้ได้ เลยเพราะค่าเกรเดียนเนี่ยมันคือความชัน ถ้าเราเอาค่าเเดนคือความชันไปใช้ปุ๊บ เนี่ยมันอาจจะเกิดเหตุการณ์อย่างนี้นะ

55:50 ครับก็คือพอเราขยับไปอีกอันนึงปุ๊บไปอีก จุดนึงเนี่ยมันจะข้ามนะครับมันจะข้ามจุด ต่ำสุดนะ ครับเพราะฉะนั้นวิธีที่จะเอาค่าเกเดนไป ใช้เนี่ยเขาจะต้องคูณค่าค่าหนึนะครับแบบ นี้ค่าตัวนี้ที่เขียนว่าตัว Alpha เนี่ยเราเรียกว่า learning Rate นะครับซึ่งเป็นค่าค่านี้เราเรียก ว่า Hyper parameter คือค่าที่ User ปรับไม่ใช่ User ปรับสิอ่าผู้พัฒนาเป็นคน ปรับ นะครับปรับว่าจะให้มันขยับทีละเท่าไหร่ อ่ะทีนี้ผลของค่า Learning Rate เนี่ยจะ เป็นอย่างงี้ก็คือถ้าเราใช้ Learning

56:37 Rate น้อยมันก็จะไปถึงจุดต่ำสุดน้อยแต่ไปถึง จุดต่ำสุดแน่ๆแต่ถ้าเราใช้ Learning Rate เยอะมันจะเกิดการข้ามจุดต่ำสุดเนี่ยตรง นี้กระโดดแตรงนี้กระโดดมาตรงนี้กระโดดมา ตรงนี้อย่างอันนี้ Learning Rate เท่า กับ 0.03 ก็จะค่อยๆไล่ลงมาตัวนี้ 0.04 ตัวนี้ 0 1.02 ก็ข้ามนะครับอ่าตรงนี้ไม่ บอกอันนี้ไม่บอกนะครับอ่าอันนี้เป็นรูป อนิชของข้างบนนะ ครับเพราะฉะนั้นค่าของ Learning Rate เนี่ยเป็นค่าที่มีความสำคัญเพราะว่าถ้า เราปรับผิดเนี่ยมันจะไม่มีทางจจุดต่ำสุด

57:23 เลยอ่ะคราวนี้เราลองมาดูว่ามันจริง มยเราก็จะลงทุนเขียนเป็นโปรแกรม เลยสมมุติว่าเรามีสูตรตรงเนะครับเป็น สมการพาราโบลานะครับเป็นสมการพาราโบลา x - 60 ^ 2 + 50 ซึ่งพอหาอนุพันธ์แล้วเนี่ยนะครับหรือ ดิฟแล้วเนี่ยจะได้ 2 * x - 60 นะ ครับเนี่ยก็มาดูนะครับอันนี้คือสมการนะ ครับ x ้าเท่ากับอ่า Y = x - 60 ^ 2 + 50 ทีนี้ถ้าเราจะต้องการพเส้นเนี่ยคือจะ

58:08 เป็นเส้นนี้นะครับ LINE equation ก็คือใส่ค่า x จะได้ค่า Y เพื่อเราจะได้ไป plot ตรงนี้เป็น LINE derivative ก็คือค่าดิฟนะครับค่าดิฟก็ อย่างที่บอกนะฮะได้ 2 คู x x - 60 เรา ก็เอาค่าดิฟมาใส่นะครับนี่คือค่า ดิฟทีนี้เราก็หา GR des นะครับหา GR de เราก็จะเริ่มจาก x เนี่ยเท่ากับ x เริ่มต้นนะครับคือเท่า ไหร่ก็ได้ที่เรา init ขึ้น มาแล้วก็ Learning Rate ส่วน EP นะครับ epx เนี่ยนะครับเป็นค่าจำนวนรอบนะครับ เป็นค่าจำนวนรอบ

58:58 เพราะฉะนั้นเนี่ยเราก็เริ่มจาก x = x inex นะครับ x Value = กับ x เพราะว่า x Value เนี่ยเป็น List นะ ครับเป็น List ที่จะใช้ในการ เก็บค่า x ว่าค่า x แต่ละครั้งเนี่ยเป็น เท่าไหร่บ้างนะครับเพื่อจะเอามาพกราฟที่ หลังคราวนี้เราก็บ Loop เท่ากับจำนวน epx นะครับ ซึ่งตัวเนี้ยถ้าเป็นอันนี้เราจะใช้ epx เท่ากับ 50 นะครับก็คือบ Loop 50 Loop แล้วก็หาค่าเเดนนะครับก็คือคำนวณตามสูตร นี้แล้วก็มาปรับค่า x มาปรับค่า x เนี่ย x

59:43 เท่ากับ Learning Rate คูณเกนก็คือตาม สูตร นี้นะครับ x เท่ากับค่า x เดิมลบ Learning Rate คูณ gradient นะครับ ทีนี้อันนี้เราก็เป็นแค่ 1 ตัวแปรนะครับ เป็น 1 ตัวแปรเราก็เลยมีชุดเดียวนะครับ เสร็จแล้วเราก็เอาค่า X ตัวเนี้ยใส่เข้า ไปใน x Value นะครับแล้วเราก็บ Loop นะครับก็ คือบทำ GR essense เนี่ยโดย Learning Rate เนี่ยเท่ากับ 0.1 initial เท่ากับ 70 อ่าเพิ่มก็ได้อสมมติเอาัก 100 ก็ได้ อ่ะแล้วเราลองรันนะครับ

1:00:30 อ่ะเดี๋ยวดูกราฟ 70 กันก็ ได้จากที่ผมพูดเนี่ยจำได้มยที่บอก ว่าณจุด ที่ค่าตรงเนี้ยนะครับตรงเความชันมันเยอะ เห็น มไอ้จุดจุดที่เป็น 100 เนี่ยจุดที่ค่าค่า แรกเนี่ยที่เป็น 100 เนี่ยความชันมันเยอะ เพราะฉะนั้นสต็ปมันจะเยอะนะครับสเต็ปมัน จะเยอะพอถัดมาความชันมันลดลงสตปมันจะลดลง ถัดมาความชันลดลงสตปมันจะลดลงเนี่ยจะลดลง ไปเรื่อยๆจะค่อยๆลดลงไปเรื่อยๆจนกระทั่ง ถึงจุดต่ำสุดแล้วมันจะไม่เปลี่ยนละนะครับ อันนี้คือเราสามารถหาจุดต่ำสุดของมัน ได้นะครับก็คือที่ตรงนี้ที่ 60 นะ

1:01:18 ครับทีนี้เรามาดูผลของ Learning Rate สมมุติว่าผมใส่ Learning Rate เป็น 0.2 รันปุ๊บอ่าดูกราฟนะ ครับสังเกต มยสังเกตเห็นว่า อะไรอันแรกนะฮะอันนี้สังเกตนะอันนี้มัน คือประมาณซัก 84 ใช่มยจาก 100 ลงมา 84 อ่าลงมากลับมา 0.1 ใหม่ตรงนี้จาก 100 ลงมาประมาณ 92 จะเห็นว่าสต็ปมันกว้างขึ้นเห็นมเพิ่ม จาก 0.1 เป็น 0.2 เนี่ยสตปมันกว้าง ขึ้นพูดง่ายๆคือ Learning Rate เนี่ยมัน

1:02:05 คล้ายๆกับเปอร์เซ็นต์ของการปรับว่าจะปรับ ไปักกี่เปอร์เซ็นต์อะไรเงี้ยอันนี้คือ ปรับไปประมาณ 0.2 คือัก 20 อ่าเราตีซะ ว่าว 20% ก็ได้จะได้อย่างนี้เห็นมสต็ปมัน จะกว้างขึ้นคราวนี้ถ้าเราเปลี่ยนอีกเป็น 0.3 เนี่ยก็จะกว้างขึ้นไปอีกอ่าเปลี่ยน อีก 0.4 อ่าดูซิเป็นยังไงไล่ไปเรื่อย ๆเป้าบเข้ามาอันแรกนี่ไงไป 70 กว่าละอ่ะ 0.5 เนี่ยอันแรกปุ๊บถึงจุดต่ำสุดเลย 0.5 อแล้ว 0.6 ล่ะได้

1:02:52 มั้ยอ่าอันนี้เห็นป่ะอันนี้อวร shoot ะแต่อันนี้ยังโชคดีมันมีแค่ตัวแปร เดียวนะมีแค่ตัวแปรเดียวเพราะฉะนั้นเนี่ย มันยังสามารถที่จะ กลับกลับมาที่ค่าจุดต่ำสุดของมันได้อ่า เดี๋ยวจะมี 2 ตัวแปรให้ดูนะครับว่ามัน กลับได้ไหมเพราะฉะนั้นค่าตรงเนี้ยจเป็น ค่าที่เราจะต้องปรับนะครับถ้าปรับ น้อยมันจะสเต็ปทีละน้น้อยเพราะว่าถ้าเรา สมมุติว่าเอาแค่ 0 จุดอ่า 4 ก็แล้วกัน 0.4 ถ้าเราา 0.4 เนี่ยจะเห็นว่าเราเอา แค่ 10 ก็พอเนี่ยเราเอา epx เนี่ย 10 ก็

1:03:42 พอเห็นมก็ถึงจุดต่ำสุด ะแต่ถ้าเป็น 0.1 อ่า 0.1 10 ได้ม 10 รอบอ้าไม่พอใช่ม 10 รอบลงมาถึงแค่ 65 เองเพราะฉะนั้นเนี่ย 2 ตัวเี่มีความสำคัญ กันนะ ครับจำนวน ort กับ Learning Rate Learning Rate ยิ่งมากการปรับเข้าหาจุดต่ำสุดยิ่งเร็ว ขึ้นแต่ถ้ามากเกินไปอาจจะหาจุดต่ำสุดไม่ เจอและ Learning Rate มากเนี่ยทำให้ จำนวน Loop ในการรันเนี่ยลดลงได้ก็คือใช้ เวลานน้อย ลงนะ

1:04:28 ครับแต่ว่า ถ้าน้อยแล้วตรงเนี้ยมี Loop น้อยก็ไปไม่ ถึงจุดต่ำสุดนะฮะตอนเนี้ยเรารู้ข้อมูล 2 ตัวแล้วนะครับ 2 ตัวเนี่ยเราเรียก 2 ตัว นี้ว่าเป็น Hyper พารามิเตอร์ต่อไปจะได้ คำนี้บ่อยๆนะครับคำว่า Hyper พมตถามว่าทำไมถึงเรียกว่า Hyper param แล้วถามว่าไอ้พตรคืออะไร พารามิเตอร์คือ a กับ b a กับ B เนี่ย คือพารามิเตอร์คือสิ่งที่เราต้องการหานะ ครับอันนั้นคือพารามิเตอร์ตัวนี้เป็น พารามิเตอร์ที่เราจะใช้เพื่อการปรับนะ ครับเป็นเพื่อการปรับเราก็เลยเรียกว่า Hyper parameter อ่ะคราวนี้เรามาดูอีก

1:05:16 โปรแกรมนึงนะครับ เนี่ยอันนี้ก็ถ้าเราอยากดูค่านะครับ เดี๋ยวเราลองปุ๊บอันนี้เป็นมาดูก็ได้นะ ครับเนี่ยเราปริ้นมาดูได้เนี่ยลงมาถึง 64.2 อันนี้ปิ้นมาให้ดูเพื่อให้เห็น สเต็ปที่มันห่างกันอ่าเดี๋ยวลองเอาไป 50 ก็แล้วกัน 50 ูปเหมือน เดิมแล้วเราลองลิดูนะครับเนี่ยก็จะเห็น ได้เลยนะครับว่าสต็ปเนี่ยอันนี้คือสต็ป 8 อันนี้ 7 อันนี้ 5 เห็นมยว่าสเต็ปมันค่อย ๆลดลงโดยมันลดลงตามความชันนะครับอันนี้ คือค่า Los ที่เก็บไว้ของแต่ละลูปนะครับ

1:06:04 ที่เอามาพต กราฟอ่ะคราวนี้ต่อไปคราวนี้เราลองแ 2 ตัว แปรเราจะตั้งเชื่อว่าเป็น X1 กับ x2 นะ ครับ X1 ^ 2 กับ x2 ^ 2 เป็น 2 ตัว แปรนะครับทีนี้พอ 2 ตัวแปรปุ๊บเนี่ยจะ คล้ายๆกับ a กับ B ตะกี้คือพอเราทำ partial Diff ปุ๊บเนี่ยมันจะได้เป็น สมการของ partial Diff เนี่ย 2 สมการก็ คือตัวเนี้ยคือ 2 * X1 - 60 อีกอัน คือ 2 * x2 - 30 นะครับอันนี้ก็จะได้ เป็น partial ฟของแต่ละสมการนะครับอ่ะที นี้ต่อมานะครับตรงนี้ก็เหมือนเดิมนะครับ

1:06:51 เป็น gradient เพียงแต่ว่าเพิ่มเป็น 2 ตัวแปรนะครับคือ X1 กับ x2 Learning Rate ยังใช้อยู่ ort ยัง ใช้อยู่นะครับเวลาเก็บก็เก็บ 2 ตัวนะครับ แล้วสังเกตนะเวลาเราหาเเนเนี่ยเราหาเเน ของแต่ละอันเวลาที่เราปรับนะครับเราปรับ ค่าของ X1 ก็ปรับจากเเนของ X1 ปรับค่า x2 ก็ ปรับจาก GR เนของ x2 เพราะฉะนั้นสมมุติมี พารามิเตอร์ เป็น 10 ตัวเราต้องปรับแบบเ 10 ครั้งนะ ครับปรับของตัวแปรแต่ละตัวเพราะฉะนั้นจะ เห็นได้ว่าเวลาปรับเนี่ยความชันใครความ

1:07:36 ชันมันเพราะว่า X1 เนี่ยปรับตามความชัน ของ X1 x2 ปรับตามความชันของ x2 นะครับคือเวลาปับเนี่ย X1 x2 ปรับ แยกกันแต่ว่าตอนเดินเนี่ยตอนเดินเนี่ย เดินไปด้วยกันอ่าลองดูนะครับ อันนี้ผมเริ่ม X1 ที่ 70 x2 ที่ 40 Learning Rate ใช้ 0.1 เหมือนเดิม epox ใช้ 50 เหมือนเดิมนะครับอันนี้ก็รันอ่า gradient lense นะครับ Ran Credit lense เพราะฉะนั้นจะเห็นได้ว่าเนี่ย อย่างที่บอกเวลาปรับเนี่ยปรับของไก่ของ มันนะครับแต่ว่าเนื่องจากว่ามันปรับ 2

1:08:22 ตัวใน Loop เดียวกันเพราะฉะนั้นมันสุด ท้ายมันจะได้มาเป็นเวกเตอร์ของการปรับใน 1 รอบคือปรับ 2 ตัวแปรมันก็เหมือนกับเดิน ทะแยงทะแยงอ่ะนะครับคือถึงแม้ตอนปรับ เนี่ยเราปรับเป็นตามแกนแกน X1 แกน x2 ก็ จริงแต่ว่าตอนที่มันทำงานจริงเนี่ยมันทำ งานไปพร้อมกันเพราะฉะนั้นเนี่ยมันจะ เหมือนกับเราเดินทะแยงนะครับอ่ะคราวนี้ เรามาดูนะครับกราฟเนี่ยเหมือนกันนะ ครับก็คือพออได้ความชันเยอะมันก็จะปรับ เยอะพอตอนหลังความชั้นน้อยก็จะปรับน้อย อันนี้เนื่องจากว่าเป็นตัวแปร 2 ตัว ลักษณะมันก็เลยเป็น 3 มิติแบบนี้นะครับ เป็น 2d อ่ะทีนี้เราลองเปลี่ยนนะครับ

1:09:09 เหมือนเดิมนะครับลองเปลี่ยนตัวนี้เป็น 0.2 จะเกิดอะไรขึ้นอ่ะจำรูปไว้นะหลันปึ๊บ 0.2 เนี่ยเห็นมก็จะห่างมากขึ้นปึกลงมาตรงนี้ เลย 0.3 นะ 0.4 อ่ามาอย่างงี้อ่า 0.5 นะ ครับ นี่อ่าแล้ว 0.6 ล่ะใช่มก็เริ่มเพี้ยนแล้วเห็นมั้ยฮะเพราะ

1:09:58 ฉะนั้นหลักการเนี่ยยังคงเหมือนเดิมนะครับ ก็คือว่าค่า Learning Rate เนี่ยต้อง ปรับให้เหมาะ สมค่าน้อยจะเป็นผลให้การทำงานเนี่ยช้าค่า มากนะครับค่ามากเป็นผลให้การทำงานไม่ สำเร็จนะครับส่วนค่า epos เนี่ย ก็ปรับเอาาตามความเหมาะสมนะครับบอกไม่ได้ ว่ามีค่าเท่าไหร่โอเคตรงนี้ก็คงเข้าใจตัว grit Sense และคราวนี้เราจะมาเขียน gradient essense ของโปรแกรมของเราละนะ ครับตะกี้เราเอาสมการอื่นมาใช่มยตรงเนี้ย เป็น gradient ence ของ สมการก็คือไอ้ AX + B นะครับ AX +

1:10:48 B เนี่ยก็จะได้เป็นตรง นี้ก็เริ่มเนี่ยนะครับเริ่มเนี่ยตรงนี้ คือการทำงานในการปรับค่าเเยน 1 1 รอบนะ ครับเราเขียนเป็นฟังก์ชันชื่อว่าเเดน สต็ปเราปรับค่าเกรนตรงเนี้ยให้กลับเป็น 0 ใหม่เพราะไม่งั้นมันอาจจะเอาเเดดของค่า เดิมมาใช้นะครับเราปรับให้เป็น 0 ใหม่เสร็จแล้วเราก็ทำกับทุกจุดนะครับเรา ต้องหาค่า Los ของทุก จุดนะฮตรงนี้เราหาค่า L ของทุกุดจุดมานะ ครับก็เอา XY มาแล้วก็หาค่าเนี่ยเเดนนะ ตรงเนี้ยตรงนี้มาจาก

1:11:34 ไหนตรงนี้มาจากนี้นะฮอาจจะไกดหน่อยพอดีไป พูดึงเรื่องอื่นคั้น ไว้ตรงนี้มาจากตรงนี้นะครับมาจากตรงนี้ เนี่ย -2 นะครับคูณ Y - AX + B อ่ามาดูว่า ใช่ไหมนะครับ เนี่ย -2 นะครับคูณ Y นะครับ x + B นะครับ เนี่ยอันนี้คือค่าเกรเดียนของ a นะครับ ซึ่งเอามาจากสมการเป๊ะเลยนะครับเกดของ B ก็เอามาจากสมการเหมือนกันนะครับเพราะ ฉะนั้นอันนี้คือหาค่าเกดของของ A จากตรง

1:12:20 นี้หาค่าแกเดของ B จากตรง นี้แล้วตอนที่เราหาค่า a ใหม่เนี่ย a ใหม่ B ใหม่ก็เหมือนกันก็คือเอาค่า a current คือค่า a ปัจจุบันเนี่ยลบด้วย Learning Rate คูณกับ gradient ณจุดๆ นั้นเหมือนกันนะ ครับเสร็จแล้วตรงเนี้ยเราก็ิรค่า a กับ B ไหมไปนะครับค่า a กับ B ไหม ไปแล้วเราก็เขียนอีโปรแกรมนึงชื่อว่า gradient L Runner gradient res S Runner เนี่ยไม่ไม่ใช่อะไรมีแค่ว่า vol Loop นะครับว Loop ไอ้เรียกฟังก์ชันเยไป

1:13:05 เรื่อยๆนะครับจนกระทั่งครบ OS หรือตรง เนี้ยโปรแกรมนี้เรียกว่า Number of isolation ก็คือจำนวนรอบของการทำงานนะ คือวนไปเรื่อยๆแล้ว ก็เก็บค่า Los นะครับเก็บค่า Los ก็เอา ฟังก์ชันเนี้ยมาใช้ฟังก์ชันเนี้ยมาใช้ใน การหาค่า Los เพราะว่าข้างบนเนี่ยมันเป็น ฟังก์ชันในการทนี้เป็นฟังก์ชันในการหาค่า เเดนแต่ตรงนี้เราต้องการหาค่า Los ซึ่ง เราเคยเขียนเอาไว้เราก็เอาฟังก์ชันในการ หาค่า Los ว่าณจุดณจุดของแต่ละสเต็ปของ gradient เนี่ยค่า Los เป็นเท่าไหร่เ เพื่อดูว่าค่า loss แต่ละอันเนี่ยมันเป็น ยังไงนะครับอ่ะคราวนี้เราก็มาเริ่ม

1:13:53 โปรแกรม โปรแกรมเนี่ยเราเริ่มจากสร้างจุดนะครับ คือ generate Point ก็ไอ้จุดที่ไปตามแนว ทะแยง ทะแยง initial a = 20 อันนี้เปลี่ยน เป็นค่าอื่นก็ได้นะครับเป็น 200 300 อะไรก็ ได้ก็ไปลองเปลี่ยนดูว่ามีผลอะไรมนะครับ ค่า A คือค่าสโลปที่เรา เดาค่า B คือค่าตัดแกน y ที่เราเดา Learning Rate เนี่ยลองใช้ 0.02 นะนำ aeration เท่ากับ 10,000 ออัน นี้จะดูเยอะๆนิดนึงเดี๋ยวให้ไปลองปรับเอา

1:14:41 ไปเองนะครับว่าปรับ 2 ค่าเนี้ยแล้วมันมี ความแตกต่างยังไงนะ ครับเสร็จแล้ว ก็อ่าตัวก็คำนวณนะนะครับคำนวณหาค่าค่า Los นะครับหาค่า Los เตรงนี้บอกว่า a เทกับนะ 0 นะ 0 คือตัว นี้อ่า 0 คืออนิล a นะครับ 1 คืออนิล B นะครับคือจุดเริ่มต้นแล้วก็คำนวณค่า loss ของจุดเริ่มต้นนะครับคำนวณค่า Los จุด เริ่มต้นก็คือเอาอิล a อิล B เนี่ยมา

1:15:27 คำนวณก็จะได้ค่าล้อสูจุดเริ่มต้นเสร็จ แล้ว Running นะครับ Running เนี่ยก็เอา แต่ละจุดนะครับก็คือพอรันไปแล้วปุ๊บนะ ฮะพอรันไปแล้วปุ๊บเนี่ยก็ปริ้นออกมานะ ครับปริ้นออกมาว่าหลังจากรันไปแล้วกี่รอบ ค่า a ค่า B เป็นเท่าไหร่ค่า Error เป็น เท่าไหร่ เสร็จแล้วก็เอามาพอตนะครับส่วนของพอนี่ผม ไม่อธิบายก็แล้วกันนะครับเพราะว่า ในส่วนของการใช้ Mat poip ก็น่าจะอธิบาย ไว้บ้างแล้วนะครับอ่ะเราลองรันดูจริงก็

1:16:13 ได้นะ ครับก็เริ่มต้นเนี่ยหนจุดที่เป็นจุดเริ่ม ต้นนะฮะ 20 กับ 30 เนี่ย Error 10,000 หลังจากรไปแล้ว 10,000 ไชนะ ครับค่า a เท่ากับ 4.9 เนี่ยก็ใกล้ๆค่าใกล้ๆ 5 นะถูกมฮะ เพราะค่าอ้าของเราคือ 5 ค่า B เท่ากับ 10 อ่าอันนี้ยิ่งใกล้เคียงค่า Error เหลือ แค่ 1 ตรงนี้ก็คือค่าเส้นค่าเอาค่า a มาพอต ก็จะเห็นมันค่อนข้างฟิตดีนะครับอันนี้คือ ค่า Los นะครับค่า Los ที่ลดลงพอดีเราใส่

1:16:59 Loop เยอะอ่ะ 10,000 Loop มันก็เลยลงมา ค่อนข้างชันหน่อยก็เดี๋ยวลองให้ไปปรับนะ ลองมาดูค่า L ก็ได้นะฮะก็จะเห็นว่าค่า L เนี่ยค่อยๆลดลงนะฮะตั้งแต่ 8,000 6,000 4,000 3,000 แล้วก็ลดลงไปเรื่อยๆตนี้ ให้ปริ้นแค่ 20 ตัวคือมีทั้งหมด 10,000 ตัวนะครับให้ปริ้นแค่ 20 ตัวเราจะลองปริ้นมันตรงนี้มาดูก็ได้แล้ว เราก็ดูว่า เราจะหยุดที่ไหนดีอคราวนี้เรามาลองอีกอัน นึงเราลองค่านำ ไชสมมุติเอาแค่ 3 พออ่ะลองานสัก 3 ูปจะเกิดอะไร ขึ้นเนี่ยจะเห็นว่าลาน 3 หลุ่มเนี่ยเส้น

1:17:45 เป็นอย่างนี้นะเห็นมั้ยฮะอันนี้คือเส้น เป็นอย่างนี้นะอ่ะคราวนี้เพิ่มเป็นซัก 5 หูป อ่าเส้นมานี่เส้นออกมาลงมาหน่อยนึงรู้สึก จะช้าไปหน่อยอ่าซัก 20 เลยก็ได้อ 20 Loop อ่า 20 Loop อ่าเส้นเริ่มเข้ามา ใกล้เคียงมากขึ้นะเเส้นเริ่มเข้ามาใกล้ เคียงอ่าลองเพิ่มเป็น 30 Loop อ่าก็อาจจะมีเปไปเป๋มาบ้างนะครับ เอาซัก 50

1:18:31 ูปอ่า 50 Loop สมมุติว่า 100 Loop เนี่ยก็จะเห็นว่าเส้นที่ได้เนี่ย มันจะค่อยๆ ใกล้ค่อยๆใกล้ไอ้ตัวจุดเนี่ยตามแนวจุด เนี่ยมากขึ้นเรื่อยๆเนี่ย 200 Loop 300 Loop นะ ครับเห็นมยใกล้ขึ้นเรื่อยๆ 400 Loop อ่าก็ใกล้ขึ้น อีกอ่ะสมมุติว่า 1,000 อ่าสเต็ปเยอะๆเลย

1:19:20 ขี้เกียจ คีย 1,000 อ่าอันนี้ก็เกือบเท่าแล้วเห็น มเพราะฉะนั้นเเห็นว่าอันเนี้ยหลักการนะ ครับหลักการของอันนี้คือเราใช้เซอนตัว เดียวนะครับอันนี้เราใช้เซอนตัวเดียวถาม ว่าอ้าแล้วไอ้ perp อยู่ตรง ไหนเพอนเนี่ยมันก็คือการรวม input ถูก มแล้วมาคำนวณตามสมการเชิงเส้นเนื่องจาก เรามีสมการเชิงเส้น 1 สมการคือสมการ นี้อันนี้แหละคือตัว perceptron ละนะครับเอามาทำอันนี้คือตัว perp ะและ การทำงานของมันเนี่ยก็คือว่ามันจะเดาหา

1:20:07 ค่า a และ b ไปเรื่อยๆแต่เป็นการเดาแบบมี ทิศทางก็คือใช้ GR Sense ในการ เดานะครับเวลาเดาตัวต่อไปว่าเอ๊ะจะเอาค่า a ค่า B ไปทางไหนดีเราค่อยๆขยับ ตามความชันไล่ลงตามความชันแล้วพอเราไล่ลง ไปเรื่อยๆตเนี้ย 10,000 ครั้งคือตนี้พอดีผมตั้งตรงนี้มันน้อยอ่ะ นะครับแต่นี้สมมุติว่าเราเอาเยอะอีกหน่อย ก็ได้สมมุติว่า 0.0 0 1 อ่ะสมมติว่า 100 ูปเอา 100 หุปดู ซิอ่าอันนี้ก็แค่ 100 หูก็ได้เกือบเท่า

1:20:55 แล้วพอดีผมตั้ง Learning Rate น้อยก็คือ ว่าถ้าอันนี้ก็เป็นรูปที่ไปหามานะครับ ว่าในการวนแต่ละ Loop เนี่ยมันจะค่อยๆ เปลี่ยนนะครับมันจะค่อยๆเปลี่ยนเส้นนะ ครับคือเปลี่ยนค่า a ค่า B ไปเรื่อยๆ โดยในแต่ละครั้งเนี่ยค่า Error ต้องลดลง ไปเรื่อยๆจนกระทั่งถึงจุดที่มัน Error น้อยที่สุดแล้วเนี่ยเส้นนั้นเราเรียกว่า เส้น Best Fit นะฮะคือเส้นที่ฟิตที่ สุดอันนี้คือการทำงานของเซอนนะคราวนี้

1:21:45 สิ่งที่ผมอยากให้ไปทำนะครับหลังจากคาล ครั้งนี้ คือไปดูลักษณะการการทำงานนะครับการทำงาน ของ เตอน 1 ตัวหรือจะเป็นเตอน 1 ล้านตัวมีรูป แบบการทำงานไม่ต่างกันมากนักให้พยายามจับ แพทเทิร์นของมันนะครับจับแพทเทิร์นของมัน ว่า เอ๊ะเวลาที่มันหาค่า a ค่า B ตัวต่อ ไปนะมันทำ grit n Sense เนี่ยมันทำยัง ไงเราลองคำนวณดูก็ได้นะครับลองเอาสมการ อื่น นะครับมาคำนวณดูนะครับโดยเอาไอ้โปรแกรม ged lense เนี่ยตะกี้เป็นสมการยกกำลัง

1:22:33 อื่นก็ได้นะครับเอามาคำนวณดูว่าเอ๊ะทำไป เนี่ยมันได้จุดต่ำสุดจริง มยอะไรแบบเนี้ยแล้วค่า Learning Rate มี ผลยังไงค่า Number of iteration มีผล ยังไงนะครับพยายาม จับรูปแบบของการทำงานเพราะว่าต่อให้สร้าง เป็นโมเดลที่ใหญ่กว่าเนี้ยรูปแบบการทำงาน ก็จะคล้ายๆแบบ นี้นะครับนะโอเคครั้งนี้ก็เป็น perp 1 ตัวเดี๋ยวครั้งหน้าเราจะขยายเป็น network และคือใช้ perceptron ไอ้ตัว perceptron เนี่ยบางทีเเรียกว่านิวรอนนะครับเรียกว่า นิวรอนก็คือ n u r o n นะครับบางที

1:23:21 เรียกว่านิวรอนหมายถึงเซลล์ประสาท 1 เซ นะครับก็อาจจะเป็นพอน 1 ตัวหรือนิวรอน 1 ตัวเดี๋ยวครั้งหน้าเราจะเพิ่มจำนวนแล้วก็ จะมีเรื่องอื่นมาเรียนรู้เพิ่มนะครับโอเค สำหรับครั้งนี้นะครับก็สรุป ว่าให้พยายามทำเข้าใจว่า perceptron ก็ คือ ตัว 1 หน่วยนะครับ 1 หน่วยของนรอ nwk เนี่ยทำงานยัง ไง Trading Loop เวลาที่เเทรดเนี่ย Trading Loop เนี่ยเป็นยังไงการหา loss นะครับโดยใช้ sum of Square eror ยัง ไงการหาจุดเติบสูตของกราฟโดยใช้ GR ยัง

1:24:11 ไง Learning Rate มีผลยังไงจำนวนรอบการ ทำงานมีผลอย่างไรนะครับก็เดี๋ยวค่อยเจอ กันอีกครั้งในตาน 2 นะครับโอเคครับสวัสดี ครับ e

Share

YouTube Video Summaries