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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

非計(jì)算機(jī)專業(yè)程序員的經(jīng)驗(yàn)分享

深度學(xué)習(xí)自然語(yǔ)言處理 ? 來(lái)源:深度學(xué)習(xí)自然語(yǔ)言處理 ? 作者:深度學(xué)習(xí)自然語(yǔ)言 ? 2020-11-02 15:01 ? 次閱讀

適逢程序員佳節(jié),來(lái)聊聊自己從無(wú)到有成為程序員的歷程以及自己的經(jīng)驗(yàn)吧。

懶人目錄:

簡(jiǎn)單歷程。

入門。

修煉。

小結(jié)。

歷程

高考結(jié)束,確認(rèn)自己大學(xué)最想學(xué)有兩個(gè),當(dāng)醫(yī)生和學(xué)計(jì)算機(jī),雖然最后陰差陽(yáng)錯(cuò)地到了數(shù)學(xué)專業(yè),但考慮到自己的喜好,仍然在考慮往計(jì)算機(jī)上走,最直接的方式就是拿了計(jì)算機(jī)專業(yè)的培養(yǎng)計(jì)劃,加上自己的計(jì)劃開始寫起代碼,大一過(guò)了計(jì)算機(jī)等級(jí)考試二級(jí)(說(shuō)起來(lái)你們可能不信,VB),除了課程要求的c#c++、matlab和mathematica,還整了點(diǎn)java,加入了一位老師的項(xiàng)目組,開始了第一個(gè)項(xiàng)目。

有意思的是因?yàn)轫?xiàng)目組的需求我還寫過(guò)爬蟲和前端,前端整過(guò)jade/less體系,也玩過(guò)現(xiàn)在可能還在用的react/redux體系,搭配的是antd UI庫(kù),至于爬蟲就是最經(jīng)典的request或者是urllib,后續(xù)還玩過(guò)類似線程池的操作。

雖然有著對(duì)計(jì)算機(jī)的熱愛(可能這就是一種浪漫吧),但是也不想自己的數(shù)學(xué)白學(xué)了,所以一直在探索計(jì)算機(jī)和數(shù)學(xué)結(jié)合的道路,當(dāng)時(shí)有幾個(gè)備選項(xiàng),運(yùn)籌、數(shù)值計(jì)算,然而有意思的是,16還是17年,發(fā)現(xiàn)了機(jī)器學(xué)習(xí)的機(jī)會(huì),于是學(xué)習(xí)了當(dāng)時(shí)最新潮的《統(tǒng)計(jì)學(xué)習(xí)方法》,也翻閱了可能被聊到更多西瓜書,結(jié)合同一位老師的方向,最后選擇了統(tǒng)計(jì)。

后續(xù)就是學(xué)術(shù)和技術(shù)兩條腿走的過(guò)程了,還接觸了NLP這個(gè)東西,結(jié)合機(jī)器學(xué)習(xí)本身依賴的場(chǎng)景,把NLP當(dāng)做自己研究生期間的主修技能,當(dāng)然,時(shí)間序列、最優(yōu)化方法也是自己的研究方向,所以自己這塊還不錯(cuò)吧,于是就走上了算法這條路。

在這也借此機(jī)會(huì)感謝我的這位老師,還有幾位帶我入門的學(xué)長(zhǎng)學(xué)姐,還有工作(含實(shí)習(xí))過(guò)程中的領(lǐng)導(dǎo)、導(dǎo)師和同事。

入門

首先來(lái)聊聊入門,寫代碼入門在包括我在內(nèi)的很多人看來(lái)是一個(gè)非常痛苦的過(guò)程,甚至和第一次接觸數(shù)分(大部分人應(yīng)該是高數(shù))其實(shí)是類似的,我歸結(jié)的原因是這個(gè)東西和我們習(xí)慣的思維是不一樣的,我們可能很容易就能想到、能理解、很顯然的東西,卻偏偏還要從中挖掘出新的東西來(lái),例如一些重復(fù)工作我們照著做就行,卻需要抽象為一個(gè)循環(huán),這肯定是非常困難的。

第一門語(yǔ)言,還是非常建議系統(tǒng)地學(xué)一遍,完整地理解下面幾個(gè)對(duì)新手來(lái)說(shuō)比較陌生的概念,其實(shí)但凡是教程,這些東西真的都會(huì)有提到:

