如果你常在網上閒逛,無論是單純去一個網站然後停留多頁,或是跨網站蜻蜓點水式地移動,你一定注意到現在的線上服務越來越厲害了。無論是跨網站追蹤的網路廣告投放,或是單一網站內不斷根據你的瀏覽行為推薦你有興趣話題的機制,亦或是議題、商品列表,或搜尋引擎結果排序,背後全都是運算。這些功能看似邏輯簡單,但要簡化出合理邏輯、實時收集數據,並根據即時資訊立刻進行機率推論,反應給螢幕前的使用者,其實是一連串的基本功。
「你可以猜想大如 Amazon 這樣的電商平台,是怎麼做數據的?」104人力銀行數據長呂承諭說「做一個網站,我們通常從使用者入站開始,有機會得到他從前一站轉介來的資料(Referal),接下來就開始是他在我們網站內的旅程了。」呂承諭解釋,當一個網站主決定要收集數據,並進一步利用即時數據的話,首先第一步就得鉅細靡遺地盤出使用者踏入自家網站某個頁面後,接下來可能出現的所有路徑,並在每一個路徑都準備了資料收集點,收集使用者在網站上走過這些路徑的每個足跡。
「數據的應用目的之一,主要是為了做預測;因此,當使用者在一個頁面,我們可以猜想他的下一步,是在幾毫秒後,要往哪裡去,而有了一個預測路徑用,總和為 1 的機率矩陣。」博士班時就鑽研機器學習、語意分析的呂承諭,開始解釋起計算的基礎原理。「在不同的產業,我們都有一個基礎標準,使用者按下連結後,我們多久要回應,通常標準是 100-300 毫秒不等。」呂承諭進一步解釋「所以網站當然希望預測你的路徑,針對你可能會走的方向,在你正在瀏覽的期間,開始準備載入;你可以想像,最簡單的作法,是針對你接下來可能會請求的路徑,預先把相關內容準備在最靠近你的伺服器端,來降低你請求所需時間。」
「這時候,剛剛說的那個路徑預測機率矩陣就很重要了!」呂承諭說「透過持續累積過去使用者足跡,網站方應該可以有一份根據過去使用者資料所做出來的機率矩陣」呂承諭指出,網站主甚至可以根據使用者的背景,例如性別、年齡、偏好、地區別,或網站的使用足跡進行分群,於是不同群體會擁有不同的機率矩陣,也因此可以預準備面對使用者的下一步。「但這都是根據過去資料,更厲害的網站可以做到更短頻率就更新預算出的機率,從幾個月、幾週、幾天,甚至變成每天幾小時就更新一次。」於是網站主就可以應對不同的網站功能開發,無論是廣告版位、商品導購轉換,讓網站反應能力不能抵觸這個演算天花板。
呂承諭認為,大多數的小公司沒有這種資源去做實驗,那只要使用者勉強可以忍耐一個網頁大概能夠在 1-2 秒內跑完,但當一個網頁由更多元素所組成,後面還要考慮網路傳輸及計算時間,大家就必須一個一個往回推,因此演算法規範非常依賴數據與營運經驗。因此,如果一家公司要成立資料科學家團隊,除了一個權限很高,職能上可介入營運的主任資料科學家外,還需要有產品經理、使用者經驗(User Experience)與工程團隊共同支應。呂承諭觀察,如果一個大型網路服務有許多不同的路徑預測機率矩陣,每個節點一定都有服務瓶頸,主任資料科學家就必須根據數據、結合不同職能討論出每個瓶頸的合理上下限,考慮讓使用者最舒適完成一個網站旅程。
如果我們發現一個重度使用者進來,我們甚至應該針對他客製化一個推薦清單,並透過路徑預測機率來最適化他的服務流程。呂承諭以 104 人力銀行為例,104 基本上服務企業端的招募者,與求職者兩方人群,由於服務內容是工作媒合,很幸運地已經有了完整的使用者資訊。「如果能更深入探勘文字資訊,與使用者行為背後的邏輯」我們就有機會提供最好的服務。呂承諭觀察,英語系國家都有不錯的人才媒合服務,在推薦、分析上的確領先 104 不少,例如 monster.com ,但他用同樣技術要跨到華文時,這些服務都會碰到華文地雷,在中文斷詞斷句上碰到文化上的演算障礙。
「例如我們很容易分辨台積電、台灣積體電路公司、台積、TSMC都是同一家公司,但是如果你不做文字整理,電腦沒辦法斷出這些都是同義詞,並自動給予適當分類的。」呂承諭進一步比較,光是網路上常用的正體中文(Traditional Chinese)可能還分成三個分支,台灣中文、港澳中文與馬來西亞中文,以 3 - 5 萬常用字來說,這三類中文就分別有 10% 左右的不同語彙。「光這段關鍵詞做好,我們就可以立刻優化工作搜尋。」呂承諭笑說。
硬底子的數據應用,全來自於點滴功力的累積
「光是一個個人履歷,就可以拆開許多不同的數據觀點」呂承諭說,履歷裡面可以拆分出硬技能(Hard skill)與軟技能(Soft Skill),硬技能包含學經歷、性別、年紀或其他具體特徵,軟技能則包含你的性向、與社會網絡關係,例如家庭或同事等等。這些軟技能會不會影響你的專業表現,其實得看你從事什麼樣的工作。呂承諭表示, 104 有一個性格職能測驗,根據 9 大職類可能需要的性向提供測驗量表,「但社會網絡關係就不需要靠量表了!」呂承諭笑說,我們可以透過學歷與經歷,去計算出你在什麼時間點,與哪些人可能有求學或工作上的重疊,這些人在 104 所留存的職涯軌跡又分別是什麼,進一步幫忙計算出這些軟技能。「104 還有一個特別的服務叫做 104職涯社群,幫助你找到職涯上的導師,透過導師的職涯,也是另一種重要關係。」呂承諭稱。
數據可以幫助媒合,然而回到更現實的問題是服務往往有斷點存在。縱然擁有接近 663 萬求職會員、32.4 萬家企業會員的 104,已經是台灣主流的人力銀行媒合服務之一,甚至在非正式統計有頂尖國立大學約 5 成畢業生的使用率,但諸如雇主只留下 email 聯絡方式、投了履歷卻杳無音訊,都會讓求職者在使用服務時受挫。「這個時候就更需要機率矩陣來做排序了!」呂承諭強調,當招募者資訊不完整,或招募者刊登一個職缺過久沒有更新,事實上都代表著不同的用人訊號。「如果一個招募者一天到 104 好幾次,每次甚至搜尋或瀏覽很多履歷,我們會知道他很心急想要找到工作夥伴!」他解釋,但反過來說,如果他只留下 email ,或是刊登一個職缺很久都沒有找到人,但也不調整或下架,這很有可能是一個假職缺,或只是保留一個可能的彈性窗口,表示企業並不急著要找人。「這時候如果求職者在瀏覽清單,我們就可以給予不同的權重來秀出這些資訊。」呂承諭說。但事實上,這個權重的資訊必須下得非常小心。
也因此, 104 在測試每個數據應用,都是抽選非常小部分的使用者做小流量的測試,如果這些使用者軌跡符合當初設計的旅程,才有機會擴大應用。如果不是,就需要馬上做數據修正。經歷過求職階段的人都能輕鬆明白,遇見一份好職缺往往需要靠一點機運。在 1993 年中年失業後的楊基寬,觀察到當時社會找工作的管道有限,因此成立 104 人力銀行,期許「104 不只是幫求職者找一份工作,更是要幫助他人找到人生方向」。呂承諭發願,要用數據讓求職者更即時遇見好機緣!