サンプルを集めるときに意識するとよいこと [データベース作成]

分子設計や材料設計をするときや、プラントにおいてソフトセンサーを検討しようとするとき、

(分子設計・材料設計・ソフトセンサーについてはこちら)

研究内容
主な研究テーマ たくさんの化学データを見える化する 化合物の物性・機能性と化学構造との間の関係を明らかにする 新しい化学構造をパソコンで設計する 次に行うべき実験やシミュレーションの内容を計算で提案する 化学プラントの内部状態を推定する 適...

 

それぞれ、何らかの数値モデルを構築することになります。データ解析・機械学習を駆使してモデルを構築するとき、データが必要となるため、データベースを作成することになります。モデル構築用のサンプルを集めるわけですね。サンプルを集めるときに意識するとよいことについて説明します。

データベースを作るときの基本的なスタンスは、なるべく多くのデータを集める、です。サンプルも、特徴量も、数多く集めるということです。エクセルのシートでいえば、縦の行も、横の列も多いほうがよいですね。サンプルが多いことがよいのはもちろんのこと、特徴量も多い方がよいのです。

たとえば、材料設計でしたら製品品質としての活性・物性・特性 Y と、実験レシピ、つまり実験条件や製造条件 X との間で数値モデル Y=f(X) を構築することになります。また、ソフトセンサーでしたら測定が困難なプロセス変数 Y と簡単に測定可能なプロセス変数 X との間で数値モデル Y=f(X) を構築します。このモデルを構築するとき、サンプルが多い方が、モデルの適用範囲の広いモデルを構築できます。

モデルの適用範囲・モデルの適用領域 (Applicability Domain, AD) ~回帰モデル・クラス分類モデルを使うとき必須となる概念~
今回は、モデルの適用範囲・モデルの適用領域 (Applicability Domain, AD) についてです。AD は回帰モデル・クラス分類モデルが本来の性能を発揮できるデータ領域のことです。回帰モデル・クラス分類モデルを使うとき必須にな...

 

より広い X の範囲で安定的に Y の値を予測できるわけですね。いろいろなサンプルにおいて Y の推定値を信頼できてうれしいです。そのため、データ収集をするとき、なるべく多くのサンプルがあったほうがよいです。まったく同じ目的、実験系でなく、すこし毛色の違ったサンプルがあるときには、それらも集めておけば、たとえば転移学習を検討することも可能です。

[解析結果とPythonコードあり] 転移学習 (Transfer Learning) を用いたデータ解析
転移学習 (Transfer Learning) について、パワーポイントの資料とその pdf ファイルを作成しました。どんなシチュエーションで転移学習が使えるのか、そして転移学習により本当にモデルの精度は向上するのか、数値シミュレーション...

 

背景が似ているようであれば、そのようなサンプルも集めておくとよいと思います。

モデル Y=f(X) は、X で Y を説明する必要がありますので、Y を説明するための情報量が X に含まれていないと、そもそもモデルを構築できません。そのため、X の特徴量も多いほうがよいです。もちろん、Y と関係のない特徴量が X にあると、モデルを作るときにはノイズになりますので、Y とぜったい関係ないことがわかっていれば、そのような特徴量は省いたほうがよいです。ただ、ノイズになることを恐れて特徴量を最初から減らすことで、モデルを構築するための情報が失われる可能性があるよりは、ノイズになるかもしれませんが、必要な情報になる可能性があるということで、まずは多くの特徴量を準備しておいた方がよいです。

もちろん、最初のサンプルが少ないほど、特徴量は減らした方がよいのですが、Boruta のように Y と関係のない特徴量を削除してくれる手法もあります。

[解析結果付き] Boruta、ランダムフォレストの変数重要度に基づく変数選択手法
Boruta という、ランダムフォレスト (Random Forest, RF) の変数重要度に基づいた変数選択手法について、パワーポイントの資料とその pdf ファイルを作成しました。いろいろなデータセットを解析しましたが、モデルの推定性...

 

また特徴量が多いときには、特徴量が多いときとそれから減らしたときとの両方でモデルの検証ができます。yランダマイゼーションのような偶然の相関も検証できます。

y-randomizationで過学習(オーバーフィッティング), Chance Correlation(偶然の相関)の危険度を評価!
回帰モデル・クラス分類モデルの評価のなかで、yランダマイゼーション (y-randomization) についてです。y-scrambling と呼んだりもします。やることは簡単で、目的変数 y の値をサンプル間でシャッフルして、回帰モデル...
[Pythonコード付き] テストデータのMAEをトレーニングデータから推定する方法を開発したので紹介します [金子研論文]
回帰分析において、新しいサンプルを推定するときの誤差の絶対値の平均値を推定するための指標を開発しました。イメージとしては、テストデータとしてサンプルがたくさんあるときの、モデルの適用範囲 (Applicability Domain, AD)...

 

このような状況ですので、大事な特徴量はもちろんのこと、もしかしたら不要と考えられるような特徴量に関しても、とりあえず集めておいた方がよいと思います。

データベースに基づいて統計的にモデルを構築するということは、理論や人の頭の中では説明できないような現象がある、ということですので、そのような一見不要と考えられる特徴量の中にも、実際は Y に効いているものが見つかるかもしれません。

 

以上です。

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

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