PTT評價

Re: [請益] 想從零開始轉行當AI軟體工程師

看板Soft_Job標題Re: [請益] 想從零開始轉行當AI軟體工程師作者
alden
(這真是太危險啦)
時間推噓39 推:41 噓:2 →:155

我來散佈一些正能量好了
小弟在FANG的英國的一個一直賠錢的AI子公司工作4+年了。
其實我覺得數學真的沒那麼重要,除非你是要做理論的。

又不是每個人都是Ian Goodfellow, Ashish Vaswani, 還是 David Silver.
就算是這些重要的工作,也不見得數學有很深吧?

我的數學只有高中程度而已,還是能follow他們的works.
(BTW, 我不是科班的。所以數學只有高中程度)

我的觀察啦,能寫出好的bug free code 比數學或統計好要來得更重要。
畢竟大家還是都在接水管。只有很少很少部分的人在improve水管。
怎麼import tensorflow/pytorch/jax, 把該接的東西接一接其實比較實在。

所以說到底,還是刷題比較實在。先確定有基本的algo/ds的實力。
我看國外machine learning engineer / data scientist的opening
應該還是很多吧。
我的理解MLE的interview也是主要考leetcode XD
台灣的情況我就不清楚了。

ML還是滿有趣的。希望有多一些人能加入。不要被一些自己預設的條件嚇到了。
程式寫好(python is good enough. I see nothing wrong with python)
會接基本的DL model. 有高中程度的機率,統計.
再刷一下Leetcode. 你也可以apply FANG 的MLE哦 XD

再多說一點,其他方面的能力也是很重要的。
基本的英文溝通,準備preso,和別人解釋code/model的能力。
這些其實我都覺得比數學好要重要太多了。

當然,數學能好當然更好。這一直是我的痛點。
不過在大公司接水管真的不太有機會用到.

Just my 2 cents. :)

--

※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 94.15.237.14 (英國)
PTT 網址

niobafrog11/12 06:11該不會是DeepMind吧

niobafrog11/12 06:11...跪

empliu11/12 07:18感覺原po隱藏蠻多重要訊息的

empliu11/12 07:18原po的高中是建中 ...

empliu11/12 07:18大學是台大 然後有 PhD 學位 = =

empliu11/12 07:20這種重要背景資訊還是留一下 不然會誤導人 ..

alden11/12 07:33是建中,但不是台大。有PhD,但不是數學物理或CS... :p

drajan11/12 07:57數學不好真痛 小弟也是在英國FANG但不是直接做 modeling

drajan11/12 07:57雖然 engineering這種工作也很重要 但就是感覺沒有 resear

drajan11/12 07:57ch scientist或ML engineer這種雙修的來得厲害

drajan11/12 07:59如果「只是」engineering 的職位確實leetcode重要性要大於

drajan11/12 07:59數學多的多了 畢竟能改變世界的模型就那些人在搞 基礎的工

drajan11/12 07:59程還是需要有人做

KingSteven11/12 09:18DeepMind先跪……管他賠不賠錢,有神先跪再說……

fr7511/12 09:54原po有Phd 應該是國外大學的 不能這樣推薦人 國外公司最愛

fr7511/12 09:54找Phd的 尤其是研發類 人家看到一個phd想做水管工當然巴不

fr7511/12 09:54得你進啊

PhD真的沒有比較厲害啦。我們公司很多Master degree的也很強。 而且還不是一樣要刷leetcode, 公平啦 XD

BigHeadDoggy11/12 10:22會接基本的DL model. 有高中程度的機率,統計.

BigHeadDoggy11/12 10:22再刷一下Leetcode. 你也可以apply FANG 的MLE哦 XD

BigHeadDoggy11/12 10:22你知道自己在說什麼嗎

我可能寫得比較誇張啦,但我要表達的是code寫好真得比較重要。

stmilk11/12 10:52我沒在那個世界待過我實在也不知道數學到底重不重要。“

stmilk11/12 10:52上帝關一扇門會開另一扇窗“,這句話不管是心靈層面還是

stmilk11/12 10:52實務層面都很實在,而且我不喜歡怨天尤人,所以我現在也

stmilk11/12 10:52是乖乖刷leetcode和補充現在一堆公司要求的distribution

stmilk11/12 10:52 system的底,好險之前資料結構和演算法其實讀很多遍刷起

