今年程式語言排行知多少?聽說Python奪冠有望了?!

今年程式語言排行知多少?聽說Python奪冠有望了?!
今年程式語言排行知多少?聽說Python奪冠有望了?!

聽說Python在今年的程式語言排行有機會擠下Java與C奪冠,真的假的啊?

 

目錄

1. Python奪第三!分數卻與第一名史無前例地相近

2. 人工智慧、新冠藥物⋯Python應用廣有望奪冠

3. 前七名上榜語言與去年同期相同

 

自從 2001 年起,創建滿 20 週年的程式語言排行榜「TIOBE Index」都會公布當月的程式語言排行。第一次出現在 TIOBE 榜上的前三名為:Java、C 以及 C++。這幾年來,穩居在榜上前三名的常客為 Java、C 和 Python,與 20 年前異常地相似。

 

2021 年 7 月程式語言排行榜 TIOBE 所列出的前 10 名熱門語言中,可看出 C 語言與 Java 分數已明顯下降,Python 的分數則上升 1.86%。

 

Python奪第三!分數卻與第一名史無前例地相近

而最新一期(2021 年七月)的結果也不意外,JavaC 和 Python 穩居前三名。但是,長期居冠的 C 語言和第二名的 Java 分數都明顯下降、 Python 的分數卻竄升,使得前三名的分數差異史無前例的靠近,第一名和第三名的分數只相差了 0.67%!這就代表著接下來的幾個月,榜上的前三名將有史無前例的結果。

 

人工智慧、新冠藥物⋯Python應用廣有望奪冠

近幾年,人工智慧(Artificial Intelligence)與資料挖掘(Data Mining)都在蓬勃發展中,剛好 Python 又是這兩大領域的領導語言,這優勢可讓 Python 在接下來幾個月隨時都可能成為第一。除了上述兩大領域,Python 的應用領域也包含網頁前後段、嵌入式系統等;去年更因為 Covid-19 的爆發,研究人員積極使用 ​Python 進行統計分析,尋找對抗病毒的藥物,讓 Python 的分數有前所未有的竄升。

 

Covid-19 除了帶動 Python 的熱門度外,用於醫療軟體開發的 C 和 C++ 也受到影響。C 語言擠下了近年來居冠的 Java 成第一名。

 

總體而言,位居榜首的 C 語言分數為 11.62%,自去年 7 月以來下降了 4.83%。緊接在後的 Java 得分為 11.17%,較去年下降了 3.93%。排名第三的 Python 得分 10.95%,較去年增加了 1.86%,也是榜上前 20 名中增幅最大的程式語言。

 

前七名上榜語言與去年同期相同

有趣的是,本次榜上前七名的程式語言都與去年同期(2020 年七月)相同:C++ 與 C# 分別以 8.01% 與 4.83% 位居第四、第五、Visual Basic 以 4.50% 的分數排名第六,JavaScript (2.71%) 排名第七。而第八名的 PHP 相較去年變化不太大,只升了一個名次;組合語言 ASM 則在一年間升了四個名次,進 Top10 榜到第九名;SQL  也在一年內加入 Top10,位居第十。

 

2021 年 7 月程式語言排行榜 TIOBE 所列出的 11-20 名熱門語言

 

TIOBE Index 的其他變動,還有位居第 11 名的 Visual Basic,自去年七月以來以來上升到9 名;在此一年間,第 12 名的 R 語言下滑了 4 名、位居第 14 的 Fortran 則飆升到了 36 個名次、第 15 名的 Groovy 竄升九個名次、第 16 名的 Swift 則滑落六個名次、Perl 與 MATLAB 則不約而同地在一年內滑落四個名次,分別居於第 18、19。

 

TIOBE 使用許多指標來決定每月一度的排名,指標包含了 Bing、亞馬遜、YouTube、維基百科、Google、Yahoo 和百度上的搜尋結果。讀者們想要進一步查詢完整指標的話,就親自到 TIOBE 官網上看看相關資訊吧!


延伸閱讀:使用 Java、Python 等 22 種語言寫出「Hello World」會如何?

 

 

 

 

 

 

 

推薦文章:
AI打造史上最難「惡」羅斯方塊!世界紀錄僅消去41行


AI 人工智慧「Nadine」能說能笑 還能陪老人玩賓果


人類又輸了?工程師需花數月設計出IC晶片,AI六小時就搞定!


你笑,AI也笑!人工智慧也能用「表情」回應「感情」了


Google FLoC太糟糕?竟遭眾多瀏覽器都反對?!(上)


美科學家研發AI導盲犬,讓盲人生活更安全也更便利!


人工智慧打造超完美女團,還出單曲MV?!

 

別為學不會Python找藉口!50歲大叔自寫AI翻轉市場!(上)

別為學不會Python找藉口!50歲大叔自寫AI翻轉市場!(上)
別為學不會Python找藉口!50歲大叔自寫AI翻轉市場!(上)

連50歲大叔自學Python寫AI,都讓能雀巢說讚,還翻轉市場型態呢!(上)

 

目錄

1. 年過 50 歲的日本副社長自學 Python!寫出的 AI 還被雀巢採用

2. 一間市場研究x包裝設計公司,為什麼要自己研發 AI?

3. 從完全不會到寫出程式 副社長一年花 1000 小時學習 AI

4. 與東大實驗室合作 研發出包裝喜好預測評估 AI

5. 被雀巢選中來決定新商品的包裝

6. 從 0 經驗的大叔,變成改變整個市場型態的推手

 

