GETTING STARTED
Kore.ai XO Platform
Virtual Assistants Overview
Natural Language Processing (NLP)
Concepts and Terminology
Quick Start Guide
Accessing the Platform
Navigating the Kore.ai XO Platform
Building a Virtual Assistant
Help & Learning Resources
Release Notes
Current Version
Recent Updates
Previous Versions
CONCEPTS
Design
Storyboard
Overview
FAQs
Conversation Designer
Overview
Dialog Tasks
Mock Scenes
Dialog Tasks
Overview
Navigate Dialog Tasks
Build Dialog Tasks
Node Types
Overview
Intent Node
Dialog Node
Dynamic Intent Node
GenAI Node
GenAI Prompt
Entity Node
Form Node
Confirmation Node
Message Nodes
Logic Node
Bot Action Node
Service Node
Webhook Node
Script Node
Process Node
Agent Transfer
Node Connections
Node Connections Setup
Sub-Intent Scoping
Entity Types
Entity Rules
User Prompts or Messages
Voice Call Properties
Knowledge AI
Introduction
Knowledge Graph
Introduction
Terminology
Build a Knowledge Graph
Manage FAQs
Knowledge Extraction
Import or Export Knowledge Graph
Prepare Data for Import
Importing Knowledge Graph
Exporting Knowledge Graph
Auto-Generate Knowledge Graph
Knowledge Graph Analysis
Answer from Documents
Alert Tasks
Small Talk
Digital Skills
Overview
Digital Forms
Digital Views
Introduction
Widgets
Panels
Session and Context Variables
Context Object
Intent Discovery
Train
NLP Optimization
ML Engine
Overview
Model Validation
FM Engine
KG Engine
Traits Engine
Ranking and Resolver
Training Validations
NLP Configurations
NLP Guidelines
LLM and Generative AI
Introduction
LLM Integration
Kore.ai XO GPT Module
Prompts & Requests Library
Co-Pilot Features
Dynamic Conversations Features
Intelligence
Introduction
Event Handlers
Contextual Memory
Contextual Intents
Interruption Management
Multi-intent Detection
Amending Entities
Default Conversations
Conversation Driven Dialog Builder
Sentinment Management
Tone Analysis
Default Standard Responses
Ignore Words & Field Memory
Test & Debug
Overview
Talk to Bot
Utterance Testing
Batch Testing
Conversation Testing
Conversation Testing Overview
Create a Test Suite
Test Editor
Test Case Assertion
Test Case Execution Summary
Glossary
Health and Monitoring
NLP Health
Flow Health
Integrations
Actions
Actions Overview
Asana
Configure
Templates
Azure OpenAI
Configure
Templates
BambooHR
Configure
Templates
Bitly
Configure
Templates
Confluence
Configure
Templates
DHL
Configure
Templates
Freshdesk
Configure
Templates
Freshservice
Configure
Templates
Google Maps
Configure
Templates
Here
Configure
Templates
HubSpot
Configure
Templates
JIRA
Configure
Templates
Microsoft Graph
Configure
Templates
Open AI
Configure
Templates
Salesforce
Configure
Templates
ServiceNow
Configure
Templates
Stripe
Configure
Templates
Shopify
Configure
Templates
Twilio
Configure
Templates
Zendesk
Configure
Templates
Agents
Agent Transfer Overview
Custom (BotKit)
Drift
Genesys
Intercom
NiceInContact
NiceInContact(User Hub)
Salesforce
ServiceNow
Configure Tokyo and Lower versions
Configure Utah and Higher versions
Unblu
External NLU Adapters
Overview
Dialogflow Engine
Test and Debug
Deploy
Channels
Publishing
Versioning
Analyze
Introduction
Dashboard Filters
Overview Dashboard
Conversations Dashboard
Users Dashboard
Performance Dashboard
Custom Dashboards
Introduction
Custom Meta Tags
Create Custom Dashboard
Create Custom Dashboard Filters
LLM and Generative AI Logs
NLP Insights
Task Execution Logs
Conversations History
Conversation Flows
Conversation Insights
Feedback Analytics
Usage Metrics
Containment Metrics
Universal Bots
Introduction
Universal Bot Definition
Universal Bot Creation
Training a Universal Bot
Universal Bot Customizations
Enabling Languages
Store
Manage Assistant
Team Collaboration
Plan & Usage
Overview
Usage Plans
Templates
Support Plans
Invoices
Authorization
Conversation Sessions
Multilingual Virtual Assistants
Get Started
Supported Components & Features
Manage Languages
Manage Translation Services
Multiingual Virtual Assistant Behavior
Feedback Survey
Masking PII Details
Variables
Collections
IVR Settings
General Settings
Assistant Management
Manage Namespace
Data
Overview
Data Table
Table Views
App Definitions
Data as Service
HOW TOs
Build a Travel Planning Assistant
Travel Assistant Overview
Create a Travel Virtual Assistant
Design Conversation Skills
Create an ‘Update Booking’ Task
Create a Change Flight Task
Build a Knowledge Graph
Schedule a Smart Alert
Design Digital Skills
Configure Digital Forms
Configure Digital Views
Train the Assistant
Use Traits
Use Patterns
Manage Context Switching
Deploy the Assistant
Use Bot Functions
Use Content Variables
Use Global Variables
Use Web SDK
Build a Banking Assistant
Design Conversation Skills
Create a Sample Banking Assistant
Create a Transfer Funds Task
Create a Update Balance Task
Create a Knowledge Graph
Set Up a Smart Alert
Design Digital Skills
Configure Digital Forms
Configure Digital Views
Add Data to Data Tables
Update Data in Data Tables
Add Data from Digital Forms
Train the Assistant
Composite Entities
Use Traits
Use Patterns for Intents & Entities
Manage Context Switching
Deploy the Assistant
Configure an Agent Transfer
Use Assistant Functions
Use Content Variables
Use Global Variables
Intent Scoping using Group Node
Analyze the Assistant
Create a Custom Dashboard
Use Custom Meta Tags in Filters
Migrate External Bots
Google Dialogflow Bot
APIs & SDKs
API Reference
API Introduction
Rate Limits
API List
koreUtil Libraries
SDK Reference
SDK Introduction
Web SDK
How the Web SDK Works
SDK Security
SDK Registration
Web Socket Connect and RTM
Tutorials
Widget SDK Tutorial
Web SDK Tutorial
BotKit SDK
BotKit SDK Deployment Guide
Installing the BotKit SDK
Using the BotKit SDK
SDK Events
SDK Functions
Tutorials
BotKit - Blue Prism
BotKit - Flight Search Sample VA
BotKit - Agent Transfer
  1. Docs
  2. Virtual Assistants
  3. Natural Language
  4. 모델 검증