stmilk11/12 10:52來挺快樂的,不確定這條路是不是相對好的選擇,但試試沒

stmilk11/12 10:52損失。

其實我就是看到你的文章才想po這篇的。 補好leetcode 和 distributed system design確實對MLE interview比較有用 DS的話,可能數學和統計還是比較重要一點。

※ 編輯: alden (94.15.237.14 英國), 11/12/2021 11:24:44 ※ 編輯: alden (94.15.237.14 英國), 11/12/2021 11:25:57

everglow11/12 11:31這篇太樂觀了 這正向到有點偏離現實太遠了

everglow11/12 11:32國外FANNG本來就很愛找phd不管有無跟AI相關的人來做ML

everglow11/12 11:33而且你應該又是很早進入這個領域的 這樣比較不太公平

everglow11/12 11:34事實上 數學重要嗎 很重要 但實務上要大量用到數學的缺

everglow11/12 11:34根本少到可以

alden11/12 11:40嗯。早個5年的bar真的低很多。

alden11/12 11:42而且台灣這個領域的求職看起來比國外競爭多了!

everglow11/12 11:53台灣是產業問題 ai無法做大 缺太少了

everglow11/12 11:54不過我相信原po這麼優秀 哪個時間點都可以相對容易找

everglow11/12 11:56現在一堆都要leetcode 連DS考online assessment成常態了

everglow11/12 11:56某方面來說 也是要刷leetcode ...

DrTech11/12 12:34連Google 在發很多重要論文,都沒在用數學,還很多人一直

DrTech11/12 12:34把數學推導神話,沒必要。做出效果來最重要啦,慢慢推什麼

DrTech11/12 12:34數學。

DrTech11/12 12:36搞不好我甚至覺得,大家都是沒靠數學做出效果,再來為了投

DrTech11/12 12:36稿堆出數學的。

聽起來很有道理。idea再好,沒有SOTA也很難發paper

DrTech11/12 12:37數學好不好,會不會推導,在業界真的是很微乎其微的重要。

DrTech11/12 12:38效果無法證實,在哪慢慢推數學理論,根本上不了檯面。

DrTech11/12 12:39去搞傳統BI,做統計都比做AI還更需要數學。

DrTech11/12 12:42工程師這三個字,就代表了,工程結果最重要了。要算數學可

DrTech11/12 12:42以去找科學家,研究員職缺。

DrTech11/12 12:46在哪慢慢推數學根本推不出來 BERT, Transformer之流的方法

DrTech11/12 12:46才是真的。

DrTech11/12 13:07Transformer模型架構為什麼大放異彩,數學也證實不出來。

好問題。為什麼Transformer這麼有效?

DrTech11/12 13:07這也是現況。實務結果證實後,發表時才會回去推數學。

DrTech11/12 13:08一般正常工程師,根本做不到這塊。

everglow11/12 13:19很認同 所以面試在那邊考推導準備證明根本有事嗎

真的有人面試考證明?

kiwi94694611/12 13:35會考大概是面試者沒有能呈現的做品經歷,那面試官也只

kiwi94694611/12 13:35能考這個了

recorriendo11/12 13:38Google是Google啊 它甚至發ethics論文大家也都搶著

recorriendo11/12 13:38引用 用這個當判準很奇怪

recorriendo11/12 13:47Transformer就是需要一點矩陣數學推導才能把self a

recorriendo11/12 13:47ttention這個idea變成code啊 (不然就會變成很醜的n

recorriendo11/12 13:47ested for loop)

recorriendo11/12 13:49當然接水管的是沒差 不過說不懂數學就可以發明LSTM

recorriendo11/12 13:49、Transformer太誇張了

You got me wrong there. 我說99.9%的人是用transformer. 不是發明transformer.

recorriendo11/12 13:55這串我覺得很多是talking past each other 大多數人

recorriendo11/12 13:55提數學是這個層級的推導 可能這些對有PhD的大大們真

recorriendo11/12 13:55的是像加減乘除一樣簡單 所以才會說不需要很多數學

recorriendo11/12 13:55 實際上相對普通SWE這確實是"很多"了

高中數學是誇張了點。但如果念CS大學科系,機率,線代,微積分是基本吧?

empliu11/12 14:17直接來看 Deepmind 的 publications 列表吧

empliu11/12 14:17https://deepmind.com/research

empliu11/12 14:17這裡說的數學也不是說你數學要多強

