(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-14
(45)【発行日】2024-03-25
(54)【発明の名称】状態遷移管理システム、方法及びプログラム
(51)【国際特許分類】
G06N 5/02 20230101AFI20240315BHJP
G06F 40/40 20200101ALI20240315BHJP
G06F 40/56 20200101ALI20240315BHJP
【FI】
G06N5/02
G06F40/40
G06F40/56
(21)【出願番号】P 2019162815
(22)【出願日】2019-09-06
【審査請求日】2022-09-02
(73)【特許権者】
【識別番号】510189662
【氏名又は名称】ヴイアールアイ株式会社
(74)【代理人】
【識別番号】100110652
【氏名又は名称】塩野谷 英城
(72)【発明者】
【氏名】藤田 岳史
【審査官】北川 純次
(56)【参考文献】
【文献】特開平05-108355(JP,A)
【文献】特開平05-108354(JP,A)
【文献】特開平02-109131(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 5/00 - 5/048
G06F 40/40
G06F 40/56
(57)【特許請求の範囲】
【請求項1】
前状態と結果状態とを紐付けて前状態から結果状態への遷移を示すfosを複数記憶するfos記憶部と、
前記複数のfosから第1fosを選択し、選択した第1fosと繋がる状態を持つ第2fosを前記fos記憶部から選択し、前記第1fosの状態と前記第2fosの状態とを紐付けた拡張fosを生成する拡張fos生成部と、
当該拡張fosの構造に基づいてfos間の因果関係を示す情報を記憶装置に保存する因果関係保存部とを備
え、
プロセッサが、前記第1fosと前記第2fosとの状態の繋がりに矛盾がないかを矛盾判定用の情報との対比により判定する機能を有する、状態遷移管理システム。
【請求項2】
請求項1において、
前記保存した因果関係に基づき、質問に対する回答を生成する問答部を備えた、状態遷移管理システム。
【請求項3】
前状態と結果状態とを紐付けて前状態から結果状態への遷移を示すfosを
fos記憶部に複数記憶
するfos記憶ステップと、
前記複数のfosから第1fosを選択し、選択した第1fosと繋がる状態を持つ第2fosを前記fos記憶部から選択し、前記第1fosの状態と前記第2fosの状態とを紐付けた拡張fosを生成
する拡張fos生成ステップと、
当該拡張fosの構造に基づいてfos間の因果関係を示す情報を記憶装置に保存する
因果関係保存ステップと、
前記第1fosと前記第2fosとの状態の繋がりに矛盾がないかを矛盾判定用の情報との対比により判定するステップと、
を含む処理をプロセッサが実行する状態遷移管理方法。
【請求項4】
前状態と結果状態とを紐付けて前状態から結果状態への遷移を示すfosを
fos記憶部に複数記憶
するfos記憶ステップと、
前記複数のfosから第1fosを選択し、選択した第1fosと繋がる状態を持つ第2fosを前記fos記憶部から選択し、前記第1fosの状態と前記第2fosの状態とを紐付けた拡張fosを生成
する拡張fos生成ステップと、
当該拡張fosの構造に基づいてfos間の因果関係を示す情報を記憶装置に保存する
因果関係保存ステップと、
前記第1fosと前記第2fosとの状態の繋がりに矛盾がないかを矛盾判定用の情報との対比により判定するステップと、
を含む処理をプロセッサに実行させる状態遷移管理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、状態遷移管理システムに係り、特に、状態の因果関係を把握するための状態遷移管理システムに関する。
【背景技術】
【0002】
コンピュータが、状態の遷移を記録し、記録した状態遷移に基づいて状態の因果関係を把握するためには、コンピュータ上で効率的に状態遷移を管理するためのデータ構造の提案が必要である。
なお、出願人は、本願に先立ち、特に医療分野での医療と病状との因果関係を速やかに把握するためのシステムを提案している(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明は、コンピュータ上で効率的に状態遷移を管理するためのデータ構造を提案し、状態遷移から因果関係を効率的に把握できるようにすることを課題とする。
【課題を解決するための手段】
【0005】
この課題を解決するため、本発明では、前状態と結果状態とを紐付けて前状態から結果状態への遷移を示すfosを複数記憶するfos記憶部を備える。また、複数のfosから第1fosを選択し、選択した第1fosと繋がる状態を持つ第2fosをfos記憶部から選択し、第1fosの状態と第2fosの状態とを紐付けた拡張fosを生成する拡張fos生成部を有する。さらに、当該拡張fosの構造に基づいてfos間の因果関係を示す情報を記憶装置に保存する因果関係保存部を備える。そして、プロセッサが、第1fosと第2fosとの繋がりに矛盾がないかを矛盾判定用の情報との対比により判定する機能を有する、という構成を採っている。
後述する実施形態において、「fos記憶部」は、記憶装置の記憶領域である。「拡張fos」とは、複数のfosがリンクされたfosをいう。「拡張fos生成部」、「因果関係保存部」及び「問答部」は、プロセッサがプログラムを実行することにより、当該各部として機能する。
【発明の効果】
【0006】
本発明によれば、コンピュータ上で効率的に状態遷移を管理するためのデータ構造を提案したことで、状態遷移から因果関係を効率的に把握することができる。
【図面の簡単な説明】
【0007】
【
図1】本発明の実施形態に用いるfosの構造図である。
【
図2】本発明の実施形態に用いるfosの構造図である。
【
図3】本発明の実施形態に用いるfosの構造図である。
【
図4】本発明の実施形態に用いるfosの構造図である。
【
図5】本発明の実施形態に用いるfosの構造図である。
【
図6】本発明の実施形態に用いるfosの構造図である。
【
図7】本発明の実施形態に用いるfosの構造図である。
【
図8】本発明の実施形態に用いるfosの構造図である。
【
図9】本発明の実施形態に用いるfosの構造図である。
【
図10】本発明の実施形態に用いるfosの構造図である。
【
図11】本発明の実施形態に用いるfosの構造図である。
【
図12】本発明の実施形態に用いるfosの構造図である。
【
図13】本発明の実施形態に用いるfosの構造図である。
【
図14】本発明の実施形態に用いるfosの構造図である。
【
図15】本発明の実施形態に用いるfosの構造図である。
【
図16】本発明の実施形態に用いるハードウェアの構成図である。
【発明を実施するための形態】
【0008】
[実施形態の概要]
本実施形態では、状態遷移のネットワークを生成する。状態を示すノードをstate(ステート)といい、複数のstateを紐付けて状態の時系列変化(状態遷移)を表したものをflow of state(フロー・オブ・ステート、fos)という(
図1)。
【0009】
fos、stateともに、特徴が異なる種類がいくつかあり、システム内での定義と使われ方に違いがある。
【0010】
fosは、prime fos(プライムfos)、仮想fos、手段fos、常識fosなどに分類される。
【0011】
stateは、一般state、オブジェクトstate、常識stateなどに分類される。
【0012】
これらのstate及びfosの組み合わせによって生成される状態遷移のネットワークは、知識を構造化したものになり、状態の因果関係を辿ることを可能にする。大きな状態遷移を把握するために、fos単位の小さな状態遷移を扱うシステムである。
【0013】
[fosについて]
上述したfosの種類を説明する。prime fosは、A状態からB状態への遷移の因果律が明証的であり、AB間に何か別の状態が起こらないものである。基本的には、何かが存在する(ある)か、存在しない(ない)かの状態遷移を表す。
【0014】
例えば、
図2の「蒸発fos」は、「水がある」状態から「水がない」状態への変化を示し、その状態間には別の状態がないので、prime fosとして扱う。
【0015】
一方、仮想fosは、紐付けた状態間の因果律が明確ではないが、会話データや文章データ等から判定した状態の流れを示す。例えば、
図3のように、A状態からN状態で分岐し、B状態に繋がると確定しない状況では、A状態とB状態との因果律が確定しないため、仮想fosとして扱う。
【0016】
また、状態変化を「起こす」具体的な触媒や手段はprime fosとは別に手段fosという。
【0017】
例えば、
図4に示す、水やり、降雨、シャワー、ドライヤー、自然乾燥(日照、高温)などは、手段fosである。
【0018】
また、fosの中でパラメータが変わらない事象の場合は、常識fosという。
【0019】
fosは、前の状態(イニシャルstate)と結果の状態(リザルトstate)とで構成される。fosには、その状態間の遷移の条件(時間や場所、対象となるオブジェクト等)及びパラメータを記述することができる(
図5)。
図6は、条件やパラメータが付された手段fos「歩く」「蹴る」の例である。
「歩く」fosは、足跡が「ない」から「ある」に遷移することを示し、足跡の向きがパラメータとして設定できるようになっている。「蹴る」fosは、「静止」から「足を強く当てる」の条件を満たして「動く」に遷移することを示す。
【0020】
また、
図1のようにfos同士をリンクすることができ、fos間の遷移にリンク条件を設定することができる。fos間のリンク条件には、数値(何時間などの期間や何度以上、以下など数値で示せる範囲)やboolean値(対象について、ある/ない、yes/no値)を設定することができる(
図7)。
【0021】
[常識fosと常識]
今、次の文章があるとする。
「花壇の植物に水やりをします。夏は1日3回、冬は1日2回です。」
また、
図8のfosが登録されているものとする。
【0022】
上記の文章から「植物は水が必要」という常識を推論する。推論とは、プログラムが一時的に正しい値として記憶装置に保存することをいう。
【0023】
プロセッサは、以下の処理を行う。上記の文章から自然言語処理により「水やり」とその対象である「植物」を切り出す。「水やり」から記憶装置に登録されている手段fos「水やり」を読み出す。「水やり」fosには、
図8に示すように、「水がない」状態から「水がある」状態への遷移が登録されている。同様に「ない」状態から「ある」状態への遷移を持つfosを記憶装置から検索すると、
図8の「必要」fosが該当する。プロセッサは、オブジェクト「植物」の語と、「水やり」fosの「水」又は「水やり」の語と、「必要」fosの「必要」の語とを用い、自然言語処理により「植物は水が必要」又は「植物は水やりが必要」という文章を生成する。プロセッサは、「必要」fosに該当したことから、「植物は水やりが必要」という文章が明証的である可能性が高いものとして、常識として記憶装置に一時的に保存する。
【0024】
一時的に保存した「常識」を出力装置によりユーザに提示し、入力装置を通じてユーザから承認されたことをもって「常識」として確定してもよい。一度常識になったものは、システムが、それを学んでいる、と言うことができる。
【0025】
ここで、「常識」と「常識fos」とは異なる。「常識fos」は、fosの中でパラメータが変わらない事象である、と前述した。「植物は水が必要」という文章にはパラメータや変数はないが、事象でもない。よって、「植物は水が必要」という文章は「常識」として扱い、「常識fos」ではない。「常識fos」は、例えば「氷が溶けて水になる」というような事象であり、氷から水への過程に分岐もパラメータも伴わない、そういうことが対象になる。
【0026】
「常識fos」は、状態遷移があるfosの一種であるが、「常識」は、fosの繋がりやその矛盾をみるための明証的な事項・データとして扱う。
【0027】
また、「植物に水やりをする」fos(「水やり」fos)は、水やりの回数等の条件・パラメータを伴うので、常識fosではなく、手段fosとして扱う。
【0028】
[因果関係を示すfos]
「なぜ」という原因や理由を問う質問に対しては、fosの状態遷移を遡る方向に要因を探すことで、答えを返すことができる。
【0029】
例えば、「なぜ水やりは何度も行うのか?」という質問に対し、プロセッサは、次の処理を実行する。ここでは、
図9の「水やり」fos、「蒸発」fos及び「(何度も)行う」fosが記憶装置に登録されているものとする。prime fosである「蒸発」fosには条件として「時間経過」が設定されている。
【0030】
まず、自然言語処理により取得した文章中の言葉について、対応するfosを検索する。この結果、「水やり」fosと、「行う」fosを記憶装置から読み出す。続いて、
図9に示す「水やり」fosの前の状態、即ち「水がない」状態を、結果の状態として持つfosを検索し、これに該当する「蒸発」fosを記憶装置から読み出す。「蒸発」fosは、
図9に示すように、前の状態「水がある」から結果の状態「水がない」に遷移する構造を持つ。このように、「蒸発」fosの結果の状態と「水やり」fosの前の状態とが繋がることから、「水やり」の原因が「蒸発」であると推測する。さらに、「蒸発」fosの前の状態「水がある」と「水やり」fosの結果の状態「水がある」とが繋がることから、
図9に示すように、「水やり」fosから「蒸発」fosへ、「蒸発」fosから「水やり」fosへと繰り返しリンクした仮想fosを記憶装置に保存する。
【0031】
続いて、手段fosである同じ「水やり」fosの繰り返しと、「行う」fosの前状態「する」から結果状態「する」への遷移とを比較し、「する」から「する」への遷移と、同じ手段fosの繰り返しとが対応するものと判定し、よって上記の仮想fosが示す状態遷移が矛盾しないものと判定する。そして、「蒸発」fosから「水やり」fosへの遷移を逆にたどり、「水やり」の原因が「蒸発」であると判定する。この因果関係と「蒸発」fosから得た「時間経過」の文言とを用い、「水は時間経過で蒸発するから」という回答文を自然言語処理により生成する。そして、「なぜ水やりは何度も行うのか?」という質問に対し、「水は時間経過で蒸発するから」という回答を出力装置に出力する。
【0032】
[stateとfosのリンクについて]
stateは、通常state、常識state、オブジェクトstateに分類される。
【0033】
これらのstate同士が繋がる形態としては、前述したfosの他、fosの共和(シークエンス)又はfos間のリンク(分岐)がある。
【0034】
fosは、前述のとおり、stateを時系列に紐付けて状態遷移を表すものである。シークエンスとは、特に、紐付いたstateの間に因果関係(こうしたら、こうなった、という関係)があるstateのまとまりをいう。fos間のリンクとは、一のfosの結果状態と他のfosの前状態とを紐付けることによって、複数のfosを紐付けたものをいう。
【0035】
例えば、
図10のように複数のfosのリンクが構成され、花への「水やり」fosから「開花」fosに進む条件が水やり回数3回であり、「萎れる」fosに進む条件が水やり回数1回以下に設定されているとする。このようなfosのリンクを構成することにより、例えば「どうして水やりは3回必要なのか」という質問に対して「花が萎れるから」という回答を生成し、または「水やりをしないとどうなるのか」という質問に対して「花が萎れる」といった回答を生成することが可能となる。
【0036】
この場合、プロセッサは、質問文中の「水やり」の語に対応する「水やり」fosを検索すると共に、水やりの回数に応じてリンクされている「開花」fosと「萎れる」fosを読み出す。質問文中の水やりの程度に関する語「3回必要なのか」又は「水やりをしない」の語から、水やりの条件が2回以下又は0回の場合のリンク先を参照し、いずれの場合も「萎れる」fosに繋がることから、上記のように「花が萎れるから」又は「花が萎れる」という回答文を生成して出力装置から出力する。
【0037】
また、stateの状態には、ポジティブ、ネガティブの値を設定できるようになっている。この設定については後述する。
【0038】
[fos間のリンク生成]
いま次の文章が入力され記憶されているとする。
「開花して1週間の間、水分が少ない状態が続くと花は萎れてしまいます。」
【0039】
この文章から
図11の「開花」fosと「萎れる」fosとのリンクを生成する処理を説明する。プロセッサは、上記の文章に対し自然言語処理を実行し、「開花」の語句に対応する「開花」fosと「萎れる」の語句に対応する「萎れる」fosとを記憶装置から検索し、「開花」fosと「萎れる」fosとの間に、「開花」fosから「萎れる」fosに向かうリンクを設定する。さらに、上記文章から「1週間の間水分が少ない状態が続く」という文を抽出し、「開花」fosから「萎れる」fosに向かうリンクに条件として設定する。
【0040】
このようにして生成した
図11のfos間リンクの利用例を説明する。いま「どうしたら花が萎れないようにできるか?」という質問が入力され記憶されているとする。プロセッサは、自然言語処理により質問文から語句を切り出す。このうち「萎れない」の語を「萎れる」の否定型と認識する。そして、「萎れる」fosを記憶装置から検索し、さらに、「萎れる」fosに繋がるリンクの条件「1週間の間水分が少ない状態が続く」を読み出す。この条件文から「少ない」の語を抽出し、その語に対応する「少ない」fosを記憶装置から検索する。
【0041】
ここで、「少ない」fosは
図12のように登録されているとする。上記の否定型との認識から、「少ない」fosの状態遷移が起こる前状態「水分がある」を選択する。「水分(水)がある」を結果に持つfosを検索すると、
図8の「水やり」fosが見つかる。上記の質問「どうしたら花が萎れないようにできるか?」に対し「水やりをする」という回答を生成し出力する。なお、「水分」と「水」は同意語として記憶装置内の辞書に登録されているものとし、この辞書を参照して「水分がない」から「水がない」を検索する。同意語の辞書に完全一致するものが無い場合は、部分一致の候補からベストな候補を選択して処理を進める。
【0042】
[fosの構成と保存]
プロセッサは、fosとstateを基本的に2つの方法で構成し記憶装置に記録する。その1つは、主体、対象、時間、場所、条件等の自動学習であり、もう1つは、ユーザによる主体(Subject)、対象(Object)、時間、場所、条件等の入力である。自動学習では、プログラムに与えられた自然文から上記の条件等を自動的に抽出しfosを構成する。ユーザによる直接入力は、ディスプレイ画面等を通じて行われる。
【0043】
以下に自動学習の一例を示す。いま、以下の文章が入力され記憶されているとする。
「洞穴にライオンがいました。
ライオンは洞穴に入ってくる動物を食べていました。
ある時、キツネは洞穴の前で、
入って行く動物の足跡はたくさんあるのに、
出て行く足跡が無いのに気付きました。」
【0044】
プロセッサは、以下の処理を行う。上記文章に自然言語処理を実行し、語句に分ける。分けた語句から対応するfosを検索する。ここでは、
図13のfosが記憶装置に定義されているものとする。「食べられる」fosの結果状態にはネガティブを示す値が設定されている。
【0045】
具体的には、「洞穴にライオンがいました。」の「いました」に対応する「いる」fosを読み出す。場所として「洞穴」、主体として「ライオン」の語を抽出し、これらを「いる」fosのパラメータに設定して、
図14(a)のfosを構成する。
【0046】
また、「洞穴に入ってくる動物」の「入ってくる」に対応する「入る」fosを読み出す。場所として「洞穴」、主体として「動物」の語を抽出し、これらを「入る」fosのパラメータに設定して、
図14(b)のfosを構成する。
【0047】
また、「ライオンは・・・動物を食べていました。」の「食べていました」に対応する「食べる」fosを読み出す。主体として「ライオン」、対象として「動物」の語を抽出し、「食べる」fosのパラメータに設定して
図14(c)のfosを構成する。
【0048】
同じく「ライオンは・・・動物を食べていました。」の「食べていました」に対応する「食べられる」fosを読み出す。主体として「動物」の語を抽出し、「食べられる」fosのパラメータに設定して
図14(d)のfosを構成する。
【0049】
また、「入って行く動物の足跡」の「入って行く」に対応する「入る」fosを読み出す。主体として「動物の足跡」の語を抽出し、「入る」fosのパラメータに設定して
図14(e)のfosを構成する。
【0050】
また、「出て行く足跡」の「出て行く」に対応する「出る」fosを読み出す。主体として「足跡」の語を抽出し、「出る」fosのパラメータに設定して
図14(f)のfosを構成する。
【0051】
ここで、「洞穴に入ってもいい?」という質問文が入力されると、プロセッサは、以下の動作を行う。質問文から「洞穴」、「入ってもいい」の語を切り出し、「入ってもいい」に対応する「入る」fosのうち「洞穴」に関するものを検索する。この結果、洞穴に動物が「入る」fos(
図14(b))と、洞穴に足跡が「入る」fos(
図14(e))とを読み出す。これらの各「入る」fosから、洞穴には、「動物」が「ある」という状態と、洞穴には「足跡」が「ある」という状態とを判定する。また、「足跡」についてfosを検索すると、「出る」fos(
図14(f))が見つかり、「足跡」の状態が「ある」から「ない」に遷移していることがわかる。同様に、状態が「ある」から「ない」に遷移しているfosを検索すると、ライオンが動物を「食べる」fos(
図14(c))と、動物が「食べられる」fos(
図14(d))とが見つかる。
【0052】
動物について状態遷移を追うと、「入る」fosから「食べる」/「食べられる」fosへの流れで、状態は「ない」から「ある」へ、さらに、「ある」から「ない」へと遷移する。また、足跡について状態遷移を追うと、「入る」fosから「出る」fosへの流れで、状態は「ない」から「ある」へ、さらに、「ある」から「ない」へと遷移する。以上の動物についての「入る」fosから「食べる」fos/「食べられる」fosへの流れと、足跡についての「入る」fosから「出る」fosへの流れは、同じように遷移しており、矛盾しないものと判定する。この結果から、洞穴について「入る」fosから「食べられる」fosへのリンクを生成し記憶する(
図15)。「洞穴に入ってもいい?」という質問に対しては、
図15のfos間リンクを参照し、「食べられる」fosの結果状態がネガティブに設定されていることから「いいえ」という回答を生成し、出力する。また、理由についても回答する場合は、
図15のfos間リンクの状態遷移を参照し、「洞穴に入ると食べられてしまうから」という回答を生成し、出力する。
【0053】
[ポジティブとネガティブの自動判定]
前述のように、fosへのポジティブ又はネガティブの設定は、ユーザが入力装置を操作して設定してもよいが、システムが自動判定によりポジティブ又はネガティブの値を付与してもよい。
【0054】
いま例えば、StateA(水がある)からStateB(花がある)に遷移する「花が咲く」fosにポジティブが設定されており、かつ、StateF(種がある)からStateA(水がある)に遷移する「種まき」fosにもポジティブが設定されているとする。ここで、StateF(種がある)からStateB(花がある)に遷移する「花を育てる」fosに対し、ポジティブ又はネガティブの付与を自動判定する場合、FからAへの遷移、さらにAからBへの遷移の両方がポジティブであることから、FからBへの遷移に対してポジティブを付与する。
【0055】
また例えば、StateA(水がある)からStateU(水がない)に遷移する「蒸発」fosにネガティブが設定されてており、かつ、StateF(種がある)からStateA(水がある)に遷移する「種まき」fosにポジティブが設定されているとする。ここで、StateF(種がある)からStateU(水がない)に遷移する「種まき」fosに対し、ポジティブ又はネガティブの付与を自動判定する場合、FからAへの遷移がポジティブであっても、AからUへの遷移がネガティブであることから、FからUへの遷移に対してネガティブを付与する。
【0056】
[ハードウェア]
以上の動作を行うシステムのハードウェア構成を説明する。
図16において、プロセッサ1は、プログラムやapi(アプリケーション・プログラミング・インターフェース)の実行により、上記の種々の動作を実行する。
【0057】
入力装置2は、プログラムの実行に用いる種々の情報を入力する。入力装置2には、キーボード(テキスト入力)、マイク(音声入力)、カメラ(映像入力)及び各種センサ(センサ値入力)を含む。通信インターフェースを含んでもよい。
【0058】
出力装置3は、プログラムの実行により得た種々の情報を出力する。出力装置3には、情報の出力が可能な器具、ディスプレイ画面、スピーカ(スマートスピーカを含む)等が含まれる。通信インターフェースを含んでもよい。
【0059】
記憶装置4は、プログラムの実行に用いる種々の情報と、プログラムの実行により得た種々の情報とが格納される。記憶装置4には、入力パターン変換辞書、fosモジュール、ユーザ個別の履歴データ、ユーザ個別の辞書モジュール、出力パターン変換辞書及び常識辞書を格納する。入力パターン変換辞書及び出力パターン変換辞書は、変換前のパターンと変換後のパターンとをfosの構造(遷移)により表現する。fosモジュールは、既述のfosの構造をモジュール化したものである。fosやstateのデータ構造は、DB(データベース)クエリにより記憶装置4に保存してもよい。また、json file等のテキストベースのDBに保存してもよい。
【0060】
上述した種々の動作は、プロセッサ1がプログラムを実行することにより行われる。動作に要する種々の情報は、記憶装置4から読み出される。動作により得た情報は、記憶装置4に格納される。当システムへの入力は、入力装置2を介して行われる。当システムからの出力は、出力装置3を介して行われる。
【0061】
以上説明した本発明の実施形態によれば、様々な状態遷移を示す複数のfosを記録し、与えられた状況に応じて所定のfos間をリンクし、状態遷移を拡張するので、拡張した状態遷移から状態の因果関係を把握することができる。また、把握した因果関係に基づき、質問文に対する回答を生成することもできる。
【0062】
本発明の範囲は、上記実施形態の範囲に限られない。本発明の範囲は、特許請求の範囲に記載した発明の範囲である。
【符号の説明】
【0063】
1 プロセッサ
2 入力装置
3 出力装置
4 記憶装置