做產品就像某巧克力廣告說的那樣,你永遠不知道做的下一款產品包含哪些因素。比如我最近做的一款產品,就包含了算法因素。
以前有篇文章也寫過算法,這個是門《面試題隨談:新聞推薦》。
很多小公司像我們一樣,人員很精簡,不可能因為涉及到算法就請一個算法工程師。產品經理這個時候就得自己上陣了,兼職算法工程師的職能。
今天說說土方法做產品算法
思維導圖-條件歸類
流程圖-理清邏輯
百度公式-修正參數
找例子-運算測試
思維導圖-條件歸類
先簡單描述下這次的算法應用場景,信貸金融類的APP。
我們想根據每個不同的客戶的24項資料,算出這個客戶的信用卡融資、提額融資、網貸融資和線下信貸融資的總體額度。
也就是說,我們要根據相同的24項條件,算出4套融資方案,然后累加。
必須說明的是,相同的條件在4種融資方案中的影響權重很不一樣,而且4種融資方案相互影響,因為大多使用一套央行的征信(征信顯示負債比,這個影響批復率)。
綜合的想了下,這個工作量不算小,而且做算法的人必須思路清晰,否則很容易混淆。
我使用了思維導圖工具:XMIND,這款工具非常好用。
1)我在思維導圖上,列出24項影響條件
2)在每項影響條件后面,寫4套方案可能導出的結果
3)相互影響的條件,規律比較
全部寫出來后,思維清晰很多,至少能保證我們總體條件不會混淆,后續談論也有依據。
流程圖-理清邏輯
思維導圖只能算是第一步,接下來使用了流程圖幫助我們理清邏輯。
流程圖工具:VISIO。
既然有24項影響條件,那么肯定是條件不同的情況發生。一名客戶進來后,根據客戶的填寫的條件順序,我們一步步走流程圖。遇到不同條件就是一條之路,加上每項條件不是簡單的2種,也就是說單單一種算法的可能結果就大于:24*24。
對于影響因素很多的時候,我們做流程圖從底部倒著做會更加方便,因為每往上加一個條件,算法結果都是乘以二。其次是算法結果命名采用駝峰命名法,有助于我們知道算法結果的由來。
但是這種做法,還是有部分問題,如果顯示全部結果,電腦壓根不夠顯示。這里特別鳴謝部分同行群的支持,他們給我出了很多注意,包括精簡算法、UC矩陣算法等。
最后,我們還是根據流程圖來做客戶。
根據不同的條件,做成不同的算法
1.總共做4套算法
2.每項條件,就是一個子算法
3.算法進行命名排序
4.每一子算法在加影響因子(權重),來規避算法沖突
5.最后結果加一套過濾機制
百度公式-修正參數
你沒有看錯,我的確是在百度公式。因為最后我們要集合4套算法給出一個最終結果,必然會有公式。在網上把情況描述下,找可能適用的公式。
一件很奇怪的事發生鳥,很多你考慮過是事,其實很多人也考慮過。感謝很多偉大的經濟學家和數學家,創造了很多偉大的公式。
找到可能適用的公式后,我們要根據實際情況,修改參數。
找例子-運算測試
算法做好后,我們還要做測試,這個都是產品屆的常規套路了。
找到幾個典型的特征用戶,我們做測算模型,根據測算結果反饋微調前面的公式等因素。不得不說句,這部非常重要。做測試你會發現,很多之前遺漏的東西。
碎碎念
做產品經理的,不能太過于拘泥你只能做什么東西。做這個之前,就考慮過可能遇到的困難了,我向同行群求助時,很多人冷嘲熱諷,覺得你這個沒必要之類的。
這個時候,一定要堅定自己的信念。
你認為真的對的事情,自己去堅持,別人理解不理解壓根就不重要。
我們是做事的,不是去求理解的。