〔参考形態〕
実施形態1の情報処理システム100の説明に先立ち、参考形態としての情報処理システム100sについて述べる。説明の便宜上、参考形態にて説明した構成要素(コンポーネント)と同じ機能を有する構成要素については、以降の各実施形態では、同じ符号を付記し、その説明を繰り返さない。また、簡潔化のため、公知技術と同様の事項についても、説明を適宜省略する。
本明細書において以下に述べる各数値は、単なる一例であることに留意されたい。本明細書では、2つの数AおよびBについての「A~B」という記載は、特に明示されない限り、「A以上かつB以下」を意味するものとする。
(情報処理システム100sの概要)
図1は、情報処理システム100sの要部の構成を示すブロック図である。情報処理システム100sは、情報処理装置1s、過去物件図面DB(Database)91、および新規物件図面DB92を備える。
情報処理装置1sは、制御装置10s、入力部71、表示部72、および記憶部80を備える。制御装置10sは、学習装置11sおよび図面検索装置12を備える。本明細書の「物件」とは、例えば、プラントエンジニアリングにおける「サイト」を意味する。
情報処理装置1sは、過去物件図面DB91および新規物件図面DB92と通信可能に接続されていればよい。このため、図1の例とは異なり、情報処理装置1sの内部に、過去物件図面DB91および新規物件図面DB92の少なくとも一方が設けられていてもよい。
情報処理装置1s(より具体的には、制御装置10s)による検索対象となる図面(検索対象図面)には、例えば、仕様図面、設計図面、および製作図面が含まれる。また、検索対象図面には、仕様書、設計書、および、見積書が含まれていてもよい。このように、検索対象図面は、「図面」という名称が含まれている書面に限定されない。一例として、検索対象図面には、プラントエンジニアリング分野におけるプロジェクトの計画に関する任意の種類の書面が含まれる。
但し、当業者であれば明らかである通り、本発明の一態様に係る情報処理装置は、プラントエンジニアリング以外の分野における図面の検索についても適用可能である。本発明の一態様に係る図面は、上記情報処理装置によって内容パラメータを取得することが可能な図面であればよい。
制御装置10sは、情報処理装置1sの各部を統括的に制御する。記憶部80は、制御装置10sの処理に用いられる各種のデータおよびプログラムを格納する。以下に述べるように、制御装置10sは、機械学習を利用して、複数の検索対象図面(例:過去図面a1~MN)から、ターゲット図面(例:図面ND)に対応する少なくとも1つの図面を検索する。
入力部71は、ユーザの操作(ユーザ操作)を受け付ける。表示部72は、各種のデータを表示する。一例として、表示部72には、制御装置10sによる検索結果を示すデータが表示されてよい。なお、入力部71と表示部72とは、一体として設けられてもよい。例えば、タッチパネルを用いることにより、入力部71と表示部72とを一体化できる。
(過去物件図面DB91)
過去物件図面DB91には、過去の各物件(既設の各物件)に関する各図面(厳密には、図面データ)が格納されている。以下の説明では、「図面A(ある図面)の図面データ」を、単に「図面A」と適宜略称する。また、「図面Aの図面番号」を、単に「図面A」と適宜略称する。
参考形態では、過去物件図面DB91には、複数のM個の異なる物件のそれぞれについての各図面が格納されている。Mは、1以上の整数である。以下、j番目の物件を、「物件j」とも称する。jは、1以上かつM以下の整数である。
また、過去物件図面DB91には、物件1~Mのそれぞれについて、N個(N種類)の異なる図面が格納されている。Nは、1以上の整数である。以下、物件jにおけるi番目の図面を、「図面(i,j)」とも称する。また、各物件におけるi番目(i種類目)の図面を、総称的に図面iとも称する。iは、1以上かつN以下の整数である。
以上のように、過去物件図面DB91には、合計でT個の図面が格納されている。参考形態の例では、T=M×Nである。Tは、2以上の整数であるものとする。つまり、MおよびNの少なくとも1つは、1以上であるものとする。
具体的には、過去物件図面DB91では、特許文献1と同様に、図2に示す過去物件・図面対応テーブルTB1の形態で、各種類の図面番号が物件番号毎にリスト化されている。以下、過去物件・図面対応テーブルTB1を、「TB1」とも略記する。その他の要素についても、適宜同様に略記する。TB1のi行j列目のセルは、図面(i,j)の図面番号を示す。
図2の例では、便宜上、物件1~3をそれぞれ、物件A~Cとも表記する。図2の例では、1種類目の図面(図面1)は外形図であり、2種類目の図面(図面2)は組立図であり、3種類目の図面(図面3)は基礎図である。また、N種類目の図面(図面N)は構成図である。
以下では、簡単のため、図2の例における図面(1,1)~(N,1)(すなわち、物件AにおけるN種類のそれぞれの図面)を、図面a1~aNとも表記する。例えば、図2の例における図面a1~aNはそれぞれ、物件Aの外形図~構成図を指す。その他の物件における各図面についても、同様に表記する。
以上のように、過去物件図面DB91には、図面a1から図面MNまでの、合計T個の図面が格納されている。以下、図面a1~MNを総称的に、過去図面とも称する。過去図面は、検索対象図面の一例である。このため、図面a1~MNは、検索対象図面群とも称される。
また、本明細書では、複数の過去図面(検索対象図面)のうちの任意の1つの図面を、候補図面とも称する。一例として、図面a1(物件Aの外形図)を候補図面とした場合の、各処理について主に例示する。その他の図面に対する処理については、適宜説明を省略するが、図面a1の場合と同様である。
(新規物件図面DB92)
新規物件図面DB92には、新規物件(例:これから建設が行われる予定である、少なくとも1つの物件)に関する各図面(以下、総称的に新規図面とも称する)が、新規物件データセットとして格納されている。本明細書では、新規物件データセットに含まれる1つの新規物件(物件T)について述べる。
一例として、新規物件図面DB92には、物件Tについて、過去物件と同種類のN個の異なる図面(外形図~構成図)が格納されている。本明細書では、物件Tの外形図を、新規図面の一例として例示する。以下、物件Tの外形図を、図面NDと称する。参考形態における図面NDは、特許文献1と同様であるものとする。
(学習装置11s)
学習装置11sは、過去図面データ取得部111、過去図面内容パラメータ取得部112(候補図面内容パラメータ取得部,検索対象図面内容パラメータ取得部,取得部)、学習用前処理部114(前処理部)、および学習モデル生成部113sを備える。学習装置11sは、図面a1~MNに基づき、図面検索装置12sによる図面検索のための学習モデルを生成する。このことから、学習装置11sは、モデル生成装置と称されてもよい。以下、学習装置11sの処理の流れの一例について述べる。
(候補図面の取得)
過去物件図面DB91では、TB1に従って、図面a1~MNが、図面種類別に予めソートされている。従って、例えば、過去図面データ取得部111は、「図面a1→b1→…→M1」の順に、各外形図を過去物件図面DB91から取得する。続いて、過去図面データ取得部111は、「図面a2→b2→…→M2」の順に、各組立図を過去物件図面DB91から取得する。そして、最終的には、過去図面データ取得部111は、「図面aN→bN→…→MN」の順に、各構成図を過去物件図面DB91から取得する。参考形態におけるこれらの図面a1~MNは、特許文献1と同様であるものとする。
上記の例の場合、過去図面データ取得部111は、はじめにTB1の1行1列目のセルを参照する。そして、過去図面データ取得部111は、上記セルに対応する図面(1,1)、すなわち図面a1を、過去物件図面DB91から取得する。過去図面データ取得部111は、取得した図面a1を、過去図面内容パラメータ取得部112に供給する。
(候補図面に対応する内容パラメータセットの取得)
過去図面内容パラメータ取得部112は、特許文献1と同様にして、図面a1を解析することにより(より詳細には、OCR処理後の図面a1に対して、以下に述べる第k特定文字列に着目した構文解析を行うことにより)、当該図面a1に対応する内容パラメータセットを取得する。内容パラメータセットは、第k特定文字列に対応付けられた第k内容パラメータ(以下、Ak)を示すデータセットである。また、第1~第L内容パラメータを総称的に、内容パラメータとも称する。
本明細書では、各図面について予め設定された特定の文字列(ストリング)を、特定文字列と称する。参考形態では、L個(Lは2以上の整数)の異なる第k特定文字列が、予め設定されているものとする。以下では、k番目の特定文字列を、第k特定文字列と称する。kは、1以上かつL以下の整数である。以下の説明では、第1特定文字列が「電圧値」、第2特定文字列が「電流値」、第3特定文字列が「OR」、第L特定文字列が「開」として設定されている場合について、例示する。
内容パラメータは、図面の記載内容(具体的には、特定文字列に係る記載内容)に関連付けられた量である。従って、内容パラメータは、当該記載内容を数値化(定量化)したデータの1つであると言える。このため、内容パラメータは、図面の記載内容を示す指標として用いられる。
なお、後述するターゲット図面内容パラメータとの区別のため、検索対象図面(過去図面)の内容パラメータを、検索対象図面内容パラメータとも称する。また、検索対象図面の第k内容パラメータを、検索対象図面第k内容パラメータとも称する。但し、以下の説明では、特に明示されない限り、内容パラメータは、過去図面内容パラメータを指すものとする。同様に、特に明示されない限り、内容パラメータセットは、過去図面内容パラメータセットを指すものとする。
本明細書では、図面(i,j)のAkを、Ak(i,j)とも表記する。上述の通り、過去図面内容パラメータ取得部112は、図面(i,j)に対する解析結果(より具体的には、図面(i,j)における特定文字列の検出結果)に基づき、Ak(i,j)を設定する。
以上のように、過去図面内容パラメータ取得部112は、図面a1について、A1~ALを設定する。以上のように、過去図面内容パラメータ取得部112は、候補図面を解析することにより、当該候補図面の内容パラメータを取得する。このことから、過去図面内容パラメータ取得部112は、候補図面内容パラメータ取得部とも呼称される。
また、過去図面内容パラメータ取得部112は、その他の過去図面についても、同様の処理を行う。すなわち、過去図面内容パラメータ取得部112は、図面a1~MNのそれぞれに対し、A1~ALを設定する。
その後、過去図面内容パラメータ取得部112は、図面a1~MNのそれぞれのA1~AL、すなわち、A1(1,1)~AL(M,N)、を示す過去図面内容パラメータテーブルTB2を生成する。
TB2には、過去図面内容パラメータテーブル内第iサブテーブルTB2-iが含まれている。図3には、一例として、TB2-1が示されている。TB2-iは、図面iのそれぞれのA1~ALを示すテーブルである。TB2-1には、図面a1~M1(物件A~Mの外形図)のそれぞれのA1~ALが示されている。TB2は、TB2-1~TB2-Nという、N個のサブテーブルのセットによって構成されている。このように、参考形態では、図面種別ごとにサブテーブルが作成される。参考形態におけるこれらのサブテーブルは、特許文献1と同様であるものとする。
TB2には、複数の過去図面のそれぞれ(例:図面a1)の番号(識別子の一例)と、当該複数の過去図面のそれぞれのA1~ALとの対応関係が示されている。そこで、学習モデル生成部113sは、TB2を教師データとして取得する。一例として、学習モデル生成部113sは、当該教師データを用いた多項ロジスティック回帰を行うことにより、学習モデルを生成してよい。但し、後述の説明からも明らかである通り、本発明の一態様に係る機械学習アルゴリズムは、この例に限定されず、公知のその他のアルゴリズムが適用されてよい。なお、機械学習における正解データとしては、TB2において示されている各過去図面の番号(識別子)が用いられる。
参考形態では、過去図面内容パラメータ取得部112は、第k内容パラメータを取得するとともに、当該第k内容パラメータの変数種類を示す情報(第k内容パラメータ変数種類情報)をさらに取得する。第k内容パラメータ変数種類情報とは、第k内容パラメータの変数種類(データ種類)を示す情報である。具体的には、第k内容パラメータ変数種類情報とは、第k内容パラメータが質的変数(以下、VLと表記)または量的変数(以下、VNと表記)のいずれであるかを示す情報である。以下、第1~第k内容パラメータ変数種類情報を総称的に、内容パラメータ変数種類情報と称する。
一例として、過去図面内容パラメータ取得部112は、上述の構文解析の結果に基づいて、内容パラメータ変数種類情報を取得してよい。例えば、上述の通り、過去図面内容パラメータ取得部112は、構文解析の結果、第1特定文字列「電圧値」に後続する文字列「90V」に含まれる数値「90」が、電圧値の大きさであると判定する。この場合、過去図面内容パラメータ取得部112は、第1内容パラメータはVNであると判定する。同様に、過去図面内容パラメータ取得部112は、第2内容パラメータはVNであると判定する。
また、過去図面内容パラメータ取得部112は、構文解析の結果、第3特定文字列「OR」は、量的変数に対応する文字が後続していない旨を判定する。この場合、過去図面内容パラメータ取得部112は、第3内容パラメータはVLであると判定する。同様に、過去図面内容パラメータ取得部112は、第L内容パラメータはVLであると判定する。
(学習用前処理部114における処理の一例)
学習用前処理部114は、過去図面内容パラメータ取得部112から、図面a1~MNに対応する内容パラメータセット(図面a1~MNのそれぞれの第1~第L内容パラメータ)、および、内容パラメータ変数種類情報を取得する。そして、学習用前処理部114は、取得した内容パラメータ変数種類情報に応じて、内容パラメータ設定テーブルTB3を生成する。
以下の説明では、図面a1~M1(外形図)の内容パラメータセット(図面a1~M1のそれぞれの第1~第L内容パラメータ)に基づく各処理について主に述べる。従って、以下に述べる各図におけるテーブルおよびデータは、外形図の内容パラメータセットに基づいて生成されている。これらのテーブルおよびデータは、図2に示されるその他の種類の図面(例:組立図、基礎図、および構成図)についても、外形図に関する以下の説明と同様の処理の流れによって生成されることに留意されたい。このように、参考形態では、これらのテーブルおよびデータは、図2に示されている図面の種類毎に生成される。
図4には、初期状態におけるTB3の一例が示されている。図4に示す通り、TB3は、(i)第1~第L内容パラメータのそれぞれの変数種類(データ種類)と、(ii)当該第1~第L内容パラメータのそれぞれに適用すべき前処理手法と、の対応関係を示す表である。学習用前処理部114は、取得した内容パラメータ変数種類情報を、TB3の「変数」の項目に記録する。なお、第1~第L内容パラメータのそれぞれに適用すべき前処理手法は、現段階では未決定である。このため、初期状態のTB3では、「前処理手法」の項目は全てブランク項目として設定されている。本明細書では、初期状態のTB3を、TB3initと称する。
続いて、学習用前処理部114は、第k内容パラメータ変数種類情報に応じて、第k内容パラメータに複数種類の前処理手法を適用する。具体的には、参考形態では、学習用前処理部114は、第k内容パラメータがVLである場合には、第kパラメータに対し、以下の(i)~(iv)、
(i)生値(Raw値)をそのまま用いる処理(恒等処理)(以下、[R]と表記);
(ii)ワンホットエンコーディング(One hot Encoding)(以下、[O]と表記)
;
(iii)正規化(Normalization)(以下、[N]と表記);
(iiii)標準化(Standardization)(以下、[S]と表記);
という4種類の前処理手法を適用する。
なお、第k内容パラメータがVLである場合には、当該第k内容パラメータは、第k特定文字列が過去図面内容パラメータ取得部112によってラベルエンコーディング(Label Encoding)(以下、[L]と表記)されることによって導出された値であると理解することもできる。このため、第k内容パラメータがVLである場合には、[R]は[L]に読み替えることができる。このように、第k内容パラメータがVLである場合には、[R]と[L]とは、等価な前処理手法である。なお、前処理手法[L]の一例については、後述する。
他方、学習用前処理部114は、第k内容パラメータがVNである場合には、第kパラメータに対し、以下の(i)~(v)、
(i)[R];
(ii)[L];
(iii)[O];
(iv)[N];
(v)[S];
という5種類の前処理手法を適用する。但し、当業者であれば明らかである通り、本発明の一態様に係る前処理手法は、これらの例に限定されない。本発明の一態様に係る前処理手法は、VLまたはVNに適用可能な任意の前処理手法であってよい。
以上の通り、学習用前処理部114は、内容パラメータセットに含まれる各内容パラメータに対し、第k内容パラメータ変数種類情報に応じた複数種類の前処理手法を適用することにより、当該内容パラメータセットを拡張(水増し)(data augmentation)する。以下、内容パラメータセットに含まれているVLおよびVNの個数を、FLおよびFNとそれぞれ表記する。
上記の説明から明らかである通り、参考形態の例では、内容パラメータセットに対する前処理のパターンの組み合わせの総数は、4FL×5FN通りである。従って、学習用前処理部114は、1つの内容パラメータセットを、4FL×5FN個の内容パラメータセットへと拡張する。以下、当該4FL×5FN個の内容パラメータセットを、総称的に拡張後内容パラメータセットと称する。そして、当該4FL×5FN個の内容パラメータセットのそれぞれを、データセット1、データセット2、…、データセット4FL×5FNと称する。拡張後内容パラメータセットは、前処理後内容パラメータセットと称されてもよい。なお、例えば、データセット1は、データセットNo.1と称されてもよい。
なお、過去図面内容パラメータセットは、検索対象図面内容パラメータセットと称されてもよい。従って、拡張後内容パラメータセットは、過去図面拡張後内容パラメータセット(あるいは、検索対象図面拡張後内容パラメータセット)と称されてもよい。同様に、前処理後内容パラメータセットは、前処理後過去図面内容パラメータセット(あるいは、前処理後検索対象図面内容パラメータセット)と称されてもよい。なお、前処理後内容パラメータセットに含まれる各データは、前処理後内容パラメータ(より詳細には、前処理後検索対象図面内容パラメータ)と称されてもよい。
図5には、各データセットにおける前処理後内容パラメータの数(以下、前処理後内容パラメータ数と称する)の一例が示されている。1つのデータセット(例:データセット1)における前処理後内容パラメータ数は、同データセットに含まれるデータの数とも表現できる。従って、例えば、データセット1における前処理後内容パラメータ数は、データセット1の次元数(要素数)と称されてもよい。以下では、前処理後の第k内容パラメータを、前処理後第k内容パラメータと称する。
以下に述べる図6からも明らかである通り、前処理後内容パラメータ数は、内容パラメータセットに含まれる各内容パラメータに対して適用される前処理手法に応じて変化しうる。例えば、より多くの内容パラメータに対して[O]が適用されるほど、前処理後内容パラメータ数が増加する傾向がある(後述の図8も参照)。
図6は、データセット1のデータ構造を模式的に例示する図である。図6の例におけるデータセット1は、(i)第1内容パラメータに対して[S]が、(ii)第2内容パラメータに対して[S]が、(iii)第3内容パラメータに対して[O]が、(iv)第L内容パラメータに対して[L]が、それぞれ施されることにより、生成されたデータ構造(例:データフレーム)である(後述の図8も参照)。
図6の例では、第3内容パラメータ(第3特定文字列「OR」に対応する内容パラメータ)がワンホットエンコーディングされることにより、「OR_0」、「OR_1」、「OR_2」、および「OR_3」という、当該第3内容パラメータに対応する4つの前処理後内容パラメータが生成されている。
説明の便宜上の一例として、内容パラメータセットに含まれる第3内容パラメータ(A3)の最小値が0であり、最大値が3である場合を考える。すなわち、内容パラメータセットにおいて、A3が0から3までの4通りの離散値をとっている場合を考える。この場合、A3のそれぞれの値は、4次元のワンホットベクトル(より具体的には、4ビットのワンホットベクトル)によって表現可能である。
例えば、A3=0である場合、
OR_0=(1,0,0,0);
OR_1=(0,0,0,0);
OR_2=(0,0,0,0);
OR_3=(0,0,0,0);
である。
また、A3=1である場合、
OR_0=(0,0,0,0);
OR_1=(0,1,0,0);
OR_2=(0,0,0,0);
OR_3=(0,0,0,0);
である。
また、A3=2である場合、
OR_0=(0,0,0,0);
OR_1=(0,0,0,0);
OR_2=(0,0,1,0);
OR_3=(0,0,0,0);
である。
また、A3=3である場合、
OR_0=(0,0,0,0);
OR_1=(0,0,0,0);
OR_2=(0,0,0,0);
OR_3=(0,0,0,1);
である。以上の通り、A3=i(この説明におけるiは、0から3までの任意の自然数)であることは、i番目の要素のみに成分「1」を有するワンホットベクトルOR_iによって表現される。
続いて、前処理手法[N]の一例について説明する。以下では、学習用前処理部114が、第k内容パラメータ(Ak)を正規化する場合を例示する。まず、学習用前処理部114は、内容パラメータセットから、Akの最大値(Akmax)および最小値(Akmin)を取得する。
そして、学習用前処理部114は、
Ak_Normalized=(Ak-Akmin)/(Akmax-Akmin)
…(1)
の通り、Ak_Normalizedを算出する。Ak_Normalizedは、正規化後第k内容パラメータ(より詳細には、正規化後過去図面第k内容パラメータ)と称される。また、正規化後第1~第L内容パラメータを総称的に、正規化後内容パラメータ(より詳細には、正規化後過去図面内容パラメータ)と称する。正規化後内容パラメータは、前処理後内容パラメータの一例である。
以上の通り、学習用前処理部114は、式(1)に従って、AkをAk_Normalizedへと正規化する。正規化は、Min-Maxスケーリングとも称される。式(1)から理解される通り、[N]によって生成されたデータセットでは、正規化後内容パラメータの最小値は0であり、最大値は1である。
さらに、前処理手法[S]の一例について説明する。以下では、学習用前処理部114が、Akを標準化する場合を例示する。まず、学習用前処理部114は、内容パラメータセットから、Akの平均値(Akmean)および標準偏差(Aksd)を導出する。
続いて、学習用前処理部114は、
Ak_Standardized=(Ak-Akmean)/Aksd …(2)の通り、Ak_Standardizedを算出する。Ak_Standardizedは、標準化後第k内容パラメータ(より詳細には、標準化後過去図面第k内容パラメータ)と称される。また、標準化後第1~第L内容パラメータを総称的に、標準化後内容パラメータ(より詳細には、標準化後過去図面内容パラメータ)と称する。標準化後内容パラメータは、前処理後内容パラメータの一例である。
以上の通り、学習用前処理部114は、式(2)に従って、AkをAk_Standardizedへと標準化する。式(2)から理解される通り、[S]によって生成されたデータセットでは、標準化後内容パラメータの平均値は0であり、標準偏差は1である。
学習用前処理部114は、[S]の過程にて取得したAkmaxおよびAkminを記録した表(標準化用データ表)を生成してもよい。同様に、学習用前処理部114は、[N]の過程にて取得したAkmeanおよびAksdを記録した表(正規化用データ表)を生成してもよい。
図7の正規化用データ表700Aおよび標準化用データ表700Bはそれぞれ、参考形態における正規化用データ表および標準化用データ表の一例である。具体的には、正規化用データ表700Aおよび標準化用データ表700Bはそれぞれ、データセット1の生成に伴って生成された表である。
上述の説明から理解される通り、[N]が施されない第k内容パラメータについては、AkmaxおよびAkminがそもそも取得されない。このため、正規化用データ表700Aでは、[N]が施されない第k内容パラメータについては、AkmaxおよびAkminに、ダミー値(例:0)が割り当てられる。
上述の例では、データセット1における前処理後第1~第3内容パラメータおよび前処理後第L内容パラメータはいずれも、[N]以外の前処理手法によって導出されている。このため、図7に示される通り、正規化用データ表700Aでは、前処理後第1~第3内容パラメータおよび前処理後第N内容パラメータについては、AkmaxおよびAkminとして、ダミー値である0が記録される。
参考形態では、学習用前処理部114によって、A1mean=71.9、A1sd=10.5、A2mean=2.4、A2sd=0.6が取得された場合を例示する。この場合、学習用前処理部114は、標準化用データ表700Bの第1内容パラメータおよび第2内容パラメータのそれぞれの項目に、これらの値を記録する。
なお、[S]が施されない第k内容パラメータについては、AkmeanおよびAksdがそもそも取得されない。このため、標準化用データ表700Bでは、[S]が施されない第k内容パラメータについては、AkmeanおよびAksdに、ダミー値(例:0)が割り当てられる。図7の例では、前処理後第3内容パラメータおよび前処理第L内容パラメータはいずれも、[S]以外の前処理手法によって導出されている。このため、標準化用データ表700Bでは、前処理後第3内容パラメータおよび前処理第L内容パラメータについては、AkmaxおよびAkminとして、ダミー値である0が記録される。
学習用前処理部114は、各データセットと各前処理手法との対応関係を示すテーブル(データセット・前処理手法対応テーブル)を生成してよい。図8のテーブルTB4は、データセット・前処理手法対応テーブルの一例である。なお、図8の例において、データセット1に対応する前処理手法にハッチングが付されている趣旨については後述する。
図9には、学習用前処理部114によって生成された複数のデータセットの内の一部が例示されている。図9において、符号900Aはデータセット1を、符号900Bはデータセット2を、符号900Cはデータセット4FL×5FNを、それぞれ表す。上述の説明から理解される通り、データセット1における前処理後第1~第2内容パラメータはそれぞれ、標準化後第1~第2内容パラメータである。標準化後第1内容パラメータおよび標準化後第2内容パラメータはそれぞれ、上述の式(2)に従って第1内容パラメータおよび第2内容パラメータが標準化された値である。
上述の図8から理解される通り、図9の例におけるデータセット2は、データセット1とは異なり、第3内容パラメータに対して[L]が適用されることにより生成されている。その他の内容パラメータに対する前処理手法については、データセット1の例と同様である。
以上の通り、データセット2では、データセット1とは異なり、第3内容パラメータに対して[O]が適用されていない。それゆえ、データセット2の次元数は、データセット1の次元数よりも小さい。具体的には、上述の図5に示す通り、データセット1の次元数は50であり、データセット2の次元数は28である。
また、上述の図8から理解される通り、図9の例におけるデータセット4FL×5FNは、データセット1・2とは異なり、全ての内容パラメータに対して[O]が適用されることにより生成されている。このため、データセット4FL×5FNの次元数は、データセット1・2の次元数に比べて大きい。具体的には、図5に示す通り、データセット4FL×5FNの次元数は151である。
(学習モデル生成部113sにおける学習フェーズ)
学習モデル生成部113sにおける処理は、学習フェーズと検証フェーズとに大別できる。まず、学習フェーズについて述べる。学習モデル生成部113sは、学習用前処理部114から拡張後内容パラメータセット(データセット1~データセット4FL×5FN)を取得する。そして、学習モデル生成部113sは、データセット1~データセット4FL×5FNのそれぞれを、訓練データと検証データとに分割する。
学習モデル生成部113sは、データセット1~4FL×5FNの内の任意の1つのデータセット(便宜上、注目データセットと称する)に対し、所定の複数種類の機械学習アルゴリズムのそれぞれを適用することによって、複数の学習モデルを生成する。具体的には、学習モデル生成部113sは、所定の複数種類の機械学習アルゴリズムのそれぞれを適用することによって、注目データセットの訓練データを用いて、複数の学習モデルを生成する。
一例として、学習モデル生成部113sは、所定の複数種類の機械学習アルゴリズムのそれぞれを適用することによって、データセット1の訓練データを用いて、データセット1に対応する複数の学習モデルを生成する。このように、学習モデル生成部113sは、注目データセットに対応する複数の学習モデルを生成する。
参考形態の例では、複数種類の機械学習アルゴリズムには、勾配ベースの機械学習アルゴリズムと距離ベースの機械学習アルゴリズムとが含まれる。勾配ベースの機械学習アルゴリズムとは、勾配降下法を利用した機械学習アルゴリズムである。勾配ベースの機械学習アルゴリズムの具体例としては、DT(Decision Tree,決定木)、LR(Logistic Regression,ロジスティック回帰)、およびNN(Neural Network,ニューラルネットワーク)を挙げることができる。上述の多項ロジスティック回帰は、RSの一例である。
本発明の一態様に係るDTとは、より厳密には、GBDT(Gradient Boosting DT,勾配ブースティング決定木)を意味する。従って、本発明の一態様に係るDTの例としては、XGBoost(eXtreme Gradient Boosting)およびLightGBM(Light Gradient Boosting Machine)を挙げることができる。
距離ベースの機械学習アルゴリズムとは、各入力データに含まれる1つ以上のパラメータの分布を示す距離空間における各入力データ間の距離に基づいて、各入力データを評価(例:分類)する機械学習アルゴリズムである。距離ベースの機械学習アルゴリズムの具体例としては、SVM(Support Vector Machine,サポートベクターマシン)および重回帰を挙げることができる。
以上の通り、学習モデル生成部113sは、データセット1~4FL×5FNのそれぞれに対して各機械学習アルゴリズムを網羅的に(総当たりで)適用することにより、複数の学習モデルを生成してよい。これにより、以下に述べる検証フェーズにおいて評価(検証)の対象となる学習モデルを、十分な数だけ生成できる。
加えて、学習モデル生成部113sは、ある機械学習アルゴリズムの各ハイパーパラメータセットを変更してもよい。この場合、学習モデル生成部113sは、変更後のハイパーパラメータセットを用いて、同機械学習アルゴリズムを適用して学習モデルをさらに生成する。このように、学習モデル生成部113sは、ハイパーパラメータセットをも網羅的に適用することにより、複数の学習モデルを生成してもよい。これにより、さらに多くの学習モデルを生成できる(後述の図10を参照)。
(学習モデル生成部113sにおける検証フェーズ)
続いて、検証フェーズについて述べる。学習モデル生成部113sは、学習フェーズにおいて生成された複数の学習モデルのそれぞれの品質を、データセット1~4FL×5FNのそれぞれを用いて(より具体的には、データセット1~4FL×5FNのそれぞれの検証データを用いて)評価する。
一例として、注目データセットとしてデータセットjを考える。jは、後述するTB5(図10を参照)の列番号を示す添字である。学習モデル生成部113sは、データセットjに対応する複数の学習モデルのそれぞれについて、データセットjの検証データを用いて、当該複数の学習モデルのそれぞれの予測精度(判定精度)を示す指標値を取得する。例えば、学習モデル生成部113は、後述するモデル(i,j)にデータセットjの検証データを入力することにより、上記指標値をモデル(i,j)に出力(導出)させる。上記指標値は、モデル(i,j)の品質を示す指標値とも表現できる。
参考形態では、学習モデル生成部113sは、上記指標値として、Accuracy(正解率)を取得する。このことから、参考形態における予測精度は、検索精度(より詳細には、過去図面の検索精度)と称されてもよい(図10を参照)。但し、当業者であれば明らかである通り、本発明の一態様に係る指標値は上記の例に限定されず、機械学習分野における公知のその他の指標値が用いられてもよい。従って、例えば、学習モデル生成部113sは、指標値として、Precision(適合率)またはRecall(再現率)を取得してもよい。あるいは、学習モデル生成部113sは、指標値として、Fスコア(F-score)を取得してもよい。周知の通り、Fスコアは、PrecisionとRecallとの調和平均である。
学習モデル生成部113sは、取得した複数の指標値に応じて、ベスト学習モデルを選択する。参考形態の例では、学習モデル生成部113sは、複数の指標値の内の最大値(最大指標値)を特定する。そして、学習モデル生成部113sは、最大指標値を有する学習モデルを、ベスト学習モデルとして選択する。
学習モデル生成部113sは、評価フェーズにおける評価結果を示すテーブル(評価結果テーブル)を生成してよい。図10のテーブルTB5は、評価結果テーブルの一例である。TB5では、1つのデータセットと1つの機械学習アルゴリズムと1つのハイパーパラメータセット(例:Para1)と1対1に対応するように、1つの指標値が記録されている。
図10の例におけるPara1およびPara2はそれぞれ、ある1つの機械学習アルゴリズム(例:DT)に適用されるハイパーパラメータセット(一連のハイパーパラメータ)を示す。図16の例では、
・DTのPara1:データ分割方法="gni"、最大深度=3、…
・DTのPara2:データ分割方法="entropy"、最大深度=3、…
・LRのPara1:正則化の種類="l2"、正則化項の係数=1.0、…
・LRのPara2:正則化の種類="l2"、正則化項の係数=0.5、…
・NNのPara1:バッチサイズ=256、最大学習回数=1000、…
・NNのPara2:バッチサイズ=128、最大学習回数=1000、…
・SVMのPara1:カーネルの種類="rbf"、正則化項の係数=1.0、…
・SVMのPara2:カーネルの種類="rbf"、正則化項の係数=0.5、…
の通りである。なお、当業者であれば明らかである通り、ハイパーパラメータセットの数は2つに限定されない。例えば、Para1~Para5までの5つのハイパーパラメータセットが、各機械学習アルゴリズムに対して割り当てられてもよい。
以下では、TB5のi行j列目の成分を、TB5(i,j)と表記する。また、TB5(i,j)に対応する学習モデルを、モデル(i,j)と称する。TB8では、行方向(i方向)に、機械学習アルゴリズムおよび当該機械学習アルゴリズムのハイパーパラメータセットが配列されている。そして、列方向(j方向)に、データセットが配列されている。従って、一例として、図10におけるTB8(1,1)は、DTにおいてPara1が適用された場合に得られた検索精度である。図10の例では、TB5(i,j)=42.1%である。上述の通り、TB5(1,1)は、Para1が適用されたDTによって生成された学習モデル、すなわちモデル(1,1)の品質を示す指標値とも言える。
説明の便宜上、図10の例において、NNのPara1に対応する行番号を、imと表記する。図10の例では、TB5(im,1)=81.6%が、各TB5(i,j)の内の最大値である(TB5においてハッチングが付されているセルを参照)。
以上の通り、学習装置11sは、図面a1~M1(外形図)の内容パラメータセット(便宜上、第1図面種類内容パラメータセットと称する)に基づいて、複数の学習モデルを生成する。そして、学習装置11は、第1図面種類内容パラメータセットに基づいて生成した当該複数の学習モデルのそれぞれの品質を評価する(より具体的には、生成した複数の学習モデルのそれぞれの指標値を導出する)。
外形図についての上記の例と同様に、学習装置11sは、図面の種類毎に、当該図面の内容パラメータセットに基づいて、複数の学習モデルを生成する。そして、学習装置11sは、当該内容パラメータセットに基づいて生成した複数の学習モデルのそれぞれの品質を評価する。
一例として、学習装置11sは、図面a2~M2(組立図)の内容パラメータセット(便宜上、第2内容図面種類パラメータセットと称する)に基づいて、複数の学習モデルを生成する。そして、学習装置11は、第2図面種類内容パラメータセットに基づいて生成した複数の学習モデルのそれぞれの品質を評価する。別の例として、学習装置11sは、図面aN~MN(構成図)の内容パラメータセット(便宜上、第N図面種類内容パラメータセットと称する)に基づいて、複数の学習モデルを生成する。そして、学習装置11sは、第N図面種類内容パラメータセットに基づいて生成した複数の学習モデルのそれぞれの品質を評価する。
参考形態では、以上の通り第1図面種類内容パラメータセット~第N図面種類内容パラメータセットに基づいて導出された全ての指標値の内、TB5(im,1)が、最大値であるものとする。従って、参考形態では、学習モデル生成部113sは、TB5(im,1)を最大指標値として特定する。そして、学習モデル生成部113sは、最大指標値を有する学習モデル、すなわちモデル(im,1)を、ベスト学習モデルとして選択する。以上の通り、参考形態の例では、学習モデル生成部113sは、学習フェーズにおいて生成された複数の学習モデルの内、最も高品質な学習モデルを、ベスト学習モデルとして選択する。なお、本明細書では、ベスト学習モデルに対応する機械学習アルゴリズムを、ベスト機械学習アルゴリズムと称する。図10の例におけるベスト機械学習アルゴリズムは、NNである。
なお、当業者であれば明らかである通り、ベスト学習モデルの選択手法は上記の例に限定されない。学習モデル生成部113sは、複数の指標値に基づいて、複数の学習モデルの内から、ベスト学習モデルを選択できればよい。例えば、学習モデル生成部113sは、複数の指標値に基づいて統計値を導出し、当該統計値に基づいてベスト学習モデルを選択してよい。参考形態における最大指標値は、統計値の一例である。
(学習フェーズについての補足)
ところで、距離ベースの機械学習アルゴリズムは、勾配ベースの機械学習アルゴリズムとは異なり、いわゆる「次元の呪い」の影響を受けることが知られている。このため、注目データセットの次元数が多い場合、距離ベースの機械学習アルゴリズムによって生成された学習モデル(以下、距離ベース学習モデルと称する)は、勾配ベースの機械学習アルゴリズムによって生成された学習モデル(以下、勾配ベース学習モデルと称する)に比べて、低品質な学習モデルとなる傾向にある。このことから、注目データセットの次元数が多い場合、当該注目データセットを用いて生成された距離ベース学習モデルがベスト学習モデルとして選択される可能性はそもそも低いと考えられる。
そこで、参考形態では、学習モデル生成部113は、注目データセットの次元数が所定の次元数閾値Dth以上である場合には、当該注目データセットを用いて距離ベースの機械学習アルゴリズムによって学習モデルを生成することを停止することが好ましい。これにより、品質が低いと予期される学習モデルが生成されることを未然に防止することができるので、学習フェーズにおける演算コストを低減できる。加えて、後続する評価フェーズにおける演算コストを低減することもできる。
機械学習分野では、データセットの次元数が30以上の場合、距離ベース学習モデルの品質が低下する傾向が高くなることが経験的に知られている。そこで、例えば、Dthは30以上の所定の値として設定されてよい。参考形態では、Dth=30に設定されている場合を例示する。
上述の通り、参考形態の例では、データセット1の次元数は50であり、データセット4FL×5FNの次元数は151である。このため、図10の例では、学習モデル生成部113sは、データセット1およびデータセット4FL×5FNに対しては、距離ベースの機械学習アルゴリズム(例:SVM)による学習モデルの生成を行わない(TB5において「×」マークが付されているセルを参照)。
以上のことから、図10の例では、学習モデル生成部113sは、データセット1およびデータセット4FL×5FNに対しては、勾配ベースの機械学習アルゴリズム(例:DT、LR、およびNN)のみを適用して、学習モデルを生成する。このように、学習モデル生成部113sは、データセット1およびデータセット4FL×5FNに対しては、距離ベース学習モデルを生成することなく、勾配ベース学習モデルのみを生成する。
他方、学習モデル生成部113sは、注目データセットの次元数がDth未満である場合には、距離ベースの機械学習アルゴリズムを適用して、当該データセットを用いて学習モデルを生成してもよい。参考形態の例では、データセット2の次元数は28である。このため、図10の例では、学習モデル生成部113は、データセット2に対しては、勾配ベース学習モデルを生成するとともに、距離ベース学習モデルをさらに生成する。
(学習モデル生成部113sにおける検証フェーズ後の処理)
学習モデル生成部113sは、TB5に含まれている各データセットのうち、ベスト学習モデルに対応する1つのデータセットを、ベストデータセットとして選択する。図10の例では、学習モデル生成部113sは、データセット1をベストデータセットとして選択する。
続いて、学習モデル生成部113sは、ベストデータセットに対応する前処理手法を、ベスト前処理手法として選択する。参考形態の例では、学習モデル生成部113sは、上述のTB4を参照し、データセット1に対応する前処理手法を、ベスト前処理手法として読み出す(図8のハッチング箇所を参照)。以上の説明から理解される通り、学習モデル生成部113sは、ベスト学習モデルに対応する前処理手法を、ベスト前処理手法として選択する。
続いて、学習モデル生成部113sは、上述のTB3initにおける「前処理手法」の項目に、ベスト前処理手法を記録することにより、TB3initを更新する。本明細書では、更新後の内容パラメータ設定初期テーブルを、TB3newと称する。図11には、TB3newの一例が示されている。図11の例では、データセット1に対応する前処理手法(換言すれば、ベスト学習モデルに対応する前処理手法)が、ベスト前処理手法として、「前処理手法」の項目に記録されている。
(図面検索装置12)
続いて、図面検索装置12について述べる。図面検索装置12は、新規図面データ取得部121、新規図面内容パラメータ取得部122(ターゲット図面内容パラメータ取得部)、検索用前処理部125、および検索部126を備える。
図面検索装置12は、学習装置11sによって生成された学習モデル(参考形態の例では、ベスト学習モデル)を用いて、ターゲット図面を複数の検索対象図面のそれぞれと照合することにより、少なくとも1つの図面を検索する。参考形態の図面NDは、ターゲット図面の一例である。以下に述べるように、図面検索装置12では、上記学習モデルを用いて、図面NDに対し、図面a1~MNのそれぞれとの照合が行われる。
(新規図面の取得)
新規図面データ取得部121は、過去図面データ取得部111と対になる機能部である。一例として、新規図面データ取得部121は、入力部71が所定のユーザ操作を受け付けたことを契機として、新規物件図面DB92の新規物件データセットに含まれている、所定の新規図面(例:図面ND)を取得する。新規図面データ取得部121は、取得した図面NDを、新規図面内容パラメータ取得部122に供給する。
(新規図面に対応する内容パラメータセットの取得)
新規図面内容パラメータ取得部122は、過去図面内容パラメータ取得部112と対になる機能部である。新規図面内容パラメータ取得部122は、過去図面内容パラメータ取得部112と同様の処理により、図面NDに対応する内容パラメータセットを取得する。すなわち、新規図面内容パラメータ取得部122は、過去図面内容パラメータ取得部112と同じ解析手法によって図面NDを解析することにより、当該図面NDの内容パラメータを取得する。
以下、図面NDの第k内容パラメータを、Ckとも称する。なお、上述の検索対象図面内容パラメータとの区別のため、ターゲット図面(図面ND)の内容パラメータを、ターゲット図面内容パラメータとも称する。また、ターゲット図面の第k内容パラメータを、ターゲット図面第k内容パラメータとも称する。ターゲット図面内容パラメータは、新規図面内容パラメータと称されてもよい。このため、ターゲット図面第k内容パラメータは、新規図面第k内容パラメータと称されてもよい。
以上のように、新規図面内容パラメータ取得部122は、図面NDに対し過去図面内容パラメータ取得部112と同様の処理を行うことにより、C1~CLを設定する。その後、新規図面内容パラメータ取得部122は、C1~CLを示す新規図面内容パラメータテーブルTB-NDを生成してよい。図12には、TB-NDの一例が示されている。
(検索用前処理部125における処理の一例)
検索用前処理部125は、新規図面内容パラメータ取得部122から、図面NDに対応する内容パラメータセット(便宜上、新規図面内容パラメータセットと称する)を取得する。具体的には、新規図面内容パラメータセットとは、図面NDの第1~第L内容パラメータ(C1~CL)を含むデータセットを意味する。一例として、検索用前処理部125は、新規図面内容パラメータ取得部122から、上述のTB-NDを取得する。
また、検索用前処理部125は、学習モデル生成部113sから、ベスト前処理手法を取得する。一例として、検索用前処理部125は、学習モデル生成部113sからTB3を取得し、TB3からベスト前処理手法を読み出す。
続いて、検索用前処理部125は、ベスト前処理手法に従って、新規図面内容パラメータセットに対して前処理を施すことにより、前処理後新規図面内容パラメータセットを生成する。すなわち、検索用前処理部125は、ベスト前処理手法と同じ前処理手法をC1~CLのそれぞれに施すことにより、前処理後新規図面内容パラメータセットを生成する。参考形態の例では、検索用前処理部125は、(i)C1に[S]を施し、(ii)C2に[S]を施し、(iii)C3に[O]を施し、かつ、(iv)CLに[L]を施
す。
なお、新規図面内容パラメータセットは、ターゲット図面内容パラメータセットと称されてもよい。従って、前処理後新規図面内容パラメータセットは、前処理後ターゲット図面内容パラメータセットと称されてもよい。
検索用前処理部125は、前処理後新規図面内容パラメータセットを示すテーブル(前処理後新規図面内容パラメータテーブル)を生成してよい。図13に示されているTB-NDPは、参考形態における前処理後新規図面内容パラメータテーブルの一例である。上述の説明から明らかである通り、前処理後新規図面内容パラメータセットは、データセット1と同じデータ構造を有している(上述の図6も参照)。
なお、検索用前処理部125における前処理手法[S]の一例について説明すれば、次の通りである。以下では、検索用前処理部125によって、Ck(図面NDの第k内容パラメータ)を標準化する場合について述べる。
まず、検索用前処理部125は、上述の標準化用データ表700Bを参照し、AkmeanおよびAksdを取得する。続いて、検索用前処理部125は、
Ck_Standardized=(Ck-Akmean)/Aksd …(3)
の通り、Ck_Standardizedを算出する。Ck_Standardizedは、図面NDにおける標準化後の第k内容パラメータである。Ck_Standardizedは、標準化後新規図面第k内容パラメータとも称される。標準化後新規図面第k内容パラメータは、前処理後新規図面第k内容パラメータの一例である。
また、検索用前処理部125における前処理手法[N]の一例について説明すれば、次の通りである。まず、検索用前処理部125は、上述の正規化用データ表700Aを参照し、AkmaxおよびAkminを取得する。続いて、検索用前処理部125は、
Ck_Normalized=(Ck-Akmin)/(Akmax-Akmin)
…(4)
の通り、Ck_Normalizedを算出する。Ck_Normalizedは、図面NDにおける正規化後の第k内容パラメータである。Ck_Normalizedは、正規化後新規図面第k内容パラメータとも称される。正規化後新規図面第k内容パラメータは、前処理後新規図面第k内容パラメータの別の例である。
(検索部126における検索フェーズ)
検索部126は、検索用前処理部125から、前処理後新規図面内容パラメータセットを取得する。また、検索部126は、学習モデル生成部113から、ベスト学習モデルを取得する。検索部126は、前処理後新規図面内容パラメータセットをベスト学習モデルに入力する。そして、検索部126は、前処理後新規図面内容パラメータセットに応じたベスト学習モデルの出力を、ベスト学習モデルから取得する。
一例として、参考形態における各学習モデルが、図面NDに対する各過去図面(図面a1~MN)の関連性の高さを示すスコア(指標)である関連性スコアを出力(導出)するように訓練された学習モデルである場合を考える。関連性スコアの導出方法の例については、特許文献1を参照されたい。
この場合、検索部126は、ベスト学習モデルに前処理後新規図面内容パラメータセットを入力することにより、当該前処理後新規図面内容パラメータセットに応じた関連性スコアを、ベスト学習モデルに出力させる。そして、検索部126は、ベスト学習モデルの出力(例:関連性スコア)に基づいて、図面NDに対応する少なくとも1つの過去図面を検索する。関連性スコアに基づく当該過去図面の検索手法の例については、特許文献1を参照されたい。検索部126は、特許文献1と同様に、検索結果を示すデータを、表示部72に表示させてよい。
(参考形態の効果)
参考形態における情報処理システム100s(情報処理装置1s)によれば、上記先行技術(特許文献1の技術)と同様に、図面検索におけるユーザの利便性を従来よりも高めることが可能となる。加えて、学習装置11sによれば、上記先行技術とは異なり、検索対象図面内容パラメータセット(過去図面内容パラメータセット)に対して複数種類の前処理手法が網羅的に施されることにより、当該検索対象図面内容パラメータセットが拡張される。すなわち、複数の前処理後検索対象図面内容パラメータセットが生成される。
続いて、複数の機械学習アルゴリズムを適用することにより、複数の前処理後検索対象図面内容パラメータセット(例:データセット1~4FL×5FN)を用いて、複数の学習モデルが生成される。そして、複数の学習モデルのそれぞれの品質を示す指標値(例:過去図面の検索精度)に基づいて、当該複数の学習モデルの内から、ベスト学習モデルが選択される。言い換えれば、上記指標値に基づいて、複数の機械学習アルゴリズムの内から、ベスト機械学習アルゴリズムが選択される。続いて、ベスト学習モデルに対応するベスト前処理手法が選択される。
一般的に、機械学習アルゴリズムによって生成される学習モデルの品質は、学習用データ(例:検索対象図面内容パラメータセット)に適用される前処理手法に応じて変化しうる。加えて、学習モデルの品質は、前処理後の学習用データに適用される機械学習アルゴリズムの種類に応じても変化しうる。
適切な前処理手法および機械学習アルゴリズムが選択された場合には、高品質な学習モデルを生成することが可能である。但し、機械学習分野において適用可能な前処理手法および機械学習アルゴリズムの種類は、多岐に亘っている。このため、学習モデルの品質向上に好適な(理想的には最適な)前処理手法および機械学習アルゴリズムの組み合わせを、ユーザが人為的に選択することは必ずしも容易ではない。
そこで、学習装置11sでは、上述の通り、生成された複数の学習モデルのそれぞれを、上記指標値に基づいて網羅的に評価することにより、ベスト学習モデルおよびベスト前処理手法が選択される。すなわち、生成された複数の学習モデルに対してグリッドサーチを行うことにより、ベスト学習モデルおよびベスト前処理手法が選択される。
上記の構成によれば、ユーザの人為的な選択を経ることなく、ベスト学習モデルおよびベスト前処理手法を特定することができる。すなわち、学習モデルの品質向上に最適である(少なくとも好適である)と期待される前処理手法および機械学習アルゴリズムの組み合わせを、学習装置11によって自動的に選択できる。
その後、図面検索装置12では、学習装置11sによって選択されたベスト前処理手法に従って、ターゲット図面内容パラメータセット(新規図面内容パラメータセット)に対して前処理が施される。すなわち、ベスト前処理手法に従って、前処理後ターゲット図面内容パラメータセット(前処理後新規図面内容パラメータセット)が生成される。
上記の構成によれば、ベスト学習モデルに適したデータ構造を有する入力データセットとして、前処理後ターゲット図面内容パラメータセットが生成される。このため、当該前処理後ターゲット図面内容パラメータセットをベスト学習モデルに入力することにより、上記先行技術に比べてさらに高精度な学習モデルの出力(例:ベスト学習モデルによって導出された関連性スコア)を得ることができる。
以上の通り、情報処理システム100sでは、(i)学習装置11sによって予め選択されたベスト前処理手法、および、(ii)学習装置11sによって予め生成されたベスト学習モデルを用いて、図面検索装置12に検索を行わせることができる。その結果、情報処理システム100sによれば、上記先行技術に比べてさらに高い検索精度を実現できる。
(参考形態における補足)
前処理手法[L]の一例について、以下に説明する。参考形態では、学習用前処理部114は、生値・ラベル値変換テーブルに従って、生値(過去図面内容パラメータ取得部112によって取得された内容パラメータ)をラベルエンコーディングしてよい。具体的には、学習用前処理部114は、ある生値と当該生値に対応するラベル値の対応関係を示すテーブル(以下、生値・ラベル値変換テーブルと称する)に従って、生値をラベル値へと変換してよい。
一例として、情報処理システム100sでは、第1~第L内容パラメータのそれぞれについて、個別の生値・ラベル値変換テーブルが予め設定されている。以下、第k内容パラメータに対応する生値・ラベル値変換テーブルを、第k生値・ラベル値変換テーブルと称する。
図14には、複数の生値・ラベル値変換テーブルの内の一部が例示されている。図14において、(i)符号1400-1は第1生値・ラベル値変換テーブルを、(ii)符号1400-2は第2生値・ラベル値変換テーブルを、(iii)符号1400-3は第3生値・ラベル値変換テーブルを、(iv)符号1400-Lは第L生値・ラベル値変換テーブルを、それぞれ表す。
図14の例では、学習用前処理部114は、第k生値・ラベル値変換テーブルに従って、第k内容パラメータをラベルエンコーディングしてよい。例えば、学習用前処理部114は、第1生値・ラベル値変換テーブルに従って、第1内容パラメータをラベルエンコーディングする。また、学習用前処理部114は、第L生値・ラベル値変換テーブルに従って、第L内容パラメータをラベルエンコーディングする。
以上の通り、第k内容パラメータの変数種類によらず(すなわち、第k内容パラメータがVLまたはVNのいずれであっても)、当該第k内容パラメータに対し、前処理手法[L]が施されてよい。なお、上述の通り、第k内容パラメータがVLである場合には、[L]は、[R]と等価な前処理手法であると言える。
別の例として、情報処理システム100sでは、第1~第L生値・ラベル値変換テーブルを統合したテーブル(以下、生値・ラベル値変換統合テーブルと称する)が予め作成されていてもよい。図15における符号1500は、生値・ラベル値変換統合テーブルの一例を表す。
図15の例において、生値・ラベル値変換統合テーブルのk行目は、第k生値・ラベル値変換テーブルに対応する。従って、学習用前処理部114は、生値・ラベル値変換統合テーブルのk行目を参照し、第k内容パラメータをラベルエンコーディングしてもよい。例えば、学習用前処理部114は、生値・ラベル値変換統合テーブルの2行目を参照し、第2内容パラメータをラベルエンコーディングする。
〔実施形態1〕
図16は、実施形態1の情報処理システム100の要部の構成を示すブロック図である。情報処理システム100の情報処理装置を、情報処理装置1と称する。情報処理装置1の制御装置を、制御装置10と称する。制御装置10の学習装置を、学習装置11(モデル生成装置)と称する。
学習装置11は、学習装置11sとは異なり、決定部115をさらに備える。また、学習装置11は、学習装置11sの学習モデル生成部113sに替えて、学習モデル生成部113(学習部)を備える。学習装置11の各部の動作の説明に先立ち、参考形態において改善可能な点について以下に述べる。
上述の通り、参考形態では、第k内容パラメータ変数種類情報に応じた複数種類の前処理手法を第k内容パラメータに適用することにより、内容パラメータセットが拡張される。次いで、拡張後内容パラメータセットを用いた学習モデルの生成および検証(評価)を通じて、ベスト学習モデルおよびベスト前処理手法が選択される。
しかしながら、参考形態では、第k内容パラメータに適用される前処理手法次第では、拡張後内容パラメータセットに含まれる複数の説明変数間(複数の前処理後内容パラメータ間)において、多重共線性(multicollinearity)が発生しうる。当業者であれば理解できる通り、多重共線性が発生している複数の説明変数を用いて学習モデルを生成した場合には、当該学習モデルの品質が低下しうる。
また、当業者であれば理解できる通り、多重共線性の発生リスクは、ある学習モデルを生成するための学習用データの次元数(参考形態の例では、前処理後内容パラメータ数)が大きくなるにつれて高くなる。上述の通り、複数種類の前処理手法のうちの1つは、[O](ワンホットエンコーディング)でありうる。参考形態における説明から理解できる通り、[O]は、前処理後内容パラメータ数の増加をもたらす前処理手法の典型例であると言える。
このことから、より多くの第k内容パラメータに[O]が適用されるほど、多重共線性の発生リスクが高まると懸念される。従って、学習モデルの品質をさらに高めるためには(例:より高品質なベスト学習モデルを得るためには)、多重共線性を排除するための方策を導入することが好ましいと考えられる。実施形態1の学習装置11は、この考え方に基づき、本願の発明者らによって新たに創作された。
(決定部115の処理の一例)
以下、内容パラメータセットの拡張によって得られたある1つのデータセット(すなわち、上述の注目データセット)に対する、決定部115の一連の処理について説明する。以下では、上述の図9における符号900Aに示されているデータセット1が、注目データセットである場合について説明する。決定部115は、データセット1に含まれている異なる2つの前処理後内容パラメータセットのそれぞれについて、決定係数を算出する。
具体的には、決定部115は、
…(5)
の通り、決定係数Rijを算出する。決定係数Rijは、以下に述べるIkとJkとの間の決定係数である。実施形態1の説明において、iは1≦i<Pを満たす整数であり、jはi<j≦Pを満たす整数である。Pは、注目データセットの次元数(行数)である。Pは、注目データセットの系列数と称されてもよい。実施形態1の例では、P=50である(上述の図5を参照)。
式(5)におけるIkは、データセット1に含まれているP個の前処理後内容パラメータの内、i番目の前処理後内容パラメータ(ある1つの前処理後内容パラメータ)である。Jkは、データセット1に含まれているP個の前処理後内容パラメータの内、j番目の前処理後内容パラメータ(別の1つの前処理後内容パラメータ)である。Qは、注目データセットの項目数(列数)である。実施形態1の例では、Q=Mである。Iaveは、I1~IQの平均値である。Javeは、J1~JQの平均値である。
以上の通り、決定部115は、注目データセットに含まれる任意の2つの異なる前処理後内容パラメータ間の決定係数を算出してよい。実施形態1では、決定部115は、式(5)に従って、PC2通りのRijを算出する。すなわち、決定部115は、注目データセットに含まれる異なる2つの検索対象図面内容パラメータの組み合わせパターンのそれぞれについて、Rijを算出する。
式(5)に示されている通り、Rijは、IkとJkとの間の相関係数sijの2乗値として表すことができる。従って、Rijを、IkとJkとの間における多重共線性の程度(強さ)を示す評価値(多重共線性評価値)として用いることができる。実施形態1におけるRijは、多重共線性評価値の一例である。
決定部115は、算出した各決定係数を、所定の閾値Rth(決定係数閾値)と比較する。決定係数閾値は、多重共線性評価値に対する閾値(多重共線性閾値)の一例である。本明細書では、「多重共線性評価値が多重共線性閾値以上である」という条件を満たしている多重共線性評価値を、高リスク多重共線性評価値と称する。従って、実施形態1では、「決定係数がRth以上である」という条件を満たしている決定係数を、高リスク決定係数と称する。
実施形態1では、決定部115は、各前処理後内容パラメータについて、各決定係数をRthと比較し、各決定係数の内から高リスク決定係数を抽出する。そして、決定部115は、各前処理後内容パラメータについて、抽出した高リスク決定係数の個数を計上(カウントアップ)する。
データサイエンス分野では、2つの説明変数間の相関係数の絶対値(以下、相関係数絶対値とも称する)が0.7以上である場合に、当該2つの説明変数間に強い相関(あるいは、やや強い相関)が存在していると評価されることが多い。このことから、一例として、Rthは、0.49(=0.72)以上かつ1以下の所定の値として設定されることが好ましい。実施形態1では、Rthが0.49に設定されている場合を例示する。但し、当業者であれば明らかである通り、Rthは上記の例に限定されない。
決定部115は、各Rijと高リスク決定係数の個数との対応関係を示すテーブル(決定係数・高リスク決定係数個数テーブル)を生成する。図17のTB6は、決定係数・高リスク決定係数個数テーブルの一例である。なお、以下に述べる通り、TB6は、決定部115における一連の処理を通じて更新される。このことから、本明細書では、初期状態のTB6を、TB6initとも称する。
図17には、TB6initの一例が示されている。TB6initのi行j列目には、i番目の各前処理後内容パラメータ(すなわちIk)とj番目の各前処理後内容パラメータ(すなわちJk)との間の決定係数Rijが記録されている。そして、TB6initの最右端列(P+1列目)には、Ikに対応する高リスク決定係数の個数(説明の便宜上、「Ikが有する高リスク決定係数の個数」とも称する)が記録されている。図17の例では、高リスク決定係数にハッチングが付されている。
一例として、決定部115は、TB6内(図17の例では、TB6init内)の各前処理後内容パラメータの内、最も多い高リスク決定係数の個数(最多高リスク決定係数個数)を有する前処理後内容パラメータを、削除対象となる削除対象前処理後内容パラメータとして決定してよい。図17の例では、TB6initに含まれる各前処理後内容パラメータの内、5行目の前処理後内容パラメータ「OR_2」が、最多高リスク決定係数個数(6個)を有している(図17中の「高リスク決定係数の個数」における、点線によって図示された矩形部を参照)。このため、決定部115は、当該前処理後内容パラメータ「OR_2」を、削除対象前処理後内容パラメータとして決定する。そして、決定部115は、TB6initから、「OR_2」に対応する行および列(すなわち、第5行および第5列)を削除することにより、TB6を更新する。
図18のTB6aは、TB6initが上述の通り更新されることによって得られたTB6の一例である。決定部115は、TB6initから、「OR_2」に対応する行および列を削除した後、TB6initの最右端列に記録されていた、Ikに対応する高リスク決定係数の個数を更新する。従って、TB6aの最右端列には、更新後の高リスク決定係数の個数が記録されている。
図18の例では、TB6aに含まれる各前処理後内容パラメータの内、2行目の前処理後内容パラメータ「電流値」および4行目の前処理後内容パラメータ「OR_1」がそれぞれ、最多高リスク決定係数個数(3個)を有している(図18中の「高リスク決定係数の個数」における、点線によって図示された矩形部を参照)。このように、TB6において、複数の前処理後内容パラメータが、同数の最多高リスク決定係数個数を有する場合も考えられる。
そこで、このような場合、決定部115は、最多高リスク決定係数個数を有する複数の前処理後内容パラメータを、削除対象候補前処理後内容パラメータとして決定してよい。次いで、決定部115は、複数の削除対象候補前処理後内容パラメータの内、最も大きい決定数を有する削除対象候補前処理後内容パラメータを、削除対象前処理後内容パラメータとして決定してよい。なお、削除対象前処理後内容パラメータは、学習対象外前処理後内容パラメータと称されてもよい。同様に、削除対象候補前処理後内容パラメータは、学習対象外候補前処理後内容パラメータと称されてもよい。
図18の例では、2行目の前処理後内容パラメータ「電流値」における決定係数の最大値が、4行目の前処理後内容パラメータ「OR_1」における決定係数の最大値よりも大きいものとする。このため、決定部115は、2行目の前処理後内容パラメータ「電流値」を、削除対象前処理後内容パラメータとして決定する(図18中の「高リスク決定係数の個数」における、ハッチング付の上記矩形部を参照)。そして、決定部115は、TB6aから、「電流値」に対応する行および列(すなわち、第2行および第2列)を削除することにより、TB6を更新する。
図19のTB6bは、TB6aが上述の通り更新されることによって得られたTB6の一例である。決定部115は、TB6aから、「電流値」に対応する行および列を削除した後、TB6aの最右端列に記録されていた、Ikに対応する高リスク決定係数の個数を更新する。従って、TB6bの最右端列には、更新後の高リスク決定係数の個数が記録されている。以降、決定部115は、TB6における全ての高リスク決定係数の個数が0になるまで、上述の通りTB6の更新を繰り返す。なお、図19の例では、3行目の前処理後内容パラメータ「OR_1」が削除対象候補前処理後内容パラメータとして決定されている(図19中の「高リスク決定係数の個数」における、点線によって図示された矩形部を参照)。但し、図19の例では、不図示の前処理後内容パラメータが、削除対象前処理後内容パラメータとして決定されている。
図20のTB6endは、上述の更新の繰り返しの結果として得られた、最終的なTB6の一例である。図20に示されている通り、TB6endでは、全ての高リスク決定係数の個数が0である。TB6endに含まれている前処理後内容パラメータは、TB6initに含まれていた複数の前処理後内容パラメータから、TB6の更新過程において見出された各削除対象前処理後内容パラメータ(実施形態1の例において図示されている範囲では、「OR_2」および「電流値」)を除いた前処理後内容パラメータである。このことから、TB6endに含まれている前処理後内容パラメータは、残余前処理後内容パラメータと称されてもよい。
上述の説明から明らかである通り、複数の残余前処理後内容パラメータ間においては、高リスク決定係数は生じない。すなわち、複数の残余前処理後内容パラメータ間における、多重共線性の発生リスクが十分に低減されている。そこで、決定部115は、残余前処理後内容パラメータのみが学習フェーズにおける説明変数として用いられるように、データセット1を処理(より具体的には、剪定)してよい。
具体的には、決定部115は、データセット1から削除対象前処理後内容パラメータを削除することにより、剪定後データセット1(データセット1に対応する剪定後データセット)を生成してよい。図21における符号900APは、剪定後データセット1の一例を表す。上述の説明から明らかである通り、図21の例における剪定後データセット1は、データセット1から「OR_2」および「電流値」が削除されることによって生成される。
以上の通り、決定部115は、注目データセットにおける削除対象前処理後内容パラメータを当該注目データセットから削除することにより、当該注目データセットに対応する剪定後注目データセットを生成してよい。従って、例えば、決定部115は、データセット1に関する上記の例と同様にして、データセット2における削除対象前処理後内容パラメータをデータセット2から削除することにより、剪定後データセット2を生成してよい。また、決定部115は、データセット4FL×5FNにおける削除対象前処理後内容パラメータをデータセット4FL×5FNから削除することにより、剪定後データセット4FL×5FNを生成してよい。
このように、決定部115は、前処理後第1図面種類内容パラメータセット(第1図面種類内容パラメータセットに複数パターンの前処理のそれぞれが施されることによって得られたデータセット)における削除対象前処理後内容パラメータを、当該前処理後第1図面種類内容パラメータセットから削除することにより、剪定後前処理後第1図面種類内容パラメータセット(剪定後データセット1~剪定後データセット4FL×5FNから成るセット)を生成してよい。
第1図面種類内容パラメータセットについての上記の例と同様に、決定部115は、前処理後第2図面種類内容パラメータセット(第2図面種類内容パラメータセットに複数パターンの前処理のそれぞれが施されることによって得られたデータセット)における削除対象前処理後内容パラメータを、当該前処理後第2図面種類内容パラメータセットから削除することにより、剪定後前処理後第2図面種類内容パラメータセットを生成してよい。また、決定部115は、前処理第N図面種類内容パラメータセット(第N図面種類内容パラメータセットに複数パターンの前処理のそれぞれが施されることによって得られたデータセット)における削除対象前処理後内容パラメータを、当該前処理第N図面種類内容パラメータセットから削除することにより、剪定後前処理第N図面種類内容パラメータセットを生成してよい。
(学習モデル生成部113における処理の一例)
実施形態1では、学習モデル生成部113は、決定部115から剪定後前処理後第1図面種類内容パラメータセットを取得する。学習モデル生成部113は、参考形態と同様にして、剪定後前処理後第1図面種類内容パラメータセットに基づいて、剪定後前処理後第1図面種類内容パラメータセットに対応する複数の学習モデルを生成する。次いで、学習モデル生成部113は、当該複数の学習モデルのそれぞれの品質を評価する。
具体的には、学習モデル生成部113は、剪定後前処理後第1図面種類内容パラメータセットに含まれる各データセットを、訓練データと検証データとに分割する。そして、学習モデル生成部113は、当該訓練データを用いて、当該訓練データに対応する複数の学習モデルを生成する。次いで、学習モデル生成部113は、当該検証データを用いて、当該複数の学習モデルのそれぞれの品質を評価する。より具体的には、学習モデル生成部113は、当該検証データを用いて、当該複数の学習モデルのそれぞれの指標値を導出する。
同様に、学習モデル生成部113は、決定部115から剪定後前処理後第2図面種類内容パラメータセットを取得する。学習モデル生成部113は、剪定後前処理後第2図面種類内容パラメータセットに基づいて、当該剪定後前処理後第2図面種類内容パラメータセットに対応する複数の学習モデルを生成する。次いで、学習モデル生成部113は、当該複数の学習モデルのそれぞれの品質を評価する。また、学習モデル生成部113は、決定部115から剪定後前処理後第N図面種類内容パラメータセットを取得する。学習モデル生成部113は、剪定後前処理後第N図面種類内容パラメータセットに基づいて、当該剪定後前処理後第N図面種類内容パラメータセットに対応する複数の学習モデルを生成する。次いで、学習モデル生成部113は、当該複数の学習モデルのそれぞれの品質を評価する。
実施形態1では、学習モデル生成部113は、剪定後前処理後第1図面種類内容パラメータセット~剪定後前処理後第N図面種類内容パラメータセットに基づいて導出された指標値に基づき、生成された複数の学習モデルの内から、ベスト学習モデルを選択する。例えば、学習モデル生成部113は、当該複数の学習モデルの内、最大指標値を有する学習モデルを、ベスト学習モデルとして選択する。続いて、学習モデル生成部113は、参考形態と同様にして、ベスト学習モデルに対応する前処理手法を、ベスト前処理手法として選択する。実施形態1における以降の処理については、参考形態と同様である。
(実施形態1の効果)
実施形態1における学習装置11によれば、複数の前処理後内容パラメータから、削除対象前処理後内容パラメータ(多重共線性を生じさせるリスクが高いと懸念される前処理後内容パラメータ)を排除した上で、複数の学習モデルを生成できる。その上で、複数の学習モデルの内から、ベスト学習モデルを見出すことができる。
本明細書では、ある前処理後内容パラメータセット(より詳細には、前処理後検索対象図面内容パラメータセット)のそれぞれから、当該内容パラメータセットにおける削除対象前処理後内容パラメータを削除することによって得られるデータセットを、剪定後前処理後内容パラメータセット(より詳細には、剪定後前処理後検索対象図面内容パラメータセット)と称する。上述の剪定後前処理後第1図面種類内容パラメータセット~剪定後前処理後第N図面種類内容パラメータセットはいずれも、剪定後前処理後内容パラメータセットの例である。
以上の通り、学習装置11によれば、複数の剪定後前処理後内容パラメータセットに基づき、複数の学習モデルを生成できる。その上で、複数の学習モデルの内から、ベスト学習モデルを見出すことができる。このため、学習装置11によれば、多重共線性の影響が排除された学習モデルを、ベスト学習モデルとして得ることができる。それゆえ、参考形態に比べてさらに高品質なベスト学習モデルを得ることができる。このように、学習装置11によれば、図面検索を行うための学習モデルの品質を従来よりも向上させることができる。
また、学習装置11によれば、残余前処理後内容パラメータのみが学習フェーズにおける説明変数として用いられるように、複数の学習モデルを生成できる。すなわち、参考形態に比べ、各データセットの次元数を削減させた上で、複数の学習モデルを生成できる。それゆえ、学習フェーズに要する計算コストを、参考形態に比べて低減させることもできる。例えば、参考形態よりも短い計算時間によって、高品質なベスト学習モデルを得ることができる。
また、学習装置11によれば、多重共線性の影響が排除されたベスト学習モデルに対応する前処理手法を、ベスト前処理手法として選択することもできる。それゆえ、図面検索の精度向上のためにより一層有効性の高い前処理手法を、ベスト前処理手法として選択できることも期待される。
そして、実施形態1における図面検索装置12では、上述の通り学習装置11によって選択されたベスト学習モデルおよびベスト前処理手法を用いて、図面検索を行うことができる。その結果、参考形態に比べて、さらに高い検索精度によって図面検索を行うことができる。
〔変形例〕
実施形態1では、多重共線性評価値として決定係数(Rij)が用いられる場合が例示されていた。但し、当業者であれば明らかである通り、多重共線性評価値は、上記の例に限定されない。例えば、学習装置11において、多重共線性評価値として、上述の相関係数絶対値が用いられてもよい。
この場合、決定部115は、実施形態1と同様にして、注目データセットに含まれる任意の2つの異なる前処理後内容パラメータ間の相関係数絶対値を算出してよい。本変形例では、決定部115は、PC2通りの相関係数絶対値を算出する。このように、決定部115は、各前処理後内容パラメータについて、相関係数絶対値(すなわち、|sij|)を算出する。
そして、決定部115は、算出した各相関係数絶対値を、所定の閾値sth(相関係数絶対値閾値)と比較する。相関係数絶対値閾値は、多重共線性閾値の別の例である。本明細書では、「相関係数絶対値がsth以上である」という条件を満たしている相関係数絶対値を、高リスク相関係数絶対値と称する。
本変形例では、決定部115は、各前処理後内容パラメータについて、各相関係数絶対値をsthと比較し、各相関係数絶対値の内から高リスク相関係数絶対値を抽出する。そして、決定部115は、各前処理後内容パラメータについて、抽出した高リスク相関係数絶対値の個数を計上する。
上述の式(5)との対応性から明らかである通り、例えば、
sth=Rth1/2 …(6)
として、sthが設定されてよい。従って、sthは、0.7以上かつ1以下の所定の値として設定されることが好ましい。一例として、sthは0.7に設定されてよい。但し、当業者であれば明らかである通り、sthは上記の例に限定されない。
本変形例において、決定部115は、各相関係数絶対値と高リスク相関係数絶対値の個数との対応関係を示すテーブル(相関係数絶対値・高リスク相関係数絶対値個数テーブル)を生成する。当該相関係数絶対値・高リスク相関係数絶対値個数テーブルは、上述のTB6に対応する。そして、決定部115は、実施形態1と同様にして、相関係数絶対値・高リスク相関係数絶対値個数テーブルにおける全ての高リスク相関係数絶対値の個数が0になるまで、当該相関係数絶対値・高リスク相関係数絶対値個数テーブルの更新を繰り返す。以降の処理については、実施形態1と同様である。
以上の説明から明らかである通り、本発明の一態様において、決定部115は、各前処理後内容パラメータについて、多重共線性評価値を算出する。そして、決定部115は、算出した各多重共線性評価値を、所定の多重共線性閾値と比較する。具体的には、決定部115は、各多重共線性評価値を多重共線性閾値と比較し、各多重共線性評価値の内から高リスク多重共線性評価値を抽出する。決定部115は、各前処理後内容パラメータについて、抽出した高リスク多重共線性評価値の個数を計上する。
次いで、決定部115は、各多重共線性評価値と高リスク多重共線性評価値の個数との対応関係を示すテーブル(多重共線性評価値・高リスク多重共線性評価値個数テーブル)を生成する。当該多重共線性評価値・高リスク多重共線性評価値個数テーブルは、上述のTB6に対応する。そして、上述の通り、決定部115は、多重共線性評価値・高リスク多重共線性評価値個数テーブルにおける全ての高リスク多重共線性評価値の個数が0になるまで、当該多重共線性評価値・高リスク多重共線性評価値個数テーブルの更新を繰り返す。
以上の通り、決定部115は、複数の前処理後内容パラメータに対して導出された複数の多重共線性評価値に基づいて、当該複数の前処理後内容パラメータの内から削除対象前処理後内容パラメータを決定できるように設定されていればよい。これにより、決定部115によって、当該複数の前処理後内容パラメータから削除対象前処理後内容パラメータを削除することが可能となる。その結果、上述の通り、多重共線性の影響が排除された学習モデルを、ベスト学習モデルとして得ることができる。
なお、当業者であれば明らかである通り、削除対象前処理後内容パラメータの選択方法は、実施形態1の例に限定されない。決定部115は、異なる2つの前処理後内容パラメータ間の多重共線性評価値が多重共線性閾値以上である場合に、当該2つの検索対象図面内容パラメータの内の一方を、削除対象前処理後内容パラメータとして決定すればよい。
〔実施形態2〕
図22は、実施形態2の情報処理システム100Vの要部の構成を示すブロック図である。情報処理システム100Vの情報処理装置を、情報処理装置1Vと称する。情報処理装置1Vの制御装置を、制御装置10Vと称する。制御装置10の学習装置および図面検索装置をそれぞれ、学習装置11V(モデル生成装置)および図面検索装置12Vと称する。
学習装置11Vは、実施形態1の学習装置11とは異なり、学習用前処理部114を有していない。学習装置11Vの決定部および学習モデル生成部をそれぞれ、決定部115Vおよび学習モデル生成部113V(学習部)と称する。また、図面検索装置12Vは、実施形態1の図面検索装置12とは異なり、検索用前処理部125を有していない。図面検索装置12Vの検索部を、検索部126Vと称する。
図22から明らかである通り、学習装置11Vでは、学習装置11とは異なり、前処理による各内容パラメータセットの拡張が行われない。このため、実施形態2では、複数の説明変数間(実施形態2の例では、複数の内容パラメータ間)における多重共線性の発生リスクは、実施形態1に比べて低いと期待される。但し、例えば、各過去図面の記載内容次第では、複数の内容パラメータ間において多重共線性が発生することも考えられる。そこで、実施形態2では、多重共線性の影響を排除するために、決定部115Vが設けられている。
(学習装置11Vにおける処理の一例)
実施形態2では、決定部115Vは、過去図面内容パラメータ取得部112から、第1図面種類内容パラメータセット~第N図面種類内容パラメータセットを取得する。決定部115Vは、第1図面種類内容パラメータセットに含まれる任意の2つの異なる内容パラメータ間の多重共線性評価値を算出してよい。
実施形態2では、決定部115Vは、第1図面種類内容パラメータセットに含まれる各内容パラメータ(第1図面種類内容パラメータセット内の第1~第L内容パラメータ)について、多重共線性評価値を算出する。すなわち、実施形態2では、決定部115Vは、第1図面種類内容パラメータセットについて、LC2通りの多重共線性評価値を算出する。このように、決定部115は、第1図面種類内容パラメータセットに含まれる異なる2つの検索対象図面内容パラメータの組み合わせパターンのそれぞれについて、多重共線性評価値を算出する。
次いで、決定部115Vは、算出した各多重共線性評価値を多重共線性閾値と比較し、各多重共線性評価値の内から高リスク多重共線性評価値を抽出する。そして、決定部115は、各内容パラメータについて、抽出した高リスク多重共線性評価値の個数を計上する。
次いで、決定部115Vは、多重共線性評価値・高リスク多重共線性評価値個数テーブルを生成する。そして、決定部115Vは、多重共線性評価値・高リスク多重共線性評価値個数テーブルにおける全ての高リスク多重共線性評価値の個数が0になるまで、当該多重共線性評価値・高リスク多重共線性評価値個数テーブルの更新を繰り返す。
このように、決定部115Vは、多重共線性評価値・高リスク多重共線性評価値個数テーブルの更新を繰り返すことにより、第1図面種類内容パラメータセット内の第1~第L内容パラメータの内から、削除対象となる削除対象内容パラメータを特定する。削除対象内容パラメータは、多重共線性を生じさせるリスクが高いと懸念される内容パラメータと言える。なお、削除対象内容パラメータは、学習対象外内容パラメータと称されてもよい。
上述の各説明から明らかである通り、決定部115Vは、多重共線性評価値が所定の多重共線性閾値以上である場合に、上記2つの検索対象図面内容パラメータの内の一方を、削除対象内容パラメータとして決定してよい。そして、決定部115Vは、第1図面種類内容パラメータセット内の第1~第L内容パラメータの内から、削除対象内容パラメータを削除することにより、剪定後第1図面種類内容パラメータセットを生成する。
一例として、第1図面種類内容パラメータセット内の第1~第L内容パラメータの内、第2内容パラメータ「電流値」が、削除対象内容パラメータとして特定された場合を考える。この場合、決定部115Vは、第1図面種類内容パラメータセットから、第2内容パラメータ「電流値」に対応する系列(図3の例における2行目)を削除することにより、剪定後第1図面種類内容パラメータセットを生成する。
同様にして、決定部115Vは、第2図面種類内容パラメータセットに含まれる各内容パラメータ(第2図面種類内容パラメータセット内の第1~第L内容パラメータ)について、多重共線性評価値を算出する。そして、決定部115は、各多重共線性評価値に基づいて第2図面種類内容パラメータセットを剪定することにより、剪定後第2図面種類内容パラメータセットを生成する。
また、決定部115Vは、第N図面種類内容パラメータセットに含まれる各内容パラメータ(第N図面種類内容パラメータセット内の第1~第L内容パラメータ)について、多重共線性評価値を算出する。そして、決定部115Vは、各多重共線性評価値に基づいて第N図面種類内容パラメータセットを剪定することにより、剪定後第N図面種類内容パラメータセットを生成する。決定部115Vは、以上の通り生成した剪定後第1図面種類内容パラメータセット~剪定後第N図面種類内容パラメータセットを、学習モデル生成部113Vに供給する。
実施形態2では、学習モデル生成部113Vは、剪定後第1図面種類内容パラメータセット~剪定後第N図面種類内容パラメータセットに基づき、学習モデルを生成する。具体的には、学習モデル生成部113Vは、所定の機械学習アルゴリズムを実行することにより、剪定後第1図面種類内容パラメータセット~剪定後第N図面種類内容パラメータセットに基づき、学習モデルを生成する。学習モデル生成部113Vは、生成した学習モデルを、図面検索装置12V(より具体的には、検索部126V)に供給する。
実施形態2における機械学習アルゴリズムは、実施形態1において例示した複数種類の機械学習アルゴリズムのうちの任意の1つであってよい。従って、一例として、学習モデル生成部113Vは、多項ロジスティック回帰によって、剪定後第1図面種類内容パラメータセット~剪定後第N図面種類内容パラメータセットに基づき、学習モデルを生成してよい。
上述の通り、実施形態2では、前処理による各内容パラメータセットの拡張が行われない。このため、実施形態2では、ベスト学習モデルおよびベスト前処理手法は決定されない。このことから明らかである通り、本発明の一態様において、複数の学習モデルを生成し、かつ、当該複数の学習モデルの内からベスト学習モデルを選択する決定する工程は必須ではない。同様に、本発明の一態様において、複数の前処理手法の内からベスト前処理手法を決定する工程も必須ではない。
(図面検索装置12Vにおける処理の一例)
検索部126Vは、(i)新規図面内容パラメータ取得部122から新規図面内容パラメータセットを取得するとともに、(ii)学習モデル生成部113Vによって生成された学習モデルを、学習装置11Vから取得する。
検索部126Vは、新規図面内容パラメータセットを学習モデルに入力する。そして、検索部126Vは、新規図面内容パラメータセットに応じた学習モデルの出力を、当該学習モデルから取得する。
一例として、検索部126Vは、学習モデルに新規図面内容パラメータセットを入力することにより、当該新規図面内容パラメータセットに応じた関連性スコアを、当該学習モデルに出力させる。そして、検索部126Vは、学習モデルの出力(例:関連性スコア)に基づいて、図面NDに対応する少なくとも1つの過去図面を検索する。
(実施形態2の効果)
実施形態2における学習装置11Vによれば、複数の内容パラメータから、削除対象内容パラメータ(多重共線性を生じさせるリスクが高いと懸念される内容パラメータ)を排除した上で、学習モデルを生成できる。すなわち、学習装置11Vによれば、削除対象内容パラメータを除いた複数の内容パラメータに基づき、学習モデルを生成できる。
本明細書では、内容パラメータセット(より詳細には、検索対象図面内容パラメータセット)から削除対象内容パラメータを削除することによって得られるデータセットを、剪定後内容パラメータセット(より詳細には、剪定後検索対象図面内容パラメータセット)とも称する。以上の通り、学習装置11Vによれば、剪定後内容パラメータセットに基づき、学習モデルを生成できる。このため、学習装置11Vによれば、多重共線性の影響が排除された学習モデルを得ることができる。それゆえ、従来(例:特許文献1の技術)に比べて、学習モデルの品質を従来よりも向上させることができる。
そして、実施形態2における図面検索装置12Vでは、上述の通り学習装置11Vによって生成された学習モデルを用いて、図面検索を行うことができる。その結果、従来に比べて、さらに高い検索精度によって図面検索を行うことができる。
上述の通り、実施形態2では、実施形態1とは異なり、ベスト学習モデルおよびベスト前処理手法の選択は実行されない。このため、実施形態2によれば、図面検索装置の運用時に使用される最終的な学習モデル(運用モデル)を、実施形態1に比べて短時間で得ることができる。
但し、上述の説明から明らかである通り、実施形態1によれば、運用モデルとしてベスト学習モデルを選択できる。すなわち、実施形態1によれば、実施形態2に比べてさらに高品質な運用モデルを得ることができる。加えて、実施形態1によれば、図面検索装置の運用時に使用される前処理手法(運用時前処理手法)として、ベスト前処理手法を選択できる。運用時にベスト前処理手法を適用することにより、図面検索装置における図面検索精度をより一層向上させることができる。従って、実施形態1または2のいずれの情報処理装置の構成を採用するかについては、例えば、当該情報処理装置に要求される仕様に応じて、当該情報処理装置の設計者によって適宜決定されてよい。
〔ソフトウェアによる実現例〕
情報処理システム100s・100・100V(以下では、便宜上「装置」と呼ぶ)の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の各制御ブロック(特に、制御装置10s・10・10Vに含まれる各部)としてコンピュータを機能させるためのプログラムにより実現することができる。
この場合、上記装置は、上記プログラムを実行するためのハードウェアとして、少なくとも1つの制御装置(例えばプロセッサ)と少なくとも1つの記憶装置(例えばメモリ)を有するコンピュータを備えている。この制御装置と記憶装置により上記プログラムを実行することにより、上記各実施形態で説明した各機能が実現される。
上記プログラムは、一時的ではなく、コンピュータ読み取り可能な、1または複数の記録媒体に記録されていてもよい。この記録媒体は、上記装置が備えていてもよいし、備えていなくてもよい。後者の場合、上記プログラムは、有線または無線の任意の伝送媒体を介して上記装置に供給されてもよい。
また、上記各制御ブロックの機能の一部または全部は、論理回路により実現することも可能である。例えば、上記各制御ブロックとして機能する論理回路が形成された集積回路も本発明の一態様の範疇に含まれる。この他にも、例えば量子コンピュータにより上記各制御ブロックの機能を実現することも可能である。
上述の各説明から明らかである通り、上記各実施形態で説明した各処理は、AI(Artificial Intelligence:人工知能)に実行させることができる。この場合、AIは上記制御装置で動作するものであってもよいし、他の装置(例えばエッジコンピュータまたはクラウドサーバ等)で動作するものであってもよい。
〔付記事項〕
本発明の一態様は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の一態様の技術的範囲に含まれる。