為 PDF 檔案加上註解 - Amazon Comprehend

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

為 PDF 檔案加上註解

在「 SageMaker Ground Truth」中為訓練 PDF 加上註解之前,請先完成下列先決條件:

  • 安裝蟒蛇 3.8.x

  • 安裝 JQ

  • 安裝 AWS CLI

    如果您使用的是 us-east-1 區域,則可以略過安裝 AWS CLI,因為它已經與您的 Python 環境一起安裝。在這種情況下,您可以創建一個虛擬環境以在 AWS Cloud9 中使用 Python 3.8。

  • 設定您的AWS 認證

  • 創建一個私有的 SageMaker Ground Truth 員工來支持註釋

    在安裝期間使用時,請務必記錄您在新的私人員工中選擇的工作團隊名稱。

設定您的環境

  1. 如果使用視窗,請安裝賽格溫;如果使用 Linux 或 Mac,請跳過此步驟。

  2. 從中下載註釋人工因素 GitHub。解壓縮檔案。

  3. 在終端機視窗中,瀏覽至解壓縮的資料夾 (amazon-comprehend-semi-structured-documents-annotation-tools-main)。

  4. 此資料夾包含您執行Makefiles的選項,以安裝相依性、設定 Python 虛擬環境,以及部署必要的資源。檢閱讀我檔案以做出選擇。

  5. 推薦的選項使用單個命令將所有依賴項安裝到 virtualenv 中,從模板構建 AWS CloudFormation 堆棧,並通過交互式指導將堆棧部署到您 AWS 帳戶 的堆棧中。執行以下命令:

    make ready-and-deploy-guided

    此指令會顯示一組組態選項。確保你的 AWS 區域 是正確的。對於所有其他欄位,您可以接受預設值或填入自訂值。如果您修改 AWS CloudFormation 堆棧名稱,請在接下來的步驟中根據需要將其寫下來。

    顯示 AWS CloudFormation 配置選項的終端會話。

    該 CloudFormation 堆棧創建和管理註釋工具所需的 AWS lambda 表達式,AWS IAM 角色和 AWS S3 存儲桶。

    您可以在 CloudFormation 主控台的堆疊詳細資料頁面中檢閱這些資源。

  6. 指令會提示您開始部署。 CloudFormation 創建指定區域中的所有資源。

    顯示已部署 AWS CloudFormation 組態的終端工作階段。

    當 CloudFormation 堆棧狀態轉換為創建完成時,資源就可以使用了。

將 PDF 上傳到 S3 儲存貯體

在「定」區段中,您部署了建立名為 comprehend-semi-structured-documents-$ {AWS::Region}-${AWS::AccountId} 的 S3 儲存貯體的 CloudFormation 堆疊。您現在可以將來源 PDF 文件上傳到此值區。

注意

此儲存貯體包含標籤工作所需的資料。Lambda 執行角色政策授予 Lambda 函數存取此儲存貯體的權限。

您可以使用「SemiStructuredDocumentsS3Bucket」密鑰在CloudFormation 堆棧詳細信息中找到 S3 存儲桶名稱。

  1. 在 S3 儲存貯體中建立新資料夾。將此新資料夾命名為「src」。

  2. 將您的 PDF 源文件添加到「src」文件夾中。在稍後的步驟中,您可以註釋這些文件以訓練您的識別器。

  3. (選擇性) 以下是 AWS CLI 範例,可用來將來源文件從本機目錄上傳至 S3 儲存貯體:

    aws s3 cp --recursive local-path-to-your-source-docs s3://deploy-guided/src/

    或者,使用您的地區和帳戶 ID:

    aws s3 cp --recursive local-path-to-your-source-docs s3://deploy-guided-Region-AccountID/src/

  4. 您現在擁有一個私有的 G SageMaker round Truth 工作人員,並已將來源檔案上傳到 S3 儲存貯體、部署指南 /src/;您已準備好開始註解。

建立註釋工作

bin目錄中的 comprehend-ssie-annotation-tool-cli.py 指令碼是簡單的包裝命令,可簡化 SageMaker Ground Truth 標籤工作的建立。python 腳本從 S3 存儲桶讀取源文檔,並創建一個對應的單頁清單文件,每行包含一個源文檔。然後,指令碼會建立標籤工作,這需要資訊清單檔案做為輸入。