年過 50 歲的日本副社長自學 Python!寫出的 AI 還被雀巢採用

你是否也有個轉職夢,想學 Python、當工程師或設計 AI 軟體,卻因為擔心自己的背景、年齡、經歷而不敢往前?

 

那這位已經日本的 50 歲「文科」副社長坂元英樹,從完全的外行人到研發出改變產業的 人工智慧 應用的故事,絕對能激勵你!

 

一間市場研究x包裝設計公司,為什麼要自己研發 AI?

故事要從坂元英樹所任職的公司「Plug」(株式会社プラグ)說起。

 

Plug 是由一間從事市場研究的公司、和一間從事包裝設計的公司於2014年合併而來,當時只是員工數約 30 人的小公司,至今已經大約有 70 名員工。Plug 主要提供的服務為:透過市場調查來了解消費者對商品包裝的喜愛度、偏好度與購買相關度等資訊。

▲ Plug 是一間提供市場行銷調查和包裝設計開發業務的日本公司。

 

過去傳統做法是:當廠商需要決定最終要選擇 A 設計或 B 設計,Plug 便會開始調查數百個消費者的意見和想法,統計出哪個設計方案會讓消費者更有購買慾。

 

換句話說,大多數產品包裝都是由客觀的數據資料決定的。這表示 Plug 要做的是把「包裝美觀好看」這種主觀因素,轉化成「因為它在市場上會更受歡迎」這種可以明確量化的客觀因素。

▲ 市場調查重要的地方在於把市場接受度量化成具體數字。圖為日經雜誌(日経クロストレンド)委託 Plug 調查各品牌即食沖泡湯包的包裝設計、在市場上的喜愛排行。圖片來源:Plug 官方網站。

 

但在各種新興技術蓬勃發展的現代,有什麼更快、更好、更準確的方法,可以數字化出「包裝設計」有多少市場接受度呢?這個問題成為 Plug 急需解決的商業挑戰。

 

 AI 正可以完美的解決這個問題,也是成為 Plug 副社長坂元英樹開始學習 Python 踏上 AI 之路的契機。

 

從完全不會到寫出程式 副社長一年花 1000 小時學習 AI

看到這裡,有人肯定會提出疑問:「就算公司需要 AI 技術,那為何不找外包公司就好了呢?身為管理職的副社長有需要自己跳下去學嗎?」

 

這個問題,坂元英樹接受日本自媒體「ITmedia NEWS」採訪時是這麼回答的:「委外的化一方面耗費成本,而且 know-how 會外流。」並表示:「實際上,我們在開發之初就試圖將其外包,但是坂元和同事因為遇到種種問題,最終轉向了內部生產。」

 

但是如果要由公司自己開發,研發人員又要從哪來呢?

 

綜合考量之後,坂元決定從最常被用於開發 AI 的程式語言──Python 開始學習。他笑稱:「這是我這輩子第一次接觸程式語言,當時的我甚至都不知道 for 語法是什麼。」

 

坂元踏出的第一步,就是報名了一間程式語言學校,並且設定好在家學習的目標:一年學習 1000 個小時。「如果我在工作日學習 2 個小時、週末學習 5 個小時,那麼一週就學習了 20 個小時,持續這樣做一年,我就能夠學習 1000 個小時了。」坂元英樹這樣表示。

▲ Plug 副社長坂元英樹。圖片來源:Plug官方網站。

 

他花兩個月時間掌握了 Python 的基本知識後,又報名了另一間專門教機器學習的學校。 坂元:「我過去從事過市場行銷調查員,對統計學有基本的知識,所以比較容易理解機器學習的概念,只是我一開始不知道如何用 code 來表達它。」

 

到此,這個還沒有雛型的「計畫」都還是在工作之餘進行的,雖然研發 AI 技術對公司來說舉足輕重,但還不確定能否將其轉變為正式的專案。

 

「當時的我下班後還是每週花 20 個小時在寫 AI 上,我的家人們因此說:『你滿腦子都是 AI!』」坂元笑稱:「也讓我覺得,或許比起管理職,當個 AI 工程師或許更像是我的天職。」

 

時間來到坂元投入開發的五個月後,事情終於有了進展。他們開發了一個概念驗證(PoC)模型,原本該模型顯示設計的實際評價和人工智慧評價的相關性很低,只有 0.3 的低關聯度;但經過進一步的討論、研究後,終於把相關性提高到 0.5。

 

「這時我們才真正確信,這個計畫可以成為公司內部的正式專案。」

 

本文為該系列的上篇,下篇請點此連結

 

 

 

 

推薦文章:
AI 產業革命開始!為何 Python 成人工智慧必備語言?


研究所開始鋪路未來扎實的Python課程讓我錄取竹科工程師


進可攻·退可守的一技之長-Python課程結業後成功轉職工程師 …


被日文系耽誤的工程師魂? Python課程結業後的他,竟錄取全球百大企業!


人工智慧變魔法?!竟讓照片中的人”活過來”?!


人工智慧”虛擬超模”超專業!試衣襬POSE樣樣行!(上)


Google導入人工智慧,個資隱私全都罩!(上)

別為學不會Python找藉口!50歲大叔自寫AI翻轉市場!(下)

別為學不會Python找藉口!50歲大叔自寫AI翻轉市場!(下)
別為學不會Python找藉口!50歲大叔自寫AI翻轉市場!(下)

連50歲大叔自學Python寫AI,都讓能雀巢說讚,還翻轉市場型態呢!(下)

 

