資料科學家如何發現與解決商業問題?四步驟解析實際案例!

越來越多人想要成為資料科學家,卻常常直接跳到資料分析的方法及工具的學習。然而除了硬技能的掌握外,更重要的是擁有分析問題的思維。

為幫助理解資料科學家的職涯與核心能力,9 月份 AMA 活動 ALPHA Camp 邀請到在資料科學領域的學、業界都有扎實經歷的 Angus,透過案例拆解,探討如何用資料科學處理實際的商業問題。

Angus 也將分享他從矽谷 Google 工程師成為獨角獸電商資料科學家的職涯,並解惑入門資料科學的常見問題。

資料科學家在做什麼?Data Scientist 工作內容與3大核心技能

資料科學案例解析:資料科學家如何發現與解決商業問題

資料科學家的工作主要為溝通、分析,提出解決方案,但具體怎麼執行?Angus 拆解實際案例,分享資料科學家一步步分析並解決商業問題的過程。

案例:老闆希望資料科學團隊做 Chatbot,如何反應?

資料科學家發現與解決問題的四步驟:

  1. 溝通需求與目標
  2. 拆解問題,不斷假設驗證
  3. 建立模型
  4. 模型迭代與優化

以下分別說明各步驟內容。

步驟一:溝通需求與目標

Angus 強調,當別人提出需求時,很重要的一點是「先問他到底為什麼要做?」

溝通很重要,如果不了解背後動機,時間花了做出來對方不滿意,那就是兩敗俱傷。所以要先溝通需求,釐清原本的問題是什麼。

如果公司要做 Chatbot,有兩個可能性:

  1. 客服團隊成本太高,那麼 Chatbot 要解決的問題是降低成本
  2. 客服團隊的客服品質不好,那麼 Chatbot 要解決的問題是能提升品質

釐清需求後,要再了解對方的團隊是否有以前的資料可以用,如果沒有,就要從蒐集資料開始。

步驟二:拆解問題,不斷假設驗證

確定有資料後,接下來開始分析,根據目標提出假設。

比如目標是要提高客服品質,那首先要先用資料證明為何客服品質不好,如果沒有資料,就先蒐集資料,比如讓使用者填問卷,先確定這是團隊要解決的問題。

確定客服品質不好後,繼續假設:

  1. 客服品質不好,是因為跟 Chatbot 聊天要聊很多次問題才被解決嗎?如果是,那可能是對話的 Flow 設計有問題
  2. 或是 Chatbot 每次都不太懂使用者在講什麼?如果是,那可能是資料科學的模型精確度不高

若最後確定是第二點,Chatbot 每次都不太懂使用者在講什麼,那麼所謂不懂,是否有資料可以證明它真的不懂?有沒有實際數字可以衡量?

在這一步,需要不斷去拆解問題、提出假設,再用資料去驗證,最後才能找到問題的癥結點。

前兩步驟也是資料科學工作中花最多時間的步驟,溝通跟分析問題大概佔了 70%,剩下 30%  時間才是做模型。

步驟三:建立模型

最後,當團隊取得共識,知道要解決的問題是什麼,有一個完整故事與邏輯證明每個流程是相關的,會開始提解決方案。

解決方案的第一版通常是確定問題的三個月後提出,下一步才是做模型。

如果這個問題是新的,沒解決過的問題,團隊會先做文獻綜述(Literature review),查看其他人的論文做過哪些嘗試,進而去選擇一個較好的方法,避免走錯路浪費時間。

開始建立 AI 模型時,第一步是做基準模型(Baseline Model),基準模型就是找一個方法很簡單但很可靠的方式,去初步驗證資料能不能用、資料品質如何,比如使用 XGBoost、Linear Regression 等。

當基準模型做好後,就不用擔心資料的問題了,接下來就可以專心把模型做好。

步驟四:模型迭代與優化

模型建立好之後,後續就是看需求方有沒有新的需求或方向,或團隊是否有更多時間把模型做得更好,成立長期的專案小組。

至於如何才算結案?

每個資料科學專案其實沒有結案的一天,取決於公司需求與資源,是否將模型從基本程度提升到更精確的水平,這其中可能是從花費三個月到三年的差異。

藉由上述案例分享,Angus 呈現了資料科學家如何分析與解決商業問題。可以看到這四步驟看似簡單明瞭,卻結合了嚴謹的思維與機器學習硬技能,背後歸功於 Angus 在資料科學學術及業界的豐富歷練。

資料取得與清理必備 SQL 職能 :SQL 入門課程熱烈開班中!14 天從語法到真實企業案例

從矽谷軟體工程師到印尼電商資料科學家

