

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 사용자 정의 모델 생성 및 관리
사용자 정의 모델 관리

Amazon Comprehend에는 인사이트 분석 또는 주제 모델링에 사용할 수 있는 내장 NLP(자연어 처리) 모델이 포함되어 있습니다. Amazon Comprehend를 사용하여 개체 인식 및 문서 분류를 위한 사용자 정의 모델을 생성할 수도 있습니다.

모델 버전 관리를 사용하여 모델 기록을 추적할 수 있습니다. 새로운 모델 버전을 만들고 학습시키면 학습 데이터 세트를 변경할 수 있습니다. Amazon Comprehend는 모델 세부 정보 페이지에 각 모델 버전의 세부 정보(모델 성능 포함)를 표시합니다. 시계열에 따라 학습 데이터 세트 변경에 따른 모델 성능의 변화를 확인할 수 있습니다.

Amazon Comprehend 콘솔 또는 API를 사용하여 모델 버전을 생성할 수 있습니다. 대안으로 Amazon Comprehend는 [플라이 휠](flywheels.md)에 새로운 사용자 정의 모델 버전의 학습 및 평가 관련 작업 간소화 기능을 제공합니다.

사용자 지정 모델을 생성한 후 다른 사용자가 모델 사본을 가져오 AWS 계정 도록 허용하여 다른 사용자와 모델을 공유할 수 있습니다.

**Topics**
+ [

# Amazon Comprehend를 사용한 모델 버전 관리
](model-versioning.md)
+ [

# 사이에 사용자 지정 모델 복사 AWS 계정
](custom-copy.md)

# Amazon Comprehend를 사용한 모델 버전 관리


인공 지능 및 기계 학습(AI/ML)의 핵심은 빠른 실험입니다. Amazon Comprehend를 사용하면 데이터에 대한 인사이트를 얻는 데 사용할 모델을 학습 및 구축할 수 있습니다. 모델 버전 관리를 사용하면 더 많거나 다른 데이터 세트를 제공하더라도 모델 실행 결과와 관련된 모델링 기록 및 성적을 추적할 수 있습니다. 사용자 정의 분류 모델 또는 사용자 정의 개체 인식 모델을 버전 관리와 함께 사용할 수 있습니다. 시계열에 따른 다양한 버전을 살펴보면 해당 버전이 얼마나 성공적인가에 대한 인사이트를 얻고 성공 상태에 도달하는 데 어떤 파라미터를 사용했는지에 대한 인사이트를 얻을 수 있습니다.

기존 사용자 정의 분류 모델 또는 개체 인식 모델의 새 버전을 학습시킬 때에 모델 세부 정보 페이지에서 새 버전을 생성하기만 하면 됩니다. 그러면 모든 세부 정보가 자동으로 채워집니다. 새 버전 관리는 이전 모델과 동일한 이름(VersionID라고 함)을 사용하지만 생성 과정에서 고유한 버전 이름을 지정해야 합니다. 모델에 새 버전을 추가하면 모델 세부 정보 페이지에서 모든 이전 버전과 그 세부 정보를 한 번에 볼 수 있습니다. 버전 관리를 사용하여 학습 데이터 세트를 변경하면 모델 성능이 어떻게 변하는지 확인할 수 있습니다.

