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
JP7493813B2 - Explanation generation device, explanation generation method and program - Google Patents
[go: Go Back, main page]

JP7493813B2 - Explanation generation device, explanation generation method and program - Google Patents

Explanation generation device, explanation generation method and program Download PDF

Info

Publication number
JP7493813B2
JP7493813B2 JP2021536996A JP2021536996A JP7493813B2 JP 7493813 B2 JP7493813 B2 JP 7493813B2 JP 2021536996 A JP2021536996 A JP 2021536996A JP 2021536996 A JP2021536996 A JP 2021536996A JP 7493813 B2 JP7493813 B2 JP 7493813B2
Authority
JP
Japan
Prior art keywords
neural network
explanation
model
linear sum
structural transformation
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
JP2021536996A
Other languages
Japanese (ja)
Other versions
JPWO2021020273A1 (en
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.)
Yokohama National University NUC
Original Assignee
Yokohama National University NUC
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 Yokohama National University NUC filed Critical Yokohama National University NUC
Publication of JPWO2021020273A1 publication Critical patent/JPWO2021020273A1/ja
Application granted granted Critical
Publication of JP7493813B2 publication Critical patent/JP7493813B2/en
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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Feedback Control In General (AREA)

Description

本発明は、説明生成装置、説明生成方法およびプログラムに関する。
本願は、2019年7月26日に、日本に出願された特願2019-137811号に基づき優先権を主張し、その内容をここに援用する。
The present invention relates to an explanation generation device, an explanation generation method, and a program.
This application claims priority based on Japanese Patent Application No. 2019-137811, filed on July 26, 2019, the contents of which are incorporated herein by reference.

機械学習の技術の1つにディープラーニング(Deep Learning)等のニューラルネットワーク(Neural Network)がある(例えば、特許文献1)。One of the machine learning techniques is neural networks such as deep learning (for example, Patent Document 1).

日本国特開2019-105883号公報Japanese Patent Publication No. 2019-105883

一般的にニューラルネットワークの構造を解析しても、ニューラルネットワークが行う処理を自然言語で説明することはできない。特に、複雑な構造のニューラルネットワークの構造を解析しても、ニューラルネットワークが行う処理を自然言語で説明することはできない。
例えばニューラルネットワークが行う処理の正当性を判定する場合など、ニューラルネットワークが行う処理を自然言語で説明できることが好ましい。
In general, even if the structure of a neural network is analyzed, it is not possible to explain the processing that the neural network performs in natural language. In particular, even if the structure of a neural network with a complex structure is analyzed, it is not possible to explain the processing that the neural network performs in natural language.
For example, when judging the validity of a process performed by a neural network, it is preferable to be able to explain the process performed by the neural network in natural language.

本発明の目的の一例は、ニューラルネットワークが行う処理の自然言語による説明を取得することができる、説明生成装置、説明生成方法およびプログラムを提供することである。 One example of the objectives of the present invention is to provide an explanation generation device, an explanation generation method, and a program that can obtain a natural language explanation of the processing performed by a neural network.

本発明の第1の態様によれば、説明生成装置は、ニューラルネットワークの構造を簡単化する構造変換を行い、構造変換後のニューラルネットワークに基づいて、構造変換前のニューラルネットワークの出力ノードに応じた線形和の形式のモデルを生成する線形和取得部と、前記線形和の形式のモデルに基づいて、構造変換前のニューラルネットワークが行う処理の自然言語による説明を生成する説明生成部と、を備える。 According to a first aspect of the present invention, an explanation generation device includes a linear sum acquisition unit that performs a structural transformation to simplify the structure of a neural network, and generates a model in the form of a linear sum corresponding to the output nodes of the neural network before the structural transformation based on the neural network after the structural transformation, and an explanation generation unit that generates, based on the model in the form of a linear sum, an explanation in natural language of the processing performed by the neural network before the structural transformation .

前記線形和取得部は、前記ニューラルネットワークへの入力データにおける特徴量を示す入力変数を含む前記モデルを生成し、前記説明生成部は、前記特徴量の自然言語による説明を用いて、前記ニューラルネットワークが行う処理の自然言語による説明を生成するようにしてもよい。The linear sum acquisition unit may generate the model including input variables indicating features in the input data to the neural network, and the explanation generation unit may use a natural language description of the features to generate a natural language explanation of the processing performed by the neural network.

本発明の第2の態様によれば、説明生成方法は、コンピュータが、ニューラルネットワークの構造を簡単化する構造変換を行い、構造変換後のニューラルネットワークに基づいて、構造変換前のニューラルネットワークの出力ノードに応じた線形和の形式のモデルを生成することと、前記線形和の形式のモデルに基づいて、構造変換前のニューラルネットワークが行う処理の自然言語による説明を生成することと、を含む。 According to a second aspect of the present invention, an explanation generating method includes a computer performing a structural transformation to simplify the structure of a neural network, generating a model in the form of a linear sum corresponding to output nodes of the neural network before the structural transformation based on the neural network after the structural transformation, and generating a natural language explanation of the processing performed by the neural network before the structural transformation based on the model in the form of a linear sum.

本発明の第3の態様によれば、プログラムは、コンピュータに、ニューラルネットワークの構造を簡単化する構造変換を行い、構造変換後のニューラルネットワークに基づいて、構造変換前のニューラルネットワークの出力ノードに応じた線形和の形式のモデルを生成することと、前記線形和の形式のモデルに基づいて、構造変換前のニューラルネットワークが行う処理の自然言語による説明を生成することと、を実行させるためのプログラムである。
According to a third aspect of the present invention, a program is provided for causing a computer to perform a structural transformation to simplify the structure of a neural network, and based on the structurally transformed neural network, generate a model in the form of a linear sum corresponding to the output nodes of the neural network before the structural transformation, and generate, based on the model in the form of a linear sum, a natural language explanation of the processing performed by the neural network before the structural transformation .

本発明によれば、ニューラルネットワークが行う処理の自然言語による説明を取得することができる。 According to the present invention, it is possible to obtain a natural language description of the processing performed by a neural network.

実施形態に係る説明生成装置の機能構成の例を示す概略ブロック図である。1 is a schematic block diagram illustrating an example of a functional configuration of an explanation generating device according to an embodiment. 実施形態に係る説明対象のニューラルネットワークの出力ノードにおける重み付け合計の例を示す図である。FIG. 13 illustrates an example of weighted sums at output nodes of an illustrative neural network according to an embodiment. 実施形態に係る説明生成装置が取得するモデルの例を示す図である。FIG. 2 is a diagram illustrating an example of a model acquired by the explanation generation device according to the embodiment. 実施形態に係る線形和取得部が行う処理の手順の例を示す図である。11 is a diagram illustrating an example of a procedure of a process performed by a linear sum acquisition unit according to the embodiment. FIG. 実施形態に係る線形和取得部が行う処理の手順の例を示す図である。11 is a diagram illustrating an example of a procedure of a process performed by a linear sum acquisition unit according to the embodiment. FIG.

以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、実施形態に係る説明生成装置の機能構成の例を示す概略ブロック図である。図1に示す構成で、説明生成装置100は、通信部110と、表示部120と、操作入力部130と、記憶部180と、制御部190とを備える。制御部190は、線形和取得部191と、説明生成部194と、ニューラルネットワーク実行部195とを備える。線形和取得部191は、構造変換部192と、変数処理部193とを備える。
The following describes embodiments of the present invention, but the following embodiments do not limit the scope of the invention. Furthermore, not all of the combinations of features described in the embodiments are necessarily essential to the solution of the invention.
Fig. 1 is a schematic block diagram showing an example of a functional configuration of an explanation generating device according to an embodiment. In the configuration shown in Fig. 1, the explanation generating device 100 includes a communication unit 110, a display unit 120, an operation input unit 130, a storage unit 180, and a control unit 190. The control unit 190 includes a linear sum acquisition unit 191, an explanation generating unit 194, and a neural network execution unit 195. The linear sum acquisition unit 191 includes a structure conversion unit 192 and a variable processing unit 193.

