從使用者個人背景資料及真實操作行為中,推薦系統必須能夠挖掘出個人偏好,再佐以各種指標,提出值得推薦的項目,這裡將介紹利用人口統計與內容特徵等兩種方式

為了讓使用者能更容易得到他感興趣或有需要的資訊,網路資訊系統會輔以一些機制的設計。例如透過熱門項目(像是最多人觀看的影片、熱銷商品)的排行榜,讓使用者參考大眾的喜好,來找出自己可能也喜歡的項目。通常也都會輔以搜尋系統,允許使用者透過輸入查詢條件,來從繁多的資訊項目中,以便過濾出符合自己需求的項目。

不過,為了更廣泛的滿足使用者的需求、提供更精準符合使用者需要的資訊、降低使用者主動介入的程度,人們開始利用所謂的推薦系統,來向使用者推薦可能會感興趣的項目。

對使用者來說,好的推薦系統能夠依據使用者的喜好,以及使用的行為,自動向使用者推薦他可能會感興趣的資訊(例如:商品),的確可以提供更多有用的資訊。

正如前文中所提到的,YouTube在導入推薦影片的功能後,來自首頁的點擊中,其中推薦影片的部份佔了60%,而推薦影片部份的CTR(click through rate)更是最多觀看頁的207%。這樣的統計數字,佐證了推薦系統的效用。

推薦系統之所以能夠對使用者進行推薦,便是因為它有能力挖掘出使用者的隱性喜好,因此,技術上,它和機器學習(Machine Learning),以及商業智慧(Business Intelligence) ,或說資料探勘(Data Mining),都有高度的相關,只不過其目標更為單純、一致,就是希望從使用者的個人背景資料,以及使用者的真實操作行為中,挖掘出使用者的個人偏好,再佐以各種指標,對使用者推薦。

人口統計式推薦技術

那麼有那些可用於推薦的技術呢?首先要提的一種類型,便是被稱為「人口統計式(Demographic)的推薦方式。

這種推薦的技術,主要是將使用者依據其個人的屬性來做為分類的指標,這些個人的屬性,包括像性別、年齡、教育背景、居住地、所使用的語言,甚至像收入職業、工作類型、等等。

你可以想像,擁有相似個人屬性的使用者,彼此就會有共通的喜好。

有時候,我們甚至可以從屬性本身就推論出使用者可能會感興趣的項目,例如,居住在臺北地區的使用者,對於臺北地區區域性的資訊,就有可能較為感興趣。我們也可以依據這些屬性,以及實際的使用者所使用的資料,來進行使用者偏好模型的建立,透過一些計算方法的分析,可以找出特定屬性的使用者對何種資訊最感興趣。

在過去,收集使用者的個人資料屬性可能不是一件簡單的工作。不過在現在,許多社群服務像Facebook這樣的網站,都要求使用者輸入若干類型的個人資料,這使得推薦系統有機會透過和此類社群服務的整合,藉由個人資料屬性的取得,來做出更好的推薦。

事實上,像Facebook這樣的網站,同樣也會利用這些個人資料屬性來做推薦,例如最常見到的,便是在Facebook上的好友推薦。如果你留意,Facebook對你做出可加為好友的「你可能認識的人」,便是推薦系統的產出,只不過它所推薦的,並不是商品、也不是影片音樂等資料,而是推薦其他的使用者。

觀察Facebook「你可能認識的人」的推薦,便可以發現,它主要是依據共同好友的人數,以及共同居住的城市、甚至是共同任職的公司,或是就讀過的相同學校。人際網絡中的資訊對推薦來說,很有意思,但這個容後再談。

廣義來說,依據共同好友的個數,以及其他屬性的共通性來做出推薦(有在同一公司共事過的,便有可能認識或想加彼此為好友),便像是基於人口統計式的推薦。

當然,像Facebook在做此項推薦時,可能會綜合多項指標,以不同的權重做計算,接著再依據分數高低來做排序。

像Facebook這樣子依據使用者的共通屬性,來做出「你可能認識的人」的推薦,是一種簡單的關聯。事實上,它並不是分析出共通屬性使用者所擁有的共同偏好,它只是單純將有共通屬性的人直接關聯起來。如果想要分析出它們共同的偏好,還得倚靠一些計算才行。

一般來說,我們會從使用者的歷史資料來分析共通屬性使用者所擁有的共同偏好。舉例來說,我們可以分析線上書店的消費者資料以及購買書目的銷售資料,就可以試著找出具有那些屬性的消費者,傾向於購買那些特定的書籍。至於怎麼找,之後我們再專門來探討。

基於內容的推薦技術

除了人口統計式的推薦之外,基於內容(Content-based)的推薦也是廣泛被採用的方式。此處所指的內容,便是可被推薦項目本身的內容。若以一個新聞推薦系統來說,可被推薦的對象是新聞,而是否推薦給特定使用者,則是取決於新聞中的文字內容。目前也有一些音樂推薦的服務,他們會透過分析使用者常聆聽或設為最愛之音樂的內容特性,找出使用者喜愛的音樂特性,進而推薦使用者可能會感興趣的音樂。

「內容」本身是一個很抽象的概念,我們要用什麼方式來表示項目的內容是一件很有趣的事情。以新聞來說,我們可以用新聞中的所有字詞來代表新聞的內容,但我們也可以用新聞對應的關鍵字來表示。對音樂來說,究竟如何表示其「內容」,比起新聞來說,更是沒那麼直覺。

事實上,大多數我們想要處理的項目,其「內容」的表示,都不是這麼單純,而且,我們都可以想出多種表示其「內容」的方法,而不同的表示方法,也都會深深影響到我們進行推薦的效果。

一般來說,都會採用「特徵(feature)」的方式來表示項目的內容。雖然項目的內容很多,但是,如果選用了好的特徵表示,便能夠盡可能精簡地表示出每個項目內容和其他項目內容,是否相像或相異。一旦能精要表示項目內容,便不需要運用項目的所有內容來做計算,而且也才有進一步計算的可能性。

就拿音樂來說,有一些應用可能會取「音量」、「音高」,或是取「音量變化」、「音高變化」來做為特徵。那麼就可以藉此來比較項目內容相似的程度,或相異的程度究竟有多少。在這邊舉的特徵當然是我們比較容易理解的類型,在處理音樂時,往往會用到更多在訊號處理領域中的指標來表示音樂、音訊的特徵。現在有一些應用像是做音樂的「情感分析」或是做「音樂基因」的判讀,都是建立在取出音訊內容的若干特徵,接著進行相關計算的基礎上來達成的。

不同的應用,就會運用不同的特徵,來表示想處理的項目內容,而特徵選用的好壞與否,自然就會影響到最後計算的結果。取出內容的特徵,最大的意義是在讓我們得以將原本抽象的內容概念,表示成電腦可以計算的量化數字。

你可以想想,如果要你判斷兩段音樂是否相像你會如何著手呢?

首先你一定得想辦法將抽象的音樂相像表示成電腦可以處理的資料吧!所謂的音樂相像,是指類型相像,還是指旋律相像呢?這又和應用有關,所以才說不同的應用,需要使用不同的特徵。

基於內容的推薦是很重要的推薦技術,在本文中我們提到了特徵對處理內容的重要性,在下一回中,我們會開始介紹有了特徵之後,如何做內容的推薦。

 

專欄作者

熱門新聞

Advertisement