เรียน ทุกท่าน! ตามที่เราสัญญาไว้ในครั้งที่แล้ว โปรดปฏิบัติตามบันทึกที่เป็นประโยชน์ (เราหวังว่า) เกี่ยวกับวิธีประเมินผลซอฟต์แวร์การจดจำใบหน้า ในนามของทีมวิศวกรรมซอฟต์แวร์ และทีมวิจัยเทคโนโลยีที่ใช้ในการระบุตัวตนของเรา
บทนำ
การจดจำใบหน้าของโครงข่ายประสาทเทียมได้รับความสนใจอย่างมากจากธุรกิจ และรัฐบาลเมื่อไม่นานมานี้เนื่องจากมีข้อได้เปรียบมากมายที่สามารถมองเห็นได้ชัดเจน พวกเราที่ NtechLab ได้รับการสอบถาม คำขอร้องให้ทำการทดสอบ และโครงการนำร่องอย่างต่อเนื่องด้วยการใช้เทคโนโลยีล่าสุด และเทคนิคด้านการจดจำ
การเปรียบเทียบอัลกอริทึมของซอฟต์แวร์จดจำใบหน้าอาจเป็นกระบวนการที่ยุ่งยาก และมีข้อผิดพลาดที่อาจเกิดขึ้นได้มากมาย เราพบว่าบางครั้งผู้คนมีปัญหาในการแปลเป้าหมาย และแนวคิดของตนไปเป็นข้อกำหนดของซอฟต์แวร์ ซึ่งส่งผลทำให้เลือกเครื่องมือที่ไม่เหมาะสมสำหรับงานที่มีอยู่ และสูญเสียผลประโยชน์ที่อาจเกิดขึ้น
เราตัดสินใจที่จะเผยแพร่บันทึกช่วยจำนี้เพื่อช่วยให้ผู้คนมีความคุ้นเคยกับภาษาต่าง ๆ มากขึ้น และตัวเลขที่ยังไม่ผ่านการประมวลผลในวิธีการ และเทคนิคของเทคโนโลยีการจดจำใบหน้าที่แม่นยำ เป้าหมายของเรา คือ การอธิบายแนวคิดหลักของความชำนาญในด้านนี้ด้วยวิธีที่เรียบง่าย และกระชับ และเพื่อสร้างสะพานเชื่อมต่อกันระหว่างความคิดเชิงธุรกิจ และทางเทคนิคเข้าด้วยกันซึ่งท้ายที่สุดแล้วจะส่งผลให้มีการตัดสินใจที่ผลักดันให้เกิดข้อมูลที่มีคุณภาพมากขึ้น และมีความเข้าใจที่ถูกต้องเกี่ยวกับซอฟต์แวร์การจดจำใบหน้าในโลกของการนำไปใช้งานจริง
การทำงานของเทคโนโลยีการจดจำใบหน้า
คำว่า «การจดจำใบหน้า» อาจรวมถึงงานที่ไม่ปะติดปะต่อกันหลายอย่าง เช่น การตรวจจับใบหน้ามนุษย์ในภาพถ่าย หรือการสตรีมมิ่งวิดีโอ การจดจำเพศ การประเมินอายุ และการระบุบุคคลหนึ่งคนจากหลาย ๆ ภาพถ่าย รวมถึงการยืนยันว่ารูปภาพทั้งสองนั้นเป็นของบุคคลเดียวกันหรือไม่ ในบันทึกล่าสุดนี้ เราจะมุ่งเน้นไปที่สองงานหลังโดยอ้างอิงไปยังงานเหล่านี้ว่าเป็นการระบุ และยืนยัน ตามลำดับ
วิธีหนึ่งที่ใช้กันทั่วไปในการแก้ไขปัญหาเหล่านี้คือการดึงคำอธิบายที่สร้างขึ้นมาเป็นพิเศษซึ่งมักเรียกว่าเวกเตอร์คุณลักษณะออกจากภาพใบหน้า การระบุตัวตนสามารถลดลงไปเป็นการค้นหาที่เรียกว่า “คนที่อยู่ใกล้ที่สุด” และการตรวจสอบสามารถทำได้โดยใช้กฎการตัดสินใจง่าย ๆ ร่วมกัน ทั้งสองสามารถระบุบุคคลในภาพถ่าย หรือกำหนดได้ว่าบุคคลนั้นอยู่ในชุดของภาพถ่ายที่เตรียมเอาไว้หรือไม่ ขั้นตอนดังกล่าวเรียกว่า «การระบุตัวตนแบบเซตเปิด» (รูปที่ 1)
ในการวัดความคล้ายคลึงกันระหว่างใบหน้าทั้งสอง เราสามารถใช้ฟังก์ชั่นของระยะทางในพื้นที่เวกเตอร์ของคุณลักษณะได้ ระยะทางแบบยุคลิด หรือระยะทางปกติระหว่างจุดสองจุดในแนวเส้นตรง และโคไซน์ หรือความยาวด้านตรงข้ามมุมฉากเป็น 2 ฟังก์ชั่นที่ใช้กันมากที่สุด นอกจากนี้ยังมีวิธีการอื่น ๆ อีกมากมายที่มีความซับซ้อนแตกต่างกันไป โดยปกติแล้ว ฟังก์ชั่นระยะทางที่ระบุไว้จะจัดส่งข้อมูลให้โดยเป็นส่วนหนึ่งของซอฟต์แวร์การจดจำใบหน้า แนวทางในการระบุ และยืนยันงานแตกต่างกันไปในแง่ของผลลัพธ์ที่คาดหวังไว้ และมีการใช้ตัวชี้วัดประสิทธิภาพที่แตกต่างกันเพื่อทำการประเมินอัลกอริธึมด้านการจดจำใบหน้า รายละเอียดของตัวชี้วัด และความหมายเชิงปฏิบัติมีอยู่ในส่วนเพิ่มเติม นอกจากเมตริกแล้ว ชุดข้อมูลยังจำเป็นจะต้องมีป้ายกำกับอย่างเหมาะสมอีกด้วย