數(shù)據(jù)類型(Python可能沒有那么明顯,但是其實(shí)報(bào)錯(cuò)看多了大家都很容易理解了)

分支(條件)和循環(huán)。計(jì)算機(jī)能夠理解的最核心邏輯。

面向?qū)ο螅惻c對(duì)象,甚至到繼承。

完整地學(xué)完這些,其實(shí)你會(huì)對(duì)整個(gè)計(jì)算機(jī)語(yǔ)言體系有非常完整的認(rèn)識(shí)。那么學(xué)習(xí)過(guò)程中,還有幾個(gè)建議吧。

報(bào)錯(cuò)不可怕,不堅(jiān)持自己邊查邊改才可怕,久病成醫(yī),是程序員技術(shù)進(jìn)步的重要體現(xiàn),從報(bào)錯(cuò)中學(xué)習(xí)和定位解決問(wèn)題的能力必須提升,這也應(yīng)該是你和非程序員對(duì)比最鮮明的地方。

自己多動(dòng)手,只有動(dòng)手了才知道哪些地方是真的是沒有理解。

多看文檔多查資料,一份材料沒看懂就多看幾份,看看別人的經(jīng)驗(yàn)。

自認(rèn)為學(xué)會(huì)以后,可以開始復(fù)現(xiàn)別人的東西,哪怕一個(gè)小項(xiàng)目也好,論文也行。

知其然知其所以然。在做項(xiàng)目過(guò)程中效率優(yōu)先所以可以先知道怎么做然后在看背后的原理,但是在事后還是要總結(jié)這么做背后的原理,后續(xù)相似的問(wèn)題自己就能快速解決。

多做筆記,尤其是一些比較難解的問(wèn)題,記錄下來(lái),日后就不容易犯了。

另一方面,有關(guān)算法方面的入門,雖然技術(shù)迭代更新地很快,當(dāng)時(shí)word2vector都是一個(gè)非常新潮的東西,現(xiàn)在bert都爛大街了,但是時(shí)至今日,我仍然建議大家從簡(jiǎn)單的開始學(xué)起來(lái),機(jī)器學(xué)習(xí)基礎(chǔ)(仍然推薦統(tǒng)計(jì)學(xué)習(xí)方法)和基本的深度學(xué)習(xí)幾塊積木(Dense、CNN、RNN等等),nlp領(lǐng)域則基本的word2vector、fasttext之類的還是都要了解,推薦系統(tǒng)則還是要了解協(xié)同過(guò)濾等一系列的操作,現(xiàn)在絕大部分的工業(yè)界場(chǎng)景還輪不到這些學(xué)術(shù)界的飛機(jī)大炮派上用場(chǎng),最基本的其實(shí)就足夠了,或者說(shuō)大部分場(chǎng)景其實(shí)并不能充分發(fā)揮學(xué)術(shù)界飛機(jī)大炮的優(yōu)勢(shì),例如如果這個(gè)分類問(wèn)題可能并不需要注意力機(jī)制,則加了注意力其實(shí)意義不大。

其實(shí)熟練了以后,后續(xù)的學(xué)習(xí)推進(jìn)起來(lái)并不會(huì)很難,畢竟自己有了一定程度的學(xué)習(xí)能力,這點(diǎn)能力將會(huì)在自己的職業(yè)發(fā)展起到非常重要的作用。

修煉

自己如愿以償?shù)刈呱献约河?jì)算機(jī)和數(shù)學(xué)結(jié)合的道路——算法工程師。之前其實(shí)聊過(guò)自己一年的工作經(jīng)驗(yàn):ML&DEV[8] | 算法在崗一年的經(jīng)驗(yàn)總結(jié)。這里著重聊聊自己怎么提升,這也是自己嘗試突破幾次瓶頸的收獲吧。

算法線技術(shù)修煉

算法方面的修煉,我的理解往往在于兩點(diǎn)——深度和廣度。

深度,我理解是支撐一個(gè)人更好地完成任務(wù)的前提條件。在于對(duì)一些小領(lǐng)域甚至特定任務(wù)的理解,一方面了解基線方法,能在接到任務(wù)后快速調(diào)集需要的資源就能快速有個(gè)基線,然后能快速調(diào)整達(dá)到所需目標(biāo);另一方面要知道前沿的技術(shù)方案,無(wú)論是論文還是業(yè)界分享的方案(這也是我現(xiàn)在把文章類型分成了),一定要堅(jiān)持看。

