【專題成果】緯育TibaMe_AI大數據養成班為YouTube愛好者打造的推薦系統

by Gloria
緯育TibaMe_AI大數據班專題成果
  • 專案名稱:你今天YOUTUBE了嗎?
  • 結訓班種:AI/Big Data資料分析師養成班_第43期
  • 受訓期間:2021/01/19-2021/07/02
  • 組員:劉○仁/陳○毅/林○宇/吳○叡/丘○翔/易○慶
  • 專題指導老師:郭惠民、施丞優、李錦和、邱士軍、蔡昀翰

專案緣起

經過許多次的團隊討論,我們各自拋出了許多天馬行空的想法,像是我丟出的一個想法,有一個叫做「停車大聲公」的app,主要是用來方便汽車使用者尋找所在地區內的停車場是否還有空位,以及提供其他停車資訊,目前沒有一個app方便機車使用者來使用。然而,與同學幾經思考後,因資料取得難度過高而作罷。
最終經過不斷的討論及現實化,我們決定以YouTube作為資料索取對象,讓喜歡觀看YouTube的觀眾能得到良好的推薦,以及YouTube的創作者和其團隊能夠了解自己影片下的留言情感正負向。

專案動機

現今科技產品越來越普及,每個人手上都有智慧型手機或平板電腦,接收新資訊的管道從原本的電視漸漸變成從影音串流平台獲取,而YouTube是目前大眾主要選擇觀看的平台之一。無論是輿論型的節目、各種產品的開箱、各家新聞的報導,甚至是衛服部的疫情直播,只要有大量人的行為就有大量的資料可以蒐集,以進行下一步的資料分析。

目標族群

我們希望能夠透過我們的留言情感分析、影片推薦系統,以及標題生成的部分能夠讓喜歡觀看YouTube的觀眾,以及YouTube的創作者們能夠有實質上的改善。

預期分析結果

  1. 標題生成
    這項功能主要提供給YouTuber及其團隊作為下標題時之使用,依據文本內容即可輕易為影片下標題,不用再煩惱標題如何下。
  2. 情感分析
    大家在觀看玩YouTube影片後,有越來越多的人會留言表達自己觀看後的想法。透過機器學習建模,經過幾次測試,我們最後使用LinearSVC(支持向量機)作為我們情感分析的模型。接著,我們考量到很多人不一定會留下留言,也是有很多人會透過按別人留言的讚來表達自己的想法,所以我們也使用每則留言的按讚數作為加分基礎,讓情感分析的結果進行修正。最後,我們將結果存入MySQL中,再使用Power BI來做圖表的呈現。
  3. 推薦系統
    我們的推薦系統原理是選用基於非監督學習的Word2Vec以及基於Python的主題模型函式庫Gensim。我們要求使用者輸入自己感興趣的關鍵字,接著我們將使用者輸入的字詞與我們分為12項主題的資料桶進行比對,以模型找到相似度最高的詞彙後,我們將搜尋我們資料庫中與之相關的影片,並透過隨機的方式回傳一個結果作為推薦。

團隊分工

▲ 團隊分工表

專案流程

▲ 專案流程表

專案管理工具:Trello

▲ Trello專案管理

我在專案中負責的項目

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

LineBot呈現

▲ 選單中三項功能分別為文字雲、推薦系統、以Power BI呈現的留言情感分析
  • 推薦系統:輸入想觀看的影片關鍵字,即為使用者推薦影片。
  • 文字雲:以台灣YouTube的熱門搜尋關鍵字作為文字雲。
  • 留言情感分析:點擊留言情感分析,可以選擇以網頁或是app來開啟Power BI。

導師觀察紀錄

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

分享這篇文章:
0 留言
3

您也許會喜歡

發佈留言

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料