การประเมิน
ชุดข้อมูล
วิธีการจดจำใบหน้าสมัยใหม่แทบจะเกือบทั้งหมดใช้การเรียนรู้ของเครื่อง (หรือการเรียนรู้เชิงลึก) อย่างหนักไปตลอดทั้งกระบวนการ ระบบเหล่านี้ได้รับการฝึกอบรมเกี่ยวกับชุดข้อมูลขนาดใหญ่ของภาพถ่ายที่มีป้ายกำกับ และคุณภาพ และลักษณะของชุดข้อมูลมีอิทธิพลอย่างมากต่อประสิทธิภาพของอัลกอริทึม ยิ่งแหล่งข้อมูลมีคุณภาพดีขึ้นมากแค่ไหน ซอฟต์แวร์ก็จะยิ่งทำงานได้ตรงกับความต้องการมากขึ้นเท่านั้น
วิธีปกติของการวิจัย และวัดเชิงปริมาณว่าอัลกอริธึมต่าง ๆ สำหรับการจดจำใบหน้าตรงตามความคาดหวังหรือไม่ และแม่นยำมากแค่ไหนนั้นจะถูกนำไปทดสอบกับชุดข้อมูลที่เก็บเอาไว้เป็นความลับ การเลือกชุดข้อมูลที่เหมาะสมสำหรับการทดสอบเป็นสิ่งสำคัญ ตามหลักการแล้ว คุณจะต้องมีชุดข้อมูลแยกต่างหากสำหรับวัตถุประสงค์ในการทดสอบซึ่งควรจะต้องมีความใกล้เคียงกับสถานการณ์ที่นำไปใช้งานให้มากที่สุด
นั่นหมายถึงพยายามจำลองประเภทของกล้อง สภาวะของการถ่ายทำ อายุ เพศของบุคคลที่ปรากฏอยู่ในชุดข้อมูลของการทดสอบ การใช้ชุดข้อมูลที่คล้ายกับข้อมูลที่ซอฟต์แวร์จะทำการประมวลผลจริง ๆ นั้นจะทำให้ผลการทดสอบมีความน่าเชื่อถือมากขึ้น เป็นความคิดที่ดีที่จะลงทุนเวลา และเงินเพื่อรวบรวม และติดป้ายกำกับชุดข้อมูลที่ใกล้เคียงกับปัญหาทางธุรกิจมากที่สุด แต่บางกรณีที่ไม่สามารถทำได้เนื่องจากจะต้องใช้ชุดข้อมูลสาธารณะจากใบหน้าของผู้คน
เกณฑ์เปรียบเทียบสมรรถนะในการจดจำใบหน้าของประชาชนทั่วไป ได้แก่ LFW และ MegaFace ชุดข้อมูล LFW มีใบหน้าเพียง 6,000 คู่ ซึ่งทำให้ไม่เหมาะกับการใช้งานจริงจำนวนมาก: คุณไม่สามารถใช้มันเพื่อวัดความผิดพลาดได้อย่างสมเหตุสมผลซึ่งเราจะแสดงตัวอย่างไว้ในส่วนเพิ่มเติม ชุดข้อมูลของ MegaFace มีภาพถ่ายมากกว่า และเหมาะสำหรับการทดสอบแอปพลิเคชั่นการจดจำใบหน้าตามขนาดที่กำหนดไว้ ทั้งส่วนการฝึกอบรม และการทดสอบของชุดข้อมูลนี้สามารถใช้งานได้ฟรี ดังนั้นจึงต้องระมัดระวังเป็นพิเศษในขณะที่กำลังใช้งานเพื่อทำการทดสอบเนื่องจากเหตุผลดังที่เราจะกล่าวถึงกันในหัวข้อถัดไป
อีกทางเลือกหนึ่ง คือ ใช้ผลการทดสอบที่ได้รับจากบุคคลที่สามซึ่งสามารถเชื่อถือได้ การทดสอบเหล่านี้ดำเนินการโดยบุคลากรที่มีทักษะในชุดข้อมูลส่วนตัว ดังนั้นจึงสามารถเชื่อถือคุณภาพของชุดข้อมูลได้ ตัวอย่างหนึ่ง คือ Face Recognition Vendor Test (FRVT) ของ ตัวอย่างหนึ่งคือ NIST ที่กำลังดำเนินการอยู่ (ข้อเสียของวิธีนี้คือชุดข้อมูลของผู้ทดสอบอาจไม่ตรงกับสถานการณ์การใช้งานของคุณอย่างใกล้ชิด)ที่กำลังดำเนินการอยู่ (ข้อเสียของวิธีนี้คือชุดข้อมูลของผู้ทดสอบอาจไม่ตรงกับสถานการณ์ในการใช้งานของคุณมากนัก)
ข้อผิดพลาด (Overfitting)
ดังที่เราได้กล่าวไปแล้วว่าการเรียนรู้ข้อมูลของเครื่อง และคอมพิวเตอร์วิทัศน์นั้นเป็นองค์ประกอบหลักของเทคนิคการตรวจจับใบหน้า และวิธีการจดจำใบหน้าสมัยใหม่ สิ่งที่เกิดขึ้นโดยทั่วไป (และเป็นสิ่งที่น่าเศร้า) อย่างหนึ่งที่เกี่ยวข้องกับการเรียนรู้ข้อมูลของเครื่องที่เรียกว่า «overfitting» ซึ่งเป็นสิ่งที่เกิดขึ้นเมื่อซอฟต์แวร์ทำงานได้ดีกับข้อมูลที่ได้รับการฝึกฝนแต่มีข้อเสียเปรียบเมื่อเปรียบเทียบกับชุดข้อมูลใหม่
เพื่ออธิบายแนวคิดนี้ด้วยตัวอย่างที่เป็นรูปธรรม: เราขอสมมติว่าลูกค้าต้องการระบบที่เปิดประตูให้กับบางคนเท่านั้นด้วยการตรวจสอบใบหน้าของบุคคลเหล่านั้น และด้วยจุดประสงค์นี้ ลูกค้าได้รวบรวมภาพถ่ายของบุคคลที่สามารถเดินเข้าประตูได้ จากนั้นจึงฝึกให้อัลกอริทึมทำการแยกแยะบุคคลเหล่านี้ออกจากคนอื่น ๆ เมื่อการทดสอบในด้านนี้เป็นไปได้ด้วยดี และนำระบบไปใช้ในการผลิตแล้ว ทำให้สามารถประหยัดเงินได้จากการทำจุดเข้า-ออกเปิดได้แบบอัตโนมัติอย่างปลอดภัย แล้วยังสามารถนำเงินไปลงทุนในวัตถุประสงค์ทางธุรกิจอื่น ๆ ได้อีกด้วย
ทันใดนั้น ระบบไม่สามารถมอบสิทธิ์ให้พนักงานใหม่เข้า-ออกประตูได้ ซอฟต์แวร์ได้เรียนรู้ที่จะทำความรู้จักใบหน้าของพนักงานเก่าแต่ไม่มีใครทดสอบกับข้อมูลใหม่ นี่เป็นตัวอย่างของข้อผิดพลาดที่ฟังดูเกินจริ แต่ตัวอย่างนี้ยังสามารถอธิบายแนวคิดนี้ได้เป็นอย่างดี
วิธีการตรวจจับข้อผิดพลาดนั้นไม่ง่ายนัก มันพิจารณาจากกรณีที่ซอฟต์แวร์จดจำใบหน้าได้รับการฝึกฝนในชุดข้อมูลซึ่งประกอบด้วยคนส่วนใหญ่ที่มีเชื้อชาติเดียวกัน เมื่อมีการใช้ซอฟต์แวร์ที่มีข้อมูลทางชีวภาพระหว่างประเทศมักจะทำให้ความแม่นยำในการจดจำใบหน้าของระบบลดลง สิ่งที่พบได้บ่อยในตัวอย่างเหล่านี้คือการประเมินความสามารถของซอฟต์แวร์สูงเกินไปเนื่องจากใช้การทดสอบที่ไม่เหมาะสม ข้อบกพร่องด้านประสิทธิภาพหลักอยู่ในข้อมูลที่ได้รับการฝึกอบรม ไม่ใช่ข้อมูลที่จะพบในโลกที่ใช้งานจริง
แล้วเราจะหลีกเลี่ยงสถานการณ์เหล่านี้ได้อย่างไร ประเด็นสำคัญ: อย่าใช้ชุดข้อมูลการฝึกอบรมซอฟต์แวร์เพื่อการทดสอบ วิธีที่ปลอดภัยที่สุด และรวดเร็วที่สุดในการทำวิจัย คือ การมีชุดข้อมูลการทดสอบที่เก็บรักษาไว้ไม่ให้ผู้จำหน่ายซอฟต์แวร์มองเห็น หากคุณกำลังจะทดสอบชุดข้อมูลสาธารณะ ตรวจสอบให้แน่ใจว่าผู้จำหน่ายไม่ได้ใช้มันในระหว่างการฝึกอบรม และการสอบเทียบระบบ ถามพวกเขาว่าพวกเขาใช้แหล่งข้อมูลใดมาใช้ในการฝึกอบรม จากนั้นเลือกชุดข้อมูลที่ไม่ปรากฏอยู่ในรายการการจัดอันดับ ดูชุดข้อมูลก่อนทำการการทดสอบ และพิจารณาความคล้ายคลึงกันกับข้อมูลที่ซอฟต์แวร์จะพบในขั้นตอนการผลิต
ตัวชี้วัด
เมื่อเลือกชุดข้อมูลของการทดสอบแล้ว ควรพิจารณาเลือกตัวชี้วัดการทดสอบที่เหมาะสม ตัวชี้วัดเป็นฟังก์ชั่นการทำงานที่ใช้งานได้สะดวกซึ่งใช้ผลลัพธ์ที่ได้จากซอฟต์แวร์ (ทั้งการระบุตัวตน หรือการตรวจสอบความถูกต้อง) มาสร้างตัวเลขเดียวที่ใช้เป็นการวัดประสิทธิภาพของระบบโดยรวมเกี่ยวกับชุดข้อมูลที่ได้ระบุไว้ ตัวเลขเดียวช่วยให้ผู้มีอำนาจสามารถตัดสินใจเปรียบเทียบผู้จำหน่ายในเชิงปริมาณได้ง่ายขึ้น และนำเสนอผลการทดสอบที่สั้นกระชับ ในส่วนนี้ เราจะพูดถึงตัวชี้วัดที่ใช้กันทั่วไปในการจดจำใบหน้า และผลที่ตามมาทางธุรกิจ
การตรวจสอบ
การยืนยันใบหน้าสามารถเข้าใจได้ว่าเป็นการตัดสินใจที่มีทางเลือกสองทาง คือ: ใช่ ภาพสองภาพเป็นบุคคลเดียวกัน หรือไม่ใช่ ภาพทั้งสองไม่ตรงกัน การใช้เวลาศึกษาแหล่งที่มาของข้อผิดพลาดในกรณีต่าง ๆ จะมีประโยชน์ต่อการทำความเข้าใจตัวชี้วัดที่ใช้สำหรับการตรวจสอบ
เมื่อพิจารณาจากการคาดการณ์ที่มีสองทางเลือกระหว่าง «ยอมรับ» หรือ «ปฏิเสธ» ของซอฟต์แวร์ และผลลัพธ์ที่แท้จริงจากสองทางเลือก «ยอมรับ» หรือ «ปฏิเสธ» นี้จะสามารถมองเห็นได้ง่าย ๆ ว่าทางเลือกจะมีทั้งหมด 4 ผลลัพธ์ที่อาจเป็นไปได้:

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

