0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Golang與Python語言到底誰更適合AI

Wildesbeast ? 來源:今日頭條 ? 作者:橘子鍵盤手 ? 2020-02-07 15:25 ? 次閱讀

近幾年,AI勢(shì)頭越來越猛,許多創(chuàng)新型企業(yè)都開始涉入AI領(lǐng)域,同時(shí)計(jì)算機(jī)硬件水平也突飛猛進(jìn),為了加快產(chǎn)品應(yīng)用開發(fā)效率及瓶頸問題,Google所開發(fā)的Golang應(yīng)運(yùn)而生,正在成為機(jī)器學(xué)習(xí)和AI的主流編程語言,全球已有數(shù)百萬用戶。那么很多IT技術(shù)人員肯定會(huì)有這樣的疑問,前些年火起來的Python在科學(xué)計(jì)算及AI領(lǐng)域也有廣泛應(yīng)用,那么這兩者今后誰才是AI的菜呢?

Python很棒,但是Golang也不遜色!

Golang為并發(fā)而生

如今,硬件制造廠商正在為處理器添加越來越多的內(nèi)核以提高性能。數(shù)據(jù)中心都在處理器上運(yùn)行,應(yīng)用程序使用多個(gè)微服務(wù)來維護(hù)數(shù)據(jù)庫連接,消息隊(duì)列和維護(hù)緩存。因此,編程語言和應(yīng)用程序應(yīng)該可以輕松地支持并發(fā)性,并且應(yīng)該能夠隨著CPU核心數(shù)量的增加而具備相應(yīng)的擴(kuò)展性。

但是,大多數(shù)現(xiàn)代編程語言(如Java,Python等)都是來自90年代的單線程環(huán)境。雖然一些編程語言的框架在不斷地提高多核資源使用效率,例如 Java 的 Netty 等,但仍然需要開發(fā)人員花費(fèi)大量的時(shí)間和精力搞懂這些框架的運(yùn)行原理,才能熟練的運(yùn)用到生成開發(fā)中。

Golang于2009年11月發(fā)布,當(dāng)時(shí)多核處理器已經(jīng)上市,Go語言在多核并發(fā)上擁有原生的設(shè)計(jì)優(yōu)勢(shì),Go語言從底層原生支持并發(fā),無須第三方庫、開發(fā)者的編程技巧和開發(fā)經(jīng)驗(yàn)。

Golang現(xiàn)在正成為機(jī)器學(xué)習(xí)和AI的主流編程語言,全球已有數(shù)百萬用戶使用。國內(nèi)例如有阿里巴巴、滴滴、京東、知乎、七牛云、小米等科技互聯(lián)網(wǎng)公司,國外有Google、Facebook、Uber、Dropbox、Salesforce、Twitter等等。

Golang會(huì)淘汰Python嗎?

Python被廣泛使用,而且用途太多,它可將數(shù)千個(gè)組件從單個(gè)模塊編譯為整個(gè)開發(fā)的程序包。Python還有一個(gè)強(qiáng)大的社區(qū),它有望在未來幾十年內(nèi)保持活力。經(jīng)過多種環(huán)境的測(cè)試,對(duì)于初學(xué)者來說,使用Python編程很容易,并且被認(rèn)為是年輕開發(fā)人員的最愛。在編寫服務(wù)器端腳本時(shí),Go語言的性能優(yōu)于Python。因此,在尋找具有快速部署周期的超高性能并發(fā)服務(wù)時(shí),Golang將優(yōu)于Python。

然而,最近,Golang和Python被稱為最適合AI開發(fā)者的流行語言。當(dāng)公司中同時(shí)存在使用這兩種語言的團(tuán)隊(duì)時(shí),組織內(nèi)部將會(huì)出現(xiàn)以下兩個(gè)門派。

AI工程師中的Golang粉

AI即將席卷整個(gè)技術(shù)世界。機(jī)器學(xué)習(xí),自我糾正和推理是一些可以模仿人類智能的應(yīng)用程序。人工智能驅(qū)動(dòng)的應(yīng)用程序現(xiàn)在使企業(yè)能夠改善其資源的使用,從而產(chǎn)生積極的影響。

高可擴(kuò)展性和計(jì)算能力:與Python相比,Golang在可擴(kuò)展性和性能方面具有更高的潛力。使用Go的想法是因?yàn)榕c數(shù)學(xué)計(jì)算速度相比,它具有較高的速度。例如,與Python相比,它可以處理高達(dá)20至50倍且速度更快的復(fù)雜數(shù)學(xué)問題。

Golang涵蓋了廣泛的AI用途:盡管Go提供了小型庫,但它一直在不斷增長,從而解決了許多AI用途。Go庫(例如GoLearn(數(shù)據(jù)處理),Goml(傳遞數(shù)據(jù))和Hector(二進(jìn)制分類問題))是為AI及其應(yīng)用程序服務(wù)的一些庫。

