'電商運營之站內搜索的全面指南(七)'

"

本文為大家簡要介紹了電商算法的形成過程,並將搜索算法分為了分詞算法、類目預測算法、商品排序算法、個性化千人千面四個部分進行介紹。

"

本文為大家簡要介紹了電商算法的形成過程,並將搜索算法分為了分詞算法、類目預測算法、商品排序算法、個性化千人千面四個部分進行介紹。

電商運營之站內搜索的全面指南(七)

其實在電商站內搜索領域,其核心的機密基本上就屬於排序算法範圍內了。我在上一章節中誇下海口說要給大家嘮一嘮電商算法的形成的過程,其實是有點心虛的,因為我壓根不是算法出身,也無法給大家講解什麼拉格朗日公式的原理,貝葉斯的變形公式等。但是我能給大家解釋一下這些算法的形成過程,以及在形成過程中運營和產品是如何配合的,以及如何運用一個現成的方案,開發出一套高時間性價比的搜索產品體系。

電商站內搜索其實是以算法為核心,運營為輔助的模塊。說到底,如果搜不準,搜不全,運營的再好也只是空中樓閣,因此我們先講一講算法體系,再講運營方式。

那如果是我,如何從0起步建立起一套經濟實惠,省時省力的搜索邏輯體系(也有可能是我閉門造車,所以謹慎採納,不喜請誠懇地指正)。

說句題外話: 算法聽上去高大上,其實通俗地講,就是解決問題的方法,即便是計算公式再高大上,技術理念再先進,如果解決不了問題,一樣不能叫算法。

其次很多人以為算法其實應該是純計算機來解決,其實這是一種誤解,不可否認,計算機自動化確實是在算法中佔舉足輕重的地位,但是算法不僅僅是計算機,還有人工積累的比重,且不可或缺。

因此搜索算法也一樣,離開了人工輔助,算法什麼問題都解決不了。好了說正經的,搜索算法主要分為以下幾個核心:

  1. 分詞算法
  2. 類目預測算法(解決準不準的基礎)
  3. 商品排序算法(電商核心機密)
  4. 個性化千人千面(電商數據提升機密)

分詞算法

我們先來了解下分詞算法:目前國內有專門的漢語分詞第三方分詞接口,且功能完善,成本低廉,能夠進行詞幹提取,語義分析,甚至情感判斷等。算法方面也是百花齊放,各有優劣,目前有三大主流分詞方法:基於字符串匹配的分詞方法基於理解的分詞方法基於統計的分詞方法。

基於字符串匹配的分詞方法

又稱為機械分詞方法,它需要有一個初始的充分大的詞典,然後將待分詞的字符串與詞典中的元素進行匹配,若能成功匹配,則將該詞切分出來。

按掃描方向的不同,字符串匹配分詞方法可以分為正相匹配和逆向匹配;按照不同長度的匹配優先度可以劃分為最大匹配和最小匹配(細節我就不在這說了,這種分詞方式是屬於最為簡單分詞方式,可以自行百度其工作邏輯和流程).

基於理解的分詞方法

這個就有點技術含量,國內的主要搜索大廠,比如百度、字節跳動等都在開發帶有人工智能模塊的搜索算法。其基本思想就是在分詞的同時進行句法、語義分析,利用句法信息和語義信息來處理歧義現象。它通常包括三個部分:分詞子系統、句法語義子系統、總控部分。

由於漢語語言知識的籠統、複雜性,難以將各種語言信息組織成機器可直接讀取的形式,因此目前基於理解的分詞系統還處在驗證和試用型階段。

基於統計的分詞方法

即每個字都是詞的最小單元,如果相連的字在不同的文本中出現的頻率越多,這就越有可能是一個詞。因此我們可以用相鄰字出現的頻率來衡量組詞的可能性,當頻率高於某個閾值時,我們可以認為這些字可能會構成一個詞。

主要統計模型: N元文法模型(N-gram),隱馬爾可夫模型(Hidden Markov Model,HMM),最大熵模型(ME),條件隨機場(Conditional Random Fields,CRF)等。

優勢:在實際運用中常常將字符串匹配分詞和統計分詞結合使用,這樣既體現了匹配分詞速度快、效率高的優點,同時又能運用統計分詞識別生詞、自動消除歧義等方面的特點。

基於統計的分詞方式&類目預測

我們著重瞭解一下第三種,基於統計的分詞方式&類目預測。如果說有什麼算法是基於統計的,那麼這個算法肯定需要一個訓練集,而且這個訓練集需要是正確的,人為校驗的。

因此我們所說的這種算法,則是在人工標註的訓練集上訓練而成的。因此我們接下來將要討論的算法是——類目預測訓練集。

目前從訓練集上來看,收集的方式主要有兩種,第一種是人工中心詞收集,第二種則是機器分析與訓練。

人工中心詞收集

這個方案其實是比較討巧的,基於規範的詞典詞語來進行收集,主要收集物品詞&品牌詞。

之所以要選定物品和品牌詞收集還是基於上一章提過的app購物行為假設,即用戶在購物app中始終是以搜索物品或者品牌的型號/物品為最終目的。

