作為一名coder,linux命令是基本生存技能,但linux的命令何其多,要想完全掌握可不易。。。在我平常的學習和工作中,linux伺服器主要是用來跑ml、dl**的(linux運維大神請略過…),因此本文將主要從跑**的角度**一下常用的linux操作。
// 告別手指抽筋的方向鍵
ctrl + e // 游標回到行末
ctrl + k // 刪除游標處到行尾的字元
ctrl + u // 刪除命令列的整段命令
ctrl + y // 恢復上一次刪除內容
// vim快捷鍵(命令列模式下使用)
gg: 將游標移動到文件開頭
g: 將游標移動到文件末尾
$: 將游標移動到本行尾
0: 將游標移動到本行行首
ndd: 刪除n行(如10
+dd)
pwd //顯示當前路徑
ls //顯示當前目錄的內容
ll //詳細顯示內容
du -sh *
//顯示當前資料夾下所有內容的大小
tar -xzvf //解壓命令
cp source destination //將目標賦值到目的地
mv source desination //將目標移動到目的地
mv file1 file2 //將file1重名為file2
rm //刪除檔案,慎用rm -f
rm -r //刪除資料夾
find .
-name "*.py"
| wc -l //檢視當前資料夾(包含子資料夾)下共有多少個py檔案
grep -o root a.txt | wc -l // 統計檔案a.txt中root這個詞出現的次數
chmod +x run.sh //更改shell指令碼的許可權
./run.sh //執行shell指令碼,也可用 sh run.sh
cat test.txt //檢視test.txt檔案
wc -l test.txt //顯示test.txt檔案有多少行
由於實驗室的網路有時候不穩定,會導致跑了好幾個小時的**在快要出結果的時候斷網了,導致與伺服器的連線中斷,從而**也就停止執行了,這點著實讓人很苦惱。同時,如果在跑**的時候還想進行其它linux操作,也可以考慮把**放到伺服器後台執行。這裡主要有兩種方法實現**的後台執行。
第一種
nohup python model.py >log.txt 2
>&1
&//將**後台掛起執行,並將結果輸出到log.txt中,2
>
&1表示若有錯誤也將一同輸出到log.txt中
第二種如果我想實時的觀察到**的執行狀態,並不想最終執行完以後才能在日誌檔案中看。這時可以用screen這個命令。
可以簡單的認為用這個命令你可以為不同的任務開不同的視窗,這個視窗之間是可以切換的,同時,視窗和你的會話連線基本上沒有任何區別,這樣你可以在開乙個連線的時候同時幹多件事情,並且在終端看得到執行過程的同時而不會由於斷網而導致**停止執行。常用命令如下:
screen -s train_cnn //建立乙個新視窗並命名為train_cnn
當你執行完上述命令後,就會自動跳入名為train_cnn的視窗中,在這個視窗裡你可以開始跑**。
然後通過快捷鍵ctrl + a + d斷開這個視窗的連線而回到會話介面,注意這裡只是斷開了視窗並未終止任務的執行。
可以通過上述命令開啟多個視窗。可通過以下命令檢視所有的視窗,並連線到其中乙個視窗
screen -ls //顯示所有視窗
screen -r train_cnn //返回到train_cnn視窗下
如果要斷開某個視窗,可直接使用快捷鍵 ctrl + d 退出即可。
總結一下,screen可以實現**在後台執行時的視覺化,同時,能在開乙個會話連線時建立多個視窗處理不同的任務。用起來也很方便。
在伺服器上jupyter notebook也是經常需要使用到的。伺服器下配置jupyter(已安裝anaconda)可以參考這篇文章。
深度學習中常用的代價函式
1.二次代價函式 quadratic cost 其中,c表示代價函式,x表示樣本,y表示實際值,a表示輸出值,n表示樣本的總數。為簡單起見,使用乙個樣 本為例進行說明,此時二次代價函式為 假如我們使用梯度下降法 gradient descent 來調整權值引數的大小,權值w和偏置b的梯度推導如下 其...
深度學習中常用的啟用函式
我們知道深度學習的理論基礎是神經網路,在單層神經網路中 感知機 輸入和輸出計算關係如下圖所示 可見,輸入與輸出是乙個線性關係,對於增加了多個神經元之後,計算公式也是類似,如下圖 這樣的模型就只能處理一些簡單的線性資料,而對於非線性資料則很難有效地處理 也可通過組合多個不同線性表示,但這樣更加複雜和不...
機器學習中常用距離的小結
設有兩個n維向量a x11,x12,x1n 和b x21,x22,x2n 1 曼哈頓距離 曼哈頓距離也稱為城市街區距離,數學表示式為 2 歐氏距離 歐氏距離就是我們熟悉的l2範數,數學表示式為 3 閔可夫斯基距離 閔可夫斯基距離可以看作歐氏距離的一種推廣,數學表示式為 可以看到,當p值取1時,閔可夫...