目錄

1. 年過 50 歲的日本副社長自學 Python!寫出的 AI 還被雀巢採用

2. 一間市場研究x包裝設計公司,為什麼要自己研發 AI?

3. 從完全不會到寫出程式 副社長一年花 1000 小時學習 AI

4. 與東大實驗室合作 研發出包裝喜好預測評估 AI

5. 被雀巢選中來決定新商品的包裝

6. 從 0 經驗的大叔,變成改變整個市場型態的推手

 

本文為該系列的下篇,上篇請點此連結

與東大實驗室合作 研發出包裝喜好預測評估 AI

為了讓專案可以更好的步上軌道,坂元向隸屬於東京大學的山崎實驗室「求助」──他每 1.5 個月會與實驗室的副教授山崎俊彥開 1 次會。

 

坂元表示:「見面的時候山崎教授不只會教我編碼方面的知識,還會提出『有這樣、那樣的演算法,你為什麼不嘗試看看呢?』回去後我會用 Google 搜索相關知識,於下一次開會時報告結果。」坂元微笑道:「教授把我當成他的學生一般照顧,感覺就像我在 50 歲時考上了東大一樣。」

 

在山崎教授的建議下,阪元的開發方向確定為「包裝設計喜好度評估預測 AI 服務」。

 

2020 年 6 月,坂元與東京大學山崎實驗室共同在當年的日本人工智慧學會上發表論文:《使用深度學習預測包裝設計的受青睞程度》(深層学習を用いたパッケージデザインの好意度予測)。

 

隨後,幾乎是由阪元個人所研發的「包裝設計評估 AI」終於開發完成。

 

這款 AI 人工智慧可以將包裝設計的好感度以 5 分制評分,還可以直觀地看到消費者在包裝上著重於什麽地方、包裝設計方面的哪個部分會連結到喜好度等細節,整個分析過程竟然只需要幾分鐘的時間。

▲ AI 可以在幾分鐘內為你的包裝設計評分。

 

至於預測值的準確率,比較「問卷調查結果實測值」與「AI 計算的預測值」兩者之後,得到的結果,誤差值低於 5 %的結果高達七成以上,相關係數為 0.514。不同商品類別的準確率亦有些許落差,如啤酒、調味料、保養品等類別可得到很高準確率,甚至達實用階段。

 

被雀巢選中來決定新商品的包裝

2020 年 7 月 ,知名速溶咖啡公司雀巢宣布他們的新系列商品「雀巢咖啡黃金組合-大人的獎賞」(ネスカフェゴールドブレンド 大人のご褒美)的包裝,是採用 Plug 公司的「包裝設計評估 AI」所輔助完成的。

▲ 雀巢採用包裝評估 AI之產品。AI 以熱點圖的形式表達消費者最關注的地方。

 

雀巢表示,這次的新商品從口味、命名到包裝都十分精心考量,想帶給消費者豐富、優雅的印象,因而採用了最新的 AI 技術,來幫助他們確立出合適的包裝。

 

而坂元英樹所開發的 AI 技術也正式成為商業應用服務,只要在官方網站上傳包裝設計的圖片,任何人都能進行測試,並且十張照片以內是免費的,目前已有超過兩百間公司登錄開始使用。

 

從 0 經驗的大叔,變成改變整個市場型態的推手

完全無經驗、已經年過半百的坂元英樹,從 0 開始學習 Python、自己寫程式,到邁入實用階段,最後,他或許會大幅改變行銷活動中費時的市場調查作業。

 

AI 服務的成本比一般的消費者問卷調查便宜許多,此外,以往的問卷調查大約都需要花上一個月才能得到結果,而這項最新的服務只需耗時幾分鐘。既省錢又省時,不只市場調查型態,就連產品開發流程也可能徹底翻轉。

 

而坂元英樹的故事,或許也能給所有想踏入 AI 領域或者想學習Python的初心者們一劑強心針。

 

 

 

推薦閱讀:
AI 產業革命開始!為何 Python 成人工智慧必備語言?


研究所開始鋪路未來扎實的Python課程讓我錄取竹科工程師


進可攻·退可守的一技之長-Python課程結業後成功轉職工程師 …


被日文系耽誤的工程師魂? Python課程結業後的他,竟錄取全球百大企業!


人工智慧變魔法?!竟讓照片中的人”活過來”?!


誰說只有人需要休息睡覺!現在竟連人工智慧也要?!(上)


3款人工智慧”彩妝達人”,在家輕鬆打造好氣色!

大學新鮮人讓Python程式碼”可視化”!寫程式變得超簡單!

大學新鮮人讓Python程式碼"可視化"!寫程式變得超簡單!
大學新鮮人讓Python程式碼”可視化”!寫程式變得超簡單!

最近討論正夯的Python程式碼”可視化”,竟然是大學新鮮人開發出來的?!

目錄

 

 

小大一把 Python 程式碼「可視化」!Debug 不再傷肝傷眼

最近有一個 Python 腳本在 GitHub 上受到掀起一陣討論──因為它簡單地把原本純文字的程式碼「可視化」了,開發者竟然還是一個大一新生!

這個適用於 Python 環境的腳本編輯器名叫「Ryven」,著重於簡單化、透明化編碼過程,並致力為使用者提供最直觀、清晰且即時的反饋:

▲ Ryven 可用簡潔的介面呈現導入圖片、調整大小、調整亮度、套用雙邊濾波器(Bilateral Filter)去噪這一系列的操作流程。

 