เมื่อเราบวกจำนวนข้อผิดพลาดในชุดข้อมูล และหารด้วยขนาดชุดข้อมูล เราจะได้อัตราการยอมรับผิดพลาด (FAR) และอัตราการปฏิเสธผิดพลาด (FRR) ในสถานการณ์ด้านความปลอดภัย «ผลบวกเป็นเท็จ» สอดคล้องกับการปล่อยให้คนผิดเข้า ในขณะที่ «ผลลบเป็นเท็จ» หมายความว่าคุณปฏิเสธไม่ให้บุคคลที่ได้รับอนุญาตเข้า ข้อผิดพลาดเหล่านี้มีความแตกต่างกันเนื่องจากแต่ละรายการมีค่าใช้จ่ายทางธุรกิจที่เกี่ยวข้องกัน ลองย้อนกลับไปที่ตัวอย่างการรักษาความปลอดภัย ข้อผิดพลาดของผลลบเป็นเท็จอาจต้องการให้เจ้าหน้าที่รักษาความปลอดภัยตรวจสอบรหัสประจำตัวของพนักงานอีกครั้ง การปล่อยให้ผู้บุกรุกที่ประสงค์ร้ายเข้ามาอาจนำไปสู่ผลลัพธ์ที่เลวร้ายยิ่งกว่า
เนื่องจากต้นทุนของข้อผิดพลาดนั้นแตกต่างกันไปตามการใช้งาน และกรณีใช้งาน ผู้จำหน่ายซอฟต์แวร์ด้านการจดจำใบหน้ามักจะให้วิธีที่รวดเร็วที่สุดในการปรับอัลกอริธึมเพื่อลดข้อผิดพลาดบางประเภทให้เหลือน้อยที่สุด เพื่อให้บรรลุสิ่งนี้ อัลกอริธึมอาจแสดงผลค่าต่อเนื่องซึ่งสะท้อนให้เห็นถึงความมั่นใจแทนที่จะใช้การตัดสินใจแบบ 2 ตัวเลือก (เลขฐานสอง) คือ ใช่ หรือไม่ใช่ ผู้ใช้สามารถสร้างเกณฑ์เพื่อลดอัตราความผิดพลาดบางอย่างได้ ค่านี้อาจเรียกว่าความเชื่อมั่น ความคล้ายคลึง หรือความแน่นอน แต่เราจะเรียกค่านี้ว่าเป็นค่าความเชื่อมั่นในเอกสารนี้
เพื่ออธิบายแนวคิดนี้ โปรดพิจารณาชุดข้อมูลขนาดเล็ก 3 ภาพ ภาพที่ 1 และ 2 เป็นบุคคลเดียวกัน ขณะที่ภาพที่ 3 เป็นภาพของบุคคลอื่น ให้ซอฟต์แวร์แสดงค่าความเชื่อมั่นต่อไปนี้สำหรับแต่ละคู่ที่เป็นไปได้ 3 คู่:

