日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

深度學(xué)習(xí)100問-3:深度學(xué)習(xí)應(yīng)掌握哪些Linux開發(fā)技術(shù)?

 LibraryPKU 2019-08-21

深度學(xué)習(xí)100問

Author:louwill

Machine Learning Lab

     先前筆者分享過有三AI的一篇觀點性文章:【觀點】深度學(xué)習(xí)從棄用windows開始。雖然這可能讓習(xí)慣于使用Windows的同學(xué)感到難受,但卻指出了一個不爭的事實:要想在深度學(xué)習(xí)上搞出點名堂,熟練Linux開發(fā)環(huán)境是基本前提。

     那作為一名深度學(xué)習(xí)算法工程師,我們的Linux應(yīng)掌握到什么程度呢?有必要像運維工程師那樣對Linux了如指掌?雖說有點夸張,但做深度學(xué)習(xí)開發(fā)Linux是越熟練越好。本節(jié)就簡單整理下深度學(xué)習(xí)算法工程師應(yīng)掌握的Linux基本技能點。

物理機or虛擬機?

     使用物理機還是虛擬機?這通常是大家面臨的第一個問題。其實這根本不是什么問題,如果你喜歡命令行環(huán)境和對簡潔的界面情有獨鐘,那么你大可以直接安裝Ubuntu系統(tǒng),直接使用Linux物理機。

     如果你已經(jīng)習(xí)慣于windows操作系統(tǒng),作為嘗試,你可以嘗試雙系統(tǒng),當(dāng)然雙系統(tǒng)可能會比較麻煩,這時候虛擬機會是一個比較好的選擇。常用的虛擬機工具包括VMware、VirtualBox、Putty和Xshell等。

     如果是入門階段而言,建議先使用虛擬機,后面熟悉之后可以嘗試遷移到Linux真機上。

Linux常用命令

     Linux命令無數(shù),但對于深度學(xué)習(xí)而言常用的不超過20個。主要包括:cd、ls、pwd、mkdir、touch、rm、mv、cp、find、grep、sed、awk、cat、more、less、tar、ps、chmod、wget、vim等。下面簡單就這些命令做個描述。

cd

cd命令應(yīng)該是最常用的了。cd用于目錄切換:

cd ./documents # 切換到當(dāng)前目錄下的documents目錄cd ../examples # 切換到上一層目錄下的examples目錄

ls

ls的使用頻率大概僅次于cd了。ls命令用于查看當(dāng)前目錄下的文件和目錄。ls命令參數(shù)眾多,但常用的不多,根據(jù)需要重點記住一兩個即可,比如 -l、-a等等。

-l :列出項目明細(xì),包含文件的屬性與權(quán)限數(shù)據(jù)等

-a :列出全部的文件,包括隱藏文件(開頭為.的文件)

-d :僅列出目錄本身

pwd

pwd用于查看當(dāng)前路徑。這個不多說。

mkdir

用于新建目錄。

mkdir data # 新建data目錄

touch

touch命令實際上用的并不多,其主要功能用于修改文件的時間戳或者新建一個不存在的文件。

touch ceshi.log # 創(chuàng)建一個ceshi.log文件

rm

rm是linux系統(tǒng)下的刪除命令。該命令也有多個參數(shù):

-d:刪除目錄

-f:強制刪除目錄或文件(慎用)

-i:刪除之前先詢問用戶

-r:刪除目錄和目錄下的子目錄及文件

mv

mv即move,表示移動目錄或文件,也可以用于目錄和文件重命名。

mv 待處理的路徑文件或目錄名 目標(biāo)路徑文件或目錄名

cp

cp即copy,表示復(fù)制文件,用法與mv類似。詳細(xì)參數(shù)可進一步查找資料。

find

find命令用于linux系統(tǒng)文件查找,比如說想查一下train.py文件在哪個文件夾下,使用如下命令即可:

find / -name train.py

grep/sed/awk

這三個命令號稱linux文本處理三劍客,所以放在一起介紹。在Linux中經(jīng)常需要對文本內(nèi)容進行查找、編輯和分析,有時候簡單的任務(wù)用腳本來處理過于麻煩,Linux為我們提供了簡潔的命令工具。

