Knowledge Studio 솔루션 마이그레이션하기

Knowledge Studio에서 만든 사용자 지정 모델 및 기타 리소스를 Discovery로 마이그레이션하여 사용할 수 있습니다.

모델 그대로 사용

Knowledge Studio 모델을 즉시 사용하려면 Knowledge Studio에서 모델을 내보내고 머신러닝 보강으로 Discovery로 가져오세요.

Knowledge Studio 모델을 가져와서 Discovery에서 그대로 사용하면 모델에 정의된 루트 수준 개체 유형이 문서에서 발생할 때 인식될 수 있습니다. 발생하는 모든 엔티티 하위 유형에 대한 언급은 상위 엔티티 유형에 대한 언급으로 식별됩니다. 하위 유형 엔티티 자체는 보존되지 않습니다. 모델에서 엔티티의 여러 하위 유형을 계속 구분하도록 하려면 추가 단계를 수행해야 합니다. 자세한 내용은 서브타입 정보 보유 를 참조하세요.

ML 보강으로 가져온 모델은 계속 업데이트할 수 없습니다.

다음 유형의 모델을 그대로 가져와서 사용할 수 있습니다:

  • 사용자가 정의한 규칙을 기반으로 문서에서 엔티티를 찾는 Knowledge Studio로 작성된 규칙 기반 모델 (파일 형식: .pear)
  • Knowledge Studio 에서 생성된 머신 러닝 모델로, 언어의 미묘한 뉘앙스, 의미, 그리고 특정 산업에 특정한 관계를 이해합니다(파일 형식: .zip)

추가할 수 있는 모델은 배포 유형에 따라 다릅니다:

  • IBM Cloud IBM Watson® Knowledge Studio에서 호스팅되는 IBM Cloud 인스턴스로 만든 모델에 대해서만 추가할 수 있습니다.
  • IBM Cloud Pak for Data 노즈비 IBM Software Hub IBM Watson® Knowledge Studio 의 인스턴스로 생성된 모델을 IBM Cloud Pak® for Data 또는 IBM Cloud 에 호스팅된 모델에 추가할 수 있습니다.

자세한 내용은 임포트한 ML 모델을 사용하여 사용자 지정 용어 찾기 를 참조하세요.

말뭉치를 학습 데이터로 사용하기

Discovery에는 유형 시스템을 정의하는 데 사용할 수 있는 엔티티 추출기 도구가 있습니다. 엔티티 추출기 사용자 인터페이스는 기계 학습 모델을 위해 말뭉치에 추가하는 문서에 주석을 다는 데 사용되는 Knowledge Studio 사용자 인터페이스와 유사합니다. 그러나 Knowledge Studio에서는 하위 유형이나 관계가 아닌 루트 수준 엔티티만 정의합니다.

Knowledge Studio 모델을 그대로 가져와서 보강으로 적용하는 대신 Knowledge Studio 코퍼스를 가져올 수도 있습니다. Knowledge Studio 말뭉치를 Discovery 엔티티 추출 도구에 추가하면 말뭉치의 모든 루트 수준 엔티티가 Discovery 엔티티 추출 작업 공간에서 새 엔티티로 표시됩니다. 엔티티 하위 유형은 인식되지 않습니다. 하지만 추가 조치를 취하여 서브타입 정보 유지 할 수 있습니다.

Knowledge Studio 기계 학습 모델의 관계 및 핵심 참조는 표시되지 않으며, 모델과 연결된 사용자 정의 사전도 표시되지 않습니다.

모델을 가져올지 말뭉치를 가져올지 선택할 때 고려해야 할 사항입니다:

  • 말뭉치를 가져올 때 유형 시스템을 계속 편집할 수 있습니다. 학습된 모델을 가져오면 이후 Discovery에서 해당 모델을 편집할 수 없습니다.
  • 컬렉션에 보강으로 적용하는 가져온 모델은 루트 수준 엔터티 외에도 원래 모델이 인식하도록 학습된 모든 엔터티 하위 유형, 관계 및 핵심 참조 정보를 인식할 수 있습니다. 엔티티 추출기 강화는 엔티티만 찾아서 태그를 지정할 수 있습니다.

자세한 내용은 Knowledge Studio 말뭉치 가져오기 를 참조하세요.

하위 유형 정보 유지

Knowledge Studio 모델을 Discovery로 가져오면 모델에 정의된 모든 하위 유형이 상위 엔터티 유형의 멘션으로 식별됩니다. 하위 유형 엔티티 자체는 보존되지 않습니다. 하위 유형 정보를 유지하려면 엔티티 하위 유형을 새 루트 수준 엔티티 유형으로 변환하여 유형 시스템을 평평하게해야 합니다.

하위 유형 구분이 모델에 중요한 가치를 더한다고 확신하는 경우에만 이 단계를 따르세요. 많은 사용 사례에서 루트 수준 엔티티 유형을 사용하는 것으로 충분합니다.

