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

看板Soft_Job (軟體人)作者 (我男的)時間4年前 (2021/11/10 14:08), 4年前編輯推噓45(472108)
留言157則, 46人參與, 4年前最新討論串7/16 (看更多)
來用自己的例子勸退一些想跳機器學習的人 首先是數學程度, 我是數學系的,什麼線代,微積分,機率,統計的都很熟其實工作也會用到, 描述一些比較有印象的工作用過的數學, 比較有趣關於微積分的經驗: 老闆把問題用一個式子 exp(-rx)*((1/delta)*sqrt(A))*exp(-x^2/(A))來解釋, 並要對x積整個實數範圍。 在場大家都面面相覷我就被要求積了。 但這其實不難積,就高斯積分,有背整理一下秒解, 沒背也不難推。我大學微積分沒在背的所以是當場直接推,然後才繼續那場會議。 機率統計就那些常見的像是: 在一堆數據中給一些想法假設然後檢定, 或是想辦法對一直變動pattern的資料去建對應的機率模型。 但我具體數學程度到哪,舉兩個例子一個是深度學習WGAN一個是經典的random forest。 https://arxiv.org/pdf/1701.07875.pdf 這是WGAN。 https://link.springer.com/article/10.1023/A:1010933404324 這是RF。 基本上裡面的純數推導我幾乎都理解, WGAN用到實分析跟線性規劃, RF則是機率。 以上大概描述一下我的數學程度。 接著是我的電腦技能, 我熟悉的語言有C++跟PYTHON,基本上各有兩年以上的工作實務經驗。 python就絕大部份公司機器學習用的語言不解釋。 C++曾被公司要求所有演算法都要自己刻,這之中還包刮神經網路, 連 backpropagation 都要自己刻, 然後資料結構演算法,計算機組織,作業系統都讀過。 至於程度到哪我也不好說,我自知去參加程式比賽會被電死,但基本程度應該是有。 資料結構的程度至少是在刷題的時候不會卡在"天啊這個是什麼資料結構", 跟曾經在工作被要求刻了一個紅黑樹,雖然我現在忘了而且skip list太好用。 演算法就刷題的時候不會無止境一直設條件, 會嘗試用一些演算法想法比如 divide and conquer or dp 來解題。 計組作業系統就是那些什麼cpu pipeline 記憶體管理緩存設計都懂。 資料庫則是公司用什麼我就學什麼。 機器學習的部分就是幾乎現在大家喊得出名字的我都可以實作, 有要證明的模型我都可以證明,不過需要回憶準備一下哈哈因為模型太多沒全記。 大致用書來表示一下我懂得大概範圍好了。 https://www.deeplearningbook.org/ deep learning 的經典不解釋。 http://www.cs.cmu.edu/~tom/mlbook.html machine learning 也算經典但很老的一本了。 https://www.tenlong.com.tw/products/9787302275954 各種經典的機器學習模型的推導書,雖然這個作者幾乎只是翻譯論文,但翻的還滿好的。 新技術太多我就不提了我都有在追。 以上大致描述一下我的程度,目前的結果是我近半年完全找不到工作XD 不管國內國外,丟履歷都沒回覆,基本上連面試機會都沒有。 搞得現在只能送foodpanda, 真的是能力不足阿... 希望這慘痛的經歷能拯救還想再跳AI的人阿。 ================================================== 發現太多人執著實作的部分,其實要求手刻的只有一家公司,雖然我也在那邊做很久 除了那間公司其他的我也是用包啦,Tensorflow,cntk 之類的都會用。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.88.3 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1636524507.A.D68.html ※ 編輯: stmilk (223.137.88.3 臺灣), 11/10/2021 14:12:47 ※ 編輯: stmilk (223.137.88.3 臺灣), 11/10/2021 14:23:19

11/10 14:18, 4年前 , 1F
大佬可以考慮下轉SDE了………………………………………
11/10 14:18, 1F

11/10 14:21, 4年前 , 2F
祝原PO找到工作
11/10 14:21, 2F