對啦。我們要先講好數學強到底是多強? 這些數學對數學系的來說只是加減法吧...

empliu11/12 14:17不過至少要不討厭數學 而且最基本的那幾科有學好

empliu11/12 14:18不然 Scientist 給的東西你都看不懂 要怎麼轉成工程模型

empliu11/12 14:23https://bit.ly/30lhSyo

empliu11/12 14:23這是Google研究單位今年投給ICLR被拒轉頭NIPS被接受的論文

empliu11/12 14:24就我所知光這樣的數學 很多搞前後端的人都沒辦法應付

empliu11/12 14:27很多搞系統很牛逼的人是很排斥哪怕很基礎的數學

empliu11/12 14:27(不是說加減乘除多項式那種)

humanfly11/12 14:36感謝大大的勵志文

希望這篇有推坑到。不要被說AI/ML一定要數學超強 XD

※ 編輯: alden (94.15.237.14 英國), 11/12/2021 15:40:46

DrTech11/12 15:36所以到底你們版上誰的工作有在投論文的?比例是多少? 只

DrTech11/12 15:36會講,拿出證據吧。

DrTech11/12 15:37誰在用 transformer時,會需要去推導數學,或推導了數學對

DrTech11/12 15:37工作實務有什麼幫助?

DrTech11/12 15:39拿別人少數研究員的工作在說 個,AI工程師的工作需要數學

DrTech11/12 15:39,數學推導,有夠奇怪。

DrTech11/12 15:42 人家是要轉行當 AI工程師,不是要轉行當 AI科學家,AI界

DrTech11/12 15:42大牛耶。

DrTech11/12 15:44別人要當個普通 AI工程師,你們拿科學家的標準來強調:不

DrTech11/12 15:44要當科學家。跳針跳得太誇張。

alden11/12 15:45推DrTech 重點還是工程師三個字

DrTech11/12 15:46如果今天標題是:如何轉行當研究員,科學家。你們這些天天

DrTech11/12 15:46在強調數學的人才合理吧。

stmilk11/12 15:53google那篇我是不知道正常工程師會理解到哪啦,我稍微看

stmilk11/12 15:53一下在有時間壓力的情況下應該會先簡單理解說:這個訓練

stmilk11/12 15:53可以逼近他們那個定義的應該算可以接受的bias區間,然後

stmilk11/12 15:53定理一就是說這個演算法得出來的東西就是會滿足他們那個

stmilk11/12 15:53定義,定理二在說這個玩意兒還超屌的訓練時還會有一個上

stmilk11/12 15:53界不會飄的太嚴重,雖然他們沒有討論這個上界夠不夠緊XD

stmilk11/12 15:53,所以應該還是有個前提是訓練的模型存在。然後就實作了

stmilk11/12 15:53因為也不難XD這篇論文真的有夠學術的,的確工程界根本不

stmilk11/12 15:53屌什麼bias什麼的,能上就好。工程界真的要討論的話統計

stmilk11/12 15:53的bias定義又根本不能用,因為只有上帝才知道他們要找的

stmilk11/12 15:53pattern長什麼樣子哈哈哈

stmilk11/12 15:56這個在台灣要被實作出來應該還是要等某些英文很好的中國

stmilk11/12 15:56人(因為我看網路上好像中國人很熱衷翻譯這些東西)把它

stmilk11/12 15:56的步驟寫出來,然後說一下心得才會有台灣人開始實作吧哈

stmilk11/12 15:56哈哈

stmilk11/12 16:00阿上面說的”訓練模型存在”不太精確,精確地說是這個要

stmilk11/12 16:00找的問題的解存在,因為現實應用這個假設不一定成立XD解

stmilk11/12 16:00不存在那訓練時就是放飛自我哪裡都有可能跑了哈哈哈

stmilk11/12 16:02最後是可以理解這個在工程界應該應用不大因為一般的bias

stmilk11/12 16:02影響不會太嚴重,但對精度要求很重的工業(台積電?)可

stmilk11/12 16:02能就會需要了

stmilk11/12 16:04而這個訓練除了剃度下降還要更新那兩個我的理解應該可以

stmilk11/12 16:04算是限制函數的東西,這就是成本XD

libitum11/12 16:05在講什麼東西啊 工程師=工程界? 工程界是什麼??

libitum11/12 16:05最好是一個AI engineer完全不考慮bias啦...

