はじめに
対話型AIプラットフォーム
チャットボットの概要
自然言語処理(NLP)
ボットの概念と用語
クイックスタートガイド
プラットフォームへのアクセス
ボットビルダーの操作
リリースノート
最新バージョン(英語)
以前のバージョン(英語)
コンセプト
設計
ストーリーボード
ダイアログタスク
ダイアログタスクとは
ダイアログビルダー
ノードタイプ
インテントノード
ダイアログノード
エンティティノード
フォームノード
確認ノード
ロジックノード
ボットアクションノード
サービスノード
Webhookノード
スクリプトノード
グループノード
エージェント転送ノード
ユーザープロンプト
音声通話プロパティ
イベント ハンドラー
ナレッジグラフ
ナレッジグラフの抽出
ナレッジグラフの構築
ボットにナレッジグラフを追加
グラフの作成
ナレッジグラフの構築
既存のソースからFAQを構築
通知タスク
スモールトーク
デジタルスキル
デジタルフォーム
デジタルビュー
デジタルビューとは
パネル
ウィジェット
トレーニング
トレーニングとは
機械学習
機械学習とは
モデル検証
ファンダメンタルミーニング
ナレッジグラフ
示唆
ランキングおよび解決
NLPの詳細設定
NLPのガイドライン
インテリジェンス
インテリジェンスとは
コンテキスト
コンテキストインテント
割り込み
複数インテントの検出
エンティティの変更
デフォルトの会話
センチメント管理
トーン分析
テストとデバッグ
ボットと会話
発話テスト
バッチテスト
会話テスト
デプロイ
チャネル
公開
LLM and Generative AI
Introduction
LLM Integration
Kore.ai XO GPT Module
Prompts & Requests Library
Co-Pilot Features
Dynamic Conversations Features
分析
ボットの分析
NLPメトリクス
会話フロー
Usage Metrics
封じ込め測定
カスタムダッシュボード
カスタムダッシュボードとは
メタタグ
カスタムダッシュボードとウィジェット
ユニバーサルボット
ユニバーサルボットとは
ユニバーサルボットの定義
ユニバーサルボットの作成
ユニバーサルボットのトレーニング
ユニバーサルボットのカスタマイズ
他言語の有効化
ストア
プラントと使用
Overview
Usage Plans
Support Plans
Invoices
管理
ボット認証
複数言語対応ボット
個人を特定できる情報の編集
ボット変数の使用
IVRのシステム連携
一般設定
ボット管理
ハウツー
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
会話スキルの設計
バンキングボットを作成
バンキングボット – 資金の振り替え
バンキングボット – 残高を更新
ナレッジグラフを構築
スマートアラートの予約方法
デジタルスキルの設計
デジタルフォームの設定方法
デジタルビューの設定方法
データテーブルのデータの追加方法
データテーブルのデータの更新方法
Add Data from Digital Forms
ボットのトレーニング
示唆の使用方法
インテントとエンティティのパターンの使用方法
コンテキスト切り替えの管理方法
ボットのデプロイ
エージェント転送の設定方法
ボット関数の使用方法
コンテンツ変数の使用方法
グローバル変数の使用方法
ボットの分析
カスタムダッシュボードの作成方法
カスタムタグを使ってフィルタリング
Data
Overview
Data Table
Table Views
App Definitions
Data as Service
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
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. ホーム
  2. Docs
  3. Virtual Assistants
  4. Natural Language
  5. NLPの詳細設定

NLPの詳細設定

自然言語 > トレーニングの下にある しきい値および設定 セクションを使用して、次のようにカスタマイズすることで、Botで有効になっている各言語のインテント検出の調整を行うことができます。

これらとは別に、NLPの詳細設定の下には、特定のユースケースや要件に使用できる詳細設定があります。

警告:ほとんどのユースケースにとって、これらの設定にはデフォルト設定が理想的です。設定が適切に行われていない場合、Botのパフォーマンスに悪影響を及ぼす可能性があるため、設定している機能について十分な理解が得られていない限りは、これらの設定を変更しないでください。

 

このセクションから設定可能な各種設定の詳細については、以下の表を参照してください。

