Document AI Workbench - ตัวแยกเอกสารที่กำหนดเอง

1. บทนำ

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

คุณสามารถใช้ Document AI Workbench เพื่อเพิ่มความแม่นยำในการประมวลผลเอกสารได้โดยการสร้างโมเดลที่กำหนดเองอย่างเต็มรูปแบบโดยใช้ข้อมูลการฝึกของคุณเอง

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

ชุดข้อมูลเอกสารที่ใช้ในห้องทดลองนี้มาจากชุดข้อมูล Fake W-2 (แบบฟอร์มภาษีของสหรัฐอเมริกา) บน Kaggle ที่มี CC0: ใบอนุญาตเป็นสาธารณสมบัติ

ข้อกำหนดเบื้องต้น

Codelab นี้สร้างขึ้นจากเนื้อหาที่แสดงใน Codelab อื่นๆ สำหรับ Document AI

เราขอแนะนำให้คุณทำ Codelab ต่อไปนี้ให้เสร็จก่อนดำเนินการต่อ

สิ่งที่คุณจะได้เรียนรู้

  • สร้างตัวประมวลผลตัวแยกเอกสารที่กำหนดเอง
  • ติดป้ายกำกับข้อมูลการฝึก AI ของเอกสารโดยใช้เครื่องมือคำอธิบายประกอบ
  • ฝึกโมเดลเวอร์ชันใหม่
  • ประเมินความแม่นยำของโมเดลเวอร์ชันใหม่

สิ่งที่คุณต้องมี

  • โปรเจ็กต์ Google Cloud
  • เบราว์เซอร์ เช่น Chrome หรือ Firefox

2. การตั้งค่า

Codelab นี้จะจะถือว่าคุณได้ทำตามขั้นตอนการตั้งค่า Document AI ใน Codelab เบื้องต้นเรียบร้อยแล้ว

โปรดทำตามขั้นตอนต่อไปนี้ก่อนดำเนินการต่อ

3. สร้างโปรเซสเซอร์

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

  1. ในคอนโซล ให้ไปที่หน้าภาพรวมของ Document AI

DocAIOverviewConsole

  1. คลิกสร้างตัวประมวลผลที่กำหนดเอง แล้วเลือกตัวแยกเอกสารที่กำหนดเอง

docai-custom-codelab-02

  1. ตั้งชื่ออุปกรณ์เป็น codelab-custom-extractor (หรือชื่ออื่นที่คุณจำได้) แล้วเลือกภูมิภาคที่ใกล้เคียงที่สุดในรายการ

docai-custom-codelab-03

  1. คลิกสร้างเพื่อสร้างโปรเซสเซอร์ จากนั้นคุณจะเห็นหน้าภาพรวมโปรเซสเซอร์

docai-custom-codelab-04

4. สร้างชุดข้อมูล

ในการฝึกผู้ประมวลผลข้อมูล เราจะต้องสร้างชุดข้อมูลพร้อมข้อมูลการฝึกและการทดสอบเพื่อช่วยให้ผู้ประมวลผลข้อมูลระบุเอนทิตีที่ต้องการแยกได้

  1. ในหน้าภาพรวมโปรเซสเซอร์ ให้คลิกกำหนดค่าชุดข้อมูล

docai-custom-codelab-04

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

docai-custom-codelab-05

  1. รอให้ระบบสร้างชุดข้อมูล จากนั้นระบบควรนําคุณไปยังหน้าการฝึก

docai-custom-codelab-07

5. นำเข้าเอกสารทดสอบ

ตอนนี้เราจะนำเข้า PDF ตัวอย่าง W2 ไปยังชุดข้อมูลของเรา

  1. คลิกนำเข้าเอกสาร

docai-custom-codelab-08

  1. เรามี PDF ตัวอย่างให้คุณใช้ในห้องทดลองนี้ คัดลอกและวางลิงก์ต่อไปนี้ลงในช่องเส้นทางแหล่งที่มา ออกจาก "การแยกข้อมูล" เป็น "ยังไม่ได้กำหนด" ในตอนนี้ ไม่ต้องเลือกช่องอื่นๆ ทั้งหมด คลิกนำเข้า
cloud-samples-data/documentai/codelabs/custom/extractor/pdfs

docai-custom-codelab-09

  1. รอให้เอกสารนำเข้า การดำเนินการนี้จะใช้เวลาไม่ถึง 1 นาที
  2. เมื่อนำเข้าเสร็จสิ้นแล้ว คุณควรเห็นเอกสารในหน้าการฝึก