libitum11/12 16:06台灣業界要不要實作為什麼要等到中國人有人翻譯跟心得啊

libitum11/12 16:07有需求就會去做啊 心得國外一堆 英文又沒那麼難

recorriendo11/12 16:08隨便舉個例子啦 pytorch要選optimizer 當然要懂點數

recorriendo11/12 16:08學才能知道adam是在幹嘛吧 除非你真的土法煉鋼把所

recorriendo11/12 16:08有選項都試一遍 那如果需要選擇的地方有很多個 你的

recorriendo11/12 16:08選項組合就指數級爆炸了 根本不可能一個一個試

stmilk11/12 16:08好吧我道歉那樣說不對,對不起。然後我也不要代表工程界

stmilk11/12 16:08好了至少我之前工作的地方不在乎。

libitum11/12 16:12不在乎bias? 那你前公司拿什麼來當evaluation metrics

recorriendo11/12 16:12不然去stackoverflow去查哪個選項比較好 把答案背起

recorriendo11/12 16:12來 解釋都不管 (因為解釋至少都牽扯一些數學) 是這

recorriendo11/12 16:12樣嗎??

stmilk11/12 16:14痾....你先去看論文我們再來討論= =

recorriendo11/12 16:15事實就是 就算只是AI engineer 工作上會碰到的數學

recorriendo11/12 16:15一定比普通SWE多很多 這到底有什麼好反駁的

stmilk11/12 16:18樓上這不就長久以來要數學不要數學的大戰嗎XD

Murasaki011011/12 16:20我也在FANG, 最賭爛的就是沒ML背景的MLE

Murasaki011011/12 16:21跑來問model為什麼要吐array 不能吐dict嗎

有這麼嚴重嗎?包一個wrapper給他不就好了 XD

Zoanthropy11/12 16:21有拿來預測股價嗎?

stmilk11/12 16:22乾樓上XDDDDDDD

Murasaki011011/12 16:22沒人要你做research, 但這些基礎都沒有是要做啥

stmilk11/12 16:22問不能吐dict也太好笑XDDD

recorriendo11/12 16:22原PO 我不是回你喔 你原文根本沒提到Transformer、

recorriendo11/12 16:22發paper

其實我有提到transfomrer 的作者 :p

pttano11/12 16:38說得好,原原po去巨匠過過水也穩領五六萬起薪,哈哈

recorriendo11/12 16:43原原PO問"從零開始"喔 確定機率、微積分、線代對他

recorriendo11/12 16:43來說是基本嗎??

recorriendo11/12 16:46確實不知原原PO的背景 不過某Dr講的好像就算文組轉

recorriendo11/12 16:46職AI都不用唸一點數學一樣

文組可能轉前堆比較適合 XD 念數學,物理,經濟的改做AI應該就不會太難

ohmylove34711/12 17:17Deepmind真的要跪了…可是這樂觀的講法不就像愛因斯

ohmylove34711/12 17:17坦說微積分考前翻一下就好了嗎XD

修正修正 微積分,線代,機率還是要好好學

※ 編輯: alden (104.132.45.79 英國), 11/12/2021 18:28:18

final0111/12 18:43deepmind還有其他台灣人??

fallcolor11/12 18:48transformer裡的核心self-attention的數學特性很多pape

fallcolor11/12 18:48r分析過了吧

niobafrog11/12 19:05有點好奇原Po的實際工作內容,畢竟大家都知道DeepMin

niobafrog11/12 19:05d做為全世界頂尖的AI Company,工作內容是在focus的研

niobafrog11/12 19:05究新領域並且發Top conference的論文嗎? 還少那部分是

niobafrog: 只有特定的Researcher在進行呢? 謝謝

11/12 19:05 想idea -> 接model ->調hyperparams -> 跑exp ---> rinse & repeat 有空我再認真寫的自介好了

niobafrog11/12 19:06抱歉 手機打字排版有問題,不好閱讀

aiueokaki11/12 19:12這系列真的釣到神人了XD

soccer10311/12 20:19神人推 但太過倖存者症候群給箭頭

我覺我只有imposter syndrome (冒名頂替症) ....

newhandfun11/12 20:27太樂觀

KingSteven11/12 21:47推文有些不是很認同。在AI領域,工程師跟科學家的界線

