国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁 > 營銷資訊 > 建站知識 > 網(wǎng)站更懂讀者:戳中開發(fā)者痛點的文章推薦算法

網(wǎng)站更懂讀者:戳中開發(fā)者痛點的文章推薦算法

時間:2022-07-05 16:54:02 | 來源:建站知識

時間:2022-07-05 16:54:02 來源:建站知識

在很多網(wǎng)站中我們看到有文章推薦功能,有的網(wǎng)站中還使用的無覓插件或百度的腳本掛件,然而推薦出來的文章卻存在兩個問題:相關性不大,不能引起讀者興趣。

那么,有沒有一種方法,提高相關文章的推薦吻合度呢?答案是有的。

我還見過很多博客中放出的根據(jù)標簽來推薦相關文章的代碼,這種方法應該是比較好的,但是問題是,很多博主對標簽的選擇非常不專業(yè),標簽的選取常常是 隨意的,即便兩篇文章都含有“百度”這個標簽,可能一篇文章是講百度搜索規(guī)則的變化,而另一篇講百度年營收,兩篇文章根本沒有非常明顯的相關性。

1.期待谷歌更加強大的推薦掛件

在這個方面,雖然我們對百度寄予了厚望,但是實際上我更相信谷歌的技術。原理很簡單:

通過不同用戶的不同搜索詞進入不同文章,而這些搜索詞在其他用戶而言又是意思相近的。

理解起來有點難,我們只能通過例子來說明:有A、B、C三個用戶。有a、b、c三篇文章。A搜索“w”點擊進入了a文章,B搜索“m”點擊進入了b 文章,C搜索“p”進入c文章時,谷歌發(fā)現(xiàn)w、m、p這三個詞組意思非常相近,所以判斷a、b、c三篇文章是相關文章,因此在三篇文章下方返回了一個相關 文章列表(使用javascript來調(diào)用)。

通過歷史記錄來判斷某些文章相關,很多用戶點擊進入某篇文章后,同時進入另外一篇文章,說明文章相關性強。

如果非得靠谷歌搜索的關鍵詞,就顯得太傻了,通過谷歌統(tǒng)計代碼,從歷史瀏覽記錄來進行深入判斷。當A進入a文章之后,發(fā)現(xiàn)下方有一個隨機的推薦列 表,如果發(fā)現(xiàn)有自己需要的或者感興趣的文章b,就會點擊進去,這些行為被記錄在谷歌的大數(shù)據(jù)中,當從a進入b被無數(shù)人實踐過后,甚至可以統(tǒng)計b出現(xiàn)在a頁 面的哪個位置更容易被點擊,第幾次進入的時候是否不愿意再點擊b文章了,而谷歌完全有能力做到這種分析,最終當B、C首次進入a文章的時候,b文章的鏈接 就會非常合理的出現(xiàn)在該出現(xiàn)的位置。而實際上,如果無數(shù)用戶從a進入,最后到了c這篇文章,那么為什么不直接把c文章鏈接放在a頁面呢?這多少有點大數(shù)據(jù) 的意思。

2.統(tǒng)計和聚類:數(shù)據(jù)庫爬蟲

人工智能希望計算機有理解能力,但實際上目前我們只能通過統(tǒng)計和聚類來更加只能的判斷相關性和可能性。100個人買了尿不濕的時候買了啤酒,這不能說明什么,但是有1萬億人次都這樣做了呢?

通過設計一個爬蟲程序,到數(shù)據(jù)庫中的文章表中去抓取,對文章標題、內(nèi)容、摘要、關鍵詞、標簽等進行分詞統(tǒng)計。最原始的方案是最長匹配詞數(shù)量越多,文章相關性越強。

爬蟲要做的就是匹配詞組,因此最開始應該有一個詞典。但是詞典需要人為手工建立,略顯麻煩。解決方案也很簡單,用一篇典型文章作為原始案例,讓爬蟲 去爬,反復的爬,通過分詞建立原始詞典。利用這個原始詞典再去爬其他的文章,遇到新詞的時候就加入到詞典中。這種方法能夠保證新詞只會在后面去爬的文章中 出現(xiàn)。在爬的過程中,一方面可以發(fā)現(xiàn)新詞加入詞典,另一方面又把詞頻統(tǒng)計出來,按照詞組的長度降序排,找到最長詞。通過對文章最長詞的對比,確定文章的相 關性。

但是這種方法必須面臨兩個問題,一個是效率問題,一個是干擾問題。搜索引擎中最核心的問題之一就是效率,主要是兩個方面的效率,一個是爬取,另一個是檢索。對應到推薦系統(tǒng)中,一方面是如何確定文章的相關性(爬的效率),另一方面是如何更快的根據(jù)爬的結果返回相關文章列表(取的效率)。干擾問題則是指 部分文章的詞頻無法反應這個問題的核心主旨,例如一篇含有100行代碼的文章,介紹性的文字可能只有20-30行,這種情況下很難防止統(tǒng)計結果與文章核心 主旨不符(而其他文章的統(tǒng)計結果又相對比較準確)。

為了提高效率,你可以鼓動你的讀者來為你提供詞典,比如說讀者讀完文章后,你要求他輸入認為可以概括本文的關鍵詞,這樣可以讓爬蟲更加確定自己是否應該省去某些詞,而重視某些詞。

3.最有可行性:標簽、搜索和瀏覽記錄