เราได้เลือกค่าที่ไม่สามารถหาคู่ทั้งหมดได้อย่างถูกต้องด้วยหลักเกณฑ์ต่าง ๆ การเลือกขีดจำกัดใด ๆ ที่ต่ำกว่า 0.6 จะส่งผลให้มีการยอมรับค่าผิดสองครั้ง (อันหนึ่งสำหรับคู่ที่ 2−3 อีกอันหนึ่งสำหรับคู่ที่ 1−3) เห็นได้ชัดเจนว่าเราสามารถทำได้ดีกว่านั้น
การเลือกค่าใด ๆ ระหว่าง 0.6 ถึง 0.85 จะตัดคู่ 1−3 ว่าเป็นการปฏิเสธจริง โดยให้ 1−2 เป็นการยอมรับจริง และ 2−3 เป็นการยอมรับที่ผิดพลาด ช่วงของ 0.85−0.9 จะเปลี่ยน 1−2 เป็นการปฏิเสธที่ผิดพลาด หลักเกณฑ์ที่สูงกว่า 0.9 จะส่งผลให้เกิดการปฏิเสธจริงสองครั้ง (1−3 และ 2−3) และการปฏิเสธที่ผิดพลาดหนึ่งครั้ง (1−2) ดังนั้น ค่าขีดจำกัดที่น่าสนใจที่สุดสองค่า คือ 0.6−0.85 ซึ่งส่งผลให้มีการยอมรับที่ผิดพลาด (2−3) และขีดจำกัดที่สูงกว่า 0.9 (ซึ่งส่งผลให้เกิดการปฏิเสธคู่ที่ 1−2) ที่ผิดพลาด ตัวอย่างนี้ควรแสดงให้เห็นว่าลูกค้าสามารถวัดความเสี่ยงของตนโดยขึ้นอยู่กับต้นทุนของข้อผิดพลาดแต่ละรายการได้อย่างไร และลดความผิดพลาดให้เหลือน้อยที่สุดโดยทำการเลือกหลักเกณฑ์ที่เหมาะสม ช่วงสำหรับหลักเกณฑ์นี้จะค่อนข้างหละหลวมสักเล็กน้อยสำหรับกรณีนี้โดยเฉพาะเนื่องจากชุดข้อมูลมีขนาดเล็กมาก และค่าความแน่นอนจะถูกเลือกคำนวณด้วยวิธีนี้ สำหรับชุดข้อมูลที่ใหญ่กว่าในโลกแห่งความเป็นจริง เราสามารถค้นหาขอบเขตที่เข้มงวดกว่ามากบนหลักเกณฑ์สำหรับอัตราการยอมรับ หรือปฏิเสธความสนใจ ผู้จำหน่ายมักจะให้ค่าเริ่มต้นบางอย่างสำหรับขีดจำกัดที่ FAR คงที่บางค่า และค่าเหล่านี้จะได้รับการคำนวณล่วงหน้าในลักษณะเดียวกับที่เราได้อธิบายไว้ข้างต้น
ข้อดีอย่างหนึ่งในการลดความสนใจของ FAR คือ การเพิ่มจำนวนคู่ของรูปภาพที่เป็นบวกซึ่งจำเป็นสำหรับการวัดเกณฑ์ที่แม่นยำ หนึ่งต้องมีอย่างน้อย 1,000 คู่ ในการวัด FAR=0.001 และ FAR=10−6 จะต้องมีมากกว่า 1 ล้านคู่ การรวบรวมชุดข้อมูลขนาดนี้เป็นเรื่องที่ท้าทาย ดังนั้นลูกค้าที่สนใจ FAR ที่ต่ำมากอาจพิจารณาตามหลักเกณฑ์มาตรฐานสาธารณะ เช่น Face Recognition Vendor Test (FRVT) หรือ MegaFace ของ NIST อย่าลืมดูแลชุดข้อมูลเหล่านี้ด้วยความระมัดระวัง เนื่องจากชุดข้อมูลการฝึกอบรม และการทดสอบมีให้ใช้กันอย่างอิสระซึ่งมีแนวโน้มว่าจะใช้ชุดข้อมูลนี้กันมากเกินไป (ดูส่วนที่เกี่ยวข้อง)
เส้นโค้ง ROC
ประเภทข้อผิดพลาดแตกต่างกันในแง่ของต้นทุน และลูกค้ามีวิธีควบคุมการตัดสินใจเลือกอย่างใดอย่างหนึ่งระหว่างประเภทของข้อผิดพลาด ควบคุมการตัดสินใจเลือกอย่างใดอย่างหนึ่งระหว่างประเภทของข้อผิดพลาด เราต้องศึกษาช่วงของค่าขีดจำกัด นี่อาจเป็นเรื่องที่น่าเบื่อ หนึ่งในกลไกที่มีประโยชน์ซึ่งเกี่ยวข้องกับการแสดงภาพประสิทธิภาพของอัลกอริธึมผ่านค่า FAR ที่แตกต่างกันจำนวนหนึ่งเรียกว่าเส้นโค้ง ROC (receiver operating characteristic)
เรามาดูกันว่าจะสามารถคำนวณ และวิเคราะห์กราฟ ROC ได้อย่างไร ค่าความเชื่อมั่น (และด้วยเหตุนี้ และหลักเกณฑ์นี้) สามารถรับค่าได้หลายค่าในช่วงเวลาที่กำหนด พูดได้อีกอย่างหนึ่ง คือ ถูกล้อมรอบจากด้านบน และด้านล่าง สมมติว่าช่วงเวลานี้คือ 0−1 ตอนนี้ เราสามารถดำเนินการประเมินได้หลายอย่างด้วยค่าขีดจำกัดที่แตกต่างกัน โดยเริ่มต้นที่ 0 และเพิ่มขีดจำกัดด้วยจำนวนคงที่บางค่าจนกว่าจะเท่ากับ 1 สำหรับแต่ละค่าเกณฑ์ เราจะบันทึก FAR และอัตราการยอมรับจริง (TAR) (อาจใช้เช่น FAR และ FRR) จากนั้นเรากำหนดแต่ละจุดเพื่อให้ FAR สอดคล้องกับพิกัด X และ TAR สอดคล้องกับพิกัด Y

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

