- 專案名稱:你今天YOUTUBE了嗎?
- 結訓班種:AI/Big Data資料分析師養成班_第43期
- 受訓期間:2021/01/19-2021/07/02
- 組員:劉○仁/陳○毅/林○宇/吳○叡/丘○翔/易○慶
- 專題指導老師:郭惠民、施丞優、李錦和、邱士軍、蔡昀翰
專案緣起
經過許多次的團隊討論,我們各自拋出了許多天馬行空的想法,像是我丟出的一個想法,有一個叫做「停車大聲公」的app,主要是用來方便汽車使用者尋找所在地區內的停車場是否還有空位,以及提供其他停車資訊,目前沒有一個app方便機車使用者來使用。然而,與同學幾經思考後,因資料取得難度過高而作罷。
最終經過不斷的討論及現實化,我們決定以YouTube作為資料索取對象,讓喜歡觀看YouTube的觀眾能得到良好的推薦,以及YouTube的創作者和其團隊能夠了解自己影片下的留言情感正負向。
專案動機
現今科技產品越來越普及,每個人手上都有智慧型手機或平板電腦,接收新資訊的管道從原本的電視漸漸變成從影音串流平台獲取,而YouTube是目前大眾主要選擇觀看的平台之一。無論是輿論型的節目、各種產品的開箱、各家新聞的報導,甚至是衛服部的疫情直播,只要有大量人的行為就有大量的資料可以蒐集,以進行下一步的資料分析。
目標族群
我們希望能夠透過我們的留言情感分析、影片推薦系統,以及標題生成的部分能夠讓喜歡觀看YouTube的觀眾,以及YouTube的創作者們能夠有實質上的改善。
預期分析結果
- 標題生成
這項功能主要提供給YouTuber及其團隊作為下標題時之使用,依據文本內容即可輕易為影片下標題,不用再煩惱標題如何下。 - 情感分析
大家在觀看玩YouTube影片後,有越來越多的人會留言表達自己觀看後的想法。透過機器學習建模,經過幾次測試,我們最後使用LinearSVC(支持向量機)作為我們情感分析的模型。接著,我們考量到很多人不一定會留下留言,也是有很多人會透過按別人留言的讚來表達自己的想法,所以我們也使用每則留言的按讚數作為加分基礎,讓情感分析的結果進行修正。最後,我們將結果存入MySQL中,再使用Power BI來做圖表的呈現。 - 推薦系統
我們的推薦系統原理是選用基於非監督學習的Word2Vec以及基於Python的主題模型函式庫Gensim。我們要求使用者輸入自己感興趣的關鍵字,接著我們將使用者輸入的字詞與我們分為12項主題的資料桶進行比對,以模型找到相似度最高的詞彙後,我們將搜尋我們資料庫中與之相關的影片,並透過隨機的方式回傳一個結果作為推薦。
團隊分工

專案流程

專案管理工具:Trello

我在專案中負責的項目
- 專案基礎建設
一開始想說讓大家在自己的電腦去嘗試使用這部分的建置,所以使用了docker中的docker-compose,一鍵將MySQL、adminer、MongoDB以及mongo express建起。後來,由於專案的發展,我選擇AWS中的EC2作為專案的基礎建設,更方便大家做使用。 - YouTube爬蟲
我使用了類似selenium的方式來建置爬蟲程式,讓團隊在爬蟲時,能夠將爬蟲程式放在一邊,另一邊做著自己的事。 - 影片標題生成
以TextRank4ZH為基礎作為影片標題生成。在TextRank的概念中,文章中句子與句子之間的關聯會以網路做呈現。每一句句子為一個節點(vertices)、而句子與句子之間會相連,連接的權重則為句子之間的相似程度。簡單來說能夠作為摘要的句子條件是「與文章中其他句子相似度最高的」。 - Kafka
以Kafka將資料串流整合在一起,將Kafka作為LineBot與推薦系統間的中繼站。
LineBot呈現

- 推薦系統:輸入想觀看的影片關鍵字,即為使用者推薦影片。

- 文字雲:以台灣YouTube的熱門搜尋關鍵字作為文字雲。

- 留言情感分析:點擊留言情感分析,可以選擇以網頁或是app來開啟Power BI。

導師觀察紀錄
這6個月內的學習是非常辛苦的,但在最後學員們一起努力做出一個完整專題是相當有成就感的!緯育TibaMe就業養成班的學生來自四面八方,從各地、各科系、不同工作領域來學習AI、Big Data,從基礎的課程開始學起,到做出實務性的專題成果,就算不是相關科系的學員,也能證明自己做得到、自己會這些技能。
在本班,相關與非相關科系的學員大約各占比50%,建議同學們在開訓前可以事先預習TibaMe為學員開通的線上課程,線上課程非常豐富,包括Python、Python爬蟲、機器學習、深度學習等,搭配開訓後講師的授課複習,學習效果事半功倍。
如果你對AI、大數據有興趣,未來想往此領域發展的學員,歡迎了解本班的課程,台北、中壢皆有開班!