by 小山明雄
七海のコーディングももう少しです。あとは、パターン変換とか、信濃本体への組み込みとか、細かいコードをいくつか作っていくだけです。それと、パターンマッチングの処理が重たくて、この高速化の手法を考えることと(並行処理ですから今解決できるとは言えません)、文パターンを実際に辞書として作っていくことです。そうして、試行錯誤しながら・・・デバックしながら、能力の向上を図っていくことになります。和葉の辞書作りと、七海の辞書作りで今年後半は終わりでしょうか。
パターンといえば、いろいろ考えていかねばなりません。
(1) 主語と目的語の交換(受け身形)
【例文1】箱は人により石でたたかれた。
【例文1の対応】人は箱を石でたたいた。
標準形をどうするかとか視点変換をどうするかという問題があります。
(2) 主語と目的語の交換(動詞の双対)
【例文2】私は信子にリンゴを渡した。
【例文2の対応】信子は私からリンゴを受け取った。
【例文2の対応】信子は私からリンゴをもらった。
視点変換が必要な動詞の交換です。「受け取った」と「もらった」の意味の揺らぎは意味素性(get)なるオントロジーを設ければ対応できますが、「渡した」と「もらった」では、意味の概念の変換知識が必要になります。
知識パターン変換はPrologをベースに七海を考えていけば綺麗に解決できます。それPrologに次のような変換命令があるからです。 F(x,y,z):=G(x,y,z)
しかし、私としては、文からイメージを作っていって、そこから再解析して視点変換を行っていきたくあります。それこそが本格的意味理解になると信じるからです。
ということで、七海のコーディングを頑張ってやっています。そこで、前回の記事で、並行処理のメモリアクセスのバスがボトルネックになると議論しましたが、メモリアクセスそのものがボトルネックになるのだな、と気が付きましたので、ここに付記しておきます。メモリをアクセスするのは一度に一点だけです。だから、無数のプロセッサからメモリアクセス要求があると、衝突が頻発するようになるのですね。そこで、この解決にメモリアレイを用いるようになるわけです。そうして、メモリからのポーリングでプロセッサにアクセスを促すようにして、かつ、メモリマップをいくつかのチャンクにするわけですから、アドレス変換にメモリとのマッピング情報を持って対応を管理することにする。仮想化の逆ですね。メモリマップ解決のアドレスになるのです。
そんなことを考えますと、SymfowareのDSI/DSO技術につながるものがありますね。並行処理プロセッサとメモリアレイとデータベースのアーキテクチャを統一して考えていく時代が来たように感じます。
おわり