![\[각 버전의 F1 점수를 보여주는 세 가지 버전이 있는 모델의 그래픽입니다.\]](http://docs.aws.amazon.com/ko_kr/comprehend/latest/dg/images/model_versioning.png)


**새 **사용자 정의 분류기** 버전 만들기 (콘솔)**

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/comprehend/](https://console.aws.amazon.com/comprehend/) Amazon Comprehend 콘솔을 엽니다.

1. 왼쪽 메뉴에서 **사용자 정의**을 선택한 다음 **사용자 정의 분류**를 선택합니다.

1. **분류자** 목록에서 새 버전을 만들 사용자 정의 모델의 이름을 선택합니다. 사용자 지정 모델 세부 정보 페이지가 표시됩니다.

1. 오른쪽 상단에서 **새 모델 생성**을 선택합니다. 상위 사용자 정의 분류 모델의 세부 정보가 미리 채워진 화면이 열립니다.

1. **버전 이름** 아래의 새 버전에 고유한 이름을 추가합니다.

1. 버전 세부 정보에서 새 모델과 관련된 언어 및 레이블 수를 변경할 수 있습니다.

1. **데이터 사양** 섹션에서 새 버전에 데이터를 제공하는 방법을 구성합니다. 이전 모델의 문서와 새 문서를 포함하여 전체 데이터를 제공해야 합니다. **분류기 모드** (단일 레이블 또는 다중 레이블), **데이터 형식** (CSV 파일, 증강 매니페스트), **교육 데이터세트, 테스트 데이터세트** (자동 분할 또는 사용자 지정 **테스트 데이터** 구성) 를 변경할 수 있습니다.

1. (선택 사항) 출력 데이터용 S3 위치를 업데이트합니다.

1. **액세스 권한**에서 기존 IAM 역할을 생성하거나 기존 역할을 사용합니다.

1. (선택 사항) VPC 설정 업데이트

1. (선택 사항) 새 버전에 태그를 추가하면 세부 정보를 추적할 수 있습니다.

   사용자 정의 분류기 생성 방법에 대한 자세한 내용은 [사용자 정의 분류기 생성](create-custom-classifier-console.md)을 참조하세요.

**새 **사용자 정의 개체 인식기** 버전 생성 (콘솔)**

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/comprehend/](https://console.aws.amazon.com/comprehend/) Amazon Comprehend 콘솔을 엽니다.

1. 왼쪽 메뉴에서 **사용자 정의**을 선택한 다음 **사용자 정의 개체 인식**을 선택합니다.

1. **인식기 모델** 목록에서 새 버전 생성에 사용할 인식기의 이름을 선택합니다. 세부 정보 페이지가 표시됩니다.

1. 오른쪽 상단에서 **새 버전 학습**을 선택합니다. 상위 개체 인식기의 세부 정보가 미리 채워진 화면이 열립니다.

1. **버전 이름** 아래의 새 버전에 고유한 이름을 추가합니다.

1. 사용자 정의 개체 유형에서 사용자 데이터 세트에서 인식기로 식별할 사용자 정의 레이블 또는 레이블을 추가하고 **유형 추가**를 선택합니다. 제공한 주석 또는 개체 목록에서 사용자 정의 개체 유형을 선택합니다. 그러면 인식기는 작업을 실행할 때 포함된 모든 개체 유형을 사용하여 데이터 집합의 개체를 식별합니다. 여러 단어를 사용하는 경우 각 개체 유형은 대문자여야 하며 단어 사이에 밑줄을 넣어야 합니다. 최대 25개의 유형이 허용됩니다.

1. (선택 사항) 작업이 처리되는 동안 저장소 볼륨의 데이터를 암호화하려면 **인식기 암호화**를 선택합니다.

1. 교육 데이터 섹션에서 **주석 및 데이터 형식** 세부 정보 (CSV 파일, 증강 매니페스트), 단일 레이블 또는 다중 레이블), **데이터 형식 (CSV, 증강 매니페스트), 교육 데이터****세트 및 테스트 데이터 세트 (자동 분할 또는 사용자 지정** **테스트** 데이터 구성) 를 지정합니다.

1. (선택 사항) 출력 데이터용 S3 위치를 업데이트합니다.

1. **액세스 권한**에서 기존 IAM 역할을 생성하거나 기존 역할을 사용합니다.

1. (선택 사항) VPC 설정 업데이트

1. (선택 사항) 새 버전에 태그를 추가하면 세부 정보를 추적할 수 있습니다.

사용자 정의 개체 인식기에 대해 자세히 알아보려면 [사용자 정의 개체 인식](custom-entity-recognition.md) 및 [콘솔을 사용한 사용자 정의 개체 인식기 생성](realtime-analysis-cer.md)을 참조하세요.

# 사이에 사용자 지정 모델 복사 AWS 계정
사이에 사용자 지정 모델 복사 AWS 계정

Amazon Comprehend 사용자는 2단계 프로세스 AWS 계정 로 간에 훈련된 사용자 지정 모델을 복사할 수 있습니다. 먼저 한 AWS 계정 의 사용자(계정 A)가 자신의 계정에 있는 사용자 지정 모델을 *공유*합니다. 그런 다음 다른 AWS 계정 (계정 B)의 사용자가 자신의 계정으로 모델을 *가져옵니다*. 계정 B 사용자는 모델을 학습시킬 필요가 없으며, 원본 훈련 데이터나 테스트 데이터를 복사(또는 액세스)할 필요도 없습니다.

계정 A에서 사용자 지정 모델을 공유하기 위해 사용자는 모델 버전에 AWS Identity and Access Management (IAM) 정책을 연결합니다. 이 정책은 사용자 또는 역할과 같은 계정 B의 개체가 자신의 AWS 계정에 있는 Amazon Comprehend로 모델 버전을 가져올 수 있는 권한을 부여합니다. 계정 B 사용자는 원래 모델과 동일한 AWS 리전 으로 모델을 가져와야 합니다.

계정 B에서 모델을 가져오기 위해 이 계정의 사용자는 모델의 Amazon 리소스 이름(ARN)과 같은 필수 세부 정보를 Amazon Comprehend에 제공해야 합니다. 모델을 가져와서이 사용자는 가져온 모델을 복제 AWS 계정 하는 새 사용자 지정 모델을에 생성합니다. 이 모델은 완전히 학습되었으며 문서 분류 또는 명명된 개체 인식과 같은 추론 작업에 사용할 준비가 되어 있습니다.

다음과 같은 경우 사용자 지정 모델을 복사하는 것이 유용합니다.
+ 여러를 사용하는 조직에 속해 있습니다 AWS 계정. 예를 들어 조직에 빌드, 단계, 테스트 및 배포와 같은 각 개발 단계에 AWS 계정 대한이 있을 수 있습니다. 또는 데이터 과학 및 엔지니어링과 같은 비즈니스 기능에 AWS 계정 고유할 수 있습니다.
+ 조직은 Amazon Comprehend에서 사용자 지정 모델을 훈련하고 이를 클라이언트로 제공하는 AWS 파트너와 같은 다른와 협력합니다.

