人の知見・経験・感性などをどのようにデータ解析・機械学習に取り入れるか?

分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プロセス条件・プロセス変数などの特徴量 x と分子・材料の物性・活性・特性や製品の品質などの目的変数 y との間で数理モデル y = f(x) を構築し、構築したモデルに x の値を入力して y の値を予測したり、y が目標値となる x の値を設計したりします。

モデルはデータに基づいて構築されますが、データだけでなく、対象とする材料系、実験系、プロセスに深く関わってきた人の知見、経験、感性などを取り入れることができれば、モデルの予測精度の向上や、モデルを通じた新たな設計や解釈につながります。ここではデータ解析、機械学習をする際にどのように人の知見、経験、感性などを取り入れるか説明します。

1. 特徴量の設計

x にしても y にしても、特徴量を設計するところに人の知見、経験、感性などを取り込めます。y を説明するための新たな x を考えるだけでなく、既存の x の変換や既存の x に基づいた別の特徴量へ計算する数式、そして x と紐付けるための y の変換も、特徴量の設計に含まれます。もちろん、この時点で 100% 正しい特徴量を設計する必要はありません。少しでも重要そうと考えられる特徴量を考えて、追加したり置き換えたりしていきましょう。

 

2. 特徴量の取捨選択

新しい特徴量を考案することも大事ですが、その一方で、特徴量の数が多いほどオーバーフィッティング (過学習) の可能性は高くなります。ただ、重要な特徴量が x の中にないといけません。大事なことは、必要十分な特徴量を x として用いることです。データ解析・機械学習の手法の中にも、特徴量を取捨選択する方法はありますが、いずれの方法も完璧ではありません。人の知識、経験、感性などに基づいて、絶対に関係のない特徴量はあらかじめ削除することで、モデルの予測精度の向上につながります。

 

3. サンプルの取捨選択

モデルを構築する時にサンプル数が多い方が良いのはもちろんですが、ただ何が何でもサンプルを追加すれば良いというわけでもありません。全サンプルの間で、x と y の間の関係が一貫している必要があります。例えば、実験装置・分析装置が変わる前だったり、メンテナンス前だったりしたときのサンプルが含まれていると、(適切に装置の情報を x に組み込めれば問題ないかもしれませんが) そのままでは x と y の間の関係が一貫していない可能性があります。同じデータセット内のサンプルとして扱って良いか、また全く同じ x の値であれば y の値を再現できるかどうかを考えて、モデル構築に用いるサンプルの選択を、これまでの知見、経験、感性と照らし合わせながら実施しましょう。

 

4. 仮想サンプルの生成

モデルを構築したら、次の実験条件、プロセス条件などを探索するため、仮想サンプルの生成を行い、それらをモデルに入力して y の値を予測します。予測値が良好だったり、ベイズ最適化では獲得関数の値が大きかったりする仮想サンプルを選択して、それに基づいて次の実験を行います。

基本的に仮想サンプルは乱数に基づいて大量に生成します。ただ、大量とはいえ、特徴量の数が多いほど、全ての候補を生成することは難しくなります。ある程度制約を入れて効率的に生成する方が、結果的に的確な次の実験条件、プロセス条件を探索できます。仮想サンプルの生成の時に、これまでの知見、経験、感性などを生かして、例えば実験的におかしな組み合わせだったり、失敗しそうな組み合わせだったりは制約として考慮して、仮想サンプルの生成をするようにしましょう。

 

5. モデルの解釈

データ解析・機械学習でできることは、重要な x を選択することだったり、x の重要度や y に対する影響の大きさを計算することだったり、決定木のように x から y の予測を見える化することだったりすることに限られます。そこからのさらなる解釈は、人がすることになります。もちろん、データ解析・機械学習の結果として全く新しい知見が得られることもありますので、それを取りこぼすことのないようにしつつ、これまでの知識、経験、感性などでモデルを解釈するようにします。

 

以上です。

質問やコメントなどありましたら、X, facebook, メールなどでご連絡いただけるとうれしいです。

タイトルとURLをコピーしました