“ อัลกอริทึม” เป็นคำที่มีคนพูดถึงกันมาก แต่เมื่อเราสร้างการสนทนาโดยใช้อัลกอริทึมของ YouTube หรือ Facebook เรากำลังพูดถึงอะไรกันแน่? อัลกอริทึมคืออะไรและทำไมผู้คนถึงบ่นเกี่ยวกับพวกเขามาก?
อัลกอริทึมเป็นคำแนะนำสำหรับการแก้ปัญหา
เราอาศัยอยู่ในโลกที่คอมพิวเตอร์เข้าใจได้อย่างคลุมเครือแม้ว่ามันจะแทรกซึมอยู่ทุกช่วงเวลาของชีวิต แต่มีสาขาหนึ่งของวิทยาการคอมพิวเตอร์ที่ทุกคนสามารถเข้าใจพื้นฐานของสิ่งที่เกิดขึ้น สาขาวิชาวิทยาศาสตร์คอมพิวเตอร์เรียกว่าการเขียนโปรแกรม
การเขียนโปรแกรมไม่ใช่งานที่สวยงาม แต่เป็นรากฐานของซอฟต์แวร์คอมพิวเตอร์ทั้งหมดตั้งแต่ Microsoft Office ไปจนถึง robocallers . และแม้ว่าความรู้ในการเขียนโปรแกรมของคุณจะมาจากภาพยนตร์ที่ไม่ดีในยุค 90 และรายงานข่าวนอกกระแส แต่คุณก็ไม่จำเป็นต้องมีใครมาอธิบายให้คุณฟังว่าโปรแกรมเมอร์ทำอะไร โปรแกรมเมอร์เขียนโค้ดสำหรับคอมพิวเตอร์และคอมพิวเตอร์ทำตามคำสั่งของรหัสนั้นเพื่อทำงานหรือแก้ปัญหา
ในโลกของวิทยาการคอมพิวเตอร์อัลกอริทึมเป็นเพียงคำที่แปลกใหม่สำหรับรหัส ชุดคำสั่งใด ๆ ที่บอกคอมพิวเตอร์ถึงวิธีแก้ปัญหาคืออัลกอริทึมแม้ว่างานนั้นจะง่ายมากก็ตาม เมื่อคุณเปิดคอมพิวเตอร์จะเป็นไปตามชุดคำแนะนำ "วิธีการเปิด" นั่นคืออัลกอริทึมในการทำงาน เมื่อคอมพิวเตอร์ของ NASA ใช้ข้อมูลคลื่นวิทยุดิบเพื่อแสดงภาพถ่ายของอวกาศนั่นก็เป็นอัลกอริทึมในการทำงานเช่นกัน
คำว่า "อัลกอริทึม" สามารถใช้เพื่ออธิบายชุดคำสั่งใดก็ได้แม้จะอยู่นอกขอบเขตของการคำนวณ ตัวอย่างเช่นวิธีการจัดเรียงเครื่องเงินในลิ้นชักเป็นอัลกอริทึมเช่นเดียวกับวิธีล้างมือหลังใช้ห้องน้ำ
แต่นี่คือสิ่งที่: ทุกวันนี้คำว่า "อัลกอริทึม" มีแนวโน้มที่จะสงวนไว้สำหรับการสนทนาทางเทคโนโลยีที่เฉพาะเจาะจง คุณไม่ได้ยินคนพูดถึงอัลกอริทึม "คณิตศาสตร์พื้นฐาน" หรืออัลกอริทึม "MS Paint graffiti tool" แต่คุณได้ยินผู้ใช้ Instagram บ่นเกี่ยวกับอัลกอริทึมการแนะนำเพื่อนหรือกลุ่มความเป็นส่วนตัวทุบตีอัลกอริทึมการรวบรวมข้อมูลของ Facebook
ถ้า“ อัลกอริทึม” เป็นคำที่ใช้ตรวจจับได้สำหรับคำสั่งในการคำนวณเหตุใดเราจึงใช้คำนี้เพื่ออธิบายแง่มุมที่สับสนมหัศจรรย์และชั่วร้ายของโลกดิจิทัลโดยเกือบทั้งหมด
คนส่วนใหญ่ใช้ "อัลกอริทึม" และ "แมชชีนเลิร์นนิง" แทนกันได้
ในอดีตโปรแกรมเมอร์และวัฒนธรรมป๊อปเรียกคำสั่งการคำนวณส่วนใหญ่ว่า "รหัส" สิ่งนี้ยังคงเป็นจริงในปัจจุบันส่วนใหญ่ การเรียนรู้ของเครื่อง เป็นพื้นที่คอมพิวเตอร์ขนาดใหญ่ที่มีเมฆมากซึ่งเรามักจะใช้คำว่า "อัลกอริทึม" แทน "รหัส" สิ่งนี้มีส่วนทำให้เกิดความสับสนและไม่สบายใจเกี่ยวกับคำว่า "อัลกอริทึม"
แมชชีนเลิร์นนิงมีมานานแล้ว แต่กลายเป็นเพียงส่วนใหญ่ของโลกดิจิทัลในช่วง 15 ปีที่ผ่านมา แม้ว่าแมชชีนเลิร์นนิงจะดูเหมือนเป็นแนวคิดที่ซับซ้อน แต่ก็ค่อนข้างเข้าใจง่าย โปรแกรมเมอร์ไม่สามารถเขียนและทดสอบโค้ดเฉพาะสำหรับทุกสถานการณ์ได้ดังนั้นพวกเขาจึงเขียนโค้ดที่เขียนเองได้
คิดว่าเป็นรูปแบบปัญญาประดิษฐ์ที่ใช้งานได้จริงมากกว่า หากคุณจัดประเภทอีเมลของเจ้านายเป็นสแปมมากพอโปรแกรมรับส่งอีเมลของคุณจะเริ่มส่งอีเมลของเจ้านายทั้งหมดไปยังโฟลเดอร์จดหมายขยะโดยอัตโนมัติ ในทำนองเดียวกัน Google ใช้แมชชีนเลิร์นนิงเพื่อให้แน่ใจว่าผลการค้นหาของ YouTube มีความเกี่ยวข้องและ Amazon ใช้แมชชีนเลิร์นนิงเพื่อแนะนำผลิตภัณฑ์ที่คุณควรซื้อ
แน่นอนว่าแมชชีนเลิร์นนิงไม่ใช่สิ่งที่ดีและสวยงาม ชื่อ "แมชชีนเลิร์นนิง" ฟังดูน่าขนลุกพอที่จะทำให้บางคนไม่สบายใจและการใช้แมชชีนเลิร์นนิงที่เป็นที่นิยมบางอย่างก็เป็นเรื่องที่น่าสงสัย อัลกอริทึมที่ Facebook ใช้ในการขุดข้อมูลหรือผู้ใช้ทั่วทั้งเว็บเป็นตัวอย่างที่ไม่ประจบสอพลอของการเรียนรู้ของเครื่อง
ในสื่อคุณจะได้ยินเกี่ยวกับ "อัลกอริทึมของ Google" สำหรับการจัดอันดับผลการค้นหา "อัลกอริทึมของ YouTube" สำหรับการแนะนำวิดีโอและ "อัลกอริทึมของ Facebook" สำหรับการตัดสินใจว่าคุณจะเห็นโพสต์ใดในไทม์ไลน์ของคุณ สิ่งเหล่านี้ล้วนเป็นเรื่องของการโต้แย้งและการถกเถียง
ที่เกี่ยวข้อง: ปัญหาเกี่ยวกับ AI: เครื่องจักรกำลังเรียนรู้สิ่งต่าง ๆ แต่ไม่สามารถเข้าใจได้
ทำไมอัลกอริทึมจึงเป็นที่ถกเถียงกัน
การหารแบบยาวเป็นอัลกอริธึมที่คุ้นเคย (ในกลุ่มอื่น ๆ ) สำหรับการหารตัวเลข เป็นเพียงการดำเนินการโดยเด็กนักเรียนแทนที่จะใช้คอมพิวเตอร์ CPU Intel ของคุณใช้อัลกอริทึมที่แตกต่างกันโดยสิ้นเชิงเมื่อหารตัวเลข แต่ผลลัพธ์จะเหมือนกัน
คำพูดเป็นข้อความโดยทั่วไปใช้การเรียนรู้ของเครื่อง แต่ไม่มีใครพูดถึง "อัลกอริทึม" ของคำพูดเป็นข้อความเนื่องจากมีคำตอบที่ถูกต้องตามหลักเหตุผลที่มนุษย์ทุกคนสามารถจดจำได้ในทันที ไม่มีใครสนใจ "วิธี" ที่คอมพิวเตอร์จะคิดออกว่าคุณพูดอะไรหรือเป็นแมชชีนเลิร์นนิงหรือไม่ เราแค่ดูแลว่าเครื่องมีคำตอบที่ถูกต้องหรือไม่
แต่แอปพลิเคชันแมชชีนเลิร์นนิงอื่น ๆ ไม่มีประโยชน์ที่จะมีคำตอบที่“ ถูกต้อง” นั่นเป็นสาเหตุที่อัลกอริทึมกลายเป็นหัวข้อสนทนาปกติในสื่อ
อัลกอริทึมสำหรับการจัดเรียงรายการตามตัวอักษรเป็นเพียงวิธีการทำงานที่กำหนดไว้ให้สำเร็จ แต่อัลกอริทึมเช่น Google สำหรับ "การจัดอันดับเว็บไซต์ที่ดีที่สุดสำหรับการค้นหา" หรือ YouTube สำหรับ "แนะนำวิดีโอที่ดีที่สุด" นั้นเป็นสิ่งที่ไม่ชัดเจนมากนักและไม่สามารถบรรลุภารกิจที่กำหนดไว้ได้ ผู้คนสามารถถกเถียงกันได้ว่าอัลกอริทึมนั้นให้ผลลัพธ์ตามที่ควรหรือไม่และผู้คนจะมีความคิดเห็นที่แตกต่างกัน แต่ด้วยตัวอย่างการจัดเรียงตามตัวอักษรของเราทุกคนสามารถยอมรับได้ว่ารายการจะเรียงลำดับตามตัวอักษรตามที่ควรจะเป็น ไม่มีการโต้เถียง
เราควรใช้คำว่า“ Algorithm” อย่างไร
อัลกอริทึมเป็นพื้นฐานของซอฟต์แวร์ทั้งหมด หากไม่มีอัลกอริทึมคุณก็จะไม่มีโทรศัพท์หรือคอมพิวเตอร์และคุณอาจกำลังอ่านบทความนี้บนกระดาษ (อันที่จริงคุณจะไม่ได้อ่านเลย)
แต่ประชาชนทั่วไปจะไม่ใช้คำว่า“ อัลกอริทึม” เป็นคำที่ใช้ตรวจจับรหัสคอมพิวเตอร์ ในความเป็นจริงคนส่วนใหญ่คิดว่ามีความแตกต่างระหว่างรหัสคอมพิวเตอร์และอัลกอริทึม แต่ไม่มี เนื่องจากคำว่า“ อัลกอริทึม” เชื่อมโยงกับแมชชีนเลิร์นนิงความหมายของคำนี้จึงกลายเป็นหมอก แต่การใช้งานก็มีความเฉพาะเจาะจงมากขึ้น
คุณควรเริ่มใช้คำว่า "อัลกอริทึม" เพื่ออธิบายโค้ดคอมพิวเตอร์ที่ไม่สำคัญที่สุดหรือไม่ อาจจะไม่เพราะไม่ใช่ทุกคนที่จะเข้าใจความหมายของคุณ ภาษามีการเปลี่ยนแปลงอยู่เสมอและมักจะเปลี่ยนแปลงด้วยเหตุผลที่ดี ผู้คนต้องการคำเพื่ออธิบายโลกของแมชชีนเลิร์นนิงที่สับสนขุ่นมัวและน่าสงสัยในบางครั้งและ "อัลกอริทึม" ก็กลายเป็นคำนั้นในตอนนี้
ดังที่กล่าวไว้คุณควรจำไว้ว่าอัลกอริทึม (และแมชชีนเลิร์นนิง) เป็นส่วนสำคัญของรหัสที่เขียนขึ้นเพื่อแก้ปัญหางาน ไม่มีเล่ห์กลใด ๆ มันเป็นเพียงการทำซ้ำซอฟต์แวร์ที่ซับซ้อนขึ้นซึ่งเราคุ้นเคยอยู่แล้ว
แหล่งที่มา: กระดานชนวน , Wikipedia , GeeksforGeeks