設定 説明 影響を受けるNLPエンジン 有効な入力 注釈
複合語の分割 この設定により、複合語を複数のステムに分割し、個々のステムを処理することができるようになります。 ML 有効、
無効(デフォルト)
ドイツ語のBotのみサポート
Noneインテント 有効にすると、ダミーのプレースホルダインテントが作成され、MLエンジンを使用したインテント一致の偽陽性の可能性を減らすことができます。 ML 有効(デフォルト)、
無効
コサイン類似度の減衰 コサイン類似度の減衰を使用して、短い質問でのペナルティを回避します。 KG 有効(デフォルト)、
無効
ネットワークタイプ インテントトレーニングに利用可能なニューラルネットワーク ML 標準(デフォルト)、
MLP-BOW、
MLP-WordEmbeddings、
LSTM、
CNN
Transformer
エポック ニューラルネットワークをトレーニングするための反復回数 ML 20~300の間、
10刻み
(デフォルト設定では20)
ネットワークタイプがMLP-BOW、MLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
バッチサイズ トレーニング中にそれぞれのバッチに使用したトレーニングサンプル数 ML 10~30の間、
5刻み
(デフォルト設定は10)
ネットワークタイプがMLP-BOW、MLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
学習率 ネットワークの重みが損失勾配に対してどの程度調整されるかを制御するためのハイパーパラメータ ML 1e-4~1e-3の間、
1e-2刻み
(デフォルト設定は1.00E-03)
ネットワークタイプがMLP-BOW、MLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
ドロップアウト モデルのオーバーフィッティングを避けるための正則化パラメータ ML 0~0.8の間、
0.1刻み
(デフォルト設定は0)
ネットワークタイプがMLP-BOW、MLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
ベクタライザ トレーニングデータの機能抽出手法 ML カウント(デフォルト)、
tfidf
ネットワークタイプがMLP-BOWに設定されている場合のみ有効
最大シーケンス長 トレーニングサンプルまたはユーザ入力の長さ ML 10~30の間、
5刻み
(デフォルト設定は20)
ネットワークタイプがMLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
埋め込みタイプ トレーニングデータの機能抽出手法 ML 生成、
ランダム(デフォルト)
ネットワークタイプがMLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
埋め込み次元 特徴量化に使用される埋め込み次元 ML 100~400の間、
50刻み
(デフォルト設定は300)
ネットワークタイプがMLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
K-分割交差検証 交差検証用のK-分割パラメータ ML 2~10の間、
1刻み
(デフォルト設定は2)
インテント名としてのFAQ名 FAQがダイアログにリンクされている場合でも、FAQの主質問をインテント名として使用する KG 有効、
無効(デフォルト)
あいまい一致 この設定により、インテント識別にあいまい一致アルゴリズムを使用することが可能 ML 有効(デフォルト)、
無効
否定の処理 この設定により、インテント識別における否定語の処理が可能 ML 有効(デフォルト)、
無効
多重出現の無視 有効にした場合、単語の出現頻度はベクトル化のために無視される ML 有効(デフォルト)、
無効
ネットワークタイプがMLP-BOWに設定されている場合のみ有効
ユーザーの発話内のエンティティプレースホルダ ユーザーの発話の中に存在するエンティティを、対応するプレースホルダに置き換えることを可能にします。 ML 有効(デフォルト)、
無効
ネットワークタイプがMLP-BOWに設定されている場合にのみ有効です。
文章の分割 ユーザーの発話内の文章を分割して、ユーザーの完全な入力を使用してインテントの検出を行います ML 有効 (デフォルト)、
無効
インテント排除のルール あらかじめ用意されたルールを適用してインテントの一致を排除することを有効化します。 RR 有効 (デフォルト)、
無効
英語、スペイン語、フランス語、ドイツ語のボットにのみ適用できます。
複数インテント モデル すべてのサブインテントを構成するプライマリ インテントごとに、個別の ML モデルを有効化します ML 有効、
無効 (デフォルト)

複合語の分割

複合語とは、2つ以上の単語を結合して、全く新しい意味を持つ新しい単語を作る際に形成されるものです。特にドイツ語では、2つ(またはそれ以上)の単語を組み合わせて複合語を形成し、無限に新しい複合語を生み出すことができます。例えば、Bilder | buch(「picture book」)の-erのように、コンポーネントを移行要素と接続したり、あるいは修飾語の一部を削除したりすることもできます。例えば、Kirch | turm(「church tower」)では、Kircheの最後の-eが削除されます。複合語は、Grunder(「founder」)と語幹grun | der(「green | the」)のように、語幹とは全く異なる意味を持つことが多々あります。NLPの観点からは、NLPエンジンが単語を分割して処理すべきタイミングと、単語全体を処理すべきタイミングを理解しておくことが重要です。

この設定は、複合語の処理方法を選択するのに使用することができます。この設定を有効にした場合、ユーザーの発話に含まれる複合語が語幹に分割され、インテント検出のために考慮されます。