11/10 14:23, 4年前 , 3F
是不是CV寫太爛了?
11/10 14:23, 3F
問過獵頭獵頭說還行,所以我也不知道哈哈哈

11/10 14:29, 4年前 , 4F
比起外送,不如先找個web後端蹲一下,雖然月薪七八萬可
11/10 14:29, 4F

11/10 14:29, 4年前 , 5F
能比不上資料處理十幾萬~
11/10 14:29, 5F
對阿所以我現在在補 distribution system 的東西了哈哈哈看能不能去撈個資料庫相關的? ※ 編輯: stmilk (223.137.88.3 臺灣), 11/10/2021 14:31:53

11/10 14:38, 4年前 , 6F
那個積分做配方後還是高司積分,不過面面相覷也太慘
11/10 14:38, 6F
對阿,更有趣的是其中一個人的同職務薪水還是我的三倍.... ※ 編輯: stmilk (223.137.88.3 臺灣), 11/10/2021 14:42:43

11/10 14:51, 4年前 , 7F
咦...原本的公司是倒了嗎?
11/10 14:51, 7F
想去國外,還有存款就辭了唸英文跟丟履歷,然後國外都沒回覆, 改丟國內的國內也都沒回覆,慘 ※ 編輯: stmilk (223.137.88.3 臺灣), 11/10/2021 14:54:17

11/10 15:00, 4年前 , 8F
比較好奇 你台灣投那些公司?
11/10 15:00, 8F

11/10 15:01, 4年前 , 9F
沒有只投百萬的啦,雖然我最後一份工作是有破百
11/10 15:01, 9F

11/10 15:02, 4年前 , 10F
基本上看到覺得符合就丟了
11/10 15:02, 10F

11/10 15:05, 4年前 , 11F
冒昧問一下原po學歷?
11/10 15:05, 11F

11/10 15:06, 4年前 , 12F
據我所了解的台灣有招比較多AI的 內部幾乎都是台清交
11/10 15:06, 12F

11/10 15:06, 4年前 , 13F
只有數學學士還不是四大哈哈,所以上述的東西全部都是自修
11/10 15:06, 13F

11/10 15:06, 4年前 , 14F
不懷疑能力,但方法很沒效率吧,手刻技術演算法或數學很厲
11/10 15:06, 14F

11/10 15:06, 4年前 , 15F
害,實務上根本沒必要。
11/10 15:06, 15F

11/10 15:07, 4年前 , 16F
或者有相關會議 publication
11/10 15:07, 16F
對阿,我最後一間就是被推薦去面試的,一面試就上了。但我之前自己丟根本也沒鳥我XD

11/10 15:07, 4年前 , 17F
而且實務上,你數學再強也輸給爛資料。
11/10 15:07, 17F
你說的沒錯XD但是主要還是看你怎麼處理,再爛都有辦法處理, 爛的資料神經網路無法處理因為神經網路是強逼近,就垃圾進垃圾出 但數學反倒可以找到很好的方向, 比如說我處理過那種雜訊很多就算了,哪些是雜訊還都不知道的數據。 方法就把資料換個方便我弄成隨機過程的樣子, 然後抽特徵的時候隨機,根據大數法則我可以期待他會逼近一個我要的值, 且也可以淡化雜訊的影響畢竟是隨機取,最終效果很好這樣 ※ 編輯: stmilk (223.137.88.3 臺灣), 11/10/2021 15:16:24

11/10 15:09, 4年前 , 18F
要自己刻bp?! 是在gpu上實作嗎
11/10 15:09, 18F

11/10 15:11, 4年前 , 19F
如果是要在cpu上刻BP, 為何不用現成library ?!
11/10 15:11, 19F
我怎麼知道XD 是公司要求阿

11/10 15:12, 4年前 , 20F
"要證明的模型我都可以證明,不過需要回憶準備一下",這句
11/10 15:12, 20F

11/10 15:12, 4年前 , 21F
話看起來很強,實際上面試大廠也是不合格的。
11/10 15:12, 21F

