วิชา
Log in | วันศุกร์ที่ 24 ต.ค. 2557
 

คณิตศาสตร์เกี่ยวกับการจับคู่ออนไลน์

โพสโดย TEDEducation
 
กรุณารอสักครู่นะครับ
 

คณิตศาสตร์เกี่ยวกับการจับคู่ออนไลน์

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

ในบทเรียนนี้ ผมจะอธิบายว่า เราออกแบบอัลกอริทึมของเราอย่างไร เพื่อที่ทุกคนจะได้เห็นลักษณะการทำงานของมัน

ทีนี้ ทำไมอัลกอริทึมจึงเป็นสิ่งสำคัญ ทำไมถึงต้องมีบทเรียนนี้

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

เนื่องจากในปัจจุบันนี้ คอมพิวเตอร์กลายเป็นส่วนหนึ่งของชีวิตเรา อัลกอริทึมจึงปรากฏอยู่ในทุกๆที่

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

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

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

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

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

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

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

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

ลองมาดูคำถามข้อที่สองกัน ข้อนี้เหมือนในตัวอย่างที่เรายกไว้ก่อนหน้านี้ ถามว่า “คุณชอบเป็นจุดสนใจของคนอื่นหรือเปล่า?” คำตอบมีแค่ ใช่ หรือ ไม่ใช่ และตัวคุณตอบว่า ไม่ใช่ และอยากจะให้คู่ของคุณตอบว่าไม่ใช่เช่นกัน แต่คำถามนี้ไม่ใช่เรื่องสำคัญสำหรับคุณ ส่วน B เขาตอบว่า ใช่ เขาชอบให้คนสนใจ และเขาอยากให้คู่ของเขาตอบว่า ไม่ใช่ เพื่อที่เขาจะได้เป็นจุดสนใจคนเดียว และคำถามนี้สำคัญสำหรับเขามาก เอาล่ะ เราลองมาคำนวณผลกันดู

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

อะไรที่ไม่จำเป็นเลย เท่ากับศูนย์ สำคัญเล็กน้อย เท่ากับ 1 และค่อนข้างสำคัญเท่ากับ 10 สำคัญมากเท่ากับ 50 ส่วนเรื่องที่จำเป็นและสำคัญที่สุดเท่ากับ 250 คะแนน ต่อไป อัลกอริทึมประกอบด้วยการคำนวณง่ายๆ สองครั้ง

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

ส่วนอัลกอริทึมที่สองก็คือการคำนวณย้อนกลับว่า ในทางตรงกันข้ามคำตอบของคุณทำให้ B พึงพอใจแค่ไหน ในข้อแรก B ให้ความสำคัญเท่ากับ 1 คะแนน และให้คะแนนในข้อสอง 10 คะแนน จากคะแนนเต็ม 11 คะแนน จากหนึ่งบวกสิบ คุณทำได้สิบคะแนนทำให้ได้เปอร์เซ็นต์ความน่าพึงพอใจ 91% ซึ่งก็ไม่เลว

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

ทีนี้ ถ้าคุณสงสัยว่าทำไมอัลกอริทึมจึงใช้การคูณจำนวนทั้งสองเข้าด้วยกัน และทำไมต้องถอดราก โดยทั่วๆไปแล้วสูตรนี้คือสูตรที่เรียกว่า Geomatric Mean G.M. (ค่าเฉลี่ยเรขาคณิต) ซึ่งเป็นวิธีหาค่าเฉลี่ยจากจำนวนที่มีความแตกต่างกันมากๆ หรือมีความหลากหลายมากๆ เช่นเดียวกับที่เรายกตัวอย่างไปแล้วว่า ในการจับคู่นั่นเราใช้ข้อมูลหลายด้าน ไม่ว่าจะเป็นหนังที่ชอบดู การเมือง ศาสนา หรือพูดง่ายๆ คือ เกี่ยวกับทุกๆ อย่าง

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

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

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

บทเรียนโดย คริสเตียน รัดเดอร์

เล่าโดย คริสเตียน รัดเดอร์

อนิเมชั่นโดย TED-Ed

เรื่อง : คณิตศาสตร์เกี่ยวกับการจับคู่ออนไลน์
ชื่อเจ้าของคลิป : TEDEducation
URL : http://www.youtube.com/watch?v=m9PiPlRuy6E
 