grep命令主要用于文本內(nèi)容的查找。在正則表達(dá)式的加持下功能變得非常強大,其用于如下:

grep [option] pattern filename

比如說我們要在train.py文件中查找包含data的行:

grep 'datatrain.py

sed命令用于文本內(nèi)容的編輯。比如說我們要在train.py文件中最后一行追加一行代碼:

sed '$a print('done!')' train.py

而awk主要用于文本內(nèi)容的分析。比如說我們要對處理的數(shù)據(jù)以報告形式呈現(xiàn)或者是按列進行處理,這時候awk的作用就體現(xiàn)出來了。具體可進一步查找資料和用法。總之這三個命令異常強大,和其他命令配合熟練使用往往能事半功倍。

cat/more/less

這三個命令均用于查看文件內(nèi)容。cat表示查看全部文件內(nèi)容,但如果有時候文件較大的時候使用cat命令會比較不好看,而more和less命令則可以支持翻頁查看的功能,其中l(wèi)ess比more還要強大一點,可以支持翻頁、跳轉(zhuǎn)和查找等功能。

tar

tar表示對文件進行打包。

ps

ps即為process,表示查看當(dāng)前進程。比如說我們要查看當(dāng)前用戶的所有進程:

ps -u 用戶名

chmod

chmod用于更改文件權(quán)限。

wget

wget是一個文件下載工具,用于下載網(wǎng)絡(luò)上的各種資源和軟件。比如說我們要下載anaconda到本地:

wget https://repo.anaconda.com/archive/Anaconda3-2019.07-Linux-x86_64.sh

vim

vim是linux下最強大的編輯器,具體可參考文末給出的參考學(xué)習(xí)資料。

Shell腳本

     Shell是用戶使用linux的橋梁,Shell既是一種命令語言,也是一種程序設(shè)計語言。Shell是指一種應(yīng)用程序,這個應(yīng)用程序提供了一個界面,用戶通過這個界面訪問操作系統(tǒng)內(nèi)核的服務(wù)。而Shell腳本指的是為Shell編寫的腳本程序。

     在日常的開發(fā)工作中,我們可以把Shell腳本當(dāng)作一種粘合劑,用來粘合各種開發(fā)語言。新建一個test.sh文件:

#!/bin/bashecho 'Hello World !'

運行test.sh:

chmod +x ./test.sh #使腳本具有執(zhí)行權(quán)限./test.sh #執(zhí)行腳本

     Shell作為一種腳本語言,也有變量、函數(shù)、輸入輸出、程序控制等語法規(guī)則。具體Shell教程可參考w3cschool:

https://www./linux/linux-shell.html

vim編輯器

     作為世界上最強大文本編輯器,vim的學(xué)習(xí)曲線無比陡峭(筆者自己目前就徘徊在深入vim各種命令工具中)。首先要明確的是vim包括三種模式,搞不清楚這三種模式vim基本上學(xué)不下去的。三種模式的關(guān)系和切換如下:

     關(guān)于vim的具體使用可參考陳皓(左耳朵耗子)在酷殼網(wǎng)上的教程。簡明VIM練級攻略:https:///articles/5426.html

     vim四重境界,需要花費大量時間不斷反復(fù)的練習(xí)才能熟能生巧。

結(jié)語

     Linux作為一個系統(tǒng),功能龐大而又全面。要想很深入的掌握Linux,除了日常的積累之外,還需要更加系統(tǒng)的集中學(xué)習(xí)。這里推薦鳥叔的Linux私房菜:

http://cn.linux./linux_basic/linux_basic.php

     對于深度學(xué)習(xí)開發(fā)而言,掌握基礎(chǔ)的Linux技法是極為必要的。比如說如何在服務(wù)器上啟動遠(yuǎn)程jupyter?如何使用虛擬環(huán)境?等等。關(guān)于Linux筆者就簡單羅列到這里,具體還需要大家集中系統(tǒng)的進行學(xué)習(xí)。

     有學(xué)術(shù)和技術(shù)問題的同學(xué)可以加我微信進入機器學(xué)習(xí)實驗室讀者交流群。加微信后說明來意,最好做個簡單的自我介紹,讓我有個印象,加了一言不發(fā)不如不加。

參考資料:

http://cn.linux./linux_basic/linux_basic.php

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多