Amazon Lex のスロットタイプ AMAZON.Stateは、都道府県と県庁所在地をどこまで認識してくれるか調査してみた

Lex のスロットタイプ AMAZON.Stateは、地域を認識するスロットタイプです。 日本の都道府県と県庁所在地をどこまで認識してくれるか調査してみました。
2023.03.20

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

Amazon LexのスロットタイプであるAMAZON.Stateを利用した際に、Lexが日本語の都市をどこまで認識してくれるか調査しました。

AMAZON.Stateは、ドキュメントでは、国の地理的および政治的地域の名前と記載があります。

例えば、AMAZON.Stateをスロットに適用し、テストした場合、北海道東京東京都埼玉沖縄と入力すると、Lexは、それぞれ都市として認識してくれます。

下記は、テストしたときの画像です。

北海道東京東京都埼玉沖縄が認識されています。

テストの作成方法は、後述します。

日本の都市に関して、都道府県県庁所在地(県庁所在地を除く)政令指定都市地域は、スロットタイプ AMAZON.Stateでどこまで認識するかを調査しました。

類似のスロットタイプのAMAZON.Cityは、以前調査しましたので、紹介しておきます。

調査結果

先に調査結果を出します。

調査日(2023年3月20日)時点でのLexの認識能力のため、時間が経てば認識能力が上がることで、より聞き取ってくれる可能性はあります。

都道府県と県庁所在地(漢字)

県庁所在地や末尾に都道府県をつけた場合も含めて、調査しました。

例えば、「青森」、「青森県」、「盛岡」、「盛岡市」、全て確認します。

都道府県 判定 語尾に都道府県を付与 判定 県庁所在地 判定 語尾に市を付与 判定
北海道 北海道 札幌 × 札幌市 ×
青森 青森県 盛岡 × 盛岡市 ×
岩手 岩手県 - - 岩手市 ×
秋田 秋田県 - - 秋田市 ×
宮城 宮城県 仙台 - 仙台市 ×
山形 山形県 - - 山形市 ×
福島 福島県 - - 福島市 ×
新潟 新潟県 - - 新潟市 ×
栃木 栃木県 宇都宮 × 宇都宮市 ×
茨城 茨城県 水戸 × 水戸市 ×
千葉 千葉県 - - 千葉市 ×
東京 東京都 - - - ×
神奈川 神奈川県 横浜 × 横浜市 ×
埼玉  埼玉県 さいたま さいたま市 ×
富山 富山県 - - 富山市 ×
群馬 群馬県 前橋 × 前橋市 ×
石川 石川県 金沢 × 金沢市 ×
長野 長野県 - - 長野市 ×
山梨 山梨県 甲府 × 甲府市 ×
静岡 静岡県 - - 静岡市 ×
愛知 愛知県 名古屋 × 名古屋市 ×
岐阜 岐阜県 - - 岐阜市 ×
福井 福井県 - - 福井市 ×
滋賀 滋賀県 大津 × 大津市 ×
三重 三重県 × 津市 ×
奈良 奈良県 - - 奈良市 ×
和歌山 和歌山県 - - 和歌山市 ×
大阪 大阪府 - - 大阪市 ×
兵庫 兵庫県 神戸 × 神戸市 ×
京都 京都府 - - 京都市 ×
鳥取 鳥取県 - - 鳥取市 ×
岡山 岡山県 - - 岡山市 ×
島根 島根県 松江 × 松江市 ×
広島 広島県 - - 広島市 ×
山口 山口県 - - 山口市 ×
香川 香川県 高松 × 高松市 ×
徳島 徳島県 - - 徳島市 ×
高知 高知県 - - 高知市 ×
愛媛 愛媛県 松山 × 松山市 ×
福岡 福岡県 - - 福岡市 ×
佐賀 佐賀県 - - 佐賀市 ×
長崎 長崎県 - - 長崎市 ×
大分 大分県 - - 大分市 ×
熊本 熊本県 - - 熊本市 ×
宮崎 宮崎県 - - 宮崎市 ×
鹿児島 鹿児島県 - - 鹿児島市 ×
沖縄 沖縄県 那覇 × 那覇市 ×

都道府県は、全て認識してくれますね。

ただし、県庁所在地は、さいたまを除いて全く認識されませんでした。

都道府県(ひらがな)

一部の都道府県をひらがなで入力して調査しました。

入力内容 判定
ほっかいどう
いわて
あきた
みやぎ
かながわ
さいたま
ぐんま
あいち
しが
みえ
ひょうご
かがわ
えひめ

こちらは、問題なく認識してくれますね。

県庁所在地以外の政令指定都市(漢字)

県庁所在地以外の政令指定都市も調査しました。

入力内容 判定 入力内容 判定
川崎 × 川崎市 ×
相模原 × 相模原市 ×
浜松 × 浜松市 ×
× 堺市 ×
北九州 × 北九州市 ×

こちらは、認識されませんでした。

地域

天気の説明などで出てくる地域名で調査しました。

入力内容 判定
北日本
東日本
西日本
東北
東北地方
北陸
北陸地方
関東
関東
関東甲信 ×
関西
関西地方 ×
東海
東海地方
中部
中部地方 ×
近畿
近畿地方 ×
中国 ×
中国地方
四国
四国地方
九州
九州地方 ×

中部や九州などは、語尾に地方が付く場合、認識されないようですね

以上の結果から、AMAZON.Stateは、都道府県は認識し、県庁所在地や政令都市は認識しない、地域はある程度認識することが分かりました。

調査環境の作成

今回、調査するために、作成したボットとインテントの作成方法を説明します。

ボットの作成

  1. Lexのコンソール画面から、[ボットの作成]をクリックします。
  2. [空のボットを作成します]を選択し、ボット名を記載し、下記画像の通りに入力します。
  3. 日本語を選択し、[完了]をクリックします。

これでボットが作成できました。

インテントの作成

  1. インテント名を入力し、サンプル発話に「町」を追加します。
  2. [スロットを追加]から、スロットタイプ[AMAZON.State]を選択します。プロンプトと名前も記載します。
    • スロット名をstate1としました。
    1. と同じようにスロット値を4つ作成します。スロットを5つ作成すると、テストできる量が5倍になります。不要であれば、スロットは、1つでもよいです。
  3. [Confirmation]の確認プロンプトに、以下を記載します
    • {state1}、{state2}、{state3}、{state4}、{state5}、でよろしいでしょうか?
  4. インテントを保存後、Buildすると、インテントのテストが行えます。

テスト方法

  1. [Test]をクリックし、「町」と入力後、「1つ目を教えて下さい」と問われるため、「東京」などと入力すると、Lexが認識できた場合のみ、次のスロットのプロンプトが呼ばれます。

このインテントで、AMAZON.Stateのテストが行えます。

最後に

スロットタイプのAMAZON.Stateでは、都道府県名は認識されますが、都道府県名を除く県庁所在地は認識されないため、Lexを使用する際に注意が必要だと分かりました。

他のスロットタイプもどこまで日本語を認識してくれるか調査してみてもよいですね。

Lexを使用する際に、参考になれば幸いです。