分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プロセス条件・プロセス変数などの特徴量 x と分子・材料の物性・活性・特性や製品の品質などの目的変数 y との間で数理モデル y = f(x) を構築し、構築したモデルに x の値を入力して y の値を予測したり、y が目標値となる x の値を設計したりします。
モデルを構築するとき、なるべく多くのサンプルを用いることが有効です。モデルの適用範囲が広げることできることで、精度よく y を予測できる x の領域が大きくなるだけでなく、より広範囲の x の領域から y が目標値となりうる候補を設計できます。
モデル y = f(x) を構築するためのデータセットを準備するとき、基本的に x と y のデータが揃ったサンプルを準備する必要があります。x の特徴量の一部のデータがなかったり、y のデータがなかったりすると、それをサンプルとして使用できません。ただし、状況によっては一部のデータが存在しないサンプルでも活用できます。例えば、金属有機構造体を対象にした以下の研究では、
すべての特徴量が揃ったサンプルは少ない一方で、それらのサンプル以上の多くのサンプルを使い、モデル化することに成功しています。具体的には、金属有機構造体の特徴量を、構成要素 x (金属元素、有機化合物)、結晶構造 y (細孔、空隙率、密度、XRDプロファイルなど)、物性 z (吸着特性) に分けます。そして、x と y の間でモデル1 y = f1(x) を構築し、y と z の間でモデル2 z = f2(y) を構築します。
z は論文から収集したため、z, y, x の揃ったサンプルは少なく、x, y, z の間で1つのモデルを構築しようとすると、これら少ないサンプルしかモデル構築に使用できません。一方で、モデルを2つに分けることで、z のデータはありませんが x, y のデータの揃ったサンプルは多くあるため、より多くのサンプルでモデル1を構築できます。一般的なデータ解析をしているときには使用されなかった、z のデータはありませんが x と y のデータは揃ったサンプルを有効に活用できます。
モデル1を用いることで、x の値から y の値を予測したり、y の目標値から x の値を設計したりすることができますし、モデル2を用いることで、y の値から z の値を予測したり、z の目標値から y の値を設計したりすることができます。そして、モデル1、モデル2を活用することで、x から y を通した z の予測や、z から y を通した x の設計ができます。
他の例として、バイオマテリアルを対象にした以下の研究では、
バイオマテリアルの特徴量を合成条件 x (原料、燃焼温度など)、材料特性 y (圧縮強度、気孔率、XRDプロファイル、FT-IRスペクトルなど)、(動物実験が必要な) 骨形成率 z の3つに分け、モデル1 y=f1(x) とモデル2 z=f2(y) を構築しています。これにより、動物実験はしていいませんが材料の特性を分析した x と y の揃ったサンプルを有効に活用できます。
他にも、原料の特徴量のデータを活用することも重要です。
以上のように、データセットを準備するときは各特徴量の意味をよく考え、全体で一つのモデルを構築するのではなく、部分的に特徴量間でモデルを構築することで、今ある最大限のデータを活用したモデル構築ができます。ぜひ皆さんのデータセットでも、モデリングで工夫をすることでデータを有効に活用していただければと思います。
以上です。
質問やコメントなどありましたら、twitter, facebook, メールなどでご連絡いただけるとうれしいです。