JP6575478B2 - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents
情報処理装置、情報処理方法及び情報処理プログラム Download PDFInfo
- Publication number
- JP6575478B2 JP6575478B2 JP2016198162A JP2016198162A JP6575478B2 JP 6575478 B2 JP6575478 B2 JP 6575478B2 JP 2016198162 A JP2016198162 A JP 2016198162A JP 2016198162 A JP2016198162 A JP 2016198162A JP 6575478 B2 JP6575478 B2 JP 6575478B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- category
- search
- relationship
- processing apparatus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
その方法は、一つには、正規表現により記述された情報から情報を抽出するときのように、情報のパターンの一致から、対象とする情報を獲得する方法である。
それ以外に、テキスト含意認識技術(RTE: Recognizing Textual Entailment)のように検索条件と完全には一致しなくても、実質的に意味が同一であったり、類似していたりする場合を考慮して、非構造化情報から情報を獲得する方法やN−gramのような文中の語句の統計的分析手法も知られている(テキスト含意認識技術は自然言語の形態素解析の一種と考えられ文法の知識が必要になるが、N−gramの場合は正規表現などの活用で実現でき文法の知識は不要だが文法的および文脈的な意味づけも確定的ではなく統計的になる)。
例えば、リレーショナルデータベース(RDB)、多次元データベース(MDDB)及びネットワークデータベース(NDB)は、固定的な関係に基づく情報構造を多次元で蓄積できる技術である。
また、プロログ(Prolog)言語は、言語として情報間の関係をケースバイケースかつ動的に知識として検索して的確な処理を実行させたり、メタ言語として動的に知識や推論を更新したりしていく機能がある(固定的なデータベースには向いていないが分析から蓄積まで実装することは可能である)。
さらに、オーダブリューエル(OWL)等のオントロジー言語は、与えられたデータを意味化・概念化してデータ交換することができる。
また、特許文献1には、文書と画像を、その単位で構造化し、辞書に依存せずに、情報の関係にも着目して生成する技術が開示されている。
特許文献2には、情報を半自動で分類し、分類ルールが生成する技術が開示されている。
Prolog言語は、言語やメタ言語として組み込みの推論規則は基本的なものであり、基本的でない推論規則は静的に追加実装したり、実装を動的に追加・更新したりしていく必要がある(推論規則を追加するだけではなく、自らを更新するようにプログラミングする必要がある)。
オントロジー言語は、明示的に意味のベースとなるクラスや関係を定義していく必要があり、実装に手間がかかるうえに、静的、確定的な推論にしか向いていない。また、World Wide Web上での利用になるため応用に一定の制約がある。
オントロジー言語以外の一般の言語処理系は、字句解析、構文解析後、意味解析を行い、ここでの意味解析はライブラリファイル(.lib 等)のオブジェクトの名前解決や型チェックすなわち数値型、文字型、ポインタ型などの型に対応する集合の形態素解析のみを目的としており、人間的な意味での意味付けは行うことができない。
特許文献2に開示された技術においては、半自動での情報の分類し及び分類ルールの生成が、論理的な特性に基づいたものではなく、分類のための属性情報を質問応答で求めていく必要があり、属性という分類の仕方も分類に対する手間を考慮する必要がある。
なお、本発明に関係して、前述及び後述の正規表現については例えば非特許文献1に、また、後述のデータ管理形式については例えば特許文献3に開示がある。
公報記載(サーチされた公報または過去に知り得た公報のうち本発明に最も近い技術を開示するもの)
(課題1)非構造化情報間の関係を事前定義する必要があり、事前定義にはさらに以下の課題(静的な用途向きで活用価値が乏しい課題)がある。
・リアルタイムに動的な活用に難しいという共通した課題
・事前定義のための人間系介在の必要性に伴う自動化のための課題
・第三者による事前定義による解釈の差異を認め情報の信頼性や一意化の妨げを引き起こすという課題
・同じ情報を別々に定義することで生産性を低下させるという課題
その理由は、背景技術の項において説明した各技術では非構造化情報に内在するキーワードや構文を識別するために各々の技術で得意とする方法でその識別の条件を設定する必要があるためである。共通化された関係を事前にかつ可能な場合は動的に定義する仕組みが必要となる。
(課題3)背景技術の項において説明した各技術(特許文献3及びすべての非特許文献を除く。)には、非構造化情報間の関係を各々固有の方式で定義する必要があって仕組みの連携・統合しにくいという共通課題。
(課題4)(課題3)の二次的影響としてデータの一元化を妨げるという課題。
その理由は、背景技術の項において説明した共通する原始的な論理構造を用いずに各技術で独自の文法を定めているためである。
本発明は、非構造化情報について、情報間の関係を新たに定義することなく、既に定義された関係のみを用いて構造化した情報を表わすことのできる、情報処理装置等の提供を目的とする。
別々の方法で利用してきた各技術との機能やデータの連携により、利用者にとっての操作性、生産性の向上を果たす。
情報の一元性、一意性を向上させ、かつ、異なる技術や用途で得られた情報を再利用性や共有性により利活用することで生産者(開発者)にとっての生産性、保守性の向上をもたらす。
本発明の目的あるいは機能そのものではないが、複数の情報間の互換性を持たせることを利用可能とする。
次の二つの方法により、人間系の介在をなくす(自動化)か、あるいは少なく(半自動化)して問い合わせや知識の獲得を行う((課題1)への対処)。
(方法1)単一の要求において、問い合わせと知識の獲得とをこなすことで、処理ステップを形式化する(後述の(付記A4)、(付記A5))。
(方法2)従来技術を問い合わせと知識の獲得の処理に参加させる(後述の(付記A14)乃至(付記A15)に対応)。
(方法3)様々な方式で授受する情報は、基本的には数学的な関係として表現可能なはずであり、数学的な関係として表現されたものを本発明の情報処理装置で扱うことにする((付記A2)に対応)。
数学的な関係として表現することで、様々な方式の形式、データ、処理などを一元化・共通化することができる((課題3)、(課題4)への対処)。
また本発明の情報処理装置で数学的な表現のばらつきを排除する((課題2)、(課題4)への対処)。
数学的な関係として表現可能でないものについては直接的には本質的に利活用する価値はないものとする。
但し、数学的な関係として表現可能でないものについても間接的には非構造化情報の一種として再分析して利活用する価値を否定しないものとする。
(方法4)各情報を(方法3)により、モノイドまたはその生成系の元として数学的な関係で定式化された統一された形式で表現する((課題3)、(課題4)への対処)。
情報がモノイドまたはその生成系の元となりうるかを探索し、該当するモノイドがあれば、適切な処理を行わせるようにする(判定だけで終わると単一の処理にできなくなるため、同期させる連携の仕組み)。
モノイドまたはその生成系の演算規則や利活用機能との相互作用を利用して複雑な判定を可能にする(判定の精度を上げる連携の仕組み)。
モノイドまたはその生成系の元と単位元との演算が、元そのものになることを探索の終了に利用する(後述の(付記A9)および(付記A10))。
情報が元として所属するモノイドまたはその生成系が見つからない場合は、新たなモノイドまたはその生成系の候補とする。
利活用機能との相互作用により、利活用機能やそのデータの共有基盤とする((課題3)、(課題4)への対処)。
本発明の情報処理装置はモノイド及びその生成系の仕組みを利用して利活用機能参加型の機能・データ共有基盤を実現する。
そこで、まず、モノイドと生成系および関連する概念について説明する。
集合 S とその上の閉じた二項関数 f : S×S→S, ∀x, ∀y ∈ S( f(x, y) ∈ S) が次の二式で表される条件を満たす時、(S, f, i) はモノイド(monoid、単位半群、単位的半群)という。
(式1a)∀x, ∀y, ∀z ∈ S( f(f(x, y), z) = f(x, f(y, z)) ∈ S) (f の結合法則)
(式1b)∃i ∈ S(f(x, i) = f(i, x) = x) (単位元 i)
本説明では関係に対するものを律と記し、演算・関数に対するものを法則と記す。
たとえば関係に対しての辺の交換は対称律と記し、演算・関数に対しての項の交換は交換法則と記す。
モノイドや群(Group)などの代数的構造の定義に使われる結合法則は、= 関係のための制約ではなく、二項関数 f のための制約であるため、結合律ではなく、結合法則と記している。
モノイド(単位元 i)に次の条件を追加すると群になる。
従い、群はモノイドである。
不向きな理由は逆元の存在が支障となるためであるが、モノイドであれば表現できる対象が大きく広がることになる。
例えば加算(+)を二項演算とすると、数学的構造(非負整数の集合, +, 0) は0を単位元とするモノイドである((a + b) + c = a + (b + c) = a + b + c, a + 0 = 0 + a = a)。
非負整数の集合を整数の集合に拡張すると、数学的構造(整数の集合, +, 0) は群になり、かつモノイドにもなる。
しかし、乗算(×)を二項演算にしても、数学的構造(整数の集合, ×, 1) は群にはならず、モノイドになる(0以外の有理数の集合に拡張すれば群になる)。
(文字列の集合, ・, “”) は前記整数の集合と異なり、逆元が定義できないため、群に拡張はできないが、モノイドとして扱うことができる。
このようにデジタルデータの中には逆元の定義・実装が難しいものもあるがモノイドでは表現できる場合があることがわかる。
つまり、生成系は代数的構造の部分集合と代数的構造の演算子だけを使って代数的構造の全体集合を作成できる。
モノイドや群ではその部分集合から生成系を作成する方法が多数知られている。
二つのモノイドや群等の数学的構造 (X, p, i), (Y, q, j) があって、写像 M が次の二つの式を満たす場合、写像 M は準同型写像であるといい、数学的構造 (X, p, i), (Y, q, j) は準同型であるという。
(式3b)∀a, ∀b ∈ X(M(p(a, b)) = q(M(a), M(b)))
集合を余すことなく共有部分のない部分集合に分割することを分割(Partition)、あるいは類別(Classification)といい、類別された各部分集合を類(Class)という。
全体集合 S の類別による各類を Ci で表すと次の二つの式を満たす。
(式4b)Ci ∩ Cj = { } (i ≠ j)
例えば除法で同じ余りをとるもので整数を同値類別できる(除法による同値類を剰余類ともいう)。
同値類の元の一つを代表元(Representative)という。
同値類の任意の元は互いに同値関係にあり、すべての元は代表元として利用でき、次の式が成立する(a を代表元とする同値類は C(a) あるいは [a] と表記する)。
前記モノイド、生成系、準同型、同値類を利用する目的を以下とする。
モノイドと生成系は情報カテゴリー(後述する)の外形となるデータ構造として利用する。
情報カテゴリーは情報の体系をデータ構造として表現したもので情報カテゴリーに含まれる元(すなわちモノイドや生成系の元)は二つの情報間の関係を式で表したもの、またその元との照合を確認する妥当性確認(後述する)とから構成されるデータ構造である。
情報カテゴリーの元は、式と妥当性確認を含み、式は二の情報間とその間の関係を含み、妥当性確認は式が成立することを確認する処理である。
情報カテゴリーの元の式はその情報カテゴリーとの関係を表現した式を含み、情報カテゴリーで表現する情報の体系に含まれる元やその範囲を指定したり、自身と他の情報の体系間の関係を指定したりしたものを含む。
生成系と同値類はモノイドに登録する元を削減する方法として利用する(すべての元を一つ一つ登録しても構わないがこの方法で削減できる)。
生成系としては元を追加していくことでモノイドをより広範なものに成長させていくことで任意の時点では最小のモノイドを構成するように元を削減する。
同値類の場合は、生成系とは別の方法で、元の照合範囲を可変にしてその代表元がモノイドに含まれれば、その同値類の元も含まれるという事実を用いて追加する元を削減する。
準同型は入力された情報体系を情報カテゴリーと対応付ける基本概念として位置付ける(定性的な対応が付けば準同型である必要はないし、厳密には単位元を違える必要がある)。
情報の体系の表現として、モノイドの代わりに完全加法族を利用することも考えられる。
完全加法族は、群になり、部分集合から生成系も構築できるのでモノイド同様に利便性はあるが元を個別にすべて登録していく必要があり、また生成系も元を組み合わせていくので元となる集合の数が指数関数的に膨大でかつ構造も多階層集合になり、生成系も意味合いの異なる視点で利用する必要があり、データ量としても探索時間としても効率的ではなくこの説明での用途の範疇とも異なるので説明の対象から外した(完全加法族の組み込みを否定しているわけではないので有用かつ現実的であれば機能として追加してもよい)。
情報カテゴリーはモノイドやその生成系となるデータ構造(クラス等)とする。
モノイドやその生成系とするため集合を情報カテゴリー、演算を探索とし、単位元(元の定義、単位元の定義と仕組みの詳細は後述する)を情報カテゴリー固有の二の情報と証明可能(├)関係で構成されたものとする。
情報カテゴリーは情報の体系の単位であるため、情報の体系毎に一つずつ実装する。
探索(後述する)はライブラリ(後述する)に含まれる全情報カテゴリーで共通する演算を表す処理ルーチンであり、利活用機能(後述する)から要求することのできる公開ルーチンと公開ルーチンから呼び出される非公開ルーチンとから構成される。
公開された探索ルーチン(情報カテゴリー間探索)では、全情報カテゴリーに対して非公開の探索ルーチン(情報カテゴリー内探索)を要求し、非公開の探索ルーチンでは各情報カテゴリーに含まれる元を探索して照合(探索の公開ルーチン、非公開ルーチンは実体化された情報カテゴリー非依存なので各々情報カテゴリークラスの静的メソッドまたは情報カテゴリークラスから独立したメソッドとして実装するとよい)し、密関係と判定される元が見つかるか、未照合の元が枯渇するまで照合を続ける。
非公開の探索ルーチンにおける照合は評価対象情報(後述する)と元に含まれる式との間で情報評価(後述する)、および元毎の妥当性確認を行い、各情報カテゴリーと密関係(後述する)か疎関係(後述する)かを返す(密関係・疎関係のデータ構造は制約しないので複雑なデータ構造でも構わないし真理値でも構わない)。
包含関係(⊂)は集合間の関係を示すものであるため通常の探索(再帰を含む)においては情報カテゴリー間探索に対応させる。
なお、同値類を別の情報カテゴリーとせずに同一情報カテゴリー内に集約する場合は、⊂ は情報カテゴリー内探索が必要となるため、前記の限りではない。
所属関係(∈)は元と集合の間の関係を示すものであるため探索(再帰を含む)においては情報カテゴリー内探索に対応させる。
その他の関係も基本的には、包含関係・所属関係と同様に情報カテゴリー内探索、情報カテゴリー間探索に対応づけ(関係を定義するデータ構造にいずれの探索をするかフラグを設けるとよい)、関係の固有機能は妥当性確認の中で行う。
包含関係(⊂)、あるいは推移律の成り立つ関係は再帰的な探索において推移律が適用されるものとする(関係を定義するデータ構造に関係の持つ推移律などの規則の成否を定義するフラグを設けるとよい)。
妥当性確認は、評価対象情報が元に含まれる式として妥当であるか否かを真理値で返す処理であり、その過程で利活用機能のコールバックを可能とする。
非公開の探索ルーチンは単位元との照合で、再帰的な探索を行わず(つまり単位元は探索の終端記号)に、情報評価、妥当性確認で密関係・疎関係を確定する。
情報カテゴリーに含まれる一つ以上の元で密関係である場合、探索は関係が成立しているかその可能性があるとして、その情報カテゴリーと入力対象情報とが密関係にあると判定する。
情報カテゴリーに含まれるすべての元で疎関係である場合、探索は関係が成立していないとして、その情報カテゴリーと入力対象情報とが疎関係にあると判定する。
元に対する非公開の探索ルーチンの密関係・疎関係が確定しない場合、再帰的な探索が行われ、その結果を当該の探索結果として継承する(再帰的な探索については評価対象情報で説明する)。
探索に際して入力情報毎の探索応答は密関係と判定された探索に同期して利活用機能をコールバックすることができる(例えば探索結果のログ出力ができる)。
探索で全情報カテゴリーと疎関係にあると判定された場合、評価対象情報は新たな情報カテゴリーの候補リスト(後述する)に登録する。
情報カテゴリーの元は、式と妥当性確認とからなるデータ構造とする。
入力情報(後述する)は利活用情報から探索を要求された際に渡される式の形式の構造化情報である。
評価対象情報(後述する)は式のデータ構造である。
評価対象情報は、初期状態では入力情報の式であり、探索から再帰的に探索された場合はその再帰探索を要求した元に含まれる式に探索時に発生した代入の行われたものに更新される(再帰は結合法則を実現している)。
式は、関係と二の情報(後述する)とからなるデータ構造(クラス, 構造体等)とする。
式は、表現方法により解釈が分かれる場合があるため、冠頭標準形、スコーレム標準形で表せるようにするとよい(本説明も冠頭標準形を使用している)。
関係は、情報カテゴリーとは独立したデータ構造とし、情報カテゴリーから参照でき、式の照合の際に照合され、少なくとも三つの関係、証明可能(├)、包含関係(⊂)、所属関係(∈)の実装を既定で含み、追加も可能なものとする。
二の情報のデータ構造は限定しないが、認知可能な情報の単位であり、式の照合可能なデータ構造とする(二の情報の各情報は、少なくとも情報文字列を持ち、それ以外の情報を持たせても構わないものとする)。
各情報カテゴリーの単位元の実装は、次式で表される式を含む元とする。
派生形として論理演算を交えた { A } ├ A ∨ B, { A ∧ B } ├ A という式もあるが、これらも証明における減規則によって、{ A } ├ A に導かれる。
つまり、前記の式は特殊ではない一般的な論証において成立を意味する最終形態となっている(この式は厳密には LK と呼ばれる数学における古典論理の公理であり古典論理の範囲であればこの式に帰着することになる)。
次のPrologの導出原理と役割が似ているが、根本的に式が異なる。
(式9){ ¬¬A } ├ A (二重否定)
(式10){ A ⇒ B } ├ ¬B ⇒ ¬A (対偶)
(式11){ A ∧ ¬A } ├ φ (無矛盾)
(元2 ∈ 情報カテゴリー)
(元, 単位元 ∈ 情報カテゴリー)
密関係にあるのであれば、元を検索して再び照合するということを再帰的に繰り返して単位元の式との照合が成立した時点で肯定的に探索を終了する。
一方、疎関係にある場合は、初期の探索、あるいは再帰的な探索のくりかえしのいずれかの段階で、元3の式が得られずに棄却され、否定的に探索を終了する。
つまり、密関係または疎関係のいずれかであるか確定するまで再帰的に検索と照合とを繰り返していくことが探索である。
次のように再帰的な探索は、結合法則の表現とみなすことができる。
なお、探索中の元と疎関係にある場合、探索は結果を返すことができない。
そこで上記の式はプログラミング上の処理(メソッドや関数)としては次のように変形する必要がある。
この処理で密関係となる場合、式3には式1と式2を照合した代入済みの値が返される。
各式を本発明の情報処理装置の構成要素を明示すると次のとおりである。
(式17)次の評価対象情報 = 情報カテゴリーの元の式 ・ 代入
実装上の代入は、たとえば、変数への代入、あるいは定数との正規表現やワイルドカードでのマッチングを意図したものであり本発明固有の機能ではない。
空の代入(つまり代入されない状況)がありうる場合、空の代入を単位元とするモノイドになるが、空の代入があるとは限らず、ありえてもモノイドは一時的な存在となるため、本発明の情報処理装置をメタに実装する必要はない。
評価対象情報は、再帰的な探索の過程で更新されて利用されるため、必須ではないがスタック構造をしていることが望ましい。
単位元は、共通する探索操作のために表現している情報の体系に依存することなく、かつ、各情報カテゴリーに固有とするため ├(情報カテゴリー名, 情報カテゴリー名) を式として含むものとする(二の情報には情報文字列として各々情報カテゴリー名を登録し、情報文字列以外にそれ以外の情報を含めても構わない)。
情報の体系の単位元を持つ演算を実装しているわけではないので問題はないし必要であれば、両単位元を関連付けるように登録すればよいことになる。
情報カテゴリーを同値類の連結として実装する場合は、同値類への所属関係を表す元(∈(X, 同値類))と、同値類の代表元の情報カテゴリーへの所属関係を表す元(∈(同値類の代表元, 情報カテゴリー))を情報カテゴリーに登録することで実現できる(まず、元 ∈(X, 同値類) の探索を行い、つづいて ∈(同値類の代表元, 情報カテゴリー名) を再帰的に探索する)。
モノイドの部分集合による生成系について説明する(合わせて部分モノイドが元のモノイドと同じ性質を持つことを示す)。
当初のモノイドの元を部分モノイドに追加すると再び、部分モノイドになる。
最大の部分モノイドが当初のモノイドということになる。
一方、部分モノイドにならない単位元を含む部分集合(演算・関数に関して閉じていないのでもともと開いているため、結合法則が成り立つようにすればその値域は部分モノイドになる)を適切にとると、部分モノイドの生成系となっている。
モノイドの部分集合が部分モノイドにならない(モノイドの単位元を含まないまたは演算結果が部分モノイドに閉じない)場合、そのモノイドの生成系になっている。
モノイドの部分集合による生成系にそのモノイドの元を追加しても演算結果はモノイドの範囲には閉じるため、再び生成系か部分モノイドになる。
従い、部分モノイドやモノイド部分集合の生成系に元を追加することで元のモノイドに近づくことになる。
以下にその幾つかを紹介する(後述する実施形態の例で前提とする)。
・商集合(同値類)による生成系
・巡回群による生成系
・線形空間の基底による生成系
商集合は同値類を要素とする群であり、群はモノイドである。
同値類は変換 T に対して不変量 T(x) = T(y) となる x, y の集合でその一つの値を代表元(x とする)として [x] のようにあらわす。
同値類の元の間では同値関係が定義できる(逆に同値関係に対して変換を定義してもよい)。
変換 T で不変量となる x, y の関係を 〜 で表すと、「x 〜 y」 ≡ 「T(x) = T(y)」ということになる。
この変換 T が存在するとき、関係 〜 は以下の同値律(反射率、対称律、推移律を同時に満たす)を満たし、同値関係であるという。
(式18a)x 〜 x (反射律)
(式18b)x 〜 y ⇒ y 〜 x (対称律)
(式18c)x 〜 y ∧ y 〜 z ⇒ x 〜 z (推移律)
各同値類が無限個の元、あるいは多くの元を含む場合に情報カテゴリーには代表元で同値類別できるように元を実装し、必要であれば代表元を返す(例えば妥当性確認処理に実装する)。
〜 が同値関係である(反射律、対称律、推移律を満たす関係を同値関係と判断できるという意味)場合、情報カテゴリーとしては代表元毎に作成せずに、商集合として作成するようにする。
これにより、同値類毎の情報カテゴリーを作成する事態を避ける(代表元は同値類を識別するための元として情報カテゴリーに実装し、必要であれば探索時に代表元を返せるようにする)。
商集合は同値関係に対する同値類の集合である。
集合 S = { s1, s2, ...} に対して、同値関係 〜 が定義されると S/〜 = { [s1], [s2], ...} (s1, s2 が同値関係になく異なる同値類を構成した場合)となる。
各同値類の代表元は生成系の生成元の一つとなる。
例えば mod M による M を法とする商集合は、同値類間の演算を [x] + [y] = [x + y] と定義すると * に関して [0] を単位元とする同値類の群となる。
(式19b)[x] + [y] = [x + y]
(式19c)[x] + [0] = [x + 0] = [x] (単位元)
(式19d)[0] + [x] = [0 + x] = [x] (単位元)
(式19e)[x] + [y] = [x + y] = [0] = [y + x] = [y] + [x] (逆元)
mod M の商集合の場合、[0], ..., [M-1] という同値類の商集合を作ることができる。
[0], ..., [M-1] がそろって初めて mod M であることがわかる。
このように代表元だけでは同値類を判定することは難しいがその属性で類別すればよい。
mod M の場合は「余り」という属性を要素に持たせ、類別に使用することができる。
巡回群は、群であり、群はモノイドである。
また、巡回群は群の生成系にもなる。
巡回群(G, *)の生成元を g、整数を l, m, n とすると巡回群は gn(g の積 * による n 乗積)の集合であり、次の性質により g0 = 1 を単位元とする群となる。
(式20b)g((l + m) + n) = g(l + m + n) = g(l + (m + n))
(結合法則)
(式20c)gm * g0 = g0 * gm = gm
(単位元)
(式20d)gm * g(−m) = g(−m) * gm = g0
(逆元)
実装できない場合は有限巡回群に限定して生成元から生成されるすべての値を元として情報カテゴリーに登録する。
巡回群の場合、無限個の元、あるいは多くの元を含む場合に、その一つ一つを情報カテゴリーの元として登録するのは現実的ではない。
そこで、生成元をそのまま情報カテゴリーの元として利用し、各問合わせに対して必要であれば、その次数(l, m, n)を取得できるようにする。
巡回群には回転群(操作回数により元の位置に戻る回転操作の集合)や方程式の解の集合等の例がある。
ただし、情報カテゴリーそのものを群(特に巡回群)として機能させないようにする必要がある。
一つは、情報カテゴリーのモノイドと、そこで表現されるものの代数的構造とは本質的には別物であるため、完全な準同型ではなく、少なくとも単位元は表現されるものの単位元とは別にする必要がある、という点である。
今一つは、逆元あるいは複数の元の演算で、単位元を得ると、その次の結合演算から、同じ元を得るため、探索はループしてしまうことになるためである。
線形空間は体上の線形環であり、環は(体も)群であり、群はモノイドである。
線形空間の基底は線形結合を演算子とし、基底の各元を生成元の一つとする生成系になる。
本発明の情報処理装置そのものがモノイド実装する機械であるため、実在の物事がモノイドである場合、情報カテゴリーでの表現は準同型で実現することができる。
また、本発明の情報処理装置そのものがモノイド実装する機械であるため、実在の物事を適切に表現すれば実在の物事がモノイドである必要はない。
数学、物理学ではいろいろな群が知られており、情報工学でもいろいろなモノイドが知られているが、群はモノイドであるため、様々な物事をモノイドに対する準同型として実装することを期待できる。
準同型写像を T とし、実在の物事のモノイドと情報カテゴリーのモノイドの二項関数を各々 f, g とすると、次の式で表されることになる。
(式21b)T(元1・元2) = T(元1)*T(元2)
(f, g が二項演算 ・, * の場合)
(注意事項1)情報カテゴリーのモノイドの単位元は特定の構造のものと規定しているため、実在の物事のモノイドを準同型写像で変換したものと違える必要があるので、厳密な準同型にはならない(探索を矛盾させないため、実在の物事のモノイドの単位元用の情報カテゴリーの元を情報カテゴリーの単位元に関連付けるようにする必要がある)。
(注意事項2)無限の元を含む情報の体系はそのまま実装できない(生成系や正規表現などを使って有限個の元で実装する)。
(注意事項3)モノイドとして表現できないものをモノイド化することを保証しているわけではない。
以上でモノイドとして表現される情報をそのままこの情報カテゴリーとして実装する(準同型的)こともできること、情報カテゴリーがモノイドとして機能するためモノイドでは表現できない情報をモノイド的に扱うこともできること、を示すことができた。
まず、本発明の情報処理装置の情報の扱いについて説明する。
本発明の情報処理装置は情報の体系を各々分離しており、含まれる情報は、利活用機能によって非構造化情報から構造化情報に変換されたものを数学的な関係と、二の情報によってあらわされる関係式としてデータ構造化する。
このように非構造化情報から利活用機能によって構造化された情報を数学的な関係式をデータ構造で表すことで情報を一意・一元的・動的に共有する基盤としての効果をもたらす。
本発明の情報処理装置は、単独で推論したり、統計情報を分析したりすることを目的とはしない。
その代わり、他の方法で予め得られた推論や統計分析などの成果を元として登録したり、他の方法を妥当性確認に参加させることで推論や統計分析を利用したりすることができる。
結果として、本発明の情報処理装置では探索の判定精度を挙げる効果があり、利活用機能では処理の軽減(開発負担低減という生産上の効率化や都度繰り返される推論・統計分析の抑制)と多様な利活用機能との機能連携による一元化・一意化されたデータの共有という効果を得ることができる。
同様にクラスター分析の結果から、本発明の情報処理装置で扱う情報として表現することで、推論すべき仮説(命題・述語)を創出することにも利用ができる。
このように直接的に分析することを目的とはせず、利活用機能から相互に連携する共有基盤として役割を果たす。
包含関係(⊂)に関する推移律を導入することで、情報カテゴリーへの再帰的な探索と、探索の結合法則をもたらす効果を実現している(情報カテゴリー内探索)。
包含関係(⊂)は情報カテゴリーを細かく定義した場合に、情報カテゴリー間での包含関係を担う場合もある(情報カテゴリー間探索)。
また、証明可能(├)を用いた特定の元を単位元として機能させることで、探索を有限ステップで終了させ、かつ、任意の情報カテゴリーを表現する情報の体系に非依存なモノイドとして構成する効果をもたらしている。
前記説明により、情報カテゴリーはモノイドとして機能することが保証される。
情報カテゴリーは情報の体系のすべての元を含まなくてもその生成系として機能している。
さらに、生成系の元を少ない個数に抑えるため、同値類とその代表元の関係を式として実装できるように同値類の機能拡張を提案している(あるいは正規表現やワイルドカードなどの既存の技術的な仕組みも活用して元の個数を抑制することも可能である)。
結果として、有限個の元でありながら、モノイドの特徴を保持し、かつ不定個、または無限個の元を扱うことを可能にする効果がある。
その理由は、数学的(客観的)な関係式のデータ表現による一元化・一意化、および利活用機能の探索への参加による。
第2の効果は、再帰的な探索において、一意の結果を得られることである。
その理由は、情報カテゴリーが探索を演算とするモノイドとして構成しており、再帰的に行われる探索を結合法則とみなすことができるためである。
結果として再帰的な探索で発生する探索パス上のパス順で交換法則は成立していないのでパスを変えることはできないが、パス上のどこから始めても棄却されるべきパスはいずれかの段階のパスの探索時に棄却される。
その理由は、一度証明・分析済みのものを都度、やり直すことなく、本発明の情報処理装置に要求することで、利活用機能での分析と本発明の情報処理装置での照合という役割分担ができ、また、本発明の情報処理装置の工夫により、照合を簡略化する仕組みを提供しているので、全体的な処理軽減を図ることができる。
第4の効果は、探索に使用した情報間の関係の有無や探索のために保管した情報が利活用機能に提供されるという点である。
その理由は、探索結果に加えて、探索で発生した情報の木、情報の森というデータ構造を利用できるためである。
情報の木は密関係にある情報の集合であり、情報の森は疎関係にある情報の木の集合であるため、利活用機能ではたとえば AND, OR に各々置き換えて扱うことができる。
最初に、発明を実施するための形態において用いる主要な用語について説明する。
なお、本発明固有の用語については「」でくくる。
情報は、一般的意味における情報である。
従い、情報は、必ずしもテキストや記号で表される情報である必要はなく、図形の構成要素、ベクトル、概念等であっても構わない。
ただし、本発明の理解の容易性を考慮して、以下においては、主として、テキスト(文字、数字、記号の列)で表わされる情報を例に説明する。
情報は本発明の情報処理装置で扱う部位・役割上の識別により、「入力情報」、「出力情報」、「カテゴリー元」の式に含まれる情報(「入力情報」、「カテゴリー元」については本発明の情報処理装置の構成要素であるため後述する。)に分類する。
説明上、分類を指定せずに「情報」と表現した場合は、これらの分類に関係のない共通事項とする。
情報の集まりは、固有の用語ではなく、一般的な意味での情報の集合である。
本発明の情報処理装置の構成要素やその形式などではなく、本発明で扱う情報の定義域である。
式は、本発明で扱う構造化情報のデータ構造であり、入力され、「探索」(後述する)時に照合される単位(評価対象情報)であり、「情報カテゴリー」(後述する。)の元に含まれるデータのデータ構造でもある。
式は数学の等号、不等号等の関係で表される関係式と同一の意図であるため、本発明固有の用語ではない。
式はデータ構造として二の情報、関係(二の情報、情報文字列、関係については後述する)で次のように構成されるものである(この式は関係の前置記法で表現しており、引数の出現順は変更できないので注意)。
式は「評価対象情報」や「情報カテゴリー」の各元に一つ含まれる。
式は「情報カテゴリー」をモノイドもしくはその生成系とするため次の規則を満たす必要がある。
(規則1) 本方法で用いる関係には、少なくとも証明可能(├)、包含関係(⊂)、所属関係(∈)を含む(組み込む)こと。
(規則2) 本方法で用いる関係を追加する場合は、数学的に表現でき、既存の関係(組み込みと過去に追加した関係とを含む)と矛盾しないこと。
(規則3)(モノイドの結合法則) 単一の情報カテゴリー内に含まれる任意の三つの元の式をP、Q、Rとするときに、探索を・として、(P・Q)・RとP・(Q・R)が常に一致すること。
数学の等号、不等号、包含等の関係と同一の意図であるため、本発明固有の用語ではない。
関係は本発明の情報処理装置でのデータ構造として関係を一意に識別する記号、関係の満たす規則に関する情報から構成される。
さらに「情報カテゴリー」とは独立したデータとして関係はリスト、配列、連想記憶などに収録する。
本発明の情報処理装置において関係は式の構成要素として引用される。
本発明の情報処理装置にあらかじめ利用可能な三つの二項関係 ├(証明可能), ∈(所属関係), ⊂(包含関係)を定めておく。
その他の関係については、利用者定義とする。
この表で式の両辺を記述する対象領域をDとする。
数学上の代表的な関係の組み合わせ定義の表を図3(b)に示す。
図3(b)の表で ∈ 等は様相・多値・ファジィ等の非古典論理を考慮に入れる場合、非対称律や排中律の結果が一概に定義できない。
次に前記規則を満たす関係を使い、「情報カテゴリー」を構成する。
「情報カテゴリー」は次の規則・基本構造の元で構成される(「妥当性確認処理」は必要に応じて実装)。
(規則4) 情報カテゴリーは一つ以上の元を含むこと。
(規則5) 元は一つの式を含み、式は図4に例示したように、第一情報文字列列と第二情報文字列列と、関係列とを備えること。
元は、式の構成要素以外の列、例えば図4に例示したように妥当性確認列等を備えても構わない。
(モノイドの単位元)規則4に定めた含まれる一つの元は単位元とする(単位元は情報カテゴリー毎に一つとする)。
単位元は二の情報の各情報文字列に情報カテゴリー名を値とし、関係を証明可能(├)とする式で構成される。
(規則6) 情報カテゴリーの元の式の第一情報文字列列、第二情報文字列列及び関係列には各々対応する値で、同一情報カテゴリー内の他の元の式と識別できること。
図4のデータ構造を構成する列は、識別できれば、その並び順は任意である。
(規則7) 式の関係列に登録できる関係については、図3について説明したものあるいは関係に関する規則群に基づいて追加されたものであること。
(規則8) 式の二の情報の各情報文字列列に登録できるデータ構造は文字列を照合用インテックスとすること(値そのものを文字列にするかクラスや構造体で文字列により複雑なオブジェクトを追加してもよい)。
すなわち、外部から渡された情報を他の手法で二の情報と関係とに解析した形態(後述する「カテゴリー元」と同じ構造)を式(後述する)として表現した構造化情報である。
ある情報の集まりから、以下において説明する、本発明の情報処理装置に用いる入力情報を抽出し解析する方法については、任意とする。
例えば、情報の集まりが、テキスト情報からなる文章である場合には、広く知られた技術である形態素解析の手法によりテキストを単語に分解し、その単語を情報にすることができる。
「情報カテゴリー」は元(後述する。)の集合のデータ構造であり、一つの「情報カテゴリー」で元の実装は「探索」(後述する。)に対してモノイドまたはその部分集合の生成系を構成する。
「カテゴリー元」は、「情報カテゴリー」を集合とみなした時の元である。
特段の指定がない場合は元という記述で「情報カテゴリー」(後述する)に含まれる元を指す。
集合の元と同一の意図であるため、本発明固有の用語ではない。
集合の元の実装であるが一般的な集合論での集合の元と区別する必要がある場合に「カテゴリー元」と記述する。
「情報カテゴリー」の元はデータ構造として式と、「妥当性確認処理」(後述する。)と、を含む。
すべての「情報カテゴリー」では前記二の情報のうちの一の情報と他の情報とが同一であり、かつ反射律である証明可能関係となる式を含む元を含む。
各「情報カテゴリー」の元は情報文字列で表現すると次で構成される式を含む元である(つまり ├(情報カテゴリー名, 情報カテゴリー名))。
関係 ::= 証明可能├
なお、前置記法の├(A, B)は間置記法の { A } ├ B を意味する。
すなわち、├(情報カテゴリー名, 情報カテゴリー名) (前置記法)は、{ 情報カテゴリー名 } ├ 情報カテゴリー名 (間置記法)を意味する。
本発明の情報処理装置ではこの特別な元を以下の式を満たして各「情報カテゴリー」の「探索」処理に対する単位元として扱う。
「カテゴリー元」は元としての実体を表す「式」と、「式」だけでは照合結果を適切に確定しにくい場合のための補足条件を判定する「妥当性確認」とから構成させる。
そのため元と式を区別しており、(式23)では「探索」の演算の変域・値域を「式」として「単位元の式」と表現している。
従い、(式23)は「探索」という演算に対して単位元の役割を果たしている(情報カテゴリーの単位元と表現する理由である)。
「情報カテゴリー」のデータ構造は共通であるため、「情報カテゴリー」が複数登録されていても、「探索」は一元化できる。
一方、「情報カテゴリー」の単位元はデータ構造が共通で登録内容は「情報カテゴリー」毎に固有のものとなる。
なお、実際の「探索」時には、式Y左辺第一項の式は(代入済みの)元に含まれる式または「評価対象情報」(後述する。)であり、元も同様にこの式に束縛される必要があることをこの(式23)で表現している。
また、関係や「探索」などの演算では第一項、第二項は交換可能であり、説明の都合で第一項、第二項に役割を設けているが、例えば右単位元のような数学的な意味合いはなく、実装時に自由に決めてよい。
単位元も数学の単位元と同一の意図であるため、本発明固有の用語ではない。
情報の集まりは、文章、プログラムのソースファイル、統計データ、画像等のバイナリーデータ、その他、いろいろありうるので「二の情報」にはこれらが含まれる。
従って、「二の情報」に含まれる情報は各々文字列とは限らないが、説明を容易にしかつ一般的な情報との識別するため、以下では「情報文字列」を各情報の識別子として説明する。
「二の情報」を「情報文字列」で説明する理由は各項に同時に文字列以外を採用することで照合が言語処理系依存になることをこの説明から排除する意図もある。
また、「二の情報」は文字列ではない場合、互いに一致する必要もないが関係を使った式で表現するため一致・不一致を識別できる必要がある。
各項を「情報文字列」として識別する場合は、「第一情報文字列」、「第二情報文字列」と順序付けて記述する。
各「情報文字列」には正規表現やワイルドカードなどによる可変な書式を含めてもよい。
各「情報文字列」は「探索」時には可変部分は「情報評価」や「妥当性確認」で仮代入し、さらに「探索」を続ける。
そして、「情報の木」には、その集まりを構成する一の情報が、その集まりを構成する他の一の情報と関係があると判定された場合に、その2つの情報について「密関係」(後述する)があることについての情報が記述されている。
さらに、「情報の木」においては、その情報の集まりを構成する任意の一の情報が、その集まりを構成する任意の他の情報と関係又は関係を組み合わせた関係がある。
例えば、図1(a)に例を表わしたように、その情報の集まりを構成する一の情報と、その情報の集まりを構成する他の一の情報との間で、関係があると判定された場合に、それら2つの情報を位置的に隣接させることにより表現してもよい。
また、図1(b)に他の例を表わしたように、その情報の集まりを構成する各情報について、その情報と関係がある情報について、その情報の関連情報として表現してもよい。
また、図1(c)に他の例を表わしたように、関係のある情報同士を”・”の記号で結び付けて表現してもよい。
「情報の森」は、「情報の木」の集まりまたは「情報の木」を配置するためのデータ構造であって、相異なる「情報の木」を構成する任意の情報間に関係があると判定されなかった「疎関係」(後述する)にあるものである。
「情報評価」は、「探索」(後述する)の過程で、ある情報についての、情報カテゴリーの元の式と関係があるかを照合により判定する、その情報についての評価である。
「探索」は、「評価対象情報」と「情報カテゴリー」との関係有無の成否を確定するために「情報カテゴリー」の元を探す機能である。
「探索」は情報カテゴリーの元に関する代数的な演算を表す操作であり、演算記号・で表すと次の式を満たすように実装する。
(式24b) 「評価対象情報」・「情報」情報カテゴリーの「単位元」 = 「評価対象情報」 (モノイドの単位元)
情報と「探索」されている元との間で「密関係」・「疎関係」という戻り値が確定できない場合は、その元の式や代入の情報をもとに再帰的に「探索」(後述する)が行われ、その戻り値を再帰する前の元の戻り値として利用する。
逆元や巡回元により探索の無限ループが発生するが、これらを回避する仕組みを持つことを前提にすれば再帰的な探索は有限ステップで完了する。
「密関係」は「評価対象情報」と元に含まれる式との間で探索が成功する状態にある関係である(「評価対象情報」、「探索」については後述する)。
「評価対象情報」が元に含まれる式として式に含まれる関係がある可能性が高いという意味合いで「密関係」と表現する。
本発明の情報処理装置は、論証等を行うものではないため、関係が成立しているとは限らないので現実の成立と区別するためこの用語を用いる。
同様に、「密関係」にある「評価対象情報」の式に含まれる情報と元の式に含まれる情報は成立するとは限らないので「結びつけた情報」と表現する。
「結びつけた情報」は「探索」に成功した場合の「探索」順の「評価対象情報」や元をノードとしてつなげた木構造の隣り合うノードに含まれる情報で表現する。
「探索」に際して「密関係」にないと判定された評価対象情報と元との間の関係を「疎関係」とする。
「探索」は「情報カテゴリー」間をクエリして一覧し(以下、「情報カテゴリー間探索」と表記する)、次に各「情報カテゴリー」内の元と「評価対象情報」との「情報評価」および「妥当性確認」を行いその「密関係」・「疎関係」を確定する(以下、「情報カテゴリー内探索」と表記する)。
初期状態で「入力情報」を「評価対象情報」として「評価対象情報」と「カテゴリー元」との「情報評価」を行う二項演算(「情報評価」)とその演算の対象となる「カテゴリー元」を検索する操作である。
「情報カテゴリー」に含まれる「カテゴリー元」を「情報評価」および「妥当性確認」し、双方で真となる「カテゴリー元」を検出するか元が枯渇するまでこの操作を続ける。
「情報カテゴリー」に含まれる一つ以上の「カテゴリー元」で「情報評価」および「妥当性確認」の双方で真と判定した場合、「情報カテゴリー」との「探索」は「密関係」であると判断する(すなわちその「情報カテゴリー」と関係なしと判定する)。
「密関係」・「疎関係」の確定しない元を検知した場合はその「カテゴリー元」に含まれる式に代入が反映されたものを新たな「評価対象情報」として再帰的に「探索」を行い、その再帰的な「探索」の結果をこの「探索」の結果とする。
再帰的な「探索」も「情報カテゴリー」間、「情報カテゴリー」内で「探索」結果が確定するまで行う。
但し、単位元との「情報評価」および「妥当性確認」の成否では再帰せずに「探索」の「情報評価」の成否も決定する。
本説明では理解の容易性のため、「探索」時の左側の引数を「評価対象情報」とし、右側の引数を演算対象の「カテゴリー元」とする(引数の左右は数学上の概念的な位置を述べていて実装上の位置を限定するものではない)。
「評価対象情報」は、「探索」の入力引数とするデータであり、「探索」の初期状態では、「入力情報」であり、再帰的に探索される場合は、「カテゴリー元」に変わるので、スタック構造の「評価対象スタック」(後述する)を実装して先頭情報を「評価対象情報」とするとよい。
「評価対象スタック」は、「探索」毎に変化する「評価対象情報」のスタック構造であり、実装上の都合で用意したものであって、処理系や実装の仕方によっては必須の構成要素ではない。
各「カテゴリー元」と「情報評価」し、偽と判定された場合は他のカテゴリー元との「情報評価」を行う。
すなわち、「探索」は次の「定められた要件」に従って動作する。
(要件/探索2)情報評価、妥当性確認で密関係・疎関係を確定する。
(要件/探索3)情報評価、妥当性確認で密関係・疎関係の確定しなかった元は含まれる式を新たに評価対象情報として設定して再帰的に別の探索を行う。
(要件/探索4)別の再帰的探索の結果はもともとの探索の結果として継承する。
(要件/探索5)単位元を探索した場合は強制的に密関係・疎関係を確定する。
(要件/探索6)情報カテゴリーのある元と疎関係と判定された場合、その情報カテゴリーの他の元を探索する。
(要件/探索7)情報カテゴリーのすべての元と疎関係と判定された場合、その情報カテゴリーの探索を疎関係と確定して終了する。
(要件/探索8)情報カテゴリーのある元と密関係と判定された場合、その情報カテゴリーの探索を密関係と確定して終了する。
(要件/探索9)探索対象の情報カテゴリーは固定しない(実装上のフィルタリングがなければすべての情報カテゴリーを探索する)。
「情報評価」での真偽の判定には単純な文字列の一致判定や正規表現・ワイルトーカードのほか、「評価対象情報」に含まれる文字列以外の型チェックなどを利用してもよい。
「情報評価」ではその処理の中で必要に応じて代入処理が行われる(処理の中での代入であり、「情報カテゴリー」内の「カテゴリー元」に代入結果を反映することはない)。
正規表現・ワイルドカードにマッチする情報の代入や単純に式の一部の項を空にして照合対象の項を代入してもよい。
代入は、「情報評価」の際の一時的な状態情報とし、「情報カテゴリー」に含まれる「カテゴリー元」の式を恒久的な書き換えしないようにする。
例えばある「評価対象情報」の一の項が所属する「情報カテゴリー」をリストするために元に含まれる式の二の項を空欄にした場合、「探索」によって、「文字列」、「人間」、「書物」等の複数「情報カテゴリー」がリストされ、各々のケースについて二の項に代入された結果を返す。
「探索応答」は、「探索」で「密関係」である場合に呼び出されることを目的とした処理であり、実際の応答処理は利活用機能側にコールバックしてもよい。
例えば「探索」自体は、成否(関係有無)や「情報の木」の取得にしか利用できないため、「探索応答」で利活用機能側にデータを提供したり、成否に起因した処理を実施させたりするのに利用することができる。
「妥当性確認」、「探索応答」のコールバックは、何れも「情報カテゴリー」毎に指定できるものとする。
「検証」は、本説明で次の意図で「探索」機能、「情報評価」機能、「妥当性確認」機能を区別しない場合に用いる表現とする。
従って、「探索」は、まず「情報カテゴリー」にクエリをかけ、各「情報カテゴリー」に含まれる「元」と「情報評価」していく。
「情報評価」で照合に成功した場合、「妥当性確認」が登録されている場合は、「妥当性確認」を呼び出してその実行結果も踏まえて「探索」結果を判定するのが「検証」である。
「情報カテゴリー」の「元」に含まれる式も「妥当性確認」の実装も利活用機能側から提供することができ、本発明の情報処理装置自体はモノイド・生成系機械としての抽象性を保つことができる。
「ライブラリ」は、「情報カテゴリー」とそのインデックス(目録やサマリ情報)を記録する、物理的なデータストアである。
「ライブラリ」に登録する「情報カテゴリー」は「候補リスト」に登録され、自動または手動承認によりコミットされると、「ライブラリ」に移されて利用可能な「情報カテゴリー」として公開される(自動であるか、手動承認であるかは実装で決定するものとする)。
「ローカルライブラリ」は個別に利用されている本発明の情報処理装置の「ライブラリ」であり、「共有ライブラリ」は「ローカルライブラリ」間での「情報カテゴリー」の共有を行った「ライブラリ」であり、「知識ライブラリ」は「共有ライブラリ」をさらに連携させてグローバルに公開した「ライブラリ」である。
下位階層の「候補リスト」は同層の「ライブラリ」に「情報カテゴリー」の候補を公開したり、同層の「ライブラリ」から上位層の「ライブラリ」に同層で公開済みの「情報カテゴリー」を公開・マージしたりするのに使用する。
本発明の情報処理装置外の機能であるが、本発明の情報処理装置は利活用機能から機能の処理を要求され、利活用機能の処理を「妥当性確認」に参加させ、「探索応答」で利活用機能に処理を要求することができる。
本発明の情報処理装置は図2(a)のように外部の利活用機能とシンプルな関係を保つ。
本発明の情報処理装置の後述の(付記A1)、(付記A3)、(付記A4)、(付記A5)で説明する内部の機能構成はさらに図2(b)に細分化される。
これら以外の機能、これらを呼び出す機能、これらから呼び出される機能は利活用機能側に必要となる。
探索は全情報カテゴリー共通で (情報カテゴリー, 探索, 単位元) はモノイドまたはその部分集合の生成系として機能する。
この説明では ⊂ は「情報カテゴリー」間の探索にのみ使用する。
同値類と「情報カテゴリー」も ⊂ で記述できるが、うまく実装しないと処理が循環してしまうため、同値類を情報カテゴリーのような個別の構造化情報とはせず情報カテゴリー内の仕組みとすることが考えられる。
この場合、構造化情報として存在しないので ⊂ も同値類との間では使うことがないようにすることができる。
以下、同値類を個別の実装とはしないで記述するが説明上の都合であり、同値類や同値類との ⊂ を実装しても構わないし、その点の差異を本発明との差異とはしない。
情報カテゴリー間探索、妥当性確認、探索応答は利活用機能との直接的なインターフェースを持つ。
−言語処理系(特に Prolog のような推論エンジンを備えたもの)
−クラスター分析エンジン
等
−非構造化情報を本発明の情報処理装置で扱う式(構造化情報)に変換する。
−本発明の情報処理装置に探索(情報カテゴリー間探索)を要求する。
−本発明の情報処理装置での妥当性確認のための処理をコールバックハンドラとして提供する。
−本発明の情報処理装置を利活用するための機能を提供する、すなわち探索に対応する結果・情報の木・情報の森の利活用、および探索応答をコールバックハンドラとして提供する。
利活用機能は非構造化情報を構造化情報に整理するルールを本発明の情報処理装置に実装または手動で登録すればよいので必須ではないし、様々な利活用機能とのコラボレーションを想定する。
これにより、本発明の情報処理装置は数学的な関係やコールバックハンドラなどを利用することで特定目的ではなく汎用目的に対応可能な抽象性を保持し、様々な外部の利活用機能の統合基盤として利用できる。
なお、本発明の情報処理装置の説明では、利活用機能の実装が目的ではないため、挙例する場合は各種の言語処理系に含まれる正規表現を利用する。
情報カテゴリーライブラリは、図4(c)のBNFで表されるデータ構造で情報カテゴリーやその元を表現する。
図4(c)の元は本文での「カテゴリー元」である。
図4(c)の元(単位元)に含まれる式はここでは間置記法(a = a 等)ではなく、前置記法((= a a) 等)で表している(前置記法・後置記法の違いには影響しない)。
図4(c)の単位元は「{項1} ├ 項1」という形式に式を限定し、情報カテゴリーは常に一つの単位元を保持するという意図である。
図4(c)の式は「項1 二項関係 項2」を意味している(二項関係 2-ary relation なので、辺 side ではなく項 term という言い方をしているが英語を見ればわかる通り、二項というのは日本語数学用語独特の表現であり、本来は辺とする方が適切と思われる)。
図4(c)の「Class[ 代表元 ]」という同値類の表記はこう記述しなければならない、という趣旨ではなく一例であり、代表元で同値類を識別できればよい(数学上は同値類を C(代表元) あるいは [代表元] と表記する)。
図4(c)の同値類の代表元を探索すると、無限ループで循環する可能性があるため、例えば同値類の代表元は別にリストしておいてそのリストを検索するなどの工夫で循環を回避すべきである。
データストアとしては、以上の機能・データ表現を提供できればデータベース(RDB, MDDB, NDB, XML−DB, KB 等)でもメモリ上のデータでも構わない。
なお、妥当性確認については、データ表現に取り込むのは難しくかつ再利用という意味で効率的でないため、ライブラリとして提供し、データ表現にはその引用の関連付け(例えば「ライブラリのメソッド名」)を登録することも可とする。
また、探索応答はデータ表現に含まれないため、前記BNFには含まれない。
妥当性確認および、探索応答としては情報評価にはない処理の内部的な追加に加えて利活用機能をコールバックする機能が想定されるがいずれもライブラリとして提供することが妥当である。
構成については、図2(a)で外部構成、図2(b)で内部構成を説明済みである。
動作については、発明の他の実施の形態、第二実施形態、3.具体例、3−2.処理フローでまとめて説明する。
実施例1では、構成、仕組み、効果について説明し、実施例2以降では、具体的な実施形態とその個別の効果について説明する。
[構成]
本実施例は説明した図2(a)、図2(b)を本実施形態の情報処理装置の構成とする。
本実施形態の情報処理装置のライブラリ106は、情報カテゴリー108を登録することができるデータストアである。
本実施形態の情報処理装置の探索処理は、ライブラリを操作するデータ処理エンジンとして提供している。
本実施形態の情報処理装置の探索処理は、情報カテゴリーの探索、情報カテゴリー内の元の探索、を行い、情報カテゴリー内の元の探索では評価対象情報と元とを照合する機構を備えている。
評価対象情報は初期状態では構造化された入力情報であり、照合の過程で再帰的な探索が発生した場合に照合された元に、代入が行われたものを新たな評価対象情報として更新し、再帰的な探索を行う機構を備えている。
情報カテゴリー108は、二の情報と、当該二の情報のうちの一の情報と当該二の情報のうちの他の一の情報との関係と、を含む情報、のデータ構造(式)を一つ含む元とする集合であり、探索処理に関してモノイドとして機能する。
本実施形態の情報処理装置が備えるデータストアに実装される情報カテゴリーは、探索を演算とみなすとモノイドとして機能する(結合法則を実現する再帰的な探索が可能であり、その場合、次の探索対象の元を決定している)。
探索は、元と同じデータ構造の入力情報と元との照合、および照合する元の検索とから構成される。
情報カテゴリーの任意の元には関係と、二の情報とが含まれ、二の情報のうちのいずれかが、二の情報の他方と、関係に指定された関係にあり、ここで利用する関係は予め組み込まれたものの他、数学的な規則の定義できるものを追加することができるため、客観的であり、かつ、他の利活用機能から一意的に利用可能である。
そのため、本実施形態の情報処理装置は、互いに客観的に関係がある情報の集まりを構成することができる。
すなわち、本実施形態の情報処理装置は、非構造化情報について、情報間の関係を新たに定義することなしに既に定義された関係のみを用いた場合においても、客観的な関係により構造化した情報を表わすことができる。
本実施形態は、具体的な情報処理装置等の例についての実施形態である。
[1.基本的な仕組]
本実施形態の情報処理装置等は、以下の数学的性質を利用して、構造化情報を表現する。
・生成系では任意の要素を有限個の要素の簡単な算術で表現できる。
・モノイドはその部分集合の生成系からそれ自信またはその部分モノイドを生成できる(上への写像の値域)。
本方法は、入力情報と情報カテゴリーの元の式に含まれる情報との関連を検証する。
検証により、関係があると判定された場合には、その入力情報とその情報カテゴリーの元の式に含まれる情報とは密関係が存在するという位置付けにする。
その情報カテゴリーの元の式に含まれる情報と疎関係であると判定された入力情報は、その入力情報から構成される単位元を含む情報カテゴリーを候補として生成することができる。
その候補は所定の場合にはその情報カテゴリーに追加される。
入力情報を評価対象情報に代入する。
評価対象情報と情報カテゴリーとの探索で検知された元と情報評価を行い、評価対象情報の可変部分を代入した式をまず情報の木の根とする。
再帰的な探索が発生した場合は現在の元に代入がされた式で評価対象情報を更新してから再帰的探索を行い、再び検知された元と情報評価を行い、評価対象情報の可変部分を代入した式を枝として、情報の木を成長させる。
情報の木を成長させる過程で情報の木の既存の分岐と同じ、代入済みの式が検知されたらループを検知したものとして、再帰的探索を疎関係で終了する(無限ループ回避および、情報の木の木構造の維持)。
異なる情報カテゴリーに属する情報間には包含関係(⊂)のような情報カテゴリー間の関係を示す場合以外は疎関係が存在するという位置付けにする。
結果として、探索によって得られる情報の木は複数の互いに関係が希薄で互いに合流することはなく、各々木構造となり、それらの情報の森を形成する。
それにより、情報カテゴリーの集まりが自己成長する。
情報カテゴリーの構築や、情報カテゴリーと入力情報との関係の実装には、モノイドにはモノイドのある種の部分集合から元のモノイドを生成する生成系が実装できるというモノイドの生成系の性質を利用する。
情報カテゴリーに関する条件を含み、その条件を満たす情報は、その情報カテゴリーの元(カテゴリー元)であると判断する。
情報カテゴリーは生成系であり、カテゴリー元はそこから生成されるモノイドの元なので、そのカテゴリー元を都度追加しなくても同じ性質を維持し、同じ情報に対して同じ結果(カテゴリー元であるか否か)を得られることが保証される。
情報の逆元に相当する情報を含めると群になるが、情報カテゴリーとして逆元に相当する情報を含むのは適切ではなく、モノイドの生成系が実装できれば条件を満たすことが判断できるのでモノイドで十分である。
この際の情報評価は、評価対象情報が各情報カテゴリーの元に含まれる式との照合が可能であるかどうかにより真偽判定を行う。
すなわち、照合可能であればその評価対象情報はその情報カテゴリーの元である(真)か、その可能性がある(この場合は再帰的な探索で真偽を確定)か、とする。
ある情報が、情報評価の結果として、情報カテゴリーの元と密関係がある場合や、そのカテゴリー元と疎関係であると判定できなかった場合は、情報の木に追加する。
論理演算としては情報の木は密関係にある元をANDで連結したもの、情報の森は情報の木間の疎関係をORで連結したものとなる。
入力情報についての情報評価が確定するまで、後述のように、再帰的に情報カテゴリーの生成系を構成する元を探索して、探索した元によりその情報について情報評価を行う。
ここで、探索には、情報カテゴリーの選択と、情報カテゴリー内の元をたどる二つの機能が必要である。
各情報カテゴリーの生成系における元には、全ての情報カテゴリーに共通の関係(証明可能(├))で定義をされた単位元と、その情報カテゴリーに固有の元とを含む。
ある情報カテゴリー固有の元としては、例えば、情報カテゴリーの元の条件を規定する元や情報カテゴリー間の関係を規定する元などがある。
評価対象情報について、情報評価が密関係となる元が見つかるまで、後述のように、情報カテゴリーに含まれる未照合の元を順に照合する。
図3(a)は、数学などで使われる関係に付与される代表的な規則を列挙したものである。
図3(b)は、数学などで使われる関係と図3(a)で定義した規則との対応を順に列挙したものである。
本方法で用いる関係としては、図3に表わしたものすべてを用いてもよいし、図3に表わしたものから選択して用いてもよい(├、∈、⊂ は必須とする)。
関係を表わす記号は、図3において用いた記号に限定されるものではない。
なお、記号は、識別ができれば文字列でなくてもよいが、以下においては、説明の容易性を考慮し、記号が文字列の場合について説明する。
関係として、図3に含まれない関係を追加することも可能とするが、追加する関係は関係に関する規則群(規則1)乃至(規則3)を満たす必要がある。
本方法においては、上述の基本的な仕組みにより情報カテゴリーを構成する。
情報カテゴリーは、データストア上のライブラリに含める所定のデータ構造のデータである。
情報カテゴリーは、情報カテゴリーに関する規則群(規則4)乃至(規則8)を満たす必要がある。
探索は、情報カテゴリーの探索と、情報カテゴリー内の元の探索により行う。
情報カテゴリー内のすべての元の情報文字列について情報評価が確定すると、評価対象情報と探索した元の情報文字列との関係の真偽が仮判定される。
情報評価が確定しない場合は、妥当性確認処理を行う。
妥当性確認処理は、外部(探索要求元など)へのコールバックハンドラであり、戻り値を真偽または未確定の三値のいずれかで返す必要がある(コールバックを呼ぶ場合として、情報評価が未確定の場合、あるいは真で関係の推移律等のプロパティに従う場合、が実装上の選択肢としてありうる)。
情報評価、妥当性確認処理のいずれでも、真偽が確定しない場合には現在の元との照合によって得た代入の結果を新たな評価対象にして再帰的に探索する。
探索を二項演算”・”で表わすと、(規則3)の結合法則を次式で表せる。
さらに、第一元を情報カテゴリーの単位元とすると、情報カテゴリーに属すると判定できる評価対象情報に対し、次式が成立する((式23)と同一内容)。
また、モノイドには単位元が必ず存在しなければならない。
単位元を演算で導出するには逆元が必要になるが、情報カテゴリーでは、その用途から通常は逆元を取り込みたくない。
結果としてモノイドの生成系から単位元を演算で導出できないのでモノイドの生成系にモノイドの単位元を予め含める必要がある。
そこで、情報カテゴリーの単位元を表わす式は、二の情報の情報文字列として情報カテゴリー名を値とし、関係として証明可能(├)とする元を、単位元として、各情報カテゴリーを最初に生成する段階から既定で一つ備えさせる。
従い、本実施形態の情報処理開始時における情報カテゴリーはモノイドの生成系とすることができる。
(式25)および(式25)の演算・は同じ意図で探索を表す。
(式25)の演算・が単位元以外の元との演算では別の元を指すことを探索として活用し、単位元との演算では当該の元を指すことを探索の終端記号として活用する(無限ループ検知時にも探索は終了させるがデータとしては終端記号にならない)。
即ち、評価対象情報は式であり、密関係にある場合、(式26)が成立して同じ式が演算”・”の値域にあるので、情報カテゴリーの元であることを示したことになり、同時にこれ以上の演算”・”の繰返しでは他の結果を導けないことを示している。
具体化に際して、情報カテゴリーは本実施形態において説明した要件を満たせば、その具体化された実装方法については任意とする。
情報カテゴリーの具体的な実装の際には、関係の表現として関係の種別がわかればよいので日本語や記号である必要はなく、情報カテゴリーのスキーマは元に対応するものが一まとまりであればよく、列の並びも任意である(但し、探索の都合上、二の情報の役割上の順序は任意ではなく一意である)。
オブジェクト指向では、IS−A関係, HAS−A(またはPART−OF)関係で対象を表現する。
IS−A関係は、本方法の所属関係(∈)と同一と考えられる。
すなわち、X is a Y. は X ∈ Y を意味する。
これに対して、HAS−A関係は、構成要素であることを示すもので、本説明で取り上げてきた数学的に該当する関係は見当たらない。
HAS−A 関係は、本説明で取り上げた律のうち、反対称律、排中律、推移律を満たしていると考えることができるが、その他の律は満たしていない(本発明の情報処理装置での推移律に関する実装については後述の例で説明する)。
また、HAS−A 関係をどのような用途で使うかは、本発明の情報処理装置では規定しないため、単なる情報でしかなく、探索で得られた結果を利活用機能側で適宜活用すればよいことになる。
これらの点に注意して実装すればよい(関係自体が固有の機能を持つ場合は、妥当性確認や探索応答の際に利活用機能側でその機能を実装すればよい)。
図5の表は、情報カテゴリーに登録されている各元を左から順に、第一情報文字列列、関係列、第二情報文字列列及び妥当性確認処理列の4つの列の値を表形式で表したものである(元の中の式も展開している)。
第一情報文字列列及び第二情報文字列列には、情報文字列が表わされ、関係列には、この表の同一行に記入された、第一情報文字列と第二情報文字列との関係が表わされる。
この表の同一行に記載された、第一情報文字列、第二情報文字列及び関係の組が、この情報カテゴリーにおける元の式である。
単位元の式は第一情報文字列および、第二情報文字列が建物であり、第一情報文字列と第二情報文字列との関係は、証明可能(├)である。
また、第一情報文字列が建物であり、第二情報文字列がドアで、第一情報文字列と第二情報文字列との関係は、構成関係である(ドア has a 建物. または ドア is part of 建物. すなわち ドア HAS−A 建物)。
妥当性確認処理の列には、必要に応じて、関係の妥当性についての記述がされる場合がある。
また、図5において、ドアに関してさらにXX社製ドアのような情報や、ビルに関してビルの名称YYビルのような情報が必要な場合には、別の情報カテゴリーから図6及び図7に表わしたような情報の提供を受ける場合もあり得る。
この場合は、図6及び図7に表わしたような情報を得るために、他の情報カテゴリーを探索してもよい(包含関係のような場合は集合間の関係になるため、関係の属性として情報カテゴリー間を参照させるように実装してもよい)し、既存技術のデータベースに情報カテゴリー間の参照関係を定義してもよい。
$$プロパティ名 という関係(プロパティ名は可変であり、$$ は説明のための表記で書式を限定するものではない)を用意して第一情報文字列が第二情報文字列のプロパティ名に関するプロパティ知であることを示している(プロパティは情報工学ではオブジェクトの属性を指定する手段として用いられ、構成要素とみなせるものもあるがそうでないものもありうるため例として追加した)。
$$プロパティ名 を設けた理由は、関係の変数(任意の関係のいずれか)という意図ではなく、特定の関係の名前付けという意図であり、任意の名前で関係を追加定義してもよいが、たとえばプロパティ名を合成・分解して活用する場合などにはこの方法が有効となるのでオブジェクトの属性をそのままプロパティに変換する際に都合がよい。
例えば、建物というオブジェクトの所在地を所在地というプロパティで扱うことができる。
すなわち、図7の例では、YYビルの所在地はZZであるという意図である。
探索と情報評価により、”・”演算で結ばれた情報文字列からなる(式3)及び(式4)を生成することができる(探索の式そのものではなく、情報文字列に展開したものであり、情報列と呼ぶことにする)。
(式27b) ZZ・YYビル・ビル・建物
そして、(式27a)により表わされる情報と(式27b)により表わされる情報とから、ビル・建物を根とする二本枝の情報の木が構成できる。
この例と異なり、2つの情報が共通する情報文字列を含まない独立な情報の場合は、2つの情報のそれぞれを、枝分かれのない情報の木とする。
二つ以上の情報の木から選択した任意の2つの情報同士の関係が疎関係の場合は、それらの情報の木同士は、関係が希薄である又は直接関連がないとして、互いに疎関係の二つ以上の情報の木の集合、すなわち情報の森とする。
ここで、検索の結果として、一つの入力情報が複数の情報カテゴリーと密関係があると判断される場合があり得る。
大量にある場合は、たとえば、探索する情報カテゴリーの数や探索に用いる情報カテゴリーを制限するなどの対応を行えばよい。
入力情報と、情報カテゴリーに含まれる元の式の情報文字列の間で密関係があるかの判定は、探索により、自動で判定される。
疎関係であると判定された場合は、その入力情報があらたな情報カテゴリーの候補と位置付けできる。
なお、HAS−A 関係のように予め組み込まれていない関係を利用する場合は、システムの矛盾動作を回避するため、運用前に事前にその関係を(人間系も介在させて内容確認したうえで)元として登録しておくとよい。
図8(a)は、Unicodeの符号化文字集合UCSの種類や各々の符号位置との関係を表している。
ここで、UCSは Universal Multiple−Octet Coded Character Setである。
図8(a)のUCS−2はUCS−4に拡張され規格としては廃止されているが、コンピュータ等の機器では互換性の観点で残す必要がある。
UCS−4はUCS−2の拡張であるため、UCSという総称名の情報カテゴリーでUCS−2の符号位置の文字も同等に扱えるようにデザインしたものである。
図8(a)に表わした表において、列名を除く2行目から5行目に表わした各行が、関係として所属関係(∈)を含む元であり、各々自動または手動で登録された元である(UCS等に関する情報を持ちえないので単位元以外の元は外部から登録する)。
同2行目及び3行目に表わした元では、元に含まれる情報文字列同士が所属関係(∈)であるので、妥当性確認処理列には処理を割り当ててはいない。
一方、同4行目及び5行目に表わした元では、元に含まれる情報文字列同士の関係が所属関係(∈)であるか否かの確認処理として符号化チェック処理が妥当性確認処理列に割り当てられている。
UCS−4による拡張は書式の拡張を伴うため、UCS−2を包含する集合とすることができないのでUCSをUCS−2,UCS−4を元として含む集合とし、また UCS−2,UCS−4各々の符号位置の書式を式として表した元を包含させている(符号位置の書式を同値分割に使ってもよいが同値分割については別の例を後述する)。
たとえば、「辺」という文字の符号位置はUCS−2では、U+8FBA であるが、UCS−4では U+00008FBA となる。
∈(U+8FBA, ?) を入力情報として探索すると、∈(U+xxxx, UCS−2) を式とする元と照合されて第一情報文字列が代入され、∈(U+8FBA, UCS−2) が密関係であることを得ることができ、∈(U+00008FBA, ?) を入力情報として探索すると、同様に∈(U+xxxxxxxx, UCS−4)の元と照合されて∈(U+00008FBA, UCS−4) と密関係であることを得ることができる(? とした部分には実装に際してたとえば可変なオブジェクトや正規表現などを利用するとよい)。
ここで、ISBNは、International Standard Book Numberである。
ISBNもUnicodeと同様に2006年まで使われた旧規格(ISBN−10)と、現行の規格(ISBN−13)を持たせている。
接頭記号が追加される点と、チェックディジットの計算方法が異なる点とを省けば、ISBN−13はISBN−10と互換性のあるため、互換性の活用例としてISBN−10も図8(b)に付加した。
図8(b)に表わした表において、列名を除く2行目乃至3行目に表わした情報カテゴリーの元(各行)について、元の式の二の情報間の関係が所属関係(∈)であるが、各情報は書式チェックのために使われ、妥当性確認処理列にはチェックディジットを計算して妥当であるかを確認する処理が記入してある。
図8(a)及び(b)に表わした例では、非終端記号であることを示すためにxやnの可変部分を含めた例が表わされている。
図8(a)及び(b)は非終端記号の説明上の例であり、通常は非終端記号として、ワイルドカードや正規表現などの手法を想定している。
終端記号と非終端記号とが区別でき、実装側で適切に処理できれば、手法は限定しない。
非終端記号と終端記号とは図4(b)の一般的なケースの中に用いているが、それらの違いは、情報文字列が可変部分を持つために再帰的に探索するか(情報文字列が非終端記号)、情報文字列が定数であるために再帰せずに探索の密関係・疎関係を確定できるか(情報文字列が終端記号)の違いを表すために用いている。
情報カテゴリー内探索は、終端記号の情報文字列との情報評価、または、単位元との情報評価で密関係であるか疎関係であるかを確定して終了し、非終端記号との情報評価では前記の手順で、密関係・疎関係が確定するまで再帰的な探索を行うことになる(本発明での情報間の関係性を導く導出原理に相当)。
なお、二つの情報文字列何れもが非終端記号である場合にどのように結果を導くかは本発明では規定せず、実装する者が決定するものとする。
情報評価は、情報が非終端記号を含む場合には、例えば、その非終端記号について書式チェックや変域のチェックを行い、書式や変域が不整合の場合は関係がないという情報評価を確定する。
書式が整合する場合は、その非終端記号を終端記号で置き換えたうえで、関係について判定する。
入力情報が非終端記号を含む場合についても同様である。
ここで、妥当性確認処理は、例えば、図8(a)の5行目乃至6行目に表わした UCS−2, UCS−4 各々の符号化チェックおよび図8(b)の3行目乃至4行目に表したISBNコードの各チェックディジットチェックで情報文字列の変域や妥当性確認をする処理である。
図9(a)では、図8(b)で示したISBNの情報カテゴリーの実装を利用して、実在の書籍のデータで情報評価と、妥当性確認とが正常に動作することを確認することができる。
なお図9(a)では参考文献で上げた書籍をデータとして利用しており、一般に知られた書籍ではあるがご注意いただきたい。
図9(a)では、ISBNコードが探索時に文字列など他の情報カテゴリーとしても並行して検知されていることを認識することもできる。
図9(a)では、同値類の技法の利用が確認できるが、例としては複雑なので、別の例として同値類だけに関する実行ログの固有の例を図9(b)、妥当性確認あるいは同値類を使わずに情報評価だけに関する実行ログの固有の例を図9(c)に示す。
図9(b)では、後述する人間の情報カテゴリーについて男性、女性に同値分割した実装のログである。
図9(c)では、数の集合および数値に関する包含関係を例としている数式という情報カテゴリーを用意しなかったため、複素数は複素数の集合の元として検知されているが、よく似ている1+1は数値そのものとは言えないため文字列としてのみ探索で検知されている(数式は表現の揺れもあって定義が難しいが四則演算だけであれば実現できる)。
また、妥当性確認処理は結果的に、例えば、パスワードを照合したり、インジェクションチェックしたり、など確認する処理としても利用できる。
図10に表わした表において、2行目に表わした元は、情報カテゴリー登録時に自動的に追加された元(単位元)であり、3行目乃至14行目に表わした元が、手動で追加された元である。
自動的に追加された元は、与えられた情報だけで構成できるが、情報カテゴリーの候補は既存のすべての情報カテゴリーと疎関係にあるため、自身では知識を獲得することができない。
単位元の情報文字列は、同表で表わされた地理座標情報カテゴリーが、最初に自動的に生成された時に、既定の元として登録されたものである。
図10に表わした表において3行目以降の行における、関係が HAS−A 関係、直交関係(⊥)、所属関係(∈)である元は、次を想定している。
すなわち、同2行目に表わした単位元についての情報文字列が自動的に登録された新規に作成された情報カテゴリーに、追加された元を想定している。
然るに情報カテゴリーが自動的に生成される段階では、既存の他の情報カテゴリーと疎関係であることしか情報がないため、これらの知識は自動的に獲得することができない。
知識は元の式として表現することができ、元は手動で追加することができる。
従い、知識として与えるべき元を手動で追加する必要がある。
元の式に用いられる関係は、実装時に関係テーブルを予め用意し、その中から選択する。
実装する関係テーブルは図11に表わしたようなもので、証明可能(├)、包含関係(⊂)、所属関係(∈)は各々図3(b)の意図であると同時に本方法での役割を担うため、予め関係テーブルに実装する。
図3(a)、(b)の関係が持つ規則については、各々属性フラグとして各関係のオブジェクトに実装するとよい(例えば、推移律の属性の有効・無効で推移律を満たす関係な再帰的な探索の識別に利用できる)。
関係を追加する場合は情報カテゴリーで利用する前にまずここに登録する。
HAS−A 関係、$$プロパティ名関係、直交関係(⊥)、がこれまでに説明した追加する関係の例である(一般的な関係であるため、これらを同様に予め組み込んでもかまわない)。
ここで、関係テーブルへの登録を処理の開始前に限定するのは、関係テーブルの更新により、情報評価の結果が処理途中で変わることを避けるためである。
情報評価の結果が確定した場合には、その結果を受けて処理が行われる。
真であった場合は、妥当性確認が処理され、偽であった場合には同一カテゴリー内の他の未探索の元を探索し、未探索の元がない場合はその情報カテゴリーと疎関係であるという結果を確定する。
また、情報評価および妥当性確認の結果が確定しない場合には再帰的な探索を行って、その結果を引き継ぐ。
生成系は代数的構造の空ではない部分集合と代数的構造の演算子だけを使って代数的構造の全体集合またはより大きな部分集合による同一の代数的構造を作成できる場合にその部分集合と代数的構造の演算子を元の代数的構造の生成系という。
例えば、単位元だけのモノイドを定義することはできるがこのモノイドの生成系はそれ自身にしかならない。
これに対して、空列と文字集合とを元とする場合、それ自身もモノイドになるが、文字列連結演算に対して、文字列集合の生成系をなしている。
文字集合の代数的構造(UCS, “”, ・)は、文字列連結・を演算とし、空列“”(UCS0 = { “” })を単位元とする自由モノイド(UCS*, “”, ・)の生成系になる。
UCSはUCS−2, UCS−4を総称したものでUCS−2はUCS−4に包含され、かつ廃止されたのでUCS−4と同一とみなしてよい。
ここで、UCS* は、文字集合 UCS のクリーネ閉包であり、その要素は任意の文字列である(∪ は n 次の複数の集合の和演算)。
(商集合(同値類)による生成系の例)
まず、商集合(同値類)を用いた生成系について説明する。
同値類による類別は代数的なものである必要はないし、多くの場合、代表元を見ただけでは類別のルールがわからないので同値律を定義できる属性を用意する必要がある。
例えばISBNコードは、EAN または JAN 規格のサブセットであり、EAN または JAN 規格はバーコードの企画である。
ISBNコードの書式は接頭記号とグループ記号とで書籍の出版された国または地域を表すため接頭記号とグループ記号とで類別できる。
ISBN接頭記号-グループ記号-出版者記号-書名記号-チェックディジット
これらを踏まえて情報カテゴリーを以下のように構築できる。
├("バーコード", "バーコード") (単位元)
「EAN」情報カテゴリー
├("EAN", "EAN") (単位元)
⊂("EAN", "バーコード") (情報カテゴリー間の探索)
├("JAN", "JAN") (単位元)
⊂("JAN", "バーコード") (情報カテゴリー間の探索)
├("ISBN", "ISBN") (単位元)
⊂("ISBN", "EAN") (情報カテゴリー間の探索)
├("ISBN-10", "ISBN-10") (単位元)
∈(c, "ISBN-10") (情報カテゴリー内の探索)
├("ISBN-13", "ISBN-13") (単位元)
∈(c, "ISBN-13") (情報カテゴリー内の探索)
├("ISSN", "ISSN") (単位元)
⊂("ISSN", "JAN") (情報カテゴリー間の探索)
├("書物", "書物") (単位元)
∈(B, "書物") (情報カテゴリー内の探索)
同値類の代表元の情報カテゴリーへの所属関係を元とする場合は情報カテゴリー内探索を行い、同値類の情報カテゴリーへの包含関係を元とする場合は情報カテゴリー間探索を行う。
探索されたら b が ISBN コード(書籍)または ISSN コード(定期刊行物)の有無を確認(古い書物も扱うため)し、妥当性確認でその ISBN/ISSN コードを検証して接頭記号・グループ記号を使って国・地域で同値類別するため、∈(c, ISBN-13) のカテゴリー外探索を行い(情報評価後に接頭記号とグループ記号の国・地域で類別する)、カテゴリー外探索が成功した場合は、├("書物", "書物") を探索する。
この例(ISBN, ISBN−10, ISBN−13)では同値類をさらに同値類として細分する場合に直接細分せずに親集合を階層化している。
また ⊂(ISBN-13, JAN) という探索を実行すると ⊂(ISBN-13, JAN) 自体は前記定義に含まれないが ⊂(ISBN-13, ISBN), ⊂(ISBN, JAN) と推移的に処理されれば、結果として得ることができる。
実装が複雑になりすぎるので詳述はしないが、推移性は一つの包含関係(この例では ⊂("ISBN-13", "JAN"))を複数の包含関係などに有限ステップに分離してゴールにたどり着けるように(⊂("ISBN-13", X), …, ⊂(X, "JAN"), ├("JAN", "JAN"))すればよいことがわかる。
例えば、⊂("ISBN-13", "JAN") が与えられたら、⊂("ISBN-13", "ISBN") の元の妥当性確認で ⊂("ISBN", "JAN") を探索させる。
⊂("ISBN", "JAN") の探索では元を検知して ⊂("ISBN-13", "JAN") の情報評価は成功とする(検知されなかった場合は再帰的に ⊂("ISBN", Y) を探索する)。
つまり、⊂ の推移律を説明済みの実装手段と利用者定義の妥当性確認などで処理することができる(全情報カテゴリーとの ⊂ 関係を各情報カテゴリーに元として登録してもよいが、実用的ではない)。
例えば、人間という情報カテゴリーを実装する際、性別という属性と、出生年という属性とを持たせ、各々を類別する元を登録することができる。
変換 T が準同型写像であれば、T の像がモノイドであれば、現像もモノイドであるということができる。
ここで、代表元から直接同値類が判定できるかという課題がある。
この商集合には単位元はないが、「人間」情報カテゴリーには ├("人間", "人間") という単位元を用意しておくことで、モノイドとして機能させることができる。
元の正規表現は「人間」であることのチェックに使用することができる。
次のような実装で元の妥当性確認では「人間」であることのより精緻なチェックと、属性の判定に使用できる。
├("人間", "人間") (単位元)
∈(X, "人間")
H : 性別属性、出生年属性とも不明(C♯言語の場合は null など)仮想の人間を表す代表元インスタンスとする。
X : 男性の性別属性を持つ仮想の人間を表す代表元インスタンスとする。
Y : 女性の性別属性を持つ仮想の人間を表す代表元インスタンスとする。
同値類への所属関係を表す元 ∈(h, [?]) の登録時に自動で代表元の親集合への所属関係を表す元 ∈(H, "親集合") も自動で元登録されるようにしてもよい。
まず、情報カテゴリーの単位元は探索に関する単位元であり、情報カテゴリーで表現されているものの単位元とは本質的に異なる。
情報カテゴリーで表現されているものの単位元が代表元になる場合もある(例えば [0])が、そうでない場合は、情報カテゴリーとしての単位元は設けても、そこで表現されるものの単位元をあえて実装する必要はない。
情報カテゴリーへの表現が準同型とは言えず、上への写像ではなく中への写像になるがもともと単位元が異なるケースであり、かつ特定の元に限られ、その他の元は情報カテゴリーとしてモノイドになることが保証されるため、必要に応じ、特定の元への対応ができていればよいことになるためである。
例えば、人間の情報カテゴリーで人間の単位元は男性、または女性とすると類別しなければならないため、情報カテゴリーとしての単位元(├("人間", "人間"))は設けても人間の単位元を設ける必要はない。
その代わり、男性、女性、と類別された各同値類の代表元を直接、人間の情報カテゴリーで保証できるようにするとよいことになる。
次に、線形空間の基底を用いた生成系について説明する。
本発明の情報処理装置では、より広い対象を扱うため群・環・線形代数より原始的な情報を元とするモノイドの生成系を実装している。
また、本発明の情報処理装置は式の意味解析あるいは論証を行うことを目的としない。
式の意味解析や論証は利活用機能で行い、本発明の情報処理装置では妥当性確認の中で利活用機能を呼び出して意味解析・論証を行ったり、その結果を登録したりすることで分析系と応用系とを連携させる方法を提供する。
ここでは、線形空間の例として数体系の実装例について考察する。
まず、実数(R, {+, *})は体である。
これに対して複素数(C, {+, *})は、その元が実部と虚部を各々実数ベクトルと虚数ベクトルを基底とする実数体上の線形環、つまり線形空間上の線形結合となる。
ここで正規表現を判定に活用して実数・複素数を情報カテゴリーとして表現してみる。
複素数の表現の揺れを吸収するために、本方式では結果として複数の正規表現パターンを元として用いる。
├(実数, 実数) (単位元)
∈("(?<Real>(\+|\-)?(0|[1-9][0-9]*)\.?[0-9]*)", 実数)
├(複素数, 複素数) (単位元)
∈("(?<Real>(\+|\-)?(0|[1-9][0-9]*)\.?[0-9]*)", 複素数)
∈("(?<Imaginary>i\s*(\+|\-)?(0|[1-9][0-9]*)\.?[0-9]*)", 複素数)
∈("(?<Imaginary>(\+|\-)?(0|[1-9][0-9]*)\.?[0-9]*\s*i)", 複素数)
∈("(?<Real>(\+|\-)?(0|[1-9][0-9]*)\.?[0-9]*)\s*(\+|\-)\s*(?<Imaginary>i\s*(0|[1-9][0-9]*)\.?[0-9]*)", 複素数)
∈("(?<Real>(\+|\-)?(0|[1-9][0-9]*)\.?[0-9]*)\s*(\+|\-)\s*(?<Imaginary>(0|[1-9][0-9]*)\.?[0-9]*\s*i)", 複素数)
∈("(?<Imaginary>(\+|\-)?i\s*(0|[1-9][0-9]*)\.?[0-9]*)\s*(\+|\-)\s*(?<Real>(0|[1-9][0-9]*)\.?[0-9]*)", 複素数)
∈("(?<Imaginary>(\+|\-)?(0|[1-9][0-9]*)\.?[0-9]*\s*i)\s*(\+|\-)\s*(?<Real>(0|[1-9][0-9]*)\.?[0-9]*)", 複素数)
正規表現は、探索時にマッチングさせるために使用している。
例えば、0.1 は、実数の元にも複素数の元にもマッチするため、0.1 ∈ 実数, 0.1 ∈ 複素数のいずれも成立するが、i1-2は実数ではないため i1-2 ∈ 複素数しか成立しない(i は虚数単位)。
本発明の情報処理装置でのこの動作の実装は数学的処理ではなく、正規表現による結果である。
実数の場合は既存のプログラミング言語の特徴を生かしてより厳格な確認が可能であるが、複素数の場合は既存のプログラミング言語でデータ型としてサポートしているケースが少ないので、自力で実装する必要がある。
複素数の虚部は、実数に虚数単位を乗じたものであるから、実質的に実数と同等とみなせ、複素数をサポートしない既存のプログラミング言語でも扱える機能範囲(実数の組み合わせ)として実部・虚部各々で、実数用の妥当性確認を行えばよいことを示している。
同様に事実として実数⊂複素数であるため、実数と複素数の一部の情報カテゴリーの元の式は同一の正規表現を用いており、一方で虚部を持つ複素数を判定する元は実数には含まれない。
複素数の虚部は同様に実数情報カテゴリーの元の式と同一の正規表現である。
結果的に単なる⊂の実装だけではなく、実数を複素数の生成系として活用している(複素数の各項から実数を参照させれば生成系としてより明確になる)。
情報カテゴリーは、例えば、知識ライブラリと一時ライブラリの二階層のデータストア上に記録する。
一時ライブラリはさらにローカルライブラリと共有ライブラリの二階層で構成することもできる。
以下においては、ライブラリとして、ローカルライブラリ、共有ライブラリ、知識ライブラリの三階層を構成した例についての探索について説明する(ローカルライブラリを最下位層、共有ライブラリをすべての中間層、知識ライブラリを最上位層と位置付け、同様に各層の本発明の情報処理装置を最下層ではクライアント基盤、中間層ではブローカ、最上位層では知識マスターと呼ぶ。クライアント基盤という名称は、アクセス用クライアント機能を含む意味である)。
そして、探索の対象となる元(以下において探索対象ということにする。)が最初に見つかった場合には、その最初に見つかったライブラリの中で情報評価等を行う。
すべてのライブラリにおいて入力情報と密関係があると判定される元が見つからない場合は、ローカルライブラリに新たな情報カテゴリー候補を追加する。
知識ライブラリは公開され、かつ、参照のアクセス権に制限はないものとする(参照以外のアクセス権はメンテナンス用にのみ使用する)。
予め組み込まれた情報カテゴリーと共有ライブラリから知識獲得した追加の情報カテゴリーを含み、これらを探索用に公開する。
共有ライブラリは、所属する全ローカルライブラリ参加者に参照のアクセス権を限定する(参照以外のアクセス権はメンテナンス用にのみ使用する)。
ローカルライブラリは、当該のローカルライブラリの参加者に参照・書き込み・更新・削除のアクセス権を限定する。
ローカルライブラリは、本方法による処理の途中で生成された情報カテゴリーの候補を一時記録するライブラリである。
情報カテゴリーの候補は、入力された情報の集まり(例えばテキストからなる文章)から取得した情報から、その情報カテゴリーの単位元のみを含む状態で自動生成される(初期状態)。
そして、入力情報と知識ライブラリ上の情報カテゴリーに含まれる元との情報評価が、密関係であるという判定で確定した場合は、その元を知識ライブラリの作業領域にある元候補リストに追加する(元候補リストのデータ構造としては元候補と密関係になる情報カテゴリーとを保持する必要がある)。
また、前記作業領域にある元候補リストに単位元以外の元がある場合は、元候補としてその情報カテゴリーに追加できる。
情報カテゴリーの共有は、ローカルライブラリにある情報カテゴリーから共有ライブラリにある情報カテゴリー候補リストへ行われる登録である。
さらに、情報カテゴリーの公開は、共有ライブラリにある情報カテゴリーから知識ライブラリにある情報カテゴリー候補リストへの元の登録である。
複数の本発明の情報処理装置を束ねる本発明の情報処理装置の場合、下位層のライブラリから、上位層のライブラリに候補を登録される際に同一と思われる候補による競合が発生する可能性がある。
これらを一元化する競合解決機能を統合と呼ぶことにする。
統合は、複数の下位ライブラリから同一名の情報カテゴリーが候補とされた場合に、マージする処理である。
マージの際に、情報カテゴリー候補の元に矛盾や循環があれば登録対象から除外することが望ましい。
ライブラリの出自の異なる情報カテゴリー名および、単位元が一致する情報カテゴリーは競合する。
競合のないものは上位ライブラリに登録(共有・公開)される。
競合する情報カテゴリー候補において矛盾する結論が導かれる(同一の入力情報に対し、ある競合は密関係にあり、別の競合は疎関係にある)場合は、その情報カテゴリーを公開された情報カテゴリーにはせずに保留する。
矛盾がなければ競合をマージする(単位元などの同一元は一元化する)。
マージによって探索が循環する場合も保留状態にする。
保留状態にないものは、上位ライブラリに登録(共有・公開)される。
ローカルライブラリから知識ライブラリへの直接的な情報カテゴリーの登録は行うべきではない(共有ライブラリを公開しない、共有ライブラリをローカルライブラリとして使わない)。
情報カテゴリーの統合や候補からの除外後、移行元の情報カテゴリーを残すか否かは選択できるものとし、残す場合は再候補しない仕組み、あるいは問題点を手動で解決して再候補する仕組み等に利用してもよい。
例えば、候補を保留するフラグを立てたり、候補しないリストを生成したりする等を行うことが望ましい。
これらは木構造(情報の木)やその集合(情報の森)として表すことができるので、そのまま利用することも考えられる。
一方、木構造等では、取扱いに不都合がある場合は、密関係にあたる木の連結が”・”演算子の結合であると考えることができることに着目し、適切に写像する手段も考えられる。
情報の木や情報の森をそのまま利用する場合には、{情報の木1、情報の木2、…、情報の木n}をそのまま利用する。
一方、写像する場合は、例えば、下記式5又は式6の条件を満たす、任意の演算子f、g、hによる準同型写像を用いることができる。
(式29b) f(元・元)=h(f(元)、f(元))
次に、本実施形態の情報処理装置の具体例について説明する。
[3−1.構成]
図2(b)は、本具体例の情報処理装置の構成を表わす概念図である。
本具体例の情報処理装置001は、情報構造化手段114と、情報カテゴリー獲得手段115と、情報カテゴリー保守手段116と、情報カテゴリー破棄手段117と、情報カテゴリー連携手段118とを備える。
なお、ここでの情報構造化とは、探索に際して構造化情報である代入結果、情報の木、情報の森を得ること、および、情報カテゴリー候補、元候補の追加であり、情報構造化手段は実質的に探索と同一である。
情報構造化手段114は、入力情報について、情報カテゴリーを探索し、情報評価を行うことにより、入力情報を構造化する(入力情報の式の可変部分に照合結果を代入して補完する)処理を行う。
情報構造化手段114に入力情報を生成するために用いられるもとの情報の集まりは、たとえば、文書、表、ソフトウェアのソースコード等の情報である。
これらの情報の集まりを分解した単語等の文字列等の情報が、式(入力情報)として、情報構造化手段114に入力される。
そして、情報構造化手段114による情報構造化処理の結果として生成される情報は、情報カテゴリー、情報の木及び情報の森といった構造化された情報である。
情報カテゴリー保守手段116は、ライブラリにある情報カテゴリーの内容(情報文字列やプロパティ)を確認し、更新する保守処理を行う。
情報カテゴリー破棄手段117は、破棄プロパティが付与されている情報カテゴリーを削除する処理を行う。
情報カテゴリー連携手段118は、複数の本発明の情報処理装置を中心ノードの情報処理装置を上層とし、その他のノードの情報処理装置を下層とする、ハブアンドスコープに連携させる役割を担う。
ここでの共有とは、複数の本発明の情報処理装置を連携させた場合に、下層から上層に追加・更新をかけ、同時に下層が上層を参照できるようにすることで情報の共有・一元化を行うことである。
また、ここでの公開とは、複数の本発明の情報処理装置を連携させた場合に、下層から上層に追加・更新をかけ、同時に下層として参加してない任意の本発明の情報処理装置から参照できるようにすることである。
これらの各手段により行われる各処理については後述する。
共通機能は、本発明の情報処理装置001を利用するフレームワークやアプリケーションであり、多階層での役割とは別にライブラリや候補リストに対して、以下の機能を備える(なお、以下では本発明の情報処理装置のデータストアで直接管理するライブラリを連携する本発明の情報処理装置の各々のデータストアのライブラリと区別して保持するライブラリと表記する)。
・保持するライブラリを保守する機能
なお、レコード数は拡張が可能とする。
知識ライブラリは、任意の利活用機能間で共有(公開)される情報カテゴリーのライブラリである。
共有ライブラリは、登録された範囲のクライアント基盤と連携する利活用機能間で共有される情報カテゴリーのライブラリである。
・情報カテゴリー連携手段用の候補を作成して知識マスター機能に提示する機能
なお、ブローカがない場合(知識マスターとクライアント基盤のみの場合)は、知識ライブラリにおいて追加等の更新はされず、知識ライブラリは情報カテゴリーの生成系とはならない。
ローカルライブラリは、保持するクライアント基盤と連携する利活用機能だけで利用できる情報カテゴリーのライブラリである。
・知識マスター機能やブローカ機能に要求して情報に関する情報の木や情報の森を取得する機能
・情報とローカルライブラリ機能から情報の木や情報の森を生成する機能
・情報カテゴリーを形成してローカルライブラリに登録する機能
・情報カテゴリー獲得手段用の情報カテゴリー候補および元候補を作成してブローカ機能に提示する機能
ここで、プロパティは、例えば、情報カテゴリー獲得手段用の候補とすることの可否、情報カテゴリーを生存させることの可否、情報カテゴリーを破棄することの可否等、各種手段を制御するフラグやデータとして使用できる。
情報カテゴリー獲得手段用の候補とすることの可否を表わすプロパティは、情報カテゴリー獲得手段用の候補とすることを可とする候補リストへの登録可否を制御するプロパティの意図である。
情報カテゴリーを生存させることの可否を表わすプロパティは、ライブラリ内でのアクセス可否を制御するプロパティの意図である。
情報カテゴリーを破棄することの可否を表わすプロパティは、ライブラリに情報カテゴリーが既存する場合に情報カテゴリーの削除可否を制御するプロパティの意図である。
プロパティによる各種手段の制御は例えば次のように行われる。
各種ライブラリの情報カテゴリーは、情報カテゴリー保守手段による処理により削除設定し、情報カテゴリー破棄手段により自動で削除できるものとする。
また、プロパティの設定は次のようにして行われる。
・情報カテゴリー連携手段で、既存の情報カテゴリーは獲得されず破棄設定される。
ライブラリは、データ管理形式について任意であり、その形式は、たとえば知識ベースでも、RDBでも、XMLDB(XMLデータベース)でも、MDDBでも、特許文献3に開示された技術を利用した方式でも、ファイルシステムそのものでも構わない。
KVS(Key−Valueストア)はレコードの列数が限られるためライブラリやその配下のデータ構造の直接的な実装には向かない。
なお、本明細書では、下位基盤の構成要素のライブラリ(ローカルライブラリと共有ライブラリ)を一時ライブラリと総称する。
以下において、利活用機能から本発明の情報処理装置への要求とその応答のデータ処理エンジン(情報構造化手段114)と、データ保守エンジン(情報カテゴリー獲得手段115と、情報カテゴリー保守手段116と、情報カテゴリー破棄手段117と、情報カテゴリー連携手段118)とのそれぞれにおける処理のフローについて説明する。
情報構造化手段114(以下、本処理)は、入力情報について、探索(検索と、情報評価と、妥当性確認)と、探索結果の情報構造化とを行う処理である。
本処理は、構造化された入力情報を代入で補完して完成させ、出力として探索結果とともに、情報の木及び情報の森を提供する。
また、出力が得られない場合は、新しい情報カテゴリーとして構造化し、候補としてローカルライブラリに追加する。
探索要求は基本機能としてライブラリ内の情報カテゴリー間の探索と、情報カテゴリー内の探索が行われる。
多階層間に探索要求する場合は、ライブラリ内の探索の前にライブラリ間の探索も必要になる。
以下の説明では、入力情報が不完全となる場合に補完するため、可変となることを示すデータ(変数や正規表現など)を前提としている。
以下の説明では、情報評価と妥当性確認は別々に実施するのではなく、情報評価で真(true、以下同)であった場合にのみ妥当性確認を行い、その戻り値を密関係・疎関係・未確定とする簡略化もしている(妥当性確認が設定されてない場合は常に true)がこれも説明の都合であり、実装に際して制約するものではない。
以下の説明では、情報の森は既定で存在させていて、そこに情報の木を作成するという方針で説明する(これも実装に際しての制約とはしない)。
まず、利活用機能で情報の集まりから入力情報が作成される。
前記情報の集まりは、例えばテキストで与えられた文章である。
情報の集まりが文章である場合には、その文章を、例えば利活用機能で形態素解析の手法により情報文字列に分解することができる。
さらに、例えば、助詞等の不要な情報文字列は関係に置換する(S001)。
利活用機能は、分解や置換で得られた情報を本発明の情報処理装置の式のデータ構造としてデータ化(インスタンス化)する。
データ化の際に関係や二の情報の情報文字列が不足する場合は、代わりに可変であることを示すデータなどで埋める(ただし、すべてのデータが、可変であることを示すデータとなることは避ける)(S002)。
利活用機能は、本発明の情報処理装置に対して、前記で得られたデータを入力情報として探索要求をする(探索要求では必要に応じて探索応答用のコールバックを指定する)(S003)。
本発明の情報処理装置が評価対象スタックを実装している場合は、探索要求を受けたら、入力情報を評価対象スタックにPushする(S004)。
情報カテゴリー間探索を行う(L002)。
情報カテゴリー間探索は、ライブラリ内のすべての情報カテゴリーを順次、情報カテゴリー内探索する。
情報カテゴリー内探索は、評価対象情報(評価対象スタックの先頭)と、情報カテゴリー内の各元との情報評価、妥当性確認を行う(L003)。
情報評価で false であった場合、および、妥当性確認で疎関係であった場合、情報カテゴリー内探索のループ(L003)を次の未評価の元に進める(S006)。
情報評価で true であった場合、情報カテゴリー内探索は情報カテゴリー内の未評価の(その探索で情報評価を一度もしていない)元との情報評価および妥当性確認を行う。
妥当性確認は、元が満たすべき要件を確認する処理で、元毎に指定できる。
即ち元を登録できるものには妥当性確認も登録することを許可する。
妥当性確認の実体は、探索要求した利活用機能のコールバックハンドラまたは別の利活用機能の API として実装される。
また、妥当性確認の中で、意図的に再帰的な探索を要求させることも可能とする(この場合、意図的ではない再帰的な探索を起こさせたくない場合に未確定を戻り値としないようにする必要がある。また、評価対象スタックや情報の木が分離してしまう点も注意が必要である)。
妥当性確認は、戻り値を true/false としてもよいがこの説明では、既に情報評価が true と確定した組み合わせのため、この実施例では、元毎の疎関係・密関係・未確定のいずれかを返すものとする。
なお、妥当性確認が設定されてない元の場合は、常に密関係を返したものとみなす。
情報評価で true、妥当性確認で未確定となった場合は、再帰的な探索を行う(S008)。
情報カテゴリー内探索は、同一情報カテゴリー内での情報評価および妥当性確認は密関係の元が見つかる(S010)か、すべての元と疎関係であることが確定する(S009)まで繰り返される。
密関係を検知した場合は、そこまでの再帰的な探索での代入済みの元による、または元と代入の組み合わせによる情報の木を作成する(S011)。
同様に密関係を検知した場合は、探索応答を実行する。
探索応答は探索要求した利活用機能の処理をコールバックする。
探索応答は情報の木の作成(S011)と並行してもよいが、情報の木、情報の森を探索応答で利用することを想定してこの実施例では情報の木作成後としている(情報の森は、この実施例では常に存在しているが、すべての情報の木の作成が完了しないと確定しない点に注意が必要である)(S012)。
すべての元と疎関係であることが確定した場合、入力情報(当初の評価対象情報)とその情報カテゴリーとが疎関係であることを確定する(S013)。
(S012)および(S013)の後、(L003)ループを終了させる。
情報カテゴリー間探索のループ後の処理としてすべての情報カテゴリー内探索の結果が、疎関係であったか、一つでも密関係となる情報カテゴリーがあったかを確認する(S014)。
探索結果がすべての情報カテゴリーと疎関係であった場合は、入力情報から、単位元と、入力情報の式を元として持つ情報カテゴリー候補としてデータ化(インスタンス化)する。
情報カテゴリー候補は、データ化直後、既定で候補可否プロパティが false、生存プロパティが true となっている(本実施例での各種プロパティの用途と設定については情報カテゴリー保守手段で説明する)。
前記で得られる情報カテゴリー候補は入力情報を R(A, B) とすると次の元を含む(ここで R は特定の関係を表すものとする)。
├(A, A) (A の単位元)
R(A, B) (元)
情報カテゴリー候補 B
├(B, B) (B の単位元)
R(A, B) (元)
たとえば二の情報のうち、A が可変であることを示すデータの場合(ここではワイルドカード”*”で表現)は、次の通りとする(あくまで例であり、このままではあらゆるものを B と密関係にあると解釈してしまい、その後新たな情報カテゴリー候補を受け付けなくなるのでワイルドカードに接頭語・接尾語をつけたり、妥当性確認を省略せずに厳格にふるい分けしたりすべきである。正規表現の “(.|\n)*” も同様にあらゆるものとマッチするので要注意)。
├(B, B) (B の単位元)
R(*, B) (元)
├(A, A) (A の単位元)
情報カテゴリー候補 B
├(B, B) (B の単位元)
情報カテゴリー候補登録時に情報カテゴリー名の一致する情報カテゴリー候補が既存する場合は既定では置換する(キャンセルにしてもよい)(S015)。
(S014)または(S015)の後に未探索のライブラリがあればそのライブラリに対して(L001)のループを繰り返し、未探索のライブラリがなければ(L001)のループを終了して本処理を終了する。
なお、図13は、クライアント基盤機能、ブローカ機能、知識マスター機能各々に対して共通に提供される処理である。
情報カテゴリー獲得手段115(以下、本処理)は、作業領域の情報カテゴリー候補リストの情報カテゴリー候補をライブラリに複製して情報カテゴリーに昇格させる手段である。
本処理は、クライアント基盤の場合には上記情報構造化手段114を行った結果として、ブローカおよび知識マスターの場合には情報カテゴリー連携手段(後述する)を行った結果として、作業領域の情報カテゴリー候補リストに生成された情報カテゴリー候補において、候補可否プロパティ、および生存プロパティが共に true であるものをローカルライブラリに複製して情報カテゴリーに昇格させる(プロパティで制御するのは実装例の一つ)。
情報カテゴリー獲得手段115は、クライアント基盤、ブローカ、知識マスターで機能する(ブローカ、知識マスターでは情報カテゴリー獲得手段115と情報カテゴリー連携手段118とを排他的に使用する)。
なお、本手段は作業手順に近く、各ステップを別々に行っても構わない。
まず、情報カテゴリー保守手段(後述する)で情報カテゴリーに昇格させたい情報カテゴリー候補の候補可否プロパティ、生存プロパティをともに true に設定する(S101)。
次に、昇格させたい情報カテゴリー候補の配置されている作業領域にある情報カテゴリー候補リストからその作業領域と同じ装置にあるライブラリに候補可否プロパティ、生存プロパティをともに true である情報カテゴリー候補を複製して情報カテゴリーに昇格する(ライブラリに既存する場合は置換する)(S102)。
昇格させた情報カテゴリー候補リストの情報カテゴリー候補は候補可否プロパティを false にする(これにより毎回置換することを避ける)(S103)。
本処理は、クライアント基盤機能、ブローカ機能、知識マスター機能各々に対して共通に提供される処理である。
情報カテゴリー保守手段116(以下、本処理)は、情報カテゴリーに関する他の手段が、矛盾なく動作できるように保守する手段である。
本処理は、ライブラリの情報カテゴリーあるいは情報カテゴリー候補リストの情報カテゴリー候補内の各種プロパティをオンラインで編集する手段である。
まず、多階層の場合はデータストア(階層、ライブラリまたは作業領域)を選択する(S201)。
次に、情報カテゴリー(ライブラリ内の)または情報カテゴリー候補(作業領域の情報カテゴリー候補リスト内の)を選択する(S202)。
選択した情報カテゴリーまたは情報カテゴリー候補のプロパティを編集する(S203)。
この実施例でのプロパティとしては、図15(b)のものを想定しているが機能を実現できればこの内容に固執しない。
なお、ここでのプロパティとは、情報カテゴリー(インスタンス)に実装するプロパティのことであって、2.情報カテゴリーで説明したプロパティ名を使った関係のことではない。
本処理は、クライアント基盤機能、ブローカ機能及び知識マスター機能による処理である。
情報カテゴリー破棄手段117(以下、本処理)は、ライブラリから情報カテゴリーを破棄する手段である。
本処理は、破棄プロパティがtrueの情報カテゴリーを自身のライブラリから削除する。
ライブラリでの情報カテゴリーの爆発的増加とそれに伴う探索等の不要な処理を抑制する手段の一つである(情報カテゴリーの一元化および、多階層化もこれらの抑制手段になる)。
なお破棄手段として、データ削除またはデータ不可視化が利用できる。
不可視化してデータを残す場合は、一旦破棄した情報カテゴリーの再登録を回避することに利用できる。
一方、削除は、誤入力によって発生した情報カテゴリー、情報カテゴリー候補の削減のために使用できる。
まず、情報カテゴリー保守手段で削除したい情報カテゴリーまたは情報カテゴリー候補の破棄プロパティを true に設定する(S301)。
次に、破棄したい情報カテゴリーまたは情報カテゴリー候補の生存プロパティを確認する。
生存プロパティが true の場合はそのまま終了し、false の場合は次に進む(S302)。
当該の情報カテゴリーまたは情報カテゴリー候補を削除して終了する(S303)。
情報カテゴリー連携手段118(以下、本処理)は、本発明の情報処理装置を図17のパターン(a), (b), (c)のように多階層に連携させた場合にハブアンドスポークとして情報カテゴリー、追加・更新されたカテゴリー元、追加された関係、について下層から複製されたものを上層で統合して共有・公開できるようにする手段である(以下、情報カテゴリーの連携手段に限定して説明する。カテゴリー元の場合は元候補リスト、関係の場合は図11の関係テーブル、を同様にこの連携手段で上層に複製する)。
図17のパターン(a)は三層にした場合であり、三層以上では中間層をすべてブローカとする。
パターン(b), (c)は二層にした場合であり、(b)の場合は、ブローカがないので情報カテゴリーの追加が行われず、(c)の場合は、知識マスターがないので情報が公開されない。
なお、単層の場合は、クライアント基盤として機能するものとする。
本処理は、直下の層の一時ライブラリ(ローカルライブラリ、共有ライブラリ)にある情報カテゴリーを自身の作業領域の情報カテゴリー候補リストに情報カテゴリー候補として複製する(直下の層は一つとは限らない)。
情報カテゴリー連携手段118は、ブローカ、知識マスターで機能し、作業領域の情報カテゴリー候補リストは情報カテゴリー連携手段118で使用する(情報カテゴリー候補リストに登録された情報カテゴリー候補は情報カテゴリー獲得手段115でその装置内のライブラリに情報カテゴリーとして昇格される。ブローカ、知識マスターでは情報カテゴリー獲得手段115と情報カテゴリー連携手段118とを排他的に使用する)。
情報カテゴリー候補リストに複製された情報カテゴリー候補は各情報処理装置の情報カテゴリー獲得手段115で情報カテゴリーに昇格する。
以下の説明では、概念図に示される多階層のアーキテクチャは構成済みとし、下位の階層のライブラリの情報カテゴリーを自身の情報処理装置の作業領域の情報カテゴリー候補リストに候補として複製する処理を説明する。
まず、自身に参加している下位の階層のライブラリを全件検索する(S401)。
次に、検索された下位の階層のライブラリに含まれる情報カテゴリーを自身の作業領域の情報カテゴリー候補リストに情報カテゴリー候補として複製する(S402)。
複製された情報カテゴリー候補の候補可否プロパティを false、生存プロパティを true に設定する。
但し、自身のライブラリに情報カテゴリー候補と同一名の情報カテゴリー候補がある場合は、生存プロパティを false にしてもよい(S403)。
知識マスターでは、複製された情報カテゴリー候補の公開プロパティを true にする。
本処理は、ブローカ機能、知識マスター機能各々に対して共通に提供される処理である。
なお、情報カテゴリー獲得手段、情報カテゴリー連携手段の情報カテゴリーのデータフローを図18(b)に示す。
本実施形態の情報処理装置が備える情報カテゴリーに含まれる元は、客観性を持つ構造化情報である。
元に含まれる関係は数学などで厳格に定義される客観的な二項関係で二の情報間の関係を表すために用いられる。
本実施形態の情報処理装置が備える情報カテゴリーと探索は、以下のモノイドの性質を持つ。
情報カテゴリーは元を持ち、必ず一つの単位元を持つ(探索の単位元)。
探索は、密関係・疎関係が確定すると終了する。
終端記号では密関係・疎関係を直ちに決定し、非終端記号では可変部分に代入を行ったうえで密関係・疎関係を判定する。
探索で密関係・疎関係が確定しない場合と、元に含まれる関係に推移律がある場合と、は探索中の元に代入を行ったものを新たな探索対象として再帰的に探索する(探索の結合法則)。
単位元を探索すると強制的に密関係・疎関係を確定して終了する。
探索は、情報カテゴリーに依存せず共通であり、元毎に探索から呼び出される妥当性確認で元毎の照合判定をカスタマイズできる。
探索は、客観的に記述された構造化情報間の演算である。
再帰的な探索は、関係の規則に基づくため、客観性を失わずに蓄積する。
すなわち、本実施形態の情報処理装置等は、情報とその間の関係という基本的な構造化情報として入力することで関連する情報を手繰り、さらに構造化された情報(情報の木、情報の森)として表わすことができる。
それに加えて、本実施形態の情報処理装置は、入力情報と全情報カテゴリーのすべての元との関係の有無を調べ、疎関係(関係がない)場合には、その入力情報を新しい情報カテゴリーとして、獲得し、自己成長することができる。
そのため、ある開発部門と他の開発部門との間で情報等を共通に利用するためには、共有するための手段を別に設けることが必要で、そのままでは共通に利用することはできないという課題がある。
また、ある情報カテゴリーに属する元に含まれる情報間の関係が成立しない場合に、その情報についてはその情報カテゴリーとは疎関係にあり、異なる情報カテゴリーに属する情報とする(すべての情報カテゴリーと疎関係にある場合は、自動的に新たな情報カテゴリーとする)。
一元化・一意化された構造化情報に加えて、多様な利活用機能との連携および、多階層化時の公開により、異なる業種や職種であっても、情報を共有することが可能になり、利便性が向上する。
これにより、シームレスな事業基盤の提供が可能になる、さらに、一元化すべき情報(規格や物理法則など)の共有による調査、決定の作業一元化と情報共有が可能になる。
以上でのリポジトリでの活用は一元化・一意化の効果の説明のための補足的な例であるが、続く実施例3では、開発資産への実際の活用について説明する。
本実施形態は、第二実施形態の情報処理装置等の利活用(利用又は活用)についての実施形態である。
図19は、第二実施形態の情報処理装置001の機能と、それを利活用するシステムの機能との構成とデータフローを表わした概念図である。
なお、以下においては、第二実施形態の情報処理装置001の機能を「本機能」と、それを利活用するシステムの機能を「利活用機能」と、それぞれいうことにする。
利活用機能から本機能へは、出力情報を要求するための、入力情報、情報の構造化を行う上での判断基準である関係、その他の情報が与えられる。
本機能は、与えられた関係を用いて、入力情報から、情報カテゴリーや元を生成し、あるいは、知識を獲得すると同時に、入力情報を構造化し、情報の木や情報の森といった構造化された情報を出力する。
出力された情報が利活用機能に対して出力される場合もある。
利活用機能には以下が含まれる。
・利活用機能と本機能との間に介在し、情報間の関係を、利活用機能から本機能への要求前に事前に解析し、或いは、本機能による出力情報を利活用機能で扱いやすい形式に変換する機能
これにより、特に要求されずに、業種間や職種間を横断した情報間の階層的関係を導出していくことができる。
一方で、情報間の関係そのものの整理や整形については、本機能においては対象としない。
そのため、利活用機能が、関係について整理や整形して本機能へ入力するか、利活用機が整理や整形が可能な方式(正規表現、Prologの利用、テキスト含意分析など)により事前に整理や整形を行っておく必要がある場合がある。
以下においては、本機能により作成した情報の木や情報の森などの利活用機能による利活用の例や、本機能の機能と利活用機能との連携について具体的に説明する。
SEO(Search Engine Optimizer、検索エンジン最適化)は、検索エンジンでのヒット性をよくする手法である。
検索エンジンの代表的な手法、登録されたURI(Uniform Resource Identifier)にクローラがアクセスして、URIに登録されているオブジェクト(アクセス可能なすべてのファイルやその中のキーワード)を取得してデータベースにインデックス化し、利用者が検索する際にはそのインデックス化されたデータベースを検索して応答している。
そこで、SEOでは検索やインデックスで、優位になる手法がとられる。
結果としてヒット性の数値だけで検索されるようになり、このようなSEO対策をとっていないインターネットの情報源は、過剰にアクセス性が低下してしまい、SEO対策済みの情報源の間では均衡状態になって、対策をしただけの効果が見込めない、という課題などがある。
これは、検索する側にとっても、情報提供側にとっても適切なマッチングを阻害しているという意味で不利益となっている。
さらに、近年のビッグデータやインターネットでの機械学習、深層学習ベースでのAIは検索エンジンをベースにしているため、不適切な判断を導く可能性がある。
検索キーワードに対して、分野などの情報が提供できればこのような不利益・不適切な判断の削減が期待できることになる(偶発的な発見の機会も減るが、適切なデータの絞り込みで統計データの信頼性も向上する)。
また、検索において検索キーワードの区切りは通常、演算子ORが省略されたものとみなす。
これは、情報提供サイト側の都合によるものだが、この仕組みだけでは、情報提供側からの一方的な情報提供により、検索結果の情報の肥大化が進みやすく、しかも検索時の意図とは異なるという側面がある。
そのために、利用者側のニーズとは必ずしも一致しない場合が多い。
情報提供サイト側についてはSEO対策を行えばよいため、利用者側で優先順だけではない絞込み機能の提供が必要ということになる。
本機能を併用することで、検索式を自動合成し、適切な絞り込みを行わせる工夫ができる。
情報の木すなわち情報の木を構成する元同士が密関係である場合には、準同型写像 T を用いて、演算・をAND演算に置き換えることができる。
しかしながら、SEOにより検索を行おうとする利用者は、検索により調査をしたいという目的で検索を行うのだから、前記の選択をするには(あるいはそもそも適切な検索キーワードを入力するには)、事前には十分な知識がないことが想定される。
本機能を適用することにより、検索結果の情報を、適切に絞り込むために必要な情報が補完され、検索による新しい知識の獲得が容易になる。
例えば、インターネットの検索エンジンで”東京 緯度”と検索する場合を考える。
その検索前に、本機能により、”東京”・”日本”という情報の木と、”緯度”・”地理座標”という情報の木とからなる情報の森が生成されたとする。
この場合には、東京AND日本OR緯度AND地理座標と事前に変換して検索を行うことができる。
一方、符号、座標等の情報は、各々の体系から導ける(生成できる)ので、データ一つ一つを元として保持しせずに生成系や正規表現・ワイルドカード等を使うことで、情報カテゴリー数の肥大化を軽減できる。
ブラウザ402は、情報処理装置001に検索キーワードをベースとして探索を要求する。
ここでの探索は、インターネットへの検索ではなく、インターネットへの検索のためのキーワードや条件を補完することを目的としたクライアントサイドでの辞書的な検索である。
情報処理装置001にはブラウザ402から構造化された入力情報が入力され、情報処理装置001からは情報が追加され、更に構造化された構造化情報(情報の木、情報の森)がブラウザ402に提供される。
検索エンジン401は、ブラウザ402からインターネットへの検索を受けると、これまでの構成、仕組み、資産を変えることなく、その検索条件により検索を行い、その検索結果を出力することができる(情報処理装置001側も構成、仕組みに変更はなく情報カテゴリーでカスタマイズされていく)。
ビッグデータなどで用いられるクラスター分析においては、分析対象の多変量の個体が仮想的な多次元空間に存在する。
クラスターは多次元空間のデータをルールに基づき近接するものをグループ化する分析手法でそのルールは階層型もしくは非階層型に大別される。
階層型も非階層型も、その空間での個体間の距離を定義し、さらにクラスタリングするか別のクラスター(Ci)として分離するかなどを決定する。
(式33b)Ci ∩ Cj = φ (i ≠ j)
非階層型クラスターは、クラスターを排他的に分離することだけを目的として分類する。
階層型クラスターは、クラスターを排他的な分離に加え、上位階層での包含する枠組みとして規定し、包含関係がトーナメントの木構造になるようにすべてのデータを分類する。
本発明の情報処理装置では、クラスター毎に情報カテゴリーを設けてクラスター間の包含関係と、クラスターに分類されるデータの所属関係とを元として登録すればよいことになる。
非階層型クラスターの場合は、クラスターを排他的に分離するだけなので各クラスターを、その代表点を代表元とする同値類とみなすことができ、データの各クラスターを表す同値類への所属関係を表す元、および、同値類の包含関係を表す元またはその同値類の代表元の所属関係を表す元とを単一の情報カテゴリーに登録すればよいことになる。
階層型も非階層型も、距離の測定とクラスター所属の閾値は妥当性確認で処理すればよく、かつ、妥当性確認を利活用機能に任せることで強力に連携することができる。
本機能を応用したクラスタリング方法として、本機能により作成した情報の木をクラスター内、情報の森を複数のクラスターの共存する状態として位置付けるとする。
単一の情報から、複数の情報の木が生成される場合、各情報の木を一つの次元と考えることで、情報が複数の次元の成分を持つものとしてとらえることができる。
これをもとにクラスタリングや多次元データベースを機械的に構成していくことができる。
これにより、クラスター分析の分析結果から主観の影響を排除することができる。
図20の情報処理装置001は、クラスター分析機能411からデータをもとに分類すべきクラスターを探索する用途を示したものである。
情報処理装置001は、クラスター分析装置411から入力された情報を、探索する。
探索後、密関係にある情報カテゴリーあるいはその中の同値類をクラスターとしてクラスター分析装置411に出力する。
本発明の情報処理装置において関係の定義にクラスター分析を利用したり、本発明の情報処理装置をクラスター分析に利用したりすることも考えられる。
クラスター分析は多次元空間、すなわち、採取するデータの測定項目の決定あるいは閾値の決定は現状、人間系で行われており、任意の情報を扱う決定論的な分析手法としては結果に主観が影響し、自動化も難しいという課題がある。
たとえば、情報カテゴリーの様々な元をクラスタリングしたいデータ指標にしたり、所属関係、包含関係を示す元をクラスタリングの指標にしたりするということが考えられる。
また、統計情報などから閾値を定め、閾値よりも小さな距離にあるものを同一クラスターにあるとみなし(内的結合)、大きな距離にあるものを別のクラスターにあるとみなす(外的分離)ことで人間系を排除し、処理を自動化することも可能になる。
図21の情報処理装置001は、クラスター分析機能411からクラスター分析時に行った分類ルールをもとに探索を要求し、分類ルールを情報カテゴリーやその元として登録(定着化)することでクラスター分析機能での再利用可能な分類ルールを提供する用途を示したものである。
探索に際して、クラスター分析機能を妥当性確認として利用することで密な連携ができる。
クラスター分析機能を妥当性確認として利用する用途として、たとえば、クラスターの中心位置や境界とする距離の閾値設定(元毎に変えることができる)等が考えられる。
分析ルールを情報カテゴリーとして定着させることで、[その1]で示したクラスター分析を包含することができ、再利用、あるいは動的なクラスター分析への活用が期待できる。
プログラミング言語やプロトコルは、BNF(EBNF、ABNF)などのメタ言語を利用して定義することができる。
ここで、BNFはBackuS-Naur Form(または BackuS Normal Form)、EBNFはExtended BackuS-Naur Formである。
また、ABNFはAugmented BackuS-Naur formである。
そこで、プログラミング言語やプロトコルのメタ言語の定義を情報カテゴリーの元として実装し、解析したいソースコードを入力情報として入力することができる。
これによりソースの構造や統計情報などを取得することができる。
図23は、図22を情報カテゴリーに近い数学的な関係式で表現した図である。
図24は、図23を情報カテゴリーで表わした表の概念図である。
この情報カテゴリーの概念的な式は次のとおりである(厳格には字句解析に正規表現を使用するべきである。またEBNFでの = 関係を通常の等号と区別するため、EBNF= と表現している)。
図26は、図25のソースを図24に表わしたEBNFの定義の情報カテゴリーを用いて、情報カテゴリーの形式で解析した結果を表わした例の図である(この図は例えば探索応答でログ出力などすることで得ることができる)。
図27(a)は図25のソースから図26の出力結果を得るための利活用機能との連携について、図2(a)の利活用機能としてソース解析ツール421を割り当て、データの内容や流れを示した実施例である。
この実施例では、メタ言語の言語定義情報カテゴリー423を触媒的に利用してソースからその解析結果を情報の木および新たな情報カテゴリー424として生成している(特別な仕組みは必要としない)。
この実施例特有の機能というわけではない(本実施例を使わなくても実現できる)が、言語定義情報カテゴリー423を多様なプログラミング言語分を用意し、切り替えることで単一のツールで多様なプログラミング言語の解析が行えることも想定できる。
前記3.ソースコード解析への利活用では、言語定義が予め情報カテゴリーとして与えられていて、それをもとに当該言語で書かれていた言語ソースの解析に利活用する例を示した。
ソースコード解析の実施例を実現するには、事前に言語定義情報カテゴリー423を用意しておく必要がある。
図27(b)は言語定義ソースから言語定義情報カテゴリーを得るための利活用機能との連携について、図2(a)の利活用機能としてメタ言語プロセッサを割り当て、データの内容や流れを示した実施例である。
まず、プログラミング言語名で探索を要求し、見つからずに固有の情報カテゴリー候補が作成されることを利用する。
メタ言語プロセッサ425でEBNFのメタ言語定義ソース426の一文(シンボル=シンボルで構成される式)を入力情報(EBNF=(シンボル, シンボルで構成される式))として探索を要求する。
探索で疎関係となったら、情報カテゴリー候補を作成せずに情報カテゴリー候補の元候補として先の入力情報をベースとした式を持つ元候補を登録する。
情報カテゴリー候補を昇格させ、昇格させた言語定義情報カテゴリー423に元候補をすべて登録すれば言語定義情報カテゴリー423は完成する。
この実施例でも、メタ言語による言語定義ソース426から情報カテゴリー423を生成しただけである(特別な仕組みは必要としない)。
前記[3.ソースコード解析への利活用]での解析とは逆方向の視点で、ソースの生成に任意の情報カテゴリーを利用することができる。
情報カテゴリーからソースを生成する方法について説明する(いずれか選択できるため図示はしないがEBNFのメタ言語定義または言語定義情報カテゴリーを変換ルールとして再び利用する。これらの言語定義の選択については後述する)。
例えばC#言語で記述した各行は図29に表わしたソースに変換することができる。
図27(c)は利活用機能との連携について、図2(a)の利活用機能としてソース生成ツールを割り当て、情報カテゴリーからソースを生成する際のデータの内容や流れを示した実施例である。
この図の表では生成後のソースの構成要素を明確にするため、あえて具体的な情報文字列ではなく、変数名、クラス名などと表記している。
4行目に表わした、クラス名2、⊂、クラス名3からなる元から クラス名2⊂クラス名3 という関係があることになる。
クラスは集合を排他的に分割した部分集合なので、二つのクラスに包含関係⊂があるということは分割のレベルが異なるからということになる。
関係に着目するとこの元は以下の継承に相当する。
}
ここで、{}でくくった範囲はブロックである。
3行目に表わした、変数名、∈、クラス名1からなる元から 変数名∈クラス名1 という関係があることになる。
関係に着目するとこの元は以下のインスタンス化に相当する。
コンストラクタというのは、インスタンス化(プログラムが実行されてクラスが初めてメモリ上に構築されること)された時に最初に無条件に呼び出される処理である。
このような情報カテゴリーの関係に着目して変換(対応付け)していくことで、図29のソースを得ることができる。
ここで図29の一番外側(クラスの継承の横に出てくる)の{}がクラスの範囲を示すブロックある。
クラス名1の中で変数名が存在していることになるため、そうなるように自動生成している。
この処理の中で妥当性確認処理列に登録された静的(static)な処理がメソッド1としてインスタンス化する前に呼び出して事前チェックしてからインスタンス化するようにソースコードの一部が自動生成できる(別な手段としてインスタンス化した後に無効なインスタンスとして管理してもよい)。
探索応答については、図28からは判断できないが、利活用機能側で実装する必要があるため、生成されるソースに直接実装する必要はない(但し、利活用機能の探索応答の登録有無の確認と、登録されていた場合のコンストラクタなどからのコールバックする処理と、は必要になる)。
なお、変換(対応付け)のルールについては、言語定義情報カテゴリー423を利用してもよいし、利活用機能であるソース生成ツール427側で実装しても構わないことになる。
この実施例でも、既存の情報カテゴリー429で探索結果(情報の木および情報の森)を変換ルールで変換してソース428を生成するだけである(特別な仕組みは必要としない)。
変換(対応付け)を他の言語に変えれば他のプログラミング言語でもソース生成ができる(つまりリポジトリとして活用できる)。
そこでPrologおよびOWLでの変換の規則について図30(a), (b)に各々一例を示した。
Prologは探索要求の発行元だけでなく、妥当性確認の処理の主体として利活用ができ、かつ長い歴史で生まれた資産との相互運用として活用していくことが期待できる。
OWLは、元来インターネット上のいろいろな資産の意味づけ的な役割があり、本発明の情報処理装置で得た情報と相互運用することでIoTを支える基盤の一つとして期待することができる。
以上により、利活用機能との連携で、プログラミング言語との相互運用が可能であることが示せた。
本実施形態の情報処理装置001は、各利活用において特別な追加の実装を行うことなく、説明したそれぞれの効果を奏する。
すなわち、1.SEOでの検索式自動生成方法への利活用、においては、未入力の検索キーワードを補完し、かつSEOによる検索結果の情報が、不必要に膨大になるのを防ぐことができる。
また、2.クラスター分析への利活用、その1、においては、クラスター分析の分析結果をもとにした主観の影響を排除した情報カテゴリーあるいは元を生成することができる。
また、同、その2、においては、クラスター分析に直接参加させることで主観の排除された信頼性の高い構造化情報を得ることができる。
また、3.ソースコード解析(リバースエンジニアリング)への利活用、においては、ソースコード解析が行える。
5.ソースコード自動生成支援(フォワードエンジニアリング)への利活用、においては、ソースコード生成への利活用が行える。
ソースコード解析とソースコード生成の循環系の一部を担うことができる。
また、ソースコード解析、ソースコード自動生成は言語定義を切り替えることで、他の言語のソースコード解析、ソースコード自動生成が可能である。
以上のように、好ましい実施形態をあげて本発明を説明したが、本発明は必ずしも上記実施形態に限定されるものではなく、その技術的思想の範囲内において様々に変形し実施することが出来る。
また、上記の実施形態の一部又は全部は、以下の付記のようにも記述され得るが、当然に、以下に限定されるものではない。
二の情報と、当該二の情報のうちの一の情報と当該二の情報のうちの他の一の情報との関係と、を含む情報、を元とする集合で、
その集合に演算に相当する探索処理が実装され、
その演算に関して閉じていて、単位元を持ち、結合法則が成り立たせることで、
集合と演算の組をモノイドとして機能させ、
演算に相当する探索処理を個々のモノイドによらず一元化した、
データストアと、データ処理エンジンと、データ保守エンジンとを備える情報処理装置。
入力情報(後述する)が、情報の集まり(後述する)から抽出し、一つまたは二つの情報からなる文字列とその間の関係とで構造化された(構造、様式、条件を持たせた)情報(一の情報があれば、関係及び二の情報は必要としない)であり、
入力情報を初期の評価対象情報(後述する)とする、
付記A1に記載された情報処理装置。
前記モノイドの集合要素の元の二の情報あるいは関係に値を割り当てたものを情報カテゴリー(後述する)とし、情報カテゴリー間の関係はいずれかの情報カテゴリーの元として実装されて直接的には元を共有しない、
付記A1に記載された情報処理装置。
前記入力情報と、前記情報カテゴリーの元に含まれる前記二の情報のうちの一の情報とが前記関係にあるかを判定し、
前記情報カテゴリーに含まれるいずれかの元に含まれる二の情報のうちの少なくとも一の情報と、
前記関係があると判定された場合に、前記入力情報と、前記入力情報と前記関係がある前記一の情報と、
前記入力情報と前記一の情報との前記関係と、を備える複合情報を作成し、
作成したものを元の候補としてそのデータストアに追加する、
付記A1に記載された情報処理装置。
前記入力情報が、前記情報カテゴリーに含まれるいずれの元に含まれる二の情報のうちのいずれの情報とも、前記関係があると判定されなかった場合に、
その判定されなかった前記入力情報の備える情報と既定の関係とを単位元(後述する)として備える新たな情報カテゴリーの候補としてそのデータストアに追加する、
付記A1に記載された情報処理装置。
三つの関係(証明可能(├), 包含関係(⊂), 所属関係(∈))を組み込み、探索(後述する)を前記モノイド共通の演算要素と位置付け、三つの関係に各々、探索での機能や役割(探索の終了条件、情報カテゴリー内探索(後述する)、情報カテゴリー間探索(後述する))を持たせ、
初期状態では指定された関係があればその関係を、なければ ∈ 関係を設定した入力情報(後述する)をライブラリ(後述する)に対して探索を開始し、
ライブラリに含まれる情報カテゴリーの元との照合を行い、
探索の結果として、密関係・疎関係・未確定のいずれかを返す、
付記A1から付記A5のいずれか1つの付記に記載された情報処理装置。
探索を定められた条件(後述する)によりモノイドの演算として機能させ、探索の中で評価対象情報と情報カテゴリーの元との間で情報の文字列としての照合を行う情報評価(後述する)と、情報の範囲や構造に関する検証を行う妥当性確認(後述する)と、を行う、
付記A6に記載された情報処理装置。
付記A5において、証明可能(├)を関係とし情報カテゴリー名(後述する)を二の情報各々の値とする式を単位元(前記モノイドの単位元要素)とする、
付記A5から付記A7のいずれか1つの付記に記載された情報処理装置。
情報評価においては、成否または未確定を返し、情報の文字列が終端記号(後述する)または単位元(後述する)である場合は成否を返し(一致の場合に成)、情報の文字列が非終端記号(後述する)でのマッチングである場合に未確定(マッチの場合)または否(アンマッチの場合)とし、
妥当性確認においては、情報の変域・値域チェックや書式・構造チェック等で受理される場合は成とし、不受理の場合は否とし、
さらに、情報評価が成で妥当性確認も成である場合に密関係を返し、いずれかが否である場合に疎関係を返し、いずれでも成否が確定しない場合に未確定を返し、
情報評価が密関係または疎関係である場合に探索を終了する、
付記A4乃至付記A5のいずれか1つの付記に記載された判定方式を持つ付記A8に記載された情報処理装置。
情報評価が未確定である場合にその元に対して本発明で限定する代入を施したものを新たな評価対象情報として生成することで再帰的に探索(後述する)を密関係・疎関係が確定するまで行い、
その結果が密関係である場合は再帰前の未確定な情報評価を成とし、疎関係である場合は再帰前の未確定な情報評価を否とし、
その再帰的な探索の過程を保持するデータ処理エンジンをさらに備える、
付記A9に記載された情報処理装置。
推移律の定義された関係(⊂ 等)について、再び同関係により再帰的な情報カテゴリー内探索、または情報カテゴリー間探索を行う機能を持たせた、
付記A10に記載された情報処理装置。
付記A2に記載された判定方式を持つ付記A6に記載された情報処理装置。
生成系を利用することで入力情報そのものの情報カテゴリー候補リストや元候補リストへの登録、再起検索を回避する機能を持たせた、
付記A10に記載された情報処理装置。
本発明の情報処理装置を複数束ねて二階層以上のハブアンドスポークの各ノードとして役割分担して連携させることで、
複数の下層の情報カテゴリー候補、元候補、関係の共有(後述する)と公開(後述する)を促進させ、
同時に、共有による情報カテゴリー候補、元候補、関係の見直し機会の提供する、
付記A6から付記A12のいずれか1つの付記に記載された情報処理装置。
利活用機能に本発明の情報処理装置の探索、探索応答(後述する)の処理に参加させる機能を持たせた、
付記A6から付記A12のいずれか1つの付記に記載された情報処理装置。
探索の結果または探索応答から入力情報に関連する新たな構造化された情報の集まりとして、情報の木(後述する)および情報の森(後述する)を作成し提供する、
付記A14に記載された情報処理装置。
クラスター分析機能でクラスタリング解析を行い、
クラスター分析装置から得られるクラスター分析ルールのデータストアとして情報カテゴリーを利用する、
付記A15に記載された情報処理装置。
クラスター分析機能と連携し、
付記A16で得られた情報カテゴリーのクラスター分析ルールを用いてクラスタリング解析を行い、
クラスター分析機能を支援する、
付記A14に記載された情報処理装置。
あるソフトウェアのメタ言語の定義及びそのソフトウェアのソースコード、から抽出した情報、を前記入力情報とし、
前記モノイドを表わす情報の出力をする、
付記A14に記載された情報処理装置。
入力された前記モノイドを表わす情報からソースコードを自動生成するソースコード自動生成支援装置をさらに備える、
付記A15に記載された情報処理装置。
二の情報と、当該二の情報のうちの一の情報と当該二の情報のうちの他の一の情報との関係と、を含む情報、を元とする集合で、
その集合に演算に相当する探索処理が定義され、
その演算に関して閉じていて、単位元を持ち、結合法則が成り立たせることで、
集合と演算の組をモノイドとして機能させ、
演算に相当する探索処理を個々のモノイドによらず一元化した、情報処理方法。
二の情報と、当該二の情報のうちの一の情報と当該二の情報のうちの他の一の情報との関係と、を含む情報、を元とする集合で、
その集合に演算に相当する探索処理が定義され、
その演算に関して閉じていて、単位元を持ち、結合法則が成り立たせることで、
集合と演算の組をモノイドとして機能させ、
演算に相当する探索処理を個々のモノイドによらず一元化した、
データ処理エンジンとして表わす処理をコンピュータに実行させる情報処理プログラム。
また実施形態、実施例などをさらに応用して、AIの学習機能のナレッジベース、OWLとの連携によるIoTデバイスの名前解決等としての活用などが考えられる。
AIの学習機能のナレッジベースでは、必要となる知識情報処理を一部担うことができると予想される(共通ルール的な部分の知識情報処理は残し、獲得する知識を本情報処理装置に担わせる)。
IoTデバイスは、オントロジーを使ってWeb上に存在するもの(デバイス、データなど)に名前付けや関係に基づく相互の関連性を本発明の情報処理装置と連携させることで辞書化を担うことができると予想される。
002 利活用機能
003 形態素解析(利活用機能の代表的な例として)
101 データ処理エンジン
102 データ保守エンジン
103 データストア
104 探索
105 探索応答
106 ライブラリ
107 作業領域
108 情報カテゴリー
109 情報カテゴリー候補リスト
110 元候補リスト
111 情報カテゴリー間探索
112 情報カテゴリー内探索
113 妥当性確認
114 情報構造化手段
115 情報カテゴリー獲得手段
116 情報カテゴリー保守手段
117 情報カテゴリー破棄手段
118 情報カテゴリー連携手段
121 式
122 関係
123 一の情報(情報文字列)
124 二の情報(情報文字列)
125 入力情報(式)
126 元
130 情報の木
131 情報の木の分岐点
132 照合された元の式(式)
133 元の式への代入(式)
134 情報の森
135 評価対象スタック
136 評価対象情報
301 知識マスター
302 知識ライブラリ
303 ブローカ
304 共有ライブラリ
305 クライアント基盤
306 ローカルライブラリ
401 検索エンジン
402 ブラウザ(利活用機能)
403 情報カテゴリー
411 クラスター分析機能(利活用機能)
412 データ
413 情報カテゴリー
421 ソース解析ツール(利活用機能)
422 XX 言語で書かれたソース
423 XX 言語定義情報カテゴリー
424 ソース解析結果情報カテゴリー
425 メタ言語プロセッサ(利活用機能)
426 XX 言語定義ソース
427 ソース生成ツール
428 XX 言語で書かれたソース
429 設計情報カテゴリー
Claims (20)
- 二の情報と、当該二の情報のうちの一の情報と当該二の情報のうちの他の一の情報との関係と、を含む情報、を元とする集合で、
その集合に演算に相当する探索処理が実装され、
その演算に関して閉じていて、単位元を持ち、結合法則が成り立たせることで、
集合と演算の組をモノイドとして機能させ、
演算に相当する探索処理を個々のモノイドによらず一元化した、データ処理エンジンと、
元の情報をライブラリに保持される前記モノイドとなる情報カテゴリーに獲得・保守・破棄し、他の同情報処理装置との間で連携するデータ保守エンジンと、
データ処理エンジンの探索処理で元を探索するライブラリと、データ保守エンジンで元の情報を獲得・保守・破棄・連携処理で扱う作業領域と、を記憶するデータストアと、
を備え、
前記データ処理エンジンが、
三つの関係(証明可能(├), 包含関係(⊂), 所属関係(∈))を組み込み、探索処理を情報カテゴリー共通の演算要素と位置付け、三つの関係に各々、探索処理での機能や役割(探索処理の終了条件、情報カテゴリー内探索処理、情報カテゴリー間探索処理)を持たせ、
初期の評価対象情報では指定された関係があればその関係を、なければ ∈ 関係を設定した入力情報をライブラリに対して探索処理を開始し、
ライブラリに含まれる情報カテゴリーの元の式との照合を行い、
探索処理の結果として、密関係・疎関係・未確定のいずれかを返す、
情報処理装置。 - 入力情報が、利活用機能から入力された情報の集まりから抽出し、一つまたは二つの情報からなる文字列とその間の関係とで構造化された(構造、様式、条件を持たせた)式の情報(一の情報があれば、関係及び二の情報は必要としない)であり、
入力情報の式を探索の初期の評価対象情報とする、
請求項1に記載された情報処理装置。 - 前記情報カテゴリーの集合要素の元の二の情報あるいは関係に値を割り当てたものを情報カテゴリーの元を一意に識別し構成する式とし、情報カテゴリー間の関係はいずれかの情報カテゴリーの元の式として実装されて直接的には元を共有しない、
請求項1に記載された情報処理装置。 - 入力情報と、情報カテゴリーの元の式に含まれる二の情報のうちの一の情報とが関係にあるかを判定し、
情報カテゴリーに含まれるいずれかの元に含まれる式の二の情報のうちの少なくとも一の情報と、
関係があると判定された場合に、入力情報と、当該入力情報と関係があると判定された情報カテゴリーの元の式の一の情報および関係と、を備える複合情報を作成し、
作成したものを元の候補としてそのデータストアの作業領域に追加する、
請求項1に記載された情報処理装置。 - 入力情報が、情報カテゴリーに含まれるいずれの元の式に含まれる二の情報のうちのいずれの情報とも、前記関係があると判定されなかった場合に、
その判定されなかった前記入力情報の備える情報と既定の関係とを単位元として備える新たな情報カテゴリーの候補としてそのデータストアの作業領域に追加する、
請求項1に記載された情報処理装置。 - 探索処理を定められた条件により情報カテゴリーの演算として機能させ、探索処理の中で評価対象情報と情報カテゴリーの元との間で情報の文字列としての照合を行って成否または未確定を返す情報評価と、情報の範囲や構造に関する検証を行って成否を返す妥当性確認処理と、を行う、
請求項1から請求項5のいずれか1項に記載された情報処理装置。 - 証明可能(├)を関係とし情報カテゴリー名を二の情報各々の値とする公理A├Aを表す式を単位元(前記モノイドの単位元要素)とする、
請求項5または請求項6に記載された情報処理装置。 - 情報評価においては、成否または未確定を返し、探索対象の式の情報の文字列が終端記号または単位元である場合は成否を返し(一致の場合に成)、探索対象の式の情報の文字列が非終端記号での探索された情報カテゴリーの元の式とのマッチングである場合に未確定(マッチの場合)または否(アンマッチの場合)とし、
妥当性確認処理においては、利活用機能が提供するライブラリまたは/およびコールバックを活用した情報の変域・値域チェック、書式・構造チェックで受理される場合は成とし、不受理の場合は否とし、
さらに、情報評価が成で妥当性確認処理も成である場合に密関係を返し、いずれかが否である場合に疎関係を返し、いずれでも成否が確定しない場合に未確定を返し、
情報評価が密関係または疎関係である場合に探索処理を終了する、
請求項4または請求項5に記載された判定方式を持つ請求項7に記載された情報処理装置。 - 情報評価が未確定である場合にその元に対して本発明で限定する代入を施したものを新たな評価対象情報として生成することで再帰的に探索処理を密関係・疎関係が確定するまで行い、
その結果が密関係である場合は再帰前の未確定な情報評価を成とし、疎関係である場合は再帰前の未確定な情報評価を否とし、
その再帰的な探索処理の過程を保持するデータ処理エンジンをさらに備える、
請求項8に記載された情報処理装置。 - 推移律の定義された関係(⊂)について、再び同関係により再帰的な情報カテゴリー内探索処理、または情報カテゴリー間探索処理を行う機能を持たせた、
請求項9に記載された情報処理装置。 - 生成系を利用することで入力情報そのものを情報カテゴリーの候補とする作業領域の情報カテゴリー候補リストや入力情報そのものをいずれかの情報カテゴリーの元の候補とする作業領域の元候補リストへの登録、再帰検索を回避する機能を持たせた、
請求項9に記載された情報処理装置。 - 本発明の情報処理装置を複数束ねて二階層以上のハブアンドスポークの各ノードとして役割分担して連携させることで、
複数の下層の情報処理装置に記憶された情報カテゴリー候補、元候補、関係の上位層との共有と公開を促進させ、
同時に、共有による情報カテゴリー候補、元候補、関係の見直し機会の提供する、前記データ保守エンジンを有する
請求項6から請求項11のいずれか1項に記載された情報処理装置。 - 利活用機能に本発明の情報処理装置の探索処理中に、本方式の情報処理装置から利活用機能へのコールバックとして呼び出される利活用機能側の探索応答処理を登録できる機能を持たせた、
請求項6から請求項11のいずれか1項に記載された情報処理装置。 - 探索処理の結果または探索応答処理からその探索処理を行った入力情報を根とするすべての評価対象情報の情報を探索された順に構造化した情報の集まりとして、単一の木構造の情報の木および複数の木構造の情報の森を作成し提供する、
請求項13に記載された情報処理装置。 - 利活用機能のクラスター分析機能でクラスタリング解析を行い、
クラスター分析装置からの入力情報として得られる距離、階層、クラスターの閾値を含むクラスター分析ルールのデータストアとして情報カテゴリーを利用する、
請求項14に記載された情報処理装置。 - 利活用機能のクラスター分析機能と連携し、
前記クラスター分析ルールを用いてクラスタリング解析を行い、
クラスター分析機能を支援する、
請求項13に記載された情報処理装置。 - 利活用機能のソースコード解析機能から、あるソフトウェアのメタ言語の定義及びそのソフトウェアのソースコード、当該ソースコードから抽出した情報、を入力情報とし、
モノイドを表わす式の情報の出力をする、
請求項13に記載された情報処理装置。 - 利活用機能のソースコード解析機能から入力されたモノイドを表わす式の情報からソースコードを自動生成するソースコード自動生成支援装置をさらに備える、
請求項14に記載された情報処理装置。 - 情報処理装置のデータ処理エンジンが、
二の情報と、当該二の情報のうちの一の情報と当該二の情報のうちの他の一の情報との関係と、を含む情報、を元とする集合で、
その集合に演算に相当する探索処理が定義され、
その演算に関して閉じていて、単位元を持ち、結合法則が成り立たせることで、
集合と演算の組をモノイドとして機能させ、
演算に相当する探索処理を個々のモノイドによらず一元化し、
前記情報処理装置のデータ保守エンジンが、元の情報をライブラリに保持される前記モノイドに獲得・保守・破棄し、他の同情報処理装置との間で連携し、
前記情報処理装置のデータストアが、データ処理エンジンの探索処理で元を探索するライブラリと、データ保守エンジンで元の情報を獲得・保守・破棄・連携処理で扱う作業領域と、を記憶し、
前記データ処理エンジンが、
三つの関係(証明可能(├), 包含関係(⊂), 所属関係(∈))を組み込み、探索処理を情報カテゴリー共通の演算要素と位置付け、三つの関係に各々、探索処理での機能や役割(探索処理の終了条件、情報カテゴリー内探索処理、情報カテゴリー間探索処理)を持たせ、
初期の評価対象情報では指定された関係があればその関係を、なければ ∈ 関係を設定した入力情報をライブラリに対して探索処理を開始し、
ライブラリに含まれる情報カテゴリーの元の式との照合を行い、
探索処理の結果として、密関係・疎関係・未確定のいずれかを返す、
情報処理方法。 - データ処理エンジンの探索処理で元を探索するライブラリと、データ保守エンジンで元の情報を獲得・保守・破棄・連携処理で扱う作業領域と、を記憶するデータストアを備えた情報処理装置のデータ処理エンジンに、
二の情報と、当該二の情報のうちの一の情報と当該二の情報のうちの他の一の情報との関係と、を含む情報、を元とする集合で、
その集合に演算に相当する探索処理が実装され、
その演算に関して閉じていて、単位元を持ち、結合法則が成り立たせることで、
集合と演算の組をモノイドとして機能させ、
演算に相当する探索処理を個々のモノイドによらず一元化する処理を実行させ、
情報処理装置のデータ保守エンジンに、
元の情報をライブラリに保持される前記モノイドとなる情報カテゴリーに獲得・保守・破棄し、他の同情報処理装置との間で連携させ、
前記データ処理エンジンに、
三つの関係(証明可能(├), 包含関係(⊂), 所属関係(∈))を組み込み、探索処理を情報カテゴリー共通の演算要素と位置付け、三つの関係に各々、探索処理での機能や役割(探索処理の終了条件、情報カテゴリー内探索処理、情報カテゴリー間探索処理)を持たせ、
初期の評価対象情報では指定された関係があればその関係を、なければ ∈ 関係を設定した入力情報をライブラリに対して探索処理を開始し、
ライブラリに含まれる情報カテゴリーの元の式との照合を行い、
探索処理の結果として、密関係・疎関係・未確定のいずれかを返す、処理を実行させる、
情報処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016198162A JP6575478B2 (ja) | 2016-10-06 | 2016-10-06 | 情報処理装置、情報処理方法及び情報処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016198162A JP6575478B2 (ja) | 2016-10-06 | 2016-10-06 | 情報処理装置、情報処理方法及び情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018060406A JP2018060406A (ja) | 2018-04-12 |
JP6575478B2 true JP6575478B2 (ja) | 2019-09-18 |
Family
ID=61908532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016198162A Active JP6575478B2 (ja) | 2016-10-06 | 2016-10-06 | 情報処理装置、情報処理方法及び情報処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6575478B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220398355A1 (en) * | 2020-01-20 | 2022-12-15 | Mitsubishi Electric Corporation | Design support device and storage medium |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2755148A1 (en) * | 2013-01-15 | 2014-07-16 | Fujitsu Limited | Data storage system, and program and method for execution in a data storage system |
-
2016
- 2016-10-06 JP JP2016198162A patent/JP6575478B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018060406A (ja) | 2018-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240152542A1 (en) | Ontology mapping method and apparatus | |
US11625424B2 (en) | Ontology aligner method, semantic matching method and apparatus | |
Cui et al. | Benefits of ontologies in real time data access | |
AU2015258752A1 (en) | Putative ontology generating method and apparatus | |
US20170061001A1 (en) | Ontology browser and grouping method and apparatus | |
Peterfreund et al. | Complexity bounds for relational algebra over document spanners | |
Seipel et al. | Domain-specific languages in Prolog for declarative expert knowledge in rules and ontologies | |
Cano-Benito et al. | Toward the ontological modeling of smart contracts: a solidity use case | |
Ángel et al. | Automated modelling assistance by integrating heterogeneous information sources | |
Iglesias-Molina et al. | An ontological approach for representing declarative mapping languages | |
Koubarakis et al. | A retrospective on Telos as a metamodeling language for requirements engineering | |
Xu et al. | Application of rough concept lattice model in construction of ontology and semantic annotation in semantic web of things | |
Buey et al. | Automatic legal document analysis: Improving the results of information extraction processes using an ontology | |
Mosca et al. | Ontology learning from relational database: a review | |
Fillotrani et al. | Evidence-based lean conceptual data modelling languages | |
JP6575478B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
Kagal et al. | Gasping for air why we need linked rules and justifications on the semantic web | |
Mocan et al. | Solving semantic interoperability conflicts in cross-border e-government services | |
CN114880483A (zh) | 一种元数据知识图谱构建方法、存储介质及系统 | |
Boiret et al. | Privacy Operators for Semantic Graph Databases as Graph Rewriting | |
CN114648121A (zh) | 一种数据处理方法、装置、电子设备和存储介质 | |
Forcher et al. | Semantic logging: Towards explanation-aware das | |
Obraczka et al. | Big Data Integration for Industry 4.0 | |
Ramanujam et al. | Relationalization of provenance data in complex RDF reification nodes | |
Dutta et al. | AMV: Algorithm Metadata Vocabulary |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180409 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190507 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190708 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190723 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190805 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6575478 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |