Chia nhỏ các gói tài liệu đa dạng một cách thông minh với Amazon Textract và Amazon Comprehend

Nút nguồn: 1372716

Nhiều tổ chức trải dài các quy mô khác nhau và ngành dọc của ngành vẫn dựa vào khối lượng lớn tài liệu để điều hành các hoạt động hàng ngày của họ. Để giải quyết thách thức kinh doanh này, khách hàng đang sử dụng các dịch vụ xử lý tài liệu thông minh từ AWS như Văn bản AmazonAmazon hiểu để giúp đỡ khai thác và tự động hóa quy trình. Trước khi có thể trích xuất văn bản, cặp khóa-giá trị, bảng và thực thể, bạn cần có khả năng tách các tài liệu PDF nhiều trang thường chứa các loại biểu mẫu không đồng nhất. Ví dụ: trong quá trình xử lý thế chấp, một nhà môi giới hoặc cá nhân xử lý khoản vay có thể cần phải chia một gói cho vay PDF tổng hợp, chứa đơn đăng ký thế chấp (mẫu Fannie Mae 1003), W2, xác minh thu nhập, 1040 biểu mẫu thuế và hơn thế nữa.

Để giải quyết vấn đề này, các tổ chức sử dụng quy trình xử lý dựa trên quy tắc: xác định các loại tài liệu thông qua tiêu đề biểu mẫu, số trang, độ dài biểu mẫu, v.v. Những cách tiếp cận này dễ xảy ra lỗi và khó mở rộng quy mô, đặc biệt khi các loại biểu mẫu có thể có một số biến thể. Theo đó, những cách giải quyết này nhanh chóng bị phá vỡ trong thực tế và làm tăng nhu cầu can thiệp của con người.

Trong bài đăng này, chúng tôi chỉ ra cách bạn có thể tạo giải pháp tách tài liệu của riêng mình với ít mã cho bất kỳ bộ biểu mẫu nào mà không cần xây dựng quy tắc tùy chỉnh hoặc quy trình xử lý công việc.

Tổng quan về giải pháp

Đối với bài đăng này, chúng tôi sử dụng một tập hợp các biểu mẫu đăng ký thế chấp phổ biến để chứng minh cách bạn có thể sử dụng Amazon Textract và Amazon Comprehend để tạo bộ chia tài liệu thông minh mạnh mẽ hơn các phương pháp trước đó. Khi xử lý các tài liệu cho đơn xin thế chấp, người vay nộp một tệp PDF nhiều trang được tạo thành từ các loại tài liệu không đồng nhất với độ dài trang khác nhau; để trích xuất thông tin, người dùng (ví dụ: ngân hàng) phải chia nhỏ tệp PDF này.

Mặc dù chúng tôi đưa ra một ví dụ cụ thể cho các hình thức thế chấp, nhưng nhìn chung bạn có thể mở rộng quy mô và áp dụng phương pháp này đối với bất kỳ bộ tài liệu PDF nhiều trang nào.

Chúng tôi sử dụng Amazon Textract để trích xuất dữ liệu từ tài liệu và xây dựng một tập dữ liệu tương thích với Amazon Toàn diện để đào tạo mô hình phân loại tài liệu. Tiếp theo, chúng tôi đào tạo mô hình phân loại và tạo một điểm cuối phân loại có thể thực hiện phân tích tài liệu theo thời gian thực. Hãy nhớ rằng các điểm cuối phân loại của Amazon Textract và Amazon Comprehend phải trả phí, vì vậy hãy tham khảo Định giá Amazon TextractGiá toàn diện của Amazon để biết thêm thông tin. Cuối cùng, chúng tôi chỉ ra cách chúng tôi có thể phân loại tài liệu với điểm cuối này và phân chia tài liệu dựa trên kết quả phân loại.

Giải pháp này sử dụng các dịch vụ AWS sau:

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