説明生成装置100は、説明対象のニューラルネットワーク(Neural Network;NN)の自然言語による説明を生成する。
ここで、一般的にニューラルネットワークの構造を解析しても、ニューラルネットワークが行う処理を自然言語で説明することはできない。特に、深層回路(Deep Neural Network;DNN)など複雑な構造のニューラルネットワークの構造を解析しても、ニューラルネットワークが行う処理を自然言語で説明することはできない。
一方、ニューラルネットワーク等の機械学習を自然言語で説明できるものにすることへのニーズがある。例えば、ニューラルネットワークによる計算結果の妥当性を評価するために、ニューラルネットワークが計算結果を演算する処理を自然言語で説明できることが好ましい。
The explanation generation device 100 generates an explanation in natural language of a neural network (NN) to be explained.
Generally, even if the structure of a neural network is analyzed, the processing performed by the neural network cannot be explained in natural language. In particular, even if the structure of a neural network with a complex structure such as a deep neural network (DNN) is analyzed, the processing performed by the neural network cannot be explained in natural language.
On the other hand, there is a need to make machine learning such as neural networks explainable in natural language. For example, in order to evaluate the validity of a calculation result by a neural network, it is preferable to be able to explain in natural language the process by which the neural network calculates the calculation result.

そこで、説明生成装置100は、説明対象のニューラルネットワークが行う処理の説明を自然言語で生成する。
説明を生成するために、説明生成装置100は、説明対象のニューラルネットワークの出力ノード(Node)に応じた線形和の形式のモデルを取得する。ここでいうニューラルネットワークの出力ノードに応じた線形和の形式のモデルは、ニューラルネットワークの出力ノードにおける重み付け合計の計算値と同じ値、または、当該計算値の近似値を出力する重み付け合計を計算するモデルである。線形和の形式のモデルを、単にモデルとも称する。
Therefore, the explanation generation device 100 generates an explanation in natural language of the processing performed by the neural network to be explained.
To generate an explanation, the explanation generating device 100 obtains a model in the form of a linear sum according to the output nodes (Nodes) of the neural network to be explained. The model in the form of a linear sum according to the output nodes of the neural network is a model that calculates a weighted sum that is the same as or an approximation of the calculated value of the weighted sum at the output nodes of the neural network. The model in the form of a linear sum is also simply called a model.

図2は、説明対象のニューラルネットワークの出力ノードにおける重み付け合計の例を示す図である。図2の例で、説明対象のニューラルネットワークの出力ノードN21と、出力ノードN21に値を出力するM個(Mは正の整数)のノードN11からN1Mまでの各ノードとが示されている。
ノードN1i(iは、1≦i≦Mの整数)からの出力xの値に重みvが乗算されたvが、出力ノードN21に入力される。出力ノードN21は、vの合計sを式(1)のように算出する。
2 shows an example of weighted sums at the output nodes of the neural network under discussion, which shows an output node N21 of the neural network under discussion and M nodes N11 to N1M (M is a positive integer) that output values to the output node N21.
The value of output x i from node N1i (i is an integer of 1≦i≦M) is multiplied by weight v i to obtain v i x i , which is input to output node N21. Output node N21 calculates the sum s of v i x i as shown in formula (1).

Figure 0007493813000001
Figure 0007493813000001

式(1)に示される合計sの算出が、出力ノードN21における重み付け合計の計算に該当する。
出力ノードN21は、さらに、算出した合計sと閾値Thとを比較し、比較結果に応じて値を出力する。例えば、s≧Thである場合は出力ノードN21が値1を出力し、s<Thである場合は出力ノードN21が値0を出力するようにしてもよい。
The calculation of the sum s shown in equation (1) corresponds to the calculation of the weighted sum at output node N21.
The output node N21 further compares the calculated sum s with a threshold Th and outputs a value according to the comparison result. For example, if s≧Th, the output node N21 may output a value of 1, and if s<Th, the output node N21 may output a value of 0.

図3は、説明生成装置100が取得するモデルの例を示す図である。図3は、図2の出力ノードN21に対して説明生成装置100が取得するモデルの例を示している。
図3に例示するモデルでは、N個(Nは正の整数)の入力変数F、F、・・・、Fの値に、それぞれ重みw、w、・・・、wを乗算する。そして、このモデルでは、乗算で得られたN個の値w、w、・・・、wを合計して出力する。
図3に示すモデルによる演算を表す関数fは、式(2)のように示される。
3 is a diagram showing an example of a model acquired by the explanation generation device 100. FIG 3 shows an example of a model acquired by the explanation generation device 100 for the output node N21 in FIG.
3, the values of N input variables F1 , F2 , ..., FN (N is a positive integer) are multiplied by weights w1 , w2 , ..., wN , respectively. Then, in this model, the N values w1F1 , w2F2 , ... , wN FN obtained by the multiplication are summed and output.
A function f representing an operation according to the model shown in FIG.

Figure 0007493813000002
Figure 0007493813000002

式(1)に例示される出力ノードにおける重み付け合計と、式(2)に例示される、線形和の形式のモデルによる重き付け合計とを比較すると、入力の個数および値は、異なっていてもよい。具体的には、式(1)におけるMの値と式(2)におけるNの値とは、異なっていてもよい。また、式(1)におけるxの値と、式(2)におけるFの値とは異なっていてもよい。また、重みの個数および値も異なっていてもよい。したがって、式(1)におけるvの値と式(2)におけるwの値とは、異なっていてもよい。 When comparing the weighted sum at the output node exemplified in formula (1) with the weighted sum by the model in the form of a linear sum exemplified in formula (2), the number and values of the inputs may be different. Specifically, the value of M in formula (1) may be different from the value of N in formula (2). Also, the value of x i in formula (1) may be different from the value of F i in formula (2). Also, the number and values of the weights may be different. Therefore, the value of v i in formula (1) may be different from the value of w i in formula (2).

ノードN11からN1Mまでの各ノードからの出力x、x、・・・、xの値に応じて、モデルの入力変数F、F、・・・、Fの値が定まり、かつ、その場合の、式(2)で示されるモデルの出力の値が、式(1)で示される出力ノードにおける重み付け合計の値と同じか、あるいは近似する関係にあればよい。
例えば、説明対象のニューラルネットワークへの入力が画像データにおける各画素値である場合に、その画像データから得られる特徴量を、線形和の形式のモデルへの入力として用いるようにしてもよい。
The values of the model's input variables F1 , F2 , ..., FN are determined according to the values of the outputs x1 , x2 , ..., xM from each node from node N11 to N1M, and in that case, the value of the model's output shown in equation (2) should be the same as or approximately equal to the weighted sum value at the output node shown in equation (1).
For example, if the input to the neural network to be explained is each pixel value in image data, features obtained from the image data may be used as input to the model in the form of a linear sum.

さらに例えば、図2のニューラルネットワークのノードN11からN1Mまでの各ノードの値が、入力データを多層回路によって変換して得られたものである場合について考える。このような場合の例として、入力データとして画像データを受け取り、多層回路による変換を経てノードN11からN1Mまでの各ノードの値を得た場合が挙げられる。 Furthermore, for example, consider a case where the values of each node N11 to N1M in the neural network of Figure 2 are obtained by converting input data using a multi-layer circuit. An example of such a case is when image data is received as input data, and the values of each node N11 to N1M are obtained through conversion using a multi-layer circuit.

この場合、ノードN11からN1Mまでの各ノードの値が何を表現しているのかを説明することができず、ニューラルネットワークが行う処理について有益な説明ができないことが考えられる。ここでいう有益な説明は、例えば人が理解可能な説明である。
これに対し、図3のモデルへの入力が、赤の強さなどの特徴量となっている場合、特徴量に関する条件を説明することで、ニューラルネットワークが行う処理について有益な説明が得られることが期待される。
In this case, it is not possible to explain what the values of the nodes N11 to N1M represent, and it is conceivable that a useful explanation cannot be given about the processing performed by the neural network. A useful explanation here is, for example, an explanation that can be understood by humans.
On the other hand, if the input to the model in Figure 3 is features such as the intensity of red, explaining the conditions on the features can hopefully provide a useful explanation for the processing performed by the neural network.

