是新朋友嗎?記得先點藍字關注我哦~面試
hi,你們好,這裏是有溫度的pm——小諾。
今天我來爲你們講述那場面試準備的後半部分,同時也會簡單講述那場面試的通過。
下篇包括:
引言
6、推薦策略和算法
7、AB測試實驗設計和策略效果
8、數據指標、標籤可視化
9、運營分析與迭代
10、面試通過
結語算法
首先咱們來看三道邏輯推理題,這是18年我參加x狗搜索產品pm面試時,一面的筆試題。數據結構
1.屋外三個開關控制三個燈,只有進屋才能看到燈泡亮滅狀況,如何只進屋一次,肯定開關控制狀況。
2.兩個10升的試瓶中分別盛裝了5升藍墨水與紅墨水。用一個5毫升的勺從紅墨水試瓶中舀出5毫升的紅墨水,將其到入到藍墨水試瓶中,攪拌後再出藍墨水試瓶中舀出5毫升的墨水,將其到入到紅墨水試瓶中。問:紅墨水試瓶含藍墨水多,仍是藍墨水試瓶含紅墨水多?
3.有3頂紅帽子,2頂黃帽子。測試人員共3位。裁判讓3我的從矮到高縱向站成一一隊,給他們每一個人頭上戴一頂帽子。
每一個人都看不見本身戴的帽子的顏色,卻只能看見站在前面那些人的帽子顏色。
裁判問最後一位:「你是否知道本身帶的帽子的顏色?」回答:「不知道」。
而後問中間這位一樣問題,回答仍然是不知道。
最後問最前面的那位,這位說:「知道」。
(注:全部的問答,3位測試人員都能聽見)
問:最前面這位所帶帽子顏色是什麼,爲何?架構
機智的你,來解答一下唄,歡迎在留言區評論~app
當咱們有了標籤體系,採集到了用戶的數據,咱們要從這些數據中「讀」出有用信息從而爲用戶打上標籤,這裏會涉及到數據挖掘,天然語言處理,語義理解,機器學習等技術。機器學習
分詞方法
好比一個用戶看了一篇新聞發表了一個評論,咱們想要了解他說了什麼,提取出對咱們有用的信息。
這裏就涉及到了分詞技術,好比「若是真是計算機就行了」這句話。說幾種比較簡單的分詞方法,好比按照字典分詞,字典一般採用前綴樹或者後綴樹的數據結構存儲,進行正向最大匹配。以上面的爲例「如」後跟「果」,「若是」是一個詞語,再看第三個字「若是真」不是一個詞,繼續向下,發現都不是一個詞組,那麼就在「若是」這裏進行切分。「計算」是一個詞,繼續向下「計算機」也是一個詞語,「計算機就」不是一個詞語,再往下發現到最後依然組不成詞組,那麼在「計算機」這裏切分。
以上句子存在的交集型歧義也須要解決,「若是」和「果然」都是詞語,語義理解時計算機語言讀懂句子用到的是「若是」而不是「果然」。這裏還有一種分詞方法是基於統計的分詞方法,即咱們常說的貝葉斯分詞,即經過大量語料積累進行機器學習,統計出一個字後面跟另外一個字的機率,從而進行分詞。ide
語義理解
語義理解中還要進行情感的理解,以及邏輯推理。情感理解,舉個例子,若是是在ota上定了一個旅店,住了一晚而後給出了評價,比較明顯的情感評價是「環境太好了」「熱水器真糟糕」。
不易發現的情感如「提供了早餐」,其實咱們能夠看出提供早餐是用戶的褒義評價,但可能通常的算法讀不出來。
再好比若是網購的地址填寫的是學生宿舍,那麼算法也須要大量學習,進行推理,從收貨地址是學生宿舍推理出用戶是學生,這就像百度的知識圖譜。工具
用戶畫像
接下來我想聊一下用戶畫像的幾個分類,好比基本信息,如姓名,性別,年齡,生日,星座,設備號,職業,學歷,手機號,郵箱等。這類特徵是能夠長時間不進行更新的,比較固定。
但對於這個新聞app有個問題,好比對於社交軟件,用戶樂於填寫我的信息,但對於新聞app,可能100人,有30我的填寫了信息,另外70我的不去填寫。這裏咱們爲了給這70個用戶打標籤,就須要用這30我的作爲樣本集,進行學習。好比經過學習,瞭解男性用戶和女性用戶的特色有什麼不一樣,好比男性用戶早晨更喜歡看時事新聞,晚上喜歡看玄幻小說,女性用戶早上喜歡看娛樂熱點,晚上喜歡看言情小說。經過得出的這些特徵,進行「標籤擴散」,爲那70個未填寫性別信息的用戶打上性別標籤。學習
接下來咱們說一下興趣愛好和行爲特徵,這類標籤是常常變化的,具備時期時效性。好比咱們爲了知道一個用戶對哪類新聞感興趣,設計了一個打分加權模型,每點一個分類的新聞就加一分,線性增加。好比用戶30天點了156次軍事新聞,就156分,點了45次歷史文章歷史就是45分,咱們能夠看出用戶最喜歡看的是軍事,其次是歷史。因而咱們主要給他推薦軍事,其次是歷史。
但這裏有個問題,若是某一天開始,用戶開始對娛樂新聞感興趣了,即他目前更想看的是娛樂新聞,但由於歷史數據積累軍事新聞權重過高,短時間內算法沒法推送娛樂新聞給他,那麼線性打分模型是不合適的。
我想這裏能夠採用指數模型,好比對某個類別的興趣權重滿分是10分,前9次每次1分,第10次開始每次在以前基礎上,加9*10的-(n-9)次方,第10次就是9.9,第11次點擊軍事就是9.99,以此類推,讓權重不斷逼近10。固然咱們還要經過其餘特徵調整權重,好比打開頻率,如三天看1次軍事的,仍是一小時看3次軍事的。這樣當用戶開始對新的類別感興趣的時候,能夠更快的獲得推薦。測試
經常使用算法
這裏咱們來講一下推薦算法。首先咱們會把用戶和新聞分別標籤化,來說一下協同。
好比甲用戶喜歡軍事和娛樂,乙用戶喜歡科技和文學。甲乙用戶標籤化後類似度很高,達到了必定閾值,那麼咱們能夠認爲乙用戶喜歡的分類,甲用戶可能也喜歡,因而咱們把科技和文學推薦給了甲用戶。這是基於用戶的協同。
若是甲喜歡a文章,a和b文章標籤化後類似度很高,那麼咱們猜想甲也會喜歡b文章。
若是有甲乙丙三個用戶,甲乙喜歡a文章也會喜歡b文章,丙喜歡a文章,那麼咱們根據「全部喜歡a文章的用戶都會喜歡b文章」能夠猜想丙用戶也會喜歡b文章。
基於類似度的推薦涉及到一個公式,這個公式來源於搜索引擎,由於搜索引擎的查詢系統要根據用戶輸入的關鍵詞對抓取到的網頁按照相關度進行排序,從而展示在用戶面前。這個模型就是向量空間模型,餘弦類似度公式。
咱們給用戶打上不一樣的標籤,分配不一樣的權重,好比abc三個標籤,權重分別是λ1λ2λ3。每一個標籤量化到一個座標軸,這樣咱們在一個三維座標系能夠惟一肯定一個向量。同時咱們把衆多的新聞也進行向量化,得出和用戶標籤向量的類似度,推薦排序按照類似度從高到底排序。就實現了推薦。
但這裏也會有一些常見問題,好比若是咱們標籤打的不少,也就是向量維度不少,其中有一些維度就由於數據空白太多而影響準確性。好比若是「轉發」是一個維度,100個用戶只有5我的轉發,那麼在轉發這個維度上只有5我的有數值,其餘95我的此維度就會被置爲空,若是這種維度過多,就影響類似度計算。
面對這樣的狀況,我認爲是否能夠把這樣的標籤不單獨設置維度,而是以加權的形式加到前面維度的權重上,從而解決這個問題。
一些思考
這裏還有一個問題在於,好比仍是在旅店,甲旅店評價標籤是環境好5分,設施齊全5分,有早餐3分。乙旅店環境好5分,設施齊全5分。咱們顯然知道甲旅店更好一些,由於甲旅店還提供早餐,雖然不是5分滿分,但多了一個服務。可是若是按照打分模型給標籤分配不一樣的權重,由於早餐這個標籤甲旅店不是5分滿分,因此總評分反而沒有乙旅店高。會存在這樣的例子,因此甲乙旅店標籤可能須要進行統一化。
最後咱們來講一下地理信息,好比個人常駐地是北京,app天天給我推薦北京本地的新聞,有天我去威海旅遊了,那麼app本地新聞的版塊應當作到靈敏反應。
再來談一下高級標籤的模型搭建,好比用戶流失模型,是一天登一次,三天登一次,一週不登一次,一個月不登一次等等,劃分abcd等流失級別。以及活躍度等標籤。這種模型更常見的是天氣預報app,裏面的穿衣指數,洗車指數就經過構建模型創建。
ab測試
當咱們設計了一個策略方案,咱們須要分組來測試效果。
好比咱們針對通勤場景,從用戶角度出發,感受在有線環境下,與無線環境相比,用戶更少點擊視頻或者純圖的資訊。
所以咱們提出假設,設計策略,即在有線環境下,減小信息流上視頻和純圖資訊的比例。
將同質用戶分組,控制惟一變量,對照組爲目前狀況,實驗組幾組分別在有線狀況下,減小視頻和純圖資訊30%,40%,50%,60%,70%。
同時咱們要多加一組和對照組相同的組,進行aa測試,以保證沒有其餘因素帶來天然波動。後期看數據時方便查看。
效果思考
咱們設計好了標籤體系,爲用戶進行了畫像,還作了新聞推薦,那麼咱們的標籤打的如何呢?須要進行評估,評估的話就涉及到了量化的指標。
好比咱們在一批同質同標籤用戶中,給其中一部分推送他們喜好的新聞。咱們來看他們的點擊次數和瀏覽時長是否相對另外一組用戶要大。若是大,可能咱們的標籤體系就建設的不錯。
分析思考
若是一個用戶咱們斷定他喜好娛樂-國內-xx明星,咱們推送了這個明星的另外一篇報道給他。他點進去沒怎麼看就出來了,這必定是咱們標籤打錯了嗎?
我認爲不必定,可能他前面看的文章和推薦文章內容類似,也可能前面看的文章內容篇幅高度文筆都高於後一篇。那麼若是咱們推薦一篇和他看過的文章內容不一樣,質量至關的他感興趣的明星的文章,他依然點進去就出來,會是什麼緣由呢?我認爲可能會是觀點相反,好比第一篇文章是褒獎此明星的,推薦的是抨擊該明星的,因此用戶跳出。
這裏我認爲文章應該有分級機制,好比分一類二類三類,我從面試官處瞭解到公司確實有。我繼續問好比同一篇文章是否只有一個通用級別,仍是說它是軍事一類,同時屬於歷史三類文章。面試官說是通用的,尚未細分。
同時這裏也會有個問題,就是沒有做者喜歡本身的文章被分級,而是喜歡讓更多的用戶看到。
還有目前在內容標籤體系中也會存在內容交叉的問題,好比軍事下面的歷史和歷史下面的軍事,這也是須要解決的問題。
同時關於內容標籤體系的創建,我認爲像我開始說到的,關鍵詞提取和標籤體系分開。結構化標籤和非結構化標籤合做。
提取文中能表明本文內容的關鍵詞,這裏我來講一下搜索引擎中的一個tf-idf加權技術,這個技術說的是,若是一個詞語再本文中出現的越多,在其餘文章中出現的越少,則這個詞語具備很好的表明性。tf是這個詞語在本文中出現的頻率,好比分詞後本文有100個詞,產品經理出現了5次,則5/100獲得的0.05就是詞頻。
我認爲內容標籤關鍵詞體系的設計,除了產品,算法,同時也須要運營支持,採用機器+人工的方式。
上面有談到數據指標體系建設,按照業務線分開,按照高低優區間分開。
接下來應當按照查看要求,用合適的圖形繪製,好比若是是看數據的趨勢能夠用點線圖,若是要看數據佔比能夠用扇形圖,若是要看數據離散程度同時爲數據擬合作基礎,能夠用散點圖。咱們把每一個須要的指標圖形繪製出來。
而後咱們須要瞭解業務上的目標或者咱們的目的,再按照用戶的業務邏輯或者分析邏輯進行組合。
好比負責vip商戶的部門想看上個月每一個城市vip商戶的銷售額和毛利。咱們能夠用柱狀圖橫向列出各城市的銷售額和毛利,上面用扇形圖集合分佈展現,好比用扇形圖的面積表明銷售額,面積越大銷售額越大,用顏色深淺表明毛利的大小,顏色越深毛利越多。
若是a和b兩個城市扇形圖面積差很少大,可是a城顏色更深,那麼咱們須要進一步分析a城毛利高的緣由,從而指導b城盈利。因而咱們下鑽到下層頁面,下層頁面能夠具體顯示ab兩城米麪糧油四個品類的毛利,咱們舉例簡單點,好比經過對照,發現米麪糧ab兩城毛利差很少,油這個品類a明顯高於b,那麼業務人員能夠定位到是那個品類的問題,再從也許場景去找到根本緣由。
關於指標和標籤我認爲應該根據實際狀況組合或者分開設計。好比能夠把報表,圖形,運營工具,標籤畫像,接口分開。
當咱們的原型圖設計好後能夠找需求方確認,並邀請研發,業務一塊兒開評審會,確認沒問題後開發測試上線。
從本質上來講作產品的過程都是發現問題——分析問題——給出方案——落實方案——評估迭代。
但數據產品經理和其餘產品經理仍是有些區別的,好比通常的產品可能更注重交互,頁面美觀度,用戶感知等。但數據產品更注重邏輯。再好比普通產品若是有問題或者bug若是不是特別緊急能夠放在下一版本解決,可是數據產品一旦有問題,須要馬上解決從而保證數據準確性。
但不管如何咱們都要考慮,用戶是誰,他們有什麼特色,產品價值有多大,目前的知足程度。同時考慮成本與收益的關係,好比考慮人力成本,資源成本,沉沒成本,用戶成本等。
當產品開發後,咱們能夠先爲部分用戶開放權限進行內測,好比跑一週的數據若是沒有問題再進行公測。同時這裏應該也要作好用戶權限的設計管控,能夠把用戶崗位職級——系統模塊角色——具體模塊三者聯繫起來,讓不一樣部門不一樣職級不一樣職責的用戶看到不一樣的內容。
若是有數據質疑須要排查。能夠分爲三步:對口徑,查代碼,導明細。
好比一個業務人員說在業務系統看到a指標的數值和bi系統上的不同。那麼咱們首先要肯定數據源和指標口徑統計方式是否相同。通常第一步能夠解決絕大多數的問題。
若是第一步不行,咱們能夠叫兩個系統的研發對代碼,看是否代碼有問題,是否用的不是一個數據表。
若是第二步依然不行,咱們能夠導出兩個系統指標的明細數據進行覈查。
在運營中咱們可能須要經過分析來發現問題。好比能夠經過指標邏輯,好比看到銷售額暴跌,影響銷售額的子指標是下單商戶數和客單價,而後再分析這倆指標,按照指標邏輯看看哪裏出了問題。
也能夠按照aarrr模型(獲取,激活,留存,支付,分享)或者漏斗模型(訪問,抵達,瀏覽,諮詢,收藏,下單,支付)或者用戶操做路徑等模型一個個環節分析。
還能夠按照業務場景分析,好比採購,運送,倉儲,分揀,配送,售後等環節一步步分析。
再好比有個問題,說一家商場中天天的總營業額都差很少,某一天其中一家商店的營業額驟降,商場總得營業額仍是差很少。
那麼咱們首先應該瞭解這個商店往日佔到商場總營業額的比例,若是比例較高,則表示可能客戶流失到其餘商店,因此致使商場營業額不變而此商店驟降。
若是此商店比例較小,不對商場有什麼影響。那麼咱們考慮內外部因素,外部因素好比受到某個事件影響。
內部因素可從客戶體驗流程分析,好比商店是否裝修,服務是否下降,貨品是否過時或缺失,價格是否升高等等。
問題都須要在運營中發現,用戶的增加也須要運營去針對性的作精細化運營。
那日下午,我去參加面試,那是我第一次應試策略崗位,面試官是個很年輕的大哥,後來成了個人領導,入職後才知道他也是從那家搜索大廠出來的。
面試開始,他先讓我作自我介紹,再介紹下以往的經歷和作過的項目。而後問到我在那家搜索大廠的經歷,雖然當時我作的不是核心策略,可是懂不少的策略知識,我當時也寫在了簡歷上。他以爲個人經歷不是很匹配,但看到我簡歷上所寫,就讓我說說本身知道的知識,以及若是讓我作新聞資訊的畫像和推薦我要怎麼作。簡而言之,就是作一場產品思路的陳述。
我以爲這是個機會,就把前文中提早學到的知識,串起來在面試官面前一步步講解,說出本身的思考和想法。後來面試官問了幾個發散的問題。持續了一個小時,再後來涉及到了算法,因而喊了算法工程師來面我,
算法工程師問了我對一些算法的基礎瞭解,以及說出一些算法面臨的問題該如何調優,讓我發散性的考慮下,我作了陳述。又過了半小時,就是hr的面試。一週後我收到了offer。
對於此次經歷,我總結一下吧。我是個普通高校的畢業生,由於大廠對作策略的門檻比較高,要麼有經驗,要麼本科985 211或者碩士畢業,因此以前我會被一些大廠卡。
當決定必定要向本身熱愛的策略努力的時候,我先本身買書學習,在網站上看文章學習,而後作筆記,每次面試前都會過一遍筆記,直到本身能夠把那些內容背出來。我也買了一塊白板,當本身的一塊知識有了架構後,給我作研發的朋友試講一次,讓他也能聽懂。表示我掌握了。
我深知策略須要很強的實踐,只有實踐纔能有經驗,那些策略的結果和數據,不是看書或者想象就能獲得的。但在沒有入行以前,咱們惟有不停的學習,拓展知識面,擴充知識儲備。等待每一次面試機會的來臨。
入職後,個人老闆也挺喜歡我,帶我一塊兒作了一些策略,我終於轉方向成功了。
以上所有就是我此次面試的通過和所作的準備,但願對你們有用。
春已至,生活雖是曲折前進的,但每一個追求夢想的產品人,都在深情的堅持着。
我走過不少路,纔有機會和盡是碩士海龜的同事們坐在一塊兒辦公。
我相信執着過才知道機會的難能難得,祝你們都能作到本身喜歡的方向。
這裏是
一個數據人的自留地。
一個有溫度的產品社區。
一個數據人的自留地是一個助力數據人成長的你們庭,幫助對數據感興趣的夥伴們明確學習方向、精準提高技能。掃碼關注我,帶你探索數據的神奇奧祕