개요

Amazon Textract 서비스는 문서 이미지에서 인쇄된 텍스트, 필사 및 구조화된 데이터를 추출합니다. 이 서비스 안에 있는 AnalyzeID 기능은 신분증(현재 미국 운전면허증 및 미국 여권)의 이미지에서 구조화된 텍스트 데이터를 읽고 추출합니다. 이 기능을 사용하면 문서 처리를 더 쉽게 자동화하고 신속하게 처리할 수 있습니다.

AnalyzeID는 신분증에 나타나는 텍스트에서 작동하여 명시적이고 묵시적인 키-값 페어를 예측합니다. Analyze ID는 명시적 키-값 페어와 묵시적 키-값 페어를 추출할 수 있습니다. 명시적 키-값 페어에서 키(‘Date of Issue’)는 문서에 나타나고 해당하는 값(‘03/18/2018’)과 일치합니다. 묵시적 키-값 페어는 그 옆에 명시적 키가 나타나지 않을 수 있습니다(‘María’는 면허증 중간에 나타나지만 ‘First Name’으로 표시되지 않음). 이 서비스는 키-값 페어를 21개의 알려진 키로 구성된 일반적인 분류법으로 정규화합니다. 따라서 고객은 ID 유형 전반의 정보를 비교할 수 있습니다. 예를 들어 이 서비스는 운전면허증의 LIC 번호를 추출하고 미국 여권에서 여권 번호를 추출하여 두 번호 모두에 ‘문서 ID 번호’라는 레이블을 지정합니다. AnalyzeID의 정확도는 이러한 예측을 실제 자료와 비교하는 방법으로 평가됩니다. 실제 자료의 키와 값은 인간 주석가에 의해 수정되었습니다. 예측된 각 키-값 페어는 예측이 실제 자료와 일치하는 경우 적중이고 그렇지 않은 경우 비적중입니다. 정밀도, 재현율 및 F1과 같은 품질 지표는 적중률과 비적중률에 따라 달라집니다.

신분증은 관할 구역 간에, 그리고 관할 구역 내에서 다릅니다(버지니아주의 운전면허증은 캘리포니아주의 운전면허증과 다름). 각 관할 구역에서 시간 경과에 따라 신분증을 바꾸기 때문입니다. 신분증의 각 버전은 포함된 키와 각 키에 허용되는 값에 따라 다를 수 있습니다. 인식을 어렵게 만드는 요인(‘교란 변수’)도 있습니다. 신분증 디자인에 따라 텍스트 배경에 복잡한 그래픽 디자인이 있거나 텍스트 위에 광택이 있는 플라스틱 또는 기타 라미네이트 필름을 덧씌울 수 있습니다. 예를 들어 신분증을 지갑이나 주머니에 넣어 가지고 다니면 마모되어 주요 정보가 가려질 수 있습니다. 마지막으로, 신분증의 이미지를 찍을 때 조명이 좋지 않거나, 가려지거나(예: 이미지를 찍을 때 신분증을 잡은 손이 이미지 일부를 가림), 초점이 맞지 않을 수 있습니다. AnalyzeID는 교란 변수를 무시하고 이러한 문서 이미지의 텍스트를 인식하도록 설계되었습니다.

대상 사용 사례 및 제한 사항

AnalyzeID는 미국 주에서 발행한 운전면허증과 미국 정부에서 발행한 여권에 사용하도록 만들어졌습니다. 해외 영토 국가(예: 푸에르토리코)에서 발행한 문서나 글로벌 입국 카드 또는 출생 증명서와 같은 다른 형태의 신분증에 사용하도록 훈련되지 않았습니다. AnalyzeID는 지난 15년(2007년) 동안 발행된 문서를 지원합니다. 여기에는 약 5년마다 시행되는 주 수준의 디자인 업데이트 반복이 대략 3회 포함됩니다. 이 기간은 만료되지 않은 모든 문서를 지원합니다. 미국 운전면허증은 최대 12년 내에 만료되고 미국 여권은 최대 10년 내에 만료됩니다.