説明生成装置100は、得られたモデルに基づいて、説明対象のニューラルネットワークが行う処理の自然言語による説明を生成する。モデルの入力変数F、F、・・・、Fがそれぞれ自然言語で表現可能な特徴を示す変数である場合、この変数が示す特徴と重みが示す大小との組み合わせを自然言語で表記して説明を生成する。特徴を自然言語で表現可能とは、例えば、その特徴を名付け可能なことである。 Based on the obtained model, the explanation generation device 100 generates an explanation in natural language of the processing performed by the neural network to be explained. When the input variables F1 , F2 , ..., FN of the model are variables indicating features that can be expressed in natural language, the explanation is generated by expressing in natural language a combination of the features indicated by these variables and the magnitude indicated by the weights. Being able to express a feature in natural language means, for example, that the feature can be named.

例えば、入力変数Fの値が色成分の赤の強さを示し、重みwの値が正の値である場合、説明生成装置100が、wが示す条件を、「赤が強い」のように表記するようにしてもよい。説明生成装置100が、このような条件とニューラルネットワークの出力値による判定の対象とを組み合わせて、「赤が強く、〇〇が大きく、・・・場合、△△であると判定する」という形式の説明を出力するようにしてもよい。
説明生成装置100が、パソコン(Personal Computer;PC)またはワークステーション(Workstation;WS)等のコンピュータを用いて構成されてもよい。
For example, when the value of the input variable F i indicates the strength of red of a color component and the value of the weight w i is a positive value, the explanation generation device 100 may express the condition indicated by w i F i as "strong red". The explanation generation device 100 may combine such a condition with a target for judgment based on the output value of the neural network, and output an explanation in the form of "If red is strong, XX is large, and..., it is judged to be △△".
The explanation generation device 100 may be configured using a computer such as a personal computer (PC) or a workstation (WS).

通信部110は、他の装置と通信を行う。例えば、通信部110は、説明対象のニューラルネットワークを他の装置から受信する。さらに例えば、通信部110は、説明対象のニューラルネットワークを、ニューラルネットワーク実行部195が実行可能なデータ形式で受信する。The communication unit 110 communicates with other devices. For example, the communication unit 110 receives the neural network to be explained from the other device. For further example, the communication unit 110 receives the neural network to be explained in a data format that can be executed by the neural network execution unit 195.

表示部120は、例えば液晶パネルまたはLED(Light Emitting Diode、発光ダイオード)パネルなどの表示画面を備え、各種画像を表示する。例えば、表示部120は、説明生成装置100が生成する説明対象のニューラルネットワークが行う処理の自然言語による説明を表示する。ただし、説明生成装置100が説明を出力する方法は特定の方法に限定されない。例えば通信部110が、説明を他の装置に送信するようにしてもよい。The display unit 120 has a display screen, such as a liquid crystal panel or an LED (Light Emitting Diode) panel, and displays various images. For example, the display unit 120 displays a natural language explanation of the processing performed by the neural network of the explanation target generated by the explanation generation device 100. However, the method by which the explanation generation device 100 outputs the explanation is not limited to a specific method. For example, the communication unit 110 may transmit the explanation to another device.

操作入力部130は、例えばキーボードおよびマウス等の入力デバイスを備え、ユーザ操作を受け付ける。例えば操作入力部130は、説明の生成を指示するユーザ操作など、説明生成装置100に対して処理を行うよう指示するユーザ操作を受け付ける。The operation input unit 130 includes input devices such as a keyboard and a mouse, and accepts user operations. For example, the operation input unit 130 accepts user operations that instruct the explanation generation device 100 to perform processing, such as a user operation that instructs the explanation generation device 100 to generate an explanation.

記憶部180は、各種データを記憶する。例えば、記憶部180は、通信部110が受信する説明対象のニューラルネットワークを記憶する。記憶部180の機能は、説明生成装置100が備える記憶デバイスを用いて実行される。
制御部190は、説明生成装置100の各部を制御して各種処理を実行する。制御部190の機能は、説明生成装置100が備えるCPUが記憶部180からプログラムを読み出して実行することで実行される。
The storage unit 180 stores various data. For example, the storage unit 180 stores a neural network of an explanation target received by the communication unit 110. The function of the storage unit 180 is executed using a storage device included in the explanation generation device 100.
The control unit 190 executes various processes by controlling each unit of the explanation generation device 100. The functions of the control unit 190 are executed by the CPU included in the explanation generation device 100 reading out a program from the storage unit 180 and executing it.

線形和取得部191は、説明生成装置100について上述したように、説明対象のニューラルネットワークの出力に応じた出力を生成する線形和の形式のモデルを取得する。
例えば、線形和取得部191が、説明対象のニューラルネットワークを、より簡単な構造のニューラルネットワークで近似し、得られたより簡単な構造のニューラルネットワークの出力ノードによる重み付け合計の演算を、線形和の形式のモデルとして抽出するようにしてもよい。
The linear sum acquisition unit 191 acquires a model in the form of a linear sum that generates an output according to the output of the neural network to be explained, as described above for the explanation generation device 100.
For example, the linear sum acquisition unit 191 may approximate the neural network to be explained with a neural network having a simpler structure, and extract the weighted sum calculation by the output nodes of the obtained neural network with the simpler structure as a model in the form of a linear sum.

あるいは、線形和取得部191が、説明対象のニューラルネットワークを、より簡単な構造の等価なニューラルネットワークに変換するようにしてもよい。そして、線形和取得部191が、得られたより簡単な構造のニューラルネットワークの出力ノードによる重み付け合計の演算を、線形和の形式のモデルとして抽出するようにしてもよい。ここでいう等価は、同じ値の入力に対して同じ値を出力することである。例えば、等価な2つのニューラルネットに同じ値を入力すると、それら等価な2つのニューラルネットワークは同じ値を出力する。Alternatively, the linear sum acquisition unit 191 may convert the neural network to be explained into an equivalent neural network with a simpler structure. The linear sum acquisition unit 191 may then extract the weighted sum calculation by the output nodes of the resulting neural network with a simpler structure as a model in the form of a linear sum. Equivalence here means outputting the same value for the same input value. For example, if the same value is input to two equivalent neural networks, the two equivalent neural networks will output the same value.

あるいは、線形和取得部191が、説明対象のニューラルネットワークの出力ノードを、そのまま線形和の形式のモデルとして抽出するようにしてもよい。例えば、説明対象のニューラルネットワークの構造が元々簡単な構造である場合、線形和取得部191が、説明対象のニューラルネットワークそのままの出力ノードによる重み付け合計の演算を、線形和の形式のモデルとして抽出するようにしてもよい。Alternatively, the linear sum acquisition unit 191 may extract the output nodes of the neural network to be explained as they are as a model in the form of a linear sum. For example, if the structure of the neural network to be explained is originally a simple structure, the linear sum acquisition unit 191 may extract the calculation of the weighted sum by the output nodes of the neural network to be explained as they are as a model in the form of a linear sum.

説明対象のニューラルネットワークが複数の出力ノードを有する場合、線形和取得部191は、出力ノード毎に線形和の形式のモデルを生成する。線形和取得部191が、全ての出力ノードについて線形和の形式のモデルを生成するようにしてもよいし、一部の出力ノードのみについて線形和の形式のモデルを生成するようにしてもよい。When the neural network to be described has multiple output nodes, the linear sum acquisition unit 191 generates a model in the form of a linear sum for each output node. The linear sum acquisition unit 191 may generate a model in the form of a linear sum for all output nodes, or may generate a model in the form of a linear sum for only some of the output nodes.

構造変換部192は、説明対象のニューラルネットワークの構造を変換する。特に、構造変換部192は、説明対象のニューラルネットワークの構造を簡単化する。具体的には、構造変換部192は、説明対象のニューラルネットワークに対して、ノードの個数およびアーク(Arc)の個数のうち少なくとも何れか一方を減少させる。ここでいうアークは、2つのノードを接続する情報伝達経路である。The structure conversion unit 192 converts the structure of the neural network to be explained. In particular, the structure conversion unit 192 simplifies the structure of the neural network to be explained. Specifically, the structure conversion unit 192 reduces at least one of the number of nodes and the number of arcs in the neural network to be explained. An arc here is an information transmission path that connects two nodes.

