Try   HackMD

大三上修課心得

寒假沒事幹來寫個休克心得

定向越野

  • 授課教師:莊珮琪
  • 甜度:10/10
  • 涼度:10/10
  • 收穫:1/10
  • 評分:10/10
  • 心得
    基本上有出席就會A+,上課會分成3~4人的小組去跑點,我這組剛好除了我全部都是女生,修完這門課社交能力大增。期末會需要分組設計定向活動,我自己那時候已經忙得不可開交所以決定躺分,最後定向活動成績100(其實每一組都100),最後學期成績95。
  • 成績: A++

日文一上

  • 授課教師:彭誼芝
  • 甜度:9/10
  • 涼度:3/10
  • 收穫:7/10
  • 評分:7/10
  • 心得
    日文一對於完全沒碰過日文的人(我)會比較花時間。老師上課應該上得還行,但我考完期中後就沒在聽了。幾乎每個禮拜都要小考,所以要花不少時間去背單字,我自己的經驗是單字只要有默寫三次就可以考九十幾了。考試的話會考句型跟翻譯那些的,也要花不少時間去準備。我期中考讀了兩天考94,期末則不會公布成績。
  • 成績: A+

工程數學-複變

  • 授課教師:***
  • 甜度:8/10
  • 涼度:5/10
  • 收穫:6/10
  • 評分:3/10
  • 心得
    *** 教授看似口條不錯,但其實仔細一聽就會發現他根本在亂教。還好複變沒有那麼難,自己讀大概可以掌握個6,7成。然後再寫寫考古題考試就沒什麼問題。我自己期中考前一天適逢DLCV hw2死線,所以期中考幾乎裸考考了一坨大便。期末的話 *** 考卷根本在亂出,8題裡有3題出錯,還有一題積分超難積,造成我寫考卷寫到大破防,最後不知道送了多少分竟然考了90。
  • 成績:A+

電力工程導論

  • 授課教師:劉志文
  • 甜度:10/10
  • 涼度:10/10
  • 收穫:1/10
  • 評分:10/10
  • 心得
    整個學期花在這門課的時間可能不到5個小時,最後學期成績98,水課中的水課。
  • 成績: A++

電工實驗(自動控制)

  • 授課教師:劉浩澧、洪聲仰
  • 甜度:2/10
  • 涼度:1/10
  • 收穫:3/10
  • 評分:2/10
  • 心得
    選課的時候聽說這門課會做無人機覺得很有趣就跟廣哥組隊去修了,修了才發現被詐騙了。
    .
    這門課上下學期的內容不太一樣,上學期是做無人機循跡(不是組一台無人機),下學期則是做倒單擺。前八週在做"核心實驗",就是拿實驗室的馬達用MATLAB跑一些模擬,然後畫圖寫報告。但助教的實驗要求寫得不清不楚的,好不容易做完發現做錯還要重做。我記得有一個實驗是要用15個參數跑一個實驗,跑完後還要畫圖,結果做到後面發現參數錯了要全部重做。然後馬達模擬要用一個window XP的電腦跑,但有些電腦甚至沒有MATLAB的license,最後時間都花在一些無關緊要的事情上。
    .
    期末專題則是要無人機沿著方形、圓形、跟不規則形狀的軌跡飛行。會用一個外接攝影機去判斷軌跡位置跟無人機位置,後設計PID控制器做校正。專題的idea是蠻有趣的,但最後時間都花在調整PID的參數上,反而不是在控制系統的實作。
    .
    第17週會有個無人機比賽,就是看誰比較快飛到終點,然後採單淘汰制,晉級的會加學期分數。我們這組比賽的時候手殘撞到攝影機,不幸第二輪就被淘汰。
    .
    整體來講,就是一門非常花時間,但又學不到太多東西的課。評分的部分,因為上學期被教務處恐嚇,所以這學期A+比例變很低,只有專題競賽第一名跟核心實驗第一名的兩組有A+,其他都是A或A-。
  • 成績:A

