ROIDCORE  Personified Agent  Conversation ROBOT  Dynamic Artificial Intelligence
仮想人格:ロイドコア
ロイドコア (ROIDCORE) β版
話し言葉による知識の記憶と想起を実現した擬人化キャラクター

トップページ | このサイトについて | プライバシーと共有 | お問い合わせ | 会社情報 | 四方山話
最新情報 | ロイドコアとは | ホワイトレポート | 人格の仮想化技術 | 応用例のご案内
動的人工知能 | 感性と感情 | マインドマップ | 人工知能言語 | 会話ロボット | 記憶モデル
表層と深層 | 不気味の谷と不気味な文 | 教師あり/なし学習

 ■ 動的人工知能(DAI:Dynamic Artificial Intelligence)   作成日:2012/11/22

【ロイドコアβ版を公開して】(言語理解だけでは会話は成り立たない)
 約一年間、ロイドコアβ版を公開して分かった事、改良点などを述べる。 ある程度予想していたが論理的処理を実装した静的人工知能では人間的な会話/対話に不十分である。 時間的因果関係を保つ短期記憶や回帰的な時系列データ処理は状態遷移の記述に向いているがこれには限界がある。 学習なり記憶モデルで状態が定常的に同定できていることが前提になる。
 ロイドコアの記憶モデルは20年以上前に開発した新生児の大脳を模した「自己増殖型ニューラルネット」を進化させたものである。 改良されたこのモデルは従来の活性化層が完全にニューロン(ノードベクトル/マトリクス)に取り込まれていて、層状も含め自由なコネクションが構成できるように なっているのが最大の特徴であり、コネクションモデルの構造の呪縛から完全に解き放たれたと考えている。 一般のニューラルネットではそもそも活性化層が無いので、そのようなニューラルネットを構築することができなかった。 ロイドコアの「自己増殖型ニューラルネット」はルールベースで自由かつ多重にニューロンを発芽/成長させられる。 更にノードに到達するまではデータは伝播しない。デルタルールで学習させないが誤差も伝播しない。 この自由なコネクション構造は動的な感情状態の記述に向いていることが確認できた。 当然、階層化やリカレント化では不可能だった状態が記述可能になっているからである。
 同時に一番大きな反省は人工知能を最適化問題の範疇と考えていたことである。 ツイッターや別の解説でもこの様な考え方に捕らわれていたことがうかがえる。 自由に出現する動的な状態は従来の静的クラスタにならない。分かり易く言うと、固有値問題として 固有ベクトルと固有値が決まらない状態、この多くが感情の状態を動的に作り出していて前処理の不備や対角化の問題ではない。 動的状態をコネクションで扱う際にノード構造の存在が邪魔をしていたということになる。

【ゲーム脳や仕事脳とは】(人工知能に動的処理が必要な理由)
 あまり良い意味で使われない言葉だが使われるからにはそれなりの事実(ラベル化)の存在を意識した結果であろう。 大脳の記憶モデルを「あれやこれや」といじっていると、それらは脳モデルの学習結果ではなく、ある条件(主に外部刺激)で 反応している脳の状態を表すのではないかと考えるようになった。 そして、それには個人差があり、その様な状態になり易い個性や学習が存在し、その結果、この様に呼ばれるようになったのではないかと考える。 更に、状態であるから理性的ではなく感情的な応答と関係しているとも推測した。 正確な検証はこれから必要だが現時点で多少現象を把握している。
 今まで人工知能的記憶モデルとして記憶、想起、推論の機能に重きを置いてきた。 静的記憶モデルを用い感情応答までを静的クラスタリング(感情空間へのマッピングや対角化など)していた。 これで学習結果としての「ゲーム脳」、「仕事脳」となる筈だった。実態は詳らかにされていないにも拘わらずだ。 正確には「ゲーム脳状態」、「仕事脳状態」と呼称すべき事象であり、一種の励起したエネルギー状態(一時的な非定常固有ベクトルの存在) にあり、そのときの非定常な固有値が一般に言われる「ゲーム脳」、「仕事脳」のクラスタに他ならない。 このモード(準安定状態)に遷移するには外部からの刺激が必要で、投入エネルギー(マルチモーダル的な情報や五感の刺激)がある閾値を越えると励起状態になり、いずれ基底状態(静寂的な脳状態)へ戻る。 これらの状態遷移は外部刺激との境界条件を伴うためにHMMのような共起的処理では遷移を観測できない(学習できない)。
 特にこの外部刺激が言葉の場合(会話や対話)、語彙の多様性と背景知識の個人差を含む共起情報も必要になる。 この個人的な共起情報は多くの場合その個人の過去の経験によって作られているもので言語学や文法の守備範囲外である。 経験に基づく共起現象はPTSDなどのストレス障害とも深く関わってくると思われ、今後取り組んでみたい分野でもある。