Bạn cần hoàn thành các điều kiện tiên quyết sau để xây dựng và triển khai giải pháp này:

  1. đặt Trăn 3.8.x.
  2. đặt jq.
  3. đặt AWS SAM CLI.
  4. đặt phu bến tàu.
  5. Hãy chắc chắn rằng bạn có đã cài đặt pip.
  6. Cài đặt và cấu hình các Giao diện dòng lệnh AWS (AWS CLI).
  7. Thiết lập thông tin đăng nhập AWS của bạn.

Giải pháp được thiết kế để hoạt động tối ưu trong us-east-1us-west-2 Các khu vực tận dụng hạn ngạch mặc định cao hơn cho Amazon Textract. Đối với khối lượng công việc cụ thể của Khu vực, hãy tham khảo Điểm cuối và hạn ngạch của Amazon Textract. Đảm bảo rằng bạn sử dụng một Vùng duy nhất cho toàn bộ giải pháp.

Sao chép repo

Để bắt đầu, hãy sao chép kho lưu trữ bằng cách chạy lệnh sau; sau đó chúng tôi chuyển sang thư mục làm việc:

git clone https://github.com/aws-samples/aws-document-classifier-and-splitter.git
cd aws-document-classifier-and-splitter

Quy trình giải pháp

Giải pháp bao gồm ba quy trình làm việc:

  • quy trình làm việc1_endpointbuilder - Nhận các tài liệu đào tạo và xây dựng một điểm cuối phân loại tùy chỉnh trên Amazon Comprehend.
  • quy trình làm việc2_docsplitter - Hoạt động như dịch vụ chia nhỏ tài liệu, nơi các tài liệu được chia theo lớp. Nó sử dụng điểm cuối phân loại được tạo trong workflow1.
  • quy trình làm việc3_local - Dành cho những khách hàng thuộc các ngành được quản lý cao và không thể lưu giữ dữ liệu trong Amazon S3. Dòng công việc này chứa các phiên bản cục bộ của workflow1workflow2.

Hãy đi sâu vào từng quy trình làm việc và cách chúng hoạt động.

Quy trình công việc 1: Xây dựng bộ phân loại Amazon Toàn diện từ các tài liệu PDF, JPG hoặc PNG

Quy trình làm việc đầu tiên lấy các tài liệu được lưu trữ trên Amazon S3 và gửi chúng qua một loạt các bước để trích xuất dữ liệu từ các tài liệu qua Amazon Textract. Sau đó, dữ liệu được trích xuất được sử dụng để tạo điểm cuối phân loại tùy chỉnh của Amazon Toàn diện. Điều này được thể hiện trong sơ đồ kiến ​​trúc sau đây.

Ra mắt workflow1, bạn cần Amazon S3 URI của thư mục chứa tệp tập dữ liệu đào tạo (những tệp này có thể là hình ảnh, tệp PDF một trang hoặc tệp PDF nhiều trang). Cấu trúc của thư mục phải như sau:

root dataset directory
---- class directory
-------- files

Ngoài ra, cấu trúc có thể có thêm các thư mục con lồng nhau:

root dataset directory
---- class directory
-------- nested subdirectories
------------ files

Tên của các thư mục con của lớp (cấp thư mục thứ hai) trở thành tên của các lớp được sử dụng trong mô hình phân loại tùy chỉnh Toàn diện của Amazon. Ví dụ: trong cấu trúc tệp sau, lớp cho form123.pdf is tax_forms:

training_dataset
---- tax_forms
-------- page_1
------------ form123.pdf

Để khởi chạy quy trình làm việc, hãy hoàn thành các bước sau:

  1. Tải tập dữ liệu lên nhóm S3 mà bạn sở hữu.

Khuyến nghị là có hơn 50 mẫu cho mỗi lớp mà bạn muốn phân loại. Ảnh chụp màn hình sau đây cho thấy một ví dụ về cấu trúc lớp tài liệu này.

  1. Xây dựng sam-app bằng cách chạy các lệnh sau (sửa đổi các lệnh được cung cấp nếu cần):
