เติมช่องว่างที่หายไปบนชุดข้อมูลแบบ human-in-the-loop (2)

Can Udomcharoenchaikit
AIResearch.in.th
Published in
2 min readMay 18, 2020

ติดตามข่าวสารและบทความ NLP ในภาษาไทยได้ที่ เพจ อ่าน #NLProc และ เพจ AIResearch.in.th

ในตอนที่แล้ว เราพูดถึงงานที่มองว่าการเทรนโมเดลในปัจจุบันใช้ชุดข้อมูลที่มี annotation biases ทำให้ขาด training samples ที่ให้เกิด decision boundary แบบที่เราอยากได้จริง ๆ โดยใช้มุมมองแบบเรขาคณิต ในตอนนี้เราจะพูดถึงงานที่ใช้มุมมองแบบ causality ในการมองและแก้ปัญหานี้ ซึ่งก็คืองาน Learning the Difference that Makes a Difference with Counterfactually-Augmented Data ของ Divyansh Kaushik, Eduard Hovy และ Zachary C. Lipton

หลาย ๆ ครั้งในการประเมินผลโมเดลบน test set โมเดลสามารถให้คำตอบที่ถูกต้องแม้ว่า จะได้คำตอบนั้นอาจจะมาจาก correlation อย่างอื่นแทนที่จะมาจากการที่โมเดลได้เรียนรู้ความสามารถในประมวลผลข้อมูลแบบที่ผู้สร้างชุดข้อมูลตั้งใจไว้

spurious association คือการที่ตัวแปรสองตัวมีความสัมพันธ์ระหว่างกัน แต่ความสัมพันธ์นั้นไม่ได้มาจากเหตุและผลที่เชื่อมกันโดยตรง เช่นยอดขายไอศครีมกับจำนวนคนที่จมน้ำในสระว่ายน้ำ ซึ่งการที่มีคนจมน้ำไม่ได้ทำให้ไอศครีมขายดีขึ้น แต่จริง ๆ การที่มีคนจมน้ำมากขึ้นกับการที่ไอศครีมขายดีขึ้นมันมาจากอากาศที่ร้อนขึ้นต่างหาก ซึ่งปัญหานี้ก็มีคนพบใน computer vision เช่นเวลาที่โมเดลจะทำนายภาพที่มีนกนางนวล โมเดลใช้ข้อมูลพื้นหลังของภาพซึ่งเป็นชายหาดทำนาย แทนที่จะเป็นตัวนกนางนวล ส่วนในงาน NLP เราก็มีปัญหาเรื่อง annotation biases ซึ่งหมายความว่าโมเดลใช้ pattern บางอย่างที่เวลาคนสร้างข้อมูลชอบทำซ้ำ ๆ มาช่วยทำนาย แทนที่จะเป็นตัวเนื้อหาจริง ๆ

Divyansh Kaushik, Eduard Hovy และ Zachary C. Lipton แก้ปัญหานี้โดยการให้คนเข้าไปแก้ข้อมูลในเอกสารในชุดข้อมูลโดยตรงซึ่งเขาได้ใช้ชุดข้อมูล IMDb และ SNLI ในการทดลองนี้ โดยให้แก้เอกสารให้น้อยที่สุดเพื่อที่จะเปลี่ยนคำตอบเป็น counterfactual class (เช่น จาก negative เป็น positive ในงาน sentiment analysis) แล้วเรียกเอกสารพวกนี้ว่า counterfactually revise document ซึ่งเขามองว่าการแก้แบบนี้จะทำให้โมเดลพึ่งพา sprurious association น้อยลง เขาใช้คำว่า counterfactual เพื่อแสดงให้เห็นว่ามันเป็นคำตอบที่จะได้ “ถ้า”เกิดเราไปเปลี่ยนอะไรบางอย่างใน input เช่นในตัวอย่างการแก้เอกสาร IMDb ด้านล่าง เช่นแก้ is fantastic เป็น is supposed to be fantastic ก็ทำให้คำตอบเปลี่ยนได้ หรือแก้โดยการเติมเครื่องหมาย quotation mark เพื่อทำให้ฟังดูเหมือนประชดอยู่ก็เป็นการเปลี่ยนคำตอบเป็น counterfactual class เช่นกัน

พอเอาโมเดลไปทดสอบบนข้อมูลที่ถูกแก้แบบนี้ผลที่ได้ก็ตกลงมาก ซึ่งงานนี้มันก็คล้ายกับงานที่พูดถึงในตอนที่แล้วมาก แต่สิ่งที่น่าสนใจคือเขาได้ลองเอาข้อมูลที่ถูกแก้พวกนี้ไปเทรนโมเดลด้วย

จะเห็นว่าโมเดลที่เทรนบนชุดข้อมูลที่ไม่ถูกแก้จะตกลงไปมากเมื่อทดสอบบนชุดข้อมูลทดสอบที่ถูกแก้ (column R)

ตรง row Orig. & Rev. (3.4k) และ Orig (3.4k) จะเห็นว่าโมเดลที่เทรนบนชุดข้อมูลที่ถูกแก้ใหม่จะทำได้ดีกว่าบนชุดข้อมูลทดสอบที่ถูกแก้ และทำได้ดีพอๆ หรือดีกว่าบนชุดข้อมูลปกติด้วย แม้จำนวน training samples จะมีขนาดเท่ากันก็ตาม แสดงให้เห็นถึงประสิทธิภาพของการสร้าง counterfactually revise document ที่ถูกออกแบบมาให้โมเดลที่ถูกเทรนพึ่งพา sprurious association น้อยลง

บทความนี้สนับสนุนโดย:

--

--