日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

約翰·卡馬克:學習神經網絡這一周

zhKF_jqr_AI ? 來源:未知 ? 作者:鄧佳佳 ? 2018-03-21 16:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


熟悉電子游戲的讀者也許聽說過約翰·卡馬克(John Carmack),在游戲領域,這個名字稱得上是偶像級別的存在:3D引擎之父、第一人稱射擊游戲教父、電腦怪才……和那個時代的科技大牛一樣,他自學成才,考上名校,繼而輟學入職,投身游戲軟件開發(fā)。他是個兼具數學家和哲學家氣質的程序員,也是個只想寫出好代碼的純粹的天才。那么,面對洶涌而來的人工智能浪潮,這位老一輩的程序員會有什么看法呢?

經歷了一周努力學習,近日,約翰·卡馬克在他的Facebook上發(fā)表了一篇名為1-week experience learning neural networks from scratch的學習心得,引起了網友的廣泛關注,以下是論智編譯的原文

隔了這么多年后,我終于找了一個遠離工作事務紛擾的角落,撿起編程,以一個隱居者的心態(tài)學習了一周。在過去的幾年里,我的妻子一直慷慨地提供給我這樣的環(huán)境,但我始終無法從工作中脫身,連休假期間都不得安寧。

而現(xiàn)在,隨著我在Oculuss中工作進展的變化,我想從頭開始用C++編寫一些神經網絡實現(xiàn)。我計劃挑選的操作系統(tǒng)是標準、準確的OpenBSD,有人說我的選擇太隨意了,可事實證明它確實沒問題。

說實在的,雖然我一直很欣賞OpenBSD的想法——這是一個相對簡單同時又頗具見地的操作系統(tǒng),它目標精準,重視程式碼的品質和工藝,但之前我并沒有用過它。Linux什么都好,可惜的是這些優(yōu)點它都沒有。

這倒也不是說我是個UNIX geek。我最喜歡的還是Windows的Visual Studio,所以其實我完全可以回避這些問題。我只是單純覺得在老式UNIX風格下進行長達一周的沉浸式工作會很有趣,即使進度會慢一些。這是復古計算的一次冒險——是fvwm & vi,而不是vim,是BSD vi。

而且我并沒有真正探索完整個系統(tǒng),因為我把95%的時間都花在基礎的 vi/make/gdb 操作上了。我很喜歡那些實用的幫助手冊頁面,雖然一直在摸索自己能在這個系統(tǒng)里做什么,但我實在不想上網直接搜。試想一下,我是在查閱30幾年前的老東西,如Tektronix terminal的手冊,這簡直不能更有趣。

有一點讓我比較驚訝,就是OpenBSD對C++的支持有點爛。G++不支持C++11,LLVM C++也不能很好地和gdb配合使用。我做gdb時系統(tǒng)崩了幾次,我懷疑是C++導致的。當然,你不用跟我說它可以升級,我就想用最基礎的操作系統(tǒng)。

現(xiàn)在回過頭來看,我應該是完全復古了,而且寫的東西完全符合ANSI C標準。和許多老程序員一樣,有幾天我會忍不住反思:也許C++并沒有我們想得那么好……雖然我還喜歡很多其他的東西,但用普通的C語言寫個小項目還難不倒我。當然,如果還有下次的話,我會試試Emacs,這是另一個我沒怎么接觸過的領域。

在這之前,我其實已經對大多數機器學習算法有了成熟的了解,而且也做過一些線性分類器和決策樹之類的工作。但出于某些原因,我還沒碰過神經網絡,這在某種程度上可能是因為深度學習太時髦了,導致我對它持保守意見,或許也有一些反思性的偏見。我還不能接受“把所有東西丟進神經網絡里,然后讓它自己整理”這種套路。

而本著復古主義精神,我打印了幾篇Yann LeCun的舊論文,然后脫機工作,假裝自己正身處某地的山間小屋,但現(xiàn)實是——我還是偷偷在YouTube上看了不少斯坦福CS231N的視頻,并從中學到了很多東西。我一般很少看這種演講視頻,會覺得有點浪費時間,但這樣“見風使舵”的感覺也不賴。

我其實不認為自己對神經網絡有什么獨特的想法和建議,但就個人體驗而言,這是高效的一周,因為我把書本上的知識固化成了真實經驗。我的實踐模式也很常規(guī):先用hacky代碼寫一版,再根據視頻教程重寫一個全新的、整潔的版本,所以兩者可以交叉檢查,不斷優(yōu)化。

我也曾在反向傳播上反復跌倒了好幾次,最后得出的經驗是比較數值差異非常重要!但很有趣的一點是,即使每個部分好像都錯得離譜,神經網絡似乎還是能正常訓練的——甚至只要大多數時候符號是正確的,它就能不斷進步。

對于最終得到的多層神經網絡代碼,我是很滿意的,也產生了未來繼續(xù)完善的想法。是的,對于這類非常嚴肅的問題,我一般會直接用已有的第三方庫,但在過去的一周內,很多時候我會自己寫單獨的.cpp文件和.h文件進行編譯,這也很方便。