11/10 15:14, 4年前 , 22F
李航那本書很多人在背喔,某些職缺的基本功而已。
11/10 15:14, 22F
其實我不想跟你爭辯這個啦.... 我只是想表示這麼基本的東西我都有公司也是不要阿 真的要說的話不然你試著準備一下那個WGAN的中為什麼Wasserstein比原本的GAN的cost function 還要好的證明然後試試?

11/10 15:17, 4年前 , 23F
痾.....我沒說這些東西很難啊= =
11/10 15:17, 23F
※ 編輯: stmilk (223.137.88.3 臺灣), 11/10/2021 15:22:36

11/10 15:18, 4年前 , 24F
原文這種做法,真的不如好好學 TF或 keras範例,還比較好
11/10 15:18, 24F

11/10 15:18, 4年前 , 25F
找工作。
11/10 15:18, 25F

11/10 15:20, 4年前 , 26F
D的意思不是這些東西難易度的問題
11/10 15:20, 26F

11/10 15:20, 4年前 , 27F
是在跟你說面試就是不太能有"回憶準備一下"這種情況
11/10 15:20, 27F

11/10 15:20, 4年前 , 28F
這跟能力無關而是市場選擇問題。
11/10 15:20, 28F

11/10 15:20, 4年前 , 29F
面試當下我也只能根據你講出來的東西去判斷
11/10 15:20, 29F

11/10 15:21, 4年前 , 30F
所以你如果當場表現不太流暢熟練的話對我來說就是負面訊號
11/10 15:21, 30F
還有 93 則推文
還有 15 段內文
11/11 00:51, 4年前 , 124F
幫補血, 老實說李航那本我不認為看完對於找 AI 職缺有什麼
11/11 00:51, 124F

11/11 00:51, 4年前 , 125F
幫助...
11/11 00:51, 125F

11/11 00:52, 4年前 , 126F
另外, "線代、微積分、機率、統計都很熟, 工作也會用到"
11/11 00:52, 126F

11/11 00:53, 4年前 , 127F
但你給的例子卻不太像是日常工作會被 "應用" 的問題...
11/11 00:53, 127F

11/11 00:54, 4年前 , 128F
我能理解工作中會應用到這些數學概念的情境, 但很少會是證
11/11 00:54, 128F

11/11 00:55, 4年前 , 129F
明或是求出解析解的方式呈現, 通常比較像是將問題抽象化簡
11/11 00:55, 129F

11/11 00:55, 4年前 , 130F
?
11/11 00:55, 130F
我好不容易等到一個人願意討論一下技術但不知為啥他刪掉了=_=但我都打完了就貼一下哈哈哈,順便回答你的問題。我之前碰到的問題,就是因為有論文證明該問題處,我才沒在多花時間在那個模型上,我是還沒辦法做到那種程度的證明啦,但還是有能力做一些證明,這些證明也讓我跟老闆溝通順暢些沒在做些我認為的偏路,然後我同意你說的,更多時候就是抽象化簡化問題就是。以下是我剛回覆的技術部份。 當時我處理的影像超稀疏的。gan難train是在那個模型非常 容易被一個函數分開,也就是可以找到完美的discriminato r,這是這兩個機率support的問題,而且條件還不用是這兩 個support不相交,只要幾乎處處不相交就可以,這個至少廣 大的實驗告訴我們非常容易發生。所以本質上只要是那個co st function,初始值不好不管做甚麼調整丟什麼模型進去都 會遇到這個問題。然後可能是我的處理的影像真的太稀疏, 應該是可以理解成這個pattern的support超小,基本上根本 train不起來。所以我那時的想法是就是想要一個理論上直接 可行的結果。這樣我不用把模型弄得巨爆幹複雜,設計一堆 有的沒的只為了能先train,與其想辦法各種嘗試引導訓練, 抽象地說就是想辦法找一個先驗讓兩個pattern的support能 重合。不如直接一個理論可行的再去處理wgan模型的問題,因 為比較具體有方向。順便說之前的別組也是各種花式加self -attention在decoder和encoder中也是沒用,至於原因因為 不是我做的我沒去也不想去深思,或許也可以就是~可能有錯 ,多包涵啦。

