# 退伍前Learning Notes -------------------- **To Do List** 1. 修改個人履歷: 要修成怎樣-乾脆不修好了 2. 重溫一次大學專題簡介: 放到google cloud上-忘記了QQ,這禮拜回家再看一次 **Prepare Files** - [x] 大學成績單-電子檔: 回北大去印一份 - [x] 研究所成績單-電子檔: 直接掃描 - [x] 競賽獎狀、比賽證明等 * NCPC * CPE (1%那次的) * 其他所有的也都要掃描備份 - [x] 影印面試相關證明,以茲請假 **Technology and Knowledge** 1. Transformer and BERT * [BERT+實作](https://leemeng.tw/attack_on_bert_transfer_learning_in_nlp.html) * [Transformer-知乎](https://zhuanlan.zhihu.com/p/48508221) * [Attention is all you need](https://reurl.cc/Zjmgn3) * 2. Review SQL 基本語法 * related website? 3. 一些機器學習方法的相關名詞要複習 ~~* Ensemble Learning~~ -------------------- ## Notes of Transformer -------------------- 要搞懂的東西: * Self-attention中的Q, K, V是啥,還有實際計算時為何要這樣計算-> ok * Q,K,V經過這樣的計算後為何可以達到self-attention的目的?-> * Self-attention中有提到,殘差網路的short-cut結構(解決深度學習的退化問題 * Notes: * Why need multi-heads? -> Compute "similarity" maybe in many different perspectives. * So, we have known that BERT is the encoder of transformer. * "Cloze" and "Context Predict" is the training methods of BERT pre-trained by Google team. * * -------------------- ## Notes of Ensemble Learning -------------------- **Ensemble** Learning: 概念: 多個學習器加總的結果會比單個還要好->三個臭皮匠,勝過一個諸葛亮。 盲人摸象,每個子學習器所學到的可能只是片段的知識, 方法: * **Bagging**: 概述:重複抽樣訓練資料(**B**ootsrap **agg**regation),每次的抽樣都訓練出一個模型,最後的預測結果則是用投票或是其他的方式取結果。 註:Boostrap是統計學中的一種抽樣方法,藉由針對進行多次的可放回重複採樣,我們就能估算出母體的分配及變異。 ![bagging實際運行](https://i.imgur.com/6WyYFiB.png) 範例: * Random Forest: concept: bagging+randomized reature set 變種: Extra-Trees(**Extr**emely **Ra**ndomized **Trees**) Feature Importance * **Boosting**: 概述:持續調整訓練資料或子模型的比重。每次迭代分類錯的樣本權重會提高,並在新一次的迭代中加入一個新的弱分類器。在過程中也會依據誤差分配每個分類器的權重。 ![Boosting範例](https://i.imgur.com/bQgUF5o.png) 註:同樣都是基於boostrap,但boosting不同於bagging每個學習器互相獨立,而是引入了團隊分工的概念。 範例: * AdaBoost (**Ada**ptive **Boost**ing) Minimize Weighted Error: minimize $ J(\theta)=\frac{1}{n}\sum_i w_i L(\hat{y}_i , y_i)$ * Gradient Boosting * Stacking(比較少出現?):把子模型堆疊起來 -------------------- # 暑假Learning Notes -------------------- **一個禮拜看一篇論文!!!** **現在要做的事情有二:決定論文方向、熟悉震瑜code** **相關網頁** AI course: [AI learning note](https://docs.google.com/document/d/1JEB8HJCcazgl6UwQzT47OgJElAI7nl0QigO_rhPgXiU/edit) [AI HW list](https://docs.google.com/document/d/1pEc9momUE5MTWEwIlRKELFXDK0KjWXX7MiW0eeYfeXc/edit) [AI course schedule 2018](https://sites.google.com/site/ncuaicourse/course-fall-2018/schedule-2018) [Luff note](https://docs.google.com/document/d/1x3lCxyPxmB_OhiQV3LbYFaRdeRxMXV47pEK1P-z_kTg/edit#heading=h.ls7exb9dvz98) [AI HW1 標記資料](https://docs.google.com/spreadsheets/d/1j99_ArGWABjp8jJ1DftDhEEoXL7GnGu8hpE_tCHS_Ms/edit#gid=1932961394) [event go! search API](http://eventgo.widm.csie.ncu.edu.tw/EventGO!%20API.html#activity) **Paper to be read** 0 [Neural Word Segmentation with Rich Pretraining](https://www.aclweb.org/anthology/P17-1078.pdf) 1 [A Survey on Recent Advances in Named Entity Recognition from Deep Learning models](https://www.aclweb.org/anthology/C18-1182.pdf) 2 [A Decomposable Attention Model for Natural Language Inference](https://arxiv.org/pdf/1606.01933.pdf) 3 [NERO: A Neural Rule Grounding Framework for Label-Efficient Relation Extraction](https://arxiv.org/abs/1909.02177) **Discussion** AI course: **To tell teacher** **To do** 學習:震瑜的code    How to use word embedding/W2V    Study beautiful AI(how to make ppt)    pipenv怎麼用 實作:Lattice for 威誠、威誠的論文code    Cross-domain NER 實作    圓皓學長的那篇論文的實作(about a month)   AI Course:HW1 PPT內容:簡報應有內容、kaggle描述、標記工具、中英文夾雜 震瑜相關:把R跑GBM的程式寫成(config+R),看能不能寫在linux上跑的模式       Paper Survey: --- **8/27(四)** --- **8/26(三)** [KKBOX](https://docs.google.com/document/d/1m0MbdxOxpom2bCMmgUWpT_F1Q7JOv7J_jlLMHkMFaO8/edit#heading=h.2svya9fcrnzn):整理跟家電相關的PTT看板有無在NAS中 學習:docker on linux、mobaXterm基本操作 --- **8/25(二)** 學習:理解震瑜code上不同程式對應論文的部分、python的class架構、開始接觸docker --- **8/24(一)** 學習:PyTorch基本架構、anaconda虛擬環境(但始終無法裝pytorch) --- **8/21(五)** Group Meeting:[cross-domain ner using cross-domain language modeling](https://www.aclweb.org/anthology/P19-1236.pdf)報告、應該要實作這篇paper --- **8/20(四)** Group Meeting:[cross-domain ner using cross-domain language modeling](https://www.aclweb.org/anthology/P19-1236.pdf)報告、應該要實作這篇paper 論文:[Chinese NER Using Lattice LSTM](https://www.aclweb.org/anthology/P18-1144/) 製作PPT --- **8/19(三)** [KKBOX](https://docs.google.com/document/d/1m0MbdxOxpom2bCMmgUWpT_F1Q7JOv7J_jlLMHkMFaO8/edit#heading=h.2svya9fcrnzn):找跟家電相關的PTT看板 學習:使用pipenv(簡單下指令建環境) 論文:[Chinese NER Using Lattice LSTM](https://www.aclweb.org/anthology/P18-1144/) 製作PPT(至model結束 幾乎) --- **8/18(二)** [KKBOX](https://docs.google.com/document/d/1m0MbdxOxpom2bCMmgUWpT_F1Q7JOv7J_jlLMHkMFaO8/edit#heading=h.2svya9fcrnzn):會議記錄 論文:[cross-domain ner using cross-domain language modeling](https://www.aclweb.org/anthology/P19-1236.pdf) :把github_code研究過+再讀一遍論文相關部分得出推測結果。 --- **8/17(一)** [KKBOX](https://docs.google.com/document/d/1m0MbdxOxpom2bCMmgUWpT_F1Q7JOv7J_jlLMHkMFaO8/edit#heading=h.2svya9fcrnzn):瀏覽各交易板的網站架構、玩一下ETL 論文:[NERO: A Neural Rule Grounding Framework for Label-Efficient Relation Extraction](https://arxiv.org/abs/1909.02177) (只有再看一次圓皓學長的PPT、嘗試跑該論文的code,但仍在修正bug) --- **8/14(五)** 論文:NO --- **8/13(四)** 論文:威誠的論文 --- **8/12(三)** 論文:[Chinese NER Using Lattice LSTM](https://www.aclweb.org/anthology/P18-1144/) 看完第一遍 --- **8/11(二)** 論文:[cross-domain ner using cross-domain language modeling](https://www.aclweb.org/anthology/P19-1236.pdf) 看github原始code,嘗試找出上周五報告問題答案,仍未果。    [Chinese NER Using Lattice LSTM](https://www.aclweb.org/anthology/P18-1144/) --- **8/10(一)** 朋友來中央,休息z --- **8/7(五)** 論文:[cross-domain ner using cross-domain language modeling](https://www.aclweb.org/anthology/P19-1236.pdf) 報告 - 問題:W、I 是如何更新的 --- **8/6(四)** 論文:[cross-domain ner using cross-domain language modeling](https://www.aclweb.org/anthology/P19-1236.pdf) 整理報告 --- **8/5(三)** 論文:桂如學姊的論文 --- **8/4(二)** 論文:[cross-domain ner using cross-domain language modeling](https://www.aclweb.org/anthology/P19-1236.pdf) 看完第一遍 --- **8/3(一)** AI Course:整理自己跟筱雯標記的結果 **要搞清楚目前自己要做的事情!!!** **應該是要想論文主題、開始找論文、報論文** **而不是一直做這些重複又沒什麼難度的事情!!!** 論文:[cross-domain ner using cross-domain language modeling](https://www.aclweb.org/anthology/P19-1236.pdf) --- **7/31(五)** AI Course:電腦重開QQ 把前一天的程式重寫一遍 其他:去KKBOX聽學長報告 --- **7/30(四)** AI Course:整理各標籤在總資料的佔比;把目前的performance貼上去 --- **7/29(三)** AI Course:AI Cup-愛文芒果良率分類競賽 研究        人工標計資料label整理(讀入) --- **7/28(二)** AI Course:PPT整理 --- **7/27(一)** 高雄度假中... --- **7/24(五)** AI Course:標註100筆活動資料(圓皓學長用"營隊"、"夏令營"篩出的資料) --- **7/23(四)** 學習:AI course-Ch4.3 AI Course:How to create a Kaggle competition      嘗試找出可以區別出不同年齡層的[query](https://bit.ly/2CZBnAR )(希望一天可以測10個query) --- **7/22(三)** 學習:AI course-Ch4.1~Ch4.2    W2V[概念](https://bit.ly/2OKxMcp)、[實作](https://bit.ly/3hv5zTr) (感覺跟作業比較無關) AI Course:思考同學人工標記的問題 其他:幫覺修看企畫書、震瑜論文初讀(完) --- **7/21(二)** 學習:AI course-Ch4.1~4.2 AI Course:HW1初步做過一遍(自動標記:描述有出現"高中")、整理[HW1實做過程](https://docs.google.com/presentation/d/1VMwtbqWgnIFVpmh0PV18fAWMYHevRs8DN1Np81u5imE/edit#slide=id.p) 其他:震瑜論文初讀(40%) --- **7/20(一)** 學習:Reinforce Learning - [影片](https://www.youtube.com/watch?v=W8XF3ME8G2I)、[網站](https://bit.ly/2ZMRTgu) (有點太多了,只能大概看一下RL的概念QAQ) AI Course:HW1讀入資料,轉成DataFrame、初步整理 其他:決定gm要報的[paper](https://www.aclweb.org/anthology/P19-1236/) --- **7/17(五)** 學習:nan 其他:跟學長釐清HW1的內容、掃座位 --- **7/16(四)** 學習:AI course-Ch3.6~Ch3.7    Transform - [影片](https://www.youtube.com/watch?v=ugWDIIOHtPA)、[網站](https://zhiqiangho.github.io/2019/08/06/li-hong-yi-transformer-bi-ji-fu-dai-ma/) 其他:學長口試(Naufal+在職) --- **7/15(三)** 其他:GM論文投影片製作、準備[7/16 GM](https://docs.google.com/document/d/1JYKY6kAR3cZQK5_X_rfEtvOqM_MkVsSEQDUqt3RxxQw/edit) --- **7/14(二)** 學習:AI course-Ch3.4~Ch3.5 其他:GM論文投影片製作(約80%...)    學長姐口試 --- **7/13(一)** 學習:BERT-[影片](https://www.youtube.com/watch?v=UYPa347-DdE)、[網站](https://leemeng.tw/attack_on_bert_transfer_learning_in_nlp.html)(大概了解BERT是什麼)       AI course-Ch3.1~Ch3.3 其他:GM論文投影片製作(約30%...)、看震瑜的論文 --- **7/6~7/10** 論文:[Automatically Labeled Data Generation for Large Scale Event Extraction](https://drive.google.com/drive/folders/1OHVXispFgFLveuS0doGoX8P8q4-RBLU8)(GM) AI課程:AI課本訂書、[過去AI課程的規劃](https://sites.google.com/site/ncuaicourse/course-fall-2018/schedule-2018)、[AI作業整理](https://docs.google.com/document/d/1pEc9momUE5MTWEwIlRKELFXDK0KjWXX7MiW0eeYfeXc/edit) --- -------------------- # 碩一上Learning Notes -------------------- **12/16~12/20(開學 第十五周)** [kkbox hit song prediction](http://bit.ly/38JAF68)     論文:AutoLearn — Automated Feature Generation and Selection    其他:準備學測-化學    課外讀物-崩壞國文(鮮聞的中國文學趣事)    期末考將至,準備期末考 --- **12/9~12/13(開學 第十四周)** [kkbox hit song prediction](http://bit.ly/38JAF68)    事件:PTT新增資料順序邏輯調整、部分實驗數據更新、與KKBOX確認[疑慮部分](https://docs.google.com/document/d/1m0MbdxOxpom2bCMmgUWpT_F1Q7JOv7J_jlLMHkMFaO8/edit#)    結論:KKBOX在做預測時會刪除不合理的預測歌曲。       我們使用的資料集是沒錯的。 論文: 其他:準備學測-物理(全)    課外讀物-美麗新世界 --- **12/2~12/6(開學 第十三周)** [kkbox hit song prediction](http://bit.ly/2EmaTa2)    事件:整理完善    結論:加入各項PTT資料後,MAPE有下降約2%。       而仔細看每天的數據及只看統計數據的peformance差不多。       分開看每天的數據並沒有使成效獲得較顯著的提升,相較於只看統計數據。 其他:準備學測-國文三、四冊    課外讀物-美麗新世界 --- **11/25~11/29(開學 第十二周)** [kkbox hit song prediction](http://bit.ly/2EmaTa2)    事件:加上emotion資料。    結論:mape稍降 其他:準備學測-國文第一、二冊    課外讀物-美麗新世界 --- **11/18~11/22(開學 第十一周)** [kkbox hit song prediction](https://bit.ly/2ns2ey1)    事件:ppt頁數過多,整理ppt。 其他:期中考周,準備期中考    準備學測-公民+數學    課外讀物-美麗新世界 --- **11/11~11/15(開學 第十周)** [kkbox hit song prediction](https://bit.ly/2ns2ey1)    事件:針對每個不同的dataset,都跑五次gbm模型。成效取平均,以減少誤差。       繪出每日討論趨勢的盒形圖及長條圖、PCA降維。    結論:成效無顯著差異。每個變數中,0的數量過多(幾乎都超過75%),       因此盒形圖較難看出趨勢。       PCA的特徵值沒有變數明顯有較高貢獻。 其他:期中考周,準備期中考    課外讀物-美麗新世界 --- **11/4~11/8(開學 第九周)** [kkbox hit song prediction](https://bit.ly/2ns2ey1)    事件:更新實驗數據、把每日討論量轉換成與前一天相比的討論增長幅度。    結論:成效無顯著差異。 其他:期中考將至,準備期中考    課外讀物-美麗新世界 --- **10/28~11/1(開學 第八周)** [kkbox hit song prediction](https://bit.ly/2ns2ey1)    事件:將PTT每天的討論次數分開抓出來,觀察趨勢、繪圖。    結論:成效無顯著進步,但歌曲的討論趨勢除了在發行日外,       在發行後的約第十天會有第二波小高峰。 ![](https://i.imgur.com/pZyGel6.png "title" =120x120) 其他:期中考將至,準備期中考    課外讀物-美麗新世界 --- **10/21~10/25(開學 第七周)** [kkbox hit song prediction](https://bit.ly/2ns2ey1)    事件:首度帶入PTT的資料,有每首歌的討論次數、推噓數量。       結論:效能有些微的改善,但80%以上的歌討論次數都是0。 其他:首度將于晴、昱豪拉去跟Ploy一起打球;參加台北大學校慶    課外讀物-美麗新世界 --- **10/14~10/18(開學 第六周)** kkbox hit song prediction:預測新資料,並依照target值做分群、分類,並比較成效    連結:https://bit.ly/2ns2ey1    結論:無突破性發展,但發現有些情況下,linear model的成效竟比gbm好 論文:NEURAL SPEED READING WITH STRUCTURAL-JUMPLSTM 其他:課外讀物-美麗新世界(與"1984"、"我們"並稱世界三大反烏托邦小說) --- **10/7~10/11(開學 第五周)** kkbox hit song prediction:預測新資料    連結:https://bit.ly/2ns2ey1    結論:成效與kkbox提供的base line差不多 論文:NEURAL SPEED READING WITH STRUCTURAL-JUMPLSTM 其他:周六要去當表姊婚禮的婚攝,開始惡補攝影的相關知識及技巧。 --- **9/30~10/4(開學 第四周)** kkbox hit song prediction:與kkbox確認quantile loss的使用方式是否如我們猜測。    結論:如我們猜測。 論文:Gradient boosting machines, a tutorial 並報告    連結:http://bit.ly/2MiAAvQ    心得:了解GBM整體的運作方式及參數所代表的意思、如何設定、及GBM可以做到哪些事。 其他:跟Ploy及她的泰國朋友去打羽球,被Ploy上了很多課。Ploy有一個泰國朋友的泰文名跟她一樣。(都是thamolwan) --- **9/23~9/27(開學 第三周)** kkbox hit song prediction:發現預測成效不合理部分,修正先前程式bug,並重新預測、視覺化。    連結:http://bit.ly/2N5uMIV    結論:並無突破性的成效出現,嘗試許多方法,MAPE都只能壓在0.7左右。kmeans切的y都至少有一點是在數值特大的部分。 論文:Gradient boosting machines, a tutorial --- **9/16~9/20(開學 第二周)** kkbox hit song prediction:改良方法-用kmeans將資料(y)分群再分類再做預測    連結:http://bit.ly/2N5uMIV    結論:成效無明顯改善 學習:Solr環境架設 論文:NEURAL SPEED READING WITH STRUCTURAL-JUMPLSTM 其他:為了能更方便與Ploy聊天,開始學習泰語,並購買相關學習書籍。(一開口就會說泰語) --- **9/16~9/20(開學 第二周)** kkbox hit song prediction:改良方法-用keamns將資料(x)分群再分別預測    連結:http://bit.ly/2N5uMIV    結論:預測效能未達上週成果 論文:NEURAL SPEED READING WITH STRUCTURAL-JUMPLSTM --- **9/9~9/13(開學 第一周)** kkbox hit song prediction:改良方法-先依predict value分類,再針對每一類去做迴歸。    連結:http://bit.ly/2N5uMIV    結論:預測效能達新高 論文:NEURAL SPEED READING WITH STRUCTURAL-JUMPLSTM 其他:因應大數據比賽需要,教lab的同學基礎資料分析步驟及方法。    連結:http://bit.ly/2AeCGqV    回饋:針對每個處理方法,要再詳述為何要這樣做。 --- 9/2~9/6 kkbox hit song prediction:分別針對預測及反應變數擇一做前處理(僅處理x、僅處理y)。    連結:http://bit.ly/2N5uMIV    結論:兩者的預測效能都很低,未能達到x,y皆處理的模型之效能。 --- 8/27~8/30 kkbox hit song prediction:資料前處理、迴歸預測,並做成效比較(RMSE, MAE, MAPE)    連結:http://bit.ly/2N5uMIV    結論: --- 8/19~8/23 讀書會:Reinforcement learning(程意) --- 8/12~8/16 讀書會:Unsupervised Learning(承儒)+Meta Learning(岱融) 其他:整理實習單位的python教學教案。 其他:決定group meeting 報告論文:NEURAL SPEED READING WITH STRUCTURAL-JUMPLSTM --- 8/5~8/9 讀書會:Unsupervised Learning(岱融) 其他:整理、複習PCA的運作過程,用PCA做人臉辨識(by R) --- 7/29~8/2 讀書會:Seq2seq(程意) 實習教學:python教學,自備教材。 教材:https://drive.google.com/open?id=1CyknBabFkK36CaOIAPYoM8666Klcbacy --- 7/22~7/26 讀書會:Semi、Transfer(于晴+筱雯) digi計畫課程專題:雙北地區出租房屋售出時間預測,負責資料前處理(包含資料轉換、畫圖等等) 成果ppt連結:https://prezi.com/p/glva3deeyuxb/digi_/ --- 7/15~7/19 讀書會:Esemble(筱雯) --- 7/8 ~ 7/12 讀書會:RNN(昱豪)