Tài liệu AI Workbench – Đào tạo nâng cao

1. Giới thiệu

Document AI là một giải pháp hiểu tài liệu, lấy dữ liệu không có cấu trúc (chẳng hạn như tài liệu, email, v.v.) và giúp dữ liệu dễ hiểu, dễ phân tích và dễ sử dụng hơn.

Bằng cách sử dụng tính năng đào tạo nâng cao thông qua Document AI Workbench, bạn có thể đạt được độ chính xác cao hơn khi xử lý tài liệu bằng cách cung cấp thêm các ví dụ được gắn nhãn cho Các loại tài liệu chuyên biệt và tạo một phiên bản mô hình mới.

Trong phòng thí nghiệm này, bạn sẽ tạo một trình xử lý Trình phân tích cú pháp hoá đơn, định cấu hình trình xử lý để đào tạo thêm, gắn nhãn các tài liệu mẫu và đào tạo thêm trình xử lý.

Tập dữ liệu tài liệu được dùng trong lớp học này bao gồm các hoá đơn được tạo ngẫu nhiên cho một công ty đường ống giả tưởng.

Điều kiện tiên quyết

Lớp học lập trình này dựa trên nội dung được trình bày trong các Lớp học lập trình khác về Document AI.

Bạn nên hoàn thành các lớp học lập trình sau đây trước khi tiếp tục.

Kiến thức bạn sẽ học được

  • Định cấu hình tính năng Huấn luyện thêm cho bộ xử lý Trình phân tích cú pháp hoá đơn.
  • Gắn nhãn dữ liệu huấn luyện Document AI bằng công cụ chú thích.
  • Huấn luyện một phiên bản mô hình mới.
  • Đánh giá độ chính xác của phiên bản mô hình mới.

Bạn cần có

  • Một dự án trên Google Cloud
  • Một trình duyệt, chẳng hạn như Chrome hoặc Firefox

2. Thiết lập

Lớp học lập trình này giả định rằng bạn đã hoàn thành các bước Thiết lập Document AI được liệt kê trong Lớp học lập trình giới thiệu.

Vui lòng hoàn tất các bước sau trước khi tiếp tục:

3. Tạo một Bộ xử lý

Trước tiên, bạn phải tạo một trình xử lý Trình phân tích cú pháp hoá đơn để sử dụng cho lớp học này.

  1. Trong bảng điều khiển, hãy chuyển đến trang Tổng quan về Document AI.

docai-uptraining-codelab-01

  1. Nhấp vào Tạo bộ xử lý, di chuyển xuống phần Chuyên biệt (hoặc nhập "Trình phân tích cú pháp hoá đơn" vào thanh tìm kiếm) rồi chọn Trình phân tích cú pháp hoá đơn.

docai-uptraining-codelab-02

  1. Đặt tên cho codelab-invoice-uptraining (Hoặc một tên khác mà bạn sẽ nhớ) rồi chọn khu vực gần nhất trong danh sách.

docai-uptraining-codelab-03

  1. Nhấp vào Tạo để tạo bộ xử lý. Sau đó, bạn sẽ thấy trang Tổng quan về bộ xử lý.

docai-uptraining-codelab-04

4. Tạo tập dữ liệu

Để huấn luyện bộ xử lý, chúng ta sẽ phải tạo một tập dữ liệu có dữ liệu huấn luyện và kiểm thử để giúp bộ xử lý xác định các thực thể mà chúng ta muốn trích xuất.

Bạn sẽ cần tạo một bộ chứa mới trong Cloud Storage để lưu trữ tập dữ liệu. Lưu ý: Đây không được là nhóm mà bạn đang lưu trữ tài liệu.

  1. Mở Cloud Shell rồi chạy các lệnh sau để tạo một vùng chứa. Hoặc tạo một vùng chứa mới trong Cloud Console. Lưu tên nhóm này, bạn sẽ cần đến tên này sau.
export PROJECT_ID=$(gcloud config get-value project)

gsutil mb -p $PROJECT_ID "gs://${PROJECT_ID}-uptraining-codelab"
  1. Chuyển đến thẻ Tập dữ liệu rồi nhấp vào Tạo tập dữ liệu

