productize.life
TH EN
บัญชี · ความถูกต้อง

โมเดลอ่านบิล ผิดไป ห้าร้อยกว่าบาท แล้วใครจับได้

บิลใบเดียวกัน โมเดลตัวหนึ่งอ่านยอดได้ 5,390 บาท อีกตัวอ่านได้ 4,851 บาท ทั้งคู่ตอบมาอย่างมั่นใจเท่ากัน ถ้าระบบของคุณเชื่อเลขที่โมเดลส่งมาตรงๆ เงินผิดห้าร้อยกว่าบาทก็ไหลเข้าบัญชีแบบเงียบสนิท บทความนี้เล่าวิธีออกแบบชั้นพิสูจน์เลขที่จับเรื่องแบบนี้ได้เองโดยไม่ต้องรอคนมาเจอ

Yim· เขียนด้วยกันกับ Dobby (AI Oracle)/10 กรกฎาคม 2569

ช่วงที่ 1บิลใบเดียว สองคำตอบ และความมั่นใจ ที่เท่ากัน

ระหว่างทดสอบระบบแกะบิลของเรา มีบิลค่าบริการรายเดือนใบหนึ่งเป็นตัวปัญหา ยอดจริงบนกระดาษคือ 4,851.00 บาท

โมเดลตัวแรก (รุ่น 2B ตัวเล็ก ราวสองพันล้านพารามิเตอร์) อ่านออกมาเป็น 5,390.00 บาท ผิดไปห้าร้อยกว่าบาท ไม่มีข้อผิดพลาด (error) ไม่มีคำเตือน ข้อมูลที่ส่งกลับมา (รูปแบบ JSON) ก็เรียบร้อยสวยงามทุกช่อง

พอเปลี่ยนเป็นโมเดลตัวใหญ่ขึ้น (4B ราวสี่พันล้านพารามิเตอร์) คราวนี้อ่านยอดถูก 4,851.00 เป๊ะ

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

ช่วงที่ 2แยกงานให้ถูกตัว: โมเดลถอดความ โค้ดตัดสิน

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

เหตุผลอยู่ที่ธรรมชาติของเครื่องมือ โมเดลภาษาตอบด้วยความน่าจะเป็น วันดีคืนดีอ่าน 4 เป็น 5 ได้โดยไม่มีอาการอะไรบอกล่วงหน้า แต่เลขคณิตไม่มีวันดีคืนดี สองบวกสองได้สี่ทุกวัน ระบบที่ดีจึงเอาความแน่นอนของเลขคณิตมาคุมความไม่แน่นอนของโมเดล

ช่วงที่ 3พิสูจน์เลข ด้วยเลข ในเอกสารเอง

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

เลขที่โมเดลอ่านมาถ้าถูกจริง โซ่ความสัมพันธ์นี้จะคล้องกันเองหมดทั้งเส้น แต่ถ้าโมเดลอ่านผิดสักตัวเดียว โซ่จะขาดตรงไหนสักจุดแทบทันที เคสบิล 5,390 ข้างบนโดนจับตรงนี้เอง ผลรวมรายการกับยอดรวมที่อ่านมาไม่คล้องกัน ระบบเลยตีธงแดงส่งให้คนดูโดยไม่ต้องรู้ด้วยซ้ำว่าเลขจริงคือเท่าไหร่

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

ช่วงที่ 4สามสี สามระดับ ความเชื่อใจ

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

  1. เขียว เลขคล้องกันครบทุกความสัมพันธ์ ปล่อยเข้าไฟล์อัตโนมัติได้
  2. เหลือง อ่านได้แต่มีจุดที่ระบบไม่มั่นใจ เช่น ตัวเลขเลือนหรือลายมือ ส่งให้คนยืนยันก่อน
  3. แดง เลขขัดกันหรือขาดชิ้นสำคัญ ต้องเปิดเอกสารต้นฉบับดูเท่านั้น

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

ช่วงที่ 5เช็คลิสต์ เอาไปใช้ กับระบบของคุณ

ไม่ว่าจะใช้ OCR เจ้าไหนหรือโมเดลอะไร ห้าข้อนี้ใช้ได้เหมือนกันหมด

  1. สั่งให้โมเดลถอดตัวเลขตามที่พิมพ์บนเอกสารเท่านั้น ห้ามให้คำนวณอะไรเอง
  2. เขียนโค้ดตรวจความสัมพันธ์ของเลขในเอกสาร อย่างน้อยผลรวมรายการกับยอดรวม
  3. เลขที่พิสูจน์ไม่ผ่าน ต้องไม่ไหลเข้าระบบปลายทางอัตโนมัติ ให้จอดรอคนเสมอ
  4. เก็บสถิติว่าโมเดลพลาดตรงไหนบ่อย เอาไว้เลือกว่าควรอัปโมเดลหรือปรับภาพต้นฉบับ
  5. ทดสอบด้วยเอกสารที่มีเฉลย (คุณกรอกเฉลยเองสักสิบใบก็พอเริ่มได้) ก่อนเชื่อระบบกับของจริง

เราเชื่อเรื่องนี้มากพอที่จะสร้างทั้งระบบรอบหลักการนี้ ถ้าอยากเห็นว่ามันทำงานกับบิลจริงยังไง ลองได้ที่หน้าAI แกะบิล

คำถามที่ พบบ่อย

OCR accuracy วัดยังไง ให้เชื่อถือได้

วัดกับชุดเอกสารที่มีเฉลย (ground truth ที่คนตรวจแล้ว) โดยเทียบทีละช่อง ไม่ใช่ดูว่าระบบตอบครบไหม และควรวัดแยกตามชนิดเอกสาร เพราะใบกำกับภาษีพิมพ์เรียบร้อยกับสลิปลายมือให้ความแม่นคนละโลก

โมเดลใหญ่ขึ้น แก้ปัญหา อ่านเลขผิดได้ไหม

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

ถ้าเลขบนเอกสาร ขัดกันเอง ระบบควรทำยังไง

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

ทำชั้นพิสูจน์เลข ต้องใช้ AI เพิ่มไหม

ไม่ต้องเลย ชั้นนี้เป็นโค้ดเลขคณิตธรรมดาที่ตรวจความสัมพันธ์ของตัวเลข (บวก ลบ คูณ เทียบ) จุดแข็งของมันคือความแน่นอน ตรวจแบบเดิมได้ผลเหมือนเดิมทุกครั้ง ต่างจากการเอา AI อีกตัวมาตรวจ AI ซึ่งเพิ่มความไม่แน่นอนซ้อนเข้าไปอีกชั้น

อ่านต่อในซีรีส์
ที่มาและอ้างอิง
ติดตาม

รับบทความใหม่และของฟรีก่อนใคร

ทิ้งอีเมลไว้ บทความใหม่และของฟรีเป็นครั้งคราวจะส่งไปให้ ไม่สแปม

ใช้อีเมลเพื่อส่งอัปเดตเท่านั้น

ความคิดเห็น

ร่วมพูดคุย

แบ่งปันความคิดเห็นได้เลย

ชื่อจะแสดงต่อสาธารณะ อีเมลเก็บเป็นความลับ ไม่แสดงที่ไหน

กำลังโหลดความคิดเห็น…