엔터티 인식 기술Entity Recognition cognitive skill

엔터티 인식 기술은 텍스트에서 다양한 형식의 엔터티를 추출합니다.The Entity Recognition skill extracts entities of different types from text. 이 기술은 Cognitive Services의 Text Analytics에서 제공하는 기계 학습 모델을 사용합니다.This skill uses the machine learning models provided by Text Analytics in Cognitive Services.

참고

처리 빈도를 늘리거나 문서를 추가하거나 AI 알고리즘을 추가하여 범위를 확장할 때 청구 가능한 Cognitive Services 리소스를 연결해야 합니다.As you expand scope by increasing the frequency of processing, adding more documents, or adding more AI algorithms, you will need to attach a billable Cognitive Services resource. Cognitive Services에서 API를 호출하는 경우와 Azure Cognitiv Search에서 문서 크래킹 단계의 일부로 이미지를 추출하는 경우에는 요금이 부과됩니다.Charges accrue when calling APIs in Cognitive Services, and for image extraction as part of the document-cracking stage in Azure Cognitive Search. 문서에서 텍스트 추출할 때는 요금이 발생하지 않습니다.There are no charges for text extraction from documents.

기본 제공 기술을 실행하는 요금은 기존 Cognitive Services 종량제 가격으로 청구됩니다.Execution of built-in skills is charged at the existing Cognitive Services pay-as-you go price. 이미지 추출 가격 책정은 Azure Cognitiv Search 가격 책정 페이지에 설명되어 있습니다.Image extraction pricing is described on the Azure Cognitive Search pricing page.

@odata.type

Microsoft.Skills.Text.EntityRecognitionSkillMicrosoft.Skills.Text.EntityRecognitionSkill

데이터 제한Data limits

레코드의 최대 크기는 String.Length에 의해 측정된 대로 50,000자여야 합니다.The maximum size of a record should be 50,000 characters as measured by String.Length. 핵심 구문 추출기로 보내기 전에 데이터를 분할해야 할 경우 텍스트 분할 기술 사용을 고려합니다.If you need to break up your data before sending it to the key phrase extractor, consider using the Text Split skill.

기술 매개 변수Skill parameters

매개 변수는 대/소문자를 구분하며 모두 선택 사항입니다.Parameters are case-sensitive and are all optional.

매개 변수 이름Parameter name DescriptionDescription
categories 추출되어야 하는 범주 배열입니다.Array of categories that should be extracted. 가능한 범주 형식: "Person", "Location", "Organization", "Quantity", "Datetime", "URL", "Email".Possible category types: "Person", "Location", "Organization", "Quantity", "Datetime", "URL", "Email". 범주가 제공되지 않으면 모든 형식이 반환됩니다.If no category is provided, all types are returned.
defaultLanguageCode 입력 텍스트의 언어 코드입니다.Language code of the input text. 지원 되는 언어는 다음과 ar, cs, da, de, en, es, fi, fr, hu, it, ja, ko, nl, no, pl, pt-BR, pt-PT, ru, sv, tr, zh-hans 같습니다.The following languages are supported: ar, cs, da, de, en, es, fi, fr, hu, it, ja, ko, nl, no, pl, pt-BR, pt-PT, ru, sv, tr, zh-hans. 모든 언어에 대해 모든 엔터티 범주가 지원 되는 것은 아닙니다. 아래 참고를 참조 하세요.Not all entity categories are supported for all languages; see note below.
minimumPrecision 0과 1 사이의 값입니다.A value between 0 and 1. 출력의 신뢰도 점수가 namedEntities 이 값 보다 낮으면 엔터티가 반환 되지 않습니다.If the confidence score (in the namedEntities output) is lower than this value, the entity is not returned. 기본값은 0입니다.The default is 0.
includeTypelessEntities true현재 범주에 맞지 않는 잘 알려진 엔터티를 인식 하려면로 설정 합니다.Set to true if you want to recognize well-known entities that don't fit the current categories. 인식 된 엔터티는 entities 복합 출력 필드에서 반환 됩니다.Recognized entities are returned in the entities complex output field. 예를 들어 "Windows 10"은 잘 알려진 엔터티 (a 제품) 이지만 "제품"은 지원 되는 범주가 아니므로이 엔터티는 엔터티 출력 필드에 포함 됩니다.For example, "Windows 10" is a well-known entity (a product), but since "Products" is not a supported category, this entity would be included in the entities output field. 기본값은 falseDefault is false

기술 입력Skill inputs

입력 이름Input name 설명Description
languageCode (선택 사항)Optional. 기본값은 "en"입니다.Default is "en".
text 분석할 텍스트입니다.The text to analyze.

기술 출력Skill outputs

참고

모든 엔터티 범주가 모든 언어로 지원되는 것은 아닙니다.Not all entity categories are supported for all languages. "Person", "Location""Organization" 엔터티 범주 형식은 위의 전체 언어 목록에 대해 지원 됩니다.The "Person", "Location", and "Organization" entity category types are supported for the full list of languages above. De, en, es, _fr_및 zh-cn hans"Quantity" , "Datetime" , 및 형식의 추출을 지원 "URL" "Email" 합니다.Only de, en, es, fr, and zh-hans support extraction of "Quantity", "Datetime", "URL", and "Email" types. 자세한 내용은 텍스트 분석 API에 대 한 언어 및 지역 지원을 참조 하세요.For more information, see Language and region support for the Text Analytics API.