Noneインテント

機械学習(ML)エンジンは、トレーニングする発話を使用して、そのトレーニングに基づいてユーザーの発話を評価するためのモデルを構築します。MLモデルは、ユーザー入力をいずれかの入力に分類しようとします。しかし、語彙が不足する単語があった場合には、それらも分類しようとするため、あるエンティティに対するインテントが阻害される場合があります。例えば、エンティティノードに人の名前があったとしても、インテントがトリガーされることはありません。

その他のNoneインテントを追加することで、Bot内のランダムな入力を分類することができます。この機能を有効にすると、Botのトレーニングで使用されていない単語がユーザーの発話に含まれている場合、MLモデルはこれらのNoneインテントを識別するよう調整が行われます。

コサイン類似度の減衰

FAQの識別は、単語の一致に基づいて行われます。このアプローチを使用することの問題点は、対応するトレーニングされた発話よりも少ない単語を持つユーザーの発話のスコアが悪くなることです。このスコアリングは、インテントの識別が失敗する原因となります。

コサイン類似度の減衰設定を有効にした場合、トレーニングされた発話よりも単語数の少ないユーザーの発話(主質問や代替質問など)は、設定を無効にした場合よりも高い「一致スコア」になります。

MLエンジンの外部化

機械学習において、ハイパーパラメータとは、その値が学習プロセスを制御するために使用されるパラメータを指します。ハイパーパラメータは、追加のBot用カスタマイズオプションを提供します。カスタマイズ可能なMLの設定は以下の通りです。

ネットワークタイプ

使用するニューラル ネットワークを選択できます。v8.1 以降、この設定は機械学習セクションに移動されました。詳しくは、こちらをご覧ください。

エポック

人工ニューラルネットワークにおいて、エポックとは、完全なトレーニングデータセットの1サイクルを指します。トレーニングされていないデータで優れたパフォーマンスを得るためには、通常(常にではないが)トレーニングデータを1回以上パスする必要があります。エポック数は、トレーニングデータセットを完全にパスする回数を制御するハイパーパラメータです。

バッチサイズ

バッチサイズとは、機械学習で使用される用語で、1回の反復で利用されるトレーニング例の数を指します。これは、ニューラルネットワークをトレーニングする際の誤差勾配の推定精度を制御します。バッチサイズは、モデルの内部パラメータが更新される前に処理するトレーニングサンプル数を制御するハイパーパラメータです。

学習率

機械学習や統計学において、学習率とは最適化アルゴリズムの調整パラメータであり、損失関数の最小値に向かって移動しつつ、それぞれの反復のステップサイズを決定します。損失に基づいてニューラルネットワークの重みの更新を制御するためのパラメータと見なすことができます。

ドロップアウト

ドロップアウトという用語は、ニューラルネットワークの中の単位(隠れているもの、見えているもの両方)を落とすことを指します。簡単に言えば、ドロップアウトとは、ランダムに選択された特定のニューロンのトレーニング段階において、単位(つまりニューロン)を無視することを指します。これは、データのオーバーフィッティングを防ぐための正則化手法です。

ベクタライザ

ベクトル化とは、要素ごとの演算ではなく、ベクトル演算を用いてアルゴリズムを最適化する方法を指します。これを使用してトレーニングデータ上での特徴抽出手法を決定することができます。以下のいずれかに設定することが可能です。

  • カウントベクタライザは、与えられたテキスト文書を、テキスト内のそれぞれの単語の出現頻度(カウント)に基づいて、用語/トークンカウントのベクトルに変換するために使用されます。これは、複数のテキストがあり、さらにテキスト分析に使用するためにテキスト内の各単語をベクトルに変換する必要がある場合に便利です。ベクトル表現を生成する前に、テキストデータを事前に処理することができます。
  • TFIDFベクタライザとは、ある単語がドキュメントコレクション内のドキュメントに対してどれだけ関連性があるかを評価する統計的尺度です。これは、単語がドキュメント内に出現する回数(単語の出現頻度)、および一連のドキュメント全体における単語の逆文書頻度(IDF)の、2つのメトリックを乗算することによって行われます。

最大シーケンス長

(トレーニングや予測のために)文を処理する場合、シーケンス長とは文中の単語数を指します。最大シーケンス長パラメータは、トレーニングに考慮される単語数の最大値です。ユーザー入力またはトレーニングするフレーズセンテンスのシーケンス長がセンテンスの長さの最大を超えている場合は、その長さにトリミングされ、それより短い場合は、そのセンテンスに特別なトークンが埋め込まれます。