모델 검증

가상 비서를 구축하고 학습시키고 나면, Kore.ai 플랫폼이 봇 의도로 사용자 발화를 매핑하는 ML 모델을 구축합니다(자세한 정보를 보려면 여기를 클릭하세요). 생성하고 나면, ML 모델의 편파적이지 않은 일반화 성능을 이해하고 추정하기 위해 모델을 검증하는 것이 좋습니다. Kore.ai 가상 비서 플랫폼은 두 가지 검증 방법을 제공합니다.

  • 기계 학습 모델의 성능을 시각화하는 혼돈 지표 또는 오류 지표.
  • 기계 학습 모델의 기술 추정을 위한 K-fold 교차 검증.

검증 모델을 선택하려면 다음 단계를 따르세요.

  1. ML 모델을 검증하려는 봇을 열고 상단 메뉴에서 빌드를 선택합니다.
  2. 왼쪽 메뉴에서, 자연어 -> 학습을 클릭합니다.
  3. 오른쪽 상단의 검증 모델 드롭 다운 목록을 클릭하고 모델을 선택합니다.
  4. 해당 유효성 검사 방법의 결과 페이지가 나타납니다.


다음 섹션에서는, 이러한 각 방법을 자세히 살펴보겠습니다.

K-fold 교차 검증

교차 검증은 제한된 데이터 샘플에서 기계 학습 모델을 평가하는 데 사용되는 리샘플링 절차입니다. 이 기술에는 데이터를 부분 집합으로 분할하고, 부분 집합에 대한 데이터를 학습시키고 다른 부분 집합을 사용하여 모델의 성능을 평가하는 작업이 포함됩니다. 교차 검증을 통해 ML 모델의 성능에 대한 더 나은 지표인 모델 성능에 대한 보다 일반화된 지표를 제공합니다.

구성

K-fold 교차 검증을 지원하는 Kore.ai 가상 비서 플랫폼. 이를 위해, 고급 NLP 설정에서 교차 검증을 위한 K-fold 매개 변수를 설정해야 합니다. 자세한 내용을 보려면 여기를 클릭하세요. 학습을 시작하고 K-fold 검증 보고서를 생성하려면 다음 단계를 따르세요.

  1. 왼쪽 메뉴의 빌드 상단 메뉴 옵션에서 자연어 -> 학습을 클릭합니다.
  2. 기계 학습 발화 페이지에서 오른쪽 상단의 검증 모델 드롭 다운 목록을 클릭하고 K-fold 교차 검증을 선택합니다.
  3. K-fold 교차 검증 페이지에서 생성을 클릭하여 학습을 시작하고 K-fold 검증 보고서를 생성합니다. 생성 버튼은 교차 검증을 처음 수행할 때만 나타납니다.
  4. 보고서가 생성된 후 오른쪽 상단의 재생성 버튼을 클릭하여 필요할 때 보고서를 다시 생성할 수 있습니다.