docai-uptraining-codelab-05

  1. Dán tên nhóm từ nhóm mà bạn đã tạo ở bước một vào trường Đường dẫn đích. (Không bao gồm gs://)

docai-uptraining-codelab-06

  1. Đợi quá trình tạo tập dữ liệu hoàn tất, sau đó, bạn sẽ được chuyển đến trang Quản lý tập dữ liệu.

docai-uptraining-codelab-07

5. Nhập tài liệu kiểm thử

Bây giờ, hãy nhập một tệp PDF hoá đơn mẫu vào tập dữ liệu của chúng ta.

  1. Nhấp vào Nhập chứng từ

docai-uptraining-codelab-08

  1. Chúng tôi có một tệp PDF mẫu để bạn sử dụng trong phòng thí nghiệm này. Sao chép và dán đường liên kết sau vào hộp Đường dẫn nguồn. Tạm thời, hãy để "Phân chia dữ liệu" ở trạng thái "Chưa chỉ định". Nhấp vào Nhập.
cloud-samples-data/documentai/codelabs/uptraining/pdfs

docai-uptraining-codelab-09

  1. Đợi tài liệu được nhập. Quá trình này mất chưa đến 1 phút trong các thử nghiệm của tôi.

docai-uptraining-codelab-10

  1. Khi quá trình nhập hoàn tất, bạn sẽ thấy tài liệu trong giao diện người dùng Quản lý tập dữ liệu. Nhấp vào biểu tượng này để chuyển đến bảng điều khiển gắn nhãn.

docai-uptraining-codelab-11

6. Gắn nhãn cho Tài liệu thử nghiệm

Tiếp theo, chúng ta sẽ xác định các phần tử văn bản và nhãn cho những thực thể mà chúng ta muốn trích xuất. Các nhãn này sẽ được dùng để huấn luyện mô hình của chúng tôi phân tích cấu trúc tài liệu cụ thể này và xác định các loại chính xác.

  1. Bây giờ, bạn sẽ thấy bảng điều khiển gắn nhãn có dạng như sau.

docai-uptraining-codelab-12

  1. Nhấp vào Công cụ "Chọn văn bản", sau đó đánh dấu văn bản "McWilliam Piping International Piping Company" và chỉ định nhãn supplier_name. Bạn có thể sử dụng bộ lọc văn bản để tìm tên nhãn.

docai-uptraining-codelab-13

  1. Đánh dấu văn bản "14368 Pipeline Ave Chino, CA 91710" rồi chỉ định nhãn supplier_address.

docai-uptraining-codelab-14

  1. Đánh dấu văn bản "10001" và chỉ định nhãn invoice_id.

docai-uptraining-codelab-15

  1. Đánh dấu văn bản "2020-01-02" rồi chỉ định nhãn due_date.

docai-uptraining-codelab-16

  1. Chuyển sang công cụ "Khung viền". Đánh dấu văn bản "Knuckle Couplers" (Khớp nối dạng nắm đấm) rồi chỉ định nhãn line_item/description.

docai-uptraining-codelab-17

  1. Đánh dấu văn bản "9" và chỉ định nhãn line_item/quantity.

docai-uptraining-codelab-18

  1. Đánh dấu văn bản "74.43" và chỉ định nhãn line_item/unit_price.

docai-uptraining-codelab-19

  1. Đánh dấu văn bản "669,87" rồi chỉ định nhãn line_item/amount.

docai-uptraining-codelab-20

  1. Lặp lại 4 bước trước đó cho 2 mục hàng tiếp theo. Sau khi hoàn tất, ứng dụng sẽ có dạng như sau.

docai-uptraining-codelab-21

  1. Đánh dấu văn bản "1.419,57" (bên cạnh Tổng tiền) và chỉ định nhãn net_amount.

docai-uptraining-codelab-22

  1. Đánh dấu văn bản "113.57" (bên cạnh Thuế) và chỉ định nhãn total_tax_amount.

docai-uptraining-codelab-23

  1. Đánh dấu văn bản "1.533,14" (bên cạnh Tổng cộng) và chỉ định nhãn total_amount.

docai-uptraining-codelab-24

  1. Làm nổi bật một trong các ký tự "$" và chỉ định nhãn currency.

docai-uptraining-codelab-25

  1. Sau khi hoàn tất, tài liệu được gắn nhãn sẽ có dạng như sau. Xin lưu ý rằng bạn có thể điều chỉnh các nhãn này bằng cách nhấp vào khung viền trong tài liệu hoặc tên/giá trị nhãn trên trình đơn bên trái. Nhấp vào Lưu khi bạn đã hoàn tất việc gắn nhãn.

docai-uptraining-codelab-26

  1. Sau đây là danh sách đầy đủ các nhãn và giá trị

Tên nhãn

Văn bản

supplier_name

McWilliam Piping International Piping Company

supplier_address

14368 Pipeline Ave Chino, CA 91710

invoice_id

10001

due_date

2020-01-02

line_item/description

Khớp nối

line_item/quantity

9

line_item/unit_price

74,43

line_item/amount

669,87

line_item/description

Ống PVC 12 inch

line_item/quantity

7

line_item/unit_price

15,9

line_item/amount

111,30

line_item/description

Ống đồng

line_item/quantity

7

line_item/unit_price

91,20

line_item/amount

638,40

net_amount

1.419,57

total_tax_amount

113,57

total_amount

1.533,14

currency

$

7. Chỉ định tài liệu cho Tập dữ liệu huấn luyện

Giờ đây, bạn sẽ quay lại Bảng điều khiển quản lý tập dữ liệu. Lưu ý rằng số lượng tài liệu Được gắn nhãn và Chưa được gắn nhãn cũng như số lượng nhãn đang hoạt động đã thay đổi.

docai-uptraining-codelab-27

  1. Chúng ta cần chỉ định tài liệu này cho tập hợp "Đào tạo" hoặc "Kiểm thử". Nhấp vào Tài liệu.

docai-uptraining-codelab-28

  1. Nhấp vào Chỉ định cho bộ, rồi nhấp vào Đào tạo.

docai-uptraining-codelab-29

  1. Lưu ý rằng số liệu về Phân chia dữ liệu đã thay đổi.

docai-uptraining-codelab-30

8. Nhập dữ liệu được gắn nhãn trước

Tính năng Huấn luyện thêm của Document AI yêu cầu tối thiểu 10 tài liệu trong cả tập huấn luyện và tập kiểm thử, cùng với 10 thực thể của mỗi nhãn trong mỗi tập.

Bạn nên có ít nhất 50 tài liệu trong mỗi bộ với 50 thực thể của mỗi nhãn để đạt được hiệu suất tốt nhất. Nói chung, càng có nhiều dữ liệu huấn luyện thì độ chính xác càng cao.

Việc gắn nhãn 100 tài liệu theo cách thủ công sẽ mất nhiều thời gian. Vì vậy, chúng tôi có sẵn một số tài liệu đã được gắn nhãn mà bạn có thể nhập cho lớp học lập trình này.

Bạn có thể nhập các tệp tài liệu đã được gắn nhãn trước ở định dạng Document.json. Đây có thể là kết quả từ việc gọi một bộ xử lý và xác minh độ chính xác bằng cách sử dụng Con người tham gia vào quy trình (HITL).

  1. Nhấp vào Nhập tài liệu.

docai-uptraining-codelab-30

  1. Sao chép/Dán đường dẫn Cloud Storage sau đây và chỉ định đường dẫn đó cho tập dữ liệu Đào tạo.
cloud-samples-data/documentai/codelabs/uptraining/training
  1. Nhấp vào Thêm nhóm khác. Sau đó, hãy sao chép/dán đường dẫn Cloud Storage sau đây rồi chỉ định đường dẫn đó cho bộ Kiểm thử.
cloud-samples-data/documentai/codelabs/uptraining/test

docai-uptraining-codelab-31

  1. Nhấp vào Nhập rồi đợi tài liệu được nhập. Quá trình này sẽ mất nhiều thời gian hơn lần trước vì có nhiều giấy tờ cần xử lý hơn. Trong các thử nghiệm của tôi, quá trình này mất khoảng 6 phút. Bạn có thể rời trang này rồi quay lại sau.

docai-uptraining-codelab-32

  1. Sau khi hoàn tất, bạn sẽ thấy các tài liệu trong trang Quản lý tập dữ liệu.

docai-uptraining-codelab-33

9. Chỉnh sửa nhãn

Các tài liệu mẫu mà chúng tôi đang sử dụng cho ví dụ này không chứa mọi nhãn mà Trình phân tích cú pháp hoá đơn hỗ trợ. Chúng ta cần đánh dấu những nhãn không sử dụng là không hoạt động trước khi huấn luyện. Bạn cũng có thể làm theo các bước tương tự để thêm nhãn tuỳ chỉnh trước khi Đào tạo nâng cao.

  1. Nhấp vào Quản lý nhãn ở góc dưới cùng bên trái.

docai-uptraining-codelab-33

  1. Giờ đây, bạn sẽ thấy Bảng điều khiển quản lý nhãn.

docai-uptraining-codelab-34

  1. Sử dụng hộp đánh dấu và nút Tắt/Bật để chỉ đánh dấu các nhãn sau đây là Đã bật.
    • currency
    • due_date
    • invoice_id
    • line_item/amount
    • line_item/description
    • line_item/quantity
    • line_item/unit_price
    • net_amount
    • supplier_address
    • supplier_name
    • total_amount
    • total_tax_amount
  2. Bảng điều khiển sẽ có dạng như sau khi hoàn tất. Sau khi hoàn tất, hãy nhấp vào Lưu.

docai-uptraining-codelab-35

  1. Nhấp vào mũi tên Quay lại để quay lại bảng điều khiển Quản lý tập dữ liệu. Xin lưu ý rằng những nhãn có 0 thực thể đã được đánh dấu là Không hoạt động.

docai-uptraining-codelab-36

10. Không bắt buộc: Tự động gắn nhãn cho các tài liệu mới nhập

Khi nhập tài liệu chưa được gắn nhãn cho một đơn vị xử lý có phiên bản đơn vị xử lý đã triển khai hiện tại, bạn có thể sử dụng tính năng Tự động gắn nhãn để tiết kiệm thời gian gắn nhãn.

  1. Trên trang Huấn luyện, hãy nhấp vào Nhập tài liệu.
  2. Sao chép và dán đường dẫn sau đây. Thư mục này chứa 5 tệp PDF hoá đơn không có nhãn. Trong danh sách thả xuống Phân chia dữ liệu, hãy chọn Đào tạo.
    cloud-samples-data/documentai/Custom/Invoices/PDF_Unlabeled
    
  3. Trong mục Gắn nhãn tự động, hãy đánh dấu vào hộp Nhập bằng tính năng gắn nhãn tự động.
  4. Chọn một phiên bản bộ xử lý hiện có để gắn nhãn cho tài liệu.
  • Ví dụ: pretrained-invoice-v1.3-2022-07-15
  1. Nhấp vào Nhập rồi đợi tài liệu được nhập. Bạn có thể rời trang này rồi quay lại sau.
  • Sau khi hoàn tất, các tài liệu sẽ xuất hiện trên trang Huấn luyện trong phần Được gắn nhãn tự động.
  1. Bạn không thể dùng tài liệu được gắn nhãn tự động để huấn luyện hoặc kiểm thử mà không đánh dấu chúng là đã được gắn nhãn. Chuyển đến phần Được gắn nhãn tự động để xem các tài liệu được gắn nhãn tự động.
  2. Chọn tài liệu đầu tiên để nhập vào bảng điều khiển gắn nhãn.
  3. Xác minh nhãn, khung hình chữ nhật và giá trị để đảm bảo chúng chính xác. Gắn nhãn cho mọi giá trị bị bỏ qua.
  4. Chọn Đánh dấu là đã gắn nhãn khi hoàn tất.
  5. Lặp lại quy trình xác minh nhãn cho từng tài liệu được gắn nhãn tự động, sau đó quay lại trang Huấn luyện để sử dụng dữ liệu cho việc huấn luyện.

11. Huấn luyện mô hình

Giờ đây, chúng ta đã sẵn sàng bắt đầu huấn luyện Trình phân tích cú pháp hoá đơn.

  1. Nhấp vào Huấn luyện phiên bản mới

docai-uptraining-codelab-36

  1. Đặt tên cho phiên bản mà bạn sẽ nhớ, chẳng hạn như codelab-uptraining-test-1. Phiên bản cơ sở là phiên bản mô hình mà phiên bản mới này sẽ được xây dựng dựa trên. Nếu bạn đang sử dụng một bộ xử lý mới, thì lựa chọn duy nhất sẽ là Google Pretrained Next with Uptraining

docai-uptraining-codelab-37

  1. (Không bắt buộc) Bạn cũng có thể chọn Xem số liệu thống kê về nhãn để xem các chỉ số về nhãn trong tập dữ liệu.

docai-uptraining-codelab-38

  1. Nhấp vào Bắt đầu đào tạo để bắt đầu quy trình Đào tạo nâng cao. Bạn sẽ được chuyển hướng đến trang Quản lý tập dữ liệu. Bạn có thể xem trạng thái huấn luyện ở bên phải. Quá trình huấn luyện sẽ mất vài giờ để hoàn tất. Bạn có thể rời trang này rồi quay lại sau.

docai-uptraining-codelab-39

  1. Nếu nhấp vào tên phiên bản, bạn sẽ được chuyển đến trang Quản lý phiên bản. Trang này cho biết Mã phiên bản và trạng thái hiện tại của Công việc huấn luyện.

docai-uptraining-codelab-40

12. Thử nghiệm Phiên bản mô hình mới

Sau khi hoàn tất Training Job (mất khoảng 1 giờ trong các thử nghiệm của tôi), bạn có thể kiểm thử phiên bản mô hình mới và bắt đầu sử dụng phiên bản đó để dự đoán.

  1. Chuyển đến trang Quản lý phiên bản. Tại đây, bạn có thể xem trạng thái hiện tại và Điểm F1.

docai-uptraining-codelab-41

  1. Chúng tôi cần triển khai phiên bản mô hình này thì mới có thể sử dụng. Nhấp vào dấu chấm dọc ở bên phải rồi chọn Triển khai phiên bản.

docai-uptraining-codelab-42

  1. Chọn Triển khai trong cửa sổ bật lên khi chờ phiên bản triển khai. Quá trình này sẽ mất vài phút để hoàn tất. Sau khi triển khai, bạn cũng có thể đặt phiên bản này làm Phiên bản mặc định.

docai-uptraining-codelab-43

  1. Sau khi quá trình triển khai hoàn tất, hãy chuyển đến thẻ Đánh giá. Sau đó, nhấp vào trình đơn thả xuống Phiên bản rồi chọn phiên bản mới tạo.

docai-uptraining-codelab-44

  1. Trên trang này, bạn có thể xem các chỉ số đánh giá, bao gồm điểm F1, Độ chính xác và Độ thu hồi cho toàn bộ tài liệu cũng như từng nhãn. Bạn có thể đọc thêm về các chỉ số này trong Tài liệu về AutoML.
  2. Tải tệp PDF được liên kết bên dưới xuống. Đây là một tài liệu mẫu không có trong tập hợp Huấn luyện hoặc tập kiểm định.

  1. Nhấp vào Tải tài liệu kiểm thử lên rồi chọn tệp PDF.

docai-uptraining-codelab-45

  1. Các thực thể được trích xuất sẽ có dạng như sau.

docai-uptraining-codelab-46

13. Kết luận

Xin chúc mừng! Bạn đã sử dụng thành công Document AI để huấn luyện thêm một Trình phân tích cú pháp hoá đơn. Giờ đây, bạn có thể sử dụng bộ xử lý này để phân tích cú pháp hoá đơn giống như cách bạn làm đối với bất kỳ Bộ xử lý chuyên dụng nào.

Bạn có thể tham khảo Lớp học lập trình về bộ xử lý chuyên dụng để xem cách xử lý phản hồi xử lý.

Dọn dẹp

Để tránh phát sinh phí cho tài khoản Google Cloud của bạn đối với các tài nguyên được dùng trong hướng dẫn này, hãy làm như sau:

  • Trong Cloud Console, hãy chuyển đến trang Quản lý tài nguyên.
  • Trong danh sách dự án, hãy chọn dự án của bạn rồi nhấp vào Xoá.
  • Trong hộp thoại, hãy nhập mã dự án rồi nhấp vào Tắt để xoá dự án.

Tài nguyên

Giấy phép

Tác phẩm này được cấp phép theo giấy phép Ghi công theo Creative Commons 2.0 Chung.