如上圖,從導入圖片、調整大小、調整亮度到套用雙邊濾波器(Bilateral Filter)去噪這一系列的操作流程,用簡潔的介面呈現出來,每個步驟都顯得一清二楚。

▲Ryven 也可以運算矩陣:無論是逆矩陣、共軛還是隨機變量,都能得到可視化的即時反饋

 

不只在編輯圖片上,連運算矩陣也可以達成。不管是求逆矩陣、求共軛還是隨機變量,都能藉由可視化得到即時反饋。

Ryven 在 GitHub 上獲得了超過 1600 顆星星,完全免費且開源。讓不少人驚訝的是,Ryven 的開發者還在就讀大學一年級!

這位年少有為的開發者名叫 Leon Thomm,稱自己是一名業餘工程師,並表示自己正在就讀瑞士蘇黎世聯邦理工學院一年級,但在進入大學前就有豐富的軟體開發經驗。現階段重心在研究程式設計的可視化。

Ryven:一個為 Python 設計的視覺化腳本編輯器

Ryven 開發環境基本要求為 Python 3(推薦3.8+)、PySide2(推薦2.14+),運行跟文件中的 Ryven.py ,即可打開編輯器,也支援建立虛擬環境。

開發者特別在 Ryven 的介紹網頁提到,目前常見的程式設計可視化編輯器有兩種算法模式──資料流(data)與執行流(execution),而 Ryven 同時啟用了這兩種方法,讓使用者根據執行流程自行選擇適合的模式。

資料流:每當節點(note)的資料輸出更改,都會更新流程,並在所有連接的節點中即時更新結果。

執行流:資料不會在更改時立即更新整個流程,只有在某個節點請求輸出資料時,更新受影響的節點。

但無論哪種模式,要建立、編寫新節點都非常容易且直觀,只要是能在 Python 上運行的應用程式與數據庫都可以被放入 Ryven,對函式庫的使用也沒有任何限制。

除了便捷,Ryven 也十分重視 UI 的美觀與設計感,為此準備了 4 種不同風格的主題供使用者挑選;除此之外,還貼心為想在被窩中寫程式的使用者設想,支援觸控筆模式,除了編輯整個項目外,使用者也可以手動將節點寫入流程中。

▲ 除了敲擊鍵盤,Ryven 也支援手寫模式。

 

像是 Ryven 這類將程式設計可視化的編輯器近來大受歡迎,不少工程師都認為「可視化」導入程式設計後既明確又清晰,大大提升了編寫效率。也許等這類工具更加成熟後,將會成為工程師 debug 的最佳幫手!

Ryven 傳送門請點此

 

 

 

推薦文章:
SEO是什麼?跟PPC關鍵字廣告差在哪?如何自學?


2020年度十大Python函式庫-人工智慧 · 機器學習必備


狗狗是人工智慧的最佳教練!Google AI機器人學狗左轉右彎還能小跑


終極版 AlphaGo!DeepMind 最新人工智慧「MuZero」能下棋、玩遊戲、壓縮影片


科幻迷的最愛電影竟然和Python跟Java扯上關係?!(上)


人工智慧擔任面試官,求職公平又客觀!(上)


當上竹科工程師不再遙不可及!前提是要選對Python課程!

榮登前十個神級好用的Python函式庫,你知道幾個?(4)

榮登前十個神級好用的Python函式庫,你知道幾個?(4)
榮登前十個神級好用的Python函式庫,你知道幾個?(4)

是哪10個Python函式庫榮登去年最好用?”這些”函式庫你都知道嗎?(4)

本系列文章為【2020年度十大Python函式庫-人工智慧 · 機器學習必備 】的最後一篇。上一篇介紹了 PyTorch 版的 Keras「PyTorch Lightening」讓你告別沒完沒了的 Debug!另外還有微軟出的 Hummingbird 讓你不用重新設計新模型;另外還有可以將高維度資料視覺化的「HiPlot」,請點此看下一篇

閱讀了解!

HiPlot

幾乎每個數據工程師都處理過高維度資料(High Dimensional)。可惜人類的腦容量有限,沒辦法直觀地處理此類資料,因此必須求助於科技來解決。

2020 年早些時候,Facebook 發布了 HiPlot函式庫,可以使用平行座標和其他圖形方式來表示信息,從而協助找出高維度資料中的關聯性和模式。他們在官網中說明了其概念,基本上,HiPlot 是一種將高維度資料視覺化以及過濾的便利方法。

 

Scalene

隨著 Python 的函式庫生態系統變得越來越複雜,我們也寫出越來越多 C 語言延伸的代碼以及多執行緒代碼。但是,CPython 內置的效能分析器(profiler)無法完整地處理多執行緒和本機代碼。

此時你需要 Scalene:Scalene 是用於 Python 腳本的 CPU 和記憶體的效能分析器(profiler),能夠完整地處理多執行緒代碼並區分運行 Python 和本機代碼所花費的時間。此時你無需修改代碼,只需要在命令行中使用 Scalene 運行腳本,腳本就會自動生成報告的文字檔或 HTML,顯示代碼中每一行的 CPU 和記憶體使用情況。

▲ Scalene 是用於 Python 腳本的 CPU 和記憶體的效能分析器,能處理多執行緒代碼並區分運行 Python 和本機代碼所花費的時間

 

同場加映:Norfair

選出去年十大 Python 函式庫的機器學習顧問公司 Tyrolabs 自家也開發了「影像內容分析 (Video content analysis)」的 Python 函式庫「Norfair」。

