/python_chem_chem_eng

Python で気軽に化学・化学工学

Primary LanguageJupyter NotebookMIT LicenseMIT

Python で気軽に化学・化学工学

書籍「Pythonで気軽に化学・化学工学」(金子弘昌 著) のサンプルプログラム・サンプルデータセットです。
内容: https://datachemeng.com/post-4203/

本書のURL
丸善: https://www.maruzen-publishing.co.jp/item/?book_no=304108
Amazon: https://www.amazon.co.jp/dp/4621306154

サンプルプログラム・サンプルデータセットの使い方は本書に記載されています。本を読んでデータ解析・機械学習の学習をしながら、サンプルプログラムによりデータ解析・機械学習の実行結果を確認できます。さらに、サンプルプログラムにより本の中で説明されている材料設計・分子設計・ソフトセンサー解析の実行もできます。ぜひご利用ください。

目次
1 必要なソフトウェアをインストールして,Jupyter NotebookやPythonに慣れる
1.1 Anaconda のインストール
1.2 Jupyter Notebook の使い方
1.3 Jupyter Notebook の起動
1.4 セルおよびセルのタイプとモード
1.5 セルの実行
1.6 おもな操作方法
1.7 キーボードショートカット
1.8 Jupyter Notebook の終了

2 Pythonプログラミングの基礎を学ぶ
2.1 数値や文字などの扱い
2.2 数値や文字の集合の扱い
2.3 組み込み関数による効率的な処理

3 データセットの読み込み・確認・変換・保存ができるようになる
3.1 データセットの読み込み
3.2 データセットの中身の確認
3.3 データセットの保存

4 データセットの特徴を把握する
4.1 行列形式によるデータセットの表現
4.2 ヒストグラムによるデータの分布の確認
4.3 おもな基礎統計量を計算することによる特徴量間の比較
4.4 散布図による特徴量間の関係の確認
4.5 相関係数による特徴量間の関係の強さの確認

5 データセットを前処理して扱いやすくする
5.1 特徴量のスケールの統一化
5.1.1 データセットの行列・ベクトルによる表現
5.1.2 特徴量の標準化
5.2 ばらつきの小さい特徴量の削除
5.3 類似した特徴量の組における一方の特徴量の削除

6 データセットの見える化(可視化)をする
6.1 主成分分析
6.2 t-distributed Stochastic Neighbor Embedding (t-SNE)

7 データセットを類似するサンプルごとにグループ化する
7.1 クラスタリング
7.2 階層的クラスタリングの基礎
7.3 階層的クラスタリングの実行
7.4 化学・化学工学での応用

8 モデルy=f(x)を構築して,新たなサンプルのyを推定する
8.1 クラス分類(クラス分類とクラスタリングとの違い,教師あり学習と教師なし学習)
8.2 k-NN によるクラス分類とクラス分類モデルの推定性能の評価
8.2.1 k-NN によるクラス分類
8.2.2 クラス分類モデルの推定性能の評価
8.2.3 k-NN によるクラス分類の実行
8.3 回帰分析
8.4 k-NN や最小二乗法による回帰分析と回帰モデルの推定性能の評価
8.4.1 k-NN を使った回帰分析
8.4.2 OLS 法を使った回帰分析
8.4.3 回帰モデルの推定性能の評価
8.4.4 k-NN,OLS 法による回帰分析の実行
8.5 モデルの推定性能を低下させる要因とその解決手法(PLS)
8.5.1 オーバーフィッティング
8.5.2 多 重 共 線 性
8.5.3 PLS 法の基礎
8.5.4 PLS 法による回帰分析の実行
8.6 さまざまな解析の自動化・効率化
8.6.1 CV に基づくハイパーパラメータの決定方法
8.6.2 外部バリデーションと内部バリデーション
8.6.3 for 文によるハイパーパラメータの決定
8.6.4 if 文による複数の手法を用いたデータ解析
8.7 非線形の回帰分析手法やクラス分類手法
8.7.1 サポートベクターマシン
8.7.2 サポートベクター回帰
8.7.3 決定木
8.7.4 ランダムフォレスト
8.8 ダブルクロスバリデーション
8.9 化学・化学工学での応用

9 モデルの推定結果の信頼性を議論する
9.1 目的変数の推定に用いる最終的なモデル
9.2 モデルの適用範囲
9.2.1 範囲
9.2.2 平均からの距離
9.2.3 データ密度
9.2.4 アンサンブル学習法
9.2.5 ADの設定
9.3 One-Class Support Vector Machine (OCSVM)

10 モデルを用いてyからxを推定する
10.1 仮想サンプルの生成
10.2 仮想サンプルの予測および候補の選択

11 目標達成に向けて実験条件・製造条件を提案する
11.1 実験計画法
11.2 応答曲面法
11.3 適応的実験計画法

12 化学構造を扱う
12.1 RDKit のインストール
12.2 化学構造の表現方法
12.2.1 SMILES
12.2.2 Molfile
12.3 化合物群の扱い
12.4 化学構造の数値化
12.5 化学構造のデータセットを扱うときの注意点およびデータセットの前処理

おわりに
参考資料
索引