รูปที่ 4 เส้นโค้งที่เหมือน ROC จากการจัดอันดับการทดสอบผู้จำหน่ายระบบการจดจำใบหน้าของ NIST
หนึ่งยังสามารถคำนวณ และกำหนดเส้นโค้งที่เหมือน ROC ด้วยตัวชี้วัด/ข้อผิดพลาดที่แตกต่างกันบนแกน ตัวอย่างเช่น ลองพิจารณารูปที่ 4 นี่คือผู้จัดงานของ FRVT ของ NIST ซึ่งได้เลือกกำหนดอัตราที่ไม่ตรงกันแบบเป็นเท็จ (FRR) เป็นฟังก์ชั่นของอัตราการจับคู่เท็จ (FAR) ในกรณีนี้ เส้นโค้งที่มีประสิทธิภาพดีที่สุดจะอยู่ทางซ้ายล่าง และชิดซ้ายมากขึ้นซึ่งสอดคล้องกับ FRR และ FAR ที่ต่ำกว่า รูปแบบดังกล่าวไม่ควรทำให้ผู้อ่านสับสนซึ่งคุ้นเคยกับประเภทข้อผิดพลาด เพียงใช้เวลาสักครู่เพื่ออ่าน และทำความเข้าใจกับชื่อแกน
การกำหนดนี้ทำให้ง่ายต่อการดูว่าอัลกอริธึมทำงานได้ดีเพียงใดที่ FAR ที่เลือก เพียงแค่ต้องหาจุดที่ตรงกันบนเส้นโค้ง และค่า TAR ที่สอดคล้องกัน นอกจากนี้ยังมีวิธีแสดง “ความดี” ของเส้นโค้ง ROC ด้วยตัวเลขเดียว เพียงแค่คำนวณพื้นที่ใต้เส้นโค้งที่มีค่าที่ดีที่สุดคือ 1 และสุ่มเดาที่ตรงกับ 0.5 หมายเลขนี้เรียกว่า AUC (พื้นที่ใต้เส้นโค้ง) ของเส้นโค้ง ROC เราควรสังเกตว่า AUC ของ ROC ด้วยการตั้งสมมติฐานโดยปริยายว่าข้อผิดพลาดประเภทต่าง ๆ มีค่าใช้จ่ายเท่ากันซึ่งไม่ถือว่าเป็นความจริงในการใช้งานจริง เราควรศึกษารูปร่างของเส้นโค้งมากกว่าโดยให้ความสนใจเป็นพิเศษกับค่า FAR ที่ตรงกับความต้องการของธุรกิจ
การยืนยันตัวตน
งานอื่นที่เกี่ยวข้องกับวิธีการจดจำ คือ การระบุตัวตน ซึ่งโดยพื้นฐานแล้วจะพยายามค้นหาบุคคลที่เฉพาะเจาะจงจากภาพใบหน้าจำนวนหนึ่ง ผลลัพธ์จะถูกจัดเรียงตามค่าความเชื่อมั่นโดยมีรายการที่อัลกอริธึมมั่นใจมากที่สุดว่าจะปรากฏอยู่ที่ด้านบนสุด ขึ้นอยู่กับว่าทราบหรือไม่ว่าบุคคลเป้าหมายอยู่ในชุด การระบุสามารถแบ่งออกเป็นสองประเภทย่อย: การระบุชุดปิด (บุคคลที่อยู่ในชุดนี้) และการระบุชุดเปิด (บุคคลนั้นอาจอยู่ในชุดนี้หรือไม่ก็ได้)
ตัวชี้วัดที่เชื่อถือได้ และตีความหมายได้สำหรับการวัดการระบุชุดปิดมีความแม่นยำ สรุปว่าสความแม่นยำจะวัดจำนวนครั้งโดยเฉลี่ยของบุคคลเป้าหมายที่ปรากฏขึ้นในผลการค้นหา
มาดูกันว่ามันทำงานอย่างไรในแง่ของแนวทางปฏิบัติ ตามปกติ เราจะเริ่มต้นด้วยการระบุข้อกำหนดทางธุรกิจ ลองจินตนาการว่าเรามีหน้าเว็บไซต์ที่สามารถแสดงผลการค้นหาได้มากถึง 10 รายการ ดังนั้น เราควรวัดจำนวนครั้งที่พบบุคคลที่ถูกต้องในผลการค้นหาจากสิบอันดับแรก นี่เรียกว่าความแม่นยำระดับสูงสุด และในกรณีนี้ N เท่ากับ 10
สำหรับตัวอย่างการวิจัยแต่ละครั้ง เราจัดเตรียมรูปภาพเป้าหมายของบุคคลใดบุคคลหนึ่งเพื่อค้นหา และชุดแกลเลอรี่ที่เราจะใช้ค้นหาซึ่งประกอบด้วยรูปภาพอื่นของบุคคลเดียวกันอย่างน้อยหนึ่งภาพ จากนั้นเราจะดึงผลการค้นหาสิบอันดับแรก และตรวจสอบว่าบุคคลเป้าหมายอยู่ในผลการค้นหาหรือไม่ เพื่อให้ได้ค่าความแม่นยำ การทดลองหนึ่งครั้งจะเพิ่มการทดลองที่พบว่าบุคคลนั้นถูกพบ แล้วหารด้วยจำนวนการทดลองทั้งหมด