이러한 시나리오에서는 훈련된 사용자 지정 개체 인식기 또는 문서 분류기를 한 개에서 다른 개로 빠르게 복사 AWS 계정 할 수 있습니다. 이러한 방식으로 모델을 복사하는 것은 중복 모델을 훈련하기 AWS 계정 위해 간에 훈련 데이터를 복사하는 대안보다 쉽습니다.

**Topics**
+ [

# 다른 사용자 지정 모델과 사용자 지정 모델 공유 AWS 계정
](custom-copy-sharing.md)
+ [

# 다른에서 사용자 지정 모델 가져오기 AWS 계정
](custom-copy-importing.md)

# 다른 사용자 지정 모델과 사용자 지정 모델 공유 AWS 계정
사용자 지정 모델 공유

Amazon Comprehend를 사용하면 사용자 지정 모델을 다른 사람과 공유하여 다른 사용자가 자신의 AWS 계정으로 이 모델을 가져올 수 있습니다. 사용자가 사용자 지정 모델 중 하나를 가져오면 자신의 계정에 새 사용자 지정 모델을 생성합니다. 이 새 모델은 공유받은 모델과 중복됩니다.

사용자 지정 모델을 공유하려면 다른 사용자가 모델을 가져올 수 있도록 권한을 부여하는 정책을 모델에 연결해야 합니다. 그런 다음 해당 사용자에게 필요한 세부 정보를 제공합니다.

**참고**  
다른 사용자가 공유한 사용자 지정 모델을 가져올 때는 모델이 포함된 AWS 리전 미국 동부(버지니아 북부)와 같은 동일한를 사용해야 합니다.

**Topics**
+ [

## 시작하기 전 준비 사항
](#custom-copy-sharing-prerequisites)
+ [

## 사용자 지정 모델을 위한 리소스 기반 정책
](#custom-copy-sharing-example-policy)
+ [

## 1단계: 사용자 지정 모델에 리소스 기반 정책 추가
](#custom-copy-sharing-adding-policy)
+ [

## 2단계: 다른 사용자가 가져오는 데 필요한 세부 정보를 제공하십시오.
](#custom-copy-sharing-details)

## 시작하기 전 준비 사항


모델을 공유하려면 먼저 사용자 AWS 계정의 Amazon Comprehend에 학습된 사용자 지정 분류기 또는 사용자 지정 개체 인식기가 있어야 합니다. 모델 학습에 대한 자세한 정보는 [사용자 지정 분류](how-document-classification.md) 또는 [사용자 지정 개체 인식](custom-entity-recognition.md)을 참조하세요.

### 필수 권한


#### IAM 정책문


사용자 지정 모델에 리소스 기반 정책을 추가하려면 먼저 AWS Identity and Access Management (IAM)에 권한이 있어야 합니다. 다음 예시와 같이 모델 정책을 만들고, 가져오고, 삭제할 수 있으려면 사용자, 그룹 또는 역할에 정책이 연결되어 있어야 합니다.

**Example 사용자 지정 모델의 리소스 기반 정책을 관리하기 위한 IAM 정책**  

```
{
  "Effect": "Allow",
  "Action": [
    "comprehend:PutResourcePolicy",
    "comprehend:DeleteResourcePolicy",
    "comprehend:DescribeResourcePolicy"
  ],
  "Resource": "arn:aws:comprehend:us-west-2:111122223333:document-classifier/foo/version/*"
}
```

IAM 정책 생성에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM 정책 생성](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)을 참조하세요. IAM 자격 증명에 정책을 연결하는 방법에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM 자격 증명 권한 추가 및 제거](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)를 참조하세요.

#### AWS KMS 키 정책 설명


암호화된 모델을 공유하는 경우에 대한 권한을 추가해야 할 수 있습니다 AWS KMS. 이 요구 사항은 Amazon Comprehend에서 모델을 암호화하는 데 사용하는 KMS 키 유형에 따라 다릅니다.

**AWS 소유 키**는 AWS 서비스에서 소유하고 관리합니다. 를 사용하는 경우 AWS 소유 키에 대한 권한을 추가할 필요가 없으며이 섹션을 건너뛸 AWS KMS수 있습니다.

**고객 관리형 키** 는 사용자가 AWS 계정에서 생성, 소유 및 관리하는 키입니다. 고객 관리형 키를 사용하는 경우 KMS 키 정책에 설명을 추가해야 합니다.

정책 문은 하나 이상의 엔터티(예: 사용자 또는 계정)가 모델을 복호화하는 데 필요한 AWS KMS 작업을 수행할 수 있는 권한을 부여합니다.

조건 키를 사용하면 혼동된 대리자 문제를 방지하는 데 도움이 됩니다. 자세한 내용은 [교차 서비스 혼동된 대리인 방지](cross-service-confused-deputy-prevention.md)를 참조하십시오.

정책에서 다음 조건 키를 사용하여 KMS 키에 액세스하는 개체를 검증합니다. 사용자가 모델을 가져올 때는 소스 모델 버전의 ARN이 조건과 일치하는지 AWS KMS 확인합니다. 정책에 조건을 포함하지 않으면 지정된 보안 주체가 KMS 키를 사용하여 모든 모델 버전을 해독할 수 있습니다.
+ [aws:SourceArn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) – 이 조건 키를 `kms:GenerateDataKey` 및 `kms:Decrypt` 작업과 함께 사용합니다.
+ [kms:EncryptionContext](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-encryption-context) – 이 조건 키를 `kms:GenerateDataKey`, `kms:Decrypt`, `kms:CreateGrant` 작업과 함께 사용합니다.

다음 예제에서 정책은가 소유한 지정된 분류기 모델의 버전 1을 사용할 수 있는 AWS 계정 권한을 부여합니다 AWS 계정 `444455556666``111122223333`.

**Example 특정 분류기 모델 버전에 액세스하기 위한 KMS 키 정책**    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
          "AWS":
                "arn:aws:iam::444455556666:root"
      },
      "Action": [
          "kms:Decrypt",
          "kms:GenerateDataKey"
      ],
      "Resource": "*",
      "Condition": {
          "StringEquals": {
              "aws:SourceArn":
                "arn:aws:comprehend:us-west-2:111122223333:document-classifier/classifierName/version/1"
          }
      }
    },
    {
      "Effect": "Allow",
      "Principal": {
          "AWS":  "arn:aws:iam::444455556666:root"
      },
      "Action": "kms:CreateGrant",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
           "kms:EncryptionContext:aws:comprehend:arn":
              "arn:aws:comprehend:us-west-2:111122223333:document-classifier/classifierName/version/1"
        }
      }
    }
  ]
}
```

다음 예제 정책은의 사용자 **ExampleUser** AWS 계정 `444455556666`와의 **ExampleRole**이 Amazon Comprehend 서비스를 통해이 KMS 키에 액세스할 AWS 계정 `123456789012` 수 있는 권한을 부여합니다.

**Example Amazon Comprehend 서비스에 대한 액세스를 허용하는 KMS 키 정책(대안 1).**  

다음 예제 정책은 이전 예제의 대체 구문을 사용하여 Amazon Comprehend 서비스를 통해이 KMS 키에 액세스할 수 있는 권한을 부여합니다 AWS 계정 `444455556666`.

**Example Amazon Comprehend 서비스에 대한 액세스를 허용하는 KMS 키 정책(대안 2).**    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
          "AWS": "arn:aws:iam::444455556666:root"
      },
      "Action": [
          "kms:Decrypt",
          "kms:GenerateDataKey",
          "kms:CreateGrant"
      ],
      "Resource": "*",
      "Condition": {
          "StringLike": {
              "kms:EncryptionContext:aws:comprehend:arn": "arn:aws:comprehend:*"
          }
      }
    }
  ]
}
```