上面說到的兩種方案都是離我們比較遠的,普通程序員很難在自己的網(wǎng)站中實現(xiàn)?;貧w現(xiàn)實,我們希望真正可以在網(wǎng)站中實現(xiàn)的一種方案(即使可能相關性結果稍微弱一點)。

標簽是最合理的一種方案。給不同的文章貼上3個以上的標簽,因為標簽是人工撰寫的,所以最好有一個自己的標簽列表,防止把 同一個意思寫成了不同的標簽,例如“自行車”“單車”“腳踏車”。把標簽統(tǒng)一起來,意思相近的,全部統(tǒng)歸為一個詞,下次再打算貼標簽的時候,就只用這個 詞。3個以上的標簽基本上能反映出該文章大概要講什么內(nèi)容。在使用程序去挑選相關文章的時候,盡可能的匹配所有標簽,假如兩篇文章有3個以上的標簽,那應 該是有相同主題的內(nèi)容的吧。我見過只要有一個標簽相同就推薦出來,我認為這種方法不好,文章開頭已經(jīng)舉過了例子。

但標簽的方法畢竟是人工來弄,思考和統(tǒng)歸過程是很累的。

一個網(wǎng)站中相關性比標簽還要強的,應該是站內(nèi)搜索結果。我是指那些具備稍微強大的搜索模塊的站內(nèi)搜索,僅僅用LIKE去匹 配一下數(shù)據(jù)庫的情況,個人認為搜索結果參考價值比較低,特別是只用一個搜索詞的情況下。但是大部分網(wǎng)站的搜索模塊還是比較差的,因此,我的建議是,規(guī)定用 戶必須使用兩個以上的詞進行搜索,這樣可以保證搜索結果相對準確。

但是如何將搜索應用到文章推薦中呢?

搜索的出發(fā)點是關鍵詞,因此你得找到和這篇文章相關的關鍵詞。怎么找呢?一種是直接使用標簽,把這篇文章的標簽作為關鍵詞 (上面說了,3個標簽以上),利用網(wǎng)站的搜索模塊,搜索出文章,返回到當前文章的頁面,列出鏈接列表即可。另一種比較復雜,通過瀏覽記錄來獲取關鍵詞。 (這里需要提一下,面對普通的網(wǎng)站,分詞的想法被我放棄了。)瀏覽記錄里面記錄了一些關鍵詞,包括站外搜索引擎關鍵詞、站內(nèi)搜索關鍵詞和瀏覽過的文章的標 簽。瀏覽記錄里面需要通過社會網(wǎng)絡方法,找出與當前文章相關的關鍵詞,再通過網(wǎng)站的搜索模塊,搜索出相關文章,把鏈接列表顯示出來。

當A通過“w”搜索進入網(wǎng)站的時候,記錄下“w”(如何獲取搜索引擎過來的關鍵詞的文章網(wǎng)上一大堆),并且標記它跟a文章相關(例如記錄到a的一個 字段里,或者另外建立一個表記錄對應關系)。當B和A發(fā)生了同樣的情況的時候,增加相關次數(shù)n。當n的值大到一個區(qū)間的時候,那么w肯定和a相關。同樣的 方法,m、p也跟a相關,可見w、m、p這三個詞組和a都相關。拿w、m、p到網(wǎng)站的搜索模塊中檢索,返回的結果可能就是用戶最需要的。

站內(nèi)搜索的道理一樣,通過記錄不同的用戶搜索的詞和點擊進入的結果的一個n值,最終找到某些文章最相關的關鍵詞,用這些詞去搜索,返回的結果應該是比較相關的。

歷史瀏覽記錄主要是指用戶都閱讀了網(wǎng)站內(nèi)的哪些文章,在這個用戶的瀏覽器中用cookie記錄下來,為了防止cookie被清除,還可以通過用戶注 冊、社交賬號綁定、IP記錄等把該用戶的行為記錄到網(wǎng)站數(shù)據(jù)庫中。不單單要記錄讀了哪些文章,還要記錄其閱讀的順序和頁面停留的時間,高級一點還可以記錄 每一個頁面都在哪些位置進行了點擊,哪些位置花了更多的時間來研究閱讀。總之,這些都可以通過javascript來實現(xiàn)。只有通過按順序點擊鏈接次數(shù)在 5次以內(nèi)的訪問有參考價值,而且這里假設了用戶不是因為圖片上有個美女而被吸引去點擊的。只要符合這種情況,就可以把用戶閱讀過的這些文章的標簽收集起 來,進行詞頻統(tǒng)計,挑出詞頻最大的幾個,再使用搜索模塊搜索文章。下一次有新用戶訪問上面5次訪問內(nèi)的文章的時候,都可以嘗試把這些搜索到的文章作為推薦 文章推薦給用戶。

這就有點前文提到的大數(shù)據(jù)的意味兒了。

結語

無論是哪一種方案,你會發(fā)現(xiàn),其實你的網(wǎng)站讀者在推薦文章的程序中會起到非常大的作用。這是Web2.0帶來的影響,除了第二種方案需要迫使用戶參 與之外,我們都可以利用程序,神不知鬼不覺的監(jiān)聽用戶行為,從中挖掘出有用的信息。而推薦系統(tǒng),也可能因為人的參與而更加準確,為后面新來的讀者提供更重要的信息。

關鍵詞:文章,推薦,讀者

74
73
25
news

版權所有? 億企邦 1997-2022 保留一切法律許可權利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點擊下載Chrome瀏覽器
關閉