現(xiàn)在我的CNN代碼還需要優(yōu)化,我大概會花幾天時間做出一個干凈、靈活的實現(xiàn)。之前我把沒加進卷積的初始神經網絡放到MNIST上測試時,發(fā)現(xiàn)它居然比LeCun論文里的結果更好——單個包含100個節(jié)點的隱藏層在測試集上的error是2%,論文里的網絡更廣更深,但它的error有3%。這個發(fā)現(xiàn)有點出乎我的意料,最后我總結的原因是激活函數——ReLU和Softmax。

如果要說這一周的學習有什么最精彩的心得,那應該就是神經網絡非常簡單,它只需寥寥幾行代碼就能實現(xiàn)突破性的進步。我覺得這和圖形學中的光線追蹤有異曲同工之妙,只要我們有足夠的數據、時間和耐心,追蹤與光學表面發(fā)生交互作用的光線,得到光線經過路徑的物理模型,我們就能生成最先進的圖像。

同樣的,通過探索一系列訓練參數,我也對 overtraining/generalization/regularization 有了更深的理解?;丶业那耙灰?,我開心地調起了超參數。為了保持專注,“訓練”肯定比“編譯”更糟糕!

小結

讀了約翰·卡馬克的心得,不知各位讀者獲得了怎樣的體驗。作為一名成功的資深程序員,卡馬克一直以來對編程的嚴苛要求是大家有目共睹的,而他這次抽出一周時間,以這么復古的形式學習神經網絡,這樣的娛樂精神堪稱業(yè)界清流。這項“新技能”可能不會給他帶來世俗的快樂,但在代碼中創(chuàng)造世界的樂趣使他感到幸福,卡馬克還是那個卡馬克。

除此之外,許多國外讀者又對深度學習的理論基礎產生了擔憂。正如文中所說的:“即使每個部分好像都錯得離譜,神經網絡還是能正常訓練——甚至只要大多數時候符號是正確的,它還能不斷進步”。就梯度下降而言,理論上我們想要的是不斷走“下坡路”,走“上坡路”的結果注定是不理想的。但從長遠來看,如果兩者都能提高模型預測的結果,那走下坡的意義又在哪里?

這個領域內的所有人都在追求各種進步,擔當他們被問及為什么,大多數答案只是“just work”,如果只看結果,我們又該怎么判斷哪些是真正重要的東西?也許對于什么是“進步”,我們也需要重新設定一個更嚴格的標準。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4844

    瀏覽量

    108284
  • 電子游戲
    +關注

    關注

    0

    文章

    39

    瀏覽量

    10260
  • 程序員
    +關注

    關注

    4

    文章

    956

    瀏覽量

    31035