말뭉치에 있는 문서 중 Natural Language Understanding 서비스로 사전 주석이 달린 문서가 있는 경우 이 절차를 사용하여 하위 유형을 유지할 수 없습니다. 플랫타입 시스템이 플랜에 허용되는 엔티티 유형 수를 초과하지 않는지 확인하세요. 자세한 내용은 엔티티 추출기 제한 를 참조하세요.

예를 들어 모델에 다음과 같은 계층 구조를 가진 엔티티 유형이 있을 수 있습니다:

APPLIANCES
FURNITURE
  PATIO
  LIVING
  DINING

유형 시스템의 평면화된 버전은 다음과 같습니다:

APPLIANCES
FURNITURE_NONE
FURNITURE_PATIO
FURNITURE_LIVING
FURNITURE_DINING

유형 시스템을 평평하게 만드는 데 유용한 접근 방식에는 다음과 같은 변경 사항이 포함됩니다:

  • 각 하위 유형의 레이블에 접두사로 상위 엔티티 유형 레이블(FURNITURE)을 추가하여 레이블의 계층적 관계를 유지하는 새 루트 수준 엔티티를 생성합니다. 예를 들어 FURNITURE_PATIO, FURNITURE_LIVING 및 FURNITURE_DINING 가 있습니다.
  • 상위 루트 수준 엔티티 레이블에 NONE이라는 단어를 추가하여 상위로 식별합니다. 예를 들어, FURNITURE_NONE입니다.
  • 하위 유형이 없는 엔티티 유형의 레이블은 변경하지 않은 채로 둡니다. 예를 들어 APPLIANCES 레이블은 변경되지 않습니다.