專題研究

  • 授課教師:孫紹華
  • 甜度:?
  • 涼度:?
  • 收穫:6/10
  • 評分:?
  • 心得
    這學期有點太忙,導致專題沒有做得很認真。孫紹華採取放牛吃草戰術,導致我頭一個月有點不知道要幹嘛。做的事情跟RL課有點重疊,也是玩玩codebase然後讀一下paper。我到接近學期末的時候才開始讀paper跟brainstorm一些idea。感覺寒假應該多去一下group meeting跟paper reading,學期中有點太混了都沒去。
  • 成績:A+

專題演講

  • 授課教師:忘了
  • 甜度:X
  • 涼度:10/10
  • 收穫:0/10
  • 評分:3/10
  • 心得:就每週三早上聽演講,演講內容蠻無聊的所以我都在打電動。期末報告則是實施躺分戰術。
  • 成績:PASS

金融科技導論

  • 授課教師:廖世偉
  • 甜度:4/10
  • 涼度:8/10
  • 收穫:4/10
  • 評分:2/10
  • 心得:學期初聽說這門課甜涼,再加上對fintech有一點點興趣就跑去修了,沒想到再次遭到詐騙。prof liao是個有趣(有點奇怪)的教授,常常講一些很好笑的話,然後喜歡滑壘進教室。不過教課能力實在需要go up one level,上課廢話有點多,投影片也沒什麼邏輯,上課基本上學不到什麼東西,比較有收穫的還是作業,需要發自己的NFT,還有玩OKX的模擬倉。Final Project則是要研究一個金融科技寫報告,我研究的主題是Core Chain,一個跟比特幣有關的區塊鏈,整體來說蠻涼的。
    .
    評分除了作業跟project外要考兩次"Midterm"(雖然Midterm 2在第15週)。我自己覺得不太好準備,因為範圍很廣,而且廖世偉會考一些似乎根本不在範圍的東西,如果對fintech沒有背景應該看完投影片還是一知半解,需要花不少時間自學,而我兩次midterm應該都在平均附近。
    .
    之前聽修過課的人說基本上是有手就A+,今年顯然不是這樣,我跟毛都莫名其妙拿A,聽廖世偉說今年A+比例「只」給到40%,看來一部分是我學藝不精,一部分是因為聽說很甜就沒有很認真讀。
  • 成績:A

深度學習於電腦視覺

  • 授課教師:王鈺強
  • 甜度:3/10
  • 涼度:-10/10
  • 收穫:10/10
  • 評分:5/10
  • 心得
    這門課是我大學三年修過loading最重的一門課(略勝網服),一學期下來會cover所有deep learning重要的topics。

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

所以對以後要往ml相關領域發展的學生會是很重要的一門課。上課內容雖然蠻有趣的,但我覺得frank沒有教的很好。有些概念解釋的不太清楚,而且他講話有點像跟小朋友講話一樣,每秒的資訊量不多,所以很容易分心。

這門課會需要用GPU,我自己(乞丐)是用Colab Pro(2個帳號)+Kaggle+Jetbrains Cadence(7,8個帳號),但也有人用Runpod或自己實驗室的gpu,也有人自己買一個4090。以下做一個簡單的比較

Colab Pro Kaggle Jetbrains Cadence
Price 300/month Free Free
GPUs T4,L4,A100 T4, P100 T4, A10G, V100, H100
Quota 100 compute units 30hrs/week 5hrs on H100
Pros Basic File editing Free Fastest GPU
Cons Expensive no file system Hard to setup

作業會給你兩到三個禮拜手刻一個模型,然後應用在某個task。比如說作業一是CNN做image classification,作業二是用diffusion model生數字,作業三是用vision transformer做captioning,作業四是用gaussian splatting做3d scene reconstruction。練出來的模型需要再過baseline才有分。然後每次作業又有分兩到三個problem,hw2要做ddpm跟ddim,hw3要在額外做attention的visualization等等,非常花時間。我自己每次作業都到死線前幾天才做完,寫模型都可以幾天內寫出來,反而是調參過baseline最花時間。

