前言
超級(jí)APP功能越來(lái)越全怎顾,非超級(jí)APP的DAU都在下降秦陋,當(dāng)失去增長(zhǎng)紅利之后滋早,精細(xì)化迭代和精細(xì)化運(yùn)營(yíng)將成為必然選擇。產(chǎn)品的工作的重點(diǎn)也需要從前端和交互的修改考婴,轉(zhuǎn)移到策略的制定贩虾。而產(chǎn)品策略在實(shí)現(xiàn)層,最終是以算法公式的形式輸出的沥阱。
一個(gè)成熟的策略系統(tǒng)缎罢,會(huì)涉及多種重要的因素。如何保證這些策略公式在復(fù)雜的運(yùn)算中發(fā)揮自己應(yīng)有的作用考杉,如何保證不同的數(shù)值能在同一緯度計(jì)算策精,這就涉及很多參數(shù)調(diào)整的策略技巧。
調(diào)整參數(shù)的目的
首先在調(diào)整參數(shù)的時(shí)候崇棠,前提是明確調(diào)整參數(shù)的目的咽袜。針對(duì)具體的目的,使用對(duì)應(yīng)的工具枕稀,然后才能達(dá)成具體的目的询刹。對(duì)調(diào)整參數(shù)的目的簡(jiǎn)單做了一些總結(jié),具體如下:
歸一化處理
調(diào)整因素的影響力
信息論處理:熱門(mén)降權(quán)和時(shí)間衰減降權(quán)
調(diào)整變化曲線
設(shè)定變化界限
歸一化處理
歸一化處理萎坷,通過(guò)處理讓不同因素在一個(gè)范圍內(nèi)進(jìn)行比較范抓。舉個(gè)例子,如果要比較專欄的影響力食铐,需要綜合考慮閱讀量匕垫、點(diǎn)贊量、發(fā)表文章量這三個(gè)因素虐呻,直接相加顯然是不可行象泵,因?yàn)殚喿x量數(shù)量是點(diǎn)贊數(shù)的至少10倍寞秃,而點(diǎn)贊數(shù)也是發(fā)表文章數(shù)的幾十倍。要讓不同因素在一個(gè)變化范圍內(nèi)偶惠,這個(gè)時(shí)候就需要對(duì)進(jìn)行歸一化處理春寿。
最簡(jiǎn)單粗暴的歸一化方式,就是直接除以數(shù)據(jù)中的最大值忽孽,那么所有值都在0~1之間绑改,并保留原有的變化性質(zhì)。即:
當(dāng)然這樣的處理方法也會(huì)有問(wèn)題兄一,比如受到極值影響比較大厘线。而且如果大部分分值比極值低很大的數(shù)量級(jí),則低分值將沒(méi)有區(qū)分度出革,以閱讀量為例造壮,如果最大閱讀量為十萬(wàn)+,而大部分專欄文章閱讀量集中在500左右骂束。這樣直接除以極大值顯然是不明智的耳璧。這個(gè)時(shí)候最好在處理前對(duì)數(shù)值進(jìn)行調(diào)整。在之前的文章《神奇的對(duì)數(shù)》中提到的對(duì)數(shù)處理是個(gè)比較好用的方法:
這樣既保證了所有的數(shù)值在0~1之間展箱,同時(shí)極值對(duì)最終分值的決定性影響也沒(méi)那么大旨枯。
調(diào)整因素的影響力
調(diào)整影響力的比較通用的辦法有兩種,加數(shù)值混驰,乘以數(shù)值攀隔。
加數(shù)值能解決冷啟動(dòng)遇到的新內(nèi)容權(quán)重過(guò)低的問(wèn)題,比如账胧,如果知乎答案完全按照贊同排序,則新發(fā)布的知乎答案先紫,一開(kāi)始在下面治泥,不利于被更多人看見(jiàn),如果新發(fā)布的內(nèi)容自帶20個(gè)贊參與排序遮精,則能解決這一問(wèn)題居夹。
乘以數(shù)值能解決數(shù)值重要性的問(wèn)題,如果希望某一因素在總排序中占據(jù)更重要的位置本冲,則可以用乘法處理准脂,比如,還是知乎內(nèi)容排序的例子檬洞,如果完全按照贊同排序狸膏,要提高文章的排序權(quán)重荚虚,可以直接乘以某個(gè)系數(shù)囊颅。
信息論處理:熱門(mén)降權(quán)虎眨、時(shí)間衰減降權(quán)叮姑、置信度提權(quán)
一個(gè)信息出現(xiàn)概率越小,信息量越大砾脑,如果一個(gè)信息越常見(jiàn)幼驶,包含的信息越小。這個(gè)在之前文章《搜索的原理》中提到的一個(gè)基礎(chǔ)觀點(diǎn)韧衣。在實(shí)際的策略公式中盅藻,從信息論的角度去考慮就能快速的理解策略,讓最終結(jié)果更加符合預(yù)期畅铭。
熱門(mén)降權(quán)以經(jīng)典的圖書(shū)推薦為例進(jìn)行介紹氏淑。在圖書(shū)推薦中買了的人還買了的策略中,有一個(gè)著名的哈利波特問(wèn)題顶瞒,因?yàn)楣ㄌ劁N量過(guò)高夸政,幾乎所有的圖書(shū)都和它有關(guān)系。怎么處理呢榴徐?一個(gè)辦法是用銷量做流行度處理守问,降低流行度特別高的商品在排序中的得分:
時(shí)間衰減降權(quán),顧名思義坑资,讓過(guò)去的信息權(quán)重更低耗帕,最近的信息權(quán)重更高。行為具有連續(xù)性袱贮,最新的行為包含了更大的信息量仿便。在處理的時(shí)候也可以使用上面的數(shù)學(xué)形式,讓更遠(yuǎn)的時(shí)間分?jǐn)?shù)衰減更大:
置信度提權(quán)攒巍,是基于數(shù)據(jù)量越大信息越靠譜嗽仪,在處理平均值,打分等的參數(shù)時(shí)候有比較好的應(yīng)用柒莉。比如闻坚,在計(jì)算一個(gè)電影的排序的時(shí)候,在考慮多個(gè)因素中包含了電影觀眾打分兢孝,這兒時(shí)候應(yīng)該是打分的人越多窿凤,電影打分的權(quán)重越高。
調(diào)整變化的曲線
一般而言未經(jīng)加工的數(shù)值在策略中很難直接應(yīng)用跨蟹,比如:知乎點(diǎn)贊/閱讀的比率雳殊。好的文章高一些,差的文章低一些窗轩。變化范圍特別小夯秃。希望整體數(shù)值變化范圍不變的情況下,怎么加大區(qū)分度?這個(gè)時(shí)候可以用一些曲線的性質(zhì)寝并。開(kāi)方是個(gè)例子箫措,0.25變?yōu)?.5,0.01變?yōu)?.1衬潦,而1處理后還是1:
同樣的如果分值都集中在很高的情況下斤蔓,為了加大區(qū)分度,也可以用開(kāi)方的逆運(yùn)算镀岛。0.8處理后變?yōu)?.64弦牡,0.5處理后變?yōu)?.25,1處理后還是1:
設(shè)定變化的界限
防止一些極值產(chǎn)生對(duì)于計(jì)算的影響漂羊,設(shè)定變化界限也是常用的方法驾锰。比較暴力的做法是設(shè)定最大值,比如:當(dāng)在閱讀量計(jì)算中走越,閱讀量數(shù)值大于10萬(wàn)椭豫,只取十萬(wàn),防止大值的影響旨指。
還有一些比較柔性的做法赏酥,比如用有界函數(shù)進(jìn)行處理:
或者直接用之前文章《神奇的對(duì)數(shù)》中提到的對(duì)數(shù)也是不錯(cuò)的做法,會(huì)讓大值影響減少: