ในช่วงท้ายของโครงการเมื่อปีที่แล้ว ฉันได้เข้าร่วมใน "AI Audit Challenge" ที่ดำเนินการโดย Stanford's Institute for "Human-Centered Artificial Intelligence" ฉันประหลาดใจมากที่ได้รับรางวัลผู้มีศักยภาพสูงสุด! 😮
โพสต์นี้ (เผยแพร่ครั้งแรก "ในบล็อกส่วนตัวของฉัน") สะท้อนถึงประสบการณ์ก่อนหน้าของฉันในการมีส่วนร่วมในการตรวจสอบแบบจำลอง อะไรเป็นแรงบันดาลใจให้ฉันสร้างบางสิ่ง และบทสรุปของสิ่งที่ฉันสร้างขึ้น ซึ่งสะท้อนถึง "สไลด์ที่ฉันนำเสนอ" ทางออนไลน์ เซสชั่นช่วงปลายเดือนมิถุนายน
🏦 การตรวจสอบและการธนาคาร
แม้ว่าแนวคิดในการตรวจสอบ AI อาจยังอยู่ในช่วงเริ่มต้น แต่ระบบการตัดสินใจในการตรวจสอบในธนาคารยังไม่ใช่ ฉันไม่มีความเชี่ยวชาญในหัวข้อนี้ แต่ได้นั่งอยู่ทั้งสองด้านของโต๊ะที่นี่ในช่วงไม่กี่ปีที่ผ่านมา: แบบจำลองใดแบบจำลองหนึ่งที่ได้รับการฝึกอบรมโดยทีมของฉันกำลังได้รับการตรวจสอบ หรือฉันก้าวเข้ามาเพื่อช่วยในการตรวจสอบแบบจำลองที่ได้รับการฝึกอบรม โดยคนอื่น.
ธนาคารมีแนวคิดในการจัดการความเสี่ยงที่รวมเข้ากับโครงสร้างองค์กรของตน เจ้าหน้าที่จะนั่งในทีมต่างๆ ซึ่งจัดเป็น สามบรรทัด แต่ละสายงานมีโครงสร้างการรายงานที่แตกต่างกัน ในลักษณะที่พยายามสร้างกระบวนการที่เหมาะสมเพื่อจัดการความเสี่ยงและความรับผิดชอบในการจัดการกับเงินของผู้คนจำนวนมาก โดยกว้างๆ แนวป้องกันทั้งสามนี้แบ่งออกดังนี้: บรรทัดแรกคือการสร้างการควบคุมและเป็นเจ้าของความเสี่ยงที่เกี่ยวข้อง บรรทัดที่สองตรวจสอบ ช่วยระบุความเสี่ยงใหม่หรือความเสี่ยงที่ไม่ได้รับการบรรเทา และบรรทัดที่สามดำเนินการตรวจสอบอิสระที่ครอบคลุมทั้งหมด งานระหว่างบรรทัดแรกและบรรทัดที่สอง ในกรณีของ AI อาจไม่ใช่เรื่องแปลกที่จะได้ยินว่าแบบจำลองจำเป็นต้องผ่านการตรวจสอบบรรทัดที่สองก่อนที่จะนำไปใช้งาน
🔍 การตรวจสอบ AI
แบบจำลองทางจิตอย่างหนึ่งที่ฉันพบว่ามีประโยชน์เมื่อมีส่วนร่วมในการตรวจสอบก็คือ ความสามารถในการป้องกัน การฝึกอบรมโมเดลจำเป็นต้องมีช่วงการตัดสินใจที่สำคัญ ตั้งแต่การเลือกข้อมูล ประเภทของโมเดล กระบวนการฝึกอบรมและการประเมินผล การตั้งค่าเกณฑ์ ไปจนถึงการใช้งานและติดตามผลลัพธ์ที่โมเดลได้รับ ประเด็นสำคัญของการอภิปรายหลายๆ ประเด็นอยู่ที่ความสามารถในการให้เหตุผล และหากจำเป็น ก็ให้หลักฐานที่พิสูจน์ให้เห็นถึงการตัดสินใจที่เกิดขึ้นระหว่างทาง ความเสี่ยงจะไม่มีวันหมดสิ้นไปโดยสิ้นเชิง แต่ผู้คนควรจะสามารถแสดงให้เห็นว่าพวกเขาเป็นที่รู้จักและ “อยู่ในความอยากอาหาร”
เพื่อเป็นตัวอย่างที่ค่อนข้างง่าย: แบบจำลองการจำแนกประเภทไบนารีอาจได้รับการฝึกอบรมเกี่ยวกับชุดข้อมูลที่มีการแจกแจงป้ายกำกับเชิงบวกและเชิงลบที่กำหนด บางทีข้อมูลนั้นอาจถูกตัดแต่งตามเกณฑ์บางประการ ประเภทของคำถามที่อาจพบ ได้แก่ ทุกวันนี้การแจกแจงดังกล่าวยังคงมีอยู่หรือไม่ เกณฑ์การยกเว้นเหล่านั้นสมเหตุสมผลหรือไม่? และอื่นๆ จากมุมมองดังกล่าว ก็ไม่ต่างจากความเข้มงวดที่คุณคาดหวังในการวิจัยเชิงวิชาการมากนัก
โดยรวมแล้ว ประสบการณ์ในธนาคารมากกว่า 5 ปีได้เปลี่ยนมุมมองของฉันเกี่ยวกับการตรวจสอบและกฎระเบียบ ซึ่งมักจะดึงดูดกระแสตอบรับเชิงลบในโลกเทคโนโลยี เมื่อทำได้ดี ฉันเห็นว่ามันจะนำไปสู่ผลลัพธ์ดีขึ้นมาก: ระบบที่ดีขึ้น สร้างขึ้นให้มีมาตรฐานที่สูงกว่า พร้อมการควบคุมที่แข็งแกร่งยิ่งขึ้นและหลักฐานเชิงปริมาณของสิ่งที่พวกเขาบรรลุผลสำเร็จ อย่างไรก็ตาม กระบวนการนี้ยังห่างไกลจากความสมบูรณ์แบบ การตรวจสอบที่ฉันมีส่วนร่วมต้องใช้ความพยายามอย่างมาก พวกเขาต้องการการวิเคราะห์ การอภิปราย และการตอบคำถามจำนวนมาก และจุดสนใจหลักในท้ายที่สุดจะมุ่งเน้นไปที่เอกสารที่เป็นลายลักษณ์อักษร [1] แทนที่จะเป็นโค้ดหรือแบบจำลอง โดยเฉพาะอย่างยิ่งการตรวจสอบแมชชีนเลิร์นนิงมักจะมีความซับซ้อนเนื่องจากความเชี่ยวชาญที่ไม่สมดุล กล่าวคือ ผู้ที่ได้รับการตรวจสอบอาจมีความเชี่ยวชาญด้านการเรียนรู้ของเครื่องมากกว่าผู้ที่ดำเนินการตรวจสอบ นั่นหมายความว่าการตรวจสอบจะต้องมาพร้อมกับการศึกษาจำนวนมาก ที่แย่ที่สุด ผู้ตรวจสอบจะประเมินแบบจำลองด้วยวิธีที่ไม่สมเหตุสมผลเลย
💡 จะเกิดอะไรขึ้นถ้าโมเดลไม่ใช่ของคุณ?
การตรวจสอบทั้งหมดที่ฉันนึกถึงข้างต้นมีพื้นฐานร่วมกัน: การตรวจสอบแบบจำลองที่ (ก) ได้รับการฝึกอบรมเพื่อวัตถุประสงค์เฉพาะ และ (ข) ควบคุมตั้งแต่ต้นจนจบโดยองค์กรที่ต้องการปรับใช้ บรรลุวัตถุประสงค์เฉพาะ
สมมติฐานทั้งสองนี้ไม่เป็นความจริงอีกต่อไปในยุคของโมเดลพื้นฐานและการเรียนรู้ของเครื่องในรูปแบบบริการ เราถูกทิ้งให้อยู่ในดินแดนที่คลุมเครือ ซึ่งเข้าถึงโมเดลผ่าน API:
- ✅ เร็วขึ้นในการเริ่มต้นและดำเนินการและส่งมอบคุณค่า
- ✅ น่าจะดีกว่าโดยเฉพาะอย่างยิ่งสำหรับปัญหาที่เป็นที่ยอมรับ [2];
- ✅ เปิดโอกาสให้ผู้คนได้ทำงานแก้ไขปัญหาเฉพาะของบริษัท
- ❌ ไม่สามารถประเมินด้วยวิธีดั้งเดิมได้
- ❌ หมายถึงสามารถเปลี่ยนแปลงได้ตลอดเวลา [3] โดยที่เราไม่รู้;
สองประเด็นหลังคือจุดเริ่มต้นสำหรับ "ความท้าทายในการตรวจสอบ AI" ของสแตนฟอร์ด
🤖 บอทตรวจสอบ
สำหรับการส่งความท้าทาย ฉันรวมสองแนวคิดเข้าด้วยกัน:
1️⃣ การ์ดโมเดล เป็นวิธียอดนิยมในการถ่ายภาพสแน็ปช็อตประสิทธิภาพของโมเดลในศูนย์กลางโมเดล เช่น Hugging Face โดยปกติแล้วพวกเขาจะอธิบายโมเดล การใช้งานตามวัตถุประสงค์และข้อจำกัด และข้อมูลเกี่ยวกับการพัฒนาโมเดล – การทดลอง ชุดข้อมูล และการประเมินผล คล้ายกับเอกสารเวอร์ชันย่อที่ทีมจัดทำขึ้นสำหรับการตรวจสอบแบบจำลอง แต่เขียนด้วยตนเอง ซึ่งหมายความว่าจะได้รับการอัปเดตก็ต่อเมื่อมีคนตัดสินใจอัปเดตเท่านั้น
2️⃣ หน้าสถานะระบบเป็นเว็บไซต์ที่ใช้กันอย่างแพร่หลายทั่วโลกเทคโนโลยีเพื่อแสดงสถานะสถานะการออนไลน์ของ API ปรากฏตั้งแต่ "บทช่วยสอนด้านวิศวกรรมแบ็กเอนด์" ไปจนถึงผลิตภัณฑ์อย่าง "incident.io's one"; แม้แต่ Open AI ก็ยังมี "หน้าสถานะ" หน้าที่หลักคือแสดงเมื่อ ระบบ ทำงานไม่ปกติหรือล่ม และเพื่อให้ผู้สนใจสมัครรับข้อมูลอัปเดตได้ อย่างไรก็ตาม ไม่เคยใช้เพื่อติดตามประสิทธิภาพของโมเดล ML ที่อยู่หลัง API เลย มีเพียงความพร้อมใช้งานเท่านั้น
ด้วยการผสมผสานแนวคิดทั้งสองนี้เข้าด้วยกัน ฉันได้สร้างและโอเพ่นซอร์ส "งาน cron" ซึ่งจะสำรวจ API การตรวจจับความรู้สึกของ Google ด้วยรายการชุดทดสอบทั้งหมดของชุดข้อมูลที่เปิดอยู่สัปดาห์ละครั้ง จากนั้นเผยแพร่ผลลัพธ์ในไทม์ไลน์บนเว็บไซต์ ซึ่งเป็นโอเพ่นซอร์สด้วย และถูกปรับใช้บน heroku:
แนวคิดก็คือกลไกประเภทนี้สามารถใช้เพื่อระบุการถดถอยในประสิทธิภาพของแบบจำลองได้โดยอัตโนมัติ และนำมาซึ่งความโปร่งใสเมื่อปรับปรุง ในช่วงหลายเดือนที่ผ่านมา ฉันตรวจสอบ API การตรวจจับความรู้สึกของ Google น่าเสียดายที่ดูเหมือนไม่มีอะไรน่าสนใจอย่างน่าทึ่งเกิดขึ้นในเวลานี้ 😅–แต่ฉันไม่ได้เจาะลึกข้อมูลมากนัก
🔮 ตั้งตารอคอย
Audit Bot เป็นเพียงการพิสูจน์แนวคิดและเป็นต้นแบบเท่านั้น ฉันอาจจะปิดเว็บไซต์เร็วๆ นี้ เพื่อที่ฉันจะได้มีเรื่องให้คิดน้อยลง
การทำสิ่งนี้ให้เกินกว่าแนวคิดเริ่มแรกจะต้องขยายไปสู่ API ประเภทต่างๆ มากมาย และคิดให้มากขึ้นว่าสิ่งนี้จะนำไปใช้และในทางที่ผิดได้อย่างไรในทางปฏิบัติ ท้ายที่สุดแล้ว มันง่ายที่จะเล่นเกม: โมเดลที่อยู่เบื้องหลัง API เหล่านั้นอาจได้รับการฝึกฝนด้วยชุดข้อมูลแบบเปิดเดียวกันเหล่านั้น หรือสามารถแก้ไขได้อย่างง่ายดายเพื่อให้ทราบว่าเมื่อใดที่พวกเขากำลังถูกสอบถามด้วยรายการจากชุดข้อมูลหนึ่ง
🔢 เชิงอรรถ
[1] มีเอกสารการตรวจสอบบางฉบับที่ฉันได้อ่านสำหรับแบบจำลองเดียว (และที่อาจเรียกว่า "เรียบง่าย") ซึ่งยาวกว่าวิทยานิพนธ์ระดับปริญญาเอกของฉัน
[2] สิ่งต่างๆ เช่น การตรวจจับความรู้สึกในข้อความ การตรวจจับวัตถุในรูปภาพ ฯลฯ ฉันไม่ค่อยเคยเห็นเวลาที่ตัวแยกประเภทความรู้สึกแบบกำหนดเองทำงานได้ดีกว่าตัวแยกประเภททั่วไป (อาจปรับแต่งอย่างละเอียด)
[3] นี่อาจเป็นได้ทั้งโดยตั้งใจ (บริษัทจัดส่งโมเดลใหม่ที่ตั้งใจจะดีกว่า) หรือไม่ตั้งใจ เมื่อเร็วๆ นี้ รายงานล่าสุดนี้ อ้างว่า GPT-3.5 และ 4 แย่ลงเมื่อเวลาผ่านไป แต่ "อาจเป็นข้อบกพร่องในการวัดผล"