為什么說(shuō)Jupyter Notebook是用Python做機(jī)器學(xué)習(xí)最好用的IDE

前兩天我們?yōu)榇蠹铱偨Y(jié)了一下AI在2018年的發(fā)展以及對(duì)2019年AI應(yīng)用的展望跨晴,今天我們便將回歸到技術(shù)博客的本質(zhì)馍忽,為大家講講為什么我對(duì)Jupyter Notebook如此推崇夜只,以及為什么Jupyter Notebook與機(jī)器學(xué)習(xí)/數(shù)據(jù)分析是完美的搭配組合九榔。

在講為什么之前芳室,先來(lái)介紹一下什么是Jupyter Notebook(以下簡(jiǎn)稱Jupyter)板丽。簡(jiǎn)單來(lái)說(shuō)呈枉,它是一種模塊化的Python編輯器(現(xiàn)在也支持R等多種語(yǔ)言)趁尼,即在Jupyter中,你可以把大段的Python代碼碎片化處理猖辫,分開(kāi)每一段來(lái)運(yùn)行酥泞。在軟件開(kāi)發(fā)中,Jupyter可能顯得并沒(méi)有那么好用啃憎,這個(gè)模塊化的功能反而會(huì)破壞掉程序的整體性芝囤;但是當(dāng)你在做數(shù)據(jù)處理、分析辛萍、建模悯姊、觀察結(jié)果等的時(shí)候,Jupyter模塊化的功能不僅會(huì)為你提供更好地視覺(jué)體驗(yàn)贩毕,更能大大縮小運(yùn)行代碼及調(diào)試代碼的時(shí)間悯许,同時(shí)還會(huì)讓你整個(gè)處理和建模的過(guò)程變得異常清晰,接下來(lái)我將為大家一一詳細(xì)講述Jupyter的這些優(yōu)點(diǎn)辉阶。

Jupyter Notebook將Python的交互式特點(diǎn)發(fā)揮到了極致

熟悉Python的同學(xué)一定對(duì)Python的交互式功能感觸頗深先壕。當(dāng)工作后有一次和一個(gè)做嵌入式好友聊起Python時(shí),同學(xué)表示他被Python的易讀性和交互性所震驚了谆甜。做嵌入式用的C和C++每次都要經(jīng)過(guò)編譯垃僚,而且每一行的代碼沒(méi)有辦法單獨(dú)運(yùn)行。與之不同的是规辱,Python的每一行都像是人類交流所用的文字一樣谆棺,簡(jiǎn)單易懂且有交互性,所謂交互性罕袋,就是有問(wèn)有答包券,你輸入一句,它便返回一句的結(jié)果炫贤。但在一般的IDE中(如PyCharm),Python的這一交互功能被極大地限制付秕,通常我們會(huì)將程序整段編寫之后一起運(yùn)行兰珍。而在Jupyter當(dāng)中,我們可以每寫幾行或者每完成一個(gè)小的模塊便運(yùn)行一次询吴。也許對(duì)于軟件工程師們來(lái)說(shuō)掠河,這個(gè)功能并沒(méi)有多大的吸引力;但是對(duì)身為機(jī)器學(xué)習(xí)工程師的我們來(lái)說(shuō)猛计,這個(gè)功能可以說(shuō)是我們的大救星唠摹。

熟悉機(jī)器學(xué)習(xí)和數(shù)據(jù)分析的朋友一定知道,分析和建模是非常碎片化的工作奉瘤,而每一塊的碎片又有著非常強(qiáng)的獨(dú)立性勾拉,甚至可以說(shuō)除了數(shù)據(jù)本身之外煮甥,每一塊的代碼之間并沒(méi)有很強(qiáng)的關(guān)聯(lián)性篮赢。數(shù)據(jù)分析和處理的過(guò)程往往是一個(gè)不斷試驗(yàn)的過(guò)程沛豌,我們需要一次又一次的改變預(yù)處理的方式草慧、嘗試不同的特征工程處理唆樊、一遍又一遍的調(diào)整著模型參數(shù)等等等等芭梯。每一部分的工作都需要反復(fù)試驗(yàn)反復(fù)修改瓤帚,而下一模塊需要用到的只不過(guò)是上一模塊輸出的數(shù)據(jù)臭猜。通過(guò)Jupyter挪钓,我們可以最快的得知自己做出的調(diào)整是好還是壞批销,并盡快進(jìn)入到下一次的試驗(yàn)當(dāng)中洒闸。

以下是Jupyter Notebook與其他IDE輸出結(jié)果的對(duì)比:

PyCharm
Jupyter Notebook

