(57)【要約】【課題】化学物質の構造式を生成するモデルを効率よく構築する。【解決手段】データベースに含まれる複数の化学構造式を用いて、機械学習によって、化学構造式の生成モデルである化学式モデルを構築する情報処理方法であって、コンピュータが、前記データベースに含まれる前記化学構造式を学習データとして、前記化学式モデルを学習させる学習ステップと、前記化学式モデルによって、複数の化学構造式を生成する生成ステップと、前記学習データに含まれる化学構造式が、前記化学式モデルによって生成される確率を判定する判定ステップと、前記確率が所定の閾値より小さくなるまで、前記生成した複数の化学構造式を新たな学習データに加え、前記学習ステップを反復する再学習ステップと、を実行する。【選択図】図１
2020190844.tif 000002
【特許請求の範囲】
【請求項１】
データベースに含まれる複数の化学構造式を用いて、機械学習によって、化学構造式の生成モデルである化学式モデルを構築する情報処理方法であって、
コンピュータが、
前記データベースに含まれる前記化学構造式を学習データとして、前記化学式モデルを学習させる学習ステップと、
前記化学式モデルによって、複数の化学構造式を生成する生成ステップと、
前記学習データに含まれる化学構造式が、前記化学式モデルによって生成される確率を判定する判定ステップと、
前記確率が所定の閾値より小さくなるまで、前記生成した複数の化学構造式を新たな学習データに加え、前記学習ステップを反復する再学習ステップと、
を実行する、情報処理方法。
【請求項２】
前記データベースは、複数の化学構造式からなる化学反応式が記憶されたデータベースである、
請求項１に記載の情報処理方法。
【請求項３】
コンピュータが、
前記データベースに含まれる複数の前記化学反応式を学習データとして、化学反応式の生成モデルである反応式モデルを学習させる第二の学習ステップをさらに実行する、
請求項２に記載の情報処理方法。
【請求項４】
コンピュータが、
前記生成ステップで生成した複数の化学構造式を、学習済みの前記反応式モデルに入力し、複数の化学反応式を生成する第二の生成ステップと、
をさらに実行する、
請求項３に記載の情報処理方法。
【請求項５】
前記判定ステップでは、所定の規則を満たしている前記化学構造式を対象として前記判定を行い、
前記再学習ステップでは、前記所定の規則を満たしていない前記化学構造式を前記新たな学習データから除外する、
請求項１から４のいずれかに記載の情報処理方法。
【請求項６】
データベースに含まれる複数の化学構造式を用いて、機械学習によって、化学構造式の生成モデルである化学式モデルを構築する情報処理装置であって、
前記データベースに含まれる前記化学構造式を学習データとして、前記化学式モデルを学習させる学習手段と、
前記化学式モデルによって、複数の化学構造式を生成する生成手段と、
前記学習データに含まれる化学構造式が、前記化学式モデルによって生成される確率を判定する判定手段と、
前記確率が所定の閾値より小さくなるまで、前記生成した複数の化学構造式を新たな学習データに加え、前記学習を反復する再学習手段と、
を含む、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、化学構造式を生成する技術に関する。
【背景技術】
【０００２】
機械学習によって、所定の物性値を有する化学構造式を生成する技術が存在する。例えば、非特許文献１には、学習によって生成したモデルを用いて、化学反応を起こしうる化学物質（反応物）の候補を自動的に生成する手法が記載されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】福島真太朗，本山裕一，吉見一慶，敵対的生成ネットワークを用いた逆合成の経路探索，分子科学討論会，2018
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１に記載の手法によると、既知または未知の反応物を自動的に生成することができ、当該反応物を反応させて得られる化学物質を推定することができる。
しかし、当該手法には、モデルに対して十分な学習が行われたかを判定することが難しいという問題点が存在する。
【０００５】
本発明は上記の課題を考慮してなされたものであり、化学物質の構造式を生成するモデルを効率よく構築することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理方法は、
データベースに含まれる複数の化学構造式を用いて、機械学習によって、化学構造式の生成モデルである化学式モデルを構築する情報処理方法であって、コンピュータが、前記データベースに含まれる前記化学構造式を学習データとして、前記化学式モデルを学習させる学習ステップと、前記化学式モデルによって、複数の化学構造式を生成する生成ステップと、前記学習データに含まれる化学構造式が、前記化学式モデルによって生成される確率を判定する判定ステップと、前記確率が所定の閾値より小さくなるまで、前記生成した複数の化学構造式を新たな学習データに加え、前記学習ステップを反復する再学習ステップと、を実行することを特徴とする。
【０００７】
本発明に係る情報処理装置は、
データベースに含まれる複数の化学構造式を用いて、機械学習によって、化学構造式の生成モデルである化学式モデルを構築する情報処理装置であって、前記データベースに含まれる前記化学構造式を学習データとして、前記化学式モデルを学習させる学習手段と、前記化学式モデルによって、複数の化学構造式を生成する生成手段と、前記学習データに含まれる化学構造式が、前記化学式モデルによって生成される確率を判定する判定手段と、前記割合が所定の閾値より小さくなるまで、前記生成した複数の化学構造式を新たな学習データに加え、前記学習を反復する再学習手段と、を含むことを特徴とする。
【０００８】
なお、本発明は、上記手段の少なくとも一部を含む情報処理方法として特定することができる。また、上記手段の少なくとも一部を含む情報処理装置として特定することもできる。上記処理や手段は、技術的な矛盾が生じない限りにおいて、自由に組み合わせて実施することができる。
【発明の効果】
【０００９】
本発明によれば、化学物質の構造式を生成するモデルを効率よく構築することができる。
【図面の簡単な説明】
【００１０】
【図１】第一の実施形態に係る情報処理装置の概要図。
【図２】記憶部に記憶される化学反応データベースの例。
【図３】化学式モデルＣ１を学習させる処理のフローチャート図。
【図４】反応式モデルＣ２を学習させる処理のフローチャート図。
【図５】化学反応式を生成する処理のフローチャート図。
【発明を実施するための形態】
【００１１】
本発明に係る情報処理方法は、データベースに含まれる複数の化学構造式を用いて、機械学習によって、化学構造式の生成モデルである化学式モデルを構築する情報処理方法である。
【００１２】
化学式モデルは、符号化された分子構造式を機械学習によって生成するモデルである。
化学物質の構造を符号化する方法として、ＳＭＩＬＥＳ（Simplified Molecular Input
Line Entry System）といった記法がある。これらの記法を利用して、機械学習によって化学物質を自動的に生成する方法が提唱されている。例えば、複数の化学物質が記録されたデータベースを入力データとして学習を行うことで、既知または未知の化学物質を出力するモデルを構築することができる。
【００１３】
一方、既存の技術では、化学物質の生成モデルが十分に学習されたか否かを評価する基準が存在しない。
【００１４】
当該課題を解決するため、本発明に係る情報処理方法では、
前記データベースに含まれる前記化学構造式を学習データとして、前記化学式モデルを学習させ、前記化学式モデルによって、複数の化学構造式を生成し、前記学習データに含まれる化学構造式が、前記化学式モデルによって生成される確率を判定する。
また、前記確率が所定の閾値より小さくなるまで、前記生成した複数の化学構造式を新たな学習データに加え、学習ステップを反復する。
【００１５】
化学構造式とは、前述したＳＭＩＬＥＳのような、コンピュータが解釈可能な記法によって符号化されたものであってもよい。符号化は、化学構造式をデータベースから取得する際に実行してもよいし、符号化された化学構造式をデータベースに記憶してもよい。
本発明に係る方法では、学習の過程において、学習中の化学式モデルによって化学構造式の生成を試み、学習に用いた化学構造式が、生成された化学構造式に含まれている確率を判定する。そして、当該確率が所定の閾値より小さくなるまで、生成した化学構造式それ自体を新たな学習データに加え、学習ステップを反復する。
これにより、学習データに含まれていない新規の化学物質を生成可能なモデルを構築することができる。
【００１６】
なお、データベースは、化学構造式のみを記憶するものであってもよいし、複数の化学構造式からなる化学反応式を記憶するものであってもよい。
【００１７】
また、前記データベースに含まれる複数の前記化学反応式を学習データとして、化学反応式の生成モデルである反応式モデルを学習させる第二の学習ステップと、をさらに実行することを特徴としてもよい。
【００１８】
化学式モデルが、単体の化学構造式を生成するモデルであるのに対し、反応式モデルは、化学反応式を生成するモデルである。このようなモデルは、データベースに含まれる化学反応式それ自体を学習データとして学習を実施することで構築することができる。
【００１９】
また、前記生成ステップで生成した複数の化学構造式を、学習済みの前記反応式モデルに入力し、複数の化学反応式を生成する第二の生成ステップと、をさらに実行することを特徴としてもよい。
【００２０】
化学式モデルが出力した化学構造式を反応式モデルに入力することで、新規の化学反応式を得ることが可能になる。
【００２１】
一方で、機械学習によって生成された結果（符号化された分子構造式）は、必ずしも化学物質としての規則を満たしているとは限らない。例えば、化学物質の分子構造式は、「結合する原子の価が一致している」、「ベンゼン環が閉じている」など、最低限満たすべき規則があるが、機械学習によって生成された結果はこれらの規則を考慮していない。
【００２２】
これに対応するため、前記判定ステップでは、所定の規則を満たしている前記化学構造式を対象として前記判定を行い、前記再学習ステップでは、前記所定の規則を満たしていない前記化学構造式を前記新たな学習データから除外することを特徴としてもよい。
【００２３】
このように、再学習の過程において、所定の規則、すなわち、分子構造式として求められる要件を満たしていないものをフィルタリングしてもよい。フィルタリングは、要件を満たさない化学構造式を除外することで行ってもよいし、学習ステップにおいて、対象の化学構造式に重み（例えば、強化学習における報酬）を与えることで行ってもよい。
【００２４】
（第一の実施形態）
第一の実施形態に係る情報処理装置の概要について、図１を参照しながら説明する。
本実施形態に係る情報処理装置１００は、既知の化学反応式を記憶したデータベースを有し、当該データベースに基づいて、化学構造式を生成するためのモデル（以下、化学式モデル）と、化学反応式を生成するためのモデル（以下、反応式モデル）を学習させる機能を有する。また、学習済みの各モデルを用いて、化学構造式と化学反応式を自動生成する機能を有する。
【００２５】
情報処理装置１００は、例えばパーソナルコンピュータ、サーバ装置、スマートフォン、携帯電話、タブレットコンピュータ、個人情報端末といった汎用のコンピュータである。情報処理装置１００は、記憶部１０１、制御部１０２、入出力部１０３を有して構成される。
【００２６】
記憶部１０１は、情報を記憶する手段であり、ＲＡＭ、磁気ディスクやフラッシュメモリなどの記憶媒体により構成される。記憶部１０１には、化学反応データベース１０１１、化学式モデルＣ１、反応式モデルＣ２が記憶される。
図２は、記憶部１０１に記憶される化学反応データベース１０１１の一例である。
化学反応データベース１０１１は、後述する制御部１０２によって実行されるデータベース管理システム（Database Management System）のプログラムが、記憶部１０１に記憶されているデータを管理することで構築される。これらのデータベースは、リレーショナルデータベースであってもよい。なお、データベースは、必ずしもデータベース管理システムによって管理される必要はない。
【００２７】
化学反応データベース１０１１は、図示したように、反応物と生成物とペアからなる化
学反応式の集合である。なお、ここではテーブル形式を例示するが、化学反応データベースは必ずしもテーブル形式でなくてもよい。
ここでは、化学反応を発生させる物質と反応物と呼び、化学反応によって生成される物質を生成物と呼ぶ。反応物および生成物の個数は、特定の個数に限定されない。例えば、Ｎｏ．１のようにアンモニアを生成する場合、反応物は二つ、生成物は一つである。また、Ｎｏ．２のように過酸化水素を分解する場合、反応物は一つ、生成物は二つである。また、Ｎｏ．３のようにメタンを燃焼させる場合、反応物、生成物はともに二つとなる。
なお、図２の例では、反応物、生成物ともに化学式を記載しているが、化学反応データベース１０１１には、化学構造式を表すデータを記憶させてもよい。
【００２８】
化学式モデルＣ１および反応式モデルＣ２は、それぞれ、化学構造式と化学反応式を生成するための機械学習モデルである。化学式モデルＣ１は、単体の化学物質の構造式を生成するモデルであり、反応式モデルＣ２は、左辺と右辺を有する化学反応式を生成するモデルである。なお、以下の説明では、化学反応式ないし反応式とは、化学反応を化学構造式によって表現したものを指す。
化学式モデルＣ１は、化学反応データベース１０１１に含まれる反応物または生成物を入力データとして学習され、反応式モデルＣ２は、化学反応データベース１０１１に含まれる化学反応（すなわち、レコード単位）を入力データとして学習される。
【００２９】
化学式モデルＣ１および反応式モデルＣ２は、系列を扱うモデルであるため、ＳｅｑＧＡＮ（Sequence Generative Adversarial Networks）、Sequence-to-Sequenceモデル、Weisfeiler-Lehman Network等を好適に適用することができる。
【００３０】
制御部１０２は、情報処理装置１００の制御を司る手段である。制御部１０２は、例えば、ＣＰＵ（Central Processing Unit）によって構成される。
制御部１０２は、機能モジュールとして化学式モデル学習部１０２１、化学式生成部１０２２、反応式モデル学習部１０２３、反応式生成部１０２４を有している。各機能モジュールは、ＲＯＭ（Read Only Memory）等の記憶手段（記憶部１０１を含む）に記憶されたプログラムをＣＰＵによって実行することで実現してもよい。
【００３１】
化学式モデル学習部１０２１は、化学構造式を生成するための機械学習モデル（化学式モデルＣ１）を学習させる。化学式モデルＣ１の学習には、例えば、前述したＳｅｑＧＡＮのほか、再帰型ニューラルネットワークであるＬＳＴＭ（Long short-term memory）、ＧＲＵ（Gated Recurrent Unit）などを利用することができる。化学式モデル学習部１０２１は、学習データである化学構造式を化学反応データベース１０１１から取得し、ＳＭＩＬＥＳ記法に変換したうえで、化学式モデルＣ１に対して教師なし学習を実施する。
なお、学習の過程においては、強化学習を適用してもよい。例えば、論理的に正しい分子構造式に報酬を与え（あるいは、正しくないものに罰則を与え）、報酬を最大化するように学習を進めてもよい。また、分子構造式として論理的に正しくないものをフィルタリングしながら学習を進めてもよい。分子構造式として正しいか否かは、採用する記法の文法規則を表すデータを別途用意し、当該データを参照して判断してもよい。
【００３２】
化学式生成部１０２２は、学習によって得られた化学式モデルＣ１を用いて新規の化学構造式を生成する。例えば、任意のデータ（乱数等）を化学式モデルＣ１に入力し、出力された、ＳＭＩＬＥＳ記法による化学構造式を取得する。
【００３３】
反応式モデル学習部１０２３は、化学反応式を生成するための機械学習モデル（反応式モデルＣ２）を学習させる。反応式モデルＣ２の学習には、例えば、ＳｅｑＧＡＮ、ＧＶＡ（Grammar Variational Autoencoder）等を利用することができる。なお、各モデルの
学習過程においては、ＳＭＩＬＥＳ等の文字列でなく、グラフ表現を用いて化学構造式を
表現してもよい。この場合、ＭｏｌＧＡＮ等のアルゴリズムを利用してモデルを構築することができる。
【００３４】
反応式生成部１０２４は、学習によって得られた反応式モデルＣ２を用いて新規の化学反応式を生成する。例えば、任意の化学構造式を反応式モデルＣ２に入力し、出力された化学反応式（すなわち、当該化学構造式を含むシーケンス）を取得する。反応式モデルＣ２に入力する化学構造式は、化学式モデルＣ１によって生成されたものであってもよい。
【００３５】
入出力部１０３は、ユーザに対して情報を提示し、当該ユーザから情報の入力を受けるためのインタフェースである。入出力部１０３は、例えば、ディスプレイ装置やタッチパネルを有して構成される。
【００３６】
次に、前述した機能を実現するための、具体的な処理方法について説明する。
図３は、本実施形態に係る情報処理装置１００が、化学式モデルＣ１を構築する処理のフローチャート図である。図３に示した処理は、装置の利用者の指示によって開始される。
まず、ステップＳ１１で、化学式モデル学習部１０２１が、記憶部１０１（化学反応データベース１０１１）に記憶されている複数の化学反応式を取得し、当該化学反応式を構成する化学構造式を所定の記法（例えば、ＳＭＩＬＥＳ記法）に変換する。ここで変換された化学構造式が、化学式モデルＣ１を学習させるための学習データとなる。
【００３７】
次に、ステップＳ１２で、化学式モデル学習部１０２１が、化学構造式を用いて化学式モデルＣ１を学習させる。化学式モデルＣ１の学習には、任意の手法を用いることができるが、ＳｅｑＧＡＮや、再帰型ニューラルネットワークに強化学習を組み合わせた手法を用いることが好ましい。強化学習を利用すると、論理的に矛盾がある化学構造式が生成されることを抑制することができる。例えば、ＳＭＩＬＥＳの文法規則に沿っている出力に対して大きい報酬を与えて学習を行うことで、矛盾のない化学構造式が生成されるモデルを構築することができる。
【００３８】
一連の学習が終了すると、ステップＳ１３で、化学式生成部１０２２が、学習途中にある化学式モデルＣ１を利用して、新規の化学構造式を所定個数だけ生成する。
そして、ステップＳ１４で、化学式モデルＣ１を学習させる際に利用した学習データが、ステップＳ１３で得られた出力に含まれている確率を算出する。
具体的には、まず、学習データをｘ(i)（i=1,…,N）とした場合に、Ｎ個の学習データ
のそれぞれについて、当該学習データｘ(i)と同一の化学構造式が化学式モデルＣ１から
出力される確率ｐ（ｘ(i)）を算出する。そして、算出した複数の確率ｐ（ｘ(i)）と、閾値δとの比較をそれぞれ行う。
【００３９】
この結果、当該閾値を満たす（確率ｐが閾値δを下回る）学習データが、所定の割合（ないし、所定の個数）以上存在している場合、十分な学習が行われたと判断し、処理を終了させる（ステップＳ１４−Ｎｏ）。当該条件が満たされなかった場合（ステップＳ１４−Ｙｅｓ）、学習が十分に行われていないと判断し、処理はステップＳ１５へ遷移する。
【００４０】
ステップＳ１５では、化学式モデル学習部１０２１が、追加の学習データとして、ステップＳ１３で生成された化学構造式を取得する。そして、取得した化学構造式を学習データに加え、ステップＳ１２における学習処理を継続する。
かかる処理によると、学習データに存在しない新規の化学構造式を一定の割合以上出力する化学式モデルＣ１を構築することができる。
【００４１】
なお、ステップＳ１５では、化学構造式として適切な構造を持つもののみを学習データ
に追加するようにしてもよい。すなわち、ステップＳ１３で、生成された化学構造式のうち、分子構造式として不適切なもの（不適切な文法または記法によって符号化されたもの）をフィルタリングしてもよい。当該判断は、採用する記法の文法規則を表すデータを参照することで行ってもよい。
【００４２】
次に、反応式モデルＣ２を学習させる方法について説明する。
図４は、本実施形態に係る情報処理装置１００が、反応式モデルＣ２を構築する処理のフローチャート図である。図４に示した処理は、化学式モデルＣ１の構築が完了したタイミング以降、装置の利用者の指示によって開始される。
【００４３】
まず、ステップＳ２１で、反応式モデル学習部１０２３が、記憶部１０１（化学反応データベース１０１１）に記憶されている複数の化学反応式を取得し、当該化学反応式を、所定の記法（例えば、ＳＭＩＬＥＳ記法）に変換する。ここで変換された化学反応式が、反応式モデルＣ２を学習させるための学習データとなる。
【００４４】
次に、ステップＳ２２で、反応式モデル学習部１０２３が、符号化された化学反応式を用いて反応式モデルＣ２を学習させる。反応式モデルＣ２の学習には、任意の手法を用いることができるが、Grammar Variational Autoencoder、Sequence-to-Sequenceモデルに
基づく方法など、系列を学習する方法であることが好ましい。
【００４５】
次に、学習済みの化学式モデルＣ１および反応式モデルＣ２を用いて、新規の化学反応式を生成する方法について説明する。
図５は、本実施形態に係る情報処理装置１００が、化学反応式を生成する処理のフローチャート図である。図５に示した処理は、化学式モデルＣ１および反応式モデルＣ２の構築が完了したタイミング以降、装置の利用者の指示によって開始される。
【００４６】
まず、ステップＳ３１で、化学式生成部１０２２が、化学式モデルＣ１を用いて、反応物となる化学構造式を生成する。
次に、ステップＳ３２で、反応式生成部１０２４が、生成された化学構造式を反応式モデルＣ２に入力し、化学反応式を生成する。
ステップＳ３３では、反応式生成部１０２４が、生成された化学反応式が所定の規則に則っているか否かを判定する。本ステップでは、例えば、ＳＭＩＬＥＳの記法に沿った化学反応式が得られたか否かを確認する。ステップＳ３３で肯定判定であった場合、処理はステップＳ３４へ遷移し、利用者によって指定された個数ぶんの化学反応式が得られたか否かを判定する。いずれかのステップで否定判定となった場合、処理はステップＳ３１へ戻り、化学構造式の生成から再度試行する。両ステップで肯定判定となった場合、生成された結果を利用者に提示し（ステップＳ３５）、処理は終了する。
【００４７】
なお、ステップＳ３５では、符号化された化学反応式をそのまま出力してもよいし、他の記法に変換したのちに出力してもよい。また、人が理解しやすい形式に視覚化を行ったのちに出力してもよい。出力は、入出力部１０３が有する表示装置を介して行ってもよいし、記憶部１０１にデータを書き出すことで行ってもよい。
【００４８】
以上説明したように、第一の実施形態に係る情報処理装置は、機械学習によって化学反応式を自動生成することができる。特に、学習の過程において、学習中の化学式モデルによって得られた化学構造式が、学習データである化学反応データベースに含まれている割合を判定し、当該割合が所定の閾値より小さくなるまで、生成した化学構造式それ自体を新たな学習データに加え、学習ステップを反復することで、学習量を確保することができる。さらに、学習の過程において、所定の規則、すなわち、分子構造式として求められる要件を満たしていないものをフィルタリングするため、機械学習の精度を向上させること
ができる。
【００４９】
（変形例）
上記の実施形態はあくまでも一例であって、本発明はその要旨を逸脱しない範囲内で適宜変更して実施しうる。
例えば、本開示において説明した処理や手段は、技術的な矛盾が生じない限りにおいて、自由に組み合わせて実施することができる。
【００５０】
また、１つの装置が行うものとして説明した処理が、複数の装置によって分担して実行されてもよい。あるいは、異なる装置が行うものとして説明した処理が、１つの装置によって実行されても構わない。コンピュータシステムにおいて、各機能をどのようなハードウェア構成（サーバ構成）によって実現するかは柔軟に変更可能である。
【００５１】
本発明は、上記の実施形態で説明した機能を実装したコンピュータプログラムをコンピュータに供給し、当該コンピュータが有する１つ以上のプロセッサがプログラムを読み出して実行することによっても実現可能である。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な非一時的なコンピュータ可読記憶媒体によってコンピュータに提供されてもよいし、ネットワークを介してコンピュータに提供されてもよい。非一時的なコンピュータ可読記憶媒体は、例えば、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクドライブ（ＨＤＤ）等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤディスク・ブルーレイディスク等）など任意のタイプのディスク、読み込み専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード、フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒体を含む。
【符号の説明】
【００５２】
１００・・・情報処理装置
１０１・・・記憶部
１０２・・・制御部
１０３・・・入出力部
【図１】
2020190844.tif 000003
【図２】
2020190844.tif 000004
【図３】
2020190844.tif 000005
【図４】
2020190844.tif 000006
【図５】
2020190844.tif 000007