JavaScript中七種流行的開源機(jī)器學(xué)習(xí)框架
如果你是一位想要深入機(jī)器學(xué)習(xí)的 JavaScript 程序員或想成為一位使用 JavaScript 的機(jī)器學(xué)習(xí)專家,那么這些開源框架也許會(huì)吸引你。
開源工具的涌現(xiàn)使得開發(fā)者能夠更加輕松地開發(fā)應(yīng)用,這一點(diǎn)使機(jī)器學(xué)習(xí)領(lǐng)域本身獲得了極大增長(zhǎng)。(例如,AndreyBu,他來(lái)自德國(guó),在機(jī)器學(xué)習(xí)領(lǐng)域擁有五年以上的經(jīng)驗(yàn),他一直在使用各種各樣的開源框架來(lái)創(chuàng)造富有魅力的機(jī)器學(xué)習(xí)項(xiàng)目。)
雖然 Python 是絕大多數(shù)的機(jī)器學(xué)習(xí)框架所采用的語(yǔ)言,但是 JavaScript 也并沒有被拋下。JavaScript 開發(fā)者可以在瀏覽器中使用各種框架來(lái)訓(xùn)練和部署機(jī)器學(xué)習(xí)模型。
1、TensorFlow.js
TensorFlow.js 是一個(gè)開源庫(kù),它使你能在瀏覽器中完整地運(yùn)行機(jī)器學(xué)習(xí)程序,它是 Deeplearn.js 的繼承者,Deeplearn.js 不再更新了。TensorFlow.js 在 Deeplearn.js 功能的基礎(chǔ)上進(jìn)行了改善,使你能夠充分利用瀏覽器,得到更加深入的機(jī)器學(xué)習(xí)經(jīng)驗(yàn)。
通過(guò)這個(gè)開源庫(kù),你可以在瀏覽器中使用有各種功能的、直觀的 API 來(lái)定義、訓(xùn)練和部署模型。除此之外,它自動(dòng)提供 WebGL 和 Node.js 的支持。
如果您有了一個(gè)已經(jīng)訓(xùn)練過(guò)的模型,你想要導(dǎo)入到瀏覽器中。TensorFlow.js 可以讓你做到這一點(diǎn),你也可以在不離開瀏覽器的情況下重新訓(xùn)練已有的模型。
2、Machine learning tools
現(xiàn)在有很多在瀏覽器中提供廣泛的機(jī)器學(xué)習(xí)功能的資源型開源工具,這個(gè)機(jī)器學(xué)習(xí)工具庫(kù)就是這些開源工具的集合。這個(gè)工具庫(kù)為好幾種機(jī)器學(xué)習(xí)算法提供支持,包括非監(jiān)督式學(xué)習(xí)、監(jiān)督式學(xué)習(xí)、數(shù)據(jù)處理、人工神經(jīng)網(wǎng)絡(luò)(ANN)、數(shù)學(xué)和回歸。
如果你以前使用 Python,現(xiàn)在想找類似于 Scikit-learn 的,能在瀏覽器中使用 JavaScript 進(jìn)行機(jī)器學(xué)習(xí)的工具,這套工具會(huì)滿足你的要求。
3、Keras.js
Keras.js 是另外一個(gè)熱門的開源框架,它使你能夠在瀏覽器中運(yùn)行機(jī)器學(xué)習(xí)模型,它使用 WebGL 來(lái)提供 GPU 模式的支持。如果你有使用 Node.js 的模型,你就只能在 GPU 模式下運(yùn)行它。Keras.js 還為使用任意后端框架的模型訓(xùn)練提供支持,例如 Microsoft Cognitive Toolkit (CNTK) 。
一些 Keras 模型可以部署在客戶端瀏覽器上,包括 Inception v3 (訓(xùn)練在 ImageNet 上),50 層冗余網(wǎng)絡(luò)(訓(xùn)練在 ImageNet 上),和卷積變化自動(dòng)編碼器(訓(xùn)練在 MNIST 上)。
4、Brain.js
機(jī)器學(xué)習(xí)里的概念非常重要,它可能會(huì)使剛開始進(jìn)入這個(gè)領(lǐng)域的人們氣餒,這個(gè)領(lǐng)域里的學(xué)術(shù)用語(yǔ)和專業(yè)詞匯可能會(huì)使初學(xué)者感到崩潰,而解決以上問(wèn)題的能力就是 Brain.js 的優(yōu)勢(shì)所在。它是開源的,基于 JavaScript 的框架,簡(jiǎn)化了定義、訓(xùn)練和運(yùn)行神經(jīng)網(wǎng)絡(luò)的流程。
如果你是一個(gè) JavaScript 開發(fā)者,并且在機(jī)器學(xué)習(xí)領(lǐng)域是完全的新手,Brain.js 能減低你學(xué)習(xí)的難度曲線。它可以和 Node.js 一起使用,或者運(yùn)行在客戶端瀏覽器里來(lái)訓(xùn)練機(jī)器學(xué)習(xí)模型。Brain.js 支持部分類型的神經(jīng)網(wǎng)絡(luò),包括前饋式網(wǎng)絡(luò)、Ellman 網(wǎng)絡(luò),和門循環(huán)單元網(wǎng)絡(luò)。
5、Synaptic.js
Synaptic 可以運(yùn)行在瀏覽器和 NodeJs 服務(wù)器端的神經(jīng)網(wǎng)絡(luò)庫(kù),你能夠用它訓(xùn)練一層甚至是二層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。該庫(kù)包括一些內(nèi)置的體系結(jié)構(gòu),如多層感知機(jī)(MLP)、長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)、液體狀態(tài)機(jī)和能夠訓(xùn)練真實(shí)網(wǎng)絡(luò)的訓(xùn)練器。
6、compromise
基本上是NLP自然語(yǔ)言處理庫(kù) - 前端 Java 實(shí)現(xiàn)的首選,這個(gè)庫(kù)加上自己的資料庫(kù)壓縮成min.js后文件大小可達(dá)到300k以下,這樣運(yùn)行在瀏覽器和 NodeJs 服務(wù)器端都問(wèn)題不大,具體可以做的東西是訓(xùn)練自定義語(yǔ)義庫(kù):劃分出分詞,獲取句子的各個(gè)詞性,可以把句子變積極消極、分詞等.
7、STDLib
STDLib 是一個(gè)基于 JavaScript 和 Node.js 應(yīng)用的開源庫(kù),如果您正在尋找一種在瀏覽器中運(yùn)行,支持科學(xué)和數(shù)字化的基于 web 的機(jī)器學(xué)習(xí)應(yīng)用,STDLib 能滿足你的需要。
這個(gè)庫(kù)能提供全面而先進(jìn)的數(shù)學(xué)和統(tǒng)計(jì)學(xué)上的功能,來(lái)幫助你構(gòu)建高性能的機(jī)器學(xué)習(xí)模型。你同樣也可以使用它豐富的功能來(lái)構(gòu)建應(yīng)用程序和其他的庫(kù)。除此之外,如果你想要一個(gè)數(shù)據(jù)可視化和探索性數(shù)據(jù)分析的框架 —— STDLib 你,值得擁有。
如果你是一個(gè) JavaScript 開發(fā)者,并且打算深入研究令人興奮的機(jī)器學(xué)習(xí)世界,或者說(shuō),你是一個(gè)機(jī)器學(xué)習(xí)方面的專家,打算開始嘗試使用 JavaScript ,那么上述的開源框架會(huì)激起您的興趣。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
- python機(jī)器學(xué)習(xí)庫(kù)xgboost的使用
- python機(jī)器學(xué)習(xí)實(shí)現(xiàn)決策樹
- python 機(jī)器學(xué)習(xí)之支持向量機(jī)非線性回歸SVR模型
- python機(jī)器學(xué)習(xí)庫(kù)scikit-learn:SVR的基本應(yīng)用
- 機(jī)器學(xué)習(xí)實(shí)戰(zhàn)之knn算法pandas
- python機(jī)器學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)
- python機(jī)器學(xué)習(xí)之KNN分類算法
- Python機(jī)器學(xué)習(xí)k-近鄰算法(K Nearest Neighbor)實(shí)例詳解
- python適合人工智能的理由和優(yōu)勢(shì)
- 人工智能(AI)首選Python的原因解析
- 為何人工智能(AI)首選Python?讀完這篇文章你就知道了(推薦)
- 人工智能學(xué)習(xí)路線分享
- AI人工智能 Python實(shí)現(xiàn)人機(jī)對(duì)話
- 人工智能機(jī)器學(xué)習(xí)常用算法總結(jié)及各個(gè)常用算法精確率對(duì)比
相關(guān)文章
umi插件開發(fā)仿dumi項(xiàng)目自動(dòng)生成導(dǎo)航欄實(shí)現(xiàn)詳解
這篇文章主要為大家介紹了umi插件開發(fā)仿dumi項(xiàng)目自動(dòng)生成導(dǎo)航欄實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
微信小程序 動(dòng)態(tài)綁定事件并實(shí)現(xiàn)事件修改樣式
這篇文章主要介紹了微信小程序 動(dòng)態(tài)綁定事件并實(shí)現(xiàn)事件修改樣式的相關(guān)資料,需要的朋友可以參考下2017-04-04
微信小程序 數(shù)據(jù)交互與渲染實(shí)例詳解
這篇文章主要介紹了微信小程序 數(shù)據(jù)交互與渲染實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-01-01
微信小程序中頁(yè)面FOR循環(huán)和嵌套循環(huán)
這篇文章主要介紹了微信小程序中頁(yè)面FOR循環(huán)和嵌套循環(huán)的相關(guān)資料,需要的朋友可以參考下2017-06-06
js實(shí)現(xiàn)兔年轉(zhuǎn)圈圈動(dòng)畫示例
這篇文章主要為大家介紹了js實(shí)現(xiàn)兔年轉(zhuǎn)圈圈動(dòng)畫示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
微信小程序 跳轉(zhuǎn)傳遞數(shù)據(jù)的實(shí)例
這篇文章主要介紹了微信小程序 跳轉(zhuǎn)傳遞數(shù)據(jù)的實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-07-07
JavaScript?執(zhí)行上下文的視角詳解this使用
這篇文章主要為以JavaScript?執(zhí)行上下文的視角為大家講清楚?this使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02