我覺得比較可惜的是因為我很忙(懶),寫code、debug會過度依賴ChatGPT,所以對pytorch實作、資料處理、除錯能力的收穫比較少,但整體來說ML實作能力還是進步很多。

然後因為評分要用助教的電腦跑,所以作業對環境有很嚴格的要求,只要跑失敗就算0分,然後重新改會扣30%的分數。我自己覺得這部分有點不太合理,第一,這樣會搞得最後分出高下的不是有沒有過baseline,而是環境有沒有出問題。第二,要100%確定自己的code在別的機器上可以跑基本上不太可能,可能出錯的地方太多了,我他媽就用一台mac我要怎麼知道linux上會不會出問題。我自己是hw1跟hw3出包,一次是dataloader寫錯另一次是手殘多import一個package,不過最後都有救回來。

不過這次拿A是死在Final project手中,Final project分成兩個challenge,都是來自今年的ECCV Challenge,Challenge 1是driving suggestions on Autonomous Vehicles,就是用VLM對自駕車駕駛座的照片做captioning,Challenge 2則是跟textual inversion有關。我們這組是選challenge 1,但因為final project期間遇到期末考,所以我們大概到死線前一週才開始認真做,結果一方面我們想的做法(RAG, DPO)都不是很有效,一方面時間有點太趕,所以最後performance蠻糟的,9分只拿到2分,A+就送人了。不過我有注意到大學部的普遍表現都比較差,可能大家都太忙吧,這種半研究型的project還是比較適合碩博班的炸魚。

整體來說的確是學到很多東西,但如果是單純有興趣但跟未來研究無關的同學修課前還請三思。這門課努力跟成績沒太大關係,我每次作業寫到昏天暗地、Final Project做到凌晨4.,有可能-啪-環境出問題、baseline沒過,一個等第(或兩個)就沒了。

成績:A

強化學習

  • 授課教師:孫紹華
  • 甜度:6/10
  • 涼度:2/10
  • 收穫:10/10
  • 評分:9/10
  • 心得:這門課前10週從基本RL概念開始,介紹dp、deep RL algorithms、和一些現在的研究主題。第10週以後開始做final project,上課則會請一些RL researcher來給talk。
    .
    孫紹華解釋東西還算清楚,但就是講話跟閃電一樣快。一恍神,已經講完十頁投影片了,再加上課沒有錄影,所以很多內容我都是有聽沒有懂。像是deep RL algorithms的投影片我看了4,5遍還是看不太懂。
    .
    總共有三次programming assignment,前兩次是手刻幾個RL algorithm,作業三則是用stable-baseline練一個2048的agent,然後baseline是有玩到出現1024,蠻有趣的(雖然頗花時間)。
    .
    Final Project則是這門課比較有趣的部分,就是會花六週的時間做的小的research project,然後寫成一個report。我必須抱怨主題真的是很難想,很多idea不是有人做過就是setting不對、不會work。最後決定研究Imitation Learning在POMDP會遇到的問題。研究過程看了很多paper,寫很多code(雖然我們第三週才發現原本的code有bug,難怪練不起來),對IL這個領域的了解很有幫助。最後結果雖然沒有什麼有意義的contribution,但反正有學到東西就好。
    .
    我最後final project成績應該在平均左右,作業幾乎拿滿,學期成績92,應該算甜。
  • 成績:A+

總結

這學期大大的高估自己的capacity,修了RL+DLCV等共23學分,還要花時間搞一些課外的東西,導致我整個學期壓力大到好幾次想要休學。每次遇到低谷的時候都會告訴自己撐過去就海闊天空了,但事實證明並非如此。有一些課莫名其妙拿A雖然一部分是因為A+比例給的比往年少,但另一部分原因是我忙到沒辦法每門課都投入夠多的時間。

下學期想要多修一點理論課,這學期寫code寫到腦袋燒焦了,該返璞歸真了,回到數學跟物理的擁抱。

  • 學分:23
  • GPA:4.19