自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

劍橋計(jì)算機(jī)博士推薦,畢業(yè)之前,我需要掌握這九個(gè)工具

新聞 前端
來(lái)自劍橋大學(xué)的計(jì)算機(jī)科學(xué)博士生 Aliaksei Mikhailiuk 為我們整理了機(jī)器學(xué)習(xí)博士在獲得學(xué)位之前需要掌握的九種工具。

 [[436113]]

無(wú)論你在創(chuàng)業(yè)還是在做學(xué)術(shù)研究,這些工具都將使你的技能更上一層樓。

學(xué)術(shù)界在推進(jìn)技術(shù)方面發(fā)揮了巨大作用,但學(xué)術(shù)界和工業(yè)界往往存在一種分割狀態(tài)。我們經(jīng)常會(huì)看到這種現(xiàn)象:無(wú)數(shù)很棒的輔助工具在學(xué)術(shù)界被忽視,但在工業(yè)界很受歡迎。對(duì)于很多研究者來(lái)說(shuō),學(xué)習(xí)一種新工具可能存在困難,不愿意花費(fèi)過(guò)多的時(shí)間去嘗試,在當(dāng)前自己掌握的工具足以應(yīng)對(duì)各種問(wèn)題時(shí)尤其如此。

其實(shí),有些工具一時(shí)未見(jiàn)到效果,在后期可能會(huì)有十倍的回報(bào)。

來(lái)自劍橋大學(xué)的計(jì)算機(jī)科學(xué)博士生 Aliaksei Mikhailiuk 為我們整理了機(jī)器學(xué)習(xí)博士在獲得學(xué)位之前需要掌握的九種工具。他在劍橋大學(xué)獲得物理學(xué)碩士學(xué)位,在布里斯托大學(xué)獲得工程學(xué)士學(xué)位。他對(duì)研究、開發(fā)、部署感興趣,還能熟練掌握計(jì)算機(jī)視覺(jué)算法、聚合和自然語(yǔ)言處理等技術(shù)。現(xiàn)任職華為(英國(guó))高級(jí)人工智能工程師。

[[436114]]

個(gè)人主頁(yè):https://www.linkedin.com/in/aliakseimikhailiuk/

Mikhailiuk 將這些工具按用途分為四類:可隔離環(huán)境、實(shí)驗(yàn)跟蹤、相互協(xié)作以及可視化。

可隔離環(huán)境工具

機(jī)器學(xué)習(xí)是一個(gè)快速發(fā)展的領(lǐng)域,常用的包更新非常頻繁。盡管開發(fā)人員做出了努力,但較新的版本通常與舊版本不兼容,這樣給研究者帶來(lái)很多麻煩。幸運(yùn)的是,有工具可以解決這個(gè)問(wèn)題!在這一方面,Mikhailiuk 推薦了兩個(gè)工具:Docker 和 Conda。

Docker

Mikhailiuk 攻讀博士學(xué)位期間,他有一臺(tái)由大學(xué)管理的機(jī)器,學(xué)校會(huì)定期進(jìn)行更新。通常情況下是一夜之間更新,沒(méi)有任何通知。你可以想象,當(dāng)更新后的第二天早上發(fā)現(xiàn)自己大部分工作與最新的驅(qū)動(dòng)程序不兼容,是多么令人崩潰。Mikhailiuk 發(fā)現(xiàn) Docker 可以很好地解決。

Docker 允許將軟件包裝在稱為容器的包中。容器是具有自己的軟件、庫(kù)和配置文件的獨(dú)立單元。在一個(gè)簡(jiǎn)化的視圖中,容器是一個(gè)獨(dú)立的虛擬操作系統(tǒng),它具有與外部世界通信的手段。Docker 是一個(gè)開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個(gè)可移植的容器中,然后發(fā)布到任何流行的 Linux 或 Windows 操作系統(tǒng)的機(jī)器上,也可以實(shí)現(xiàn)虛擬化,容器是完全使用沙箱機(jī)制,相互之間不會(huì)有任何接口。

一個(gè)完整的 Docker 由以下幾個(gè)部分組成:

DockerClient 客戶端

Docker Daemon 守護(hù)進(jìn)程

Docker Image 鏡像

DockerContainer 容器