Norfair 是一個輕量的且可以被客製化的 Python 函式庫,用於即時物件追蹤(real-time object tracking):它可以在不同的影格當中,替每個被偵測到的物件賦予獨一無二的 ID,如此一來,你就能輕易辨識出這些物件——縱使它們都在移動。

▲ Norfair 可以在不同的影格當中,替每個被偵測到的物件(如圖中左側)
賦予獨一無二的 ID (如圖中右側)

 

藉由 Norfair,工程師只需要輸入幾行代碼就能賦予任何偵測器追蹤的功能——不管追蹤的物體是具有有四個參數的 bounding box(邊界框)、只有單一點的幾何中心(centroid)、還有人體姿態辨識系統的輸出(經常有多個關鍵點是大於特定閥值的)等任何物體。

此功能經常被用作計算兩個追蹤物體之間的距離,用戶可以依序需要定義檢測標準以及追縱的對象。

Norfair 是非常模塊化的 Python 函式庫,使用起來十分靈巧:工程師僅需使用幾行代碼,即可在現有的檢測代碼庫上添加追蹤的功能。

 

 

 

 

 

 

推薦文章:
用說的就能寫程式!人工智慧替手傷工程師開發語音程式工具


人工智慧能「聽咳嗽聲認出新冠患者」!成功率達 98.5%


Nature:語言天才比數學高手更適合學 Python!別在嘴文科生、女性不能寫程式了


Google 正測試人工智慧系統,助盲人和視障人士獨立參加路跑


連蛋白質折疊奧秘也能破解?!到底什麼是人工智慧辦不到?!(上)


科技時代,連另一半都可以人工智慧幫你做決定?!


人工智慧當起小當家?!備料到上菜完全一手包!!

榮登前十個神級好用的Python函式庫,你知道幾個?(3)

榮登前十個神級好用的Python函式庫,你知道幾個?(3)
榮登前十個神級好用的Python函式庫,你知道幾個?(3)

是哪10個Python函式庫榮登去年最好用?”這些”函式庫你都知道嗎?(3)

本系列文章為【2020年度十大Python函式庫-人工智慧 · 機器學習必備 】的第三篇。上一篇介紹了美化了 Python 錯誤信息的「Pretty Errors」,堪稱是療癒系的工程師的 debug 神器、還有「Diagrams」讓工程師不需要使用設計軟體,只要使用 Python 就能畫出美輪美奐的雲系統架構圖。請點此看上一篇閱讀了解 。

HydraOmegaConf:結構化複雜的機器學習項目

在機器學習項目中做研究與實驗時,總是有五花八門的環境配置工作。在這些非平凡(non-trivial)的應用程式中,配置管理也有可能會變得複雜。是否有結構化的方法來處理這種複雜性?

Hydra 可以藉由「組合」的方式來建構配置,並從命令列或 config 設定檔中覆蓋某些特定的部分,而加快了執行速度。

為了要說明 Hydra 函式庫可簡化一些特定的任務,tryolabs 舉了他們正在試驗的模型的基本架構以及它的多種變化為例。利用 Hydra,可以定義基本配置,然後運行多個工作並對其進行變化:

Hydra 的表親「OmegaConf」為分層配置系統的基礎提供了一致的 API,並支援不同的來源如 YAML、config 設定檔、物件與 CLI 參數。

PyTorch Lightning:PyTorch 版的 Keras,告別沒完沒了的 Debug

PyTorch 是一款熱門的的深度學習框架,可以用簡單的方式建構複雜的 AI 模型。但是當作大量實驗的時候,很多東西都會變得複雜過頭,代碼也隨之變得龐大,此時還是容易出錯。

於是,PyTorch Lightning 就是為了減少錯誤而誕生:它可以重構 PyTorch 代碼、抽出複雜重複的部分,讓工程師可以更專注於核心的建構、實驗也更快更便捷地開展迭代。

 

 

▲ PyTorch Lightning 可以重構 PyTorch 代碼、抽出複雜重複的部分,讓工程師可以更專注在研究代碼上

 

Lighting 的原理是藉由將研究代碼從重複性強的工程代碼區分開,讓工程師可以專注在研究代碼上,思緒就會更加清晰,整體代碼也更加簡潔清晰。

Hummingbird

並非所有的機器學習都是深度學習。通常,你的模型是由更多傳統的演算法在 Python 的機器學習套件 scikit-learn(像是 Random Forest)中組成;或者你也可以選擇時下流行的 LightGBM和 與 XGBoost 的梯度提升技術 (Gradient boosting)演算法。

然而,機器學習領域一直都在進步。像是上述的 PyTorch 框架正以令人屏息的速度在進步,硬體設備也不斷優化,以更低的耗能、更快的速度完成張量計算。假如我們能將這些優勢套用到傳統的演算法中,不是很好嗎?因此 Microsoft 就發布了新的 Python 函式庫「Hummimgbird」。

Hummingbird 可以將已經訓練好的傳統機器學習模型,編譯至張量計算。這個強大的功能讓你根本不用再設計新的模型!

截至目前為止,Hummingbird 支援轉換到 PyTorch、TorchScript、ONNX 與以及多種機器學習模型以及向量器。其實這跟上述提到的 scikit-learn(Sklearn)非常相似,讓你重複使用現有的代碼,但可將成品變成由 Hummingbird 生成的代碼。

 