如果用戶進入app不進行物品詞或者品牌詞搜索,這個用戶對該app而言的價值顯然會大打折扣,也許有的人會說,每天搜索的人那麼多,保不齊會有人搜索比較範範的詞,那不算嗎。其實是算的,但是我們現在講得是基於統計概率來說,如果95%的人都搜索物品和品牌,那麼你現在糾結5%的人不是這樣的情況顯然是沒有意義的。還是那句話,越是想兩全,越是兩遍都不全。好了,言歸正傳。收集的流程如下圖:

"

本文為大家簡要介紹了電商算法的形成過程,並將搜索算法分為了分詞算法、類目預測算法、商品排序算法、個性化千人千面四個部分進行介紹。

電商運營之站內搜索的全面指南(七)

其實在電商站內搜索領域,其核心的機密基本上就屬於排序算法範圍內了。我在上一章節中誇下海口說要給大家嘮一嘮電商算法的形成的過程,其實是有點心虛的,因為我壓根不是算法出身,也無法給大家講解什麼拉格朗日公式的原理,貝葉斯的變形公式等。但是我能給大家解釋一下這些算法的形成過程,以及在形成過程中運營和產品是如何配合的,以及如何運用一個現成的方案,開發出一套高時間性價比的搜索產品體系。

電商站內搜索其實是以算法為核心,運營為輔助的模塊。說到底,如果搜不準,搜不全,運營的再好也只是空中樓閣,因此我們先講一講算法體系,再講運營方式。

那如果是我,如何從0起步建立起一套經濟實惠,省時省力的搜索邏輯體系(也有可能是我閉門造車,所以謹慎採納,不喜請誠懇地指正)。

說句題外話: 算法聽上去高大上,其實通俗地講,就是解決問題的方法,即便是計算公式再高大上,技術理念再先進,如果解決不了問題,一樣不能叫算法。

其次很多人以為算法其實應該是純計算機來解決,其實這是一種誤解,不可否認,計算機自動化確實是在算法中佔舉足輕重的地位,但是算法不僅僅是計算機,還有人工積累的比重,且不可或缺。

因此搜索算法也一樣,離開了人工輔助,算法什麼問題都解決不了。好了說正經的,搜索算法主要分為以下幾個核心:

  1. 分詞算法
  2. 類目預測算法(解決準不準的基礎)
  3. 商品排序算法(電商核心機密)
  4. 個性化千人千面(電商數據提升機密)

分詞算法

我們先來了解下分詞算法:目前國內有專門的漢語分詞第三方分詞接口,且功能完善,成本低廉,能夠進行詞幹提取,語義分析,甚至情感判斷等。算法方面也是百花齊放,各有優劣,目前有三大主流分詞方法:基於字符串匹配的分詞方法基於理解的分詞方法基於統計的分詞方法。

基於字符串匹配的分詞方法

又稱為機械分詞方法,它需要有一個初始的充分大的詞典,然後將待分詞的字符串與詞典中的元素進行匹配,若能成功匹配,則將該詞切分出來。

按掃描方向的不同,字符串匹配分詞方法可以分為正相匹配和逆向匹配;按照不同長度的匹配優先度可以劃分為最大匹配和最小匹配(細節我就不在這說了,這種分詞方式是屬於最為簡單分詞方式,可以自行百度其工作邏輯和流程).

基於理解的分詞方法

這個就有點技術含量,國內的主要搜索大廠,比如百度、字節跳動等都在開發帶有人工智能模塊的搜索算法。其基本思想就是在分詞的同時進行句法、語義分析,利用句法信息和語義信息來處理歧義現象。它通常包括三個部分:分詞子系統、句法語義子系統、總控部分。

由於漢語語言知識的籠統、複雜性,難以將各種語言信息組織成機器可直接讀取的形式,因此目前基於理解的分詞系統還處在驗證和試用型階段。

基於統計的分詞方法

即每個字都是詞的最小單元,如果相連的字在不同的文本中出現的頻率越多,這就越有可能是一個詞。因此我們可以用相鄰字出現的頻率來衡量組詞的可能性,當頻率高於某個閾值時,我們可以認為這些字可能會構成一個詞。

主要統計模型: N元文法模型(N-gram),隱馬爾可夫模型(Hidden Markov Model,HMM),最大熵模型(ME),條件隨機場(Conditional Random Fields,CRF)等。

優勢:在實際運用中常常將字符串匹配分詞和統計分詞結合使用,這樣既體現了匹配分詞速度快、效率高的優點,同時又能運用統計分詞識別生詞、自動消除歧義等方面的特點。

基於統計的分詞方式&類目預測

我們著重瞭解一下第三種,基於統計的分詞方式&類目預測。如果說有什麼算法是基於統計的,那麼這個算法肯定需要一個訓練集,而且這個訓練集需要是正確的,人為校驗的。

因此我們所說的這種算法,則是在人工標註的訓練集上訓練而成的。因此我們接下來將要討論的算法是——類目預測訓練集。

目前從訓練集上來看,收集的方式主要有兩種,第一種是人工中心詞收集,第二種則是機器分析與訓練。

人工中心詞收集