cd workflow1_endpointbuilder/sam-app
sam build
sam deploy --guided
Stack Name [sam-app]: endpointbuilder
AWS Region []: us-east-1
#Shows you resources changes to be deployed and require a 'Y' to initiate deploy
Confirm changes before deploy [y/N]: n
#SAM needs permission to be able to create roles to connect to the resources in your template
Allow SAM CLI IAM role creation [Y/n]: y
Save arguments to configuration file [Y/n]: n Looking for resources needed for deployment:
Creating the required resources...
Successfully created!
Managed S3 bucket: {your_bucket}
#Managed repositories will be deleted when their functions are removed from the template and deployed
Create managed ECR repositories for all functions? [Y/n]: y

Đầu ra của bản dựng là ARN cho máy trạng thái Chức năng Bước.

  1. Khi quá trình xây dựng hoàn tất, hãy điều hướng đến Máy trạng thái trên bảng điều khiển Chức năng Bước.
  2. Chọn máy trạng thái bạn đã tạo.
  3. Chọn Bắt đầu thực hiện.
  4. Nhập các thông số đầu vào bắt buộc sau:
{
“folder_uri”: “s3://{your dataset}”
}

  1. Chọn Bắt đầu thực hiện.

Máy trạng thái bắt đầu quy trình làm việc. Quá trình này có thể mất nhiều giờ tùy thuộc vào kích thước của tập dữ liệu. Ảnh chụp màn hình sau đây cho thấy máy trạng thái của chúng tôi đang được xử lý.

Khi máy trạng thái hoàn tất, mỗi bước trong biểu đồ có màu xanh lục, như thể hiện trong ảnh chụp màn hình sau.

Bạn có thể điều hướng đến bảng điều khiển Toàn diện của Amazon để xem điểm cuối được triển khai.

Bây giờ bạn đã xây dựng bộ phân loại tùy chỉnh của mình bằng cách sử dụng các tài liệu của bạn. Điều này đánh dấu sự kết thúc của workflow1.

Quy trình làm việc 2: Xây dựng điểm cuối

Dòng công việc thứ hai lấy điểm cuối mà bạn đã tạo workflow1 và phân chia các tài liệu dựa trên các lớp mà mô hình đã được đào tạo. Điều này được thể hiện trong sơ đồ kiến ​​trúc sau đây.

Ra mắt workflow2, chúng tôi xây dựng sam-app. Sửa đổi các lệnh được cung cấp nếu cần:

cd workflow2_docsplitter/sam-app
sam-app % sam build
Build Succeeded sam-app % sam deploy --guided
Configuring SAM deploy
=========================================
Stack Name [sam-app]: docsplitter
AWS Region []: us-east-1
#Shows you resources changes to be deployed and require a 'Y' to initiate deploy
Confirm changes before deploy [y/N]: n
#SAM needs permission to be able to create roles to connect to the resources in your template
Allow SAM CLI IAM role creation [Y/n]: y
Save arguments to configuration file [Y/n]: n Looking for resources needed for deployment:
Managed S3 bucket: {bucket_name}
#Managed repositories will be deleted when their functions are removed from the template and deployed
Create managed ECR repositories for all functions? [Y/n]: y

Sau khi ngăn xếp được tạo, bạn nhận được DNS Cân bằng tải trên Kết quả đầu ra tab của ngăn xếp CloudFormation. Bạn có thể bắt đầu thực hiện các yêu cầu tới điểm cuối này.

Một yêu cầu mẫu có sẵn trong workflow2_docsplitter/sample_request_folder/sample_s3_request.py tập tin. API nhận ba tham số: tên nhóm S3, tài liệu Amazon S3 URI và ARN điểm cuối phân loại Amazon Composite. Workflow2 chỉ hỗ trợ đầu vào PDF.

Đối với thử nghiệm của chúng tôi, chúng tôi sử dụng một tài liệu thế chấp dài 11 trang với năm loại tài liệu khác nhau.

Phản hồi cho API là Amazon S3 URI cho tệp .zip với tất cả các tài liệu được phân tách. Bạn cũng có thể tìm thấy tệp này trong nhóm mà bạn đã cung cấp trong lệnh gọi API của mình.