線形和取得部191について上述したように、構造変換部192が、説明対象のニューラルネットワークを、そのニューラルネットワークを近似する、より簡単な構造のニューラルネットワークに変換するようにしてもよい。あるいは構造変換部192が、説明対象のニューラルネットワークを、より簡単な構造の等価なニューラルネットワークに変換するようにしてもよい。
あるいは、線形和取得部191が、説明対象のニューラルネットワークの出力ノードを、そのまま線形和の形式のモデルとして抽出する場合、構造変換部192は、説明対象のニューラルネットワークの変換を行わず、そのままの構造とする。
As described above with respect to the linear sum acquisition unit 191, the structure conversion unit 192 may convert the neural network to be explained into a neural network with a simpler structure that approximates the neural network, or may convert the neural network to be explained into an equivalent neural network with a simpler structure.
Alternatively, when the linear sum acquisition unit 191 extracts the output node of the neural network to be explained as a model in the form of a linear sum as is, the structure conversion unit 192 does not convert the neural network to be explained, but leaves the structure as it is.

説明対象のニューラルネットワークが複数の出力ノードを有する場合、線形和取得部191が出力ノード毎に線形和の形式のモデルを生成することに対応して、構造変換部192は、出力ノード毎に構造変換後のニューラルネットワークを生成する。線形和取得部191が、複数の出力ノードのうち一部の出力ノードのみについて線形和の形式のモデルを生成する場合、構造変換部192が、それらの出力ノードのみについて構造変換後のニューラルネットワークを生成するようにしてもよい。When the neural network to be described has multiple output nodes, the linear sum acquisition unit 191 generates a model in the form of a linear sum for each output node, and the structural transformation unit 192 generates a neural network after structural transformation for each output node. When the linear sum acquisition unit 191 generates a model in the form of a linear sum for only some of the multiple output nodes, the structural transformation unit 192 may generate a neural network after structural transformation for only those output nodes.

変数処理部193は、線形和取得部191が取得する線形和の形式のモデルの入力変数が、言語で表現可能な特徴を示すようにする処理を行う。例えば、変数処理部193が、構造変換部192の処理で得られたニューラルネットワークを近似する線形和の形式のモデルを、「赤の強さ」または「〇〇の大きさ」など自然言語で説明可能な特徴を示す入力変数を用いて構成するようにしてもよい。
線形和取得部191が線形和の形式のモデルを複数生成する場合、変数処理部193は、モデル毎に、そのモデルの入力変数が、言語で表現可能な特徴を示すようにする処理を行う。
The variable processing unit 193 performs processing so that the input variables of the model in the form of a linear sum acquired by the linear sum acquisition unit 191 indicate features that can be expressed in language. For example, the variable processing unit 193 may configure a model in the form of a linear sum that approximates the neural network acquired by the processing of the structure conversion unit 192 using input variables that indicate features that can be explained in natural language, such as "intensity of red" or "size of XX."
When the linear sum acquisition unit 191 generates a plurality of models in the form of a linear sum, the variable processing unit 193 performs processing for each model so that the input variables of the model indicate features that can be expressed in language.

説明生成部194は、線形和取得部191が取得した線形和の形式のモデルに基づいて、説明対象のニューラルネットワークが行う処理の自然言語による説明を生成する。説明生成装置100について上述したように、説明生成部194は、モデルの入力変数F、F、・・・、Fがそれぞれ自然言語で説明可能な特徴を示す変数である場合、この変数が示す特徴と重みが示す大小との組み合わせを自然言語で表記して説明を生成する。 The explanation generation unit 194 generates an explanation in natural language of the processing performed by the neural network to be explained, based on the model in the form of a linear sum acquired by the linear sum acquisition unit 191. As described above for the explanation generation device 100, when the input variables F1 , F2 , ..., FN of the model are variables indicating features that can be explained in natural language, the explanation generation unit 194 generates an explanation by expressing in natural language a combination of the features indicated by these variables and the magnitude indicated by the weights.

ニューラルネットワーク実行部195は、ニューラルネットワークを実行する。例えば、説明対象のニューラルネットワークに対する入力データが与えられた場合、ニューラルネットワーク実行部195は、説明対象のニューラルネットワークを実行して、与えられた入力データに対する出力を算出する。The neural network execution unit 195 executes a neural network. For example, when input data for the neural network to be explained is given, the neural network execution unit 195 executes the neural network to be explained and calculates an output for the given input data.

図4は、線形和取得部191が行う処理の手順の例を示す図である。図4は、ニューラルネットワークを、その構造の簡単さ、および、対応する線形和の形式のモデルの入力変数の説明し易さで分類する例を示している。
線形和取得部191は、説明対象のニューラルネットワークが行う処理を説明し易くするための処理を行う。線形和取得部191は、構造が比較的簡単、かつ、対応する線形和の形式のモデルの入力変数が比較的説明し易いニューラルネットワークを得られるように、説明対象のニューラルネットワークに対し、構造変換と、モデルの入力変数を比較的説明し易いものにする処理とを行う。ここでいう構造変換は、ニューラルネットワークの構造を変換する処理である。また、モデルの入力変数を比較的説明し易いものにする処理を、入力変数処理と称する。
Fig. 4 is a diagram showing an example of the procedure of the process performed by the linear sum acquisition unit 191. Fig. 4 shows an example of classifying neural networks based on the simplicity of their structure and the ease of explaining the input variables of the model in the form of the corresponding linear sum.
The linear sum acquisition unit 191 performs processing to make the processing performed by the neural network to be explained easier to explain. The linear sum acquisition unit 191 performs structural transformation and processing to make the input variables of the model relatively easy to explain on the neural network to be explained, so as to obtain a neural network with a relatively simple structure and with input variables of the model in the form of a corresponding linear sum that are relatively easy to explain. The structural transformation here refers to processing to transform the structure of the neural network. The processing to make the input variables of the model relatively easy to explain is referred to as input variable processing.

線形和取得部191が、説明対象のニューラルネットワークに対して、構造変換を行った後、入力変数処理を行うようにしてもよい。あるいは、線形和取得部191が、説明対象のニューラルネットワークに対して、入力変数処理を行った後、構造変換を行うようにしてもよい。あるいは、線形和取得部191が、説明対象のニューラルネットワークに対して、構造変換と入力変数処理とを同時に行うようにしてもよい。The linear sum acquisition unit 191 may perform input variable processing after performing structural transformation on the neural network to be explained. Alternatively, the linear sum acquisition unit 191 may perform input variable processing on the neural network to be explained and then perform structural transformation. Alternatively, the linear sum acquisition unit 191 may perform structural transformation and input variable processing simultaneously on the neural network to be explained.

線形和取得部191が説明対象のニューラルネットワークに対して行う処理が、構造変換および入力変数処理の両方に該当する場合があり得る。例えば、線形和取得部191が、説明対象のニューラルネットワークの構造を変換することで、出力ノードへの入力が説明し易いものになる場合、この場合の構造変換は、入力変数処理にも該当するといえる。
図1の構成例では、線形和取得部191のうち構造変換を行う部分を構造変換部192として示し、線形和取得部191のうち入力変数処理を行う部分を変数処理部193として示している。
There may be cases where the process performed by the linear sum acquisition unit 191 on the neural network to be explained corresponds to both the structural transformation and the input variable process. For example, when the linear sum acquisition unit 191 transforms the structure of the neural network to be explained, so that the input to the output node becomes easier to explain, the structural transformation in this case can be said to correspond to the input variable process.
In the configuration example of FIG. 1, a portion of the linear sum acquisition unit 191 that performs structural transformation is shown as a structural transformation unit 192 , and a portion of the linear sum acquisition unit 191 that processes input variables is shown as a variable processing unit 193 .

