8月Github上7個值得關(guān)注的數(shù)據(jù)科學(xué)項目
2020-01-15 來源:raincent


來源: 讀芯術(shù)
準(zhǔn)備好在機器學(xué)習(xí)之路上再邁出一大步了嗎?使用試驗性數(shù)據(jù)集、流行的數(shù)據(jù)科學(xué)庫和框架是個好的開始,但如果想在競爭中脫穎而出,必須有所突破,使自己與眾不同。
最佳途徑就是運用數(shù)據(jù)科學(xué)領(lǐng)域最新技術(shù)完成項目。想成為計算機視覺領(lǐng)域的專家嗎?那就去學(xué)習(xí)最先進的目標(biāo)檢測算法。如果希望在自然語言處理(NLP)方面有所建樹,那就學(xué)習(xí)Transformer模型的各種特性和分支。
重點是,要一直有所準(zhǔn)備并樂于鉆研最新的數(shù)據(jù)科學(xué)技術(shù)。數(shù)據(jù)科學(xué)是發(fā)展最快的領(lǐng)域之一,作為數(shù)據(jù)科學(xué)家的我們也需要不斷學(xué)習(xí)成長。
本文帶你來看看GitHub上創(chuàng)建于2019年8月的7個數(shù)據(jù)科學(xué)項目。筆者所選項目的范圍十分廣泛,涉及從機器學(xué)習(xí)到強化學(xué)習(xí)的諸多領(lǐng)域。
本文將這些數(shù)據(jù)科學(xué)項目分為三大類:
• 機器學(xué)習(xí)項目
• 深度學(xué)習(xí)項目
• 編程項目
機器學(xué)習(xí)項目
pyforest——用一行代碼導(dǎo)入所有Python數(shù)據(jù)科學(xué)庫
https://github.com/8080labs/pyforest
筆者非常喜歡這個Python庫。正如標(biāo)題所述,所有常用的數(shù)據(jù)科學(xué)庫都可以通過一個pyforest庫導(dǎo)入?纯垂P者從該庫的Github倉庫中摘錄的示例:

激動了嗎?Pyforest目前包括pandas、NumPy、matplotlib等數(shù)據(jù)科學(xué)庫。
只需調(diào)用pip install pyforest這一指令在機器上安裝該庫,就能用一行代碼導(dǎo)入所有流行的Python數(shù)據(jù)科學(xué)庫。
from pyforest import *
太神奇了!你一定也會像筆者這樣享受使用它的過程。
HungaBunga – 另一種使用sklearn庫搭建機器學(xué)習(xí)模型的方式
https://github.com/ypeleg/HungaBunga
如何從搭建好的機器學(xué)習(xí)模型中選出最合適的那一個?如何確保發(fā)揮作用的是正確的超參數(shù)?這些都是數(shù)據(jù)科學(xué)家需要解答的關(guān)鍵問題。
相較于其他大多數(shù)數(shù)據(jù)庫,HungaBunga項目能讓用戶更快地找到答案。它會利用所有可能的超參數(shù)來運行sklearn庫中的所有模型(是的,所有!),隨后通過交叉驗證對模型進行排序。

下面是導(dǎo)入所有模型(包括分類模型和回歸模型)的方式:
from hunga_bunga import HungaBungaClassifier, HungaBungaRegressor
看看下面這篇全面討論了監(jiān)督機器學(xué)習(xí)算法的文章:
• 常用的機器學(xué)習(xí)算法(使用Python和R語言)
https://www.analyticsvidhya.com/blog/2017/09/common-machine-learning-algorithms/?utm_source=blog&utm_medium=7-data-science-projects-github-showcase-your-skills
深度學(xué)習(xí)項目
DeepMind發(fā)布的用于強化學(xué)習(xí)的Behavior Suite(bsuite)
https://github.com/deepmind/bsuite

最近Deepmind連年增長的巨額虧損成了新聞。但是必須承認(rèn),這家公司在強化學(xué)習(xí)研究方面仍遙遙領(lǐng)先。他們在這一領(lǐng)域投入大量人力物力,認(rèn)為強化學(xué)習(xí)是人工智能的未來。
下面介紹他們最新的開源產(chǎn)品——bsuite。這一項目集合了許多實驗的成果,這些實驗旨在理解強化學(xué)習(xí)對象的核心性能。
筆者喜歡這一研究領(lǐng)域,因為它必然會努力達(dá)成兩個目的(每個Github倉庫達(dá)成一個):
• 收集有價值且可推廣運用的項目,這些項目會捕捉到在設(shè)計高效通用的機器學(xué)習(xí)算法時遇到的關(guān)鍵問題。
• 以通用尺度為標(biāo)準(zhǔn),通過對象的表現(xiàn)研究其行為。
這個Github倉庫詳細(xì)解釋bsuite的使用方式。可以通過下面的代碼安裝它:
pip install git+git://github.com/deepmind/bsuite.git
如果你是強化學(xué)習(xí)領(lǐng)域的新手,可以看看下面這些入門文章:
•強化學(xué)習(xí)及實現(xiàn)入門教程
https://www.analyticsvidhya.com/blog/2017/01/introduction-to-reinforcement-learning-implementation/?utm_source=blog&utm_medium=7-data-science-projects-github-showcase-your-skills
•使用Python中的OpenAI Gym進行深度Q學(xué)習(xí)的簡介
https://www.analyticsvidhya.com/blog/2019/04/introduction-deep-q-learning-python/?utm_source=blog&utm_medium=7-data-science-projects-github-showcase-your-skills
DistilBERT –一個更輕、更便宜的BERT
https://github.com/huggingface/pytorch-transformers/tree/master/examples/distillation
讀者肯定聽說過BERT。它基于Transformer架構(gòu),是自然語言處理(NLP)領(lǐng)域最流行的框架,并且正被越來越廣泛地應(yīng)用。
但是注意:運行它可能需要大量的資源。那么數(shù)據(jù)科學(xué)家該如何在自己的機器上運行BERT呢?更進一步,使用DistilBERT!