Tải xuống đối tượng và xem xét các tài liệu được phân chia dựa trên lớp.

Điều này đánh dấu sự kết thúc của workflow2. Bây giờ chúng tôi đã chỉ ra cách chúng tôi có thể sử dụng điểm cuối phân loại Amazon Toàn diện tùy chỉnh để phân loại và chia nhỏ tài liệu.

Quy trình làm việc 3: Tách tài liệu cục bộ

Quy trình làm việc thứ ba của chúng tôi tuân theo một mục đích tương tự như workflow1workflow2 để tạo điểm cuối Toàn diện của Amazon; tuy nhiên, tất cả quá trình xử lý được thực hiện bằng cách sử dụng máy cục bộ của bạn để tạo tệp CSV tương thích với Amazon Toàn diện. Quy trình làm việc này được tạo cho khách hàng trong các ngành được quản lý cao, nơi có thể không thực hiện được các tài liệu PDF liên tục trên Amazon S3. Sơ đồ kiến ​​trúc sau đây là một trình bày trực quan về quy trình làm việc của trình tạo điểm cuối cục bộ.

Sơ đồ sau minh họa kiến ​​trúc bộ tách tài liệu cục bộ.

Tất cả mã cho giải pháp có sẵn trong workflow3_local/local_endpointbuilder.py tệp để xây dựng điểm cuối phân loại Toàn diện Amazon và workflow3_local/local_docsplitter.py để gửi tài liệu để tách.

Kết luận

Chia nhỏ tài liệu là chìa khóa để xây dựng một quy trình xử lý tài liệu thành công và thông minh. Nó vẫn là một vấn đề rất liên quan đối với các doanh nghiệp, đặc biệt là các tổ chức tổng hợp nhiều loại tài liệu cho hoạt động hàng ngày của họ. Một số ví dụ bao gồm xử lý tài liệu yêu cầu bảo hiểm, đơn xin hợp đồng bảo hiểm, tài liệu SEC, biểu mẫu thuế và biểu mẫu xác minh thu nhập.

Trong bài đăng này, chúng tôi đã lấy một tập hợp các tài liệu phổ biến được sử dụng để xử lý khoản vay, trích xuất dữ liệu bằng cách sử dụng Amazon Textract và xây dựng một điểm cuối phân loại tùy chỉnh Amazon Complusive. Với điểm cuối đó, chúng tôi đã phân loại các tài liệu đến và phân chia chúng dựa trên lớp tương ứng của chúng. Bạn có thể áp dụng quy trình này cho gần như bất kỳ bộ tài liệu nào có ứng dụng trong nhiều ngành khác nhau, chẳng hạn như dịch vụ chăm sóc sức khỏe và tài chính. Để tìm hiểu thêm về Amazon Textract, truy cập trang web.


Về các tác giả

Aditi Rajnish là sinh viên kỹ thuật phần mềm năm thứ nhất tại Đại học Waterloo. Sở thích của cô bao gồm thị giác máy tính, xử lý ngôn ngữ tự nhiên và tính toán biên. Cô ấy cũng rất đam mê với hoạt động tiếp cận và vận động STEM dựa vào cộng đồng. Khi rảnh rỗi, cô ấy có thể leo núi, chơi piano hoặc học cách nướng bánh nướng hoàn hảo.

Raj Pathak là một Kiến trúc sư Giải pháp và Cố vấn Kỹ thuật cho các khách hàng thuộc nhóm 50 và trung bình của FSI (Ngân hàng, Bảo hiểm, Thị trường Vốn) trên khắp Canada và Hoa Kỳ. Raj chuyên về Học máy với các ứng dụng trong Trích xuất tài liệu, Chuyển đổi Trung tâm Liên hệ và Thị giác Máy tính.

Nguồn: https://aws.amazon.com/blogs/machine-learning/intelligently-split-multi-form-document-packages-with-amazon-textract-and-amazon-complusive/

Dấu thời gian:

Thêm từ Blog Học máy AWS