下篇,我們即將介紹「Scalene」:用於 Python 腳本的 CPU 和記憶體的效能分析器(profiler),能完整地處理多執行緒代碼並區分運行 Python 和本機代碼所花費的時間,還有用於影像即時追蹤(real-time object tracking)的 「Norfair」,能及時抓住正在移動的人、事、物並賦予獨一無二的 ID。請點此看下一篇閱讀了解!

 

 

 

 

推薦文章:
人工智慧能「聽咳嗽聲認出新冠患者」!成功率達 98.5%


用說的就能寫程式!人工智慧替手傷工程師開發語音程式工具


Google 正測試人工智慧系統,助盲人和視障人士獨立參加路跑


Nature:語言天才比數學高手更適合學 Python!別在嘴文科生、女性不能寫程式了


敗血症黃金搶救期就靠人工智慧即時預測!


偵測速度快又精準?中研院開發人工智慧YOLOv4辦到了!(上)


怪物不會畫免緊張!靠人工智慧幫你輕鬆塗鴉變大師級奇幻插畫!

榮登前十個神級好用的Python函式庫,你知道幾個?(2)

榮登前十個神級好用的Python函式庫,你知道幾個?(2)
榮登前十個神級好用的Python函式庫,你知道幾個?(2)

是哪10個Python函式庫榮登去年最好用?”這些”函式庫你都知道嗎?(2)

本系列文章為【2020年度十大Python函式庫-人工智慧 · 機器學習必備 】的第二篇。上一篇介紹了把單調的「命令列介面」變花俏的 Python 函式庫:Typer、Rich 與 PyGui,除了可把命令列/終端機介面變彩色外,還可以加入表情符號與特效等。請點此看上一篇閱讀了解 。

PrettyErrors:將 Python 醜陋的 bug 信息變漂亮

Python已經算是十分言簡意賅的程式語言了,但是當有 bug 時,它的錯誤信息輸出(參見下圖左側)也是一樣會讓你懷疑人生!密密麻麻的代碼,讓你必須在毫無頭緒之下進行地毯式搜索!

▲PrettyErrors 函式庫將原本混亂的 Python 錯誤信息(箭頭左邊所示)重新排版得井然有序、顏色與段落都很分明(箭頭右邊所示)

 

經過 PrettyErrors 的重新排版,所有醜陋的錯誤信息都能變的井然有序,最後你得到的是經過排版美化、整齊劃一的 bug 報告,如上圖的右側所示。

Diagrams:只用 Python 就能繪製雲系統架構

程式設計師除了 coding 與 debug 外,有時還必須和其他的同事解釋錯綜復雜的架構。傳統上,我們會使用圖像介面(GUI) 工具來處理圖表、將其可視化後放入簡報、文件等,但是這並非唯一的方法。

Diagrams 可以讓你在沒有任何設計工具的狀況下,僅僅使用 Python 程式碼就能夠繪製出雲系統架構!它有現成的圖標,讓你能馬上對應AWS、Azure、GCP 等多個不同的雲端供應商,使得繪製箭頭、創建群組等都輕而易舉!只需幾行代碼就可以辦到!

▲ Diagram 函式庫能讓工程師僅僅使用 Python 代碼
就能繪製雲系統架構圖

 

下篇,我們即將介紹 PyTorch 版的 Keras「PyTorch Lightening」讓你告別沒完沒了的 Debug!另外還有微軟出的 Hummingbird 讓你不用重新設計新模型;另外還有可以將高維度資料視覺化的「HiPlot」,點此看下一篇閱讀了解!

 

 

 

推薦文章:
用說的就能寫程式!人工智慧替手傷工程師開發語音程式工具


Google 正測試人工智慧系統,助盲人和視障人士獨立參加路跑


人工智慧能「聽咳嗽聲認出新冠患者」!成功率達 98.5%


Nature:語言天才比數學高手更適合學 Python!別在嘴文科生、女性不能寫程式了


科幻迷的最愛電影竟然和Python跟Java扯上關係?!(上)


蛋白質折疊背後的秘密竟被人工智慧輕易破解?!(上)


人工智慧面試官,打破求職歧視環境!!(上)

榮登前十個神級好用的Python函式庫,你知道幾個?(1)

榮登前十個神級好用的Python函式庫,你知道幾個?(1)
榮登前十個神級好用的Python函式庫,你知道幾個?(1)

是哪10個Python函式庫榮登去年最好用?”這些”函式庫你都知道嗎?(1)

國外的機器學習與資料科學顧問公司「Tyrolabs」每年底都會選出年度十大最強 Python 函式庫。去年(2020)年尾不例外。

根據 Tyrolabs 提出的免責聲明,2020 年他們在精選出 10 大函式庫時,在很大程度上是受到機器學習與數據科學的影響——儘管其中有幾個確實對「非」數據科學的人士非常有用。

因此,除了 10 個入選的 Python 函式庫之外,他們決定在從遺珠之憾中,挑出幾個他們覺得同樣重要的數據庫,列入「榮譽表揚(Honorable mentions)」的部分。

以下為入選的十大 Python 函式庫:

Typer:讓命令列介面更好編輯

雖然你並不總是需要編寫沒有圖像、滿滿文字的 CLI(命令列介面)應用程式,但是一但遇到了,一定會十分希望能速戰速決、無後顧之憂。FastAPI 的創作者「tiangolo」繼之前的 FastAPI 框架取得巨大的成功後,使用了相同的原理創作了新的函式庫 「Typer」,使你可以借力於 3.6 以上版本的 Python 才有的「類型提示(Type Hinting)」功能來編寫命令行介面。