埋め込みタイプ

(単語の)埋め込みとは、入力/トレーニングテキスト中の単語やフレーズをベクトル表現したものです。似た意味を持つ単語は、n次元空間で同様のベクトル表現を持ち、そのベクトル値はニューラルネットワークに似た方法で学習されます。

埋め込みタイプは、以下のいずれかに設定することができます。

  • ランダム(デフォルト設定):最初にすべての単語にランダムな埋め込みが割り当てられ、その後トレーニング中に特定のトレーニングデータに合わせて埋め込みが最適化されます。
  • 生成:単語の埋め込みは、トレーニング開始直前に生成されます。単語の埋め込みの生成には、Word2Vecモデルが使用されます。これらの生成された埋め込みは、トレーニング中に使用されます。トレーニング中に特定のトレーニングデータに合わせて、これらの生成された単語の埋め込みが最適化されます。

埋め込み次元

埋め込み次元は、埋め込みベクトルのサイズを定義します。単語の埋め込みがランダムまたは生成されたものである場合、埋め込み次元として任意の数値を使用することが可能です。

K-分割交差検証

交差検証は、限られたデータサンプルで機械学習モデルを評価するために使用されるリサンプリング手順です。この手順には、与えられたデータサンプルが分割されるグループの数を指す、Kと呼ばれる単一のパラメータが含まれます。この設定により、Kパラメータを設定することができます。交差検証の詳細については、こちらを参照してください

インテント名としてのFAQ名

このオプションでは、以下のシナリオで主質問またはダイアログタスクの名前を表示するかどうかを制御します。

  • インテント名がユーザーに存在する場合
    • あいまい性の解消フロー
    • フォローアップ
  • 発話テスト
  • バッチテスト
  • NLP分析
  • 分析(ダッシュボード、カスタムダッシュボード、会話フロー、メトリック)
  • インテント検出 – ランキングフロー

あいまい一致

あいまい一致は、システムが不正確な一致を識別するのに役立つ近似的パターン照合の手法です。MLエンジンは、あいまい一致のロジックを使用して、完全一致を識別します。あいまい一致のアルゴリズムは、ユーザーの発言との類似性に基づいて、インテントに「あいまい検索スコア」を割り当てます。あいまい検索スコアが95以上(0~100の尺度)のインテントは、完全一致として識別されます。

ただしあいまい一致は、possibleとimpossible、availableとunavailableなど、スペルが似ているが意味が異なる単語があった場合に、偽陽性を生じさせる可能性があります。この動作は、場合によっては問題となる場合があります。このオプションを無効にすることで、MLエンジンがこの一致のアルゴリズムを使用しないようにすることができます。

否定の処理

この設定では、否定された単語がユーザーの発話に含まれている場合の動作を選択することができます。否定の処理設定を有効にした場合、ユーザーの発話内に否定された任意の単語が存在する場合、インテントのMLスコアにペナルティが課せられます。

多重出現の無視

同じ単語が複数出現すると、インテントの識別が定まらない場合があります。多重出現の無視の設定を有効にすると、ユーザーの発話内に同じ単語が複数出現した場合、その単語は破棄されます。繰り返される単語は、ベクトル化およびそれに続くインテント一致のために、一度だけ考慮されます。

ユーザー発話内のエンティティプレースホルダ

インテント検出が改善されるよう、システムに、ユーザーの発話に存在するエンティティ値を「エンティティプレースホルダ」に置き換えさせる場合があります。NERモデルによって解決されないエンティティは置き換えに使用されないことにご注意ください。そのため、このオプションを有効にする場合は、すべてのトレーニング発話に注釈を付けることを強くお勧めします。これらのエンティティは、エンドユーザーの対話、バッチテスト、発話テスト、会話テストにおけるユーザーの発話内で置き換えられます。

MLのインテント検出のための文の分割を無効にする

ユーザー入力に複数の文が含まれている場合、CSはそれぞれの文に対してMLのインテント呼び出しを行います。これは、場合によっては理想的な状況ではないかもしれません。例えば、「チケットを予約したいです。『Book My Show』にリダイレクトしてください。」の場合、「チケットを予約したいです。」と「『Book My Show』にリダイレクトしてください。」のMLスコアは0.6になり、合計のMLスコアは0.6になります。

この設定を無効にした場合、元のユーザー入力をMLに送信してインテント識別を行うため、上記の例では0.99のような明確なスコアが得られます。

文章の分割