11/11 01:14, 4年前 , 131F
貴圈真的有夠內卷的。。
11/11 01:14, 131F
※ 編輯: stmilk (223.137.88.3 臺灣), 11/11/2021 01:46:54 ※ 編輯: stmilk (223.137.88.3 臺灣), 11/11/2021 01:56:19

11/11 04:43, 4年前 , 132F
雖然我不知道為什麼要欺負做數值的
11/11 04:43, 132F

11/11 04:47, 4年前 , 133F
很多做減模型的....都跟數學沒啥關的
11/11 04:47, 133F

11/11 04:48, 4年前 , 134F
啊很多AI公司都要這種人 薪水$200k起跳哦
11/11 04:48, 134F

11/11 04:50, 4年前 , 135F
更別提那一堆做data的
11/11 04:50, 135F

11/11 05:14, 4年前 , 136F
工作很簡單,但錢並沒有不多,主要是marketing的問題
11/11 05:14, 136F

11/11 05:15, 4年前 , 137F
要有把ML和公司業務結合的能力,這並沒有那麼簡單
11/11 05:15, 137F

11/11 05:19, 4年前 , 138F
其實很多AI公司都不太賺錢的XD
11/11 05:19, 138F

11/11 17:41, 4年前 , 139F
推原po重心根本不在自身上+1~推文整個歪樓了XD
11/11 17:41, 139F

11/11 20:34, 4年前 , 140F
推一個。
11/11 20:34, 140F

11/11 20:34, 4年前 , 141F
想請教一般ML不平衡分類模型,變數也都很稀疏情況下,
11/11 20:34, 141F

11/11 20:34, 4年前 , 142F
除了up sampling跟套class weights外,有更創意的做法
11/11 20:34, 142F

11/11 20:34, 4年前 , 143F
嗎?
11/11 20:34, 143F
其實都差不多吧,看狀況用不同的方式去做增加或減少而已 我稍微想到可能比較有創意(?)你可以嘗試的方法。 從sample的特徵下手,而且我會傾向不用up sample因為我不喜歡人工數據XD。 雜訊很多的情況就上面有提到,從sample中隨機取特徵,然後創個新sample。 但因為我的問題是哪些是雜訊也不知道, 所以這樣的好處是資料都是是自然環境產生的, 我不用去考慮這樣取是不是會有bias,反正隨機數拉高一定會逼近我要的樣子。 注意如果特徵彼此之間獨立性高,這樣做會有問題, 依我的經驗我還想不到哪些可能的題目可以用這個XD 然後是特徵少且彼此獨立性高且樣本數也很少的話, 這種的就麻煩因為你的資訊本來就少,大概只能用加雜訊的方式去up sample了, 然後是特徵少且獨立性高然後樣本高,那這樣我會採down sample, 我現在直觀想到就 greedy 地去做。 先根據你的問題,觀察哪個特徵最重要(簡單的方法就隨機森林), 從這個特徵來看聚的狀況,但注意這個聚集狀況可以用不同的方式來定義, 就是用不一樣的距離公式來嘗試, 把這個群體中sample數偏高的類別刪掉一些, 基本假設就是因為這個特徵影響大, 那又特別多的sample聚集在一起的東西可能影響會太大有bias 同樣地你可以反過來從不重要的特徵下手去砍,這樣對整個資料的影響會最小 然後反過來特徵多且獨立性高樣本數多,因為這種狀況可能會有為度災難的可能 所以會特徵一起砍 觀察不重要的特徵的聚的狀況, 直接砍掉這個特徵,並砍掉不平衡的那個地方,然後一直持續到樣本平衡 特徵多且獨立性高樣本少,其實會發現樣本少就是麻煩, 所以我一樣會砍最沒影響往上的特徵,然後觀察從最重要往下的特徵的群, 去砍裏面不平衡的那方 不過樣本數少可能會有問題,我應該還是傾向up sample就是 然後我現在想的到的終極狀況之一是特徵沒有特別的群聚現象, 因為這個太抽象可能個別問題有不同的方法XD 在目前抽象的假設下我只能建議加雜訊 up sample 或是隨機去 down sample 以上你參考一下,但畢竟我不知道你做的題目, 所以我盡量先考慮比較一般只考慮抽象特徵的情況了 但對某些特定題目不一定可行你要小心使用哈哈 最後我上面除了雜訊那個都假設獨立性高,這個可以很簡單地用PCA達成, 所以如果你想要維持原本的特徵,不用獨立性高的假設其實應該差別也不大 對不起我昨天其實滿累得沒注意到你應該就是問樣本數很少還稀疏的情況, 樣本數少的時候方法想得很混。 如果樣本數少,並假設超級極端狀況99%比1%。 一樣觀察特徵附近(注意這個"附近"一樣是根據你的距離定義,根據不同問題是用的距離定義), 因為資訊實在太少,基本只能假設這個樣本附近可能會有同樣的標注。 所以從附近去生成樣本, 如果這個某個標注還在另外一個標注的某個聚落附近,你也可以考慮降低這個聚落的影響, 就是在這個聚落去砍掉多數的樣本。 其實概念上都差不多,就是根據你的問題,看有沒有某些前提資訊可用,然後去resample。 根據你的問題,這個特徵的選法就不同,探討聚落的方式也不同(像是KNN,T-SNE)。 若是你用的是隨機森林的方法,你甚至可以考慮把這個算法啟發化。 其他的方式想啟發化也不是不行,但是就是沒有tree model這麼乾淨俐落就是 以上就是我目前想的到的處理方法哈哈 ※ 編輯: stmilk (223.137.88.3 臺灣), 11/11/2021 21:46:44 ※ 編輯: stmilk (223.137.88.3 臺灣), 11/11/2021 21:58:18

