トップページに戻る

材料計算科学・データ解析チュートリアルコース 2022年度

2022年度チュートリアルコースは終了いたしました。

チュートリアル資料の更新は、下記の4/2 14:04更新と録画公開で終了しました。
配布プログラムの更新は、Topページにて行います。


チュートリアル資料 再構成版: チュートリアルの資料をテーマごとにまとめなおしました。
ファイル名が日本語になっています。ダウンロードができない場合、tkamiya@msl.titech.ac.jp までご連絡ください。 


材料計算科学・データ解析チュートリアルコース 2022年度

  文部科学省 「データ創出・活用型マテリアル研究開発プロジェクト」 半導体拠点 D2MatE では、
材料計算科学・データ解析に関するチュートリアルコースを開催いたします。
 
  今年度は3月までに以下の5回を予定しており、最初の3回は、実験、計算のデータ整理、条件探索に即戦力となる、
強化学習についての講義と実習を行います。
 
  4回目以降は、みなさまの希望に沿った内容で企画していきたいと考えています。ご希望を tkamiya@msl.titech.ac.jp あてに
ご連絡いただければ、参考にさせていただきます。
 
  ご興味のある方へもお声掛けいただき、ご参加いただきますよう、 お願いいたします。

【注】 第1回チュートリアルで実習を行う方は、本ページ最後のインストール方法に従い、Launcher.py, bayes_gp_gui.py, bayes_gp.plain.py が
   動かく環境を作ってください。インストール、動作確認に際して問題が起こった場合、
   tkamiya@msl.titech.ac.jp にご連絡いただければ、インストール方法等、個別に対応いたします。


開催方法: 
 Zoom
参加方法
:
 https://us06web.zoom.us/meeting/register/tZcud-2prT4jEtEEJYyhwOiognxuD15mZMhq  からお申し込みください
チュートリアル情報(講義資料含む): 
 本ページで情報を公開・更新いたします
実習に利用するプログラム:
 第1回で使用するプログラムは、本ページトップの更新情報をご覧ください。
 第1回の実習を希望される方は、本ページの最後にあるインストール・動作確認方法に沿って、bayse_gp_gui/plain.pyが動く環境を作ってください。
 
第1回 1/17 16:00-17:00
 「PHYSBOを利用した強化学習プログラムの使い方」
 D2MatE拠点で開発しているpythonプログラムを用いた実習とともに、
ガウス過程によるベイズ最適化を実験・計算の条件探索に利用する方法を説明いたします。

第2回 1/31 10:00-11:00
 「線形最小二乗法、回帰、最適化の基礎」
  材料研究者にとって機械学習が役に立つ一つの機能は「回帰」、つまりフィッティングによる予測と最適化にあります。
機械学習における回帰を理解するため、第2回は、材料研究者が普段使っている「最小二乗法」「最適化」について学び、
第3回のガウス過程とベイズ最適化の基礎を作ります。

第3回 2/17 10:00-11:00
 「Ridge回帰、機械学習」
  第1回で実習を行った、ガウス過程を利用したベイズ最適化の考え方と理論的基礎について説明いたします。

第4回 3/6 10:00-11:00
 「ガウス過程とベイズ最適化、非線形最適化・最小二乗法」 

第5回 3/22 10:00-11:00
  「非線形最小二乗法、スペクトル解析」


2023年度チュートリアル希望:

2022年度、以下の希望が出ましたが、分子動力学法、第一原理計算等は、新入生が入ってきて一段落した4月中旬から始める2023年度チュートリアルコースに回そうと思います。

更新情報:


動作環境確認

 皆様からのご報告のおかげで、動作不良の起こる環境を解決できております。引き続き、不具合等のご報告、お願いいたします。


Launcher.py, bayes_gp_gui.py, bayes_gp.plain.py のインストール方法と動作確認

pythonには様々な配布形式のパッケージがありますが、ここでは anaconda (python3x) を前提とします(最新版で動作確認をしています)。

注:

Step 1: Anacondaのインストール

Step 3: pythonライブラリィ/モジュールのインストール

注: 以下のライブラリィはanacondaに標準で含まれているので、標準環境で使う場合は、インストールする必要はありません。
  anaconda以外のpythonを使う場合や、Step 4の注にあるように仮想環境で実行する場合、モジュールエラーが出た場合にインストールしてください
  1. matplotlibをインストールします
      > conda install matplotlib
      
  2. pandasをインストールします
      > conda install pandas
     
  3. openpyxlをインストールします
      > conda install openpyxl
     
  4. chardetをインストールします
      > conda install chardet
  5. seabornをインストールします
      > conda install seaborn
      

anaconda以外のpythonの場合、numpy, scipy などのインストールが必要な場合があります

 

Step 4': PHYSBOに必要な仮想環境の作成

注: まず、以下の Step 4 を試してください。
   ただし、Windows上では、PHYSBOは python 3.6でないと動かない可能性があります。
   Step 4 の手順でエラーが出る場合、次の手順で python3.6の仮想環境を作ってください

  1. python3.6の環境を作成します
     > conda create -n py36 python=3.6
     
  2. py36 を有効化します
      > conda activate py36
     
  3. Step 3 のモジュールをインストるします
