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語(yǔ)言到底誰(shuí)更適合AI

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

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

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

Golang為并發(fā)而生

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

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

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

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

Golang會(huì)淘汰Python嗎?

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

然而,最近,Golang和Python被稱為最適合AI開(kāi)發(fā)者的流行語(yǔ)言。當(dāng)公司中同時(shí)存在使用這兩種語(yǔ)言的團(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é)問(wèn)題。

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

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

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

AI工程師中的Python粉

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

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

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

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

為什么是Golang而不是Python?

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

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

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

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

    關(guān)注

    68

    文章

    10804

    瀏覽量

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

    關(guān)注

    87

    文章

    29806

    瀏覽量

    268106
  • python
    +關(guān)注

    關(guān)注

    55

    文章

    4767

    瀏覽量

    84375
收藏 人收藏

    評(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 ?873次閱讀

    Python語(yǔ)言基礎(chǔ)2

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

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

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

    ChatGPT、Gemini、通義千問(wèn)等一眾大語(yǔ)言模型,哪家更適合您?

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

    stm32l4、msp430、msp432到底誰(shuí)功耗低?

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

    Python語(yǔ)言支持KIT_A2G_TC387_MOTORCTR嗎?

    使用KIT_A2G_TC387_MOTORCTR開(kāi)發(fā)項(xiàng)目的語(yǔ)言 2. Python語(yǔ)言支持KIT_A2G_TC387_MOTORCTR嗎? 如果支持,使用 Python 是否更方便?
    發(fā)表于 03-04 07:45

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

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

    ADSP-CM403BSWZ-CF和ADSP BF518相比到底誰(shuí)速度快?

    1. 如題,ADSP-CM403BSWZ-CF(240Mhz)和SHARCDSP 比如ADSP-21479 (300Mhz)綜合到底誰(shuí)強(qiáng)?如果只比浮點(diǎn)DSP性能(速度)呢?比如FIR,DFFT
    發(fā)表于 01-15 06:04

    如何使用Golang連接MySQL

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

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

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

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

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

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

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

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

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

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

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

    Python編程語(yǔ)言屬于什么語(yǔ)言

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