python 指令碼使用您在 [設定] 區段中設定的 S3 儲存貯體和 CloudFormation 堆疊。指令碼的必要輸入參數包括:

  • 輸入 S3 路徑:S3 Uri 到您上傳到 S3 儲存貯體的來源文件。例如:s3://deploy-guided/src/。您也可以將「地區」和「帳戶 ID」新增至此路徑。例如:s3://deploy-guided-Region-AccountID/src/

  • CF 名稱: CloudFormation 堆棧名稱。如果您使用堆棧名稱的默認值,則您的 cfn-name 是 sam-app。

  • work-team-name: 您在《 SageMaker Ground Truth》中建立私人勞動力時所建立的勞動力名稱。

  • job-name-prefix:「 SageMaker Ground Truth」標籤工作的前置詞。請注意,此欄位的字元限制為 29 個字元。時間戳記會附加至此值。例如:my-job-name-20210902T232116

  • 體類型:您要在標籤工作期間使用的實體,以逗號分隔。此清單必須包含您要在訓練資料集中註解的所有實體。「Ground Truth」標籤工作僅顯示這些實體,供註解者標示 PDF 文件中的內容。

若要檢視指令碼支援的其他引數,請使用-h選項來顯示說明內容。

  • 使用上一個清單中所述的輸入參數執行下列指令碼。

    python bin/comprehend-ssie-annotation-tool-cli.py \ --input-s3-path s3://deploy-guided-Region-AccountID/src/ \ --cfn-name sam-app \ --work-team-name my-work-team-name \ --region us-east-1 \ --job-name-prefix my-job-name-20210902T232116 \ --entity-types "EntityA, EntityB, EntityC" \ --annotator-metadata "key=info,value=sample,key=Due Date,value=12/12/2021"

    該腳本產生以下輸出:

    Downloaded files to temp local directory /tmp/a1dc0c47-0f8c-42eb-9033-74a988ccc5aa Deleted downloaded temp files from /tmp/a1dc0c47-0f8c-42eb-9033-74a988ccc5aa Uploaded input manifest file to s3://comprehend-semi-structured-documents-us-west-2-123456789012/input-manifest/my-job-name-20220203-labeling-job-20220203T183118.manifest Uploaded schema file to s3://comprehend-semi-structured-documents-us-west-2-123456789012/comprehend-semi-structured-docs-ui-template/my-job-name-20220203-labeling-job-20220203T183118/ui-template/schema.json Uploaded template UI to s3://comprehend-semi-structured-documents-us-west-2-123456789012/comprehend-semi-structured-docs-ui-template/my-job-name-20220203-labeling-job-20220203T183118/ui-template/template-2021-04-15.liquid Sagemaker GroundTruth Labeling Job submitted: arn:aws:sagemaker:us-west-2:123456789012:labeling-job/my-job-name-20220203-labeling-job-20220203t183118 (amazon-comprehend-semi-structured-documents-annotation-tools-main) user@3c063014d632 amazon-comprehend-semi-structured-documents-annotation-tools-main %

用 SageMaker Ground Truth 註釋

現在,您已經配置了所需的資源並創建了標籤工作,您可以登錄到標籤門戶並為 PDF 添加註釋。

  1. 使用 Chrome 瀏覽器或 Firefox 網頁瀏覽器登入SageMaker 主控台。

  2. 選取標籤員工,然後選擇私人

  3. 在「私人員工摘要」下,選取您使用私人員工建立的標籤入口網站登入 URL。使用適當的認證登入。

    如果您沒有看到任何列出的工作,請不要擔心,這可能需要一段時間才能更新,具體取決於您上傳以進行註釋的檔案數量。

  4. 選取您的工作,然後在右上角選擇 [開始工作] 以開啟註釋螢幕。

    您會在註釋螢幕中看到其中一個開啟的文件,以及您在設定期間提供的實體類型 (在其上方)。在實體類型的右側,有一個箭頭可用來瀏覽文件。

    Amazon Comprehend 註釋屏幕。

    為開啟的文件加上註解。您也可以在每份文件上移除、還原或 auto 標記註解;這些選項可在註解工具的右側面板中找到。

    Amazon Comprehend 註釋右側面板中的可用選項。

    若要使用 auto 動標籤,請為其中一個實體的例證加上註解;然後會自動以該圖元類型註解該特定單字的所有其他例證。

    完成後,請選取右下角的「送出」,然後使用導覽箭頭移至下一個文件。重複此步驟,直到為所有 PDF 加上註解。

在註解所有訓練文件之後,您可以在 Amazon S3 儲存貯體的這個位置找到 JSON 格式的註釋:

/output/your labeling job name/annotations/

輸出資料夾也包含輸出資訊清單檔案,其中會列出訓練文件中的所有註釋。您可以在以下位置找到輸出清單文件。

/output/your labeling job name/manifests/