[討論] 關於 Dcard ML 實習作業

看板Soft_Job作者 (六西格瑪)時間1年前 (2023/05/14 01:29), 1年前編輯推噓12(13134)
留言48則, 13人參與, 1年前最新討論串1/2 (看更多)
看到下面有篇大神有討論到這次 Dcard ML 實習作業,因為沒有收到團隊的具體反饋 想和大家討論作業的狀況 題目是用結構資料,包含標題、看板資訊以及1-6小時的愛心數和評論數等等 來預測發文後 24 小時的愛心數 因為當時是期中,我只大概花了五天約二十個小時來做 我的作法大致如下 首先先用 XGBoost LightGBM 把量化資料做出 baseline 但沒辦法處理最重要的標題資訊 所以就直接拿 Huggingface BERT 來做 直接把資料餵進去的訓練是無法收斂的 後來也嘗試一些 Emsemble 和 training tricks 但也都沒辦法收斂,甚至達不到 baseline 的效果 認為是資料量的問題 到這邊沒什麼特別想法就直接寫報告了 我一直都主要是做 CV ,碩論跑去做 3D 對 NLP 非常不熟悉,不知道是否有漏掉關鍵操作 想請同有拿到作業的大神指點 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.171.131.209 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1683998999.A.DBB.html

05/14 03:05, 1年前 , 1F
你用BERT做了什麼以及什麼東西無法收斂?
05/14 03:05, 1F
任務如文中所述,是迴歸問題,目標是文章發文後24小時的愛心數 因為有中文標題,故直覺想到就是 BERT,將中文標題 tokenize 後 連同其他 feature 一同 concatenate,送入BERT直接 end2end 訓練出愛心數

05/14 10:49, 1年前 , 2F
這邊跪等神人分享 我們實驗室沒有人上
05/14 10:49, 2F
不知道實驗室內有沒有其他效果比較好的解法?

05/14 12:01, 1年前 , 3F
這個案例建議使用LSTM序列
05/14 12:01, 3F
謝謝提供思路,但LSTM的話要如何考慮中文標題? 一樣使用word2vec或tokenizer嗎?

05/14 13:05, 1年前 , 4F
雖然我也沒上,但我自己還有另外萃取出判斷個版跟標題是
05/14 13:05, 4F

05/14 13:05, 1年前 , 5F
否有分類之類的feature,這兩項做關聯度分析,相關性也
05/14 13:05, 5F

05/14 13:05, 1年前 , 6F
不低
05/14 13:05, 6F
謝謝,確實我幾乎沒有做 feature engineering 是否方便請教後續是用什麼方法回歸出愛心數?

05/14 14:36, 1年前 , 7F
你這樣 concatenate bert出來的維度那麼大,變成嚴重主導
05/14 14:36, 7F

05/14 14:36, 1年前 , 8F
預測結果。但實際上
05/14 14:36, 8F

05/14 14:38, 1年前 , 9F
但標題實際上根本不太會影響愛心與評論數。光看這點,就覺
05/14 14:38, 9F

05/14 14:38, 1年前 , 10F
得你沒有從最基本的業務理解business understanding來解了
05/14 14:38, 10F

05/14 14:38, 1年前 , 11F
05/14 14:38, 11F

05/14 14:41, 1年前 , 12F
對了,資料量有多打? 資料量少,用複雜的模型根本沒用。
05/14 14:41, 12F

05/14 14:46, 1年前 , 13F
資料量少的話,例如少於幾萬筆,對標題做任何處理可能都沒
05/14 14:46, 13F

05/14 14:46, 1年前 , 14F
太大意義。
05/14 14:46, 14F

05/14 14:48, 1年前 , 15F
這題,愛心數,評論數的特徵,相較於標題,標題絕對是雜訊
05/14 14:48, 15F

05/14 14:48, 1年前 , 16F
05/14 14:48, 16F

05/14 14:51, 1年前 , 17F
HuggingFace tokenizer出來的標題維度很大的,只會讓標題
05/14 14:51, 17F

05/14 14:51, 1年前 , 18F
雜訊主導一切。當然沒辦法收斂,很正常。
05/14 14:51, 18F

05/14 14:58, 1年前 , 19F
資料量確實是問題。但人是否會根據標題就評論或點愛心,是
05/14 14:58, 19F

