การเรียนรู้ของเครื่องด้วย Python - พื้นฐาน

เรากำลังอยู่ใน 'ยุคของข้อมูล' ที่อุดมไปด้วยพลังการคำนวณที่ดีขึ้นและทรัพยากรในการจัดเก็บข้อมูลที่มากขึ้น ข้อมูลหรือข้อมูลนี้เพิ่มขึ้นทุกวัน แต่ความท้าทายที่แท้จริงคือการเข้าใจข้อมูลทั้งหมด ธุรกิจและองค์กรต่างพยายามจัดการกับมันด้วยการสร้างระบบอัจฉริยะโดยใช้แนวคิดและระเบียบวิธีจาก Data science, Data Mining และ Machine learning การเรียนรู้ของเครื่องเป็นสาขาวิทยาศาสตร์คอมพิวเตอร์ที่น่าตื่นเต้นที่สุด คงไม่ผิดอะไรหากเราเรียกแมชชีนเลิร์นนิงว่าแอปพลิเคชันและวิทยาศาสตร์ของอัลกอริทึมที่ให้ความรู้สึกกับข้อมูล

Machine Learning คืออะไร?

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

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

ต้องการแมชชีนเลิร์นนิง

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

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

ทำไมต้องเรียนรู้เกี่ยวกับเครื่องจักร?

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

ขาดความเชี่ยวชาญของมนุษย์

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

สถานการณ์แบบไดนามิก

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

ความยากในการแปลความเชี่ยวชาญเป็นงานด้านการคำนวณ

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

รูปแบบการเรียนรู้ของเครื่อง

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

“ โปรแกรมคอมพิวเตอร์กล่าวกันว่าเรียนรู้จากประสบการณ์ E ที่เกี่ยวข้องกับงานบางประเภท T และการวัดประสิทธิภาพ P หากประสิทธิภาพของงานใน T ตามที่วัดโดย P จะดีขึ้นตามประสบการณ์ E”

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

ML เป็นสาขาหนึ่งของ AI ที่ประกอบด้วยอัลกอริทึมการเรียนรู้ที่ -

  • ปรับปรุงประสิทธิภาพ (P)

  • ในการดำเนินงานบางอย่าง (T)

  • เมื่อเวลาผ่านไปด้วยประสบการณ์ (E)

จากข้อมูลข้างต้นแผนภาพต่อไปนี้แสดงถึงโมเดลการเรียนรู้ของเครื่อง -

ให้เราคุยรายละเอียดเพิ่มเติมตอนนี้ -

งาน (T)

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

งาน T ถูกกล่าวว่าเป็นงานที่ใช้ ML เมื่อเป็นไปตามกระบวนการและระบบจะต้องปฏิบัติตามเพื่อดำเนินการกับจุดข้อมูล ตัวอย่างของงานที่ใช้ ML ได้แก่ Classification, Regression, Structured annotation, Clustering, Transcription เป็นต้น

ประสบการณ์ (E)

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

ประสิทธิภาพ (P)

อัลกอริทึม ML ควรจะทำงานและได้รับประสบการณ์ในช่วงเวลาที่ผ่านไป การวัดที่บอกว่าอัลกอริทึม ML ทำงานตามความคาดหวังหรือไม่คือประสิทธิภาพ (P) โดยพื้นฐานแล้ว P เป็นเมตริกเชิงปริมาณที่บอกว่าโมเดลกำลังปฏิบัติงานอย่างไร T โดยใช้ประสบการณ์ E. มีเมตริกมากมายที่ช่วยให้เข้าใจประสิทธิภาพ ML เช่นคะแนนความแม่นยำคะแนน F1 เมทริกซ์ความสับสนความแม่นยำการจำ , ความไว ฯลฯ

ความท้าทายในการเรียนรู้ของเครื่องจักร

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

Quality of data- การมีข้อมูลที่มีคุณภาพดีสำหรับอัลกอริทึม ML ถือเป็นความท้าทายที่ยิ่งใหญ่ที่สุดอย่างหนึ่ง การใช้ข้อมูลคุณภาพต่ำนำไปสู่ปัญหาที่เกี่ยวข้องกับการประมวลผลข้อมูลล่วงหน้าและการแยกคุณลักษณะ

Time-Consuming task - ความท้าทายอีกประการหนึ่งที่ต้องเผชิญกับโมเดล ML คือการใช้เวลาโดยเฉพาะอย่างยิ่งสำหรับการเก็บข้อมูลการดึงคุณสมบัติและการดึง

Lack of specialist persons - เนื่องจากเทคโนโลยี ML ยังอยู่ในช่วงเริ่มต้นการมีทรัพยากรจากผู้เชี่ยวชาญจึงเป็นงานที่ยากลำบาก

No clear objective for formulating business problems - การไม่มีวัตถุประสงค์ที่ชัดเจนและเป้าหมายที่ชัดเจนสำหรับปัญหาทางธุรกิจถือเป็นอีกหนึ่งความท้าทายที่สำคัญสำหรับ ML เนื่องจากเทคโนโลยีนี้ยังไม่เติบโตเต็มที่

Issue of overfitting & underfitting - หากแบบจำลองมีการติดตั้งมากเกินไปหรือไม่เหมาะสมจะไม่สามารถแสดงปัญหาได้ดี

Curse of dimensionality- ใบหน้าของโมเดล ML ที่ท้าทายอีกประการหนึ่งคือคุณสมบัติของจุดข้อมูลที่มากเกินไป นี่อาจเป็นอุปสรรคที่แท้จริง

Difficulty in deployment - ความซับซ้อนของโมเดล ML ทำให้การนำไปใช้ในชีวิตจริงค่อนข้างยาก

การประยุกต์ใช้การเรียนรู้ของเครื่องจักร

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

  • การวิเคราะห์อารมณ์

  • การวิเคราะห์ความเชื่อมั่น

  • การตรวจจับและป้องกันข้อผิดพลาด

  • การพยากรณ์อากาศและการทำนาย

  • การวิเคราะห์และพยากรณ์ตลาดหุ้น

  • การสังเคราะห์เสียง

  • การรู้จำเสียง

  • การแบ่งกลุ่มลูกค้า

  • การรับรู้วัตถุ

  • การตรวจจับการฉ้อโกง

  • การป้องกันการฉ้อโกง

  • การแนะนำสินค้าให้กับลูกค้าในการซื้อของออนไลน์