廣度,廣度是支撐一個(gè)人能完成更多任務(wù)的條件。無(wú)論是出于晉升,還是出于自己的能力,都要求自己具備完成更多事情的能力,故步自封或者只求深度會(huì)讓自己未來(lái)的選擇變得很窄。至于提升的方式,還是多看論文和文章,且要不要設(shè)限,不要覺得與自己無(wú)關(guān)所以就不看,可以步步為營(yíng)地走出舒適區(qū),例如會(huì)文本分類了,可以試試NER問(wèn)題,還有相似度問(wèn)題,慢慢拓寬自己的知識(shí)疆土。

總結(jié)起來(lái)就是兩點(diǎn):

認(rèn)真學(xué)習(xí),各項(xiàng)前沿的東西都要接觸,同時(shí)要扎實(shí)好基礎(chǔ)。

工作后要注意總結(jié)和補(bǔ)充,要把因?yàn)楣ぷ骶o急而忽略的知識(shí)及時(shí)補(bǔ)充總結(jié)起來(lái)。

不設(shè)限,定制好學(xué)習(xí)策略,不斷探索未知,這是一個(gè)做技術(shù)的人該做的修煉。

技術(shù)線的修煉

算法工程師首先是一個(gè)工程師然后才是算法,所以技術(shù)是算法的立命之本,有各種厲害的算法不會(huì)落地,就和有腦子沒手一樣,不能產(chǎn)出了。那么技術(shù)線的修煉有哪些:

首先算法設(shè)計(jì)的技術(shù)都要了解。常用的python肯定要懂,sklearn、tensorflow、numpy之類的要熟練,尤其是tensorflow,迭代更新很快,對(duì)初學(xué)者其實(shí)我并不會(huì)要求tf2要會(huì),但是如果已經(jīng)入門了,開始工作了,我還是希望能盡快學(xué)會(huì)keras這套新生態(tài),如果是不會(huì)1,那tf.nn、tf.layers這套也要嘗試了解。

工程和服務(wù)相關(guān),python要自己會(huì)包裝一個(gè)簡(jiǎn)單的服務(wù),理解服務(wù)的是基本原理和運(yùn)作方式,這是理解整個(gè)架構(gòu)的基礎(chǔ),當(dāng)然,在項(xiàng)目的推進(jìn)過(guò)程,要逐步把java和c++學(xué)起來(lái)。

希望大家還是能了解數(shù)據(jù)領(lǐng)域的操作了。巧婦難為無(wú)米之炊,對(duì)算法而言米就是數(shù)據(jù),數(shù)據(jù)怎么來(lái),希望大家要了解,數(shù)據(jù)工程方面的技術(shù)希望大家能盡可能懂,技術(shù)點(diǎn)上就是hadoop、spark、hive之類的,架構(gòu)上就是了解數(shù)據(jù)的流轉(zhuǎn)過(guò)程,在線數(shù)據(jù)怎么到算法模塊,離線自己需要的特征能不能落到自己的特征表。

數(shù)據(jù)結(jié)構(gòu)可以說(shuō)是技術(shù)的能量,缺了事情就推進(jìn)地很慢。

總結(jié)

說(shuō)實(shí)話,上面說(shuō)的很多,其實(shí)上面我能想到這么多,個(gè)人認(rèn)為最重要的一個(gè)點(diǎn)就是——主動(dòng)。主動(dòng)溝通獲得學(xué)習(xí)進(jìn)步的機(jī)會(huì),主動(dòng)總結(jié)找到自己的問(wèn)題所在,主動(dòng)學(xué)習(xí)自己的不足,主動(dòng)為自己的學(xué)習(xí)和進(jìn)步進(jìn)行規(guī)劃。很多時(shí)候,主動(dòng)能為自己獲取更多主動(dòng)權(quán),而不要把主導(dǎo)權(quán)交給別人,其實(shí)不主動(dòng)拿主動(dòng)權(quán)就是再把這個(gè)東西交給別人了。換個(gè)角度反思下,自己是不是在嗷嗷待哺等導(dǎo)師給你方向給你論文,自己是不是在等著有人告訴你該學(xué)什么,自己是不是在等著老大給你活干。