【ロイドコアが目指す動的人工知能とは】(機械知能からの脱却)
 最新のロイドコアのはある目的のために完全な動的人工知能(Dynamic Artificial Intelligence)へ移行しつつある。 理由は静的人工知能では感情状態をうまく記述できない事が分かったからだ。(公開未定)
 感性情報処理の多くは感情の表現対象を絞り込み特定の感性軸のみ処理することでこの問題を避けている様にみえる。 それでもそれがプリミティブモデルな訳でロイドコアも当初はそこからスタートしている。 人工知能技術において動的な意味は幾つかの解釈ができる。 一つは文字通り時間軸依存としての動的処理、一般的な時系列処理を採用した コネクションモデルを指す。これについては何十年も前から行われているので 説明は省く。私自身も過去に音声認識で使っていた。知識情報処理というより信号処理に近い手法と考えている。 もう一つは因果関係に重きを置いた時系列処理で短期記憶で必要になる。 大規模な並列処理において因果関係を維持する方法としてデータフロー処理がある。 しかしこの手法は待ち時間というコスト高の犠牲を払わなければならない。 ソフトウェアで実現するにはアクセスすべきデータの総量からリアルタイム処理は難しい。 ロイドコアで因果関係を保っているのは短期記憶の一部に過ぎない。コスト高を恐れて直近の因果関係しか見ていないことが理由だ。 長期記憶データには因果関係はないが推論としての因果関係を記憶させることは可能だ。(風が吹けば桶屋が儲かるの様な) この意味で現状のロイドコアはまだ静的人工知能手法の範疇でしかなかった。
 データベースを使っているプログラマ(自分も含めて)は時刻の記録で因果関係の処理は簡単にできると考えてしまう。 ところが時刻の概念はビジネスライクなスケジュールで無い限り、記憶や想起の時刻参照では人的会話が破綻することが 実際に会話ソフトを作ってみると良く分かる。順序の逆転やいい加減な時間関係で異なる意思疎通がうまく成り立っている。 論理や理屈に従って、時刻を厳密に加味して会話するなど正に機械知能と呼ぶに相応しいものになる。

【会話から感情状態の学習】(日常会話による感情状態のデータ取得は難しい)
 感情は記憶モデルの中で生じる特殊な系の状態と幾度と無く述べた。 感情状態はノードの集合体の状態であるから検出時にはとてつもなく大きいマトリクスが対象になる。 基本は活性化(大脳でいえば血流の多い場所だろうか)しているノード近辺の処理で済む筈だが 一般のクラスタの反応と異なり感性状態の出現時はいろいろな部分が連合して広範囲に活性化する。 そのために直接クラスタリングすることは学習の現実面から無意味と思われる。 階層にすることや再帰を使って次元を下げることは可能だが文面による感情空間へのマッピングと同程度の結果しか得られないと推測する。
 ノード集合体を機械学習で収束させるにはおそらく人の生涯学習と同等のデータがいるであろう。 ロイドコアのデモを公開するまでは人の様な知識や感情を得るには人と同じくらいの時間(情報量の意味で)が掛かる と考えていたが、そもそもこれが大きな間違いだったようだ。 当然、会話以外のモーダルな情報を学習していない。 大脳の会話のシミュレーションであればこの考え方は近似的に正しいかも知れない。 センサも体も無い大脳だけで人が得る情報など微々たる物で、学問と対極をなす感性の学習ならばなおさらである。 しかし人工知能は人工的に大脳の代わりができる情報処理システムの構築が目的である。 感情のような特殊な状態を機械的学習で賄えるだけのマルチモーダル的データはいずれ実現すると考えている。 無論、デモの会話中に相手を怒らせたり、悲しませたりすることが許されるなら言語化したデータでも少しは可能だろう。 最近、炎上しているブログやツイッターをよく見かける。それは凄く有用な学習データである可能性が高い。

【人工知能で機械学習は可能か】(囲碁ソフトとは異なる難解さ)
 今から20年前に連想メモリを使った囲碁ソフトを作ったことがある。(bit誌、1993年3月号に対戦結果が掲載されている) そのときの学習は機械学習で定石に準じたクラスタリングを過去の棋譜から行い、負け試合の手は破棄することで 学習中の検定を省いていた。しかし人工知能ではこの最終結果(勝敗)が存在しないので 学習データの破棄などあり得ない。その時点での想起とノードの状態で一義的に決定することになる。 論理関係が明らかな学習は良いとして感情的な状態が及ぼす影響下ではオンラインでの学習に自己矛盾するかもしれない。 エルゴディックな過程の動的学習システムは状態遷移が多様であり、時間を掛けて収束させねばならない。振動したり、収束しないオープンな状態もあり得る。 機械学習の定義にもよるが知識データは静的で感情状態に原則左右されない。(自分も含め現実の人の多くは左右される) 一方、動的状態の学習を機械学習させるなら時系列的前処理や変換操作した上で対応したモデルの導入が必要になる。 このモデルは一般の時間依存性を考慮したニューラルネットではなく環境データ(境界条件)が必要なの外界依存モデルである。
 ゲームでは感情移入できることが不可欠と考えられている。「面白さ」は破綻した論理や理不尽な情報交換のときに強く生じる。 ドラマの刃傷沙汰も多くはこの感情がもたらすものである。逆に囲碁をやると感性よりも理性が頭をもたげてくる。 囲碁は機械学習の対象として特にお勧めである。