提供了大量的代碼可讀性:Go中使用的算法提供了一種極簡(jiǎn)主義的方法,使開發(fā)人員可以輕松地創(chuàng)建可讀代碼。

Go開發(fā)人員易于使用Go庫:大多數(shù)Go開發(fā)人員不需要選擇用其他編程語言編寫的庫。在Go中擁有庫的核心優(yōu)勢(shì)在于,它為AI專業(yè)人員提供了與Go一起進(jìn)行編程的開發(fā)人員的便利。

AI工程師中的Python粉

如今在IT行業(yè)中,機(jī)器學(xué)習(xí)和AI這兩種技術(shù)一直是IT行業(yè)的主流,并將會(huì)有一個(gè)美好的將來。

多個(gè)庫:多個(gè)庫可以幫助AI工程師構(gòu)建新算法,進(jìn)行數(shù)據(jù)集處理,進(jìn)行模型處理,處理最復(fù)雜的數(shù)據(jù)以及更多其他功能。別忘了,TensorFlow是最流行的庫(開源)之一,可用于Google的許多機(jī)器學(xué)習(xí)應(yīng)用程序。

Python是一種可訪問性的語言:從商業(yè)角度來講,語言的可訪問性意味著擁有大量的Python編程市場(chǎng)。此外,正如我們所知,這些編程語言已遍布全球。

強(qiáng)大的社區(qū):Python具有完善的強(qiáng)大社區(qū)。據(jù)GitHub在2019年中的統(tǒng)計(jì),在全球范圍內(nèi)發(fā)送了近一百萬次服務(wù)請(qǐng)求。社區(qū)傾向于為創(chuàng)建新庫以擴(kuò)展工具集和更新文檔做出貢獻(xiàn)。

為什么是Golang而不是Python?

編程語言的可伸縮性可以維護(hù)和幫助開發(fā)人員更大規(guī)模地解決問題。Golang內(nèi)在支持適當(dāng)?shù)牟l(fā)流程通道,而Python在并發(fā)方面將面臨著巨大的挑戰(zhàn)。由于Golang提供了并發(fā)支持,因此Go在群集計(jì)算和云計(jì)算中已被廣泛接受。

如果涉及到可讀性時(shí),Python肯定會(huì)被提名,但是有時(shí)也會(huì)被夸大其詞。Python確實(shí)可以提供多種方法來實(shí)現(xiàn)不同的業(yè)務(wù)場(chǎng)景,但是這常常會(huì)引起混亂。然而,Go在編程方面遵循嚴(yán)格的規(guī)則,它不允許簡(jiǎn)單地導(dǎo)入不需要的庫,也不允許創(chuàng)建不必要的變量。所以,這意味著Go具有更好的執(zhí)行優(yōu)勢(shì),保證代碼風(fēng)格的一致性,可以在跨部門協(xié)作中提高團(tuán)隊(duì)開發(fā)的工作效率。盡管有些人可能不同意,只要代碼可讀即可。