就聊到這吧,大家共勉。

責(zé)任編輯:xj

原文標(biāo)題:【經(jīng)驗(yàn)】聊自己非計(jì)算機(jī)專業(yè)做程序員的經(jīng)驗(yàn)

文章出處:【微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • JAVA
    +關(guān)注

    關(guān)注

    19

    文章

    2952

    瀏覽量

    104495
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    949

    瀏覽量

    29746
  • 計(jì)算機(jī)語(yǔ)言

    關(guān)注

    1

    文章

    15

    瀏覽量

    9379

原文標(biāo)題:【經(jīng)驗(yàn)】聊自己非計(jì)算機(jī)專業(yè)做程序員的經(jīng)驗(yàn)

文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    AI編程工具會(huì)不會(huì)搶程序員飯碗

    AI編程工具可輔助編程,減少手動(dòng)編碼,提升效率,對(duì)程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識(shí)應(yīng)對(duì)。長(zhǎng)遠(yuǎn)看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?59次閱讀

    計(jì)算機(jī)接口位于什么之間

    計(jì)算機(jī)接口是計(jì)算機(jī)硬件和軟件之間、計(jì)算機(jī)與外部設(shè)備之間以及計(jì)算機(jī)各部件之間傳輸數(shù)據(jù)、控制信息和狀態(tài)信息的硬件設(shè)備和軟件程序。它在
    的頭像 發(fā)表于 10-14 14:02 ?184次閱讀

    計(jì)算機(jī)存儲(chǔ)系統(tǒng)的構(gòu)成

    計(jì)算機(jī)存儲(chǔ)系統(tǒng)是計(jì)算機(jī)中用于存放程序和數(shù)據(jù)的設(shè)備或部件的集合,它構(gòu)成了計(jì)算機(jī)信息處理的基礎(chǔ)。一個(gè)完整的計(jì)算機(jī)存儲(chǔ)系統(tǒng)通常包括多個(gè)層次的存儲(chǔ)器
    的頭像 發(fā)表于 09-26 15:25 ?481次閱讀

    計(jì)算機(jī)進(jìn)行程序控制工作的基本原理是怎樣的

    計(jì)算機(jī)程序控制是計(jì)算機(jī)科學(xué)中的一個(gè)核心概念,它涉及到計(jì)算機(jī)如何根據(jù)預(yù)設(shè)的指令序列執(zhí)行任務(wù)。 1. 計(jì)算機(jī)硬件基礎(chǔ) 在深入
    的頭像 發(fā)表于 09-04 16:57 ?291次閱讀

    程序員節(jié)視頻創(chuàng)意大賽,用串口屏贏取千元大獎(jiǎng)

    10月24日,程序員專屬的節(jié)日里,我們盛大開啟“程序員節(jié)視頻創(chuàng)意大賽”特別活動(dòng)!這不僅是一場(chǎng)視覺的盛宴,更是智慧與創(chuàng)意的璀璨碰撞。我們誠(chéng)摯邀請(qǐng)每一位程序員及編程愛好者,拿起你的鏡頭,記錄下那些平凡日子中的不凡瞬間,讓編程的魅力與
    的頭像 發(fā)表于 07-08 10:38 ?72次閱讀
    <b class='flag-5'>程序員</b>節(jié)視頻創(chuàng)意大賽,用串口屏贏取千元大獎(jiǎng)

    程序員節(jié)視頻創(chuàng)意盛宴,邀您共襄盛舉!

    10月24日,程序員專屬的節(jié)日里,我們盛大開啟“程序員節(jié)視頻創(chuàng)意大賽”特別活動(dòng)!這不僅是一場(chǎng)視覺的盛宴,更是智慧與創(chuàng)意的璀璨碰撞。我們誠(chéng)摯邀請(qǐng)每一位程序員及編程愛好者,拿起你的鏡頭,記錄下那些平凡日子中的不凡瞬間,讓編程的魅力與
    的頭像 發(fā)表于 07-04 09:00 ?67次閱讀
    <b class='flag-5'>程序員</b>節(jié)視頻創(chuàng)意盛宴,邀您共襄盛舉!

    計(jì)算機(jī)控制器的結(jié)構(gòu)和功能

    隨著信息技術(shù)的迅猛發(fā)展,計(jì)算機(jī)已經(jīng)深入我們生活的方方面面。而計(jì)算機(jī)控制器,作為計(jì)算機(jī)系統(tǒng)的核心部件之一,承擔(dān)著協(xié)調(diào)各部件工作、指揮整個(gè)計(jì)算機(jī)程序
    的頭像 發(fā)表于 06-17 15:47 ?1358次閱讀

    工業(yè)計(jì)算機(jī)與普通計(jì)算機(jī)的區(qū)別

    在信息化和自動(dòng)化日益發(fā)展的今天,計(jì)算機(jī)已經(jīng)成為了我們?nèi)粘I詈凸ぷ髦胁豢苫蛉钡墓ぞ?。然而,?b class='flag-5'>計(jì)算機(jī)領(lǐng)域中,工業(yè)計(jì)算機(jī)和普通計(jì)算機(jī)雖然都具備基本的計(jì)算
    的頭像 發(fā)表于 06-06 16:45 ?1114次閱讀

    適者生存,程序員最終會(huì)流向哪……

    程序員沒有永遠(yuǎn)的護(hù)城河??!就目前的互聯(lián)網(wǎng)大環(huán)境來(lái)看,it行業(yè)已經(jīng)是……
    的頭像 發(fā)表于 03-11 17:11 ?372次閱讀
    適者生存,<b class='flag-5'>程序員</b>最終會(huì)流向哪……

    【量子計(jì)算機(jī)重構(gòu)未來(lái) | 閱讀體驗(yàn)】+ 初識(shí)量子計(jì)算機(jī)

    分介紹了量子計(jì)算機(jī)的工作原理、計(jì)算能力、研發(fā)現(xiàn)狀等專業(yè)知識(shí)點(diǎn);第二部分介紹了量子計(jì)算機(jī)的應(yīng)用場(chǎng)景,比如工廠、物流、智慧交通、自動(dòng)駕駛等等;正好適合我這樣的量子小白閱讀。 開始第一部分
    發(fā)表于 03-05 17:37

    2024程序員的未來(lái)方向如何走?還看今朝

    這幾年的IT行業(yè)想必大家已經(jīng)感受到了,Android、Java、前端等等程序員都經(jīng)歷了大廠……
    的頭像 發(fā)表于 02-02 09:45 ?761次閱讀
    2024<b class='flag-5'>程序員</b>的未來(lái)方向如何走?還看今朝

    什么是后量子密碼學(xué)?量子計(jì)算機(jī)vs經(jīng)典計(jì)算機(jī)

    后量子密碼學(xué)(Post-Quantum Cryptography,PQC)是在經(jīng)典計(jì)算機(jī)上定義和執(zhí)行算法,研究量子計(jì)算機(jī)和經(jīng)典計(jì)算機(jī)都無(wú)法破解的新密碼系統(tǒng)。后量子密碼學(xué)的提出是為了抵抗量子計(jì)算
    的頭像 發(fā)表于 12-19 11:42 ?1569次閱讀

    NOR FLASH對(duì)計(jì)算機(jī)存儲(chǔ)有何作用?

    NOR FLASH是一種易失性存儲(chǔ)技術(shù),對(duì)計(jì)算機(jī)存儲(chǔ)具有重大影響,閃存其獨(dú)特的特性和功能影響著計(jì)算機(jī)存儲(chǔ)系統(tǒng)的各個(gè)方面
    的頭像 發(fā)表于 12-05 10:32 ?798次閱讀

    程序員表白程序

    電子發(fā)燒友網(wǎng)站提供《程序員表白程序.rar》資料免費(fèi)下載
    發(fā)表于 11-21 10:41 ?16次下載
    <b class='flag-5'>程序員</b>表白<b class='flag-5'>程序</b>

    嵌入式程序員應(yīng)知道的幾個(gè)基本問(wèn)題

    電子發(fā)燒友網(wǎng)站提供《嵌入式程序員應(yīng)知道的幾個(gè)基本問(wèn)題.pdf》資料免費(fèi)下載
    發(fā)表于 11-20 11:21 ?0次下載
    嵌入式<b class='flag-5'>程序員</b>應(yīng)知道的幾個(gè)基本問(wèn)題