Watson Discovery 조작 기본편 -API에 의한 관련도 학습

전제



IBM Watson™ Discovery 서비스는 연관성 학습 기능을 사용하여 자연어 조회의 관련성을 향상시킬 수 있습니다. Discovery 도구 또는 Discovery API를 사용하여 학습할 수 있습니다. 이 섹션에서는 API를 사용한 관련도 학습에 대해 설명합니다.

준비 작업



먼저 다음 정보를 준비합니다.
  • username/password: Discovery 서비스 자격 증명에서 가져오기
  • environment_id/collection_id : Discovery의 collection 화면으로부터 취득
  • natural_language_query : 학습시킬 검색 문장 ("XX에 대해 말해"etc)
  • document_id: 평가할 문서의 ID
  • relevance : 관련성을 나타내는 정수 값

  • relevance 필드는 다음을 참조하십시오.

    API를 사용한 결과 관련성 개선

    · relevance : 쿼리와 교육 데이터 간의 상대적인 관련성을 나타내는 0에서 100 사이의 정수입니다. 값이 클수록 관련성이 높아집니다. 값 0은 조회와 관련이 없음을 나타내고, 값 100은 조회와의 절대 연관성을 나타냅니다.

    주: relevance 매개변수의 범위는 최대 유연성을 보장하기 위해 0 - 100이지만 예제의 스코어링을 단순화하기 위해 더 작은 범위를 사용할 수 있습니다. 0 에서 4 까지를 표준 범위로 하거나 범위 전체를 사용하는 것의 20 씩의 증분 (0, 20, 40, 60, 80 및 100)만을 사용하도록(듯이) 할 수 있습니다. Discovery 도구는 관련성 점수 0을 사용하여 관련성 없음을 나타내며 10에서 관련성 있음을 나타냅니다. Discovery 도구와 API를 모두 사용하여 문서를 점수화할 계획이거나 API에서 시작하여 도구로 마이그레이션할 계획이라면 이 0과 10 관련 점수를 사용하십시오.

    명령 실행



    준비 작업에서 준비한 정보를 다음 명령에 반영하여 실행합니다.
    curl -X POST -u "{username}":"{password}" -H "Content-Type: application/json" -d
    '{
      "natural_language_query": "{natural_language_query}",
      "examples": [
        {
          "document_id": "{document_id}",
          "relevance": "{relevance}"
        }
      ]
    }' "https://gateway.watsonplatform.net/discovery/api/v1/environments/{environment_id}/collections/{collection_id}/training_data?version=2018-10-15"
    

    명령 실행 예
    curl -X POST -u "username":"password" -H "Content-Type: application/json" -d
    '{
      "natural_language_query": "XXについて教えて",
      "examples": [
        {
          "document_id": "adaf50f1-2526-4fad-b670-7d6e8a42e6e6",
          "relevance": 10
        },
        {
          "document_id": "63919442-7d5b-4cae-ab7e-56f58b1390fe",
          "relevance": 0
        }
      ]
    }' "https://gateway.watsonplatform.net/discovery/api/v1/environments/{environment_id}/collections/{collection_id}/training_data?version=2018-10-15"
    

    위의 예에서는 명령 중에 검색문과 문서에 대한 평가를 넣고 있습니다만, Windows에서 일본어를 넣고 명령을 실행하면 문자가 깨져 버리기 때문에 curl 명령의 「-d」의 내용을 별도 파일로 작성해 커멘드를 실행하는 것으로 문자 깨짐을 없애 줍니다.

    다음과 같은 json 파일을 준비합니다.

    training.json
    {
      "natural_language_query": "XXについて教えて",
      "filter": "text:criminology",
      "examples": [
        {
          "document_id": "adaf50f1-2526-4fad-b670-7d6e8a42e6e6",
          "relevance": 10
        },
        {
          "document_id": "63919442-7d5b-4cae-ab7e-56f58b1390fe",
          "relevance": 0
        }
      ]
    }
    

    Windows 환경에서 실행되는 명령
    curl -X POST -u {username}:{password} -H Content-Type: application/json d @{ファイル名} "https://gateway.watsonplatform.net/discovery/api/v1/environments/{environment_id}/collections/{collection_id}/training_data?version=2018-10-15"
    

    주: curl 명령의 내용은 갱신될 가능성이 있으므로 필요에 따라서 API 레퍼런스의 「Add query to training data」의 정보를 참조해 주세요.
    API 참조


    참고 정보



    API 참조
    API를 사용한 결과 관련성 개선

    좋은 웹페이지 즐겨찾기