docai-custom-codelab-10

6. สร้างป้ายกำกับ

เนื่องจากเรากำลังสร้างประเภทตัวประมวลผลข้อมูลใหม่ จึงต้องสร้างป้ายกำกับที่กำหนดเองเพื่อบอก Document AI ว่าเราต้องการดึงข้อมูลช่องใด

  1. คลิกแก้ไขสคีมาที่มุมล่างซ้าย

docai-custom-codelab-11

  1. ตอนนี้คุณควรอยู่ในคอนโซลการจัดการสคีมาแล้ว

docai-custom-codelab-12

  1. สร้างป้ายกำกับต่อไปนี้โดยใช้ปุ่มสร้างป้ายกำกับ

ชื่อ

ประเภทข้อมูล

รายการ

CONTROL_NUMBER

ตัวเลข

ต้องระบุหลายรายการ

EMPL_SSN

ข้อความล้วน

ต้องระบุหลายรายการ

EMPLR_ID_NUMBER

ข้อความล้วน

ต้องระบุหลายรายการ

EMPLR_NAME_ADDRESS

ที่อยู่

ต้องระบุหลายรายการ

FEDERAL_INCOME_TAX_WH

เงินทอง

ต้องระบุหลายรายการ

SS_TAX_WH

เงินทอง

ต้องระบุหลายรายการ

SS_WAGES

เงินทอง

ต้องระบุหลายรายการ

WAGES_TIPS_OTHER_COMP

เงินทอง

ต้องระบุหลายรายการ

  1. คอนโซลควรมีลักษณะดังนี้เมื่อเสร็จสมบูรณ์แล้ว คลิกบันทึกเมื่อเสร็จสิ้น

docai-custom-codelab-13

  1. คลิกลูกศรย้อนกลับเพื่อกลับไปที่หน้าการฝึกอบรม โปรดสังเกตว่าป้ายกำกับที่เราสร้างจะแสดงที่มุมล่างซ้าย

docai-custom-codelab-14

7. ติดป้ายกำกับเอกสารทดสอบ

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

  1. ดับเบิลคลิกเอกสารที่เรานำเข้าก่อนหน้านี้ เพื่อเข้าสู่คอนโซลการติดป้ายกำกับ ซึ่งควรมีหน้าตาเช่นนี้

docai-custom-codelab-15

  1. คลิก "กรอบล้อมรอบ" เครื่องมือ แล้วไฮไลต์ข้อความ "1173038" และกำหนดป้ายกำกับ CONTROL_NUMBER คุณใช้ตัวกรองข้อความเพื่อค้นหาชื่อป้ายกำกับได้

docai-custom-codelab-16

  1. ดำเนินการให้เสร็จสิ้นสำหรับอินสแตนซ์อื่นของ CONTROL_NUMBER ซึ่งควรมีลักษณะเช่นนี้เมื่อติดป้ายกำกับแล้ว

docai-custom-codelab-17

  1. ไฮไลต์ตัวอย่างทั้งหมดของค่าข้อความต่อไปนี้ แล้วกำหนดป้ายกำกับที่เหมาะสม

ชื่อป้ายกำกับ

Text

EMPLR_ID_NUMBER

24-3188810

FEDERAL_INCOME_TAX_WH

19127.2

SS_TAX_WH

5093.71

SS_WAGES

66584.46

WAGES_TIPS_OTHER_COMP

56081.18

EMPL_SSN

714-32-2105

EMPLR_NAME_ADDRESS

Adams, Chase และ Gilbert Inc 972 Gonzalez Dam ใต้ Katherine NC 95869-5178

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

docai-custom-codelab-20

8. มอบหมายเอกสารให้กับชุดการฝึก

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

docai-custom-codelab-21

  1. เราจำเป็นต้องมอบหมายเอกสารนี้ให้กับฝ่าย "การฝึกอบรม" หรือ "Test" ตั้งค่า คลิกเอกสาร แล้วคลิกมอบหมายเพื่อตั้งค่า แล้วคลิกการฝึก

docai-custom-codelab-22

  1. โปรดทราบว่าตัวเลขการแยกข้อมูลมีการเปลี่ยนแปลง

docai-custom-codelab-23

9. นำเข้าข้อมูลที่ติดป้ายกำกับล่วงหน้า