출력 이름Output name 설명Description
persons 각 문자열이 사람 이름을 나타내는 경우 문자열 배열입니다.An array of strings where each string represents the name of a person.
locations 각 문자열이 위치를 나타내는 경우 문자열 배열입니다.An array of strings where each string represents a location.
organizations 각 문자열이 조직을 나타내는 경우 문자열 배열입니다.An array of strings where each string represents an organization.
quantities 각 문자열이 수량을 나타내는 경우 문자열 배열입니다.An array of strings where each string represents a quantity.
dateTimes 각 문자열이 DateTime(텍스트에 표시되는 대로) 값을 나타내는 경우 문자열 배열입니다.An array of strings where each string represents a DateTime (as it appears in the text) value.
urls 각 문자열이 URL을 나타내는 경우 문자열 배열입니다.An array of strings where each string represents a URL
emails 각 문자열이 메일을 나타내는 경우 문자열 배열입니다.An array of strings where each string represents an email
namedEntities 다음 필드가 포함된 복합 형식의 배열입니다.An array of complex types that contains the following fields:
  • categorycategory
  • 값 (실제 엔터티 이름)value (The actual entity name)
  • 오프셋(텍스트에 발견된 위치)offset (The location where it was found in the text)
  • 신뢰도 (더 높은 값은 실제 엔터티입니다.)confidence (Higher value means it's more to be a real entity)
entities 다음 필드와 함께 텍스트에서 추출된 엔터티에 대한 풍부한 정보가 포함된 복합 형식의 배열입니다.An array of complex types that contains rich information about the entities extracted from text, with the following fields
  • name(실제 엔터티 이름.name (the actual entity name. “정규화된” 형식을 나타냄)This represents a "normalized" form)
  • wikipediaIdwikipediaId
  • wikipediaLanguagewikipediaLanguage
  • wikipediaUrl(엔터티에 대한 Wikipedia 페이지 링크)wikipediaUrl (a link to Wikipedia page for the entity)
  • bingIdbingId
  • type(인식된 엔터티의 범주)type (the category of the entity recognized)
  • subType(특정 범주에서만 사용 가능, 더 세부적인 엔터티 형식 보기를 제공함)subType (available only for certain categories, this gives a more granular view of the entity type)
  • matches(포함된 복합 컬렉션)matches (a complex collection that contains)
    • text(엔터티의 원시 텍스트)text (the raw text for the entity)
    • offset(발견된 위치)offset (the location where it was found)
    • length(원시 엔터티 텍스트의 길이)length (the length of the raw entity text)

샘플 정의Sample definition

  {
    "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill",
    "categories": [ "Person", "Email"],
    "defaultLanguageCode": "en",
    "includeTypelessEntities": true,
    "minimumPrecision": 0.5,
    "inputs": [
      {
        "name": "text",
        "source": "/document/content"
      }
    ],
    "outputs": [
      {
        "name": "persons",
        "targetName": "people"
      },
      {
        "name": "emails",
        "targetName": "contact"
      },
      {
        "name": "entities"
      }
    ]
  }

샘플 입력Sample input

{
    "values": [
      {
        "recordId": "1",
        "data":
           {
             "text": "Contoso corporation was founded by John Smith. They can be reached at contact@contoso.com",
             "languageCode": "en"
           }
      }
    ]
}

샘플 출력Sample output

{
  "values": [
    {
      "recordId": "1",
      "data" : 
      {
        "persons": [ "John Smith"],
        "emails":["contact@contoso.com"],
        "namedEntities": 
        [
          {
            "category":"Person",
            "value": "John Smith",
            "offset": 35,
            "confidence": 0.98
          }
        ],
        "entities":  
        [
          {
            "name":"John Smith",
            "wikipediaId": null,
            "wikipediaLanguage": null,
            "wikipediaUrl": null,
            "bingId": null,
            "type": "Person",
            "subType": null,
            "matches": [{
                "text": "John Smith",
                "offset": 35,
                "length": 10
            }]
          },
          {
            "name": "contact@contoso.com",
            "wikipediaId": null,
            "wikipediaLanguage": null,
            "wikipediaUrl": null,
            "bingId": null,
            "type": "Email",
            "subType": null,
            "matches": [
            {
                "text": "contact@contoso.com",
                "offset": 70,
                "length": 19
            }]
          },
          {
            "name": "Contoso",
            "wikipediaId": "Contoso",
            "wikipediaLanguage": "en",
            "wikipediaUrl": "https://en.wikipedia.org/wiki/Contoso",
            "bingId": "349f014e-7a37-e619-0374-787ebb288113",
            "type": null,
            "subType": null,
            "matches": [
            {
                "text": "Contoso",
                "offset": 0,
                "length": 7
            }]
          }
        ]
      }
    }
  ]
}

이 기술 출력의 엔터티에 대해 반환 되는 오프셋은 텍스트 분석 API에서 직접 반환 됩니다. 즉, 원본 문자열을 인덱싱하는 데 사용 하는 경우에는 .Net에서 쌍인지 클래스를 사용 하 여 올바른 콘텐츠를 추출 해야 합니다.Note that the offsets returned for entities in the output of this skill are directly returned from the Text Analytics API, which means if you are using them to index into the original string, you should use the StringInfo class in .NET in order to extract the correct content. 자세한 내용은 여기를 참조 하세요.More details can be found here.

오류 사례Error cases

문서에 대한 언어 코드가 지원되지 않는 경우 오류가 반환되고 엔터티가 추출되지 않습니다.If the language code for the document is unsupported, an error is returned and no entities are extracted.

참고 항목See also