Angus 在資料科學領域的學、業界都有扎實經歷。他是台大資工博士,博士研究主要做自然語言處理(NLP),畢業之後先後在台灣、矽谷 Google 擔任軟體工程師,並成為 AI 團隊技術領導,發展 GMail SmartReply 以及 Google Assistant 背後所使用的自然語言理解科技。

Source: Tokopedia

以印尼獨角獸電商 Tokopedia 為例 – 資料科學在電商領域的應用場景

後來 Angus 因家庭因素及對矽谷生活環境的考量,離開矽谷 Google,現為印尼獨角獸電商公司 Tokopedia 的資料科學協理。 Tokopedia 的商業模式類似淘寶,Angus 選擇加入的原因之一,是他認為「電商領域是資料科學很好發揮的地方,因為什麼資料都有。」

Angus 進一步分享資料科學及機器學習,在電商領域有哪些應用場合:

  • 產品搜尋:使用者進到電商網站的第一件事就是搜尋,但問題是使用者跟商家都會亂打字,如果從商品標題去比對會不准,尤其東南亞很多國家有不同方言,因此產品搜尋特別仰賴自然語言處理技術 (NLP)。除了商品相關性之外,也會根據個人化資訊去排序,比如瀏覽紀錄、購買紀錄等。這很有挑戰性,因為常會碰到一個狀況是,比如使用者是男性,前一天來網站買 3C 產品,結果隔天來買女朋友的禮物。因此商品搜尋推薦的演算法要非常即時,當看到使用者行為有變動就要立刻做反應。
  • 圖片辨識:Tokopedia 的目標是希望把整個電商環境變好,商家認真做生意,買家認真買東西。為了讓商家認真做生意,會需要去教導他們。比如商品上架時,會運用圖片辨識,幫商家分析照片合不合格,能不能凸顯商品特色。此外,Tokopedia 也是世界上最大的穆斯林時尚網站,有很多服飾,因此有特別針對這些時尚產品做圖片辨識,把商品特徵認出來,比如衣服是 V 領、條紋等。藉由機器學習的方式把 tag 認出來做篩選,讓使用者來逛網站時能很輕鬆找到商品。
  • 自然語言處理(NLP):NLP 會運用在產品搜尋推薦、理解及分析使用者與商家的互動上。比如使用者會對商品進行評價,除了常見的對「包裝、運送速度、商品品質」的評價分析外,還會做更細緻的分析,針對不同商品類別,去辨識特有的主題,例如討論手機,就會講電池壽命,討論相機就會講畫素、顏色等,會把這些主題都辨識出來,一方面幫助買家理解,另一方面也幫助賣家得知大家對你的服務最不滿意的地方,幫助賣家的服務品質變好。
  • 詐騙偵測:詐騙偵測是很難做的一件事,比如 Tokopedia 在做一些活動時,會給參加的商家現金返還,而有些商家為了拿現金返還,會把商品單價提高,或自己註冊兩個帳號,自己賣給自己。這件事不只損害到 Tokopedia 的利益,更嚴重的是已經傷害到其他使用者的權益了,因此會須要做詐騙偵測,去保護整個環境、商家跟使用者。
  • 商品推薦:商品推薦機制會運用很多不同演算法,比如瀏覽歷史、當下瀏覽紀錄等。商品推薦機制也是使用者體驗很關鍵的一環,能夠幫助使用者找到一個商品後,不用再做其他搜尋,能一直看下去都是他想找的商品。

資料科學家需要具備的核心能力

想成為資料科學家,常見入門背景有哪些?非相關科系,該從哪個方面切入學習?資料科學家的核心能力為何?Angus 詳盡解答:

常見入門資料科學領域的三大背景

圖片來源:How to take on the Data Science career path right after college?

Angus 引用 Data Science Society 文章提到的資料科學職涯路徑圖,說明最常入門資料科學的三大背景為:資訊科學、數學與統計、商業知識,因為資料科學家的工作會運用到溝通、分析與建立模型。

他進一步指出,三者中最重要的為「數學與統計能力」。資料科學需要去摸索並解決問題,而怎麼做決定就需要統計能力。當看到一個問題,是否能用資料證明,它跟什麼是有相關的,或是做 A/B 測試時,知道要把 A/B 測試跑在多少人身上,能得到準確的估計結果。擁有數學與統計能力,才能真正做到資料導向的決策。

「我看過資工不好的人,進來做資料科學家很成功,也看過沒有 Business Know How 的人,進來學很快後來也很成功。但我沒看過數學統計不好,可以在資料科學這行做很久也做得不錯的人。」

Angus 表示,「所謂數學與統計能力,不用真的很厲害到數學家那種程度,但至少要有底子,例如不一定要會算信賴區間,但要知道這個概念是什麼。」

至於資訊科學或資工能力,主要在建立模型時會用到。Angus 建議想進入資料科學領域的工程師,可以選擇學 Python,因為 Python 有較多的網路資源。