คณิตศาสตร์เกี่ยวกับการจับคู่ออนไลน์

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

ในบทเรียนนี้ ผมจะอธิบายว่า เราออกแบบอัลกอริทึมของเราอย่างไร เพื่อที่ทุกคนจะได้เห็นลักษณะการทำงานของมัน

ทีนี้ ทำไมอัลกอริทึมจึงเป็นสิ่งสำคัญ ทำไมถึงต้องมีบทเรียนนี้

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

เนื่องจากในปัจจุบันนี้ คอมพิวเตอร์กลายเป็นส่วนหนึ่งของชีวิตเรา อัลกอริทึมจึงปรากฏอยู่ในทุกๆที่

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

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

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

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

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

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

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

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

ลองมาดูคำถามข้อที่สองกัน ข้อนี้เหมือนในตัวอย่างที่เรายกไว้ก่อนหน้านี้ ถามว่า “คุณชอบเป็นจุดสนใจของคนอื่นหรือเปล่า?” คำตอบมีแค่ ใช่ หรือ ไม่ใช่ และตัวคุณตอบว่า ไม่ใช่ และอยากจะให้คู่ของคุณตอบว่าไม่ใช่เช่นกัน แต่คำถามนี้ไม่ใช่เรื่องสำคัญสำหรับคุณ ส่วน B เขาตอบว่า ใช่ เขาชอบให้คนสนใจ และเขาอยากให้คู่ของเขาตอบว่า ไม่ใช่ เพื่อที่เขาจะได้เป็นจุดสนใจคนเดียว และคำถามนี้สำคัญสำหรับเขามาก เอาล่ะ เราลองมาคำนวณผลกันดู

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

อะไรที่ไม่จำเป็นเลย เท่ากับศูนย์ สำคัญเล็กน้อย เท่ากับ 1 และค่อนข้างสำคัญเท่ากับ 10 สำคัญมากเท่ากับ 50 ส่วนเรื่องที่จำเป็นและสำคัญที่สุดเท่ากับ 250 คะแนน ต่อไป อัลกอริทึมประกอบด้วยการคำนวณง่ายๆ สองครั้ง

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

ส่วนอัลกอริทึมที่สองก็คือการคำนวณย้อนกลับว่า ในทางตรงกันข้ามคำตอบของคุณทำให้ B พึงพอใจแค่ไหน ในข้อแรก B ให้ความสำคัญเท่ากับ 1 คะแนน และให้คะแนนในข้อสอง 10 คะแนน จากคะแนนเต็ม 11 คะแนน จากหนึ่งบวกสิบ คุณทำได้สิบคะแนนทำให้ได้เปอร์เซ็นต์ความน่าพึงพอใจ 91% ซึ่งก็ไม่เลว

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

ทีนี้ ถ้าคุณสงสัยว่าทำไมอัลกอริทึมจึงใช้การคูณจำนวนทั้งสองเข้าด้วยกัน และทำไมต้องถอดราก โดยทั่วๆไปแล้วสูตรนี้คือสูตรที่เรียกว่า Geomatric Mean G.M. (ค่าเฉลี่ยเรขาคณิต) ซึ่งเป็นวิธีหาค่าเฉลี่ยจากจำนวนที่มีความแตกต่างกันมากๆ หรือมีความหลากหลายมากๆ เช่นเดียวกับที่เรายกตัวอย่างไปแล้วว่า ในการจับคู่นั่นเราใช้ข้อมูลหลายด้าน ไม่ว่าจะเป็นหนังที่ชอบดู การเมือง ศาสนา หรือพูดง่ายๆ คือ เกี่ยวกับทุกๆ อย่าง

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

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

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

บทเรียนโดย คริสเตียน รัดเดอร์

เล่าโดย คริสเตียน รัดเดอร์

อนิเมชั่นโดย TED-Ed

 
วิดีโอที่เกี่ยวข้องจาก
 
แบ่งปันให้เพื่อน
อีเมล์เพื่อน (แยกแต่ละอีเมล์ด้วย semi-colon ;)
ส่ิิงโดย
ข้อความ
 
 
   
 ระดับปฐมวัย
 ระดับประถมและมัธยมศึกษา