這個方案其實是比較討巧的,基於規範的詞典詞語來進行收集,主要收集物品詞&品牌詞。

之所以要選定物品和品牌詞收集還是基於上一章提過的app購物行為假設,即用戶在購物app中始終是以搜索物品或者品牌的型號/物品為最終目的。

如果用戶進入app不進行物品詞或者品牌詞搜索,這個用戶對該app而言的價值顯然會大打折扣,也許有的人會說,每天搜索的人那麼多,保不齊會有人搜索比較範範的詞,那不算嗎。其實是算的,但是我們現在講得是基於統計概率來說,如果95%的人都搜索物品和品牌,那麼你現在糾結5%的人不是這樣的情況顯然是沒有意義的。還是那句話,越是想兩全,越是兩遍都不全。好了,言歸正傳。收集的流程如下圖:

電商運營之站內搜索的全面指南(七)

道理很簡單,即通過收集站內每個類目所售賣的物品,同時通過拓展這些物品詞的同義詞和上下位詞,來對應這些類目。同時機器也可以通過算法來進行收集,對所有商品標題進行ngram統計切分,統計出每個類目出現頻率最多的詞和詞組等,與人工收集的相對照進行檢驗和補充。這樣我們就得到了一個物品詞-類目的對應表。一個簡單高效的訓練集就誕生了。

那麼肯定有人會說“也不行啊,你光收集物品詞了,還有氛圍詞、人群詞呢?比如學校、工地、男士、女士你都不收集了,男士鞋子你怎麼辦?”

當然不是,這個物品-類目詞的對應表訓練集只是個基礎。只有在保證訓練集非常準確且覆蓋面全的情況下,才能確保機器進行訓練,且即便我僅僅是打個基礎,也能比較正確的召回,你是不是忽略了全詞匹配的作用了?

在物品詞訓練集整理好之後。接下來可以開始對用戶關鍵詞開始分析了,即通過用戶輸入的關鍵詞統計點擊行為,描述這些點擊落在哪些類目的概率,並分析這些關鍵詞和訓練集中的物品/品牌型號詞的類目關係,進一步進行人工校對和遍歷。

這樣就得到了一個用戶行為和網站商品數據的合集訓練集,在經過人工校對後就形成了一個準確性好,覆蓋面高的訓練集。此時經過不斷的人工校對-機器訓練-再校對-再訓練的過程,直至想要達到的效果。一個類目預測算法就此誕生(以上你們看看就好,當我自嗨好了)。

機器訓練需要切實的關鍵詞進行離線訓練和離線評估,以及在線ab和數據評估。前者是自己在離線環境下,使用用戶輸入的關鍵詞進行訓練並離線人工評估準確度;後者則是將訓練好的模型上線,採用ab測的方式,開一部分小流量進行在線實戰測試,並通過收集測試組的數據指標評估和分析效果。這也是互聯網產品迭代最主要的測試方式之一。

類目預測的人工和機器算法相結合的算法大概就是這樣,其實還有其他便捷的途徑,就是邏輯沒有以上這個清晰,所以我就不單列出來了。

商品排序算法

基本的類目排序邏輯確定好之後,我們其實會發現,用戶的關鍵詞其實是一個巨大的行為數據寶庫,用戶從輸入關鍵詞那一刻起,從點擊商品,到收藏,到加入購物車,到購買行為等,都能透露出其購物偏好。

如何將這些行為有效的記錄並訓練起來也能對商品的排序準確性和購買率起著較大的影響,其實目前各大網站的推薦算法還是有一些問題的,比如我前幾天在淘寶上買了一臺電視,結果接下來的日子裡我的首頁都充斥著各種電視的圖片,以及鏈接的外部DSP廣告也給我推送電視的信息(這就是侵犯個人隱私的大數據統計算法所為)。

商品排序算法的輪廓我已經在之前的章節提及,各種維度我就不再贅述,只說說這種排序權重計算規則的由來,一言以蔽之就是不斷調整每個維度權重的數值,並上線ab測試,以產出比最高的一組作為最終的算法排序規則。

當然這一規則和算法並不是恆定不變的,是隨著維度的不斷豐富和數據變化不停調整的。

個性化千人千面

現在各家網站都講求個性化千人千面,這也是我們看到京東、淘寶、蘇寧等電商首頁時,其個性化推薦模塊給你推薦你曾經看到過或者似曾相似的商品。並不是他們聰明瞭,而是你的行為被收集處理過了,展現給你的,就是你想看的,或者說想買的。(錢包也是這樣被掏空的)

好了,這期就到這吧。其實我有挺多關於人工和機器算法的結合的想法和嘗試,只不過在和工作中的同事交流時,因為各種原因未能付諸實踐,我將其保留在自己的OneNote筆記中。有機會分享給大家。

預告下一期內容:搜索運營溝通和產品如何配合,使搜索影響力最大化。

#專欄作家#

作者:王歡,微信:wanghuan314400,運營小灰一枚。

本文由 @王歡 原創發佈於人人都是產品經理,未經許可,不得轉載。

題圖來自Unsplash,基於CC0協議

"

相關推薦

推薦中...