AnalyzeID를 사용하면 고객이 개발한 다양한 애플리케이션에서 텍스트 추출 단계를 수행할 수 있습니다. 이러한 애플리케이션은 일반적으로 최종 사용자가 온라인 태스크를 완료할 수 있도록 지원합니다. 예를 들어 금융 서비스 애플리케이션은 운전면허증 내용을 스캔할 수 있도록 하여 입력 및 오류 없이 신규 사용자를 등록할 수 있습니다. 마찬가지로, 의료 애플리케이션에서는 예약을 잡을 때 사용자가 주소 또는 기타 계정 정보를 더 빠르게 확인할 수 있도록 하여 오류를 줄입니다. 애플리케이션은 기본적으로 1) 관련된 키-값 페어, 2) 사용되는 이미지 캡처 프로세스, 3) 제출된 이미지의 해상도에 따라 다릅니다. AnalyzeID를 애플리케이션 워크플로에 구축할 때는 인적 감독의 필요성을 평가하고 필요에 따라 인간 검토자가 AnalyzeID 결과를 검토할 수 있도록 지원해야 합니다.

Textract AnalyzeID의 설계

기계 학습: AnalyzeID는 ML 및 광학 문자 인식(OCR) 기술을 사용하여 구축되었습니다. 작동 방식은 다음과 같습니다. AnalyzeID가 신분증의 이미지를 입력으로 가져옵니다. OCR 모델이 문서의 텍스트를 식별합니다. 두 번째 기계 학습 모델이 전체 문서 이미지와 OCR 출력을 처리하여 필드 이름 및 콘텐츠를 키-값 페어로 반환합니다. API 호출에 대한 자세한 내용은 개발자 안내서를 참조하세요.

성능 기대치: 교란 변수는 고객의 애플리케이션마다 다릅니다. 즉, 애플리케이션 간에 성능도 달라집니다. 서로 다른 2가지 이름 및 주소 확인 애플리케이션인 A와 B가 있습니다. 애플리케이션 A는 건물 보안 요원이 방문자 운전면허증의 이름 및 주소를 이 장소를 방문할 예정인 사람의 이름 및 주소와 비교하는 데 사용됩니다. 애플리케이션 B는 채용 담당자가 비디오 인터뷰 중에 지원자로부터 개인 정보를 수집하는 데 사용됩니다. 애플리케이션 A에서 건물 보안 요원은 엔터프라이즈 ID 문서 스캐너를 사용하여 조명이 좋고, 초점이 잘 맞으며, 가려지지 않은 면허증 이미지를 캡처합니다. 애플리케이션 B에서 면접 대상자는 면허증을 든 상태에서 자신의 웹캠을 사용하여 면허증의 이미지를 캡처하므로 이미지 흐림, 반사, 가림의 위험이 높아집니다. A와 B는 이미지 캡처 디바이스 및 프로세스가 다르기 때문에 입력 이미지 품질이 다르고 이로 인해 각 애플리케이션이 Textract를 사용하여 완벽하게 배포되었다고 가정하더라도 오류율이 다를 수 있습니다.

테스트 기반 방법론: AWS는 여러 데이터 세트를 사용하여 성능을 평가합니다. 하나의 평가 데이터 세트로 성능에 대한 절대적인 그림을 얻을 수는 없습니다. 평가 데이터 세트는 인구통계학적 구성(정의된 그룹의 수와 유형), 교란 변수의 양(콘텐츠 품질, 목적 적합성), 사용 가능한 레이블의 유형 및 품질, 기타 요인에 따라 다르기 때문입니다. Textract의 성능은 신분증 이미지가 포함된 평가 데이터 세트에서 Textract를 테스트하여 측정됩니다. 데이터 세트의 전체 성능은 F1 점수(F1)로 표시되며, 이 점수는 올바른 예측 필드의 백분율(정밀도)을 예측에 포함된 올바른 필드의 백분율(재현율)과 비교합니다. F1 점수는 [0,1] 범위로 제한됩니다. 키-값 페어의 신뢰도 임계값을 변경하면 F1 점수가 변경됩니다. 데이터 세트의 그룹은 주요 속성(예: 관할 구역, 성의 길이), 교란 변수(예: 그래픽 디자인 레이아웃, 이미지 품질) 또는 이 둘의 혼합으로 정의될 수 있습니다. 평가 데이터 세트는 이러한 요인 및 기타 요인에 따라 다릅니다. 이로 인해 전체 및 그룹에 대한 F1 점수는 데이터 세트마다 다릅니다. AWS는 이러한 변화를 고려하여 개발 프로세스에서 여러 평가 데이터 세트를 사용하여 AnalyzeID의 성능을 검사하고, AnalyzeID의 성능이 가장 낮은 그룹의 F1을 높이기 위한 조치를 취하고, 평가 데이터 세트 전체를 개선하기 위한 작업을 수행한 다음, 과정을 반복합니다.