這樣的設計讓 Typer 脫穎而出。藉由「類型提示(Type Hinting)」功能,您可以在 Python 編輯器(如 VSCode)中享有「自動完成」功能,這將大大提高您的工作效率;除了能確保所寫的程式碼是否完整被紀錄之外,你也可以花最少的力氣寫出純文字的 CLI 命令列介面的應用程式。

▲ Typer 賦予 Python 編輯器(圖中為 VSCode)「自動完成」的功能,能有效提升寫程式的效率。(圖:FastAPI)

 

為了增強其功能,Typer 被建立在知名的「命令列神器」Click 之上。這意味著 Typer 可以充分利用 Click 既有的所有優點、社群與插件,使用更簡潔的樣版代碼,並依據所需,進行更複雜的工作。

Rich:讓命令列介面從黑白變彩色

依循命令行介面 CLI 的主題,誰說終端應用程式必須是單色的白色、或是駭客電影中常見的黑色、綠色呢?太無聊了!

身為 Python 工程師的你,是否會想再終端輸出時添加色彩與樣式,就像是在打印複雜的表格時加入心跳特效、毫不費力地展示漂亮的進度條、markdown 或是表情符號?Rich 函式庫可以實現上述特效,如以下所示:

▲ Rich 函式庫能讓單色的命令列介面(CLI)變彩色,還能有多種視覺特效、表情符號等。

 

無庸置疑的,Rich 可讓命令列字元的應用程式,外觀換然一新,給人的視覺上體驗。

Dear PyGui:賦予終端機程式真正的圖像化介面

藉由 Rich 函式庫,終端應用程式變漂亮了,但是有時這樣的美化還不夠,你甚至會需要一個新的 GUI 圖形介面。此時你需要 Dear PyGui——一款 Dear ImGui C++ 計畫的 Python 接口。

Dear PyGui 使用了在電玩中最常使用的即時模式(immediate mode),這代表著動態 GUI 是一個影格(frame)接著另一個影格獨立繪製的,不需保留任何資料。這使得「Dear PyGui」與其他 Python GUI 框架有所區別。它不僅具有高性能,而且使用電腦的 GPU 來促成高度動態界面的構建,這在工程、模擬、遊戲及資料科學的應用程式可說是經常被需要的。

 

▲ Dear PyGui 套用了電玩常用的即時模式,能賦予終端機程式真正的圖像化介面

 

本篇介紹均為把單調的「命令列介面」變漂亮的 Python 函式庫。若 Python 的錯誤信息也能這樣美化的話,工程師在 debug 時就不會這麼痛苦了!沒錯,「PrettyErrors」就是為這一目的而生。請點此看下一篇,閱讀了解!另外還有只用 Python 就能繪製雲系統架構的「Diagrams」、還有可將複雜的機器學習項目「結構化」的「Hydra 與 OmegaConf」,請不要錯過!

 

 

 

 

 

推薦文章:
人工智慧能「聽咳嗽聲認出新冠患者」!成功率達 98.5%


用說的就能寫程式!人工智慧替手傷工程師開發語音程式工具


Google 正測試人工智慧系統,助盲人和視障人士獨立參加路跑


Nature:語言天才比數學高手更適合學 Python!別在嘴文科生、女性不能寫程式了


人工智慧當起媒人婆?!讓你不再寂寞空虛冷!


蛋白質折疊背後的秘密竟被人工智慧輕易破解?!(上)


最夯程式語言Python和Java竟也跑進科幻電影?(上)

程式設計師專屬交友app,今年脫單不是夢!!(下)

程式設計師專屬交友app,今年脫單不是夢!!(下)
程式設計師專屬交友app,今年脫單不是夢!!(下)

沒想到竟然有一個專為程式設計師設計的交友app耶?!今年脫單就靠它了!!(下)

本系列文章為【秀程式設計也能交女友!工程師專屬交友App:VSinder 】的下篇,請點此看上篇閱讀了解 VSinder 是如何誕生的、能支援哪些程式語言吧!

上傳最得意的程式設計,吸引志同道合的另一半!

基本資料都選填好後,接著就是重頭戲了──上傳一段你最滿意、最自豪的程式設計

▲ VSinder,重要的不是外貌,而是你寫的 code|Source:Ben Awad 影片截圖

 

在 Code Pics 一欄可以上傳你最得意的作品,畢竟就算使用同一種程式語言(PythonJava等等),能力也有高低之分,coding 能力才是工程師真正的臉面啊!曬出自己最棒的一面,同時也能吸引到彼此欣賞的人,透過左右滑動來開啟一段與另一位工程師的緣分,聽起來也是十分浪漫呢。

假如有想要深入對談的對象,可以按下「愛心」,並期待對方也按下愛心;按「X」就會換下一位,當然也有檢舉不當濫用的選項——其實介面和 Tinder 的設計沒有太大的區別,只是用能直接了解一個人「內在美」的程式設計碼取代了修圖後的美照。如此一來,想必更能讓你找到適合的那個人,畢竟美麗的皮囊千篇一律、有趣的靈魂萬中挑一啊!

3天下載次數破萬 程式設計交友正夯

VSinder 一上線,就快速贏得程式設計師們的熱烈回應,在 GitHub 上有超過 1500 個收藏,3 天的下載量就快要一萬次。

這個平台的發想其實相當有新意,讓擁有共同專業的人們相互認識,雙方有足以開啟話題的相似之處。有共同的專業,也代表有類似的生活型態,聊天就不用擔心會冷場了!