Docker 教程:https://aws.amazon.com/cn/blogs/opensource/why-use-docker-containers-for-machine-learning-development/

Conda

現(xiàn)在,復(fù)用別人的代碼成為了一種新的規(guī)范。GitHub 作為一個(gè)代碼托管云服務(wù)網(wǎng)站,幫助開發(fā)者存儲(chǔ)和管理其項(xiàng)目源代碼,且能夠追蹤、記錄并控制用戶對(duì)其代碼的修改。研究者可以克隆上面的代碼,安裝并提出自己的解決方案,而不需要自己寫任何東西。

但是 GitHub 也有不方便的情況,當(dāng)多個(gè)項(xiàng)目一起使用時(shí),你會(huì)遇到包管理問(wèn)題,因?yàn)椴煌捻?xiàng)目需要不同版本的包。

Conda 可以解決這個(gè)問(wèn)題 。Conda 是一個(gè)開源跨平臺(tái)語(yǔ)言無(wú)關(guān)的包管理與環(huán)境管理系統(tǒng),它允許創(chuàng)建多個(gè)環(huán)境并快速安裝、運(yùn)行和更新包及其依賴項(xiàng),用戶可以在隔離的環(huán)境之間快速切換。

Conda 教程:https://conda.io/projects/conda/en/latest/user-guide/getting-started.html#starting-conda

運(yùn)行、跟蹤和記錄實(shí)驗(yàn)工具

在應(yīng)用領(lǐng)域想要獲得博士學(xué)位,嚴(yán)謹(jǐn)性和一致性是兩個(gè)基本支柱。假如你是研究機(jī)器學(xué)習(xí)模型的,或多或少都能遇到這種情況——你創(chuàng)建了許多不同的模型來(lái)試驗(yàn)不同的參數(shù)甚至整個(gè)架構(gòu)。你還想嘗試優(yōu)化器的選擇、學(xué)習(xí)率、時(shí)期數(shù)等。因此,實(shí)際上,你將進(jìn)行許多不同的實(shí)驗(yàn),并且將越來(lái)越難以整理結(jié)果。在這一方面,Aliaksei Mikhailiuk 向我們展示了如何正確方便地管理和記錄自己的 ML 和 DL 實(shí)驗(yàn)工具,主要推薦了 Weights & Biases,MLFlow,Screen 工具。

Weights & Biases

wandb panel 一組簡(jiǎn)單指標(biāo) Snapshot——訓(xùn)練損失、學(xué)習(xí)率和平均驗(yàn)證損失。請(qǐng)注意,你還可以跟蹤系統(tǒng)參數(shù)。

W&B(Weights & Biases) 是一個(gè)平臺(tái),可以幫助數(shù)據(jù)科學(xué)家跟蹤他們的模型、數(shù)據(jù)集、系統(tǒng)信息等。只需幾行代碼,用戶就可以開始跟蹤有關(guān)這些功能的所有內(nèi)容。它免費(fèi)供個(gè)人使用,團(tuán)隊(duì)使用通常需要付費(fèi),但用于學(xué)術(shù)目的的團(tuán)隊(duì)是免費(fèi)的。你可以將 W&B 與自己喜歡的框架一起使用,例如 TensorFlow、Keras、PyTorch、SKlearn、fastai 等。

W&B 提供了以下 4 個(gè)有用的工具:

Dashboard:實(shí)驗(yàn)跟蹤;

Artifacts:數(shù)據(jù)集版本控制、模型版本控制;

Sweeps:超參數(shù)優(yōu)化;

Reports 保存和共享可重現(xiàn)的結(jié)果。

W&B 教程:https://docs.wandb.ai/quickstart

MLFlow

MLFlow 是一個(gè)能夠覆蓋機(jī)器學(xué)習(xí)全流程(從數(shù)據(jù)準(zhǔn)備到模型訓(xùn)練到最終部署)的新平臺(tái),它是一款管理機(jī)器學(xué)習(xí)工作流程的工具,主要有三個(gè)功能模塊:Tracking 跟蹤和記錄、Project 項(xiàng)目管理和 Models 模型管理。MLflow 支持 Java、Python、R 和 REST API 等。

MLFlow 具有以下主要組件:

跟蹤:用于跟蹤試驗(yàn),以記錄和比較參數(shù)與結(jié)果;

模型:用于通過(guò)各種 ML 庫(kù)管理模型,并將其部署到各種模型服務(wù)和推理平臺(tái);

項(xiàng)目:用于將 ML 代碼打包成可重用、可再現(xiàn)的格式,以便與其他數(shù)據(jù)科學(xué)家共享或轉(zhuǎn)移到生產(chǎn)環(huán)境;

模型注冊(cè)表:使你可以將模型存儲(chǔ)集中化,以便使用版本控制和批注功能來(lái)管理模型的完整生命周期階段轉(zhuǎn)換;

模型服務(wù):可用于將 MLflow 模型以 REST 終結(jié)點(diǎn)的形式托管。

MLFlow 教程:https://www.mlflow.org/docs/latest/tutorials-and-examples/tutorial.html

Screen

對(duì)于每個(gè)研究者來(lái)說(shuō),讓實(shí)驗(yàn)通宵運(yùn)行而且機(jī)器不會(huì)進(jìn)入休眠狀態(tài)再好不過(guò)了。當(dāng)進(jìn)行遠(yuǎn)程工作時(shí),很多人都會(huì)擔(dān)心 ssh 會(huì)話中斷——代碼運(yùn)行幾個(gè)小時(shí)就停止了。

screen 命令允許用戶在一個(gè)窗口內(nèi)使用多個(gè)終端會(huì)話,可以斷開連接,也可以重新連接已斷開連接的會(huì)話。每個(gè)會(huì)話都可以恢復(fù)連接,這樣就算會(huì)話斷開了,用戶也不必?fù)?dān)心數(shù)據(jù)丟失。

Screen 教程:https://www.geeksforgeeks.org/screen-command-in-linux-with-examples/

協(xié)作工具

學(xué)術(shù)界缺乏有效的團(tuán)隊(duì)管理機(jī)制,在某種程度上這是由于學(xué)術(shù)界會(huì)嚴(yán)格劃分個(gè)人貢獻(xiàn)造成的。然而,機(jī)器學(xué)習(xí)的發(fā)展速度需要大家共同努力。Mikhailiuk 推薦了兩個(gè)非常基本的工具:GitHub 以及 Lucidchart,它們對(duì)于有效的溝通非常方便,尤其是在遠(yuǎn)程工作上。

GitHub

GitHub 是通過(guò) Git 進(jìn)行版本控制的軟件源代碼托管服務(wù)平臺(tái),同時(shí)提供付費(fèi)賬戶和免費(fèi)賬戶,這兩種賬戶都可以創(chuàng)建公開或私有的代碼倉(cāng)庫(kù),但付費(fèi)用戶支持更多功能。除了允許個(gè)人和組織創(chuàng)建和訪問(wèn)保管中的代碼以外,它也提供了一些方便社會(huì)化共同軟件開發(fā)的功能,包括允許用戶追蹤其他用戶、組織、軟件庫(kù)的動(dòng)態(tài),對(duì)軟件代碼的改動(dòng)和 bug 提出評(píng)論等。GitHub 也提供圖表功能,用于概觀顯示開發(fā)者們?cè)鯓釉诖a庫(kù)上工作以及軟件的開發(fā)活躍程度。

就在近日,GitHub 正式發(fā)布了2021 年度報(bào)告。過(guò)去一年里,有 1600 萬(wàn)開發(fā)者加入了 GitHub,目前平臺(tái)的開發(fā)者數(shù)量已經(jīng)達(dá)到了 7300 萬(wàn);過(guò)去一年里,他們?cè)?GitHub 上創(chuàng)建了 6100 萬(wàn)個(gè)存儲(chǔ)庫(kù)。世界財(cái)富 100 強(qiáng)企業(yè)中的 84% 都在使用 GitHub。

GitHub 教程:https://docs.github.com/en/get-started/quickstart/hello-world

Lucidchart