05/14 14:58, 1年前 , 20F
你優先需要思考到的。
05/14 14:58, 20F
謝謝DrTech大的回復,tokenizer出來的embeddings我是有再downsampling的 當時也有考慮到這件事情,我也測試過downsample到4 - 16或其他一些奇淫巧技 也有對tokenizer做regularization等等,但對訓練幫助都不大 至於標題是否影響愛心數,確實實際上不一定 但該資料集提供的特徵數很少,其餘大多都是scalar 相信他們一定希望受試者去分析標題,當然處理整個標題可能不是個好辦法 1-6小時愛心數與24小時愛心數的相關性非常高 故我也在BERT之中嘗試建立使用這些高相關feature的MLP迴歸模型 以及和 XGBoost LightGBM 的 Ensemble 但對訓練並無明顯益處 我在寫這份測驗的時候,並不覺得量化結果會多好,因為僅有約五萬筆資料(文章) 而同時也要展現工程能力,譬如我用 Pytorch-lightning 架構整個 training, monitoring, evaluation pipeline 實作上的能力可能會區分我與其他一部分的面試者 但結果看來可能是有大神直接幹出很好的模型和訓練結果 後續評分項如解題思路、報告呈現和實作能力都沒有被考量了 才很好奇進入面試的大神是怎麼得出很好的預測方法的 感謝您的回覆 ※ 編輯: Sixigma (118.171.131.209 臺灣), 05/14/2023 16:03:47

05/14 16:44, 1年前 , 21F
我自己對於標題的作法是單純直接用snownlp去做sentiment
05/14 16:44, 21F

05/14 16:44, 1年前 , 22F
polarity 而已,因為我自己認為標題其實只是吸引大家點
05/14 16:44, 22F

05/14 16:44, 1年前 , 23F
進去的機率,但按愛心的數量跟內容比較有相關。我的model
05/14 16:44, 23F

05/14 16:44, 1年前 , 24F
部分,我記得我一開始用xgboost效果不是很好,所以我後
05/14 16:44, 24F

05/14 16:44, 1年前 , 25F
來改用SVR跟一個我自己建的NN模型。但是我那時候也在準
05/14 16:44, 25F

05/14 16:44, 1年前 , 26F
備其他事情,所以好像也沒有fine-tuned 得很好
05/14 16:44, 26F

05/14 17:01, 1年前 , 27F
遇到這種 一定是先做基本的統計分析啊,先看 24小
05/14 17:01, 27F

05/14 17:01, 1年前 , 28F
時愛心數的分佈,然後分成 多愛心數 和 少愛心數的
05/14 17:01, 28F

05/14 17:01, 1年前 , 29F
,然後看哪些特徵 是有用的,最後才建模啊,別在直
05/14 17:01, 29F

05/14 17:01, 1年前 , 30F
接套膜了,不會進步的xdd
05/14 17:01, 30F

05/14 17:54, 1年前 , 31F
謝謝你,長文那麼仔細回應互動喔
05/14 17:54, 31F

05/14 18:43, 1年前 , 32F
直接使用BERT做預測的確是個挑戰,原因有很多就不展
05/14 18:43, 32F

05/14 18:43, 1年前 , 33F
開了,但你可以考慮換個用法,例如把BERT基於文字所
05/14 18:43, 33F

05/14 18:43, 1年前 , 34F
預測的分數當成你主要預測模型的其中一項特徵,這樣
05/14 18:43, 34F

05/14 18:43, 1年前 , 35F
也算是引入文字資訊了。
05/14 18:43, 35F

05/14 21:13, 1年前 , 36F
去鴻海第一年150沒問題
05/14 21:13, 36F

05/14 23:37, 1年前 , 37F
煩不煩哪裡都有鴻海
05/14 23:37, 37F

05/15 03:09, 1年前 , 38F
好奇用哪個BERT Pre-Training的版本?
05/15 03:09, 38F

05/15 06:11, 1年前 , 39F
中文如果沒在你用的bert的tokenizer裡會直接被忽略
05/15 06:11, 39F

05/15 06:11, 1年前 , 40F
喔 確認一下
05/15 06:11, 40F

05/15 16:04, 1年前 , 41F
話一堆時間寫作業還不給回饋 這間很像挺看得起自己的
05/15 16:04, 41F

05/15 16:04, 1年前 , 42F
lul 只能說 沒上是好事
05/15 16:04, 42F

05/15 22:35, 1年前 , 43F
我做法跟h大說的差不多XD 也是至少花了20小時以上時間搞這pr
05/15 22:35, 43F

05/15 22:35, 1年前 , 44F
oject 結果就一封罐頭感謝函 好歹也給個排名吧真的很沒誠意-
05/15 22:35, 44F

05/15 22:35, 1年前 , 45F
_-
05/15 22:35, 45F

05/16 09:42, 1年前 , 46F
根據之前看同學打比賽 我猜可能有人自己去抓dcard的額
05/16 09:42, 46F

05/16 09:42, 1年前 , 47F
外資料來訓練 資料量比一般人多很多的情況下隨便丟個
05/16 09:42, 47F

05/16 09:42, 1年前 , 48F
模型都贏大家
05/16 09:42, 48F
文章代碼(AID): #1aNyaNsx (Soft_Job)
文章代碼(AID): #1aNyaNsx (Soft_Job)