【譯】10個 JavaScript 中的機(jī)器學(xué)習(xí)實例

原文:10個 JavaScript 中的機(jī)器學(xué)習(xí)實例
作者: Danny Markov

image

近幾年,機(jī)器學(xué)習(xí)庫發(fā)展的得越來越快磕蛇,也變得越來越易用景描,而且并沒有顯示出放緩的跡象。 雖然傳統(tǒng)上 Python 一直是機(jī)器學(xué)習(xí)的首選語言秀撇,但現(xiàn)在神經(jīng)網(wǎng)絡(luò)可以運(yùn)行在任何語言中超棺,包括 JavaScript

網(wǎng)絡(luò)生態(tài)系統(tǒng)近年來已經(jīng)取得了很大的進(jìn)步,盡管 JavaScript 和 Node.js 的性能仍然不如 Python 和 Java呵燕,但它們現(xiàn)在已經(jīng)足夠強(qiáng)大棠绘,可以處理許多機(jī)器學(xué)習(xí)問題。 Web 語言還具有“超級可訪問性”的優(yōu)點——運(yùn)行一個 JavaScript ML 項目所需要的只是 Web 瀏覽器再扭。

大多數(shù) JavaScript 機(jī)器學(xué)習(xí)庫都是相當(dāng)新的氧苍,并且仍在開發(fā)中,但是它們確實存在等待你的嘗試泛范。 在這篇文章中让虐,我們將對其中的一些庫進(jìn)行初探,并展示一些很酷的人工智能網(wǎng)絡(luò)應(yīng)用程序的例子罢荡,來幫助你開始你的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)之路赡突。

1. Brain

Brain是一個可以讓你輕松地搭建一個神經(jīng)網(wǎng)絡(luò),并根據(jù)輸入 / 輸出數(shù)據(jù)訓(xùn)練這個網(wǎng)絡(luò)区赵。 由于訓(xùn)練占用了大量資源惭缰,所以最好在 Node.js 環(huán)境中運(yùn)行庫,盡管 CDN 瀏覽器版本也可以直接加載到網(wǎng)頁上笼才。 在他們的網(wǎng)站上有一個小demo 漱受,可以訓(xùn)練識別顏色的對比度。

image

2. Deep playground

教育網(wǎng)絡(luò)應(yīng)用程序骡送,可以讓你體驗神經(jīng)網(wǎng)絡(luò)昂羡,并探索其中不同的組件絮记。 它的 UI非常棒,允許您控制輸入數(shù)據(jù)紧憾、神經(jīng)元數(shù)量到千、要使用的算法,以及各種其他會對結(jié)果產(chǎn)生影響的參數(shù)赴穗。 這款應(yīng)用程序背后還有很多值得我們學(xué)習(xí)的地方——它的代碼是開源的憔四,并且使用了一個自定義的機(jī)器學(xué)習(xí)庫,這個庫是用TypeScript編寫的般眉,并且有完善的文檔了赵。

3. FlappyLearning

是一個 JavaScript 項目,在大約800行的無壓縮代碼中創(chuàng)建了一個機(jī)器學(xué)習(xí)庫甸赃,并在一個有趣的演示中實現(xiàn)它柿汛,學(xué)會像一個演奏家一樣玩 Flappy Bird 。 這個庫使用的人工智能技術(shù)被稱為Neuroevolution 埠对,它使用的算法靈感來源于自然界中神經(jīng)系統(tǒng)络断,從每次迭代的成功或者失敗中動態(tài)地學(xué)習(xí)經(jīng)驗。 這個演示程序非常容易運(yùn)行——只需在瀏覽器中打開index.html即可项玛。

image.png

Synaptic

這可能是本文列舉的項目中最活躍的一個貌笨,Synaptic 是一個Node.js和瀏覽器庫,它與框架無關(guān)襟沮,允許開發(fā)者構(gòu)建他們想要的任何類型的神經(jīng)網(wǎng)絡(luò)锥惋。 它有少許的內(nèi)置的框架,能夠進(jìn)行快速測試开伏,以及比較不同的機(jī)器學(xué)習(xí)算法膀跌。 它還有精心編寫的關(guān)于神經(jīng)網(wǎng)絡(luò)的介紹,一些練習(xí)演示固灵,以及還有許多非常精彩的教程來揭示機(jī)器學(xué)習(xí)是如何工作的捅伤。

image.png

Land Lines

Land Lines是一個有趣的 Chrome Web網(wǎng)絡(luò)實驗,用戶進(jìn)行涂鴉后巫玻,根據(jù)地球的衛(wèi)星圖像找出和涂鴉最相似的衛(wèi)星圖像區(qū)域暑认。 這個應(yīng)用程序不需要服務(wù)器調(diào)用:它完全在瀏覽器中工作,而且由于機(jī)器學(xué)習(xí)的巧妙應(yīng)用大审,WebGL 甚至在移動設(shè)備上也有很好的性能。 你可以在 GitHub 上查看源代碼座哩,或者在這里閱讀完整的案例徒扶。

image.png

ConvNetJS