ตัวประมวลผลที่กำหนดเองของ AI สำหรับเอกสารกำหนดให้มีเอกสารอย่างน้อย 10 รายการทั้งในชุดการฝึกและชุดทดสอบ รวมถึงต้องมี 10 อินสแตนซ์ของแต่ละป้ายกำกับในแต่ละชุด

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

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

คุณสามารถนำเข้าไฟล์เอกสารที่ติดป้ายกำกับไว้ล่วงหน้าในรูปแบบ Document.json ซึ่งอาจเกิดจากการเรียกใช้โปรเซสเซอร์และยืนยันความถูกต้องโดยใช้ Human in the Loop (HITL)

นอกเหนือจากเชิงลบ

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

  1. คลิกนำเข้าเอกสาร

docai-custom-codelab-24

  1. คัดลอก/วางเส้นทาง Cloud Storage ต่อไปนี้และกำหนดเส้นทางดังกล่าวให้กับชุดการฝึก
cloud-samples-data/documentai/codelabs/custom/extractor/training
  1. คลิกเพิ่มโฟลเดอร์อื่น จากนั้นคัดลอก/วางเส้นทาง Cloud Storage ต่อไปนี้ และกำหนดเส้นทางดังกล่าวให้กับชุดทดสอบ
cloud-samples-data/documentai/codelabs/custom/extractor/test

docai-custom-codelab-25

  1. คลิกนำเข้าและรอให้เอกสารนำเข้า การดำเนินการนี้จะใช้เวลานานกว่าครั้งที่แล้วเนื่องจากมีเอกสารให้ประมวลผลมากขึ้น การดำเนินการนี้จะใช้เวลาประมาณ 6 นาที คุณสามารถออกจากหน้านี้และกลับมาได้ในภายหลัง

docai-custom-codelab-26

  1. เมื่อเสร็จสิ้นแล้ว คุณควรเห็นเอกสารในหน้าการฝึกอบรม

docai-custom-codelab-27

10. ฝึกโมเดล

ขณะนี้ เราพร้อมแล้วที่จะเริ่มการฝึกอบรมตัวแยกเอกสารที่กำหนดเองของเรา

  1. คลิกฝึกเวอร์ชันใหม่

docai-custom-codelab-28

  1. ตั้งชื่อเวอร์ชันที่คุณจำได้ เช่น codelab-custom-1 ในส่วน "วิธีการฝึก" ให้เลือก "ฝึกตั้งแต่ต้น"

docai-custom-codelab-29

  1. (ไม่บังคับ) คุณยังเลือกดูสถิติป้ายกำกับเพื่อดูเมตริกเกี่ยวกับป้ายกำกับในชุดข้อมูลได้ด้วย

docai-custom-codelab-30

  1. คลิกเริ่มการฝึกเพื่อเริ่มกระบวนการฝึกอบรม ระบบควรเปลี่ยนเส้นทางไปยังหน้าการจัดการชุดข้อมูล คุณสามารถดูสถานะการฝึกอบรมได้ทางด้านขวา การฝึกจะใช้เวลา 2-3 ชั่วโมงจึงจะเสร็จสมบูรณ์ คุณออกจากหน้านี้และกลับมาได้ในภายหลัง

docai-custom-codelab-31

  1. หากคุณคลิกที่ชื่อเวอร์ชัน ระบบจะนำคุณไปยังหน้าจัดการเวอร์ชัน ซึ่งแสดงรหัสเวอร์ชันและสถานะปัจจุบันของงานการฝึก

docai-custom-codelab-32

11. ทดสอบเวอร์ชันใหม่

เมื่องานการฝึกเสร็จสิ้น (การทดสอบใช้เวลาประมาณ 1 ชั่วโมง) คุณก็จะทดสอบโมเดลเวอร์ชันใหม่และเริ่มใช้งานคาดการณ์ได้แล้ว

  1. ไปที่หน้าจัดการเวอร์ชัน ดูสถานะปัจจุบันและคะแนน F1 ได้ที่นี่

docai-custom-codelab-33

  1. เราจะต้องทำให้โมเดลเวอร์ชันนี้ใช้งานได้ก่อนจึงจะใช้งานได้ คลิกที่จุดแนวตั้งทางด้านขวา แล้วเลือกทำให้เวอร์ชันใช้งานได้

docai-custom-codelab-34

  1. เลือกติดตั้งใช้งานจากหน้าต่างป๊อปอัป เมื่อรอให้เวอร์ชันใช้งานได้ ซึ่งอาจใช้เวลาดำเนินการสักครู่ หลังจากติดตั้งใช้งานแล้ว คุณยังตั้งค่าเวอร์ชันนี้เป็นเวอร์ชันเริ่มต้นได้ด้วย

