패턴을 추가하여 예측 정확도를 개선하는 방법
Important
LUIS는 2025년 10월 1일에 사용 중지되며 2023년 4월 1일부터 새 LUIS 리소스를 만들 수 없습니다. 지속적인 제품 지원 및 다국어 기능을 활용하려면 LUIS 애플리케이션을 대화 언어 이해로 마이그레이션하는 것이 좋습니다.
LUIS 앱이 엔드포인트 발화를 수신한 후 패턴을 사용하여 단어 순서 및 단어 선택에 패턴을 노출하는 발화에 대한 예측 정확도를 개선합니다. 패턴은 특정 구문을 사용하여 엔터티, 엔터티 역할 및 선택적 텍스트의 위치를 지정합니다.
참고 항목
올바른 구문을 사용하여 템플릿 발화 추가
LUIS 포털에 로그인하고 구독 및 제작 리소스를 선택하여 해당 제작 리소스에 할당된 앱을 확인합니다.
내 앱 페이지에서 해당 이름을 선택하여 앱을 엽니다.
왼쪽 패널에서 애플리케이션 성능 향상의 패턴을 선택합니다.
패턴에 대한 올바른 의도를 선택합니다.
템플릿 텍스트 상자에 템플릿 발화를 입력하고 Enter 키를 선택합니다. 엔터티 이름을 입력하려면 올바른 패턴 엔터티 구문을 사용합니다.
{
를 사용하여 엔터티 구문을 시작합니다. 엔터티 목록이 표시됩니다. 올바른 엔터티를 선택합니다.엔터티에 역할이 포함된 경우
{Location:Origin}
와 같은 엔터티 이름 뒤에 단일 콜론(:
)으로 역할을 표시합니다. 엔터티 역할 목록이 목록에 표시됩니다. 역할을 선택한 후 Enter 키를 선택합니다.올바른 엔터티를 선택한 후 패턴 입력을 완료하고 Enter 키를 선택합니다. 패턴 입력을 완료하면 앱을 학습시킵니다.
pattern.any 엔터티 만들기
Pattern.any 엔터티는 의도의 예제 발화가 아닌 패턴에서만 유효합니다. 이 유형의 엔터티는 LUIS가 다양한 길이 및 단어 선택이 포함된 엔터티의 끝을 찾는 데 도움을 줍니다. 이 엔터티는 패턴에 사용되므로 LUIS는 발화 템플릿에서 엔터티의 끝 위치를 알 수 있습니다.
LUIS 포털에 로그인하고 구독 및 제작 리소스를 선택하여 해당 제작 리소스에 할당된 앱을 확인합니다.
내 앱 페이지에서 해당 이름을 선택하여 앱을 엽니다.
빌드 섹션에서 왼쪽 패널의 엔터티를 선택한 다음, + 만들기를 선택합니다.
엔터티 형식 대화 상자에서 이름 상자에 엔터티 이름을 입력하고 Pattern.Any를 형식으로 선택한 다음 만들기를 선택합니다.
이 엔터티를 사용하여 패턴 발화를 만들면 결합된 기계 학습 및 텍스트 일치 알고리즘을 사용하여 엔터티가 추출됩니다.
예제 발화를 패턴으로 추가
엔터티에 대한 패턴을 추가하는 가장 쉬운 방법은 의도 세부 정보 페이지에서 패턴을 만드는 것입니다. 이렇게 하면 구문이 예제 발화와 일치하게 됩니다.
LUIS 포털에 로그인하고 구독 및 제작 리소스를 선택하여 해당 제작 리소스에 할당된 앱을 확인합니다.
내 앱 페이지에서 해당 이름을 선택하여 앱을 엽니다.
의도 목록 페이지에서 템플릿 발화를 만들기 위한 예제 발화의 의도 이름을 선택합니다.
의도 세부 정보 페이지에서 템플릿 발화로 사용할 예제 발화의 행을 선택하고, 상황에 맞는 도구 모음에서 + 패턴으로 추가를 선택합니다.
발화는 발화에서 패턴을 만들기 위해 엔터티를 포함해야 합니다.
팝업 상자의 패턴 확인 페이지에서 완료를 선택합니다. 엔터티의 하위 엔터티 또는 기능을 정의할 필요가 없습니다. 기계 학습 엔터티를 나열하기만 하면 됩니다.
텍스트를 선택적으로 선택하는 등 대괄호
[]
를 사용하여 템플릿을 편집해야 하는 경우 패턴 페이지에서 이 편집 작업을 수행해야 합니다.탐색 모음에서 학습을 선택하여 새 패턴으로 앱을 학습합니다.
OR 연산자 및 group 사용
다음 2가지 패턴은 group "( )" 및 OR "|" 구문을 사용하여 단일 패턴으로 결합할 수 있습니다.
의도 | 선택적 텍스트와 미리 작성된 엔터티가 있는 예제 발언 |
---|---|
OrgChart-Manager | "[[in]{datetimeV2}]에서 {EmployeeListEntity}['s] 관리자는 누구일까요?" |
OrgChart-Manager | "[[on]{datetimeV2}]에서 {EmployeeListEntity}['s] 관리자는 누구일까요?" |
새 템플릿 발화는 다음과 같습니다.
"[([in]|[on]){datetimeV2}]에서 {EmployeeListEntity}['s] 관리자는 누구( 였나요 | 인가요 | 일까요 )?"
여기서는 필수 동사 시제를 group으로 묶고, 선택적 'in' 및 'on'과 or 파이프를 사이에 사용합니다.
템플릿 발언
Human Resource 주체 도메인의 특성상 조직에서 직원 관계를 묻는 몇 가지 일반적인 방법이 있습니다. 다음 예제 발화와 같습니다.
- "Who does Jill Jones report to?"
- "Who reports to Jill Jones?"
이러한 발언이 너무 가까워서 많은 발언 예제를 제공하지 않고는 각각의 컨텍스트 고유성을 확인하기가 어렵습니다. 의도에 대한 패턴을 추가하면 여러 발언 예제를 더 제공할 필요 없이 LUIS가 의도에 대한 일반적인 발언 패턴을 학습합니다.
팁
검토 목록에서 각 발화를 삭제할 수 있습니다. 삭제되면 목록에 다시 나타나지 않습니다. 이는 사용자가 엔드포인트에서 동일한 발화를 입력하는 경우에도 적용됩니다.
이 의도에 대한 템플릿 발화 예제는 다음과 같습니다.
템플릿 발화 예제 | 구문 의미 |
---|---|
{EmployeeListEntity}는 누구에게 보고하나요[?] | 교환 가능: {EmployeeListEntity} 무시: [?] |
Who reports to {EmployeeListEntity}[?] | 교환 가능: {EmployeeListEntity} 무시: [?] |
"{EmployeeListEntity}" 구문은 템플릿 발화 내의 엔터티 위치 및 엔터티 형식을 표시합니다. 선택적 구문인 "[?]"는 선택적인 단어 또는 문장 부호를 표시합니다. LUIS는 대괄호로 묶인 선택적 텍스트는 무시하고 발언을 일치시킵니다.
Important
구문은 정규식처럼 보이지만 정규식이 아닙니다. 중괄호, "{ }" 및 대괄호, "[ ]", 구문만 지원됩니다. 최대 두 수준까지 중첩될 수 있습니다.
패턴을 발언과 일치시키려면 먼저 발언 내의 엔터티가 템플릿 발언의 엔터티와 일치되어야 합니다. 즉, 엔터티를 사용하는 패턴이 성공하려면 엔터티의 예제에 예측 수준이 높은 발화 예제가 충분히 있어야 합니다. 그러나 템플릿은 엔터티 예측에 도움이 되지 않습니다. 템플릿은 의도만 예측합니다.
참고 항목
패턴을 사용하면 몇 가지 예제 발언을 제공할 수 있지만 엔터티가 검색되지 않으면 패턴이 일치되지 않습니다.
구문 목록 기능 추가
기능은 특정 단어와 구가 앱 도메인 용어의 일부라는 힌트를 제공하여 LUIS를 지원합니다.
- LUIS 포털에 로그인하고 구독 및 제작 리소스를 선택하여 해당 제작 리소스에 할당된 앱을 확인합니다.
- 내 앱 페이지에서 해당 이름을 선택하여 앱을 엽니다.
- 빌드를 선택한 다음, 앱의 왼쪽 패널에서 기능을 선택합니다.
- 기능 페이지에서 + 만들기를 선택합니다.
- 새 구문 목록 기능 만들기 대화 상자에서 Pizza Toppings와 같은 이름을 입력합니다. 값 상자에 Ham과 같은 토핑 예제를 입력합니다. 한 번에 하나의 값을 입력하거나 쉼표로 구분해서 여러 개의 값을 입력한 후 Enter 키를 누릅니다.
- 구문을 서로 교환해서 사용할 수 있는 경우 서로 교환 가능한 값 선택기를 활성화된 상태로 유지합니다. 교환 가능한 구문 목록 기능은 학습용 동의어 목록으로 사용됩니다. 교환 불가능한 구문 목록은 학습을 위한 별도의 기능으로 사용됩니다. 즉, 기능이 유사하지만 구문을 바꾸면 의도가 변경됩니다.
- 구문 목록은 전역 설정을 사용하여 전체 앱에 적용하거나 특정 모델(의도 도는 엔터티)에 적용할 수 있습니다. 의도 또는 엔터티의 기능으로 구문 목록을 만드는 경우 토글은 전역에 대해 설정되지 않습니다. 이 경우 토글은 해당 기능이 해당 모델에 대해서만 로컬이므로 애플리케이션에 대한 전역이 아님을 지정합니다.
- 완료를 선택합니다. 새 기능이 ML 기능 페이지에 추가됩니다.
참고 항목
- ML 기능 페이지의 상황에 맞는 도구 모음에서 구 목록을 삭제하거나 비활성화할 수 있습니다.
- 구문 목록은 지원하려는 의도 또는 엔터티에 적용해야 하지만 전체 앱에 전역 기능으로 적용해야 하는 경우가 있을 수 있습니다. Machine Learning 기능 페이지에서 구문 목록을 선택하고 위쪽 상황별 도구 모음에서 전역 설정을 선택합니다.
엔터티를 의도의 기능으로 추가
의도에 엔터티 기능을 추가하려면 의도 페이지에서 의도를 선택한 다음 상황별 도구 모음 위에서 + 기능 추가를 선택합니다. 이 목록에는 기능으로 적용할 수 있는 모든 구문 목록과 엔터티가 포함됩니다.
다른 엔터티에 엔터티 기능을 추가하려면 의도 세부 정보 페이지에서 엔터티 팔레트를 사용하여 기능을 추가하거나 엔터티 세부 정보 페이지에서 기능을 추가할 수 있습니다.
다음 단계
- 개선 후 앱을 학습 및 테스트합니다.