KingSteven11/12 21:47有時候不該分這麼開。工程師就不用懂AI的數學也是蠻

KingSteven11/12 21:47不好的,有些數學你不懂,就等於是限制自己的天花板,

KingSteven11/12 21:47更別提ICLR、NeurIPS也是很多數學推導的paper啊,這

KingSteven11/12 21:47些都是對整體AI的演進是有幫助的,但寫這些paper就只

KingSteven11/12 21:47能是科學家?不一定吧…至少tier-1公司不會這樣限制

KingSteven11/12 21:50之前面西雅圖微軟的一個engineer職位,面試官也是要

KingSteven11/12 21:50我當場推導softmax和cross-entropy的back propagation

KingSteven11/12 21:50啊……

Morphee11/12 22:04這種大學等級的推導到底算啥麼數學阿 笑死

Morphee11/12 22:05機率、微積分、線代不是都大一的東東 扯一堆幹嘛

我覺得問題是大家對數學夠好的定義不太一樣XD

※ 編輯: alden (104.132.45.79 英國), 11/12/2021 22:09:42

mmonkeyboyy11/12 22:07沒有人說不用數學啊....只是數學拿來幹嘛用而已

mmonkeyboyy11/12 22:07你要拿來看懂別寫的東西就很夠

mmonkeyboyy11/12 22:08要強到拿來開發新東西那是另一回事

mmonkeyboyy11/12 22:08最近美國太多ml人 所以就只好用考的來去掉一些啊

mmonkeyboyy11/12 22:12對啊= =" 不過說什麼數學的 要能用數學解決新東西

mmonkeyboyy11/12 22:13不是總在那賣弄我看得懂我會算....(很多人都會懂啊)

mmonkeyboyy11/12 22:13懶得在那裡扯而已

Morphee11/12 22:16如果你要做的題目 建中生也拿得到資料 你真的做得贏他嗎?

Morphee11/12 22:17我覺得先問這個就夠了 如果有信心就做 沒信心至少換個

Morphee11/12 22:17domain 資料是建中生拿不到的 不然穩死阿 還沒提市場勒

Morphee11/12 22:18弄出來了 結果不好意思商湯也有賣算法 比養你便宜

Morphee11/12 22:19老闆手指算一算 哪天沒錢買跑車了 把算法組全改去做別的

mmonkeyboyy11/12 22:20說到中國....這行業更是結合人多的優勢

johnboygo11/13 01:02我也覺得這系列討論是大家對數學好的定義不一樣XD

johnboygo11/13 01:03對理科背景的人來說微積分、線性代數叫常識不算會數學

johnboygo11/13 01:04對轉職的人來講可能微積分跟線性代數就是難的數學了

j095832208011/13 01:18真的,要考也考個四為 Stoke's thm

johnboygo11/13 01:48懂數學至少要會Lebesgue Integral吧

yyhsiu11/13 04:32推樓上 數學好的定義沒講清楚就先戰成一團了

yyhsiu11/13 04:33原po覺得都沒在用數學 (我會相信),但對某些人來說

yyhsiu11/13 04:33可能一直都在用了

mao920111/13 10:15項目換成更進階的real analysis, commutative algebra也

mao920111/13 10:15不過是數學研究的入門磚而已...真的不要輕易說自己數學

mao920111/13 10:15程度很好

kevin82030811/13 13:31不推XD 有點像我學醫朋友說雅思7.5 不是大學水準嗎

asleisureto11/13 16:03原po講的好像高中畢業刷個幾題就能進faang一樣

asleisureto11/13 16:05那我也可以說高中補個習考上醫牙,也沒很難呀

嗯。你講的有道理。努力把該學的東西學好還是很重要的 所謂的高中程度,是聯考數學可以考到100分...

RumiManiac11/14 13:22終於有人講到了,數學好都沒定義清楚也能戰成一團...

bowin: 推Alden好文分享! :)

11/16 06:54

alksjdf11/16 20:29感謝分享 感覺FANG不管什麼缺都可以用SWE去準備...

alksjdf11/16 20:30只要leetcode刷好刷滿 他甚至不會考你其他專業問題?

我覺得FANG的new grad level 還是coding為主吧 還是要準備一些system design. (distributed system, ML system. depends) 還有一個方法就是先走general hire, 進大公司以後再換team做AI/ML

※ 編輯: alden (104.132.45.79 英國), 11/16/2021 21:52:31