Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7485035B2 - 推論装置、推論方法、及びプログラム - Google Patents
[go: Go Back, main page]

JP7485035B2 - 推論装置、推論方法、及びプログラム - Google Patents

推論装置、推論方法、及びプログラム Download PDF

Info

Publication number
JP7485035B2
JP7485035B2 JP2022531172A JP2022531172A JP7485035B2 JP 7485035 B2 JP7485035 B2 JP 7485035B2 JP 2022531172 A JP2022531172 A JP 2022531172A JP 2022531172 A JP2022531172 A JP 2022531172A JP 7485035 B2 JP7485035 B2 JP 7485035B2
Authority
JP
Japan
Prior art keywords
solution
hypothesis
inference
observation
logical formula
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
Application number
JP2022531172A
Other languages
English (en)
Other versions
JPWO2021255860A5 (ja
JPWO2021255860A1 (ja
Inventor
大地 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2021255860A1 publication Critical patent/JPWO2021255860A1/ja
Publication of JPWO2021255860A5 publication Critical patent/JPWO2021255860A5/ja
Application granted granted Critical
Publication of JP7485035B2 publication Critical patent/JP7485035B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/041Abduction
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/045Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、観測に対して仮説を導く推論をする推論装置、推論方法に関し、更には、これらを実現するためのプログラムに関する。
サイバーセキュリティでは、例えば、組織のシステムにある事象が観測された場合、観測された事象が、サイバー攻撃により観測されたのかを判定する必要がある。このような判定を実現する方法として、仮説推論を適用する方法が有望である。
仮説推論とは、論理式で与えられた推論知識(複数のルール)と観測された事象(観測事象)とを用いて、観測に対して最良な仮説を導く推論である。上述したシステムにサイバー攻撃が実行されたか否かの判定に仮説推論を適用した場合を例に説明する。そのシステムについてあらかじめ用意したルールと観測事象とを用いて仮説を導くことで、サイバー攻撃があったか否かを判定する。
さらに、仮説推論には、非特許文献1に開示されている、複数の仮説候補から最良の仮説を特定する重み付き仮説推論がある。重み付き仮説推論では、ルールに対して重みを割り当て、観測事象にはコストを割り当てる。次に、重み付き仮説推論では、重み付きのルールと、コスト付きの観測事象とに対して後ろ向き推論操作を行い、仮説候補を生成する。また、重み付き仮説推論では、単一化操作により仮説候補ごとにコストを算出し、算出したコストに基づいて生成した仮説候補から仮説を特定する。なお、コストが小さい仮説候補ほど良い仮説である。コストが最小の仮説候補を解仮説とも呼ぶ。
J. R. Hobbs, M. Stickel, P. Martin, and D. Edwards, "Interpretation as abduction", Artificial Intelligence, Vol. 63, pp. 69-142, 1993.
しかしながら、仮説推論では論理式を用いているため、数値的な関係性を扱うことができない。例えば、複数の証拠(観測事象)が得られたときに、証拠を得た時間が近いほど証拠同士に関連があると見做したい場合や、同じ種類の証拠が得られたときに、時刻が早い証拠を採用したい場合に、仮説推論に数値的な関係性を反映させたい。しかし、数値的な関係性は論理式で表現しにくい。
一つの側面として、仮説推論に数値的な関係性を反映できる推論装置、推論方法、及びプログラムを提供することを目的とする。
上記目的を達成するため、一つの側面における推論装置は、
観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する、仮説推論部と、
前記解仮説それぞれを評価基準に基づいて評価し、評価結果に応じて解仮説を選択する、選択部と、
を有することを特徴とする。
また、上記目的を達成するため、一側面における推論方法は、
観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する、仮説推論ステップと、
前記解仮説それぞれを評価基準に基づいて評価し、評価結果に応じて解仮説を選択する、選択ステップと、
を有することを特徴とする。
さらに、上記目的を達成するため、一側面におけるプログラムは
コンピュータに、
観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する、仮説推論ステップと、
前記解仮説それぞれを評価基準に基づいて評価し、評価結果に応じて解仮説を選択する、選択ステップと、
を実行させることを特徴とする。
一つの側面として、仮説推論に数値的な関係性を反映することができる。
図1は、重み付き仮説推論と数値的な関係性を説明するための図である。 図2は、重み付き仮説推論と数値的な関係性を説明するための図である。 図3は、推論装置の一例を説明するための図である。 図4は、推論装置を有するシステムの一例を説明するための図である。 図5は、実施例1の説明をするための図である。 図6は、実施例2の説明をするための図である。 図7は、実施例3の説明をするための図である。 図8は、推論装置の動作の一例を説明するための図である。 図9は、推論装置を実現するコンピュータの一例を説明するための図である。
はじめに、以降で説明する実施形態の理解を容易にするために概要を説明する。
以降の実施形態ではサイバーセキュリティを例に、図1、図2を用いて重み付き仮説推論では数値的な関係性を表現しにくいことを説明する。図1、図2は、重み付き仮説推論と数値的な関係性を説明するための図である。
なお、実施形態ではサイバーセキュリティを例に説明するが、実施形態で説明する技術はサイバーセキュリティ以外の分野にも適用できる。
まず、図1を用いて、重み付き仮説推論では、複数の観測リテラルが単一化された場合に、観測リテラルの項の数値が近い組み合わせを優先的に選ぶことができないことについて説明をする。
図1の例は、数1に示すようなルール(論理式の集合)と、数2に示すような証拠(観測事象:一階述語論理リテラルの連言)とを用いて、重み付き仮説推論をした結果を示している。リテラルは、素論理式又は素論理式に否定記号を付けたものである。素論理式が、例えば、p(t1,t2,…)である場合、pが述語記号であり、t1,t2,…が項である。なお、以降では、リテラルの項の値がアルファベットの小文字から始まる場合は変数、大文字から始まる場合は定数とする。図1の結果は、最小のコストになる解1、解2が導かれたことを示している。
(数1)
A(t1)0.0^ B(t2)0.0 => X(t1)
C(t2)0.0^ B(t3)0.0 => Y(t2)
X(t1)0.0^ Y(t2)0.0 => goal(n)
X, Y :攻撃手段
A, B, C :証拠
t1, t2 :時刻
goal :何らかの攻撃があったことを表すクエリ
リテラルの上付き文字:重み
(数2)
A(T1)100 ^ B(T1)100 ^ B(T2)100 ^ C(T2)100 ^ goal(N)1
T1, T2 :時刻
リテラルの上付き文字:コスト
図1の例では、まず、後ろ向き推論(矢印)を適用して、仮説を導くための開始を表すクエリである観測リテラルGoal(N)から、仮説リテラルX(t1)、Y(t2)を導く。次に、仮説リテラルX(t1)から仮説リテラルA(t1)、B(t2)を導くとともに、仮説リテラルY(t2)から仮説リテラルC(t2)、B(t3)を導く。なお、図1には示していないが、後ろ向き推論では、ルールと観測事象を用いて、新しい仮説を導き、コストを伝播させている。
続いて、図1の例では、単一化(破線)を行う。解1は、仮説リテラルA(t1)と観測リテラルA(T1)が同一、仮説リテラルB(t2)と観測リテラルB(T1)が同一、仮説リテラルC(t2)と観測リテラルC(T2)が同一、仮説リテラルB(t3)と観測リテラルB(T2)が同一であることを示している。また、解2は、仮説リテラルA(t1)と観測リテラルA(T1)が同一、仮説リテラルB(t2)と観測リテラルB(T2)が同一、仮説リテラルC(t2)と観測リテラルC(T2)が同一、仮説リテラルB(t3)と観測リテラルB(T1)が同一であることを示している。
しかし、図1の例では、最低のコストとなる解1、解2が生成される。解1、解2が生成される理由は、現状では、証拠A、B、Cが、攻撃手段Xから導かれた証拠A、B、Cのいずれかと同一であると見做すか、攻撃手段Yから導かれた証拠A、B、Cのいずれかと同一であると見做すかしかできないためである。
解1と解2とを比較すると、解1では、観測リテラルA(T1)と観測リテラルB(T1)の項がともにT1であり、観測リテラルC(T2)と観測リテラルB(T2)の項がともにT2であるのに対して、解2では、観測リテラルA(T1)と観測リテラルB(T2)の項が異なり、観測リテラルC(T2)と観測リテラルB(T1)の項も異なる。このような場合、証拠が観測された時刻が近い組み合わせを優先的に選択したい、すなわち観測リテラルの項が同じ解1を最良とするのが適当である。
そこで、論理式を用いて、解1を最良とする方法が考えられる。例えば、数3に示すようなルールを用意する。数3では、X(n)の証拠としてA(t1)、B(t2)を要求するものであるが、更に、項の値が同じ場合(t1 = t2)と異なる場合(t1 ! = t2)についても考慮している。
(数3)
A(t1) ^ B(t2) ^ (t1 = t2) => X(n)
A(t1) ^ B(t2) ^ (t1 ! = t2) => X(n)
! :否定
また、数3における上段のルールを用いた方が、数3における下段のルールを用いた場合より評価関数の評価がよくなるように重みを調整する。
ところが、ルールの前件のリテラルの数を増やすと、ルールの数が爆発的に増加する。例えば、前件のリテラル(A(t1)、B(t2)、C(t3))の数を三つにしただけで、項(t1、t2、t3)の同異を考慮すると、数4に示すようにルールの数は増加する。
(数4)
A(t1) ^ B(t2) ^ C(t3) ^ (t1 = t2) ^ (t2 = t3) => X(n)
A(t1) ^ B(t2) ^ C(t3) ^ (t1 ! = t2) ^ (t2 = t3) => X(n)
A(t1) ^ B(t2) ^ C(t3) ^ (t1 = t2) ^ (t2 ! = t3) => X(n)
A(t1) ^ B(t2) ^ C(t3) ^ (t1 = t3) ^ (t2 ! = t3) => X(n)
A(t1) ^ B(t2) ^ C(t3) ^ (t1 ! = t2) ^ (t2 ! = t3) ^ (t3 ! = t1) => X(n)
そのため、ルールの数が増えると解の探索空間が広がり、推論の計算時間が増加する。また、ルールの数が増えると、ルールをメンテナンスするコストも増加する。
さらに、上述したように論理式を用いた場合、論理式は真偽しか扱えないので、項が同一かどうかしか扱えない。そのため、時刻の近さという連続的な数値を扱えない。したがって、複数の観測リテラルが単一化される場合に、観測リテラルの項の値が近い組み合わせを優先的に選ぶことができない。
次に、図2を用いて、重み付き仮説推論だけでは、攻撃手段を、初出順に並べることができないことについて説明をする。サイバー攻撃では、複数の攻撃手段を用いて、同じ攻撃手段が繰り返し実行されるため、攻撃手段を初出順に並べることで攻撃の進行具合を把握したいというニーズがある。
図2の例は、攻撃手段X、Yを、X→Y→Xの順に実行された場合において、数1に示すようなルールと、数5に示すような証拠(観測事象)とを用いて、重み付き仮説推論をした結果を示している。図2の例では、最小のコストになる解3、解4が導かれたことを示している。
(数5)
A(T1)100^ B(T1)100 ^ B(T2)100 ^ C(T2)100 ^ goal(N)1
T1 < T2 < T3
T1, T2, T3 :時刻
図2の例では、まず、後ろ向き推論(矢印)を適用して、クエリである観測リテラルGoal(N)から、仮説リテラルX(t1)、Y(t2)を導く。次に、仮説リテラルX(t1)から仮説リテラルA(t1)、B(t2)を導くとともに、仮説リテラルY(t2)から仮説リテラルC(t2)、B(t3)を導く。なお、図2に示していないが、後ろ向き推論では、ルールと観測事象を用いて、新しい仮説を導き、コストを伝播させる。
続いて、図2の例では、単一化(破線)を行い解3、解4を得る。解3は、仮説リテラルA(t1)と観測リテラルA(T1)が同一、仮説リテラルC(t2)と観測リテラルC(T2)が同一であることを示している。また、解4は、仮説リテラルA(t1)と観測リテラルA(T3)が同一、仮説リテラルC(t2)と観測リテラルC(T2)が同一であることを示している。
しかし、最小のコストとなる解3、解4が生成される。解3と解4が生成される理由は、図2の例では、証拠Aが、攻撃手段Xが実行された時刻t1において観測されるというルールと、証拠Cが、攻撃手段Yが実行された時刻t2において観測されるというルールしかないからである。
さらに、観測である証拠A、B、Cが、攻撃手段Xから導かれた証拠A、B、Cのいずれかと同一であると見做すか、攻撃手段Yから導かれた証拠A、B、Cのいずれかと同一であると見做すかしかできないためである。
解3と解4とを比較すると、解3では、観測リテラルA(T1)の項がT1であり、観測リテラルC(T2)の項がT2であるのに対して、解4では、観測リテラルA(T3)の項がT3であり、観測リテラルC(T2)の項がT2である。このような場合、実際には、攻撃手段X、YがX→Y→Xの順に実行されているので、初出順X→Yに並べられた解3を最良とするのが適当である。なお、解4は、攻撃手段X、YがY→Xの順に並べられているので適当ではない。
そこで、論理式を用いて、解3を最良とする方法が考えられる。例えば、ルールに攻撃手段が実行される順番(時刻)について考慮する。
ところが、ルールの前件のリテラルの数が増えるとルールの数が爆発的に増加する。例えば、前件のリテラル(A(t1)、B(t2)、C(t2)、B(t3))の数を四つにしただけでも、t1、t2、t3の順番(時間的な順番)を考慮すると、ルールの数は増加する。
また、時間的な順番を増やせば、更にルールの数は増加する。そのため、ルールの数が増えると解の探索空間が広がり、推論の計算時間が増加する。また、ルールの数が増えると、ルールをメンテナンスするコストも増加する。
さらに、上述したように論理式を用いた場合、論理式は真偽しか扱えないので、項が同一かどうかしか扱えない。そのため、時間的な順番という連続的な数値を扱えない。したがって、複数の観測リテラルが単一化される場合に、初出順を優先的に選ぶことができない。
このようなプロセスを経て、発明者は、非特許文献1などに開示されている重み付け推論だけでは、数値的な関係性を反映できないという課題を見出した。それとともに係る課題を解決する手段を導出するに至った。
すなわち、発明者は、複数の観測リテラルが単一化される場合に、観測リテラルの項の値が近い組み合わせを優先的に選ぶ手段、又は、攻撃手段を初出順に並べた組み合わせを優先的に選ぶ手段を導出するに至った。その結果、仮説推論に数値的な関係性を反映できるようにした。
以下、図面を参照して実施形態について説明する。なお、以下で説明する図面において、同一の機能又は対応する機能を有する要素には同一の符号を付し、その繰り返しの説明は省略することもある。
(実施形態)
図3を用いて、実施形態における推論装置の構成について説明する。図3は、推論装置の一例を説明するための図である。
[装置構成]
図3に示す推論装置10は、推論を実行する装置である。また、図3に示すように、推論装置10は、仮説推論部11と、選択部12とを有する。
このうち、仮説推論部11は、観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する。選択部12は、解仮説それぞれを評価基準に基づいて評価をし、評価結果に基づいて解仮説を選択する。
実施形態においては、以上のように仮説推論部11と選択部12とを用いることで、仮説推論に数値的な関係性を反映できる。
[システム構成]
図4を用いて、実施形態における推論装置10の構成をより具体的に説明する。図4は、推論装置を有するシステムの一例を説明するための図である。
図4に示すように、実施形態におけるシステムは、推論装置10と、記憶装置20と、出力装置30とを有する。推論装置10と記憶装置20と出力装置30とは、ネットワークを介して接続されている。
推論装置10は、仮説推論部11と、選択部12と、出力情報生成部13とを有する。推論装置10は、例えば、CPU(Central Processing Unit)、又はFPGA(Field-Programmable Gate Array)などのプログラマブルなデバイス、又はそれら両方を搭載したサーバコンピュータ、パーソナルコンピュータなどの情報処理装置である。なお、推論装置10の詳細については後述する。
記憶装置20は、観測論理式21と推論知識22とを有する。記憶装置20は、例えば、データベース、又はストレージ、又はサーバコンピュータのなどである。観測論理式21は、観測された事実を論理式で表現したものである(一階述語論理リテラルの連言)。推論知識22は、論理式で表現された複数のルール(論理式の集合)を有する。
図4の例では、記憶装置20は、推論装置10の外部に設けられているが、推論装置10の内部に設けてもよい。また、図4の例では、記憶装置20は一つであるが、記憶装置20は複数の記憶装置を用いて構成してもよい。その場合、観測論理式21と推論知識22とを分散させて記憶してもよい。
出力装置30は、出力情報生成部13により、出力可能な形式に変換された、後述する出力情報を取得し、その出力情報に基づいて、生成した画像及び音声などを出力する。出力装置30は、例えば、液晶、有機EL(Electro Luminescence)、CRT(Cathode Ray Tube)を用いた画像表示装置などである。さらに、画像表示装置は、スピーカなどの音声出力装置などを備えていてもよい。なお、出力装置30は、プリンタなどの印刷装置でもよい。
推論装置について説明をする。
仮説推論部11は、具体的には、図4に示す記憶装置20に記憶されている観測論理式21に、図4に示す記憶装置20に記憶されている推論知識22を適用して、重み付き仮説推論を実行し、コストが同じ複数の解仮説(同点解)を出力する。このように、仮説推論部11が、コストが同じ同点解をすべて出力することで、観測リテラルのありえる組み合わせを網羅できる。
選択部12は、具体的には、複数の解仮説(同点解)が出力された場合、出力された解仮説それぞれを、数値的な関係性を表す評価関数を用いて評価をする。続いて、選択部12は、評価結果とあらかじめ設定された条件とを比較して、条件に一致する評価結果に対応する解仮説を選択する。例えば、条件が最小値である場合、選択部12は、複数の同点解それぞれの評価結果(値)を参照して、評価結果が最小値の解仮説を選択する。
出力情報生成部13は、仮説推論の結果、評価関数、解仮説ごとの評価結果などを、出力装置30に出力させるための出力情報を生成し、出力装置30へ出力する。
[実施例1]
図5は、実施例1の説明をするための図である。図5には、仮説推論部11が、解仮説として解K1、解K2、解K3を出力した例が示されている。詳細には、仮説リテラルB(t2)、B(t3)と単一化できる観測リテラルB(T1)、B(T2)、B(T3)の組み合わせが、解仮説として解K1、解K2、解K3が出力されている。なお、観測リテラルB(T1)、B(T2)、B(T3)は同じコストである。
また、図5では、選択部12が、解K1、解K2、解K3それぞれについて評価関数を算出したことを示している。図5では、評価関数を用いて算出した評価結果として、解K1の評価結果が30.2、解K2の評価結果が5.7、解K3の評価結果が102.2であることが示されている。
そして、条件が最小値であれば、図5において解K2の評価結果が最小であるので、選択部12は、解K2を望ましい解として選択する。
[実施例2]
図6は、実施例2の説明をするための図である。実施例2では、攻撃手段Xに関連する証拠A、Bと、攻撃手段Yに関連する証拠C、Bとについて、それぞれが近い時刻になる仮説を得る。
実施例2では、仮説推論部11が、数6に示すようなルールと、数7に示すような証拠(観測事象)とを用いて、重み付き仮説推論を実行する。その結果、図6に示すような複数の解C1、解C2・・・が得られたとする。
(数6)
A(t1)0.0 ^ B(t2)0.0=> X(t1)
C(t2)0.0 ^ B(t3)0.0=> Y(t2)
X(t1)0.0 ^ Y(t2)0.0=> goal(n)
(数7)
A(T1)100 ^ B(T1)100^ B(T2)100 ^ C(T2)100 ^ C(T3)100 ^ goal(N)1
T1 < T2 < T3
次に、選択部12は、複数の解C1、解C2・・・ごとに評価関数を用いて評価結果を算出し、評価結果が条件に一致する解を選択する。
評価関数としては、例えば、近い時刻になるような仮説を得る場合には、評価結果R =(Xに関連する証拠A、Bの時刻の近さ)+(Yに関連する証拠B、Cの時刻の近さ)のような評価関数を用いて評価をする。図6の例であれば、数8に示すような評価結果R(R1、R2・・・)が得られる。
(数8)
R1 = (T1-T2)2 + (T3-T1)2 > 0
R2 = (T1-T1)2 + (T2-T2)2 = 0
・・・
続いて、選択部12は、評価結果(評価値:R1、R2・・・)のうち、あらかじめ設定された条件と一致する評価値を選択する。例えば、条件が最小値である場合、選択部12は、評価値R2に対応する解C2を選択する。
実施例2によれば、攻撃手段Xに関連する証拠A、Bと、攻撃手段Yに関連する証拠C、Bとについて、それぞれが近い時刻になる仮説を得ることができる。
[実施例3]
図7は、実施例3の説明をするための図である。実施例3では、攻撃手段XとYが初出順になる仮説を得る。
実施例3では、仮説推論部11が、数9に示すようなルールと、数10に示すような証拠(観測事象)とを用いて、重み付き仮説推論を実行する。その結果、図7に示すような複数の解D1、解D2・・・解が得られたとする。
(数9)
A(t1)0.0 ^ B(t2)0.0=> X(t1)
C(t2)0.0 ^ B(t3)0.0=> Y(t2)
X(t1)0.0 ^ Y(t2)0.0=> goal(n)
(数10)
A(T1)100 ^ A(T3)100 ^ C(T2)100 ^ C(T4)100 ^ goal(N)1
T1 < T2 < T3 < T4
選択部12は、複数の解D1、解D2・・・ごとに評価関数を用いて評価結果を求め、評価結果が条件に一致する解を選択する。
評価関数としては、例えば、攻撃手段XとYが初出順になるような仮説を得る場合には、評価結果R =(X部分の時刻)+(Y部分の時刻)のような評価関数を用いて評価をする。図7の例であれば、数11に示すような評価結果R(R1、R2・・・)が得られる。
(数11)
R1 = (T3) + (T2)
R2 = (T1) + (T2)
・・・
続いて、選択部12は、評価結果(評価値:R1、R2・・・)のうち、あらかじめ設定された条件に一致する評価値を選択する。例えば、条件が最小値である場合、選択部12は、評価値R2に対応する解D2を選択する。
実施例3によれば、攻撃手段XとYが初出順になる仮説を得ることができる。
[装置動作]
次に、実施形態における推論装置の動作について図8を用いて説明する。図8は、推論装置の動作の一例を説明するための図である。以下の説明においては、適宜図を参照する。また、実施形態では、推論装置を動作させることによって、推論方法が実施される。よって、実施形態における推論方法の説明は、以下の推論装置の動作説明に代える。
図8に示すように、最初に、仮説推論部11は、観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する(ステップA1)。
具体的には、ステップA1において、仮説推論部11は、図4に示す記憶装置20に記憶されている観測論理式に、図4に示す記憶装置20に記憶されている推論知識を適用して、重み付き仮説推論を実行し、コストが同じ複数の解仮説(同点解)を出力する。このように、仮説推論部11は、コストが同じ同点解をすべて出力することで、観測リテラルのありえる組み合わせを網羅できる。
次に、選択部12は、複数の解仮説が出力された否かを判定する(ステップA2)。複数の解仮説が出力されている場合(ステップA2:Yes)、選択部12は、解仮説ごとに評価関数を用いて評価結果を算出する(ステップA3)。解仮説が一つの場合(ステップA2:No)、選択部12は、当該解仮説を望ましい解とする。
選択部12は、複数の解仮説(同点解)が出力された場合、出力された解仮説それぞれを、数値的な関係性を表す評価関数を用いて評価をし、あらかじめ設定された条件に一致する評価結果に対応する解仮説を選択する(ステップA4)。例えば、条件が最小値である場合、選択部12は、複数の同点解それぞれの評価結果(値)を参照して、最小値の評価結果に対応する解仮説を選択する。
[本実施形態の効果]
以上のように実施形態によれば、仮説推論で得られた結果を用いて、論理的整合性を保持したまま、仮説推論に数値的な関係性を反映できる。
また、ルールの数を増やさないので、解の探索空間が広がらないため、ルールを増やす場合と比べて、推論の計算時間を抑制できる。また、一般に、作成したルールがお互いに矛盾していないかをメンテナンスする必要があるが、ルールの数を増やさないことによりルールをメンテナンスするコストも抑制できる。
また、仮説推論を行った後で数値的な関係性を評価するので、数値的な関係性についての評価関数は論理推論の制約を受けずに自由に設計することができる。
[プログラム]
実施形態におけるプログラムは、コンピュータに、図8に示すステップA1からA4を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施形態における推論装置と推論方法とを実現することができる。この場合、コンピュータのプロセッサは、仮説推論部11、選択部12、出力情報生成部13として機能し、処理を行なう。
また、実施形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、仮説推論部11、選択部12、出力情報生成部13のいずれかとして機能してもよい。
[物理構成]
ここで、実施形態におけるプログラムを実行することによって、推論装置を実現するコンピュータについて図9を用いて説明する。図9は、実施形態における推論装置を実現するコンピュータの一例を説明するための図である。
図9に示すように、コンピュータ110は、CPU(Central Processing Unit)111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU(Graphics Processing Unit)、又はFPGAを備えていてもよい。
CPU111は、記憶装置113に格納された、本実施形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであってもよい。なお、記録媒体120は、不揮発性記録媒体である。
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置があげられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体があげられる。
なお、本実施形態における推論装置10は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、推論装置10は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
[付記]
以上の実施形態に関し、更に以下の付記を開示する。上述した実施形態の一部又は全部は、以下に記載する(付記1)から(付記9)により表現することができるが、以下の記載に限定されるものではない。
(付記1)
観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する、仮説推論部と、
前記解仮説それぞれを評価基準に基づいて評価をし、評価結果に応じて解仮説を選択する、選択部と、
を有する推論装置。
(付記2)
付記1に記載の推論装置であって、
前記選択部は、前記解仮説それぞれを、数値的な関係性を表す評価関数を用いて評価し、評価結果があらかじめ設定された条件に一致する解仮説を選択する
推論装置。
(付記3)
付記2に記載の推論装置であって、
前記選択部は、前記評価関数を用いて、同じ仮説リテラルに関連する観測リテラルの項を評価し、前記条件に一致する解仮説を選択する
推論装置。
(付記4)
観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する、仮説推論ステップと、
前記解仮説それぞれを評価基準に基づいて評価をし、評価結果に基づいて解仮説を選択する、選択ステップと、
を有する推論方法。
(付記5)
付記4に記載の推論方法であって、
前記選択ステップにおいて、前記解仮説それぞれを、数値的な関係性を表す評価関数を用いて評価し、評価結果があらかじめ設定された条件に一致する解仮説を選択する
推論方法。
(付記6)
付記5に記載の推論方法であって、
前記選択ステップにおいて、前記評価関数を用いて、同じ仮説リテラルに関連する観測リテラルの項を評価し、前記条件に一致する解仮説を選択する
推論方法。
(付記7)
コンピュータに、
観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する、仮説推論ステップと、
前記解仮説それぞれを評価基準に基づいて評価をし、評価結果に基づいて解仮説を選択する、選択ステップと、
を実行させる命令を含むプログラム。
(付記8)
付記7に記載のプログラムであって、
前記選択ステップにおいて、前記解仮説それぞれを、数値的な関係性を表す評価関数を用いて評価し、評価結果があらかじめ設定された条件に一致する解仮説を選択する
プログラム
(付記9)
付記8に記載のプログラムであって、
前記選択ステップにおいて、前記評価関数を用いて、同じ仮説リテラルに関連する観測リテラルの項を評価し、前記条件に一致する解仮説を選択する
プログラム
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
以上のように本発明によれば、仮説推論に数値的な関係性を反映することができる。本発明は、仮説推論が必要な分野において有用である。
10 推論装置
11 仮説推論部
12 選択部
13 出力情報生成部
20 記憶装置
21 観測論理式
22 推論知識
30 出力装置
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス

Claims (6)

  1. 観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力する、仮説推論手段と、
    前記解仮説それぞれを評価基準に基づいて評価をし、評価結果に応じて解仮説を選択する、選択手段と、を有し、
    前記選択手段は、前記解仮説それぞれを、数値的な関係性を表す評価関数を用いて評価し、評価結果があらかじめ設定された条件に一致する解仮説を選択する
    推論装置。
  2. 請求項に記載の推論装置であって、
    前記選択手段は、前記評価関数を用いて、同じ仮説リテラルに関連する観測リテラルの項を評価し、前記条件に一致する解仮説を選択する
    推論装置。
  3. 情報処理装置が、
    観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力し、
    前記解仮説それぞれを評価基準に基づいて評価をし、評価結果に基づいて解仮説を選択し、
    前記選択において、前記解仮説それぞれを、数値的な関係性を表す評価関数を用いて評価し、評価結果があらかじめ設定された条件に一致する解仮説を選択する
    推論方法。
  4. 請求項に記載の推論方法であって、
    前記選択において、前記評価関数を用いて、同じ仮説リテラルに関連する観測リテラルの項を評価し、前記条件に一致する解仮説を選択する
    推論方法。
  5. 観測された事実を論理式で表現した観測論理式に、論理式で表現した複数のルールを有する推論知識を適用して仮説推論を実行し、コストが同じ複数の解仮説を出力し、
    前記解仮説それぞれを評価基準に基づいて評価をし、評価結果に基づいて解仮説を選択し、
    前記選択において、前記解仮説それぞれを、数値的な関係性を表す評価関数を用いて評価し、評価結果があらかじめ設定された条件に一致する解仮説を選択する
    処理をコンピュータに実行させる命令を含むプログラム。
  6. 請求項に記載のプログラムであって、
    前記選択において、前記評価関数を用いて、同じ仮説リテラルに関連する観測リテラルの項を評価し、前記条件に一致する解仮説を選択する
    プログラム。
JP2022531172A 2020-06-17 2020-06-17 推論装置、推論方法、及びプログラム Active JP7485035B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/023768 WO2021255860A1 (ja) 2020-06-17 2020-06-17 推論装置、推論方法、及びコンピュータ読み取り可能な記録媒体

Publications (3)

Publication Number Publication Date
JPWO2021255860A1 JPWO2021255860A1 (ja) 2021-12-23
JPWO2021255860A5 JPWO2021255860A5 (ja) 2023-03-01
JP7485035B2 true JP7485035B2 (ja) 2024-05-16

Family

ID=79267664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022531172A Active JP7485035B2 (ja) 2020-06-17 2020-06-17 推論装置、推論方法、及びプログラム

Country Status (3)

Country Link
US (1) US20230237351A1 (ja)
JP (1) JP7485035B2 (ja)
WO (1) WO2021255860A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20250148323A1 (en) * 2022-03-07 2025-05-08 Nec Corporation Information processing apparatus, information processing method, and computer-readable recording medium
WO2025203444A1 (ja) * 2024-03-28 2025-10-02 株式会社Subaru 運転支援装置、車両および運転支援方法
WO2025203445A1 (ja) * 2024-03-28 2025-10-02 株式会社Subaru 運転支援装置、車両および運転支援方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011253270A (ja) 2010-06-01 2011-12-15 Nippon Telegr & Teleph Corp <Ntt> 推論装置、推論プログラム
JP2016091039A (ja) 2014-10-29 2016-05-23 株式会社デンソー 危険予測装置、運転支援システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0328929A (ja) * 1989-06-27 1991-02-07 Tokyo Electric Power Co Inc:The 推論方法及び推論装置並びに定理証明方法及び定理証明装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011253270A (ja) 2010-06-01 2011-12-15 Nippon Telegr & Teleph Corp <Ntt> 推論装置、推論プログラム
JP2016091039A (ja) 2014-10-29 2016-05-23 株式会社デンソー 危険予測装置、運転支援システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
村川 賀彦 ほか,アブダクションにおける仮説選択の学習機構について,1996年度人工知能学会全国大会(第10回)論文集,1996年,pp. 135-138

Also Published As

Publication number Publication date
JPWO2021255860A1 (ja) 2021-12-23
US20230237351A1 (en) 2023-07-27
WO2021255860A1 (ja) 2021-12-23

Similar Documents

Publication Publication Date Title
US20230186097A1 (en) Methods and apparatus to defend against adversarial machine learning
CN114207635A (zh) 使用元建模对机器学习和深度学习模型进行快速准确的超参数优化
JP7127688B2 (ja) 仮説推論装置、仮説推論方法、及びプログラム
JP7485035B2 (ja) 推論装置、推論方法、及びプログラム
JP7485034B2 (ja) 推論装置、推論方法、及びプログラム
CN115428404B (zh) 防火墙洞察处理与机器学习
JP7523558B2 (ja) ハイブリッド推論を用いたグラフ・コンピューティングのための方法およびシステム
KR102074909B1 (ko) 소프트웨어 취약점 분류 장치 및 방법
WO2023056823A1 (en) Neuro-symbolic reinforcement learning with first-order logic
WO2022012347A1 (en) Predictive models having decomposable hierarchical layers configured to generate interpretable results
Tokmak et al. Boosting the visibility of services in microservice architecture
Palša et al. Using machine learning algorithms to detect malware by applying static and dynamic analysis methods
Eykholt et al. {URET}: Universal robustness evaluation toolkit (for evasion)
US12326940B2 (en) Graph exploration framework for adversarial example generation
JP7485036B2 (ja) 推論装置、推論方法、及びプログラム
Liu et al. DGA botnet detection method based on capsule network and k-means routing
JP7529022B2 (ja) 情報処理装置、情報処理方法、及びプログラム
WO2020044414A1 (ja) 仮説推論装置、仮説推論方法、及びコンピュータ読み取り可能な記録媒体
JP7103987B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP7127686B2 (ja) 仮説推論装置、仮説推論方法、及びプログラム
Zhu et al. TERM: Tree Ensemble Models for Interpretable Rule Mining
JP7616347B2 (ja) 推論分析装置、推論装置、推論分析方法、及びプログラム
Shi et al. Dynamic Adaptive Fuzzy Petri Nets for Knowledge Representation and Reasoning
US20240232685A9 (en) Counterfactual background generator
Song Towards Robust Deep Neural Network Architectures for Malware Classification

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221206

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240313

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: 20240402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240415

R150 Certificate of patent or registration of utility model

Ref document number: 7485035

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150