엔티티 하위 유형 정보를 유지하려면 다음 단계를 완료합니다:

  1. Knowledge Studio 모델의 어노테이션 및 학습이 완료되어 모델을 배포할 준비가 되었는지 확인합니다.

  2. 말뭉치의 문서에 주석을 다는 데 사용된 유형 시스템을 Knowledge Studio에서 .json 파일로 내보냅니다.

    Knowledge Studio 배포 유형에 따라 적절한 내보내기 단계를 따르세요:

  3. 유형 시스템 JSON 파일을 수정합니다. 각 하위 유형에 대해 새 루트 수준 엔티티 유형을 추가합니다.

    예를 들어 원래 유형 시스템에는 다음과 같은 유형이 포함될 수 있습니다:

    {
      "id":"b9d6caa2-90ac-47ff-91f6-2149b8ffcf20",
      "label":"FURNITURE",
      "sireProp":{
        "mentionType":null,
        "subtypes":["PATIO","LIVING","DINING"],
        "roles":["b9d6caa2-90ac-47ff-91f6-2149b8ffcf20","93ba1f27-173f-4714-b31e-77bdd8cb9932"],
        "clazz":null,
        "color":"black",
        "hotkey":"m",
        "backGroundColor":"#00FFFF",
        "active":true,
        "roleOnly":false},
        "creationDate":1610611788484,
        "source":null,
        "modifiedDate":0,
        "typeType":null,
        "typeClass":null,
        "typeVersion":null,
        "typeDesc":null,
        "typeSuperType":null,
        "typeSuperTypeId":null,
        "typeCreateDate":null,
        "typeUpdateDate":null,
        "typeProvenance":null,
        "alchemyAPITypes":null,
        "nluAPITypes":null},
    

    하위 유형을 새 루트 수준 유형으로 변환하려면 다음과 같이 변경합니다:

    {
      "id":"b9d6caa2-90ac-47ff-91f6-2149b8ffcf20",
      "label":"FURNITURE_NONE",
      "sireProp":{
        "mentionType":null,
        "subtypes":null,
        "roles":["b9d6caa2-90ac-47ff-91f6-2149b8ffcf20","93ba1f27-173f-4714-b31e-77bdd8cb9932"],
        "clazz":null,
        "and so on"
        }
    },
    {
      "id":"b9d6caa2-90ac-47ff-91f6-2149b8ffcf20",
      "label":"FURNITURE_PATIO",
      "sireProp":{
        "mentionType":null,
        "subtypes":null,
        "roles":["b9d6caa2-90ac-47ff-91f6-2149b8ffcf20","93ba1f27-173f-4714-b31e-77bdd8cb9932"],
        "clazz":null,
        "and so on"
        }
    },
    {
      "id":"b9d6caa2-90ac-47ff-91f6-2149b8ffcf20",
      "label":"FURNITURE_LIVING",
      "sireProp":{
        "mentionType":null,
        "subtypes":null,
        "roles":["b9d6caa2-90ac-47ff-91f6-2149b8ffcf20","93ba1f27-173f-4714-b31e-77bdd8cb9932"],
        "clazz":null,
        "and so on"
        }
    },
    {
      "id":"b9d6caa2-90ac-47ff-91f6-2149b8ffcf20",
      "label":"FURNITURE_DINING",
      "sireProp":{
        "mentionType":null,
        "subtypes":null,
        "roles":["b9d6caa2-90ac-47ff-91f6-2149b8ffcf20","93ba1f27-173f-4714-b31e-77bdd8cb9932"],
        "clazz":null,
        "and so on"
        }
    },
    
  4. 각각의 새 루트 수준 엔티티 유형에 고유 ID를 할당합니다.

  5. 머신 러닝 모델의 말뭉치를 Knowledge Studio에서 압축 파일로 내보냅니다.

    Knowledge Studio 배포 유형에 따라 적절한 내보내기 단계를 따르세요:

  6. 다운로드한 말뭉치에서 하위 유형이 정의된 모든 멘션에 대해 멘션의 유형 정보를 업데이트하여 새로운 루트 수준의 엔티티 유형을 지정합니다.

    예를 들어 원래 유형 시스템에는 PATIO 하위 유형 멘션이 포함될 수 있습니다:

    {
      "id" : "Blogs_shopper.com_dc5cf4764d91f87575b17ac8a5268462.en-M92",
      "source" : "IMPORT",
      "properties" : {
        "SIRE_ENTITY_CLASS" : "SPC",
        "SIRE_MENTION_CLASS" : "SPC",
        "SIRE_ENTITY_LEVEL" : "NONE",
        "SIRE_ENTITY_SUBTYPE" : "PATIO",
        "SIRE_MENTION_ROLE" : "FURNITURE",
        "SIRE_MENTION_TYPE" : "NONE"
      },
      "type" : "FURNITURE",
      "begin" : 3221,
      "end" : 3234,
      "inCoref" : false
    },
    

    멘션의 SIRE_MENTION_ROLE 및 type 값을 새 루트 수준 엔티티 레이블(예: FURNITURE_PATIO)로 바꿉니다. NONE 를 SIRE_ENTITY_SUBTYPE 값으로 지정합니다.

    {
      "id" : "Blogs_shopper.com_dc5cf4764d91f87575b17ac8a5268462.en-M92",
      "source" : "IMPORT",
      "properties" : {
        "SIRE_ENTITY_CLASS" : "SPC",
        "SIRE_MENTION_CLASS" : "SPC",
        "SIRE_ENTITY_LEVEL" : "NONE",
        "SIRE_ENTITY_SUBTYPE" : "NONE",
        "SIRE_MENTION_ROLE" : "FURNITURE_PATIO",
        "SIRE_MENTION_TYPE" : "NONE"
      },
      "type" : "FURNITURE_PATIO",
      "begin" : 3221,
      "end" : 3234,
      "inCoref" : false
    },
    

    부모 멘션 레이블의 이름을 바꾸는 것을 잊지 마세요.

    예를 들어 "SIRE_ENTITY_SUBTYPE" : "OTHER" 을 지정하는 멘션을 찾은 다음 값을 OTHER 에서 NONE 으로 변경합니다.

    멘션의 SIRE_MENTION_ROLE 및 type 값을 새 상위 엔티티 유형 레이블로 변경합니다.

    예를 들어 이러한 멘션의 SIRE_MENTION_ROLE 및 type 값을 FURNITURE 에서 FURNITURE_NONE 로, SIRE_ENTITY_SUBTYPE 를 NONE 으로 변경합니다.

    {
      "id" : "Sports_herald.com_be99aca94a7cff5abb74476b844a11b6.en-M75",
      "source" : "IMPORT",
      "properties" : {
        "SIRE_MENTION_CLASS" : "SPC",
        "SIRE_ENTITY_LEVEL" : "NONE",
        "SIRE_ENTITY_SUBTYPE" : "NONE",
        "SIRE_ENTITY_CLASS" : "SPC",
        "SIRE_MENTION_TYPE" : "NONE",
        "SIRE_MENTION_ROLE" : "FURNITURE_NONE"
      },
      "type" : "FURNITURE_NONE",
      "begin" : 2063,
      "end" : 2071,
      "inCoref" : false
    },
    
  7. 새로운 평면화된 엔티티 유형에 따라 누락된 관계에 대한 주석을 추가합니다.

  8. Knowledge Studio 작업 영역을 만든 다음 변환된 유형 시스템을 업로드합니다.

    Knowledge Studio 배포 유형에 따라 유형 시스템을 업로드하려면 적절한 단계를 따르세요:

  9. 주석이 달린 문서를 워크스페이스에 업로드합니다. 내보낸 데이터의 원본 파일 구조를 유지합니다. 예를 들어 압축 파일의 루트 레벨 디렉터리가 내보낸 원본 파일과 동일한지 확인합니다.

    Knowledge Studio 배포 유형에 따라 문서 업로드에 적합한 단계를 따르세요:

  10. Knowledge Studio에서 Train 를 클릭하여 모델을 다시 학습시킵니다.

    자세한 내용은 배포 유형에 해당하는 주제를 참조하세요:

  11. 이제 Knowledge Studio에서 모델을 내보내고 Discovery로 가져와서 머신러닝 보강에 사용할 준비가 되었습니다.

    자세한 내용은 임포트한 ML 모델을 사용하여 사용자 지정 용어 찾기 를 참조하세요.