ユーザーの入力が複数の文章で構成されている場合、文章ごとに複数のインテント呼び出しが行われます。これは、場合によっては理想的な状況ではないかもしれません。たとえば、「チケットを予約したいです。ショーの予約ページにリダイレクトしてください。」というユーザーの発話では、「チケットを予約したいです。」と「ショーの予約ページにリダイレクトしてください。」の ML スコアは 0.6 で、合計の ML スコアも 0.6 となります。

この設定を無効にすると、インテントを特定するために元のユーザー入力が ML に送信され、上記の例では 0.99 のような確定的なスコアが得られます。

インテント排除のルール

R&R エンジンには、ML に一致する可能性のあるものを拒否するいくつかの安全ルールがあります。たとえば、ユーザーの入力に動詞しか含まれていない場合にはインテントを拒否する、といったようなものです。しかし、R&R エンジンに排除ルールを適用させて、すべての特定/優先インテントをユーザーに提示してあいまいさを解決させたくない場合もあるかもしれません。この設定を無効にすると、単一の動詞に一致するもの (ML および FM)、CR 文でエンティティのみに一致するもの (ML)、以前のパターンに一致するもの (複数文シナリオ) (FM)、以前の完全一致 (複数文シナリオ) (すべて) などのルールに一致するインテントを排除することなく、柔軟に対応できます。

複数インテント モデル

この機能を有効にすると、ボットに複数の ML インテント モデルが作成されます。すべてのプライマリ ダイアログ インテントがボット レベルのインテント モデルの一部となります。その他のダイアログ タスクとサブダイアログ タスクには、それぞれのタスクの定義で使用されているすべてのサブインテントからなる、別のダイアログ レベルの ML モデルが作成されます。詳しくは、こちらをご覧ください。

NLPの詳細設定

自然言語 > トレーニングの下にある しきい値および設定 セクションを使用して、次のようにカスタマイズすることで、Botで有効になっている各言語のインテント検出の調整を行うことができます。

これらとは別に、NLPの詳細設定の下には、特定のユースケースや要件に使用できる詳細設定があります。

警告:ほとんどのユースケースにとって、これらの設定にはデフォルト設定が理想的です。設定が適切に行われていない場合、Botのパフォーマンスに悪影響を及ぼす可能性があるため、設定している機能について十分な理解が得られていない限りは、これらの設定を変更しないでください。

 

このセクションから設定可能な各種設定の詳細については、以下の表を参照してください。

設定 説明 影響を受けるNLPエンジン 有効な入力 注釈
複合語の分割 この設定により、複合語を複数のステムに分割し、個々のステムを処理することができるようになります。 ML 有効、
無効(デフォルト)
ドイツ語のBotのみサポート
Noneインテント 有効にすると、ダミーのプレースホルダインテントが作成され、MLエンジンを使用したインテント一致の偽陽性の可能性を減らすことができます。 ML 有効(デフォルト)、
無効
コサイン類似度の減衰 コサイン類似度の減衰を使用して、短い質問でのペナルティを回避します。 KG 有効(デフォルト)、
無効
ネットワークタイプ インテントトレーニングに利用可能なニューラルネットワーク ML 標準(デフォルト)、
MLP-BOW、
MLP-WordEmbeddings、
LSTM、
CNN
Transformer
エポック ニューラルネットワークをトレーニングするための反復回数 ML 20~300の間、
10刻み
(デフォルト設定では20)
ネットワークタイプがMLP-BOW、MLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
バッチサイズ トレーニング中にそれぞれのバッチに使用したトレーニングサンプル数 ML 10~30の間、
5刻み
(デフォルト設定は10)
ネットワークタイプがMLP-BOW、MLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
学習率 ネットワークの重みが損失勾配に対してどの程度調整されるかを制御するためのハイパーパラメータ ML 1e-4~1e-3の間、
1e-2刻み
(デフォルト設定は1.00E-03)
ネットワークタイプがMLP-BOW、MLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
ドロップアウト モデルのオーバーフィッティングを避けるための正則化パラメータ ML 0~0.8の間、
0.1刻み
(デフォルト設定は0)
ネットワークタイプがMLP-BOW、MLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
ベクタライザ トレーニングデータの機能抽出手法 ML カウント(デフォルト)、
tfidf
ネットワークタイプがMLP-BOWに設定されている場合のみ有効
最大シーケンス長 トレーニングサンプルまたはユーザ入力の長さ ML 10~30の間、
5刻み
(デフォルト設定は20)
ネットワークタイプがMLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
埋め込みタイプ トレーニングデータの機能抽出手法 ML 生成、
ランダム(デフォルト)
ネットワークタイプがMLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
埋め込み次元 特徴量化に使用される埋め込み次元 ML 100~400の間、
50刻み
(デフォルト設定は300)
ネットワークタイプがMLP-WordEmbeddings、LSTM、CNNに設定されている場合のみ有効
K-分割交差検証 交差検証用のK-分割パラメータ ML 2~10の間、
1刻み
(デフォルト設定は2)
インテント名としてのFAQ名 FAQがダイアログにリンクされている場合でも、FAQの主質問をインテント名として使用する KG 有効、
無効(デフォルト)
あいまい一致 この設定により、インテント識別にあいまい一致アルゴリズムを使用することが可能 ML 有効(デフォルト)、
無効
否定の処理 この設定により、インテント識別における否定語の処理が可能 ML 有効(デフォルト)、
無効
多重出現の無視 有効にした場合、単語の出現頻度はベクトル化のために無視される ML 有効(デフォルト)、
無効
ネットワークタイプがMLP-BOWに設定されている場合のみ有効
ユーザーの発話内のエンティティプレースホルダ ユーザーの発話の中に存在するエンティティを、対応するプレースホルダに置き換えることを可能にします。 ML 有効(デフォルト)、
無効
ネットワークタイプがMLP-BOWに設定されている場合にのみ有効です。
文章の分割 ユーザーの発話内の文章を分割して、ユーザーの完全な入力を使用してインテントの検出を行います ML 有効 (デフォルト)、
無効
インテント排除のルール あらかじめ用意されたルールを適用してインテントの一致を排除することを有効化します。 RR 有効 (デフォルト)、
無効
英語、スペイン語、フランス語、ドイツ語のボットにのみ適用できます。
複数インテント モデル すべてのサブインテントを構成するプライマリ インテントごとに、個別の ML モデルを有効化します ML 有効、
無効 (デフォルト)