図5は、線形和取得部191が行う処理の手順の例を示す図である。図5では、線形和取得部191が説明対象のニューラルネットワークに対して、構造変換を行った後、入力変数処理を行う場合の例を示している。
図5の処理で、構造変換部192は、説明対象のニューラルネットワークの構造を変換する(ステップS11)。構造変換部192は、この処理により、説明対象のニューラルネットワークを、より簡単な構造のニューラルネットワークに変換する。
Fig. 5 is a diagram showing an example of the procedure of the process performed by the linear sum acquisition unit 191. Fig. 5 shows an example of the case where the linear sum acquisition unit 191 performs input variable processing after performing a structural transformation on the neural network to be described.
5, the structure conversion unit 192 converts the structure of the neural network to be explained (step S11). Through this process, the structure conversion unit 192 converts the neural network to be explained into a neural network with a simpler structure.

次に、線形和取得部191は、構造変換部192による構造変換で得られたニューラルネットワークに基づいて、線形和の形式のモデルを生成する(ステップS12)。
例えば、線形和取得部191が、ニューラルネットワークの出力ノード重み付け合計の計算をモデル化するようにしてもよい。この場合、線形和取得部191が生成するモデルは、出力ノードの前段ノードからの出力をモデルの入力変数で表す。出力ノードの前段ノードからの出力の例として、図2のx、x、・・・、xが挙げられる。モデルの入力変数の例として、図3のF、F、・・・、Fが挙げられる。
Next, the linear sum acquisition unit 191 generates a model in the form of a linear sum based on the neural network obtained by the structural transformation performed by the structural transformation unit 192 (step S12).
For example, the linear sum acquisition unit 191 may model the calculation of the weighted sum of the output nodes of the neural network. In this case, the model generated by the linear sum acquisition unit 191 represents the output from the node preceding the output node as the input variables of the model. Examples of the output from the node preceding the output node include x1 , x2 , ..., xM in Fig. 2. Examples of the input variables of the model include F1 , F2 , ..., FN in Fig. 3.

また、線形和取得部191が生成するモデルは、出力ノードと前段ノードとの間のアークにおける重みを線形和における重みで表す。出力ノードと前段ノードとの間のアークにおける重みの例として、図2のv、v、・・・、vが挙げられる。形和における重みの例として、図3のw、w、・・・、wが挙げられる。 In addition, the model generated by the linear sum acquisition unit 191 expresses the weights of the arcs between the output node and the previous node as weights in the linear sum. Examples of the weights of the arcs between the output node and the previous node include v1 , v2 , ..., vM in Fig. 2. Examples of the weights in the linear sum include w1 , w2 , ..., wN in Fig. 3.

次に、変数処理部193は、線形和取得部191が生成したモデルの入力変数が、より説明し易いものになるように、入力変数処理を行う(ステップS13)。例えば、変数処理部193は、モデルの入力変数とその入力変数に適用される重みとの組み合わせwを、説明対象のニューラルネットワークへの入力から得られる特徴量、および、その特徴量に適用される変数に置き換える。置き換え後のモデルが、置き換え前のモデルと等価なモデルになっていてもよい。あるいは、置き換え後のモデルが、置き換え前のモデルを近似するモデルになっていてもよい。 Next, the variable processing unit 193 performs input variable processing so that the input variables of the model generated by the linear sum acquisition unit 191 are easier to explain (step S13). For example, the variable processing unit 193 replaces a combination w i F i of the input variables of the model and the weights applied to the input variables with a feature obtained from an input to the neural network to be explained and a variable applied to the feature. The model after the replacement may be a model equivalent to the model before the replacement. Alternatively, the model after the replacement may be a model that approximates the model before the replacement.

ステップS13の処理では、モデルの入力変数と重みの組み合わせw、w、・・・、wの個数、および、重みw、w、・・・、wの値のうち何れか一方、または両方が変更される。
線形和取得部191が、ステップS12の処理とステップS13の処理とを同時に行うようにしてもよい。また、線形和取得部191がステップS12で生成したモデルの入力変数が比較的説明し易いものになっている場合、ステップS13の処理を抑制するようにしてもよい。ここでいう、処理を抑制することは、処理を行わないことである。
In the process of step S13, one or both of the number of combinations w 1 F 1 , w 2 F 2 , . . . , w NF N of model input variables and weights and the values of the weights w 1 , w 2 , . . . , w N are changed.
The linear sum acquisition unit 191 may perform the process of step S12 and the process of step S13 simultaneously. In addition, if the input variables of the model generated by the linear sum acquisition unit 191 in step S12 are relatively easy to explain, the process of step S13 may be suppressed. In this case, suppressing the process means not performing the process.

線形和取得部191が行う処理の例についてさらに説明する。
<遺伝的プログラミングを用いる構造変換>
構造変換部192が、確率的最適化法の進化計算法の一種である遺伝的プログラミング(Genetic Programming;GP)の手法を用いて、説明対象のニューラルネットワークの構造を変換するようにしてもよい。この構造変換により、構造変換部192が、説明対象のニューラルネットワークを、そのニューラルネットワークを近似するネットワーク型の関数に変換するようにしてもよい。遺伝的プログラミングの手法を、あらかじめ用意した説明容易なモジュール(部品)を組合せることによって、関数を近似する手法として用いることができる。この場合、説明可能なモジュールの組合せによって構成されたネットワーク型の関数にも説明を与えることができると期待される。
An example of the process performed by the linear sum acquisition unit 191 will be further described.
<Structural transformation using genetic programming>
The structure conversion unit 192 may convert the structure of the neural network to be explained using a genetic programming (GP) technique, which is a type of evolutionary computation method of stochastic optimization. By this structure conversion, the structure conversion unit 192 may convert the neural network to be explained into a network-type function that approximates the neural network. The genetic programming technique can be used as a technique for approximating a function by combining modules (components) that are easy to explain and that are prepared in advance. In this case, it is expected that an explanation can be given to a network-type function that is configured by a combination of explainable modules.

例えば入力が画像の場合、ユーザが、何種類かの画像処理フィルタなど、構造変換後の関数を構成するための説明可能な部品を幾つか用意し、構造変換部192に与えるようにしてもよい。構造変換部192は、これらの部品の組み合わせの構造をネットワーク構造あるいは木構造で表現し、遺伝的プログラミングの手法を用いて新たな構造を生成する。構造変換部192が、与えられた全ての部品を使用するようにしてもよいし、一部の部品を使わないことを許容するようにしてもよい。また、構造変換部192が、1つの木構造で1つの部品を1回のみ使用するようにしてもよいし、1つの部品を複数回使用することを許容するようにしてもよい。For example, when the input is an image, the user may prepare several explainable components for constructing a function after structural transformation, such as several types of image processing filters, and provide these to the structural transformation unit 192. The structural transformation unit 192 expresses the structure of the combination of these components as a network structure or a tree structure, and generates a new structure using a genetic programming technique. The structural transformation unit 192 may use all of the provided components, or may allow some components not to be used. Furthermore, the structural transformation unit 192 may use one component only once in one tree structure, or may allow one component to be used multiple times.

構造変換部192は、ネットワーク構造あるいは木構造で表現される構造変換後のニューラルネットワークとして、説明対象のニューラルネットワークを所定の条件以上に精度よく近似するニューラルネットワークが得られるまで、遺伝的プログラムの手法による木構造の生成を繰り返す。The structural transformation unit 192 repeatedly generates a tree structure using a genetic programming technique until a neural network that approximates the neural network to be explained with greater accuracy than specified conditions is obtained as a structurally transformed neural network represented as a network structure or tree structure.

構造変換部192が、部品を用いて説明対象のニューラルネットワークを近似するネットワーク型関数を生成することで、ネットワークの構造が簡単になることが期待される。
また、ニューラルネットワークの構造が簡単になることで、入力ノードから出力ノードの前段のノードまでの処理も比較的簡単になり、その処理が、自然言語で比較的説明し易いことが期待される。さらには、入力ノードから出力ノードの前段までの処理が部品の組み合わせによって実行されることで、その処理が、自然言語で比較的説明し易いことが期待される。このように、上記の構造変換では、入力変数処理の効果も期待される。
It is expected that the structure of the network will be simplified by the structure conversion unit 192 generating a network type function that uses components to approximate the neural network to be explained.
In addition, by simplifying the structure of the neural network, the processing from the input node to the node preceding the output node is also relatively simple, and it is expected that the processing will be relatively easy to explain in natural language. Furthermore, by executing the processing from the input node to the node preceding the output node by combining components, it is expected that the processing will be relatively easy to explain in natural language. In this way, the above structural transformation is also expected to have an effect on input variable processing.

