(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022167397
(43)【公開日】2022-11-04
(54)【発明の名称】特性予測システム、特性予測方法、及び特性予測プログラム
(51)【国際特許分類】
G16C 20/30 20190101AFI20221027BHJP
G06N 20/00 20190101ALI20221027BHJP
【FI】
G16C20/30
G06N20/00
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2021073164
(22)【出願日】2021-04-23
(71)【出願人】
【識別番号】000004455
【氏名又は名称】昭和電工マテリアルズ株式会社
(74)【代理人】
【識別番号】100088155
【弁理士】
【氏名又は名称】長谷川 芳樹
(74)【代理人】
【識別番号】100128381
【弁理士】
【氏名又は名称】清水 義憲
(74)【代理人】
【識別番号】100169454
【弁理士】
【氏名又は名称】平野 裕之
(74)【代理人】
【識別番号】100124800
【弁理士】
【氏名又は名称】諏澤 勇司
(72)【発明者】
【氏名】花岡 恭平
(57)【要約】
【課題】原材料の構造を基にして材料の特性を効率よく予測させること。
【解決手段】入力データ生成システム10は、既知の構造の原材料を基にした材料の特性を予測する機械学習用の入力データを生成する入力データ生成システムであって、少なくとも1つのプロセッサを備え、少なくとも1つのプロセッサが、データベースから部分構造を表す部分構造データを取得し、原材料の構造を特定する原材料構造データと、原材料の配合の比率を表す配合率データとの入力を少なくとも受け付け、部分構造データと原材料構造データを基に、原材料の構造中に存在する部分構造を表す部分構造入力データDを生成し、原材料の部分構造入力データDに、当該配合率データを反映することにより入力データを生成し、入力データを機械学習モデルに入力させる。
【選択図】
図2
【特許請求の範囲】
【請求項1】
既知の構造の原材料を基にした材料の特性を予測する特性予測システムであって、
少なくとも1つのプロセッサを備え、
前記少なくとも1つのプロセッサが、
データベースから部分構造を表す部分構造データを取得し、
前記原材料の構造を特定する原材料構造データと、前記原材料の配合の比率を表す配合率データとの入力を少なくとも受け付け、
前記部分構造データと前記原材料構造データを基に、前記原材料の構造中に存在する前記部分構造を表す部分構造入力データを生成し、
前記原材料の部分構造入力データに、当該配合率データを反映することにより入力データを生成し、
前記入力データを機械学習モデルに入力させる、
特性予測システム。
【請求項2】
前記少なくとも1つのプロセッサは、
複数の前記原材料に関する前記原材料構造データと、前記複数の原材料のそれぞれの配合の比率を表す配合率データの入力を受け付け、
前記複数の原材料毎に前記部分構造入力データを生成するとともに、前記複数の原材料の前記部分構造入力データに、当該複数の原材料に関する配合率データを反映することにより前記入力データを生成する、
請求項1に記載の特性予測システム。
【請求項3】
前記少なくとも1つのプロセッサは、
前記原材料の構造中に存在する前記部分構造の個数を特定し、
前記原材料の前記部分構造入力データに対して、当該配合率データに前記部分構造の個数を乗じた値を反映することにより、前記入力データを生成する、
請求項1又は2に記載の特性予測システム。
【請求項4】
前記部分構造入力データは、前記部分構造の構造を表す分子構造情報である、
請求項1~3のいずれか1項に記載の特性予測システム。
【請求項5】
前記少なくとも1つのプロセッサは、
前記部分構造入力データを基にしたベクトルに対して、当該配合率データに基づく値を、乗算、加算、あるいは連結し、乗算、加算、あるいは連結した前記ベクトルを一つのベクトルにまとめることにより、前記入力データを生成する、
請求項1~4のいずれか1項に記載の特性予測システム。
【請求項6】
前記少なくとも1つのプロセッサは、
前記複数の原材料毎の部分構造入力データである複数のデータに対して、前記原材料の違いを表す値をさらに反映させて一つのデータにまとめることにより、前記入力データを生成する、
請求項2に記載の特性予測システム。
【請求項7】
前記少なくとも1つのプロセッサは、
前記データベースから複数種類の前記部分構造データを取得し、
複数種類の前記部分構造データを用いて複数種類の前記入力データを生成し、
複数種類の前記入力データを複数の機械学習モデルに入力してアンサンブル学習器を構築する、
請求項1~6のいずれか1項に記載の特性予測システム。
【請求項8】
少なくとも1つのプロセッサを備えるコンピュータにより実行され、既知の構造の原材料を基にした材料の特性を予測する特性予測方法であって、
データベースから部分構造を表す部分構造データを取得するステップと、
前記原材料の構造を特定する原材料構造データと、前記原材料の配合の比率を表す配合率データとの入力を少なくとも受け付けるステップと、
前記部分構造データと前記原材料構造データを基に、前記原材料の構造中に存在する前記部分構造を表す部分構造入力データを生成するステップと、
前記原材料の部分構造入力データに、当該配合率データを反映することにより入力データを生成するステップと、
前記入力データを機械学習モデルに入力させるステップと、
を備える特性予測方法。
【請求項9】
既知の構造の原材料を基にした材料の特性を予測する特性予測プログラムであって、
コンピュータに、
データベースから部分構造を表す部分構造データを取得するステップと、
前記原材料の構造を特定する原材料構造データと、前記原材料の配合の比率を表す配合率データとの入力を少なくとも受け付けるステップと、
前記部分構造データと前記原材料構造データを基に、前記原材料の構造中に存在する前記部分構造を表す部分構造入力データを生成するステップと、
前記原材料の部分構造入力データに、当該配合率データを反映することにより入力データを生成するステップと、
前記入力データを機械学習モデルに入力させるステップと、
を実行させる特性予測プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の一側面は、特性予測システム、特性予測方法、及び特性予測プログラムに関する。
【背景技術】
【0002】
従来から、分子の構造を所定のフォーマットで取得しそれをベクトル情報に変換して機械学習アルゴリズムに入力して特性を予測することが行われている。例えば、生体高分子の立体構造と化合物の立体構造との結合性を機械学習を用いて予測する方法が知られている(下記特許文献1参照)。この方法では、生体高分子の立体構造と化合物の立体構造とに基づいて生体高分子と化合物との複合体の予測立体構造を生成し、その予測立体構造を予測立体構造ベクトルに変換し、機械学習アルゴリズムを用いてその予測立体構造ベクトルを判別することによって生体高分子の立体構造と化合物の立体構造との結合性を予測している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年では、構造が明らかな材料に関する分子グラフ等の構造を表すデータを入力としたニューラルネットワークによって材料の特性を予測する技術が知られている。しかし、入力されるデータが少ない場合にそのデータを基にした機械学習によって、材料の特性を予測することは困難である。そこで、原材料の構造を基にした材料の特性を効率よく予測させるための仕組みが望まれている。
【課題を解決するための手段】
【0005】
本開示の一形態の特性予測システムは、既知の構造の原材料を基にした材料の特性を予測する特性予測システムであって、少なくとも1つのプロセッサを備え、少なくとも1つのプロセッサが、データベースから部分構造を表す部分構造データを取得し、原材料の構造を特定する原材料構造データと、原材料の配合の比率を表す配合率データとの入力を少なくとも受け付け、部分構造データと原材料構造データを基に、原材料の構造中に存在する部分構造を表す部分構造入力データを生成し、原材料の部分構造入力データに、当該配合率データを反映することにより入力データを生成し、入力データを機械学習モデルに入力させる。
【0006】
あるいは、本開示の他の形態の特性予測方法は、少なくとも1つのプロセッサを備えるコンピュータにより実行され、既知の構造の原材料を基にした材料の特性を予測する特性予測方法であって、データベースから部分構造を表す部分構造データを取得するステップと、原材料の構造を特定する原材料構造データと、原材料の配合の比率を表す配合率データとの入力を少なくとも受け付けるステップと、部分構造データと原材料構造データを基に、原材料の構造中に存在する部分構造を表す部分構造入力データを生成するステップと、原材料の部分構造入力データに、当該配合率データを反映することにより入力データを生成するステップと、入力データを機械学習モデルに入力させるステップと、を備える。
【0007】
あるいは、本開示の他の形態の特性予測プログラムは、既知の構造の原材料を基にした材料の特性を予測する特性予測プログラムであって、コンピュータに、データベースから部分構造を表す部分構造データを取得するステップと、原材料の構造を特定する原材料構造データと、原材料の配合の比率を表す配合率データとの入力を少なくとも受け付けるステップと、部分構造データと原材料構造データを基に、原材料の構造中に存在する部分構造を表す部分構造入力データを生成するステップと、原材料の部分構造入力データに、当該配合率データを反映することにより入力データを生成するステップと、入力データを機械学習モデルに入力させるステップと、を実行させる。
【0008】
上記形態によれば、原材料の構造データとデータベースから取得した部分構造の構造データを基に、原材料の構造中の既知の部分構造を表現した部分構造入力データが生成され、その部分構造入力データに原材料の配合率が反映されることにより入力データが生成される。そして、生成された入力データが機械学習モデルに入力される。その結果、原材料の全体の構造から予め設定された部分構造のデータに絞った入力データが生成され、機械学習によってその入力データを処理させることにより、材料の特性を効率的に予測させることができる。
【発明の効果】
【0009】
本開示の側面によれば、原材料の構造を基にして材料の特性を効率よく予測することができる。
【図面の簡単な説明】
【0010】
【
図1】実施形態に係る特性予測システムを構成するコンピュータのハードウェア構成の一例を示す図である。
【
図2】実施形態に係る特性予測システムの機能構成の一例を示す図である。
【
図3】
図2の取得部11が取得する原材料構造データによって特定される分子構造の一例を示す図である。
【
図4】実施形態に係る特性予測システムの動作の一例を示すフローチャートである。
【
図5】変形例に係る特性予測システムの機能構成の一例を示す図である。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して、本発明の実施形態について詳細に説明する。なお、説明において、同一要素又は同一機能を有する要素には、同一符号を用いることとし、重複する説明は省略する。
【0012】
[システムの概要]
実施形態に係る特性予測システム1は、既知の構造の複数の原材料を様々な比率で配合することにより製造される材料である多成分物質の特性の予測処理を、機械学習モデルを用いて実行するコンピュータシステムである。原材料とは、多成分物質を生成するために用いられる、分子構造が明らかな化学物質のことをいい、例えば、モノマー、ポリマー、または、低分子添加剤、溶質分子、ガス分子等の単分子である。1つの原材料には複数種類の分子が含まれていてもよい。多成分物質とは、複数の原材料を所定の比率で配合することによって生成される化学物質であり、例えば、原材料がモノマーあるいはポリマーの場合はポリマーアロイ、原材料が溶質分子あるいは溶媒の場合には混合溶液、原材料がガス分子の場合は混合気体である。ただし、入力データの生成対象としては、必ずしも多成分物質である必要はなく、1つの原材料から生成される単成分物質であってもよい。
【0013】
特性予測システム1による予測処理の対象は、多成分物質の特性である。多成分物質の特性とは、例えば、多成分物質が樹脂の場合は、ガラス転移温度、融点などの熱物性、機械物性、接着性等である。また、多成分物質の特性は、多成分物質が他の種類の物質の場合は、薬剤の薬効あるいは毒性、可燃物の発火点等の危険性、外観上の特性、特定の用途に対する適正等である。特性予測システム1の予測処理には機械学習が用いられる。機械学習とは、与えられた情報に基づいて法則またはルールを自律的に見つけ出す手法である。機械学習の具体的な手法は限定されない。例えば、機械学習は、計算モデルである機械学習モデルを用いた機械学習であってよい。より具体的には、計算モデルは、ニューラルネットワークである。ニューラルネットワークとは、人間の脳神経系の仕組みを模した情報処理のモデルのことをいう。それ以外の計算モデルのより具体的な例として、ニューラルネットワーク以外に、SVR(Support Vector Regression),ランダムフォレスト等であってもよい。
【0014】
[システムの構成]
特性予測システム1は1台以上のコンピュータで構成される。複数台のコンピュータを用いる場合には、これらのコンピュータがインターネット、イントラネット等の通信ネットワークを介して接続されることで、論理的に一つの特性予測システム1が構築される。
【0015】
図1は、特性予測システム1を構成するコンピュータ100の一般的なハードウェア構成の一例を示す図である。例えば、コンピュータ100は、オペレーティングシステム、アプリケーション・プログラム等を実行するプロセッサ(例えばCPU)101と、ROMおよびRAMで構成される主記憶部102と、ハードディスク、フラッシュメモリ等で構成される補助記憶部103と、ネットワークカードまたは無線通信モジュールで構成される通信制御部104と、キーボード、マウス、タッチパネル等の入力装置105と、モニタ、タッチパネルディスプレイ等の出力装置106とを備える。
【0016】
特性予測システム1の各機能要素は、プロセッサ101または主記憶部102の上に予め定められたプログラムを読み込ませてプロセッサ101にそのプログラムを実行させることで実現される。プロセッサ101はそのプログラムに従って、通信制御部104、入力装置105、または出力装置106を動作させ、主記憶部102または補助記憶部103におけるデータの読み出しおよび書き込みを行う。処理に必要なデータまたはデータベースは主記憶部102または補助記憶部103内に格納される。
【0017】
図2は特性予測システム1の機能構成の一例を示す図である。特性予測システム1は、入力データ生成システム10、トレーニング部20、及び予測器30を備える。これらの入力データ生成システム10、トレーニング部20、及び予測器30は、同一のコンピュータ100上で構築されていてもよいし、一部が別のコンピュータ100上に構築されていてもよい。まず、入力データ生成システム10の機能構成を説明する。入力データ生成システム10は機能要素として取得部11、生成部12、ベクトル変換部13、合成部14、及び部分構造データベース16を含んでいる。
【0018】
部分構造データベース16は、予め入力データ生成システム10に登録された既知の分子中の複数の部分構造の組み合わせを表す部分構造データを格納するデータ格納手段である。この部分構造データベース16に格納される部分構造データとしては、材料の特性を左右する構造として既知の部分構造を表すデータ(分子構造情報)が好適に用いられる。このような部分構造としては、例えば、“OH”,“CH3”,“CCC”,“NH”等の分子式で表される構造が挙げられる。部分構造データは、予め入力データ生成システム10内のデータベースから入力データ生成システム10のユーザによる選択入力に応じて選択された複数の部分構造の組み合わせを表すデータが設定されてもよいし、外部のコンピュータ等からユーザによる選択に応じて設定されてもよい。部分構造データにおける部分構造を表すデータ(分子構造情報)としては、分子グラフであってもよいし、分子式等の文字で分子構造を表すデータであってもよいし、構造式等の画像で分子構造を表すデータであってもよい。さらに具体的には、これらの部分構造データは、構造式、分子グラフの他、SMILES(Simplified Molecular Input Line Entry System)記法のデータ、MOLファイルフォーマットのデータ等であってよい。
【0019】
ただし、部分構造データは、必ずしもユーザによる選択によって設定されたものである必要はない。例えば、特性予測システム1による予測対象の特性(例えば、ポリマーのガラス転移温度)に対して、予測の精度を高めると予測される部分構造のセットが、予め自動検証処理によって判別され、判別された部分構造のセットを基に、部分構造データが設定されてもよい。また、予測の精度を高める部分構造のセットが機械学習の過程で自動選択され、選択された部分構造のセットを基に、部分構造データが設定されてもよい。また、特定の材料に対する特定の特性の予測に拘らず、汎用的に予測精度を高める部分構造のセットが予め設定されていて、その部分構造のセットを基に、部分構造データが設定されてもよい。
【0020】
取得部11は、予測対象の多成分物質の基となる複数の原材料を構成するそれぞれの分子の構造に関する原材料構造データ、及びこれらの複数の原材料を配合して多成分物質を製造することを想定した場合のそれぞれの複数の原材料の配合の比率を表す配合率データとの入力を受け付ける機能要素である。取得部11は、これらのデータを入力データ生成システム10内のデータベースから入力データ生成システム10のユーザによる選択入力に応じて取得してもよいし、外部のコンピュータ等からユーザによる選択に応じて取得してもよい。
【0021】
具体的には、取得部11は、第1の原材料の分子構造を特定する第1の原材料構造データと、第2の原材料の分子構造を特定する第2の原材料構造データとを少なくとも取得する。これらの原材料構造データとは、分子構造を表す分子構造情報である。例えば、これらの原材料構造データは、分子構造を、数字、英字、テキスト、ベクトル等で特定するデータでもよいし、二次元座標、三次元座標等によって可視化するデータであってもよいし、これらのデータのうちの任意の2以上の組合せのデータであってもよい。原材料構造データを構成する個々の数値は、十進法で表されてもよいし、二進法、十六進法などの他の表記法によって表されてもよい。さらに具体的には、これらの原材料構造データは、構造式、分子グラフ、SMILES記法のデータ、MOLファイルフォーマットのデータ等であってよい。ここで、原材料データは、必ずしも原材料の分子全体を表すものである必要はなく、原材料の分子中の部分構造を表すものであってもよい。
【0022】
図3には、原材料構造データによって特定される分子構造の一例を示し、(a)部には第1の原材料構造データによって特定される分子構造の一例を示し、(b)部には第2の原材料構造データによって特定される分子構造の一例を示す。第1の原材料構造データは、第1の原材料の分子構造を特定することができるデータである。第2の部分構造データも、同様に、第2の原材料の分子構造を特定することができるデータである。
【0023】
また、取得部11は、複数の原材料の比率rを表す配合率データとして、それぞれの原材料の比率自体を示すデータを取得してもよいし、複数の原材料間の配合比を示すデータを取得してもよいし、複数の原材料のそれぞれの配合量(重量、体積等)を絶対値あるいは相対値で示すデータを取得してもよい。例えば、第1の原材料である第1のモノマーの比率r1=“0.5”と、第2の原材料である第2のモノマーの比率r2=“0.5”とを取得する。さらに、取得部11は、部分構造データベース16から、登録された既知の分子中の複数の部分構造の組み合わせを表す部分構造データを取得する。
【0024】
生成部12は、取得部11が取得した複数の原材料構造データ及び部分構造データを基に、原材料の分子構造中の部分構造データに表された部分構造を探索するとともに、その分子構造中に存在する部分構造の個数を特定する。例えば、部分構造データで表わされた部分構造に、“OH”,“CH
3”,“CCC”,“NH”の部分構造が含まれる場合には、生成部12は、
図3の(a)部に示す第1の原材料構造データの示す分子構造の中から、部分構造“CH
3”及び部分構造“CCC”の存在を、それぞれの個数“2個”、“1個”と共に特定する。同様に、生成部12は、
図3の(b)部に示す第2の原材料構造データの示す分子構造の中から、部分構造“OH”、“CH
3”、及び“CCC”の存在を、その個数“1個”、“2個”、及び“2個”と共に特定する。なお、ここで取得する部分構造の個数は、同一の原材料の分子中の部分構造の個数の総和が“1”となるように規格化された個数を表すデータであってもよい。
【0025】
また、生成部12は、探索した部分構造を基に、複数の原材料の分子に含まれる部分構造毎に部分構造入力データD0を生成する。詳細には、取得部11が探索した部分構造に対応する分子構造情報を基に、複数の原材料毎に、原材料に含まれる部分構造に関する分子構造情報と、その原材料に関する比率rのデータと、その部分構造に関する個数のデータとを組み合わせた部分構造入力データD0を生成する。そして、生成部12は、複数の原材料毎に探索された全ての部分構造を対象にして、部分構造入力データD0の生成を繰り返す。
【0026】
ベクトル変換部13は、生成部12によって生成された全ての部分構造入力データD0のそれぞれを1つのベクトルデータに変換する。例えば、ベクトル変換部13は、部分構造入力データD0に含まれるそれぞれの部分構造に関する分子構造情報を参照してそれらを分子記述化することによってベクトルVMに変換する。分子記述化によって、分子構造情報の示す分子の特徴をその化学構造に基づいて数値列として表わすことができる。この分子記述化の方式としては、分子構造をベクトル化する手法であれば任意の方式が採用できるが、例えば、ECFP(Extended Connectivity FingerPrints)、MACCS FingerPrints、PubChem FingerPrints、Substructure FingerPrints、Estate FingerPrints、BCI FingerPrints、Molprint2D FingerPrints、Pass base FingerPrints等が採用できる。さらに、ベクトル変換部13は、それぞれの部分構造毎に生成したベクトルVMに対して、該当部分構造を含む原材料に関する比率rのデータと、その原材料中の該当部分構造の個数のデータとを組み合わることにより部分構造入力データDを生成する。
【0027】
合成部14は、ベクトル変換部13によってベクトルに変換された、複数の原材料毎の全ての部分構造毎のベクトルVMを、1つのベクトルデータにまとめて、合成入力データFを生成する。例えば、合成部14は、第1の原材料の部分構造“CH3”及び“CCC”に対応した2つの部分構造入力データD1,1,D1,2と、第2の原材料の部分構造“OH”、“CH3”、及び“CCC”に対応した3つの部分構造入力データD2,1,D2,2,D2,3とが存在する場合には、それらの5つの部分構造入力データD1,1,D1,2,D2,1,D2,2,D2,3に対応する5つのベクトルVMをまとめた合成入力データFを生成する。
【0028】
このとき、合成部14は、それらの5つの部分構造入力データD
1,1,D
1,2,D
2,1,D
2,2,D
2,3に対応する5つのベクトルV
Mにそれぞれの部分構造に対応する配合率データ及び個数データを反映することにより、5つのベクトルV
Mの重み付け平均を取って合成入力データFを生成する。より詳細には、合成部14は、部分構造入力データD
1,1,D
1,2,D
2,1,D
2,2,D
2,3に対応する5つのベクトルV
Mのそれぞれの要素に、それぞれの部分構造に対応する比率r及び個数nを乗算した後に、5つのベクトルV
Mのそれぞれの要素を加算(あるいは平均化)することにより、合成入力データFを生成する。例えば、合成部14は、第1の原材料の部分構造に対応するベクトルV
Mに対しては、第1の原材料の比率r
1にその部分構造の個数nを乗じた値を乗算し、第2の原材料の部分構造に対応するベクトルV
Mに対しては、第2の原材料の比率r
2にその部分構造の個数nを乗じた値を乗算する。一例を挙げれば、
図3の(a)部に示した第1の原材料の部分構造“CH
3”に対応するベクトルV
Mに対しては、比率r
1=0.5にその部分構造の個数“2”を乗じた値(0.5×2=1.0)を乗算し、
図3の(b)部に示した第2の原材料の部分構造“OH”に対応するベクトルV
Mに対しては、比率r
2=0.5にその部分構造の個数“1”を乗じた値(0.5×1=0.5)を乗算する。ただし、比率及び個数データの反映は、ベクトルV
Mの各要素に対して、比率rに個数nを乗じた値を加算することによって行われてもよいし、ベクトル要素に対して、比率rに個数nを乗じた値を連結することによって行われてもよい。また、より一般には、合成部14は、全ての部分構造に関するベクトル、配合比、及び個数を入力として、一定のルールで単一のベクトルを出力する関数を用いてベクトルを生成してもよく、配合率の反映とベクトルの加算のステップに分けずに、一度の処理で単一のベクトルを生成しても良い。
【0029】
さらに、合成部14は、生成した合成入力データFを外部に出力することによって、外部の機械学習モデルに入力する。すなわち、出力された合成入力データFは、入力データ生成システム10の外部に接続されたコンピュータ内のトレーニング部20によって読み込まれる。そして、トレーニング部20において、その合成入力データFが説明変数として任意の教師ラベルとともに機械学習モデルに入力されることにより、学習済みモデルが生成される。さらに、トレーニング部20によって生成された学習済みモデルを基に予測器30内の機械学習モデルが設定される。ただし、トレーニング部20と予測器30は同一の機能部であってもよい。そして、入力データ生成システム10によって生成された合成入力データFが予測器30内の機械学習モデルに入力されることによって、予測器30によって多成分物質の特性の予測結果が生成および出力される。なお、これらのトレーニング部20および予測器30は、入力データ生成システム10を構成するコンピュータ100と同一のコンピュータ内に構成されてもよいし、コンピュータ100と別体のコンピュータ内に構成されてもよい。
【0030】
一例では、トレーニング部20は、ニューラルネットワークを用いた学習済みモデルを生成する。学習済みモデルは、入力データと出力データとの多数の組合せを含む教師データをコンピュータが処理することで生成される。コンピュータは、入力データを機械学習モデルに入力することで出力データを算出し、算出された出力データと、教師データで示される出力データとの誤差(すなわち、推定結果と正解との差)を求める。そして、コンピュータはその誤差に基づいて機械学習モデルであるニューラルネットワークの所与のパラメータを更新する。コンピュータはこのような学習を繰り返すことで学習済みモデルを生成する。学習済みモデルを生成する処理は学習フェーズということができ、その学習済みモデルを利用する予測器30の処理は運用フェーズということができる。
【0031】
[システムの動作]
図4を参照しながら、特性予測システム1の動作を説明するとともに本実施形態に係る特性予測方法について説明する。
図4は特性予測システム1の動作の一例を示すフローチャートである。
【0032】
まず、入力データ生成システム10のユーザの指示入力を契機に入力データ生成処理が開始されると、取得部11によって、複数の原材料それぞれについての原材料構造データ及び配合率データが取得され、部分構造データベース16から、既知の複数の部分構造を表す部分構造データが取得される(ステップS1)。次に、生成部12によって、それぞれの原材料構造データの表す原材料の分子構造を対象に部分構造が探索されることにより、その分子構造中の部分構造及びその個数が特定される(ステップS2)。さらに、生成部12によって、複数の原材料の分子構造中の部分構造毎に部分構造入力データD0が生成される(ステップS3)。その後、ベクトル変換部13によって、全ての部分構造入力データD0のそれぞれが1つのベクトル形式のベクトルVMに変換されベクトルVMに、該当部分構造を含む原材料に関する比率rのデータと、その原材料中の該当部分構造の個数のデータとが組み合わされることにより、部分構造入力データDが生成される(ステップS4)。
【0033】
次に、合成部14によって、複数の原材料毎の全ての部分構造入力データDに対応するベクトルVMがまとめられて、合成入力データFが生成される(ステップS5)。その際、合成部14により、それぞれのベクトルVMに配合率データ及び個数データを反映しながらベクトルVMの重み付け平均を計算することにより、合成入力データFが生成される。その後、合成部14により、合成入力データFがトレーニング部20に機械学習用の入力データとして出力される(ステップS6)。このとき、ベクトルVMへの比率及び個数の反映は、各ベクトルVMに対して、比率及び個数を乗算した値を、乗算、加算、あるいは連結することによって行われる。また、より一般には、合成部14は、全ての部分構造に関するベクトル、配合比、及び個数を入力として、一定のルールで単一のベクトルを出力する関数を用いてベクトルを生成してもよく、配合率の反映とベクトルの加算のステップに分けずに、一度の処理で単一のベクトルを生成しても良い。
【0034】
次に、トレーニング部20において、学習フェーズが実行され、入力データと教師データとを用いて学習することで学習済みモデルが生成される(ステップS7)。そして、生成された学習済みモデルが予測器30に設定され、予測器30により、新たに入力データ生成システム10から取得される入力データを用いて運用フェーズが実行され、多成分物質の特性の予測結果が生成および出力される(ステップS8)。
【0035】
[プログラム]
コンピュータまたはコンピュータシステムを特性予測システム1として機能させるための特性予測プログラムは、該コンピュータシステムを取得部11、生成部12、ベクトル変換部13、合成部14、部分構造データベース16、トレーニング部20、及び予測器30として機能させるためのプログラムコードを含む。この特性予測プログラムは、CD-ROM、DVD-ROM、半導体メモリ等の有形の記録媒体に固定的に記録された上で提供されてもよい。あるいは、特性予測プログラムは、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。提供された特性予測プログラムは例えば補助記憶部103に記憶される。プロセッサ101が補助記憶部103からその特性予測プログラムを読み出して実行することで、上記の各機能要素が実現する。
【0036】
[効果]
以上説明したように、上記実施形態によれば、原材料の構造データとデータベースから取得した部分構造の構造データを基に、原材料の構造中の既知の部分構造を表現した部分構造入力データDが生成され、その部分構造入力データDに原材料の比率が反映されるとともに、部分構造入力データDがまとめられることにより入力データが生成される。そして、生成された入力データが機械学習モデルに入力される。その結果、原材料の全体の構造から予め設定された部分構造のデータに絞った入力データが生成され、機械学習によってその入力データを処理させることにより、材料の特性を効率的に予測させることができる。
【0037】
また、上記実施形態において、複数の原材料に関する原材料構造データと、複数の原材料のそれぞれの配合の比率を表す配合率データの入力を受け付け、複数の原材料毎に部分構造入力データを生成するとともに、複数の原材料の部分構造入力データに、当該複数の原材料に関する配合率データを反映することにより入力データを生成する。この場合、複数の原材料毎の原材料構造データを基に、既知の部分構造を表現した部分構造入力データD0が生成されるとともに、複数の原材料毎の部分構造入力データD0に複数の原材料毎の比率が反映されることにより合成入力データFが生成される。そして、生成された合成入力データFが機械学習モデルに入力される。その結果、複数の原材料を基に製造される多成分物質を対象に、機械学習によって入力データを処理させることにより、その物質の特性を効率的に予測させることができる。
【0038】
また、上記実施形態においては、原材料の構造中に存在する部分構造の個数を特定し、原材料の部分構造入力データに対して、当該配合率データに部分構造の個数を乗じた値を反映することにより、入力データを生成する。その場合、原材料の分子中の部分構造の個数が特定され、部分構造入力データD0に原材料の比率と部分構造の個数とを反映することができる。その結果、その原材料を基にした多成分物質の特性を精度よく予測することができる。
【0039】
さらに、上記実施形態においては、部分構造入力データDに含まれるベクトルに対して、当該配合率データに基づく値を、乗算、加算、あるいは連結し、乗算、加算、あるいは連結したベクトルを一つのベクトルにまとめることにより、機械学習モデルに入力させる入力データを生成する。これにより、原材料の部分構造に関する部分構造入力データDに対してその原材料の比率を効果的かつ簡易に反映することができる。その結果、多成分物質の特性の予測精度が向上する。
【0040】
[変形例]
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。
【0041】
上記実施形態では、入力データ生成システム10が2つの原材料の部分構造入力データD0を組み合わせて合成入力データFを生成する例を示したが、3つ以上の原材料の部分構造入力データD0をそれらの比率とともに組み合わせるように機能してもよいし、1つの原材料の部分構造入力データDのみを入力データとして生成して単成分物質の特性予測に用いてもよい。
【0042】
また、入力データ生成システム10のベクトル変換部13に具備されている一定の変換ルールは、他のルールであってもよい。
【0043】
図5には、変形例に係る特性予測システム1Aの構成を示す。この変形例では、ベクトル変換部13、合成部14、及び予測器30の機能が、トレーニング部20Aに備えられる。そして、トレーニング部20Aにおいては、これらの機能部における、ベクトル化の機能、データの取りまとめの機能、配合率データ・個数データの反映の機能を、予測器30と一体化されたニューラルネットワークの機械学習モデルを用いて実現する。その際には、トレーニング部20Aは、機械学習モデルに、入力データ生成システム10Aの生成部12によって生成される部分構造毎の部分構造入力データD0を入力させる。
【0044】
ここでは、トレーニング部20Aは、ニューラルネットワークを用いた機械学習モデルに、部分構造入力データD0を入力する。入力される部分構造入力データD0に含まれる部分構造情報は、構造式、分子グラフ、SMILES記法のデータ、三次元座標のデータ等である。以下、部分構造入力データD0として分子グラフを機械学習モデルにインプットする例について説明する。
【0045】
すなわち、上記変形例においては、生成部12は、探索したそれぞれの部分構造毎の分子構造情報である分子グラフデータを参照して、分子グラフG=(V,E)におけるノード集合Vと一対一に対応するノードベクトルの集合FVと、その分子グラフにおけるエッジ集合Eと一対一に対応するエッジベクトルの集合FEを生成する。ノードベクトルは、ノードの原子を特定するためのベクトルであり、例えば、集合の各元のノードを構成する原子の特徴を表す数値(原子番号、電気陰性度等)を順番に並べたベクトル要素である。エッジベクトルは、ノード間の結合の性質を特定するためのベクトルであり、例えば、集合の各元のエッジの特徴を表す数値(結合次数、結合距離等)を順番に並べたベクトル要素である。さらに、生成部12は、ノードベクトル集合FVとエッジベクトル集合FEとに対して、元の部分構造の分子グラフデータと、該当部分構造を含む原材料に関する比率rのデータと、その原材料中の該当部分構造の個数のデータとを組み合わることにより部分構造入力データD0を生成する。そして、生成部12は、複数の原材料毎に探索した全ての部分構造を対象にして、部分構造入力データD0の生成を繰り返す。また、生成部12は、分子グラフである分子構造情報に対して、比率rのデータと個数のデータだけを組み合わせて部分構造入力データD0を生成してもよい。
【0046】
トレーニング部20Aは、複数の原材料毎の全ての部分構造入力データD0が入力され、ニューラルネットワークを用いた機械学習モデルによって実現されるベクトル変換部13及び合成部14によって、それらの部分構造入力データD0を基に、1つのベクトルである合成入力データFを生成する。そして、合成入力データFは、同一の機械学習モデル内の予測器30に入力される。なお、本変形例では、予測器30の機能がトレーニング部20Aの機械学習モデルから切り離されて別の機械学習モデルによって実現されてもよい。
【0047】
また、上記実施形態の入力データ生成システム10は、部分構造毎の分子構造情報と配合率データと個数データとを、1つの分子グラフにマージして表現する機能を有していてもよい。この場合、上述した変形例に係る特性予測システム1Aの生成部12と同様にして、部分構造入力データD0を生成する。そして、部分構造毎の部分構造入力データD0に含まれる分子グラフに配合率データと個数データとを反映する。詳細には、部分構造入力データD0に含まれるノードベクトル集合FVとエッジベクトル集合FEに含まれる特徴ベクトルに対して、配合率データと個数データとを反映する。さらに、配合率が反映された部分構造毎の部分構造入力データD0に含まれる分子グラフを、1つの分子グラフデータにマージすることにより、合成入力データFを生成する。このような場合は、入力データ生成システム10は、分子グラフをインプットして予測データを生成できる機械学習モデルに、生成した多成分材料毎の分子グラフを入力させることにより、特性予測を実現させる。
【0048】
また、上記実施形態の入力データ生成システム10のベクトル変換部13は、複数の原材料毎の部分構造入力データDを1次元ベクトルに変換する際には、原材料の違いを表す値をそのベクトルに反映するようにしてもよい。例えば、ワンホット(One-Hot)ベクトルによって原材料の違いが表されたベクトルをベクトルVMに連結してもよい。また、分散表現を使って原材料の違いが表されたベクトルをベクトルVMに連結してもよい。これにより、原材料毎の部分構造入力データDに、部分構造が同じ場合であっても原材料間の違いを反映させることができる。その結果、多成分物質の特性の予測精度が一層向上する。また、分子構造が未知の原材料群の配合量を並べたベクトルを合成入力データFに連結しても良い。これにより、分子構造が未知の原材料を含む場合でも特性を予測することが出来るようになる。
【0049】
一方、上記変形例に示したようなグラフをインプットとするニューラルネットワークを用いる場合、上記実施形態の入力データ生成システム10は、原材料の違いが表されたベクトルを付加する際には、生成部12によって生成される各原材料のノードベクトルに、そのベクトルを連結してもよい。なお、上記変形例にかかる特性予測システム1Aのベクトル変換部13は、ニューラルネットワークの機械学習モデルで実現されてもよい。その際には、ニューラルネットワークの中間層のベクトルに原材料の違いが表されたベクトルを反映するように動作してもよい。
【0050】
また、合成部14は、生成部12によって探索された複数の原材料毎の全ての部分構造の中から、一部の部分構造のデータを所定のルールにより選択して合成して、合成入力データFを生成してもよい。例えば、所定のルールとしては、互いに類似した部分構造のデータの中から一部を選択する等が考えられる。
【0051】
また、上記実施形態においては、部分構造データベースに複数種類の部分構造データが予め設定されてもよい。例えば、複数の部分構造の中から1つの構造を順次削除した複数種類の部分構造データを設定することが考えられる。この場合、入力データ生成システム10は、部分構造データベース16から複数種類の部分構造データを取得し、複数種類の部分構造データを用いて複数種類の入力データを生成し、複数種類の入力データを複数の機械学習モデルに入力することでアンサンブル学習器を構築する機能を有する。これにより、様々な部分構造の探索結果を基にした入力データを複数の学習器に入力することができ、複数の学習器の予測結果を平均又は多数決で回帰又は分類を行うアンサンブル学習を実現することができ、多成分物質の特性の予測精度をさらに向上させることができる。
【0052】
また、上記実施形態においては、合成入力データFとして、原材料の分子の全体構造を表すデータを基にした特徴ベクトルが併用されてもよい。例えば、このような特徴ベクトルを合成入力データFに連結して特性予測に用いられてもよいし、このような特徴ベクトルを基にした入力データがアンサンブル学習に用いられてもよい。
【0053】
少なくとも一つのプロセッサにより実行される入力データ生成方法の処理手順は上記実施形態での例に限定されない。例えば、上述したステップ(処理)の一部が省略されてもよいし、別の順序で各ステップが実行されてもよい。また、上述したステップのうちの任意の2以上のステップが組み合わされてもよいし、ステップの一部が修正または削除されてもよい。あるいは、上記の各ステップに加えて他のステップが実行されてもよい。例えばステップS8,S9の処理が省略されてもよい。
【0054】
本開示において、「少なくとも一つのプロセッサが、第1の処理を実行し、第2の処理を実行し、…第nの処理を実行する。」との表現、またはこれに対応する表現は、第1の処理から第nの処理までのn個の処理の実行主体(すなわちプロセッサ)が途中で変わる場合を含む概念を示す。すなわち、この表現は、n個の処理のすべてが同じプロセッサで実行される場合と、n個の処理においてプロセッサが任意の方針で変わる場合との双方を含む概念を示す。
【符号の説明】
【0055】
1…特性予測システム、10…入力データ生成システム、100…コンピュータ、101…プロセッサ、11…取得部、12…生成部、13…ベクトル変換部、14…合成部、16…部分構造データベース、20…トレーニング部、30…予測器。