成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

為什么用Go編寫機器學習的基礎(chǔ)架構(gòu),而不是Python?

開發(fā) 架構(gòu)
如果您有興趣成為一名機器學習工程師,那么必須熟悉掌握Python。但是,如果您對使用機器學習的基礎(chǔ)結(jié)構(gòu)感興趣,認真考慮一下Go語言,一定會收獲滿滿~

 [[314977]]

Python是機器學習項目中最流行的語言,這點是毋庸置疑的。

雖然像R語言、C++和Julia這樣的程序語言有其特有的使用群體與用例,使它們經(jīng)久不衰,但Python仍是使用最廣泛的語言,并用于每個主要的機器學習框架中。 然而,你能想象?在Cortex(將機器學習模型部署為API的開放源代碼平臺之一)代碼庫中,87.5%的代碼都是使用GO編寫。

 

 

圖源: Cortex GitHub

 

Python引以為豪的機器學習算法只是生產(chǎn)環(huán)境機器學習系統(tǒng)的一個組成部分。如要實際大規(guī)模運行生產(chǎn)環(huán)境中的機器學習API,您的基礎(chǔ)結(jié)構(gòu)需要實現(xiàn)以下功能:

  • · 自動縮放,確保流量波動不會破壞API
  • ·實行API管理,以處理API同步部署
  • · 滾動更新,確保更新模型不會中斷用戶服務

Cortex旨在自動實現(xiàn)所有上述基礎(chǔ)架構(gòu),以及其他一些問題,例如日志記錄和成本優(yōu)化。

出于以下考慮,Go是構(gòu)建滿足上述需求軟件的理想之選:

1. Go生態(tài)系統(tǒng)非常適合基礎(chǔ)設(shè)施項目

 

 

[[314978]]

 

來源:zcool

 

 

開源的好處之一就是您可以從自己欣賞的項目中不斷學習。例如,Cortex存在于Kubernetes(本身用Go編寫)生態(tài)系統(tǒng)中。很幸運,我們能夠在該生態(tài)系統(tǒng)中參考許多出色的開源項目,其中包括:

  • · kubectl: Kubernetes CLI
  • · minikube: 一種在本地運行Kubernetes的工具
  • · helm: Kubernetes軟件包管理工具
  • · kops: 管理生產(chǎn)Kubernetes的工具
  • · eksctl: 亞馬遜EKS的官方CLI

以上所有工具不僅僅是Kubernetes項目,并且都是用Go語言編寫。無論是查看CockroachDB還是Hashicorp的基礎(chǔ)設(shè)施項目(包括Vault, Nomad, Terraform, Consul和 Packer),您將發(fā)現(xiàn)它們均是使用Go語言編寫。

Go在基礎(chǔ)架構(gòu)領(lǐng)域的流行還有另一個影響,那就是大多數(shù)對基礎(chǔ)架構(gòu)感興趣的工程師都熟悉Go語言。所以,很容易通過GO吸引這些工程師。實際上,Cortex Labs最優(yōu)秀的工程師之一就是通過在AngelList上搜索Go職位找到我們的。他找到了我們,我們感到非常幸運。

2.并發(fā)對于機器學習的基礎(chǔ)架構(gòu)至關(guān)重要

用戶可以將許多不同的模型部署為不同的API,并把所有模型都在同一個Cortex集群中以便管理。而Cortex Operator也需要通過一些API來管理這些不同的部署。舉例:

  • · Cortex調(diào)用Kubernetes API在集群上部署模型。
  • · Cortex調(diào)用各種AWS API(包括EC2 Auto Scaling,S3,CloudWatch等)來管理AWS上的部署。

用戶不會直接與這些API進行交互。相反,Cortex以編程方式調(diào)用這些API來提供群集,啟動部署和監(jiān)視API。

以一種高效、可靠的方式交叉調(diào)用API是一項重大挑戰(zhàn)。采用并發(fā)的方式使用API是最高效的方法,但也引發(fā)了問題,因為現(xiàn)在我們不得不擔心競態(tài)條件之類的事情。

Go提供了一個解決該問題的簡便方案:Goroutines。

Goroutines是Go以并發(fā)方式執(zhí)行代碼的普通函數(shù)。我們可以另寫一篇長文深入探討Goroutines背后的工作方式,但是概括而言,Goroutines是Go運行時自動管理的輕量級線程。多個Goroutine可以放置在一個OS線程上,如果Goroutine阻塞了OS線程,則Go運行時會自動將其余Goroutine移到新的OS線程上。

Goroutines還提供了一個稱為“channel”的功能,此功能允許用戶在Goroutines之間傳遞消息,幫助用戶調(diào)度請求并預防競態(tài)條件。

當然,用戶也可使用asyncio等最新工具在Python中實現(xiàn)這些功能,但Go在設(shè)計時就考慮到了這些情況,使用GO可以減輕我們的工作和生活負擔。