【人工知能におけるプログラミングの役割】(プログラムによる人工知能の実現)
 多くの人工知能システムはコンピュータ言語を用いたプログラムである。 しかしロイドコアでデータの挙動を追うと工学系の制御システムにも見える。 人工知能の実現にプログラミング言語を使うのは論理的な処理、シミュレーション的処理、高速・大容量のデータ処理が基本的に数値計算(文字列操作も数値計算と同等)だからである。 その昔、半導体が無い時代に記憶データを抵抗マトリクスとして覚えさせた例がある。相関学習で相互相関係数を抵抗値に還元する仕組みだ。 もちろんシステムはアナログ回路であり、プログラムを一切使わない学習の例である。 それ以外に時間軸にデータを埋め込んだパルス密度で処理するアナログシステムなどもあった。この手法は現実の神経回路に近い。 ロイドコアでもカウント値をデータとする手法はこの流れを汲んでいる。 人工知能の実現はプログラムを組まなくても理屈の上で可能なのである。時間があれば別の機会に紹介したい。
 人工知能言語の解説ではコンピュータ言語より自然言語が向いているとも述べた。 自然言語は現在のコンピュータで直接扱えないので表層から深層へ変換処理が必要になる、述語論理だけならLISP/PROLOG系の 言語が簡単に使えるが今までの話の流れから人工知能を語るときに深層データを扱う記憶の仕組みを切り離して考えることできないし リスト構造のみで人の記憶や感性を実装するのはNP困難な問題になると考えている。
 人格は知識や判断の偏りで表せるので、感性ほど難物な相手ではない。 記憶のモデルとしては論理的な処理であれば連想メモリ、感性的処理であればコネクションモデルが向いていると考える。 その理由は感情のような状態はメモリ参照のような静的メモリ構造では表せない。 ここで言う静的メモリとは時間が経っても内容が変わったり、別のメモリに漏洩伝播したりしないことを意味する。 形式的な感性応答は記憶させられるが感性/感情空間のマッピングと同様に直ぐに適応限界に達する。 その意味で人のそれとは異なる。コネクションモデルはルールや構造によりフィードバックを掛けられる。 いろいろな状態を記述(維持)することが容易い。
 劣化するデータや揮発するデータはこの当該ノードと近傍ノードの問題に還元できる。 もちろんシミュレーションのモデルが完璧にインプリメントできれば記憶モデルのメモリに構造は要らないが 記憶モデルとして格子モデルのように3次元的な構造制約を課すと、データの移動や状態にもその制約が掛かる。 これは可視化可能なものであるから、大脳生理学から来る要請を満足させ易いし、また比較もし易い。 それ故、記憶のノードに構造的の制約を入れておくと現実からのアナロジーで間単に使えそうな手法が思いつく。 これがロイドコアの基本的考え方でプログラミング作法である。SOMなどでも同じ考え方が使える。 ただSOMは構造を2次元マップにした時点で非常に強い構造的制約が掛かっている。

【技術開発の姿勢】(実験物理では目前の現象を最重要視する)
 人工知能技術でヒト的処理を困難にしているのは状態を記述できなければならないこと。 たとえば「怒って血圧が上がる」と「いらいらして血圧が上がる」 状態は違う筈だが応答の生理的現象が同じである。 「怒るといらいらする」や「いらいらすると怒りやすくなる」などが自然に導き出せる。 それでもそれらの状態の内訳を詳らかにすることは難しいし、一部の現象しか見ていない不安もある。 ニューラルネットが理論系研究者から嫌われる原因でもあるだろう。 私は実験物理屋なので使えるものは理論なし(理論が見つかっていない)現象も効果として躊躇無く利用する。 半導体やセンサーでは多くの未解明な現象を効果と称して使うのが常である。(発見者の効果名が免罪符) 怒りなどの感情が実際どの様な状態なのかは知らない。血流はおそらくローデータのままだろう。 ロイドコアの記憶モデルに感性を記述する単語を記憶させるとその感情状態がクラスタリングされるが ロイドコアの自己増殖型コネクションはデルタルールを使うNNに比べて格段に高速で学習できる。 学習の想起もルールベースで動作する。反面、系全体の最適化は行われない。ルールに従いカテゴリ近傍演算 の組み合わせのみで済ませ、ルールは階層化することにより無駄なルート計算を省いている。 また、学習時には想起を先行させることで、無関係で無駄な探索が行われないようにしている。 それで状態そのものを学習したと言えるかどうか、これからの開発で明らかになると期待している。


 トップページに戻る
ROIDCORE  Copyright (C)2011-2015 Life Information Laboratory, Inc. All right reserved.