說(shuō)到Jupyter Notebook,就不得不提到Anaconda均芽。Anaconda是一款便捷的環(huán)境管理工具丘逸,利用Anaconda可以輕松創(chuàng)建虛擬環(huán)境,快速下載安裝Python中的各種函數(shù)庫(kù)骡技。Anaconda中集成了1400數(shù)據(jù)科學(xué)/機(jī)器學(xué)習(xí)的函數(shù)庫(kù)鸣个,目前這些庫(kù)適配于Python 3.6,Python 3.7布朦,以及Python 2.7三個(gè)版本囤萤。Anaconda讓機(jī)器學(xué)習(xí)在Jupyter中更容易實(shí)現(xiàn),也更容易去觀測(cè)是趴。

以下是部分Anaconda中的函數(shù)庫(kù):

Jupyter Notebook更利于匯報(bào)和教學(xué)

Jupyter在工作匯報(bào)和教學(xué)方面也是非常的優(yōu)秀涛舍。由于Jupyter本身的模塊化和內(nèi)容的清晰化,使得其天生具有如PPT一般的展示工作成果的功能唆途。


如上圖所示富雅,由于Jupyter中可以將輸出結(jié)果嵌套在Notebook中肛搬,并且支持Markdown語(yǔ)句的操作蛤奢,這樣使得你可以在Jupyter中輸入任何你需要展示的內(nèi)容,并且這些內(nèi)容都會(huì)以一種有組織有層次的樣子排列出來(lái)陶贼。

而當(dāng)Jupyter被應(yīng)用于教學(xué)時(shí)拜秧,老師可以利用這個(gè)特點(diǎn)設(shè)置相應(yīng)的題目以及部分的講解內(nèi)容志衍,而學(xué)生則負(fù)責(zé)填滿老師所留的空白足画,以達(dá)到老師作業(yè)的要求医舆。目前Jupyter已經(jīng)被各大慕課(MOOC)平臺(tái)廣泛應(yīng)用蔬将。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末莉给,一起剝皮案震驚了整個(gè)濱河市徐矩,隨后出現(xiàn)的幾起案子滤灯,更是在濱河造成了極大的恐慌,老刑警劉巖豫尽,帶你破解...
    沈念sama閱讀 216,919評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡震糖,警方通過(guò)查閱死者的電腦和手機(jī)论咏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門雅宾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)贯吓,“玉大人,你說(shuō)我怎么就攤上這事爬舰。” “怎么了屁商?”我有些...
    開(kāi)封第一講書人閱讀 163,316評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵官还,是天一觀的道長(zhǎng)望伦。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么末融? 我笑而不...
    開(kāi)封第一講書人閱讀 58,294評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮勾习,結(jié)果婚禮上浓瞪,老公的妹妹穿的比我還像新娘巧婶。我一直安慰自己,他們只是感情好粹舵,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,318評(píng)論 6 390
  • 文/花漫 我一把揭開(kāi)白布漾唉。 她就那樣靜靜地躺著场刑,像睡著了一般铐懊。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上瞎疼,一...
    開(kāi)封第一講書人閱讀 51,245評(píng)論 1 299
  • 那天科乎,我揣著相機(jī)與錄音,去河邊找鬼太抓。 笑死空闲,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的走敌。 我是一名探鬼主播进副,決...
    沈念sama閱讀 40,120評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了影斑?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 38,964評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤机打,失蹤者是張志新(化名)和其女友劉穎矫户,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體残邀,經(jīng)...
    沈念sama閱讀 45,376評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡皆辽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,592評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了芥挣。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片驱闷。...
    茶點(diǎn)故事閱讀 39,764評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖空免,靈堂內(nèi)的尸體忽然破棺而出空另,到底是詐尸還是另有隱情,我是刑警寧澤蹋砚,帶...
    沈念sama閱讀 35,460評(píng)論 5 344
  • 正文 年R本政府宣布扼菠,位于F島的核電站,受9級(jí)特大地震影響坝咐,放射性物質(zhì)發(fā)生泄漏循榆。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,070評(píng)論 3 327
  • 文/蒙蒙 一墨坚、第九天 我趴在偏房一處隱蔽的房頂上張望秧饮。 院中可真熱鬧,春花似錦泽篮、人聲如沸盗尸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,697評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)振劳。三九已至,卻和暖如春油狂,著一層夾襖步出監(jiān)牢的瞬間历恐,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,846評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工专筷, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留弱贼,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,819評(píng)論 2 370
  • 正文 我出身青樓磷蛹,卻偏偏與公主長(zhǎng)得像吮旅,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,665評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容