공정성 및 편향: AWS의 목표는 AnalyzeID를 통해 면허증의 관할 구역 또는 문서에 나온 사람의 인구통계학적 특성과 관계없이 높은 정확도로 신분증에서 텍스트 필드를 추출하는 것입니다. 이를 위해 위에서 설명한 반복적 개발 프로세스를 사용합니다. 이 프로세스의 일환으로 AWS는 다양한 관할 구역(미국 주) 및 AnalyzeID가 다루는 템플릿을 다양한 이미지 품질 조건에서 캡처하는 데이터 세트를 구축합니다. 신뢰할 수 있는 키-값 페어가 있는 문서 이미지의 데이터 세트를 정기적으로 테스트합니다. AnalyzeID는 관할 구역 및 인구통계학적 특성 전반에 걸쳐 우수한 성능을 제공하는 것으로 나타났습니다. 예를 들어 50개 주의 미국 운전면허증 앞면으로 구성된 내부 데이터 세트에서 주 간에 가장 낮은 F1 정확도는 95%이고, 연령, 군필 여부 및 성 길이로 정의된 인구통계 집단의 최저 F1은 99%입니다. 결과는 AnalyzeID는 물론이고 고객 워크플로와 평가 데이터 세트에 따라서도 달라지기 때문에 고객은 자체 콘텐츠에서 AnalyzeID를 테스트하는 것이 좋습니다.

설명 가능성: 고객은 각 텍스트 필드의 신뢰도 점수에 액세스할 수 있습니다. 따라서 신뢰도 임계값을 활용하고 AnalyzeID 출력에 대한 이해도를 높일 수 있습니다. 예측 키는 값 예측에 대한 인사이트를 제공합니다.

강건성: 다양한 기법을 사용하여 강건성을 극대화합니다. 예를 들어 여러 문서에 걸친 다양한 차이를 포착하는 대규모 훈련 데이터 세트를 사용하는 것이 여기에 포함됩니다. AnalyzeID에 적합한 입력에는 음영, 반사 또는 기타 장애물이 비교적 없고, 이미지 프레임 내에서 문서 방향이 수직인 이미지가 포함됩니다. 그러나 AnalyzeID 모델은 입력이 적합한 조건과 다를 때에도 복원력을 갖추도록 훈련되었습니다.

개인 정보 보호 및 보안: ID 캡처를 분석하고 텍스트를 처리합니다. 입력 및 출력은 고객 간에 공유되지 않습니다.  AWS Organizations 또는 AWS가 제공할 수 있는 기타 옵트아웃 메커니즘을 통해 고객 콘텐츠가 훈련에 사용되는 것을 거부할 수 있습니다. 자세한 내용은 AWS 서비스 약관의 섹션 50.3AWS 데이터 프라이버시 FAQ를 참조하세요. 서비스별 개인 정보 보호 및 보안 정보는 Textract FAQ의 데이터 개인 정보 보호 섹션과 Amazon Textract 보안 설명서를 참조하세요.

투명성: 사용 사례에 적합한 경우, 고객은 워크플로에 AnalyzeID를 통합할 때 애플리케이션의 영향을 받는 최종 사용자 및 기타 개인에게 ML 사용 사실을 공개하고 최종 사용자의 피드백을 받는 기능을 통해 워크플로를 개선해야 합니다. 고객은 자체 문서에서 이 AI 서비스 카드를 참조해도 됩니다.

거버넌스: AWS는 책임 있는 방식으로 AWS AI 서비스를 구축하기 위한 엄격한 방법론을 가지고 있습니다. 여기에는 책임 있는 AI를 설계 단계에 통합하는 역방향 제품 개발 프로세스, 책임 있는 AI에서 설계 상담 및 구현 평가를 제공하는 전담 과학 및 데이터 전문가, 정기 테스트, 고객과 함께 하는 검토, 모범 사례 개발, 보급 및 교육이 포함됩니다.

배포 및 성능 최적화 모범 사례