原文標題:約翰·卡馬克(John Carmack):學習神經網絡這一周

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    為什么 VisionFive V1 板上的 JH7100 中并存 NVDLA 引擎和神經網絡引擎?

    我想知道為什么 VisionFive V1 板上的 JH7100 中并存 NVDLA 引擎和神經網絡引擎,請問?您能否舉些關于他們的用例的例子?
    發(fā)表于 03-25 06:01

    PPEC inside 數字電源在托馬克裝置中的應用

    全面覆蓋托馬克裝置核心系統(tǒng)應用場景,可充分匹配其高穩(wěn)定、寬調節(jié)、長脈沖、高頻調制的嚴苛運行要求。 核聚變發(fā)展背景 在全球能源轉型與碳中和目標推動下,可控核聚變作為種理論上幾乎無限的能源,因其高能量
    發(fā)表于 01-22 10:38

    神經網絡的初步認識

    日常生活中的智能應用都離不開深度學習,而深度學習則依賴于神經網絡的實現(xiàn)。什么是神經網絡神經網絡的核心思想是模仿生物
    的頭像 發(fā)表于 12-17 15:05 ?508次閱讀
    <b class='flag-5'>神經網絡</b>的初步認識

    自動駕駛中常提的卷積神經網絡是個啥?

    在自動駕駛領域,經常會聽到卷積神經網絡技術。卷積神經網絡,簡稱為CNN,是種專門用來處理網格狀數據(比如圖像)的深度學習模型。CNN在圖像處理中尤其常見,因為圖像本身就可以看作是由像
    的頭像 發(fā)表于 11-19 18:15 ?2299次閱讀
    自動駕駛中常提的卷積<b class='flag-5'>神經網絡</b>是個啥?

    NMSIS神經網絡庫使用介紹

    NMSIS NN 軟件庫是組高效的神經網絡內核,旨在最大限度地提高 Nuclei N 處理器內核上的神經網絡的性能并最??大限度地減少其內存占用。 該庫分為多個功能,每個功能涵蓋特定類別
    發(fā)表于 10-29 06:08

    構建CNN網絡模型并優(yōu)化的般化建議

    :Dropout層隨機跳過神經網絡模型中某些神經元之間的連接,通過隨機制造缺陷進行訓練提升整個神經網絡的魯棒性。 6)指定合理的學習率策略:
    發(fā)表于 10-28 08:02

    在Ubuntu20.04系統(tǒng)中訓練神經網絡模型的些經驗

    本帖欲分享在Ubuntu20.04系統(tǒng)中訓練神經網絡模型的些經驗。我們采用jupyter notebook作為開發(fā)IDE,以TensorFlow2為訓練框架,目標是訓練個手寫數字識別的神經
    發(fā)表于 10-22 07:03

    CICC2033神經網絡部署相關操作

    在完成神經網絡量化后,需要將神經網絡部署到硬件加速器上。首先需要將所有權重數據以及輸入數據導入到存儲器內。 在仿真環(huán)境下,可將其存于個文件,并在 Verilog 代碼中通過 readmemh 函數
    發(fā)表于 10-20 08:00

    液態(tài)神經網絡(LNN):時間連續(xù)性與動態(tài)適應性的神經網絡

    1.算法簡介液態(tài)神經網絡(LiquidNeuralNetworks,LNN)是種新型的神經網絡架構,其設計理念借鑒自生物神經系統(tǒng),特別是秀麗隱桿線蟲的
    的頭像 發(fā)表于 09-28 10:03 ?1646次閱讀
    液態(tài)<b class='flag-5'>神經網絡</b>(LNN):時間連續(xù)性與動態(tài)適應性的<b class='flag-5'>神經網絡</b>

    神經網絡的并行計算與加速技術

    隨著人工智能技術的飛速發(fā)展,神經網絡在眾多領域展現(xiàn)出了巨大的潛力和廣泛的應用前景。然而,神經網絡模型的復雜度和規(guī)模也在不斷增加,這使得傳統(tǒng)的串行計算方式面臨著巨大的挑戰(zhàn),如計算速度慢、訓練時間長等
    的頭像 發(fā)表于 09-17 13:31 ?1353次閱讀
    <b class='flag-5'>神經網絡</b>的并行計算與加速技術

    如何在機器視覺中部署深度學習神經網絡

    圖 1:基于深度學習的目標檢測可定位已訓練的目標類別,并通過矩形框(邊界框)對其進行標識。 在討論人工智能(AI)或深度學習時,經常會出現(xiàn)“神經網絡”、“黑箱”、“標注”等術語。這些概念對非專業(yè)
    的頭像 發(fā)表于 09-10 17:38 ?1104次閱讀
    如何在機器視覺中部署深度<b class='flag-5'>學習</b><b class='flag-5'>神經網絡</b>

    無刷電機小波神經網絡轉子位置檢測方法的研究

    摘要:論文通過對無刷電機數學模型的推導,得出轉角:與三相相電壓之間存在映射關系,因此構建了個以三相相電壓為輸人,轉角為輸出的小波神經網絡來實現(xiàn)轉角預測,并采用改進遺傳算法來訓練網絡結構與參數,借助
    發(fā)表于 06-25 13:06

    神經網絡專家系統(tǒng)在電機故障診斷中的應用

    摘要:針對傳統(tǒng)專家系統(tǒng)不能進行自學習、自適應的問題,本文提出了基于種經網絡專家系統(tǒng)的并步電機故障診斷方法。本文將小波神經網絡和專家系統(tǒng)相結合,充分發(fā)揮了二者故障診斷的優(yōu)點,很大程度上降低了對電機
    發(fā)表于 06-16 22:09

    神經網絡RAS在異步電機轉速估計中的仿真研究

    ,在定程度上擴展了轉速估計范圍。 純分享帖,需要者可點擊附件免費獲取完整資料~~~*附件:神經網絡RAS在異步電機轉速估計中的仿真研究.pdf【免責聲明】本文系網絡轉載,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權
    發(fā)表于 06-16 21:54

    基于FPGA搭建神經網絡的步驟解析

    本文的目的是在神經網絡已經通過python或者MATLAB訓練好的神經網絡模型,將訓練好的模型的權重和偏置文件以TXT文件格式導出,然后通過python程序將txt文件轉化為coe文件,(coe
    的頭像 發(fā)表于 06-03 15:51 ?1566次閱讀
    基于FPGA搭建<b class='flag-5'>神經網絡</b>的步驟解析
    通江县| 壶关县| 天津市| 伊川县| 汉寿县| 谷城县| 奉化市| 乌鲁木齐县| 中西区| 清水河县| 共和县| 和平区| 长乐市| 温宿县| 永宁县| 宝鸡市| 焉耆| 宁阳县| 兰考县| 克山县| 右玉县| 九龙坡区| 汶川县| 留坝县| 边坝县| 平阳县| 馆陶县| 三台县| 专栏| 龙岩市| 翁源县| 安溪县| 阜宁县| 沿河| 济阳县| 嘉鱼县| 邵东县| 内黄县| 衡阳县| 兰溪市| 酉阳|