論文《Learning Properties of Ordered and Disordered Materials from Multi-fidelity Data》中的程式碼實現

卡卡发發表於2024-10-08

github地址:https://github.com/materialsvirtuallab/megnet/tree/master/multifidelity#issues


介紹:當前的儲存庫利用了由同一作者開發的現有MEGNET軟體包,並將MEGNET功能擴充套件到多保真資料集的建模。該儲存庫將共享公開發布的多保真帶隙資料,並展示了執行多保真資料集的模型擬合的示例。



需要的包或庫:

pymatgen>=2020.7.18
pandas>=1.0.5
tensorflow-gpu>=2.0.0
numpy>=1.19.1
monty>=3.0.4
megnet>=1.1.8 




:conda的建立的虛擬環境 和 venv建立的虛擬環境 有什麼區別?

包管理工具‌:

  • Conda本身是一個包管理工具,能建立和管理虛擬環境。
  • venv建立的虛擬環境使用Python的標準包管理系統pip。

‌Python直譯器‌:

  • Conda隨環境下載和安裝指定版本的Python直譯器
  • venv複製現有的Python直譯器

‌平臺無關性‌:

  • Conda是跨平臺的包管理系統。
  • venv是Python的標準庫模組,平臺無關。

‌生態系統‌:

  • Conda適用於跨平臺、語言和複雜依賴關係的管理。
  • venv通常更輕量級,適用於純Python專案。

因為本linux系統中已經存在了python3.11的直譯器,但是該專案需要用到python3.7.9,因此使用Conda建立虛擬環境可以再虛擬環境中指定python版本,並且conda可以管理複雜依賴關係,因此這裡使用conda更加合適。



一、配置環境


1.確保已安裝 Anaconda 或 Miniconda

2.建立虛擬環境

使用 conda create 命令來建立一個新的虛擬環境,並指定 Python 版本為 3.7.9 給環境命名為 myenv

conda create --name myenv python=3.7.9

3.啟用虛擬環境

建立完環境後,啟用它:

conda activate myenv

4.檢查當前的 Python 和 pip 路徑,以確認它們指向虛擬環境
(myenv) ubuntu@ubuntu-System-Product-Name:~/zdn$ which python
/home/ubuntu/anaconda3/envs/myenv/bin/python
(myenv) ubuntu@ubuntu-System-Product-Name:~/zdn$ which pip
/home/ubuntu/.local/bin/pip

結果可見: pip 指向的是 /home/ubuntu/.local/bin/pip,而不是虛擬環境中的 pip。這表明 pip 可能沒有正確安裝到虛擬環境中
解決:
重新安裝pip conda install pip 如果已經安裝,可以使用以下命令來強制重新安裝 conda install --force-reinstall pip
接著檢查pip路徑 which pip還是不行,
/home/ubuntu/.local/bin/pip 是舊版本的 pip,可以嘗試刪除它,確保不會影響到虛擬環境的使用。使用以下命令刪除 rm -f /home/ubuntu/.local/bin/pip
然後再重複上述步驟(安裝或重新安裝 pip)以確保在虛擬環境中擁有一個乾淨的 pip 安裝

還可以嘗試直接透過 Python 模組執行 pip,以確保使用的是虛擬環境中的 pip python -m pip --version

5.安裝依賴

pip install -r requirements-gpu.txt

注意:在 conda 虛擬環境中,使用 pip 來安裝依賴

結果網路不可達,因此使用國內的映象網站下載:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements-gpu.txt
結果提示:

 The "tensorflow-gpu" package has been removed!
      
      Please install "tensorflow" instead.
      
      Other than the name, the two packages have been identical
      since TensorFlow 2.1, or roughly since Sep 2019. For more
      information, see: pypi.org/project/tensorflow-gpu

修改requirements-gpu.txt檔案內容:把tensorflow-gpu改成tensorflow:

pymatgen>=2020.7.18
pandas>=1.0.5
tensorflow>=2.0.0
numpy>=1.19.1
monty>=3.0.4
megnet>=1.1.8 

再重新執行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements-gpu.txt即可

5.驗證安裝

驗證 Python 版本和已安裝的庫是否正確:

python --version 應該顯示 Python 3.7.9

pip list 檢視已安裝的庫

  • 如果要退出虛擬環境,可以使用以下命令:

conda deactivate

  • 如果要刪除虛擬環境,可以使用以下命令:

conda remove --name myenv --all




二、資料集欄位解釋


論文中使用的完整資料在data_no_structs.json.gz中























相關文章