DistilBERT是Distillated-BERT的略稱,由PyTorch轉(zhuǎn)換框架團隊開發(fā)。它是在BERT架構(gòu)基礎(chǔ)上搭建的一個小型且便宜的Transformer模型。開發(fā)團隊稱DistilBERT比BERT運行速度快60%,而性能與BERT相差不到5%。
這一Github倉庫講述了DistilBERT和Python代碼協(xié)同工作的方式?梢渣c擊下方鏈接了解更多有關(guān)PyTorch-Transformers框架及其在python中的使用方法。
•Pytorch-Transformers簡介:一個非常神奇的NLP庫(借助Python代碼)
https://www.analyticsvidhya.com/blog/2019/07/pytorch-transformers-nlp-python/?utm_source=blog&utm_medium=7-data-science-projects-github-showcase-your-skills
ShuffleNet Series ——一個極其高效、用于移動設(shè)備的卷積神經(jīng)網(wǎng)絡(luò)
https://github.com/megvii-model/ShuffleNet-Series
接下來介紹的是計算機視覺項目!ShuffleNet是一個計算效率極高的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu),適用于計算力有限的移動設(shè)備。

這個Github倉庫包含了以下ShuffleNet模型(對,不止一個):
•ShuffleNet: 一個極其高效、用于移動設(shè)備的卷積神經(jīng)網(wǎng)絡(luò)
•ShuffleNetV2: 高效CNN架構(gòu)設(shè)計的實用建議
•ShuffleNetV2+: ShuffleNetV2的強化版本
•ShuffleNetV2.Large: ShuffleNetV2的深化版本
•OneShot: 通過均勻抽樣進行單通路單樣本神經(jīng)架構(gòu)的研究
•DetNAS: 目標(biāo)檢測技術(shù)的支撐性研究
想要理解CNN嗎?下文會幫助你:
• 一篇通過Scratch學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)的全方位指南
https://www.analyticsvidhya.com/blog/2018/12/guide-convolutional-neural-network-cnn/?utm_source=blog&utm_medium=7-data-science-projects-github-showcase-your-skills
RAdam –提高學(xué)習(xí)率方差
https://github.com/LiyuanLucasLiu/RAdam
目前,發(fā)布時間不到兩周的RAdam項目已經(jīng)得到了1200多顆星星的評價。足以證明這個倉庫非常給力!
RAdam的開發(fā)者在其論文中(https://arxiv.org/pdf/1908.03265.pdf)表明,深度學(xué)習(xí)技術(shù)的收斂問題是由于在模型訓(xùn)練的早期階段,自適應(yīng)學(xué)習(xí)率的方差過大。
RAdam是Adam的一個新版本,可以修正自適應(yīng)學(xué)習(xí)率的變化。這個版本在普通的Adam優(yōu)化器基礎(chǔ)上做出了切實改進,改善了方差問題。
處理不同學(xué)習(xí)率時RAdam的表現(xiàn)與Adam和SGD的對比如下(X軸代表訓(xùn)練輪數(shù)):

一定要查閱下面關(guān)于機器學(xué)習(xí)優(yōu)化的指南(其中包含Adam的相關(guān)內(nèi)容):
•機器學(xué)習(xí)中的梯度下降算法(和變量類型)簡介
https://www.analyticsvidhya.com/blog/2017/03/introduction-to-gradient-descent-algorithm-along-its-variants/?utm_source=blog&utm_medium=7-data-science-projects-github-showcase-your-skills
編程項目
ggtext –用于ggplot2的升級版文本渲染
https://github.com/clauswilke/ggtext
對于社區(qū)中的所有R語言用戶,尤其對于那些經(jīng)常使用ggplot2包的用戶(幾乎每個人),這個項目會非常實用。

Ggtext包讓用戶能夠?qū)ι傻膱D像進行富文本渲染。下面是一些可以通過ggtext完成的操作:
•產(chǎn)生一個新的名為element_markdown()的主題元素,它能將文本渲染為markdown語言或者HTML
•在坐標(biāo)軸中插入圖像(如下圖所示)
•使用geom_richtext()函數(shù)創(chuàng)建markdown/HTML標(biāo)簽(如下圖所示)

這個GitHub倉庫包含了一些直觀的例子,讀者可以在自己的機器上重復(fù)這些示例。
Ggtext目前還不能通過CRAN調(diào)用,用戶需要下載并通過下面的指令從GitHub安裝它:
devtools::install_github("clauswilke/ggtext")
想要更多了解ggplot2以及用R語言處理交互式圖表的方法嗎?傳送門:
•R語言用戶使用ggplot2包時的十個常見問題
https://www.analyticsvidhya.com/blog/2016/03/questions-ggplot2-package-r/?utm_source=blog&utm_medium=7-data-science-projects-github-showcase-your-skills
•如何用R繪制動態(tài)圖片分析健康數(shù)據(jù)(你也可以做到!)
https://www.analyticsvidhya.com/blog/2019/04/how-built-personalized-interactive-fitness-tracker-dashboard-r/?utm_source=blog&utm_medium=7-data-science-projects-github-showcase-your-skills
標(biāo)簽: 數(shù)據(jù) 蒲
版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。