複合語の分割

複合語とは、2つ以上の単語を結合して、全く新しい意味を持つ新しい単語を作る際に形成されるものです。特にドイツ語では、2つ(またはそれ以上)の単語を組み合わせて複合語を形成し、無限に新しい複合語を生み出すことができます。例えば、Bilder | buch(「picture book」)の-erのように、コンポーネントを移行要素と接続したり、あるいは修飾語の一部を削除したりすることもできます。例えば、Kirch | turm(「church tower」)では、Kircheの最後の-eが削除されます。複合語は、Grunder(「founder」)と語幹grun | der(「green | the」)のように、語幹とは全く異なる意味を持つことが多々あります。NLPの観点からは、NLPエンジンが単語を分割して処理すべきタイミングと、単語全体を処理すべきタイミングを理解しておくことが重要です。

この設定は、複合語の処理方法を選択するのに使用することができます。この設定を有効にした場合、ユーザーの発話に含まれる複合語が語幹に分割され、インテント検出のために考慮されます。

Noneインテント

機械学習(ML)エンジンは、トレーニングする発話を使用して、そのトレーニングに基づいてユーザーの発話を評価するためのモデルを構築します。MLモデルは、ユーザー入力をいずれかの入力に分類しようとします。しかし、語彙が不足する単語があった場合には、それらも分類しようとするため、あるエンティティに対するインテントが阻害される場合があります。例えば、エンティティノードに人の名前があったとしても、インテントがトリガーされることはありません。

その他のNoneインテントを追加することで、Bot内のランダムな入力を分類することができます。この機能を有効にすると、Botのトレーニングで使用されていない単語がユーザーの発話に含まれている場合、MLモデルはこれらのNoneインテントを識別するよう調整が行われます。

コサイン類似度の減衰

FAQの識別は、単語の一致に基づいて行われます。このアプローチを使用することの問題点は、対応するトレーニングされた発話よりも少ない単語を持つユーザーの発話のスコアが悪くなることです。このスコアリングは、インテントの識別が失敗する原因となります。

コサイン類似度の減衰設定を有効にした場合、トレーニングされた発話よりも単語数の少ないユーザーの発話(主質問や代替質問など)は、設定を無効にした場合よりも高い「一致スコア」になります。

MLエンジンの外部化

機械学習において、ハイパーパラメータとは、その値が学習プロセスを制御するために使用されるパラメータを指します。ハイパーパラメータは、追加のBot用カスタマイズオプションを提供します。カスタマイズ可能なMLの設定は以下の通りです。

ネットワークタイプ

使用するニューラル ネットワークを選択できます。v8.1 以降、この設定は機械学習セクションに移動されました。詳しくは、こちらをご覧ください。