Lucidchart 是一款免費(fèi)的可以支持離線操作的谷歌瀏覽器圖表插件,可以幫助用戶繪制包括流程圖、實(shí)體模型、UML、思維導(dǎo)圖等多種圖表的繪制工作。它提供了很多免費(fèi)繪圖模板,大大地加快了用戶的繪圖速度。該應(yīng)用的一大優(yōu)勢(shì)是,它基于 HTML5,因此用戶不需要下載本地應(yīng)用程序,就可以在電腦、iPad 等設(shè)備上使用該應(yīng)用。它的另一主要優(yōu)勢(shì)是共享的協(xié)作空間和在圖表旁邊做筆記的能力。

Lucidchart 教程:https://www.lucidchart.com/pages/tour

可視化工具

提交論文時(shí),研究人員經(jīng)常會(huì)遇到拒稿的情況,這讓 Mikhailiuk 意識(shí)到可視化功能和結(jié)果一樣重要。如果審稿人沒(méi)有太多時(shí)間,或者對(duì)論文涉及的領(lǐng)域不熟悉,通常來(lái)說(shuō)論文會(huì)被拒掉,其中一部分原因可能是論文中的視圖給人印象不深刻。因此,Mikhailiuk 推薦了 Inkscape 和 Streamlit 這兩個(gè)工具。

Inkscape

Inkscape 是一個(gè)開源的矢量圖編輯工具,使用可伸縮向量圖形 (SVG),以及基于 W3C 標(biāo)準(zhǔn)的 open XML 格式作為其默認(rèn)文件格式。設(shè)計(jì)過(guò)程可能從一張涂鴉、一幅素描或者軟件中模型設(shè)計(jì)開始,這些可能不足以完成一整個(gè)項(xiàng)目。Inkscape 可以幫助你將以上不成熟的素材轉(zhuǎn)變?yōu)閷I(yè)的設(shè)計(jì),用于廣告發(fā)布、模型制作等用途。Inkscape 還能提供 TexText 擴(kuò)展,使用此軟件包,你可以將 latex 公式無(wú)縫集成到圖像中。

Inkscape 推薦教程:https://inkscape.org/learn/tutorials/

Streamlit

Streamlit 和常規(guī) Web 框架不同之處在于,它不需要你去編寫任何客戶端代碼(HTML/CSS/JS),只需要編寫普通的 Python 模塊,就可以在很短的時(shí)間內(nèi)創(chuàng)建美觀并具備高度交互性的界面,從而快速生成數(shù)據(jù)分析或者機(jī)器學(xué)習(xí)的結(jié)果;另一方面,和那些只能通過(guò)拖拽生成的工具也不同的是,你仍然具有對(duì)代碼的完整控制權(quán)。

教程地址:https://builtin.com/machine-learning/streamlit-tutorial

以上就是 Mikhailiuk 在獲得機(jī)器學(xué)習(xí)博士學(xué)位之前需要掌握的九個(gè)工具,你不妨也學(xué)習(xí)一下,相信這些工具在你之后的學(xué)習(xí)、工作中,會(huì)起到事半功倍的效果。

責(zé)任編輯:張燕妮 來(lái)源: 機(jī)器之心Pro
相關(guān)推薦

2021-01-25 09:52:02

計(jì)算機(jī)互聯(lián)網(wǎng) 技術(shù)

2023-11-06 01:10:47

2020-07-29 08:05:42

JavaScriptTypeScript工具

2024-01-26 06:15:44

PythonCPython技巧

2023-12-06 12:52:00

Python庫(kù)

2025-01-14 12:00:00

Java開發(fā)代碼

2020-10-11 20:46:41

計(jì)算機(jī)人工智能技術(shù)

2020-08-06 08:27:21

JavaScript概念語(yǔ)言

2021-02-04 11:01:59

計(jì)算機(jī)信號(hào)轉(zhuǎn)換

2020-04-29 14:50:40

代碼對(duì)比工具

2023-07-26 07:51:30

CSSgap 屬性

2009-04-17 15:30:22

2020-06-16 16:49:47

戴爾

2011-10-17 09:50:38

編程

2021-08-18 10:30:10

GitHub程序員論文

2011-03-03 21:17:51

程序員

2024-02-22 08:17:31

十六進(jìn)制數(shù)字計(jì)算

2017-09-17 22:04:42

博士研究生科研

2024-03-01 10:08:43

計(jì)算機(jī)視覺(jué)工具開源

2020-12-30 12:43:09

JavaScript開發(fā)編程語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)