[ΑLPHA Camp 資料人才種子計畫 ]課程心得

Amy Chao
Feb 6, 2022

--

很開心有機會能夠參與ALPHA Camp 與iCook合作的資料人才種子計畫來學習如何在六周內實作出推薦系統(連結內有計畫的詳細資訊)。

前三週是用AC給予的影片及文章做學習,和以課程內的背景個案實作出該類型(Ruled-Based, Content-Based, Collorabtive Filtering)的推薦系統﹑並以提升recall rate為目標。而後三周則要將前面所學的各類型的推價系統作結合,而該資料集為iCook愛料理的真實用戶資料。

每周都有工作坊來討論各自學習的內容和分析個案,也會挑選三位同學做show & tell 分享,每周末也有要完成的程式作業。

內心的焦慮

我算是個很晚才開始的程式學習者,在大學以前從沒有想過自己會以資訊工程和資訊管理為主修,更想不到我會在我的實習生崖中有機會學到如何設計一個完整的推薦系統(目前在KKStream當實習生 — KKCompany 種子培育計畫的一員),而此計畫所需要活用的Python套件numpy 和pandas只是略懂而已。

在參與這項計畫以前,一直很怕自己的能力會跟不上大家,也擔心自己做不出來東西。而在上第一堂工作坊時,就發現到參與的同學都是在各個領域中有相當程式經驗的人,小小實習生的我真的在寫第一次作業時感到很挫敗。

尤其很多同學原本的工作就是專門做資料分析、也有同學是在電商產業工作的。在計畫過程中,很輕易的可以感受到自己和這些同學背景知識的差距。這也使得我要更努力向這些前輩們學習。

對自己的期許是:今天的我要比昨天的我更努力。

與同儕學習

在寫第一次作業時很挫敗,沒有相關的經驗的我不知從何開始。所幸有幾位同學很厲害的在繳交期限的前兩天就寫出來,真的是看到了救星。其中有一位同學是之前有一起帶過營隊,也有見識到他的能力和學習的方法與態度。我打從心底很崇拜這位同學,尤其是很欣賞他清晰的邏輯思路和寫程式的方式。

之後的每一次作業都有先去參考其他人的做法。一部分原因是害怕自己做不好,另一部分原因是看看其他有相關經驗的同學會以什麼角度切入當周的問題。

這六周讓我印象非常深刻的是有位同學在show & tell 時,他所寫的README檔案真的非常讓人驚艷,該檔案所敘述的程式邏輯是有順序性且很有條理的,也有實作出課程中所提到的延伸作法 Matrix Factorization。分析資料的方式也很多數人不同,如利用商品價錢、業務角度做切入。圖表部分也具有統整性,可以看出資料集的大方向。和他比較起來,自己目前沒有辦法在colab RAM的空間限制下,做出詳細且統整性的資料分析,也沒有像他一般的資料洞察力。(這位同學讓我佩服的五體投地,他也是我主要學習的對象之一。)

還有另外一位同學是在實作後三周iCook專案時,把自己模擬成要去愛料理平台上找食譜的使用者,演練出使用者實際會用怎麼樣的詞語做搜尋。而這位同學也實作出以多種方法混和出來的推薦系統。這才提醒了我,所有推薦系統都要以使用者的角度去思考,才會做出較吸引人的推薦系統,讓使用者長期留在平台上。

與導師學習

後三周的課程是由iCook 愛料理的技術長Richard來向大家介紹愛料理是如何打造出目前的推薦系統。由於愛料理是user-generated content,處理的資料是創作者所上傳的食譜,所以每個人上傳的格式不一定會相同,例如是否放圖片、是否有將食材做主食和醬料的分類…等等。

而當食譜之間的關聯性是以食材為主軸,文字處理在推薦系統中是個很大的key factor。更特別的是技術長有分享到一些食譜其實是沒有辦法被完全歸類於某個類別,例如現在隨處可見的義大利麵應該放在「異國料理」還是「家常菜」中(其實聽到這邊,真的很有感觸,因為自己本身是把義大利麵當家常菜來煮XD)或者哪些菜應該「年菜」,能正確的找出使用者所需的年菜也是該推薦系統的功能之一。

透過技術長Richard三周工作坊的分享與勉勵,讓我更能夠的從商業面和使用者導向面思考出資料背後代表的意義,也更願意去嘗試不同的可能性。

Because after all, users are the one who create data.

Key Takeaway

這六周的課程學到了在資料分析的過程中,發現

  • EDA很重要:統整性的看出每個欄位的特徵和用處,在後續的推薦系統中扮演著很重要的腳色。會知道哪些欄位是重要的指標!
  • 也要常以使用者的觀點思考:這樣才能找出能讓推薦系統更好的方法!
  • 整理自己邏輯思緒:在實作之前非常重要的,對於資料的熟悉和了解也會大幅提升思考的速度。
  • 能用的方法就是好方法:越複雜的算法不一定會讓recall比較高。在後三周時,有發現大部分的同學都是以最基礎的ruled-based為主;有些高分的recall也是ruled-based。

未來方向

未來規劃是10月會到德國的慕尼黑理工大學TUM讀碩士,所選科系將專攻資料工程與分析。資料人才種子計畫讓我了解到資料集的多變性和複雜度,這使我想轉換跑道到資料工程,也讓我更期待未來在留學時或職場上會遇到什麼樣的挑戰。希望我更能將所學運用在我的留學生涯中,慢慢的增進自己的能力!

這六周說短不短,說長也不長,因為眨眼就過去了,但是卻成長了很多。每次的工作坊都收穫滿滿,資料量大到來不及處理就結束了,幸好抄了許多筆記能慢慢回味、吸收。

很感動能有ALPHA Camp精彩的課程編排 、iCook無保留的分享、和認真參與課程的大家,讓我們在優質的學習環境能提升自己的能力朝各自的目標努力前進。

很感謝AC和愛料理的用心規劃,也很謝謝我的主管讓我知道有這個棒的課程🙏🏻

--

--

Amy Chao

小小實習生懷抱大大的夢想/ TUM Data Engineering 2022WS