エポック

人工ニューラルネットワークにおいて、エポックとは、完全なトレーニングデータセットの1サイクルを指します。トレーニングされていないデータで優れたパフォーマンスを得るためには、通常(常にではないが)トレーニングデータを1回以上パスする必要があります。エポック数は、トレーニングデータセットを完全にパスする回数を制御するハイパーパラメータです。

バッチサイズ

バッチサイズとは、機械学習で使用される用語で、1回の反復で利用されるトレーニング例の数を指します。これは、ニューラルネットワークをトレーニングする際の誤差勾配の推定精度を制御します。バッチサイズは、モデルの内部パラメータが更新される前に処理するトレーニングサンプル数を制御するハイパーパラメータです。

学習率

機械学習や統計学において、学習率とは最適化アルゴリズムの調整パラメータであり、損失関数の最小値に向かって移動しつつ、それぞれの反復のステップサイズを決定します。損失に基づいてニューラルネットワークの重みの更新を制御するためのパラメータと見なすことができます。

ドロップアウト

ドロップアウトという用語は、ニューラルネットワークの中の単位(隠れているもの、見えているもの両方)を落とすことを指します。簡単に言えば、ドロップアウトとは、ランダムに選択された特定のニューロンのトレーニング段階において、単位(つまりニューロン)を無視することを指します。これは、データのオーバーフィッティングを防ぐための正則化手法です。

ベクタライザ

ベクトル化とは、要素ごとの演算ではなく、ベクトル演算を用いてアルゴリズムを最適化する方法を指します。これを使用してトレーニングデータ上での特徴抽出手法を決定することができます。以下のいずれかに設定することが可能です。

  • カウントベクタライザは、与えられたテキスト文書を、テキスト内のそれぞれの単語の出現頻度(カウント)に基づいて、用語/トークンカウントのベクトルに変換するために使用されます。これは、複数のテキストがあり、さらにテキスト分析に使用するためにテキスト内の各単語をベクトルに変換する必要がある場合に便利です。ベクトル表現を生成する前に、テキストデータを事前に処理することができます。
  • TFIDFベクタライザとは、ある単語がドキュメントコレクション内のドキュメントに対してどれだけ関連性があるかを評価する統計的尺度です。これは、単語がドキュメント内に出現する回数(単語の出現頻度)、および一連のドキュメント全体における単語の逆文書頻度(IDF)の、2つのメトリックを乗算することによって行われます。

最大シーケンス長

(トレーニングや予測のために)文を処理する場合、シーケンス長とは文中の単語数を指します。最大シーケンス長パラメータは、トレーニングに考慮される単語数の最大値です。ユーザー入力またはトレーニングするフレーズセンテンスのシーケンス長がセンテンスの長さの最大を超えている場合は、その長さにトリミングされ、それより短い場合は、そのセンテンスに特別なトークンが埋め込まれます。

埋め込みタイプ

(単語の)埋め込みとは、入力/トレーニングテキスト中の単語やフレーズをベクトル表現したものです。似た意味を持つ単語は、n次元空間で同様のベクトル表現を持ち、そのベクトル値はニューラルネットワークに似た方法で学習されます。

埋め込みタイプは、以下のいずれかに設定することができます。

  • ランダム(デフォルト設定):最初にすべての単語にランダムな埋め込みが割り当てられ、その後トレーニング中に特定のトレーニングデータに合わせて埋め込みが最適化されます。
  • 生成:単語の埋め込みは、トレーニング開始直前に生成されます。単語の埋め込みの生成には、Word2Vecモデルが使用されます。これらの生成された埋め込みは、トレーニング中に使用されます。トレーニング中に特定のトレーニングデータに合わせて、これらの生成された単語の埋め込みが最適化されます。

埋め込み次元

埋め込み次元は、埋め込みベクトルのサイズを定義します。単語の埋め込みがランダムまたは生成されたものである場合、埋め込み次元として任意の数値を使用することが可能です。

K-分割交差検証

交差検証は、限られたデータサンプルで機械学習モデルを評価するために使用されるリサンプリング手順です。この手順には、与えられたデータサンプルが分割されるグループの数を指す、Kと呼ばれる単一のパラメータが含まれます。この設定により、Kパラメータを設定することができます。交差検証の詳細については、こちらを参照してください

インテント名としてのFAQ名