3.使用Go語言編程是一種享受

 

[[314979]]

 

來源:Pexels

 

 

我們使用Go構(gòu)建Cortex的最后一個理由就是:Go語言真的非常好。

相對于Python,Go的入門有點痛苦。但是,Go的包容性能為大型項目帶來舒適感。我們?nèi)匀辉趪栏駵y試軟件,但靜態(tài)輸入和編譯(Go初學者的兩大難題)充當了我們的護欄欄,有助于我們編寫(相對而言)沒有錯誤的代碼。

您可能會說其他語言也會提供特定的優(yōu)勢,但總的來說,Go最大限度地滿足了我們的技術(shù)和美學需求。

4.使用Go構(gòu)建跨平臺的CLI更容易

Cortex CLI是一個跨平臺工具,允許用戶直接從命令行部署模型并管理API。以下動圖顯示了運行中的CLI:

 

 

圖源: Cortex GitHub

 

最初,我們使用Python編寫CLI,但事實證明,跨平臺分發(fā)CLI太困難了。而Go可以編譯二進制文件(無需依賴管理),為我們提供了跨平臺分發(fā)CLI的便捷易行方案,而無需進行額外的工程工作。

Go編譯的二進制代碼與解釋型語言相比,具有顯而易見的性能優(yōu)勢。根據(jù)計算機基準測試結(jié)果,GO的速度遠勝Python。

許多其他的基礎(chǔ)設(shè)施CLI工具也是用GO編寫,這可能并非偶然。

Python適用于機器學習,而Go適用于基礎(chǔ)架構(gòu) 我們也很喜歡Python,它在Cortex中占有一席之地,特別是在處理推理方面。

Cortex服務于TensorFlow,PyTorch,scikit-learn和其他Python模型,這意味著與模型的接口,推理之前和之后的處理均在Python中完成。但是,即使Python代碼經(jīng)過打包部署到了Docker容器中,這些容器是由用Go編寫的代碼精心編排的。

 

 

 

來源:Pexels

 

 

如果您有興趣成為一名機器學習工程師,那么必須熟悉掌握Python。但是,如果您對使用機器學習的基礎(chǔ)結(jié)構(gòu)感興趣,認真考慮一下Go語言,一定會收獲滿滿~

責任編輯:武曉燕 來源: 讀芯術(shù)
相關(guān)推薦

2020-02-14 13:13:04

Go機器學習Python

2023-11-02 08:20:54

SocketZygoteAndroid

2020-01-21 21:38:03

機器學習人工智能計算機

2021-12-30 19:36:48

GoDubboJava

2022-01-07 14:05:33

DubboGoJava

2020-09-15 09:23:19

C++WindowsC#

2018-02-09 09:36:25

DubboSpring Clou支付

2025-01-06 08:28:45

C語言操作系統(tǒng)程序

2022-06-26 00:24:57

C語言操作系統(tǒng)語言

2013-03-25 10:14:18

NginxApache

2019-04-19 11:56:48

框架AI開發(fā)

2016-10-11 11:13:15

Linus Torva

2012-05-18 10:21:30

程序員CC++

2020-07-20 14:09:36

Python編程語言注釋符

2012-10-10 16:52:21

CentOSDebianUbuntu

2021-10-30 19:57:00

HTTP2 HTTP

2021-08-14 09:04:58

TypeScriptJavaScript開發(fā)

2025-03-04 00:25:55

Go開發(fā)者切片

2021-04-25 10:26:34

Python機器學習人工智能

2017-09-11 19:58:06

PostgreSQLMySQL數(shù)據(jù)庫
點贊
收藏

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

主站蜘蛛池模板: 久久精品日产第一区二区三区 | 国产传媒| 天天激情综合 | 中文字幕精 | 亚洲精品小视频在线观看 | 激情五月婷婷综合 | 成人国产精品久久久 | 亚洲欧美日韩久久 | 欧美午夜剧场 | 国产丝袜一区二区三区免费视频 | av网站免费在线观看 | 91国内外精品自在线播放 | 亚洲精品久久久一区二区三区 | 91亚洲国产亚洲国产 | 国产精品久久久久久久 | 色综合久久久久 | 偷拍亚洲色图 | 高清18麻豆| 久久久久久国产 | 精品一区在线免费观看 | 久久av网 | 日韩美av | 日韩aⅴ视频 | 日本精品视频 | 色综合天天综合网国产成人网 | 日韩视频在线一区二区 | 精品产国自在拍 | 伊人免费观看视频 | 国产亚洲精品久久久久久豆腐 | 91久久精品一区 | 99久久久无码国产精品 | 精品国产乱码久久久久久影片 | 国产视频三级 | 国产在线高清 | 久久精品久久久久久 | 成人免费黄色 | 中国三级黄色录像 | 97国产一区二区 | 狠狠操操| 99精品一区二区 | 精品无码久久久久久国产 |