자세한 내용은AWS Key Management Service 개발자 안내서**의 [AWS KMS의 키 정책](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)을 참조하세요.

## 사용자 지정 모델을 위한 리소스 기반 정책


다른의 Amazon Comprehend 사용자가 계정 AWS 에서 사용자 지정 모델을 AWS 계정 가져오려면 먼저 권한을 부여해야 합니다. 권한을 부여하려면 공유하려는 모델 버전에 *리소스 기반 정책*을 추가합니다. 리소스 기반 정책은 AWS의 리소스에 연결하는 IAM 정책입니다.

사용자 지정 모델 버전에 리소스 정책을 연결하면 이 정책이 모델 버전에서 `comprehend:ImportModel` 작업을 수행할 수 있는 권한을 사용자, 그룹 또는 역할에 부여합니다.

**Example 사용자 지정 모델 버전을 위한 리소스 기반 정책**  
이 예제는 `Principal` 속성에 승인된 개체를 지정합니다. 리소스 “\$1”는 정책을 연결하는 특정 모델 버전을 나타냅니다.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "comprehend:ImportModel",
      "Resource": "*",
      "Principal": {
        "AWS": [
                "arn:aws:iam::111122223333:root",
                "arn:aws:iam::444455556666:user/ExampleUser",
                "arn:aws:iam::123456789012:role/ExampleRole"
         ]
      }
    }
  ]
}
```
사용자 지정 모델에 연결하는 정책의 경우 Amazon Comprehend에서 지원하는 유일한 작업은 `comprehend:ImportModel` 입니다.  
차이점에 대한 자세한 내용은 *IAM 사용 설명서*의 [자격 증명 기반 정책 및 리소스 기반 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html)을 참조하세요.

## 1단계: 사용자 지정 모델에 리소스 기반 정책 추가


 AWS Management Console AWS CLI또는 Amazon Comprehend API를 사용하여 리소스 기반 정책을 추가할 수 있습니다.

### AWS Management Console


 AWS Management Console에서 Amazon Comprehend를 사용할 수 있습니다.

**리소스 기반 정책을 추가하려면**

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/comprehend/](https://console.aws.amazon.com/comprehend/) Amazon Comprehend 콘솔을 엽니다.

1. 왼쪽 탐색 메뉴의 **사용자 지정**에서 사용자 지정 모델이 포함된 페이지를 선택합니다.

   1. 사용자 지정 문서 분류기를 공유하는 경우 **사용자 지정 분류**를 선택합니다.

   1. 사용자 지정 개체 인식기를 공유하는 경우 **사용자 지정 개체 인식**을 선택합니다.

1. 모델 목록에서 모델을 선택하면 세부 정보 페이지가 표시됩니다.

1. **버전**에서 공유하려는 모델 버전의 이름을 선택합니다.

1. 버전 세부 정보 페이지에서 **태그, VPC 및 정책** 탭을 선택합니다.

1. **리소스 기반 정책** 섹션에서 **편집**을 선택합니다.

1. **신뢰 정책 편집** 페이지에서 다음 작업을 수행합니다.

   1. **정책 이름**에는 정책을 만든 후 해당 정책을 쉽게 알아볼 수 있는 이름을 입력합니다.

   1. **권한 부여**에서 다음 개체 중 하나 이상을 지정하여 모델을 가져올 수 있도록 승인합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/comprehend/latest/dg/custom-copy-sharing.html)

1. **공유**에서 모델 버전의 ARN을 복사하여 사용자의 모델을 가져올 사람과 공유할 수 있습니다. 다른에서 사용자 지정 모델을 가져오는 경우 AWS 계정모델 버전 ARN이 필요합니다.

1. **저장**을 선택합니다. Amazon Comprehend는 리소스 기반 정책을 생성하여 모델에 연결합니다.

### AWS CLI


를 사용하여 사용자 지정 모델에 리소스 기반 정책을 추가하려면 [PutResourcePolicy](https://docs.aws.amazon.com/comprehend/latest/dg/API_PutResourcePolicy.html) 명령을 AWS CLI사용합니다. 이 명령은 다음 파라미터를 사용합니다.
+ `resource-arn` – 사용자 지정 모델의 ARN(모델 버전 포함).
+ `resource-policy` – 사용자 지정 모델에 연결할 리소스 기반 정책을 정의하는 JSON 파일.

  정책을 인라인 JSON 문자열로 제공할 수도 있습니다. 정책에 유효한 JSON을 제공하려면 속성 이름과 값을 큰 따옴표로 묶습니다. JSON 본문도 큰따옴표로 묶는 경우, 정책 내에 있는 큰따옴표를 이스케이프합니다.
+ `policy-revision-id` – Amazon Comprehend가 업데이트하려는 정책에 할당한 개정 ID. 이전 버전이 없는 새 정책을 생성하는 경우에는 이 파라미터를 사용하지 마십시오. Amazon Comprehend가 사용자를 대신하여 개정 ID를 생성합니다.

**Example `put-resource-policy` 명령을 사용하여 사용자 지정 모델에 리소스 기반 정책을 추가합니다.**  
이 예제는 **PolicyFile.json**이라는 JSON 파일에 정책을 정의하고, 이 정책을 모델에 연결합니다. 모델은 **mycf1**이라는 분류기의 버전 **v2**입니다.  

```
$ aws comprehend put-resource-policy \
> --resource-arn arn:aws:comprehend:us-west-2:111122223333:document-classifier/mycf1/version/v2 \
> --resource-policy file://policyFile.json \
> --policy-revision-id revision-id
```
리소스 정책의 JSON 파일에는 다음 내용이 포함되어 있습니다.  
+ *작업* –이 정책은 지정된 보안 주체에게 `comprehend:ImportModel` 사용 권한을 부여합니다.
+ *리소스* – 사용자 지정 모델의 ARN. 리소스 “\$1”는 `put-resource-policy` 명령에서 지정하는 모델 버전을 나타냅니다.
+ *보안 주체* - 정책은 444455556666`jane`의 AWS 계정 사용자와 AWS 계정 123456789012의 모든 사용자에게 권한을 부여합니다.  
****  

```
{
"Version":"2012-10-17",		 	 	 
 "Statement":[
    {"Sid":"ResourcePolicyForImportModel",
     "Effect":"Allow",
     "Action":["comprehend:ImportModel"],
     "Resource":"*",
     "Principal":
         {"AWS":
            ["arn:aws:iam::444455556666:user/jane",
             "123456789012"]
         }
   }
 ]
}
```

### Amazon Comprehend API


Amazon Comprehend API를 사용하여 사용자 지정 모델에 리소스 기반 정책을 추가하려면 [PutResourcePolicy](https://docs.aws.amazon.com/comprehend/latest/dg/API_PutResourcePolicy.html) API 작업을 사용하십시오.

모델을 생성하는 API 요청에서 사용자 지정 모델에 정책을 추가할 수도 있습니다. 이렇게 하려면 [CreateDocumentClassifier](https://docs.aws.amazon.com/comprehend/latest/dg/API_CreateDocumentClassifier.html) 또는 [CreateEntityRecognizer](https://docs.aws.amazon.com/comprehend/latest/dg/API_CreateEntityRecognizer.html) 요청을 제출할 때 ModelPolicy 파라미터에 대한 정책 JSON을 제공해야 합니다.

## 2단계: 다른 사용자가 가져오는 데 필요한 세부 정보를 제공하십시오.


이제 사용자 지정 모델에 리소스 기반 정책을 추가했으므로 다른 Amazon Comprehend 사용자에게 모델을 자신의 AWS 계정으로 가져올 수 있는 권한을 부여했습니다. 하지만 가져오려면 먼저 다음 세부 정보를 제공해야 합니다.
+ 모듈 버전의 Amazon 리소스 이름(ARN) 반환.
+ 모델이 포함된 AWS 리전 . 모델을 가져오는 사람은 누구나 동일한 AWS 리전 을 사용해야 합니다.
+ 모델이 암호화되었는지 여부와 암호화된 경우 사용하는 AWS KMS 키 유형: AWS 소유 키 또는 고객 관리형 키.
+ 모델이 고객 관리 키로 암호화된 경우 KMS 키의 ARN을 제공해야 합니다. 모델을 가져오는 사람은 누구나 자신의 AWS 계정에 IAM 서비스 역할의 ARN을 포함해야 합니다. 이 역할은 Amazon Comprehend가 KMS 키를 사용하여 모델을 가져오는 동안 모델을 복호화할 권한을 부여합니다.

다른 사용자가 모델을 가져오는 방법에 대한 자세한 정보는 [다른에서 사용자 지정 모델 가져오기 AWS 계정](custom-copy-importing.md)를 참조하세요.

# 다른에서 사용자 지정 모델 가져오기 AWS 계정
사용자 지정 모델 가져오기

Amazon Comprehend에서는 다른에 있는 사용자 지정 모델을 가져올 수 있습니다 AWS 계정. 모델을 가져오면 계정에 새 사용자 지정 모델이 생성됩니다. 새 사용자 지정 모델은 가져온 모델을 완전히 학습한 복제본입니다.

**Topics**
+ [

## 시작하기 전 준비 사항
](#custom-copy-importing-prerequisites)
+ [

## 사용자 지정 모델 가져오기
](#custom-copy-importing-procedure)

## 시작하기 전 준비 사항


다른에서 사용자 지정 모델을 가져오려면 먼저 모델을 공유한 AWS 계정사람이 다음을 수행해야 합니다.
+ 사용자에게 가져오기를 수행할 수 있는 권한 부여: 이 권한은 모델 버전에 연결된 리소스 기반 정책에서 부여됩니다. 자세한 내용은 [사용자 지정 모델을 위한 리소스 기반 정책](custom-copy-sharing.md#custom-copy-sharing-example-policy)을 참조하십시오.
+ 다음 정보 제공:
  + 모듈 버전의 Amazon 리소스 이름(ARN) 반환.
  + 모델이 포함된 AWS 리전 . 가져올 AWS 리전 때 동일한를 사용해야 합니다.
  + 모델이 AWS KMS 키로 암호화되는지 여부와 암호화되는 경우 사용되는 키 유형입니다.

모델이 암호화된 경우 사용되는 KMS 키 유형에 따라 다음과 같은 추가 단계를 수행해야 할 수 있습니다.
+ **AWS 소유 키**— 이 유형의 KMS 키는 AWS에서 소유하고 관리합니다. 모델이 로 암호화된 경우 추가 단계가 필요하지 AWS 소유 키않습니다.
+ **고객 관리형 키** -이 유형의 KMS 키는 AWS 고객이 자신의에서 생성, 소유 및 관리합니다 AWS 계정. 모델이 고객 관리 키로 암호화된 경우 모델을 공유한 사람은 다음을 수행해야 합니다.
  + 모델 복호화를 승인합니다. 이 권한은 고객 관리 키에 대한 KMS 키 정책에서 부여됩니다. 자세한 내용은 [AWS KMS 키 정책 설명](custom-copy-sharing.md#custom-copy-sharing-prerequisites-permissions-kms)를 참조하십시오.
  + 고객 관리형 키의 ARN을 제공합니다. IAM 서비스 역할을 생성할 때 이 ARN을 사용합니다. 이 역할은 Amazon Comprehend가 KMS 키를 사용하여 모델을 복호화할 권한을 부여합니다.

### 필수 권한


사용자 지정 모델을 가져오려면 먼저 사용자 또는 관리자가 AWS Identity and Access Management (IAM)에서 필요한 작업을 승인해야 합니다. Amazon Comprehend 사용자는 IAM 정책문을 통해 가져오기 허가를 받아야 합니다. 가져오기 중에 암호화 또는 복호화가 필요한 경우 Amazon Comprehend에 필요한 AWS KMS 키를 사용할 수 있는 권한을 부여해야 합니다.

### IAM 정책문


다음 예제와 같이 사용자, 그룹 또는 역할에는 `ImportModel` 작업을 허용하는 정책이 연결되어 있어야 합니다.

**Example 사용자 지정 모델을 가져오기 위한 IAM 정책**  

```
{ 
  "Effect": "Allow",
  "Action": [
    "comprehend:ImportModel"
  ],
  "Resource": "arn:aws:comprehend:us-west-2:111122223333:document-classifier/foo/version/*"
}
```

IAM 정책 생성에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM 정책 생성](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)을 참조하세요. IAM 자격 증명에 정책을 연결하는 방법에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM 자격 증명 권한 추가 및 제거](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)를 참조하세요.

### AWS KMS 암호화를 위한 IAM 서비스 역할


사용자 지정 모델을 가져올 때 다음 경우 중 하나에서 Amazon Comprehend가 AWS KMS 키를 사용하도록 권한을 부여해야 합니다.
+ 고객 관리형 키로 암호화된 사용자 지정 모델을 가져오고 있습니다 AWS KMS. 이 경우 Amazon Comprehend는 KMS 키에 액세스해야 가져오기 중에 모델을 복호화할 수 있습니다.
+ 가져오기로 생성한 새 사용자 지정 모델을 암호화하고 고객 관리 키를 사용하려고 합니다. 이 경우 Amazon Comprehend가 새 모델을 암호화할 수 있으려면 KMS 키에 대한 액세스 권한이 필요합니다.

Amazon Comprehend가 이러한 AWS KMS 키를 사용하도록 권한을 부여하려면 *IAM 서비스 역할을* 생성합니다. 이 유형의 IAM 역할은 AWS 서비스가 사용자를 대신하여 다른 서비스의 리소스에 액세스할 수 있도록 허용합니다. 서비스 역할에 대한 자세한 내용은 *IAM 사용 설명서*의 [AWS 서비스에 권한을 위임할 역할 생성을 참조하세요](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html).

Amazon Comprehend 콘솔을 사용하여 가져오면 Amazon Comprehend에서 자동으로 서비스 역할을 생성하도록 할 수 있습니다. 그렇지 않으면 가져오기 전에 IAM에서 서비스 역할을 생성해야 합니다.

다음 예제와 같이 IAM 서비스 역할에는 권한 정책 및 신뢰 정책이 있어야 합니다.

**Example 권한 정책**  
다음 권한 정책은 Amazon Comprehend가 사용자 지정 모델을 암호화하고 해독하는 데 사용하는 AWS KMS 작업을 허용합니다. 이는 두 개의 KMS 키에 대한 액세스 권한을 부여합니다.  
+ 가져올 모델이 AWS 계정 포함된 KMS 키 하나가에 있습니다. 이는 모델을 암호화하는 데 사용되었으며 Amazon Comprehend는 이를 사용하여 가져오기 중에 모델을 복호화합니다.
+ 다른 KMS 키는 모델을 AWS 계정 가져오는에 있습니다. Amazon Comprehend는 이 키를 사용하여 가져오기로 생성된 새 사용자 지정 모델을 암호화합니다.  
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
        "Effect": "Allow",
        "Action": [
            "kms:CreateGrant"
        ],
        "Resource": [
            "arn:aws:kms:us-west-2:111122223333:key/key-id",
            "arn:aws:kms:us-west-2:444455556666:key/key-id"
        ]
    },
    {
        "Effect": "Allow",
        "Action": [
            "kms:Decrypt",
            "kms:GenerateDatakey"
        ],
        "Resource": [
            "arn:aws:kms:us-west-2:111122223333:key/key-id",
            "arn:aws:kms:us-west-2:444455556666:key/key-id"
        ],
        "Condition": {
            "StringEquals": {
                "kms:ViaService": [
                    "s3.us-west-2.amazonaws.com"
                ]
            }
        }
    }
  ]
}
```