このオプションでは、以下のシナリオで主質問またはダイアログタスクの名前を表示するかどうかを制御します。

  • インテント名がユーザーに存在する場合
    • あいまい性の解消フロー
    • フォローアップ
  • 発話テスト
  • バッチテスト
  • NLP分析
  • 分析(ダッシュボード、カスタムダッシュボード、会話フロー、メトリック)
  • インテント検出 – ランキングフロー

あいまい一致

あいまい一致は、システムが不正確な一致を識別するのに役立つ近似的パターン照合の手法です。MLエンジンは、あいまい一致のロジックを使用して、完全一致を識別します。あいまい一致のアルゴリズムは、ユーザーの発言との類似性に基づいて、インテントに「あいまい検索スコア」を割り当てます。あいまい検索スコアが95以上(0~100の尺度)のインテントは、完全一致として識別されます。

ただしあいまい一致は、possibleとimpossible、availableとunavailableなど、スペルが似ているが意味が異なる単語があった場合に、偽陽性を生じさせる可能性があります。この動作は、場合によっては問題となる場合があります。このオプションを無効にすることで、MLエンジンがこの一致のアルゴリズムを使用しないようにすることができます。

否定の処理

この設定では、否定された単語がユーザーの発話に含まれている場合の動作を選択することができます。否定の処理設定を有効にした場合、ユーザーの発話内に否定された任意の単語が存在する場合、インテントのMLスコアにペナルティが課せられます。

多重出現の無視

同じ単語が複数出現すると、インテントの識別が定まらない場合があります。多重出現の無視の設定を有効にすると、ユーザーの発話内に同じ単語が複数出現した場合、その単語は破棄されます。繰り返される単語は、ベクトル化およびそれに続くインテント一致のために、一度だけ考慮されます。

ユーザー発話内のエンティティプレースホルダ

インテント検出が改善されるよう、システムに、ユーザーの発話に存在するエンティティ値を「エンティティプレースホルダ」に置き換えさせる場合があります。NERモデルによって解決されないエンティティは置き換えに使用されないことにご注意ください。そのため、このオプションを有効にする場合は、すべてのトレーニング発話に注釈を付けることを強くお勧めします。これらのエンティティは、エンドユーザーの対話、バッチテスト、発話テスト、会話テストにおけるユーザーの発話内で置き換えられます。

MLのインテント検出のための文の分割を無効にする

ユーザー入力に複数の文が含まれている場合、CSはそれぞれの文に対してMLのインテント呼び出しを行います。これは、場合によっては理想的な状況ではないかもしれません。例えば、「チケットを予約したいです。『Book My Show』にリダイレクトしてください。」の場合、「チケットを予約したいです。」と「『Book My Show』にリダイレクトしてください。」のMLスコアは0.6になり、合計のMLスコアは0.6になります。

この設定を無効にした場合、元のユーザー入力をMLに送信してインテント識別を行うため、上記の例では0.99のような明確なスコアが得られます。

文章の分割

ユーザーの入力が複数の文章で構成されている場合、文章ごとに複数のインテント呼び出しが行われます。これは、場合によっては理想的な状況ではないかもしれません。たとえば、「チケットを予約したいです。ショーの予約ページにリダイレクトしてください。」というユーザーの発話では、「チケットを予約したいです。」と「ショーの予約ページにリダイレクトしてください。」の ML スコアは 0.6 で、合計の ML スコアも 0.6 となります。

この設定を無効にすると、インテントを特定するために元のユーザー入力が ML に送信され、上記の例では 0.99 のような確定的なスコアが得られます。

インテント排除のルール

R&R エンジンには、ML に一致する可能性のあるものを拒否するいくつかの安全ルールがあります。たとえば、ユーザーの入力に動詞しか含まれていない場合にはインテントを拒否する、といったようなものです。しかし、R&R エンジンに排除ルールを適用させて、すべての特定/優先インテントをユーザーに提示してあいまいさを解決させたくない場合もあるかもしれません。この設定を無効にすると、単一の動詞に一致するもの (ML および FM)、CR 文でエンティティのみに一致するもの (ML)、以前のパターンに一致するもの (複数文シナリオ) (FM)、以前の完全一致 (複数文シナリオ) (すべて) などのルールに一致するインテントを排除することなく、柔軟に対応できます。

複数インテント モデル

この機能を有効にすると、ボットに複数の ML インテント モデルが作成されます。すべてのプライマリ ダイアログ インテントがボット レベルのインテント モデルの一部となります。その他のダイアログ タスクとサブダイアログ タスクには、それぞれのタスクの定義で使用されているすべてのサブインテントからなる、別のダイアログ レベルの ML モデルが作成されます。詳しくは、こちらをご覧ください。

メニュー