docai-custom-codelab-35

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

docai-custom-codelab-36

  1. ดาวน์โหลดไฟล์ PDF ที่ลิงก์ไว้ด้านล่าง นี่คือตัวอย่าง W2 ที่ไม่ได้รวมอยู่ในชุดการฝึกหรือการทดสอบ

  1. คลิกอัปโหลดเอกสารทดสอบ และเลือกไฟล์ PDF
  2. เอนทิตีที่ดึงมาควรมีลักษณะดังนี้

docai-custom-codelab-37

12. ไม่บังคับ: ติดป้ายกำกับเอกสารที่นำเข้าใหม่โดยอัตโนมัติ

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

  1. คลิกนำเข้าเอกสารในหน้ารถไฟ
  2. คัดลอกและวางเส้นทาง ต่อไปนี้ ไดเรกทอรีนี้มี PDF W2 ที่ไม่มีป้ายกำกับ 5 รายการ เลือกการฝึกจากรายการแบบเลื่อนลงการแยกข้อมูล
    cloud-samples-data/documentai/Custom/W2/AutoLabel
    
  3. ในส่วนการติดป้ายกำกับอัตโนมัติ ให้เลือกช่องทำเครื่องหมายนำเข้าด้วยการติดป้ายกำกับอัตโนมัติ
  4. เลือกเวอร์ชันผู้ประมวลผลข้อมูลที่มีอยู่เพื่อติดป้ายกำกับเอกสาร
  • เช่น 2af620b2fd4d1fcf
  1. คลิกนำเข้าและรอให้เอกสารนำเข้า คุณออกจากหน้านี้และกลับมาได้ในภายหลัง
  • เมื่อเสร็จแล้ว เอกสารจะปรากฏในหน้ารถไฟในส่วนติดป้ายกำกับอัตโนมัติ
  1. คุณไม่สามารถใช้เอกสารที่ติดป้ายกำกับอัตโนมัติสำหรับการฝึกหรือการทดสอบโดยไม่ทำเครื่องหมายว่าติดป้ายกำกับแล้ว ไปที่ส่วนติดป้ายกำกับอัตโนมัติเพื่อดูเอกสารที่ติดป้ายกำกับอัตโนมัติ
  2. เลือกเอกสารแรกเพื่อเข้าสู่คอนโซลการติดป้ายกำกับ
  3. ยืนยันป้ายกำกับ กรอบล้อมรอบ และค่าเพื่อให้แน่ใจว่าถูกต้อง ติดป้ายกำกับค่าที่ละเว้น
  4. เลือกทำเครื่องหมายว่าติดป้ายกำกับเมื่อเสร็จสิ้น
  5. ยืนยันป้ายกำกับซ้ำสำหรับเอกสารที่ติดป้ายกำกับอัตโนมัติแต่ละฉบับ จากนั้นกลับไปที่หน้าฝึกเพื่อใช้ข้อมูลสำหรับการฝึก

13. บทสรุป

ยินดีด้วย คุณใช้ Document AI ในการฝึกตัวประมวลผลตัวแยกเอกสารที่กำหนดเองเรียบร้อยแล้ว ตอนนี้คุณสามารถใช้โปรเซสเซอร์นี้เพื่อแยกวิเคราะห์เอกสารในรูปแบบนี้เช่นเดียวกับที่คุณใช้สำหรับโปรเซสเซอร์พิเศษ

โปรดดู Codelab ผู้ประมวลผลข้อมูลเฉพาะทางเพื่อดูวิธีจัดการคำตอบในการประมวลผล

ล้างข้อมูล

โปรดทำดังนี้เพื่อเลี่ยงไม่ให้เกิดการเรียกเก็บเงินกับบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในบทแนะนำนี้

  • ใน Cloud Console ให้ไปที่หน้าจัดการทรัพยากร
  • ในรายการโปรเจ็กต์ ให้เลือกโปรเจ็กต์ของคุณ แล้วคลิกลบ
  • ในกล่องโต้ตอบ ให้พิมพ์รหัสโปรเจ็กต์แล้วคลิกปิดเครื่องเพื่อลบโปรเจ็กต์

แหล่งข้อมูล

ใบอนุญาต

ผลงานนี้ได้รับอนุญาตภายใต้ใบอนุญาตทั่วไปครีเอทีฟคอมมอนส์แบบระบุแหล่งที่มา 2.0