**Example 신뢰 정책**  

다음 신뢰 정책은 Amazon Comprehend가 역할을 맡고 권한을 얻는 것을 허용합니다 이를 통해 `comprehend.amazonaws.com` 서비스 주체가 `sts:AssumeRole` 작업을 수행할 수 있습니다. [혼동된 대리인 방지](cross-service-confused-deputy-prevention.md)를 위해 하나 이상의 글로벌 조건 컨텍스트 키를 사용하여 권한 범위를 제한합니다. `aws:SourceAccount`의 경우 모델을 가져오는 사용자의 계정 ID를 지정하십시오.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "comprehend.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "444455556666"  
        }
      }
    }
  ]
}
```

------

## 사용자 지정 모델 가져오기


 AWS Management Console AWS CLI또는 Amazon Comprehend API를 사용하여 사용자 지정 모델을 가져올 수 있습니다.

## AWS Management Console


 AWS Management Console에서 Amazon Comprehend를 사용할 수 있습니다.

**사용자 지정 모델을 가져오려면**

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/comprehend/](https://console.aws.amazon.com/comprehend/) Amazon Comprehend 콘솔을 엽니다.

1. 왼쪽 탐색 메뉴의 **사용자 지정**에서 가져오려는 모델 유형 페이지를 선택합니다.

   1. 사용자 지정 문서 분류기를 가져오는 경우 **사용자 지정 분류**를 선택합니다.

   1. 사용자 지정 개체 인식기를 가져오는 경우 **사용자 지정 개체 인식**을 선택합니다.

1. **버전 가져오기**를 선택합니다.

1. **모델 버전 가져오기** 페이지에서 다음 세부 정보를 입력합니다.
   + **모델 버전 ARN** — 가져올 모델 버전의 ARN입니다.
   + **모델 이름** - 가져오기 시 생성되는 새 모델의 사용자 지정 이름입니다.
   + **모델 이름** - 가져오기 시 생성되는 새 모델의 사용자 지정 이름입니다.

1. **모델 암호화**에서 가져오기로 생성하는 새 사용자 지정 모델을 암호화하는 데 사용할 KMS 키 유형을 선택합니다.
   + ** AWS 소유 키 사용** - Amazon Comprehend는 사용자를 대신하여 생성, 관리 및 사용되는 in AWS Key Management Service (AWS KMS) 키를 사용하여 모델을 암호화합니다 AWS.
   + **다른 AWS KMS 키 선택(고급)** - Amazon Comprehend는 사용자가 관리하는 고객 관리형 키를 사용하여 모델을 암호화합니다 AWS KMS.

     이 옵션을 선택하는 경우에 있는 KMS 키를 선택하거나 키 AWS 계정생성을 선택하여 새 ** AWS KMS 키를 생성합니다**.

1. **서비스 액세스** 섹션에서 Amazon Comprehend에서 다음 작업에 필요한 모든 AWS KMS 키에 대한 액세스 권한을 부여하십시오.
   + 가져오는 사용자 지정 모델을 복호화합니다.
   + 가져오기로 생성한 새 사용자 지정 모델을 암호화합니다.

   Amazon Comprehend가 KMS 키를 사용하도록 허용하는 IAM 서비스 역할로 액세스 권한을 부여합니다.

   **서비스 역할**에 대해 다음 중 하나를 수행합니다.
   + 사용하려는 기존 서비스 역할이 있는 경우, **기존 IAM 역할 사용**을 선택합니다. 그런 다음 **역할 이름**에서 해당 역할을 선택합니다.
   + Amazon Comprehend에서 역할을 생성하도록 하려면 **IAM 역할 생성**을 선택합니다.

1. Amazon Comprehend가 역할을 생성하도록 선택한 경우 다음을 수행합니다.

   1. **역할 이름**의 경우, 역할 이름 접미사를 입력하면 나중에 역할을 쉽게 알아볼 수 있습니다.

   1. **소스 KMS 키 ARN**의 경우, 가져오려는 모델을 암호화하는 데 사용되는 KMS 키의 ARN을 입력합니다. Amazon Comprehend는 가져오기 중에 이 키를 사용하여 모델을 복호화합니다.

1. (선택 사항) **태그** 섹션에서 가져오기를 통해 생성하는 새 사용자 지정 모델에 태그를 추가할 수 있습니다. 사용자 지정 모델 태그 지정에 대한 자세한 정보는 [새 리소스에 태그 지정](tagging-newtags.md)을 참조하세요.

1. **확인**을 선택합니다.

## AWS CLI


 AWS CLI에서 명령을 실행하여 Amazon Comprehend를 사용할 수 있습니다.

**Example 모델 가져오기 명령**  
사용자 지정 모델을 가져오려면 `import-model` 명령을 사용하십시오.  

```
$ aws comprehend import-model \
> --source-model arn:aws:comprehend:us-west-2:111122223333:document-classifier/foo/version/bar \
> --model-name importedDocumentClassifier \
> --version-name versionOne \
> --data-access-role-arn arn:aws:iam::444455556666:role/comprehendAccessRole \
> --model-kms-key-id kms-key-id
```
이 예제는 다음 파라미터를 사용합니다.  
+ `source-model`— 가져올 사용자 지정 모델의 ARN입니다.
+ `model-name`— 가져오기 시 생성되는 새 모델의 사용자 지정 이름입니다.
+ `version-name`— 가져오기 시 생성되는 새 모델 버전의 사용자 지정 이름입니다.
+ `data-access-role-arn` - Amazon Comprehend가 사용자 지정 모델을 암호화하거나 해독하는 데 필요한 AWS KMS 키를 사용할 수 있도록 허용하는 IAM 서비스 역할의 ARN입니다.
+ `model-kms-key-id`— Amazon Comprehend가 이 가져오기로 생성한 사용자 지정 모델을 암호화하는 데 사용하는 KMS 키의 ARN 또는 ID입니다. 이 키는의 AWS KMS 에 있어야 합니다 AWS 계정.

## Amazon Comprehend API


Amazon Comprehend API를 통해 사용자 지정 모델을 가져오려면 [ImportModel](https://docs.aws.amazon.com/comprehend/latest/dg/API_ImportModel.html) API 작업을 사용하십시오.