伴侶可以了解自己的專業(如程式語言:Python或是Java等),甚至能相互勉勵、彼此學習,一起攜手進步,也是相當美好的事情。當然後續可以相伴多遠、走多久就是各自的緣分了,不過有這樣的一個平台,還是讓許多程式設計師感到驚喜。

這款新奇的交友軟體,使用過的網友留下評論道:「這個 app 不僅可以過濾出有共同點的人,還能以幽默的方式表達自己的怪癖和智慧,太棒了!」、「雖然沒有找到另一半,但我在這個app上渡過了快樂的時光。幹得好」、「希望能找到我未來的妻子」。

但也有網友大喊:「這個平台上基本上都是男的啊!」

▲ 雖然 VSinder 大受好評,但仍有網友抱怨上面的用戶都是男性

 

有一則評論表示,他滑了將近半個小時,卻都沒有遇到一個單身女工程師……。只能說,雖然 VSinder 提出了一個新興的想法,也付諸實踐,努力讓工程師們可以彼此相遇,但這個產業相距頗大的性別比例,也是一個 app 沒辦法改變的啊!

推薦閱讀:

 

 

 

 

 

 

 

推薦文章:
用說的就能寫程式!人工智慧替手傷工程師開發語音程式工具


Google 正測試人工智慧系統,助盲人和視障人士獨立參加路跑


Nature:語言天才比數學高手更適合學 Python!別在嘴文科生、女性不能寫程式了


人工智慧能「聽咳嗽聲認出新冠患者」!成功率達 98.5%


醫療大轉型,結合人工智慧,輕鬆預防糖尿病患失明(上)


五部科幻電影,你能找到Python和Java在哪嗎?(上)


人工智慧合成喵星人,結果卻讓貓奴笑到噴飯!

程式設計師專屬交友app,今年脫單不是夢!!(上)

程式設計師專屬交友app,今年脫單不是夢!!(上)
程式設計師專屬交友app,今年脫單不是夢!!(上)

沒想到竟然有一個專為程式設計師設計的交友app耶?!今年脫單就靠它了!!(上)


▲ 交友 APP 示意圖|Photo by Markus Winkler / Unsplash
 

不需露臉,秀程式設計就好!工程師專屬交友軟體 VSinder

隨著科技的快速發展,都會男女們的交友早已不只侷限於現實,許多工作忙碌、生活圈有限的上班族都會使用交友軟體,在線上聊天、互動,最後發展到現實世界進一步「脫單」。

只是,包括全球最知名交友 APP「Tinder」在內,此類軟體都需要使用者 先上傳照片,而且外貌必須要足夠吸引人才有機會被「往右滑」、才有機會開始聊天;接著又需要在短時間內展露風趣幽默、能言善道的口才,讓人覺得很好聊……接連的關卡,實在是苦了一群木訥的程式設計師們啊!

好家在,近來有一位美國工程師將程式碼編輯器「VS Code」改造成一款方便工程師一展長才的交友平台「VSinder」!

23歲程式設計者 妙用VS Code打造工程師專屬交友App

VS Code 是 Microsoft 推出的一套整合式開發工具,支援 Windows、Linux 和 macOS 等系統,因其開源、持續開發、豐富的套件支援等等特性,被認為是最受程式設計者歡迎的開發環境之一呢。

近日,一位名叫 Ben Awad 的 23 歲開發者以其為基底,改造出一款讓程式設計師能在線上進行社交的平台「VSinder」。

▲ 開發者 Ben Awad 上傳影片介紹他開發的「VSCode Tinder」。

 

VSinder 以擴展的形式在 VS Code Marketplace 裡面上架,可供直接下載安裝,並支援使用 GitHub 帳號登入;除了電腦版之外,也在 Android 與 iOS 兩大平台上架,方便大家以用手機使用。

「VSinder」這個名稱是 VS Code、Tinder 組合而來,但與 Tinder 不同的是,在 VSinder 重要的並不是你的長相如何,而是你 coding 的能力!VSinder 支援的程式語言包含時下熱門的 Python、Java、Swift 之外,還有 Angular、C、C#、Cpp、Dart、Flutter、Go、Kotlin、React、Vue 等 13 種程式語言。

推薦閱讀:

除了年齡、性別,VSinder還可篩選Python、Java等13種程式語言的另一半!

當然,程式語言的世界可以說是十分廣闊的,想從茫茫人海中找出同樣跟自己一樣愛用 Python 或是Java的那個她?沒問題,VSinder 除了篩選性別、年齡、地點之外,也可以設定想找擅長哪種程式語言的對象。想學 Python?那就找個 Python 超強的另一半吧!

▲ VSinder 最大的特色就是可以用程式語言來篩選對象。|Source:Ben Awad 影片截圖

將自己最得意的程式設計作品上傳,就能吸引到志同道合的另一半!但是仍有一個隱憂⋯⋯?請點此接續看下去!

 

 

 

 

 

推薦文章:
用說的就能寫程式!人工智慧替手傷工程師開發語音程式工具


Google 正測試人工智慧系統,助盲人和視障人士獨立參加路跑


人工智慧能「聽咳嗽聲認出新冠患者」!成功率達 98.5%


Nature:語言天才比數學高手更適合學 Python!別在嘴文科生、女性不能寫程式了


人工智慧自駕車也搞駕訓班?讓你安全上路有保障!


記者工作不保了?!人工智慧撰文能力比人強?!(上)


控制結構學不會?Python大師有妙招(4)-運算子優先順序