AWS는 AWS Responsible Use of Machine Learning guide(AWS의 책임 있는 기계 학습 사용 가이드)에 설명된 대로 애플리케이션을 책임 있게 구축하고 운영할 것을 장려합니다. 공정성 및 편향, 견고성, 설명 가능성, 개인 정보 보호 및 보안, 투명성, 거버넌스와 같은 주요 측면을 해결하기 위한 책임 있는 AI 사례를 구현하는 것은 이러한 활동의 일부입니다.
 
워크플로 설계: AnalyzeID의 성능은 텍스트 추출을 위해 AnalyzeID가 포함된 고객 개발 애플리케이션과 상호 작용하는 최종 사용자의 경험으로 정의됩니다. AnalyzeID를 사용하는 애플리케이션의 성능은 (1) 이미지 차이, (2) 신뢰도 임계값 설정, (3) 인적 감독, (4) 워크플로 일관성, (5) 성능 드리프트에 대한 주기적 테스트와 같은 고객 워크플로의 설계에 따라 달라집니다.
 
  1. 이미지 차이: 음영, 반사 또는 기타 장애물이 비교적 없고, 문서가 교각으로 캡처되었으며, 이미지 프레임 내에서 문서 방향이 수직인 이미지가 적합합니다. 고객은 좋은 이미지를 캡처하기 위한 적절한 지침을 최종 사용자에게 제공할 수 있습니다.

  2. 신뢰도 임계값 설정: AnalyzeID에서 생성되는 키-값 페어에 지정된 신뢰도 점수를 기반으로 해당 키-값 페어에 대한 필터 또는 임계값을 설정하여 성능을 조정할 수 있습니다. 정밀도를 높이려면 높은 임계값을 선택합니다. 재현율을 높이려면 낮은 임계값을 선택합니다. 적절한 임계값을 설정하려면 대표적인 입력 세트를 수집하고 각각의 텍스트 필드에 레이블을 지정한 다음 만족스러운 사용자 경험이 나올 때까지 임계값을 높이거나 낮추면 됩니다.

  3. 인적 감독: 애플리케이션 워크플로에 개인의 권리나 필수 서비스 액세스에 영향을 미치는 결정과 같이 위험도가 높거나 민감한 사용 사례가 포함되는 경우 적절한 선에서 애플리케이션 워크플로에 인적 검토를 통합 해야 합니다. AnalyzeID의 자동 키-값 추출은 완전 수동 솔루션으로 인해 발생하는 작업을 줄이고 사람을 통해 신분증을 신속하게 검토 및 평가할 수 있게 하는 도구 역할을 할 수 있습니다.

  4. 일관성: 허용되는 입력 이미지의 종류와 인간이 신뢰도 임계값과 자체 판단을 함께 사용하여 최종 결과를 결정하는 방식에 대한 정책을 설정하고 적용해야 합니다. 이러한 정책은 인구통계 그룹 전반에 걸쳐 일관되어야 합니다. 입력 이미지 또는 신뢰도 임계값을 일관되지 않게 수정하면 여러 인구통계 집단에 불공정한 결과가 초래될 수 있습니다.

  5. 성능 드리프트: AnalyzeID에 제출하는 이미지 종류가 변경되거나 서비스가 변경되면 출력이 달라질 수 있습니다. 이러한 변경 사항을 해결하려면 Textract의 성능을 정기적으로 다시 테스트하고 필요한 경우 워크플로를 조정하는 것을 고려해야 합니다.

추가 정보

용어집

공정성 및 편향은 AI 시스템이 사용자의 다양한 하위 집단(예: 성별, 민족)에 미치는 영향을 나타냅니다.

설명 가능성이란 AI 시스템의 출력을 이해하고 평가할 수 있는 메커니즘을 갖추는 것을 의미합니다.

견고성은 AI 시스템의 안정적인 작동을 보장하는 메커니즘을 갖추는 것을 말합니다.

개인 정보 보호 및 보안이란 데이터를 도난 및 노출로부터 보호하는 것을 말합니다.

거버넌스는 조직 내에서 책임 있는 AI 관행을 정의, 구현 및 시행하기 위한 프로세스를 갖추는 것을 말합니다.

투명성은 이해 관계자가 시스템 사용에 대해 정보에 입각한 선택을 할 수 있도록 AI 시스템에 대한 정보를 전달하는 것을 말합니다.