<ニューラルネットワークの枝刈りによる構造変換>
構造変換部192が、説明対象のニューラルネットワークから、ニューラルネットワークの出力に影響しないノードおよびアークを削除することで、ニューラルネットワークの構造を変換するようにしてもよい。あるいは、構造変換部192が、ニューラルネットワークの出力に影響しないノードおよびアークに加えて、または代えて、ニューラルネットワークの出力への影響が小さいノードおよびアークを削除するようにしてもよい。
<Structural transformation by pruning neural networks>
The structure conversion unit 192 may convert the structure of the neural network by deleting nodes and arcs that do not affect the output of the neural network from the neural network to be explained. Alternatively, the structure conversion unit 192 may delete nodes and arcs that have a small effect on the output of the neural network in addition to or instead of the nodes and arcs that do not affect the output of the neural network.

例えば、ある出力ノードへの経路がないノードは、その出力ノードには影響しないノードである。また、あるアークにおける重みの値が0の場合、そのアークが無い場合と同視できる。構造変換部192が、出力ノードに影響しないノードおよびアークを削除するようにしてもよい。
また、あるアークにおける重みの大きさ(絶対値)が小さい場合、そのアークにてノード間を伝達される情報が後段側のノードに与える影響は小さいと考えられる。ここでいう後段側のノードは、情報を受ける側のノードである。
そこで、構造変換部192が、重みの大きさが所定の閾値以下のアークを削除するようにしてもよい。
For example, a node that does not have a path to an output node is a node that does not affect the output node. Also, when the weight value of an arc is 0, it can be considered as the absence of the arc. The structure conversion unit 192 may delete nodes and arcs that do not affect the output node.
In addition, when the magnitude (absolute value) of the weight of an arc is small, the information transmitted between nodes on that arc is considered to have little effect on subsequent nodes, which are nodes that receive information.
Therefore, the structure conversion unit 192 may delete arcs whose weights are equal to or smaller than a predetermined threshold value.

構造変換部192が、ニューラルネットワークからノードおよびアークのうち何れか一方、または両方を削除することで、ニューラルネットワークの構造が比較的簡単になる。
また、ニューラルネットワークの構造が簡単になることで、入力ノードから出力ノードの前段のノードまでの処理も比較的簡単になり、その処理が、自然言語で比較的説明し易いことが期待される。このように、上記の構造変換では、入力変数処理の効果も期待される。
The structure conversion unit 192 deletes either or both of the nodes and arcs from the neural network, thereby making the structure of the neural network relatively simple.
In addition, by simplifying the structure of the neural network, the processing from the input node to the node preceding the output node is also relatively simple, and it is expected that the processing will be relatively easy to explain in natural language. In this way, the above structural transformation is also expected to have an effect on input variable processing.

<入力変数の特徴量化による入力変数処理>
変数処理部193が、線形和の形式のモデルの入力変数として特徴量を示す変数を用いるようにしてもよい。
例えば、説明対象のニューラルネットワークへの入力から、ある特徴量を算出する手段をユーザが変数処理部193に与えておく。ここでの手段は、計算アルゴリズムとして与えられてもよい。
<Input variable processing by feature quantification of input variables>
The variable processing unit 193 may use variables indicating feature quantities as input variables of a model in the form of a linear sum.
For example, a user provides a means for calculating a certain feature amount from an input to the neural network to be explained to the variable processing unit 193. The means here may be provided as a calculation algorithm.

変数処理部193は、線形和取得部191が生成する線形和の形式のモデルの入力変数を、与えられた特徴量を示す変数で一時的に置き換える。変数処理部193は、置き換え後のモデルが、置き換え前のモデルを近似している、あるいは、置き換えが等価変換になっているか否かを判定する。変数処理部193は、置き換えのいろいろなパターンについて判定を行うことで、置き換え後のモデルが置き換え前のモデルを近似する、あるいは置き換えが等価置換となるような置き換えを検出し、その置き換えを採用する。
あるいは、上述したように、線形和取得部191がモデルを生成する際に、特徴量を示す変数をモデルの入力変数として用いるようにしてもよい。
The variable processing unit 193 temporarily replaces the input variables of the model in the form of a linear sum generated by the linear sum acquisition unit 191 with variables indicating a given feature amount. The variable processing unit 193 judges whether the model after replacement approximates the model before replacement or whether the replacement is an equivalent conversion. The variable processing unit 193 judges various replacement patterns, detects a replacement in which the model after replacement approximates the model before replacement or the replacement is an equivalent replacement, and adopts that replacement.
Alternatively, as described above, when the linear sum acquisition unit 191 generates a model, the variables indicating the feature amounts may be used as input variables of the model.

線形和の形式のモデルの入力変数が特徴量を示す変数となっていることで、その特徴の自然言語による説明を、説明対象のニューラルネットワークが行う処理の説明に用いることができると期待される。
自然言語の説明の説明生成装置100への付与について、ユーザが、ある特徴量を算出する手段を変数処理部193に与える際に、その手段に紐付けて、その特徴の自然言語による説明を与えるようにしてもよい。
Since the input variables of the model in the form of a linear sum are variables that indicate features, it is expected that a natural language explanation of the features can be used to explain the processing performed by the neural network being explained.
Regarding the provision of a natural language explanation to the explanation generation device 100, when a user provides a means for calculating a certain feature to the variable processing unit 193, the means may be linked to the explanation and a natural language explanation of the feature may be provided.

あるいはユーザが、特徴量を抽出するためのフィルタの部品を用意し、変数処理部193が、上述した遺伝的プログラミングを用いる構造変換の場合と同様に、遺伝的プログラミングの手法を用いて部品を組み合わせて、特徴量を出力するフィルタを生成するようにしてもよい。
この場合、得られたフィルタの出力が特徴量を表しているか否か、および、特徴量を表している場合はどのような特徴量を表しているかを、ユーザが判定するようにしてもよい。例えば、変数処理部193が、生成したフィルタに幾つかのサンプルデータを入力し、サンプルデータと、そのサンプルデータに対するフィルタの出力とをユーザに提示するようにしてもよい。ユーザが、そのフィルタの出力値が大きい場合のサンプルに共通する特徴を、そのフィルタが抽出する特徴として把握し、例えば「赤の強さ」など、その特徴の自然言語による説明を説明生成装置100に与えるようにしてもよい。
Alternatively, the user may prepare filter components for extracting features, and the variable processing unit 193 may combine the components using genetic programming techniques to generate a filter that outputs features, as in the case of the structural transformation using genetic programming described above.
In this case, the user may determine whether the obtained filter output represents a feature, and if so, what kind of feature it represents. For example, the variable processing unit 193 may input some sample data to the generated filter, and present the sample data and the filter output for the sample data to the user. The user may grasp a feature common to samples with large output values of the filter as a feature extracted by the filter, and provide the explanation generating device 100 with a natural language explanation of the feature, such as "intensity of red."

<入力変数が示す特徴の特定による入力変数処理>
変数処理部193が、モデルの入力変数の置き換えは行わずに、入力変数が示す特徴を特定するようにしてもよい。
例えば、変数処理部193が、説明対象のニューラルネットワークへの入力データの複数のサンプルのうち、ある入力変数の値の大きさが所定の閾値以上に大きくなるサンプルを抽出してユーザに提示するようにしてもよい。そして、ユーザが、提示されたサンプルに共通する特徴の自然言語による説明を説明生成装置100に与えるようにしてもよい。説明生成装置100は、与えられた説明を、その入力変数が示す特徴の説明として用いる。
説明対象のニューラルネットワークへの入力データのサンプルとして、説明対象のニューラルネットワークに適用される学習データにおける入力データを用いることができる。
<Input variable processing by identifying characteristics exhibited by the input variables>
The variable processing unit 193 may identify the characteristics indicated by the input variables without replacing the input variables of the model.
For example, the variable processing unit 193 may extract samples in which the magnitude of a value of an input variable is greater than or equal to a predetermined threshold from among multiple samples of input data to the neural network to be explained, and present the samples to the user. Then, the user may provide the explanation generation device 100 with a natural language explanation of a feature common to the presented samples. The explanation generation device 100 uses the provided explanation as an explanation of the feature indicated by the input variable.
As a sample of input data to the neural network to be explained, input data in the training data applied to the neural network to be explained can be used.

