同義語とは、表記は異なるが同じ意味を持つ語を指します。
例えば、「自動車」の同義語には「乗用車」「四輪車」「車」などがあります。
自然対話プラットフォームでは、ユーザ発話のマッチング時にこの同義語を利用できます。
マッチングに同義語を利用すると、少ない記述で多様なユーザ発話に対応できるため、シナリオ部分の記述に専念することができます。
また、同義語のマッチングは形態素単位に行われるため、「大型自動車」などの複数形態素(大型+自動車)で構成された語はワイルドカード(*
)と組み合わせるなどの工夫が必要です。
利用方法
同義語マッチングは、<pattern>
のlevel
属性にsynonym
を指定すると利用できます。
1 2 3 4 5 6 |
<category> <pattern level="synonym">自動車</pattern> <template> 「自動車」の他に「乗用車」「四輪車」「車」などがマッチします。 </template> </category> |
複数形態素で構成された語に対して同義語マッチングを行うには以下のように記述します。
- ワイルドカード(
*
)を利用する場合123456<category><pattern level="synonym">* 自動車</pattern><template>「大型自動車」や「中型自動車」、「通勤用の車」などにマッチします。</template></category> <pattern>
のpartial
属性を利用する場合
123456<category><pattern level="synonym" partial="true">自動車</pattern><template>「大型自動車」や「自動車通勤」、「ここは車専用道路です」などにマッチします。</template></category>