ConvNetJS是 JavaScript 中最先進(jìn)的深度學(xué)習(xí)庫之一,盡管它不再有活躍的維護(hù)根穷。 最初在斯坦福大學(xué)開發(fā)的時候姜骡,ConvNetJS 在 GitHub 上相當(dāng)流行导坟,產(chǎn)生了許多社區(qū)驅(qū)動的特性和教程。 它可以直接在瀏覽器中工作圈澈,支持多種機(jī)器學(xué)習(xí)技術(shù)惫周,而且層次較低,適合在神經(jīng)網(wǎng)絡(luò)方面有較大經(jīng)驗的人康栈。

Thing Translator

Thing Translator是一個網(wǎng)絡(luò)實驗递递,它允許你的手機(jī)識別現(xiàn)實生活中的物體,并用不同的語言給它們命名啥么。 這款應(yīng)用完全基于網(wǎng)絡(luò)技術(shù)登舞,并且使用了谷歌的兩個機(jī)器學(xué)習(xí)接口,Cloud Vision ——進(jìn)行圖像識別悬荣; Translate API ——自然語言翻譯菠秒。

Neurojs

Neurojs是基于強(qiáng)化學(xué)習(xí)的AI系統(tǒng)構(gòu)建框架。 遺憾的是氯迂,這個開源項目沒有合適的文檔践叠,但是其中一個關(guān)于自動駕駛汽車實驗的demo ,對構(gòu)成神經(jīng)網(wǎng)絡(luò)的不同組成有很好的描述嚼蚀。 這個庫是純 JavaScript 的禁灼,并且使用了像 webpackbabel這樣的現(xiàn)代工具。

Machine_learning

這是另一個只用 JavaScript 來建立和訓(xùn)練神經(jīng)網(wǎng)絡(luò)的庫驰坊。 它在 Node.js 和客戶端都非常容易安裝匾二,并且有一個非常干凈的 API,適合任何水平的開發(fā)人員使用拳芙。 該庫提供了許多流行算法的示例 察藐,幫助您理解機(jī)器學(xué)習(xí)原理的核心。

DeepForge

Deepforge 是一個對用戶友好的深度學(xué)習(xí)開發(fā)環(huán)境舟扎。 它允許您使用簡單的圖形界面設(shè)計神經(jīng)網(wǎng)絡(luò)分飞,支持在遠(yuǎn)程機(jī)器上的訓(xùn)練模型,并具有內(nèi)置的版本控制睹限。 該項目運(yùn)行在瀏覽器中譬猫,基于 Node.jsMongoDB,安裝過程對于大多數(shù) web 開發(fā)者來說非常熟悉羡疗。

Bonus: Machine Learning in Javascript

布拉克 · 坎伯(Burak Kanber)的一系列精彩的博客文章染服,講述了機(jī)器學(xué)習(xí)的一些基本原理。 這些教程寫得很好叨恨,很清晰柳刮,并且專門針對 JavaScript 開發(fā)者。 如果你想更深入地了解機(jī)器學(xué)習(xí),這是一個很好的資源秉颗。

結(jié)論

雖然 JavaScript 的機(jī)器學(xué)習(xí)生態(tài)系統(tǒng)還沒有完全成熟痢毒,但是我們推薦使用這個列表中的資源,讓你在機(jī)器學(xué)習(xí)中邁出第一步蚕甥,感受一下核心技術(shù)哪替。 正如文章中的實驗所顯示的那樣,只用瀏覽器和一些熟悉的 JavaScript 代碼就可以創(chuàng)建大量有趣的東西菇怀。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末凭舶,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子敏释,更是在濱河造成了極大的恐慌库快,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件钥顽,死亡現(xiàn)場離奇詭異义屏,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)蜂大,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門闽铐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人奶浦,你說我怎么就攤上這事兄墅。” “怎么了澳叉?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵隙咸,是天一觀的道長。 經(jīng)常有香客問我成洗,道長五督,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任瓶殃,我火速辦了婚禮充包,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘遥椿。我一直安慰自己基矮,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布冠场。 她就那樣靜靜地躺著家浇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪碴裙。 梳的紋絲不亂的頭發(fā)上蓝谨,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天灌具,我揣著相機(jī)與錄音,去河邊找鬼譬巫。 笑死,一個胖子當(dāng)著我的面吹牛督笆,可吹牛的內(nèi)容都是我干的芦昔。 我是一名探鬼主播,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼娃肿,長吁一口氣:“原來是場噩夢啊……” “哼咕缎!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起料扰,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤凭豪,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后晒杈,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體嫂伞,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年拯钻,在試婚紗的時候發(fā)現(xiàn)自己被綠了帖努。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡粪般,死狀恐怖拼余,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情亩歹,我是刑警寧澤匙监,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站小作,受9級特大地震影響亭姥,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜躲惰,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一致份、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧础拨,春花似錦氮块、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至塔沃,卻和暖如春蝠引,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工螃概, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留矫夯,地道東北人。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓吊洼,卻偏偏與公主長得像训貌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子冒窍,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容