あるいは、変数処理部193が、モデルの入力変数のうちある1つの入力変数の値だけが異なり、他の入力変数の値が同じになるサンプルの組をユーザに提示するようにしてもよい。そして、ユーザが、提示された2つのサンプルで異なる特徴の自然言語による説明を説明生成装置100に与えるようにしてもよい。説明生成装置100は、与えられた説明を、その入力変数(2つのサンプルで値が異なる入力変数)が示す特徴の説明として用いる。Alternatively, the variable processing unit 193 may present to the user a set of samples in which only one of the model's input variables differs in value and the other input variables have the same values. The user may then provide to the explanation generation device 100 a natural language explanation of the different features of the two presented samples. The explanation generation device 100 uses the provided explanation as an explanation of the feature indicated by that input variable (the input variable whose value differs in the two samples).

ここで、変数処理部193が、モデルの入力変数のうちある1つの入力変数の値だけが異なり、他の入力変数の値が同じになるサンプルの組を生成するようにしてもよい。
モデルの入力変数の値が、ニューラルネットワークにおける出力ノードの前段のノードの出力値を示す場合、変数処理部193が、モデルの入力変数の値が所望の値となる、ニューラルネットワークへの入力データを、誤差逆伝播法(Backpropagation)と同様の手法で生成するようにしてもよい。
Here, the variable processing unit 193 may generate a set of samples in which only one input variable among the input variables of the model is different in value and the other input variables have the same values.
When the value of the input variable of the model indicates the output value of a node preceding the output node in the neural network, the variable processing unit 193 may generate input data to the neural network such that the value of the input variable of the model becomes the desired value, using a method similar to backpropagation.

この場合、変数処理部193は、ニューラルネットワークにサンプルデータを適用した場合のモデルの入力変数の値と所望の値との差を算出する。そして、変数処理部193は、誤差逆伝播法で差に基づいて重みの値を調整することに代えて、差に基づいて、前段のノードの出力値を調整する。変数処理部193は、この処理を入力データまで繰り返し、かつ、複数のサンプルデータについて繰り返すことで、モデルの入力変数の値が所望の値となる、ニューラルネットワークへの入力データを算出する。In this case, the variable processing unit 193 calculates the difference between the values of the input variables of the model when the sample data is applied to the neural network and the desired values. Then, instead of adjusting the weight values based on the difference using the backpropagation method, the variable processing unit 193 adjusts the output value of the previous node based on the difference. The variable processing unit 193 repeats this process up to the input data, and by repeating it for multiple sample data, calculates input data to the neural network such that the values of the input variables of the model become the desired values.

説明生成部194が自然言語による説明を生成する処理の例についてさらに説明する。
<線形和から自然言語による説明への変換>
説明生成部194は、乗算される重みの値が正(+)である入力変数を、肯定的な条件を示す入力変数として扱う。肯定的な条件は、例えば「〇〇が強い」、「〇〇が大きい」、「〇〇が多い」、「とても〇〇である」のように使用される。
また、説明生成部194は、乗算される重みの値が負(-)である入力変数を、否定的な条件を示す入力変数として扱う。否定的な条件は、例えば「〇〇が弱い」、「〇〇が小さい」、「〇〇が少ない」、「あまり〇〇でない」のように使用される。
「〇〇」には、例えば赤の強さなど、入力変数(が示す特徴)を示す自然言語が挿入される。
An example of the process in which the explanation generating unit 194 generates an explanation in natural language will be further described.
<Conversion of linear sums into natural language explanations>
The explanation generator 194 treats an input variable with a positive (+) weight value as an input variable indicating a positive condition. Positive conditions are used, for example, in the form of "XX is strong,""XX is large,""XX is abundant," and "XX is very much."
Furthermore, the explanation generator 194 treats an input variable with a negative (-) weight value to be multiplied as an input variable indicating a negative condition. Negative conditions are used, for example, in the form of "weak XX", "small XX", "little XX", "not much XX", etc.
The "〇〇" is replaced with a natural language that indicates the input variable (or its characteristics), such as the intensity of red.

また、説明生成部194が、全ての入力変数を説明に用いるようにしてもよいし、重みや入力変数の値に基づいて幾つかの入力変数を選択し、選択した入力変数を説明に用いるようにしてもよい。
ここで、重みの大きさが大きいほど、対応する入力変数の値がモデルの出力に与える影響が大きいと考えられる。そこで、説明生成部194が、乗算される重みの大きさが所定の閾値以下である変数を説明の対象から除外するようにしてもよい。
In addition, the explanation generation unit 194 may use all of the input variables for the explanation, or may select some input variables based on the weights and the values of the input variables and use the selected input variables for the explanation.
Here, it is considered that the larger the weight, the greater the influence that the value of the corresponding input variable has on the model output. Therefore, the explanation generating unit 194 may exclude variables whose multiplied weight is equal to or smaller than a predetermined threshold from the scope of explanation.

したがって、説明生成部194が、乗算される重みwの値を閾値a(a>0)と比較して、モデルの入力変数の説明を以下のように処理するようにしてもよい。
(1) w>aの場合:入力変数を、肯定的な条件を示す入力変数として扱う。
(2) -a≦w≦aの場合:入力変数を説明の対象から除外する。
(3) w<-aの場合:入力変数を、否定的な条件を示す入力変数として扱う。
Therefore, the explanation generator 194 may compare the value of the multiplied weight w with a threshold a (a>0) and process the explanations for the model's input variables as follows:
(1) If w>a: Treat the input variable as an input variable indicating a positive condition.
(2) If −a≦w≦a: The input variable is excluded from the explanation.
(3) If w<-a: The input variable is treated as an input variable indicating a negative condition.

ここで、ユーザが閾値aの値を変更可能になっていてもよい。ユーザは、簡潔な説明が欲しい場合は、閾値aの値を、正、かつ、大きさ(絶対値)が比較的大きい値に設定する。ここでの比較的大きい値の例として、0.9が挙げられる。一方、より詳細な説明が欲しい場合、ユーザは、閾値aの値を、正、かつ、大きさが比較的小さい値に設定する。ここでの比較的小さい値の例として、0.5が挙げられる。Here, the user may be able to change the value of threshold a. If the user desires a concise explanation, the user sets the value of threshold a to a positive value with a relatively large magnitude (absolute value). An example of a relatively large value here is 0.9. On the other hand, if the user desires a more detailed explanation, the user sets the value of threshold a to a positive value with a relatively small magnitude. An example of a relatively small value here is 0.5.

例えば、入力変数が示す特徴が色成分の赤の強さであり、乗算される重みの値が正でありその絶対値が大きい場合、説明生成部194は、「とても赤い」のように肯定的な条件を生成する。
また、入力変数が示す特徴がテクスチャの複雑さであり、乗算される重みの値が負でありその絶対値が大きい場合、説明生成部194は、「テクスチャがあまり複雑でない」のように否定的な条件を生成する。
For example, if the characteristic indicated by the input variable is the intensity of the red color component, and the value of the weight to be multiplied is positive and has a large absolute value, the explanation generator 194 generates a positive condition such as "very red."
In addition, when the feature indicated by the input variable is the complexity of the texture, and the value of the weight to be multiplied is negative and its absolute value is large, the explanation generating unit 194 generates a negative condition such as "the texture is not very complex."