上述背景知識有助於入門資料科學領域,而若想成為優秀的資料科學家,Angus 提煉出資料科學家應具備的三大核心能力:

核心能力一:機器學習

機器學習是目前必備的硬技能,若沒有機器學習這項技能,不太可能做出解決方案,就算使用套件,也會需要懂機器學習,才能將資料處理的效能做到可以用。

核心能力二:批判性思考

批判性思考主要是辨識及分析問題的能力。當看到一個現象時,怎麼做假設並驗證,是否能問出有用的問題,最後解決掉。

比如很多時候模型的整體表現不錯,但一上線發現有點問題,這時候批判性思考很重要,要去找出什麼地方有錯,通常會去參考別人做錯的案例,但問題在於線上的資料,它沒有正確答案,會需要去思考各式各樣的環節,到底哪裡可能出錯。

核心能力三:溝通能力

資料科學家需具備良好的溝通能力,能夠用淺白的方式和他人清楚解釋及說明。

對於很多不懂資料科學的人,資料科學就像是一個黑盒子,很多時候對方在和資料科學家談話時,他其實是不信任的,因為他不知道資料科學家在做什麼。這時候溝通就很重要,要把你在做的事情,及為什麼這樣做,用白話的方式解釋清楚。

資料科學常見問答Q&A

針對活動參加者對資料科學的相關提問,Angus 一一解惑:

想跨入資料科學領域,可以進行什麼樣的專案?

現今職場對資料科學有很大的需求,想要踏入資料科學領域是比較容易的。我認為做過資料科學專案是基本,更重要的是背後的思考過程。比如在面試時,我會深入去問面試者,在這個專案中覺得最有挑戰性的部分為何?又是如何克服的?

現在資料科學的工具跟套件越來越厲害,但要能去深入思考、擁有資料科學的思維,而非單純使用工具,變成套件玩家。

應徵資料科學職位時,如何辨識一家公司是否重視資料?

重視資料的公司有一個共通點:做資料導向的決策,每個人聊天都喜歡提到數據。

面試時可以問對方問題,比如「你們怎麼決定一個功能要不要繼續做?」如果對方的決策過程沒有提到數據,通常進去做資料科學也不會有太大的成長。

資深的資料科學家,與新人的最大差別為何?

如何判斷一個資料科學家可以從 Junior 變成 Senior,我認為最大的差別在於「影響力」:

  • Junior 資料科學家:剛入行,最大的影響力就是自己,該做的是努力學習充實自我
  • Senior 資料科學家:成為領域專家,開始影響別人,會發現有很多 Junior 來問你
  • 更 Senior 的資料科學家:當所有人都開始問你,沒時間寫程式,可以幫團隊回答問題、跟需求方對話,影響力擴及團隊以外、產品、公司及甚至全世界

資料分析師、資料科學家、資料工程師,有何差異?

三者的差異簡單來講可分為:

  • 資料分析師:負責找到問題,是第一步
  • 資料科學家:在不知道解決方法的情況下,負責找出一個解法,在過程中也會用到分析
  • 資料工程師:在所有已知的解決方法中,挑選一個適合作法,每天都在做取捨

其中資料科學家,與資料工程師這兩個職位,通常在國外大公司如 Facebook、Google 通常沒有明確的區分,重點是聘你進去後能夠幫公司解決問題,如果本身有相關技能最好,沒有技能,有資源的公司也會讓你去學。

如果是比較小、資源不太充足的公司,就會很明確地說要什麼樣的人,因為他們已經有既有的問題在等你了。

資料科學家如何提升洞察能力?

洞察能力是可以訓練的,跟厲害的人相處久了,會慢慢去學習他看待事情的方式,發現他很愛去挑戰一些既有的認知。比如聽商業簡報,當有人講說這個月因為某個關係,數字就上升了,但厲害的人可能就會有疑問,不認同為什麼數字就會上升。

洞察能力其實可以靠經驗,但如果要累積經驗,建議不要一直換領域,而是去找一個好的環境,去觀察老闆跟同事。

延伸閱讀:資料科學五大 Q&A:如何成為資料科學家?資料科學產業的未來?

結語

如何運用資料科學發現與解決商業問題?從 Angus 的分享中可得知,資料科學家的工作,很高的佔比在於與人溝通需求、拆解及分析問題,其中會運用到溝通能力及批判性思考,並藉由數理與統計知識進行決策,最後,才是使用機器學習與技術能力建立模型,提出解決方案。

因此,想進入資料科學的領域,成為優秀的資料科學家,除了硬技能的掌握外,更需要擁有分析與拆解問題的思維,才能釐清問題的癥結點,提出最有效的解決方案。