11/11 22:44, 4年前 , 144F
所以其實講白了 就是前面講爛了的 "AI這職缺在台灣"
11/11 22:44, 144F

11/11 22:44, 4年前 , 145F
"擁有碩博士學位只是基本門票" 非本科轉行或學士根本是連
11/11 22:44, 145F

11/11 22:45, 4年前 , 146F
你有多強都不想看 我相信有看的話 不會一點機會都沒有
11/11 22:45, 146F

11/11 22:46, 4年前 , 147F
但是都是直接 "蛤? 學士? 還不是本科 直接PASS吧"
11/11 22:46, 147F

11/12 00:36, 4年前 , 148F
你有投MTK嗎? 我能力搞不好沒有你十分之一 沒被考什麼
11/12 00:36, 148F

11/12 00:36, 4年前 , 149F
就上了..
11/12 00:36, 149F

11/12 00:41, 4年前 , 150F
大廠我連履歷有沒有被已讀都不知道哈哈哈哈
11/12 00:41, 150F

11/12 08:12, 4年前 , 151F
MTK不收學士吧
11/12 08:12, 151F
※ 編輯: stmilk (223.137.88.3 臺灣), 11/12/2021 12:25:17 ※ 編輯: stmilk (223.137.88.3 臺灣), 11/12/2021 12:27:45

11/12 21:41, 4年前 , 152F
謝謝分享
11/12 21:41, 152F
希望能有給你一些想法啦哈哈

11/13 01:55, 4年前 , 153F
可是我非本科四大理工碩找演算法相關的職缺還是一堆人
11/13 01:55, 153F

11/13 01:56, 4年前 , 154F
來找我欸 只能説原po時運不濟
11/13 01:56, 154F

11/13 15:11, 4年前 , 155F
其實沒關係啦我看很開,因為是我自己喜歡做的事,然後現
11/13 15:11, 155F

11/13 15:11, 4年前 , 156F
在放棄在台灣掙扎要出國去唸書了哈哈哈
11/13 15:11, 156F

11/13 15:12, 4年前 , 157F
就一邊foodpanda一邊刷題一邊找代辦了
11/13 15:12, 157F
※ 編輯: stmilk (223.137.88.3 臺灣), 11/13/2021 15:17:46
文章代碼(AID): #1XYs7Rre (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1XYs7Rre (Soft_Job)