説明生成部194は、説明の対象として採用された入力変数を用いて示される特徴を、例えば、かつ(and条件)で結合して、例えば、「赤が強く、テクスチャがあまり複雑でなく、・・・、かつ、〇〇が大きい場合、△△であると判定する」のような、説明対象のニューラルネットワークの説明を生成する。The explanation generation unit 194 combines the features indicated using the input variables adopted as the subject of the explanation, for example, with an and condition, to generate an explanation of the neural network of the subject of the explanation, such as, for example, "If the color is strong red, the texture is not very complex, ..., and XX is large, then it is determined to be △△."

なお、説明生成装置100が行う演算及び制御の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することで各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
It should be noted that a program for implementing all or part of the functions of the calculations and controls performed by the explanation generation device 100 may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read into a computer system and executed to process each part. Note that the term "computer system" here includes hardware such as the OS and peripheral devices.
Furthermore, the term "computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, ROMs (Read Only Memory), and CD-ROMs (Compact Disc Read Only Memory), as well as storage devices such as hard disks built into computer systems. The above-mentioned program may be for realizing part of the above-mentioned functions, or may be capable of realizing the above-mentioned functions in combination with a program already recorded in the computer system.

以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。 Although an embodiment of the present invention has been described in detail above with reference to the drawings, the specific configuration is not limited to this embodiment and also includes design modifications within the scope that does not deviate from the gist of the present invention.

本発明の実施形態は、説明生成装置、説明生成方法およびプログラムに適用してもよい。 Embodiments of the present invention may be applied to an explanation generation device, an explanation generation method and a program.

100 説明生成装置
110 通信部
120 表示部
130 操作入力部
180 記憶部
190 制御部
191 線形和取得部
192 構造変換部
193 変数処理部
194 説明生成部
195 ニューラルネットワーク実行部
REFERENCE SIGNS LIST 100 Explanation generation device 110 Communication unit 120 Display unit 130 Operation input unit 180 Storage unit 190 Control unit 191 Linear sum acquisition unit 192 Structure conversion unit 193 Variable processing unit 194 Explanation generation unit 195 Neural network execution unit

Claims (4)

ニューラルネットワークの構造を簡単化する構造変換を行い、構造変換後のニューラルネットワークに基づいて、構造変換前のニューラルネットワークの出力ノードに応じた線形和の形式のモデルを生成する線形和取得部と、
前記線形和の形式のモデルに基づいて、構造変換前のニューラルネットワークが行う処理の自然言語による説明を生成する説明生成部と、
を備える説明生成装置。
a linear sum acquisition unit that performs structural transformation to simplify the structure of the neural network, and generates a model in the form of a linear sum according to the output nodes of the neural network before the structural transformation based on the structurally transformed neural network;
an explanation generating unit that generates an explanation in natural language of the processing performed by the neural network before structural transformation based on the model in the form of a linear sum;
An explanation generation device comprising:
前記線形和取得部は、前記ニューラルネットワークへの入力データにおける特徴量を示す入力変数を含む前記モデルを生成し、
前記説明生成部は、前記特徴量の自然言語による説明を用いて、前記ニューラルネットワークが行う処理の自然言語による説明を生成する、
請求項1に記載の説明生成装置。
The linear sum acquisition unit generates the model including input variables indicating features in input data to the neural network;
the explanation generation unit uses the natural language explanation of the feature quantity to generate a natural language explanation of the process performed by the neural network.
The explanation generation apparatus according to claim 1 .
コンピュータが、
ニューラルネットワークの構造を簡単化する構造変換を行い、構造変換後のニューラルネットワークに基づいて、構造変換前のニューラルネットワークの出力ノードに応じた線形和の形式のモデルを生成することと、
前記線形和の形式のモデルに基づいて、構造変換前のニューラルネットワークが行う処理の自然言語による説明を生成することと、
を含む説明生成方法。
The computer
performing structural transformation to simplify the structure of the neural network, and generating a model in the form of a linear sum according to the output nodes of the neural network before the structural transformation based on the neural network after the structural transformation;
generating a natural language description of the processing performed by the neural network before structural transformation based on the linear sum model;
A method for generating explanations comprising:
コンピュータに
ニューラルネットワークの構造を簡単化する構造変換を行い、構造変換後のニューラルネットワークに基づいて、構造変換前のニューラルネットワークの出力ノードに応じた線形和の形式のモデルを生成することと、
前記線形和の形式のモデルに基づいて、構造変換前のニューラルネットワークが行う処理の自然言語による説明を生成することと、
を実行させるためのプログラム。
On the computer ,
performing structural transformation to simplify the structure of the neural network, and generating a model in the form of a linear sum according to the output nodes of the neural network before the structural transformation based on the neural network after the structural transformation;
generating a natural language explanation of the processing performed by the neural network before structural transformation based on the linear sum model;
A program for executing.
JP2021536996A 2019-07-26 2020-07-22 Explanation generation device, explanation generation method and program Active JP7493813B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019137811 2019-07-26
JP2019137811 2019-07-26
PCT/JP2020/028438 WO2021020273A1 (en) 2019-07-26 2020-07-22 Description generating device, description generating method, and program

Publications (2)

Publication Number Publication Date
JPWO2021020273A1 JPWO2021020273A1 (en) 2021-02-04
JP7493813B2 true JP7493813B2 (en) 2024-06-03

Family

ID=74230241

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021536996A Active JP7493813B2 (en) 2019-07-26 2020-07-22 Explanation generation device, explanation generation method and program

Country Status (2)

Country Link
JP (1) JP7493813B2 (en)
WO (1) WO2021020273A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019082883A (en) 2017-10-31 2019-05-30 株式会社デンソー Inference device, inference method and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019082883A (en) 2017-10-31 2019-05-30 株式会社デンソー Inference device, inference method and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RIBEIRO, Marco Tulio et al.,"Why Should I Trust You?": Explaining the Predictions of Any Classifier,arXiv [online],2016年08月,all 10 pages,Retrieved from the Internet: <URL: https://arxiv.org/abs/1602.04938>

Also Published As

Publication number Publication date
WO2021020273A1 (en) 2021-02-04
JPWO2021020273A1 (en) 2021-02-04

Similar Documents

Publication Publication Date Title
US11200648B2 (en) Method and apparatus for enhancing illumination intensity of image
EP3340129A1 (en) Artificial neural network class-based pruning
KR102428054B1 (en) Image processing method, apparatus, electronic device and storage medium
WO2018131259A1 (en) Text evaluation device and text evaluation method
JP7354463B2 (en) Data protection methods, devices, servers and media
WO2022019913A1 (en) Systems and methods for generation of machine-learned multitask models
CN118673999B (en) Large model fine tuning method, device, equipment, medium and program product
CN112446888A (en) Processing method and processing device for image segmentation model
EP4075343A1 (en) Device and method for realizing data synchronization in neural network inference
CN112116104A (en) Method, apparatus, medium, and electronic device for automatically integrating machine learning
Milutinovic et al. End-to-end training of differentiable pipelines across machine learning frameworks
CN113836804A (en) Animal identification model establishing method based on convolutional neural network and application system thereof
EP4369251A1 (en) Systems and methods for tensorizing convolutional neural networks
CN117495993A (en) A method and system for constructing an image generation model
JP7493813B2 (en) Explanation generation device, explanation generation method and program
WO2020039790A1 (en) Information processing device, information processing method, and program
JP5304401B2 (en) Genetic processing apparatus, genetic processing method and program
CN116935889B (en) Audio category determining method and device, electronic equipment and storage medium
CN118036676A (en) Method and device for acquiring pulse neural network model
Sun et al. Adversarial training for dual-stage image denoising enhanced with feature matching
JP5417967B2 (en) Genetic processing apparatus, genetic processing method and program
WO2020003450A1 (en) Data processing system and data processing method
EP4386626A1 (en) Methods, systems, and computer systems for training a machine-learning model, generating a training corpus, and using a machine-learning model for use in a scientific or surgical imaging system
JP5359622B2 (en) Genetic processing apparatus, genetic processing method, and genetic processing program
KR102878863B1 (en) Processor and method for generating metadata of multimodal data using graph neural network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240416

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240515

R150 Certificate of patent or registration of utility model

Ref document number: 7493813

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150