得出哪種語言更好的結(jié)論可能是一件比較難的事,盡管在大多數(shù)情況下,Golang似乎占了上風(fēng)。目前,它的火熱程度可能還不如Python,但最終它將在某天到達(dá)。根據(jù)記錄,Python花費(fèi)了二十年才能達(dá)到今天的水平。在最初的十年中,Python的存在并未引起人們的注意,直到2001年它才開始引起人們的注意。因此,Go一定會(huì)趕上。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10780

    瀏覽量

    210494
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    29435

    瀏覽量

    267737
  • python
    +關(guān)注

    關(guān)注

    54

    文章

    4759

    瀏覽量

    84297
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    PythonAI中的應(yīng)用實(shí)例

    Python在人工智能(AI)領(lǐng)域的應(yīng)用極為廣泛且深入,從基礎(chǔ)的數(shù)據(jù)處理、模型訓(xùn)練到高級(jí)的應(yīng)用部署,Python都扮演著至關(guān)重要的角色。以下將詳細(xì)探討Python
    的頭像 發(fā)表于 07-19 17:16 ?782次閱讀

    Python語言基礎(chǔ)2

    電子發(fā)燒友網(wǎng)站提供《Python語言基礎(chǔ)2.rar》資料免費(fèi)下載
    發(fā)表于 07-17 17:23 ?1次下載

    使用Python進(jìn)行自然語言處理

    在探討使用Python進(jìn)行自然語言處理(NLP)的廣闊領(lǐng)域時(shí),我們首先需要理解NLP的基本概念、其重要性、Python在NLP中的優(yōu)勢(shì),以及如何通過Python實(shí)現(xiàn)一些基礎(chǔ)的NLP任務(wù)
    的頭像 發(fā)表于 07-04 14:40 ?346次閱讀

    ChatGPT、Gemini、通義千問等一眾大語言模型,哪家更適合您?

    ]?就以“ChatGPT、Gemini、通義千問等一眾大語言模型,哪家更適合您”這樣的主題,開展了一次深度的大語言模型的測(cè)評(píng)。開放夜現(xiàn)場(chǎng)測(cè)評(píng)了十幾個(gè)國內(nèi)外大語言模型,測(cè)評(píng)角度從邏輯、數(shù)
    的頭像 發(fā)表于 05-14 17:35 ?561次閱讀

    stm32l4、msp430、msp432到底功耗低?

    stm32l4、msp430、msp432到底功耗低,性能如何,希望大家一起討論。
    發(fā)表于 05-13 08:25

    c語言,c++,java,python區(qū)別

    C語言、C++、Java和Python是四種常見的編程語言,各有優(yōu)點(diǎn)和特點(diǎn)。 C語言: C語言是一種面向過程的編程
    的頭像 發(fā)表于 02-05 14:11 ?1681次閱讀

    如何使用Golang連接MySQL

    首先我們來看如何使用Golang連接MySQL。
    的頭像 發(fā)表于 01-08 09:42 ?3114次閱讀
    如何使用<b class='flag-5'>Golang</b>連接MySQL

    Golang接口的作用和應(yīng)用場(chǎng)景

    Golang(Go)作為一門現(xiàn)代的靜態(tài)類型編程語言,提供了許多強(qiáng)大的特性,其中之一便是接口(interface)。接口是Golang中的一個(gè)核心概念,它具有廣泛的應(yīng)用場(chǎng)景,可以幫助開發(fā)者實(shí)現(xiàn)
    的頭像 發(fā)表于 12-05 10:44 ?1046次閱讀

    SLC VS. MLCC,哪種電容器更適合您的應(yīng)用?

    SLC VS. MLCC,哪種電容器更適合您的應(yīng)用?
    的頭像 發(fā)表于 12-04 15:41 ?728次閱讀
    SLC VS. MLCC,哪種電容器<b class='flag-5'>更適合</b>您的應(yīng)用?

    哪種電阻更適合被用作為取樣電阻?

    哪種電阻更適合被用作為取樣電阻? 選擇適合作為取樣電阻的電阻器是電子電路設(shè)計(jì)中非常重要的一步。取樣電阻被廣泛應(yīng)用于模擬電路中,用于測(cè)量電壓、電流和功率等。一個(gè)合適的取樣電阻對(duì)于電路的性能和精度
    的頭像 發(fā)表于 11-29 16:29 ?752次閱讀

    python語言特點(diǎn)有哪些

    Python是一種高級(jí)編程語言,由Guido van Rossum于1991年首次發(fā)布。它具有許多獨(dú)特的特點(diǎn),這些特點(diǎn)使得Python在軟件開發(fā)領(lǐng)域變得非常流行。以下是關(guān)于Python
    的頭像 發(fā)表于 11-29 14:29 ?965次閱讀

    python怎么運(yùn)行程序

    Python是一種廣泛使用的編程語言,它的簡(jiǎn)易和可讀性使得它成為初學(xué)者和專業(yè)開發(fā)人員的首選。在運(yùn)行Python程序之前,您需要安裝Python解釋器,然后按照以下步驟進(jìn)行操作。 步驟1
    的頭像 發(fā)表于 11-24 09:25 ?2432次閱讀

    Python編程語言屬于什么語言

    Python編程語言屬于高級(jí)編程語言中的一種。它是一種通用、面向?qū)ο?、解釋型編?b class='flag-5'>語言。Python由Guido van Rossum于198
    的頭像 發(fā)表于 11-22 14:31 ?1278次閱讀

    Go語言Python強(qiáng)多少

    1.都說Go語言性能非常強(qiáng)大,那么到底Python強(qiáng)多少? 為了比較Go語言Python語言
    的頭像 發(fā)表于 11-02 14:05 ?485次閱讀
    Go<b class='flag-5'>語言</b>比<b class='flag-5'>Python</b>強(qiáng)多少

    Aardio的基本用法及調(diào)用 Python 腳本的具體流程

    支持與 Python、JS、Golang 等主流語言進(jìn)行混合編程 它是一款免費(fèi)的開發(fā)工具,簡(jiǎn)單易學(xué),支持多線程,具有輕巧、快速開
    的頭像 發(fā)表于 10-31 10:30 ?5928次閱讀
    Aardio的基本用法及調(diào)用 <b class='flag-5'>Python</b> 腳本的具體流程