Step 4: PHYSBOのインストール
  1. pysboをインストールします
      > pip install physbo
     

以下のエラーが出たら、Microsoft C++ Build Toolsをインストールする必要があります。

..(cut)...  physbo\misc\_src\logsumexp.pyx tree = Parsing.p_module(s, pxd, full_module_name) error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/ 
  ---------------------------------------- 
  ERROR: Failed building wheel for physbo 
  Failed to build physbo 
  ERROR: Could not build wheels for physbo which use PEP 517 and cannot be installed directly

以下の対処法の参考URLはこちら: Microsoft Visual C++ 14.0 or greater is required.」が出た場合の対処方法 | ジコログ

 i )  ここ から vs_buildtools....exe をダウンロードし、インストール。この際、「C++によるデスクトップ開発」をチェックして、インストールしてください
 ii) インストールが終わったら、Windowsのスタートメニューから "Visual Studio XXXX" の "Developer Command Prompt for VS XXX" を起動し、
    > pip install physbo
  でインストールしてください (上記コマンドプロンプト以外でも、Build toolsへのPATHが通っている環境ならOK)。

Step 5: チュートリアルZIPファイルのダウンロード
  1. 本ページトップ 更新情報 からZIPファイルをダウンロードし、なるべく単純なパス (深くないパス、日本語やスペースを含まないのが望ましい <= 多分問題ないですが、トラブルが減ります) に展開する。
     以下、展開したルートディレクトリィを [tkProg] とします。

Step 5a: 動作確認: ランチャーアプリ Launcher.py

  1. コマンドプロンプトあるいは他のコンソール(Linuxでは temrinal など) を起動してください
    anacondaの場合、Windowsメニュー等で "Anaconda Prompt (Anaconda 3)” ができますので、これを選んでください。
     
  2. (必要な場合) phyboをインストールする際、python 3.6仮想環境が必要だった場合、仮想環境を変えてください
    > conda activate py36
     
  3. [tkProg]\Launcherに移動してください
    > cd [tkProg]\Launcher
     
    (D:ドライブに展開した場合は、
     > d:
    も必要です)
     
  4. > python Launcher.py
    と実行し、以下のアプリが起動するのを確認してください。
    一度、起動できることが確認できれば、次回からは Launcher.bat / Launcher.sh から起動して大丈夫です。
     


    エラーが出る場合、以下の環境変数を追加し、再度試してください。
    PYTHONPATH=[tkProg]\tklib\python

    Windows 8/10などで、Install-EnvironmentVariables-Windows.pptx で環境変数を追加した場合、Step 5a 1. からやり直してください。

     
  5. 左のリストボックスから "PHYSBO" を選び、画面下部 左上 の "GUI" ボタンを押し、以下のアプリ ([tkProg]\PYSBO\bayes_gp_gui.py (Step 5c)) が起動することを確認してください。
     

     
    起動しない場合、コマンドプロンプトやコンソール画面を確認してください。
    IMPORT ERRORが起こった場合、PHYSBOが正常にインストールされていないか、読み込み時にエラーが起こっています。
    Step 4'に従い、python 3.6環境を使ってください

     
  6. infile: の "open" ボタンを押し、[tkProg]\PHYSBO\data_simple.xlsxを選択し、"Analyze" ボタンを押してください。
    左のリストボックスから "PHYSBO" を選び、画面下部 左上 の "GUI" ボタンを押し、以下のアプリ ([tkProg]\PYSBO\bayes_gp_gui.py (Step 5c)) が起動することを確認してください。
     次のグラフが表示されれば、動作確認はOKです。
     



physboの古いバージョンがインストールされてしまう問題について

 pipを使ってphysbo等をインストールする際、proxyによって通信エラーが出て、古いphysbo (ver0.2.0など)がインストールされるケースが報告されています。
次のようなメッセージ
 bayes_gp_plain.pyのエラーメッセージ: 
  File "bayes_gp_plain.py", line 324, in execute
  policy = physbo.search.discrete.policy(test_X = X_all, initial_data = (idx_train, t_train))
  TypeError: __init__() got an unexpected keyword argument 'initial_data'
が出た場合、physboのバージョンが古い可能性が高いです。最新バージョンがインストールできない理由が
 pipのエラーメッセージ: 
  WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken 
  by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, '既存の接続はリモート ホストに強制的に切断されました。', None, 10054, None))': 
  /simple/setuptools/
の場合、下記のURLを参考にproxy設定をしてphysbo最新版をインストールしてみてください。
  https://weedy-seama.com/pip-proxy-error
 


参考: 2022/12/6に拠点内部・研究室向けにベイズ最適化のオンライン講義を行いました。

日時: 2022/12/6(火) 13:00~14:10
講義資料: 70-03-bayes_gp.pdf (2022/12/6 16:50更新)
       bayes_gp_plain.zip (2022/12/5 10:45更新)