sacred庫安裝和使用說明
介紹Sacred+Ominiboard方案
主要參考SHEN’s BLOG
Sacred的工具,用於記錄實驗的配置、組織、日誌和復現
使用mongoDB管理後端數據,利用omniboard實現前端可視化:
- Sacred + MongoDB:實驗記錄和保存
- Ominiboard:可視化管理
各部分庫都安裝最新的版本,具體如下:
MongoDB 4.2.7
omniboard 2.12.1
npm v12.18.0
sacred 0.8.0
Sacred的安裝
# 主角
pip install sacred
# 用於數據庫連接
pip install numpy pymongo
MongoDB安裝
在ubuntu上的MongoDB安裝可以參考Install MongoDB Community Edition on Ubuntu,
1.Import the public key used by the package management system.
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
# The operation should respond with an OK.
sudo apt-get install gnupg
# Once installed, retry importing the key:
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
2.Create a list file for MongoDB
Create the list file /etc/apt/sources.list.d/mongodb-org-4.2.list
for your version of Ubuntu.
The following instruction is for Ubuntu 18.04 (Bionic). For Ubuntu 16.04 (Xenial), click on the appropriate tab.
Create the /etc/apt/sources.list.d/mongodb-org-4.2.list
file for Ubuntu 18.04 (Bionic):
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
3.Reload local package database
sudo apt-get update
4.Install the MongoDB packages.
You can install either the latest stable version of MongoDB or a specific version of MongoDB.
sudo apt-get install -y mongodb-org
# Optional. Although you can specify any available version of MongoDB, apt-get will upgrade the packages when a newer version becomes available. To prevent unintended upgrades, you can pin the package at the currently installed version:
echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections
MongoDB的日常使用:
# 啓動
sudo service mongod start
# 停止
sudo service mongod stop
# 重啓
sudo service mongod restart
# 進入MongoDB
mongo
x創建一個名爲sacred的數據庫,用作sacred工具的後端存儲:
# 進入MongoDB
mongo
# 創建sacred數據庫。use命令切換數據庫,沒有該數據就會自動創建一個
use sacred
這裏的數據庫名稱,與代碼中
sacred.observers import MongoObserver
ex.observers.append(MongoObserver(url="localhost:27017", db_name=""))
設置的db_name應該一致,同時,url設置決定Mongo的訪問端口。
omniboard安裝
這裏採用npm
方式進行安裝
Note: Omniboard requires Node.js v8 or higher installed in your system.
Step1:安裝Node.js,從官網下載相應版本
# 1. 解壓到 /usr/local/lib/nodejs, 注意VERSION是版本號,此處是v12.18.0
VERSION=v12.18.0
DISTRO=linux-x64
sudo mkdir /usr/local/lib/nodejs
sudo tar -xJvf node-$VERSION-$DISTRO.tar.xz -C /usr/local/lib/nodejs
sudo mv /usr/local/lib/nodejs/node-$VERSION-$DISTRO /usr/local/lib/nodejs/node-$VERSION
# 2. 設置環境變量,打開 ~/.profile, 追加如下信息
# Nodejs
export NODEJS_HOME=/usr/local/lib/nodejs/node-$VERSION/bin
export PATH=$NODEJS_HOME:$PATH
# 3. 刷新
. ~/.profile
# 4. 測試安裝版本信息
node -v
npm version
npx -v
# 創建sudo鏈接
sudo ln -s /usr/local/lib/nodejs/node-$VERSION/bin/node /usr/bin/node
sudo ln -s /usr/local/lib/nodejs/node-$VERSION/bin/npm /usr/bin/npm
sudo ln -s /usr/local/lib/nodejs/node-$VERSION/bin/npx /usr/bin/npx
Step2: npm 安裝omniboard
npm install -g omniboard
Step3:開啓omniboard服務。平時也是用該命令開啓omniboard可視化前端
# 開啓用法
omniboard -m hostname:port:database
# 默認情況下如下,其中27017是MongoDB的端口
omniboard -m localhost:27017:sacred
第四步,打開 http://localhost:9000 來查看前端,並進行管理。
問題:omniboard未找到命令
解決辦法:
npm使用最新版本。
重新執行
npm install -g omniboard
Demo測試
在SHEN’s BLOG中有使用yunjey的一個pytorch教程作爲演示,代碼是演示用pytorch實現基於CNN的MINIST手寫數字識別。
更多用法請去看Sacred 文檔:Welcome to Sacred’s documentation!。內容超豐富,功能超級多。