참고: 학습에 사용된 총 ML 발화 수가 250개 이상인 경우에만 검증이 수행됩니다. 온 프레미스 설치에 이 숫자를 설정할 수 있습니다. 자세한 내용은 지원팀에 문의하세요.

구현

다음은 K-fold 교차 검증을 수행하는 동안 플랫폼이 따라야 하는 단계입니다.

  • 전체 발화 세트는 무작위로 학습 데이터 세트와 테스트 데이터 세트로 나뉩니다.
  • 같은 수의 학습 발화가 있는 각 부분 집합과 함께 전체 학습 데이터를 k fold로 분할합니다. k fold의 값은 위에서 언급한 대로 설정해야 합니다.
  • 그런 다음 시스템은 k만큼 반복을 실행하고 각 반복에서 발화의 부분 집합(fold)을 나머지 부분 집합('k – 1’ fold)으로 학습시킨 모델로 테스트합니다.
  • 성능 측정 계산을 위해 테스트 데이터 세트에서 결과 모델이 검증됩니다.
  • 이 프로세스는 모델 테스트를 위해 모든 발화를 한 번 이상 사용할 때까지 반복됩니다.
  • ML 모델의 성능을 평가하는 데 도움이 되도록 K fold 교차 검증 후에 지표를 제공합니다.

결과 이해

K fold 교차 검증 후에 다음 지표를 제공합니다.

  • 각 테스트 fold의 정밀도 점수 – 모델이 얼마나 정밀하고 정확한지 정의하고 예측한 총 긍정에 대한 참 긍정의 비율(참 및 긍정 오류의 합)으로 계산합니다.
  • 각 테스트 fold의 회수율 점수 – 성공적으로 식별된 관련 발화의 비율을 정의하고 실제 긍정에 대한 참 긍정의 비율(참 긍정과 부정 오류의 합)으로 계산합니다.
  • 각 테스트 fold의 F1 점수는 클래스 분포를 고르게 하고 정밀도와 재현율 사이의 균형을 찾으며 정밀도와 재현율의 가중 평균으로 계산합니다.
  • 모든 fold의 정밀도, 재현율 및 F1 점수의 평균입니다.

관련 지표를 더 잘 이해하도록 다음 정보도 제공합니다.

  • 총 발화 – 학습 말뭉치의 발화 수
  • 의도 수 – 봇의 총 의도 수
  • Fold 수 – 학습 말뭉치가 K-fold 매개 변수로 분할된 부분 집합 수
  • Fold 당 테스트 데이터 – 테스트에 사용된 각 부분 집합의 발화 수
  • Fold 당 학습 데이터 – 학습에 사용된 각 부분 집합의 발화 수

참고: 이러한 결과는 더 큰 발화 데이터 세트(최소한 250개 발화)에서 수행할 때 ML 모델의 성능을 더 정확하고 표본을 잘 나타내게 됩니다.

K-fold 교차 검증 보고서 내보내기

K-fold 교차 검증 보고서를 생성한 후, CSV 형식으로 보고서를 내보낼 수 있습니다. 검증 보고서를 가져오려면 다음 단계를 따르세요.

  • K-fold 교차 검증 페이지에서 오른쪽 상단의 내보내기 아이콘을 클릭합니다.
  • 보고서 내보내기 대화 상자에서 계속하기를 클릭합니다.

내보낸 파일은 다음 형식으로 나타납니다. Kfold_BotName_YYYYMMDDHHmmSS.csv.

혼돈 지표

혼돈 지표는 실제 값이 알려진 테스트 데이터 세트의 분류 모델(또는 분류기)의 성능을 설명하는 데 유용합니다. 혼돈 지표를 통해 생성된 그래프는 봇 작업의 학습된 발화 성능을 한 눈에 볼 수 있게 해줍니다. 이름은 모델이 발화를 혼동하는지 쉽게 확인할 수 있다는 점에서 유래한 것입니다. ML 모델 그래프는 각 봇 작업에 대한 학습용 발화를 평가하고 다음 사분면 중 하나에 표시합니다. True Positive (True +ve), True Negative (True -ve), False Positive (False +ve), False Negative (False -ve). 그래프를 간단히 살펴보면 어떤 발화 의도 일치가 정확한지, 어떤 발화 결과를 더 나은 결과를 생성하기 위해 추가로 학습시킬 수 있는지 알 수 있습니다. 사분면의 발화가 높아질수록 예상되는 동작이 더 잘 나타납니다. True +ve는 학습된 작업과의 강력한 일치를 나타내고 True -ve는 예상한대로 관련 없는 의도와의 불일치를 나타냅니다. 사분면에서 중간 수준의 발화는 더 나은 점수를 받도록 추가로 학습시킬 수 있습니다. 오류 사분면에 속하는 발화는 즉각적인 주의가 필요합니다. 의도한 작업과 일치하지 않거나 잘못된 작업과 일치하는 발화입니다. 사분면에서 발화 텍스트를 읽으려면, 그래프의 점 위로 마우스를 이동합니다.

참 긍정 사분면

의도에 대해 학습시킨 발화가 해당 의도에 대해 긍정적인 신뢰도 점수를 받으면 참 긍정 사분면에 속하게 됩니다. 이 사분면은 적합한 결과를 나타냅니다. 그러나 발화가 사분면 척도의 높은 곳에 있을수록 올바른 의도를 찾을 가능성도 커집니다. 참고: 여러 봇 작업의 참 긍정 사분면에 속하는 발화는 수정해야 하는 겹치는 봇 작업을 나타냅니다.

참 부정 사분면

의도에 대해 학습시키지 않은 발화가 해당 의도에 대해 부정적인 신뢰도 점수를 받으면 참 부정 사분면에 속하게 됩니다. 이 사분면은 발화가 의도와 일치하지 않아야 하므로 적합한 결과를 나타냅니다. 사분면 척도에서 발화가 낮은 곳에 있을수록 의도에서 멀어질 가능성도 커집니다. 특정 봇 작업에 대해 학습시킨 모든 발화는 이상적으로 다른 작업의 참 부정 사분면에 속해야 합니다.

긍정 오류 사분면

의도에 대해 학습시키지 않은 발화가 해당 의도에 대해 긍정적인 신뢰도 점수를 받으면 긍정 오류 사분면에 속하게 됩니다. 이 사분면은 적합하지 않은 결과를 나타냅니다. 이러한 결과를 대해, 최적의 결과를 위해서는 발화, 의도된 봇 작업 및 일치하지 않는 작업을 학습시켜야 할 수 있습니다.

부정 오류 사분면

의도에 대해 학습시킨 발화가 해당 의도에 대해 부정적인 신뢰도 점수를 받으면 참 부정 사분면에 속하게 됩니다. 이 사분면은 발화가 의도와 일치해야 하므로 적합하지 않은 결과를 나타냅니다. 이러한 결과를 대해, 최적의 결과를 위해서는 발화, 의도된 봇 작업 및 작업을 학습시켜야 합니다. 자세히 알아보려면 기계 학습 부분을 읽어보세요. 참고: ML 모델 그래프에 반영하도록 봇을 변경한 후 학습 버튼을 클릭해야 합니다. 그래프를 참조할 때 다음 핵심 사항을 염두에 두세요.

  • 참 사분면의 발화가 높은 곳에 있을수록 예상되는 동작이 더 잘 나타납니다.
  • 참 사분면에서 중간 수준의 발화는 더 나은 점수를 받도록 추가로 학습시킬 수 있습니다.
  • 오류 사분면에 속하는 발화는 즉각적인 주의가 필요합니다.
  • 여러 봇 작업의 참 사분면에 속하는 발화는 수정해야 하는 겹치는 봇 작업을 나타냅니다.

좋은/나쁜 ML 모델에 대한 이해

좋은 ML 모드 또는 나쁜 ML 모드를 이해하기 위한 예로 뱅킹 봇을 살펴보겠습니다. 봇에는 300개 이상의 학습된 발화 등 여러 작업이 있습니다. 아래 이미지는 4가지 작업 및 관련 발화를 보여줍니다. 이 시나리오의 모델은 작업과 관련된 대부분의 발화가 참 긍정 사분면에 모여 있고 다른 작업의 대부분의 발화가 참 부정 사분면에 모여 있어 상당히 잘 학습된 것입니다. 개발자는 이 모델의 다음 측면을 개선하기 위해 노력할 수 있습니다.

  • '계좌 잔고 가져오기' 작업의 ML 모델에서, 긍정 오류 사분면의 발화(B) 몇 개를 볼 수 있습니다.
  • 계정 잔고 가져오기에 학습된 발화는 참 부정 사분면(C)에 나타납니다.
  • 모델이 잘 학습되어 있고 이 작업에 대한 대부분의 발화가 참 긍정 사분면에서 높은 곳에 있지만 일부 발화는 여전히 매우 낮은 점수를 받았습니다. (A)
  • 점 위로 마우스를 이동하면 발화를 볼 수 있습니다. A, B, C의 경우, 발화가 의도와 정확히 일치해야 하지만, 유사한 발화가 다른 의도를 위해 학습되었기 때문에 낮은 점수 또는 부정적인 점수를 받았습니다.
    참고: 이러한 경우, 테스트 및 학습 모듈로 발화를 시도하고 ML 엔진이 반환하는 의도와 관련 샘플 발화를 확인하는 것이 가장 좋습니다. 발화를 미세 조정하고 다시 시도하세요.
  • 카드 분실 신고라는 작업에는 함께 모여 있는 제한된 발화가 포함되어 있습니다.

이제 아래 여행 봇의 ML 모델과 비교해 보겠습니다. 충돌하는 발화를 사용한 학습이 많아 모델의 발화가 여기저기 흩어져 있습니다. 이는 잘못된 모델로 간주하며 봇의 여러 작업과 관련이 없는 더 작은 발화 집합으로 다시 학습시켜야 합니다.

특정 작업 발화의 그래프 보기

기본적으로, ML 모델 그래프는 모든 봇 작업에 학습시킨 모든 발화의 성능을 보여줍니다. 기타 모든 의도에 대한 특정 봇 작업의 학습된 발화 성능을 보려면, 아래 이미지와 같이 봇 작업의 스위치를 토글합니다.

참고: 이들은 첫 번째 봇 작업의 학습된 발화이므로 이상적으로는 발화가 해당 작업의 True +ve 사분면의 상단과 기타 모든 작업의 True -ve 사분면의 하단에 나타나야 합니다.

ML 모델 그래프 필터링

다음 기준에 따라 ML 모델 그래프는 필터링할 수 있습니다.

  • 개발 중 또는 게시된 작업: 기본적으로 그래프는 개발 중게시된 모든 작업의 그래프를 표시합니다. 게시된 작업의 그래프만 보려면 스위치를 토글합니다.
  • 약-강: 가장 정확하지 않은 작업 점수에서 가장 정확한 점수까지 그래프를 봅니다.
  • 강-약: 가장 정확한 작업 점수에서 가장 정확하지 않은 점수까지 그래프를 봅니다.
  • 작업/의도: 그래프를 보려면 모두 선택하거나 특정 작업 이름을 선택하세요.
  • 발화: 그래프를 보려면 모두 선택하거나 특정 학습 발화를 선택하세요.

발화 편집 및 재할당

사용자 발화를 편집하고 다른 작업에 재할당하여 ML 그래프에서 직접 점수를 개선할 수 있습니다. 이렇게 하려면 사분면을 클릭하여 작업 이름 및 모든 관련 발화가 나타나는 사분면 보기를 엽니다. 개별 발화를 편집하려면

  1. 해당 발화 행에서 편집 아이콘을 클릭합니다.
  2. 발화 편집 창에서, 발화 필드의 텍스트를 변경하거나 예상 작업 드롭 다운 목록으로 발화를 다른 작업에 다시 할당합니다.

참고: 전체 사분면 대신 ML 그래프에서 개별 점을 클릭하여 이 창을 열 수도 있습니다.

모델 검증

가상 비서를 구축하고 학습시키고 나면, Kore.ai 플랫폼이 봇 의도로 사용자 발화를 매핑하는 ML 모델을 구축합니다(자세한 정보를 보려면 여기를 클릭하세요). 생성하고 나면, ML 모델의 편파적이지 않은 일반화 성능을 이해하고 추정하기 위해 모델을 검증하는 것이 좋습니다. Kore.ai 가상 비서 플랫폼은 두 가지 검증 방법을 제공합니다.

  • 기계 학습 모델의 성능을 시각화하는 혼돈 지표 또는 오류 지표.
  • 기계 학습 모델의 기술 추정을 위한 K-fold 교차 검증.

검증 모델을 선택하려면 다음 단계를 따르세요.

  1. ML 모델을 검증하려는 봇을 열고 상단 메뉴에서 빌드를 선택합니다.
  2. 왼쪽 메뉴에서, 자연어 -> 학습을 클릭합니다.
  3. 오른쪽 상단의 검증 모델 드롭 다운 목록을 클릭하고 모델을 선택합니다.
  4. 해당 유효성 검사 방법의 결과 페이지가 나타납니다.


다음 섹션에서는, 이러한 각 방법을 자세히 살펴보겠습니다.

K-fold 교차 검증

교차 검증은 제한된 데이터 샘플에서 기계 학습 모델을 평가하는 데 사용되는 리샘플링 절차입니다. 이 기술에는 데이터를 부분 집합으로 분할하고, 부분 집합에 대한 데이터를 학습시키고 다른 부분 집합을 사용하여 모델의 성능을 평가하는 작업이 포함됩니다. 교차 검증을 통해 ML 모델의 성능에 대한 더 나은 지표인 모델 성능에 대한 보다 일반화된 지표를 제공합니다.

구성

K-fold 교차 검증을 지원하는 Kore.ai 가상 비서 플랫폼. 이를 위해, 고급 NLP 설정에서 교차 검증을 위한 K-fold 매개 변수를 설정해야 합니다. 자세한 내용을 보려면 여기를 클릭하세요. 학습을 시작하고 K-fold 검증 보고서를 생성하려면 다음 단계를 따르세요.

  1. 왼쪽 메뉴의 빌드 상단 메뉴 옵션에서 자연어 -> 학습을 클릭합니다.
  2. 기계 학습 발화 페이지에서 오른쪽 상단의 검증 모델 드롭 다운 목록을 클릭하고 K-fold 교차 검증을 선택합니다.
  3. K-fold 교차 검증 페이지에서 생성을 클릭하여 학습을 시작하고 K-fold 검증 보고서를 생성합니다. 생성 버튼은 교차 검증을 처음 수행할 때만 나타납니다.
  4. 보고서가 생성된 후 오른쪽 상단의 재생성 버튼을 클릭하여 필요할 때 보고서를 다시 생성할 수 있습니다.

참고: 학습에 사용된 총 ML 발화 수가 250개 이상인 경우에만 검증이 수행됩니다. 온 프레미스 설치에 이 숫자를 설정할 수 있습니다. 자세한 내용은 지원팀에 문의하세요.

구현

다음은 K-fold 교차 검증을 수행하는 동안 플랫폼이 따라야 하는 단계입니다.

  • 전체 발화 세트는 무작위로 학습 데이터 세트와 테스트 데이터 세트로 나뉩니다.
  • 같은 수의 학습 발화가 있는 각 부분 집합과 함께 전체 학습 데이터를 k fold로 분할합니다. k fold의 값은 위에서 언급한 대로 설정해야 합니다.
  • 그런 다음 시스템은 k만큼 반복을 실행하고 각 반복에서 발화의 부분 집합(fold)을 나머지 부분 집합('k – 1’ fold)으로 학습시킨 모델로 테스트합니다.
  • 성능 측정 계산을 위해 테스트 데이터 세트에서 결과 모델이 검증됩니다.
  • 이 프로세스는 모델 테스트를 위해 모든 발화를 한 번 이상 사용할 때까지 반복됩니다.
  • ML 모델의 성능을 평가하는 데 도움이 되도록 K fold 교차 검증 후에 지표를 제공합니다.

결과 이해

K fold 교차 검증 후에 다음 지표를 제공합니다.

  • 각 테스트 fold의 정밀도 점수 – 모델이 얼마나 정밀하고 정확한지 정의하고 예측한 총 긍정에 대한 참 긍정의 비율(참 및 긍정 오류의 합)으로 계산합니다.
  • 각 테스트 fold의 회수율 점수 – 성공적으로 식별된 관련 발화의 비율을 정의하고 실제 긍정에 대한 참 긍정의 비율(참 긍정과 부정 오류의 합)으로 계산합니다.
  • 각 테스트 fold의 F1 점수는 클래스 분포를 고르게 하고 정밀도와 재현율 사이의 균형을 찾으며 정밀도와 재현율의 가중 평균으로 계산합니다.
  • 모든 fold의 정밀도, 재현율 및 F1 점수의 평균입니다.

관련 지표를 더 잘 이해하도록 다음 정보도 제공합니다.

  • 총 발화 – 학습 말뭉치의 발화 수
  • 의도 수 – 봇의 총 의도 수
  • Fold 수 – 학습 말뭉치가 K-fold 매개 변수로 분할된 부분 집합 수
  • Fold 당 테스트 데이터 – 테스트에 사용된 각 부분 집합의 발화 수
  • Fold 당 학습 데이터 – 학습에 사용된 각 부분 집합의 발화 수

참고: 이러한 결과는 더 큰 발화 데이터 세트(최소한 250개 발화)에서 수행할 때 ML 모델의 성능을 더 정확하고 표본을 잘 나타내게 됩니다.

K-fold 교차 검증 보고서 내보내기

K-fold 교차 검증 보고서를 생성한 후, CSV 형식으로 보고서를 내보낼 수 있습니다. 검증 보고서를 가져오려면 다음 단계를 따르세요.

  • K-fold 교차 검증 페이지에서 오른쪽 상단의 내보내기 아이콘을 클릭합니다.
  • 보고서 내보내기 대화 상자에서 계속하기를 클릭합니다.

내보낸 파일은 다음 형식으로 나타납니다. Kfold_BotName_YYYYMMDDHHmmSS.csv.

혼돈 지표

혼돈 지표는 실제 값이 알려진 테스트 데이터 세트의 분류 모델(또는 분류기)의 성능을 설명하는 데 유용합니다. 혼돈 지표를 통해 생성된 그래프는 봇 작업의 학습된 발화 성능을 한 눈에 볼 수 있게 해줍니다. 이름은 모델이 발화를 혼동하는지 쉽게 확인할 수 있다는 점에서 유래한 것입니다. ML 모델 그래프는 각 봇 작업에 대한 학습용 발화를 평가하고 다음 사분면 중 하나에 표시합니다. True Positive (True +ve), True Negative (True -ve), False Positive (False +ve), False Negative (False -ve). 그래프를 간단히 살펴보면 어떤 발화 의도 일치가 정확한지, 어떤 발화 결과를 더 나은 결과를 생성하기 위해 추가로 학습시킬 수 있는지 알 수 있습니다. 사분면의 발화가 높아질수록 예상되는 동작이 더 잘 나타납니다. True +ve는 학습된 작업과의 강력한 일치를 나타내고 True -ve는 예상한대로 관련 없는 의도와의 불일치를 나타냅니다. 사분면에서 중간 수준의 발화는 더 나은 점수를 받도록 추가로 학습시킬 수 있습니다. 오류 사분면에 속하는 발화는 즉각적인 주의가 필요합니다. 의도한 작업과 일치하지 않거나 잘못된 작업과 일치하는 발화입니다. 사분면에서 발화 텍스트를 읽으려면, 그래프의 점 위로 마우스를 이동합니다.

참 긍정 사분면

의도에 대해 학습시킨 발화가 해당 의도에 대해 긍정적인 신뢰도 점수를 받으면 참 긍정 사분면에 속하게 됩니다. 이 사분면은 적합한 결과를 나타냅니다. 그러나 발화가 사분면 척도의 높은 곳에 있을수록 올바른 의도를 찾을 가능성도 커집니다. 참고: 여러 봇 작업의 참 긍정 사분면에 속하는 발화는 수정해야 하는 겹치는 봇 작업을 나타냅니다.

참 부정 사분면

의도에 대해 학습시키지 않은 발화가 해당 의도에 대해 부정적인 신뢰도 점수를 받으면 참 부정 사분면에 속하게 됩니다. 이 사분면은 발화가 의도와 일치하지 않아야 하므로 적합한 결과를 나타냅니다. 사분면 척도에서 발화가 낮은 곳에 있을수록 의도에서 멀어질 가능성도 커집니다. 특정 봇 작업에 대해 학습시킨 모든 발화는 이상적으로 다른 작업의 참 부정 사분면에 속해야 합니다.

긍정 오류 사분면

의도에 대해 학습시키지 않은 발화가 해당 의도에 대해 긍정적인 신뢰도 점수를 받으면 긍정 오류 사분면에 속하게 됩니다. 이 사분면은 적합하지 않은 결과를 나타냅니다. 이러한 결과를 대해, 최적의 결과를 위해서는 발화, 의도된 봇 작업 및 일치하지 않는 작업을 학습시켜야 할 수 있습니다.

부정 오류 사분면

의도에 대해 학습시킨 발화가 해당 의도에 대해 부정적인 신뢰도 점수를 받으면 참 부정 사분면에 속하게 됩니다. 이 사분면은 발화가 의도와 일치해야 하므로 적합하지 않은 결과를 나타냅니다. 이러한 결과를 대해, 최적의 결과를 위해서는 발화, 의도된 봇 작업 및 작업을 학습시켜야 합니다. 자세히 알아보려면 기계 학습 부분을 읽어보세요. 참고: ML 모델 그래프에 반영하도록 봇을 변경한 후 학습 버튼을 클릭해야 합니다. 그래프를 참조할 때 다음 핵심 사항을 염두에 두세요.

  • 참 사분면의 발화가 높은 곳에 있을수록 예상되는 동작이 더 잘 나타납니다.
  • 참 사분면에서 중간 수준의 발화는 더 나은 점수를 받도록 추가로 학습시킬 수 있습니다.
  • 오류 사분면에 속하는 발화는 즉각적인 주의가 필요합니다.
  • 여러 봇 작업의 참 사분면에 속하는 발화는 수정해야 하는 겹치는 봇 작업을 나타냅니다.

좋은/나쁜 ML 모델에 대한 이해

좋은 ML 모드 또는 나쁜 ML 모드를 이해하기 위한 예로 뱅킹 봇을 살펴보겠습니다. 봇에는 300개 이상의 학습된 발화 등 여러 작업이 있습니다. 아래 이미지는 4가지 작업 및 관련 발화를 보여줍니다. 이 시나리오의 모델은 작업과 관련된 대부분의 발화가 참 긍정 사분면에 모여 있고 다른 작업의 대부분의 발화가 참 부정 사분면에 모여 있어 상당히 잘 학습된 것입니다. 개발자는 이 모델의 다음 측면을 개선하기 위해 노력할 수 있습니다.

  • '계좌 잔고 가져오기' 작업의 ML 모델에서, 긍정 오류 사분면의 발화(B) 몇 개를 볼 수 있습니다.
  • 계정 잔고 가져오기에 학습된 발화는 참 부정 사분면(C)에 나타납니다.
  • 모델이 잘 학습되어 있고 이 작업에 대한 대부분의 발화가 참 긍정 사분면에서 높은 곳에 있지만 일부 발화는 여전히 매우 낮은 점수를 받았습니다. (A)
  • 점 위로 마우스를 이동하면 발화를 볼 수 있습니다. A, B, C의 경우, 발화가 의도와 정확히 일치해야 하지만, 유사한 발화가 다른 의도를 위해 학습되었기 때문에 낮은 점수 또는 부정적인 점수를 받았습니다.
    참고: 이러한 경우, 테스트 및 학습 모듈로 발화를 시도하고 ML 엔진이 반환하는 의도와 관련 샘플 발화를 확인하는 것이 가장 좋습니다. 발화를 미세 조정하고 다시 시도하세요.
  • 카드 분실 신고라는 작업에는 함께 모여 있는 제한된 발화가 포함되어 있습니다.

이제 아래 여행 봇의 ML 모델과 비교해 보겠습니다. 충돌하는 발화를 사용한 학습이 많아 모델의 발화가 여기저기 흩어져 있습니다. 이는 잘못된 모델로 간주하며 봇의 여러 작업과 관련이 없는 더 작은 발화 집합으로 다시 학습시켜야 합니다.

특정 작업 발화의 그래프 보기

기본적으로, ML 모델 그래프는 모든 봇 작업에 학습시킨 모든 발화의 성능을 보여줍니다. 기타 모든 의도에 대한 특정 봇 작업의 학습된 발화 성능을 보려면, 아래 이미지와 같이 봇 작업의 스위치를 토글합니다.

참고: 이들은 첫 번째 봇 작업의 학습된 발화이므로 이상적으로는 발화가 해당 작업의 True +ve 사분면의 상단과 기타 모든 작업의 True -ve 사분면의 하단에 나타나야 합니다.

ML 모델 그래프 필터링

다음 기준에 따라 ML 모델 그래프는 필터링할 수 있습니다.

  • 개발 중 또는 게시된 작업: 기본적으로 그래프는 개발 중게시된 모든 작업의 그래프를 표시합니다. 게시된 작업의 그래프만 보려면 스위치를 토글합니다.
  • 약-강: 가장 정확하지 않은 작업 점수에서 가장 정확한 점수까지 그래프를 봅니다.
  • 강-약: 가장 정확한 작업 점수에서 가장 정확하지 않은 점수까지 그래프를 봅니다.
  • 작업/의도: 그래프를 보려면 모두 선택하거나 특정 작업 이름을 선택하세요.
  • 발화: 그래프를 보려면 모두 선택하거나 특정 학습 발화를 선택하세요.

발화 편집 및 재할당

사용자 발화를 편집하고 다른 작업에 재할당하여 ML 그래프에서 직접 점수를 개선할 수 있습니다. 이렇게 하려면 사분면을 클릭하여 작업 이름 및 모든 관련 발화가 나타나는 사분면 보기를 엽니다. 개별 발화를 편집하려면

  1. 해당 발화 행에서 편집 아이콘을 클릭합니다.
  2. 발화 편집 창에서, 발화 필드의 텍스트를 변경하거나 예상 작업 드롭 다운 목록으로 발화를 다른 작업에 다시 할당합니다.

참고: 전체 사분면 대신 ML 그래프에서 개별 점을 클릭하여 이 창을 열 수도 있습니다.
메뉴