การระบุตัวตนแบบเปิดประกอบด้วยการดึงภาพที่มีแนวโน้มว่าจะเป็นคนเป้าหมายมากที่สุด จากนั้นจึงตัดสินใจว่าเป็นบุคคลนี้จริงหรือไม่โดยพิจารณาจากค่าความเชื่อมั่น การระบุชุดแบบเปิดสามารถถูกมองว่าเป็นการซ้อนทับของการระบุตัวตน และการตรวจสอบชุดปิด และหารือเกี่ยวกับการประเมินงานตรวจสอบทั้งหมดจะถูกนำมาใช้ที่นี่ เป็นที่ชัดเจนว่าเราสามารถระบุชุดแบบเปิดได้จากการตรวจสอบรูปภาพเป้าหมายกับรูปภาพอื่น ๆ ในชุดการค้นหา เหตุผลที่ผู้คนใช้การระบุตัวตนแบบปิดที่นี่คือประสิทธิภาพ ซอฟต์แวร์จดจำใบหน้าบางตัวมาพร้อมกับอัลกอริธึมการค้นหาที่เร็วที่สุดซึ่งสามารถค้นหาผ่านเวกเตอร์คุณลักษณะนับล้านได้ในหน่วยมิลลิวินาที การตรวจสอบยืนยันที่แตกต่างกันหลาย ๆ ครั้งจะใช้เวลายาวนานกว่า
กรณีศึกษา
เพื่ออธิบายหัวข้อข้างต้น เรามาดูตัวอย่างกันสักสองสามตัวอย่างว่าเราอาจทำการประเมินซอฟต์แวร์การจดจำใบหน้าของมนุษย์สำหรับกรณีการใช้งานจริงได้อย่างไร
ร้านค้าปลีก
พิจารณาร้านค้าปลีกขนาดกลางที่ต้องการปรับปรุงโปรแกรมความภักดี และกำจัดโจรขโมยของภายในร้านด้วยประโยชน์จากระบบที่ใช้ในการระบุตัวตน งานทั้งสองอย่างนี้แทบจะเหมือนกันในแง่ของการจดจำใบหน้าที่แม่นยำ เป้าหมายของโครงการ คือ การตรวจจับตั้งแต่เนิ่น ๆ และการจดจำลูกค้าประจำ หรือโจรขโมยของตามร้านค้า โดยอุดมคติแล้วที่ทางเข้าร้าน โดยการเปรียบเทียบภาพใบหน้า และการรายงานไปยังพนักงานขาย หรือหน่วยรักษาความปลอดภัยตามหากมีความจำเป็นซึ่งจะช่วยทำให้สามารถปรับปรุงการให้บริการได้ด้วยเช่นกัน
สมมติว่ามี 100 คนในรายชื่อลูกค้าประจำ ตัวอย่างนี้สามารถทำให้เห็นการระบุชุดเปิดได้ หลังจากพิจารณาต้นทุนแล้ว ฝ่ายการตลาดตัดสินใจว่าจะยอมรับผู้มาเยือนที่มีข้อมูลไม่ตรงกันกับข้อมูลของลูกค้าประจำทุกวัน สมมติว่าร้านค้ามีผู้มาเยือนโดยเฉลี่ยจำนวน 1,000 คนต่อวัน แต่ละคนจะต้องมีข้อมูลตรงกันกับรายชื่อลูกค้าประจำจำนวน 100 คน FAR ที่จำเป็นสามารถประมาณได้เป็น 1 / (1000 * 100) = 10−5 ซึ่งสอดคล้องกับลูกค้าประมาณหนึ่งรายต่อวันที่จดจำได้ว่าเป็นลูกค้าประจำโดยไม่มีข้อผิดพลาด
เมื่อกำหนดอัตราข้อผิดพลาดแล้ว ควรพิจารณาเลือกชุดข้อมูลที่เหมาะสมสำหรับการทดสอบ แนวทางปฏิบัติที่ดีอย่างหนึ่ง คือ การติดตั้งกล้องในตำแหน่งที่ต้องการ (ผู้จำหน่ายระบบจดจำใบหน้าสามารถช่วยแนะนำอุปกรณ์ และตำแหน่งในการติดตั้งกล้องได้) การจับคู่ธุรกรรมระหว่างผู้ถือบัตรสะสมคะแนนกับภาพถ่ายบนกล้อง และกลั่นกรองผลลัพธ์ด้วยแรงงานคน พนักงานของร้านจะสามารถสร้างชุดข้อมูลเป็นคู่ที่ให้ผลลัพธ์เป็นบวกได้ เป็นความคิดที่ดีที่จะสุ่มเพิ่มรูปภาพผู้มาเยือนเข้าไปในระบบจำนวนหนึ่ง (หนึ่งภาพต่อหนึ่งคน) จำนวนรูปภาพนี้ควรเท่ากับจำนวนผู้มาเยือนร้านค้าโดยเฉลี่ยต่อวัน การรวมภาพลูกค้าประจำกับภาพของผู้มาเยือนที่ไม่ประจำจะทำให้สามารถสร้างชุดข้อมูลทดสอบได้ทั้งคู่บวก และคู่ลบ
คู่ผลบวกหนึ่งพันคู่ก็น่าจะเพียงพอแล้วสำหรับอัตราการตรวจจับที่ต้องการ คู่ผลลบสามารถเกิดขึ้นได้จากการรวมลูกค้าประจำที่แตกต่างกัน และผู้มาเยือนที่ไม่ประจำ วิธีนี้จะได้รับคู่ผลลบมากถึง 100,000 คู่ได้อย่างง่ายดาย
ขั้นตอนต่อไป คือ การใช้ (หรือขอให้ผู้จำหน่ายใช้) ซอฟต์แวร์จดจำใบหน้า และรับคะแนนความเชื่อมั่นระหว่างคู่ของภาพถ่ายทั้งหมดในชุดข้อมูล เมื่อพร้อมแล้ว คุณสามารถวาดกราฟ ROC เพื่อให้แน่ใจว่าจำนวนลูกค้าประจำที่ระบบสามารถจดจำได้อย่างถูกต้อง (TAR) ที่ FAR=10−5 เป็นไปตามเป้าหมายธุรกิจของคุณ
ประตูอิเล็กทรอนิกส์ที่สนามบิน
สนามบินสมัยใหม่ให้บริการผู้โดยสารหลายสิบล้านคนต่อปีซึ่งหมายความว่ามีคน 300,000 คนจะต้องเดินผ่านจุดควบคุมบัตรประจำตัวทุกวัน การควบคุมการเข้า-ออกอัตโนมัตินี้อาจช่วยประหยัดเงินให้กับสนามบินได้จำนวนมาก (ในทางกลับกัน ค่าใช้จ่ายในการปล่อยให้ผู้บุกรุกเข้า-ออกก็สูงมากเช่นกัน และฝ่ายบริหารของสนามบินจะต้องการลดความเสี่ยงของผลลัพธ์นี้ให้อยู่ในระดับต่ำที่สุดเท่าที่จะเป็นไปได้) FAR ที่ 10^-7 อาจดูสมเหตุสมผลในกรณีนี้ ซึ่งโดยเฉลี่ยแล้วจะส่งผลให้มีผู้บุกรุกจำนวน 10 คนต่อปี สมมติว่าณ ตอนนี้มี FRR=0.1 ซึ่งสอดคล้องกับผลลัพธ์ของ NtechLab ในชุดข้อมูลภาพของวีซ่าที่ FAR นี้ และนี่จะช่วยลดการใช้แรงงานคนในการตรวจสอบรหัสประจำตัวลงไปถึง 10 เท่า
สิ่งนี้เป็นตัวกำหนดความต้องการของชุดข้อมูลจำนวน 10−7 ภาพ แต่น่าเสียดายที่ชุดข้อมูลที่มีขนาดเท่านี้จะมีค่าใช้จ่ายสูงสำหรับการเก็บรวบรวม และติดป้ายกำกับให้กับชุดข้อมูล และอาจทำให้เกิดปัญหาเกี่ยวกับความเป็นส่วนตัวได้ สำหรับบางองค์กรอาจจะต้องลงทุนในโครงการในระยะยาวนานมากจนเกินไป ในกรณีเหล่านี้ องค์กรควรร่วมมือกับหน่วยงานบังคับใช้กฎหมาย หรือหน่วยงานของรัฐอื่น ๆ เพื่อให้ได้ชุดข้อมูลสำหรับการทดสอบ คุณอาจศึกษาจากรายงาน FRVT ของ NIST ซึ่งมีภาพวีซ่ารวมกันเป็นหนึ่งชุดอยู่ในชุดข้อมูลการทดสอบ ผู้บริหารสนามบินควรเลือกผู้จำหน่ายตามการประเมินจากชุดข้อมูลนี้ และจำนวนของผู้โดยสารในสนามบินที่ระบุไว้
การตลาดทางอีเมลไปยังกลุ่มเป้าหมาย
จนถึงตอนนี้ เราได้เห็นตัวอย่างของ FAR ที่มีค่าต่ำซึ่งเป็นข้อกังวลหลักแต่ไม่เพียงแค่นี้ มันยังมีข้อกังวลอีกมาก ให้คุณลองนึกภาพโฆษณาในห้างสรรพสินค้าที่ติดตั้งกล้องวิดีโอ ห้างสรรพสินค้ามีโปรแกรมตอบแทนลูกค้า และต้องการจดจำลูกค้าที่หยุดรับชมโฆษณา และส่งอีเมลไปยังกลุ่มเป้าหมายพร้อมข้อตกลง และข้อเสนอที่ปรับให้เหมาะสมกับแต่ละบุคคลจากสิ่งที่พวกเขาสนใจ
สมมติว่าค่าใช้จ่ายในการบำรุงรักษาระบบนี้คือ $ 10 ต่อวัน และมีลูกค้า 1,000 คนหยุดชมโฆษณาในแต่ละวัน ฝ่ายการตลาดประเมินว่าอีเมลที่ส่งไปยังกลุ่มเป้าหมายดังกล่าวจะอยู่ที่ 0.0105 ดอลลาร์ เราต้องการเข้าถึงลูกค้าเป้าหมายให้ได้มากที่สุดโดยไม่รบกวนลูกค้ารายอื่นมากจนเกินไป เพื่อทำให้ได้ผลลัพธ์จากการโฆษณา การกำหนดเป้าหมายของความแม่นยำควรจะต้องเท่ากับต้นทุนของพื้นที่จัดแสดง จากนั้นหารด้วยจำนวนผู้เดินผ่าน และตัวเลขของอีเมล ตัวอย่างความแม่นยำของเรา = 10 / (1000 * 0.0105) = 95% รับชุดข้อมูลที่คล้ายกับตัวอย่างใน «ร้านค้าปลีก» การวัดความแม่นยำตามที่อธิบายไว้ในส่วน «การระบุ» และพิจารณาจากผลลัพธ์ จากนั้น ตัดสินใจว่าซอฟต์แวร์ที่ได้รับการทดสอบแล้วจะสามารถทำเป้าหมายของธุรกิจให้ประสบความสำเร็จได้หรือไม่
ข้อควรพิจารณาในทางปฏิบัติ
รองรับวีดีโอ
เราได้พูดคุยเกี่ยวกับการประมวลผลภาพใบหน้าโดยไม่เน้นที่การสตรีมมิ่งวิดีโอ สามารถมองว่าวิดีโอเป็นชุดของภาพนิ่งที่ต่อเนื่องกัน ดังนั้นตัวชี้วัด และแนวทางการทดสอบที่ใช้กับภาพนิ่งก็ยังคงสามารถใช้ได้กับวิดีโอด้วยเช่นกัน นอกจากนี้ ควรสังเกตว่าการประมวลผลจากการสตรีมมิ่งวิดีโอมีราคาในการคำนวณแพงกว่ามาก และทำให้มีข้อจำกัดขององค์ประกอบทั้งหมดของกลไกการจดจำใบหน้าเพิ่มขึ้น การตรวจวัดเวลาดำเนินการของอัลกอริธึมในขณะที่จัดการกับวิดีโอ ระยะเวลาดังกล่าวทำได้ง่าย แต่ในเอกสารนี้ไม่ได้ระบุเอาไว้
ข้อผิดพลาดทั่วไป
ในส่วนนี้ เราต้องการแสดงรายการปัญหาทั่วไปที่เกิดขึ้นระหว่างการทดสอบซอฟต์แวร์จดจำใบหน้า และมอบแนวทางในการปรับปรุงปัญหาเหล่านี้
การทดสอบกับชุดข้อมูลที่มีไม่เพียงพอ
เราควรระมัดระวังในการเลือกชุดข้อมูลที่เหมาะสมสำหรับการประเมินผลประโยชน์ที่จะได้รับจากระบบจดจำใบหน้า ประเด็นสำคัญประการหนึ่งที่ต้องพิจารณาคือขนาดของชุดข้อมูล ควรเลือกขนาดของชุดข้อมูลตามเป้าหมายทางธุรกิจ และค่า FAR/TAR ที่เกี่ยวข้อง การลองทดสอบกับชุดข้อมูลเล็ก ๆ จากผู้คนจำนวนหลายคนที่ถูกเก็บรวบรวมจากภายในสำนักงานอาจช่วยทำให้เข้าใจได้ว่าเวลาดำเนินการเปรียบเทียบประสิทธิภาพของซอฟต์แวร์นั้นทำงานอย่างไร หรือทดลองใช้กับกรณีที่ค่อนข้างมีความยุ่งยาก ชุดข้อมูลขนาดเล็กจะไม่ช่วยทำการประเมินความถูกต้องโดยรวมของอัลกอริธึม โปรดใช้ชุดข้อมูลขนาดใหญ่เพื่อประเมินความถูกต้อง
การทดสอบด้วยการใช้เพียงแค่หนึ่งหลักเกณฑ์
บางครั้งผู้คนทดสอบซอฟต์แวร์จดจำใบหน้าด้วยค่าหลักเกณฑ์คงที่หนึ่งค่า (มักจะเป็นค่าเริ่มต้น) และพิจารณาข้อผิดพลาดเพียงแค่ประเภทเดียวเท่านั้น นี่ไม่ใช่วิธีดำเนินการ เนื่องจากค่าเกณฑ์เริ่มต้นจะแตกต่างกันไปตามผู้ขายที่ใช้ FAR หรือ TAR ที่แตกต่างกัน เราต้องพิจารณาตัวชี้วัดทั้งสองเสมอสำหรับค่าหลักเกณฑ์ที่ตั้งไว้
การเปรียบเทียบผลลัพธ์ของชุดข้อมูลที่แตกต่างกัน
ชุดข้อมูลมีความแตกต่างกันมากในแง่ของขนาด คุณภาพ และความซับซ้อน ดังนั้นผลลัพธ์ของซอฟต์แวร์การจดจำใบหน้าของมนุษย์จึงไม่สามารถเปรียบเทียบกันระหว่างชุดข้อมูลได้ การปฏิเสธอัลกอริธึมที่เหนือชั้นกว่ามักจะทำได้ง่ายเนื่องจากได้รับการทดสอบกับชุดข้อมูลที่มีความยาก และซับซ้อนมากกว่าคู่แข่ง
พึ่งพาแค่ชุดข้อมูลเพียงชุดเดียว
เราควรลองทดสอบอัลกอริธึมกับชุดข้อมูลหลายชุด อาจเป็นความคิดที่ดีที่จะทำการประเมินด้วยการใช้ชุดข้อมูลสาธารณะเพียงชุดเดียวเนื่องจากคุณจะแน่ใจไม่ได้ว่าผู้จำหน่ายซอฟต์แวร์จดจำใบหน้าไม่ได้ใช้ชุดข้อมูลนี้สำหรับการฝึก หรือปรับแต่งอัลกอริธึม หากเป็นกรณีนี้ การทดสอบมักจะประเมินความถูกต้องของอัลกอริธึมสูงเกินไป โชคดีที่สามารถหลีกเลี่ยงสถานการณ์นี้ได้ด้วยการเปรียบเทียบประสิทธิภาพระหว่างชุดข้อมูลต่าง ๆ
บทสรุป
ในบันทึกนี้ เราได้กล่าวถึงองค์ประกอบ และกลไกหลักในการประเมินอัลกอริธึมด้านการจดจำใบหน้าโดยสังเขป: ชุดข้อมูล งาน ตัวชี้วัดที่เกี่ยวข้อง และสถานการณ์ทั่วไป
มีเรื่องราวเกิดขึ้นอีกมากมาย และเราควรจัดการกับกรณีที่เกิดขึ้นเพียงครั้งเดียวแต่มีจำนวนมากแยกกัน (ทีม NtechLab ยินดีที่จะช่วยเหลือคุณ) อย่างไรก็ตาม เราเชื่อว่าหลังจากอ่านหมายเหตุเหล่านี้แล้ว ผู้อ่านน่าจะมีความเข้าใจเกี่ยวกับแนวคิดหลัก สามารถวางแผนการทดสอบซอฟต์แวร์ ตีความผลลัพธ์ได้อย่างมีความหมาย รวมถึงวัดข้อดี และข้อเสียของอัลกอริธึมต่าง ๆ เพื่อทำเป้าหมายต่าง ๆ ของธุรกิจประสบความสำเร็จได้