iT邦幫忙

2021 iThome 鐵人賽

DAY 15
0
AI & Data

資料產品開發與專案管理系列 第 15

[Day 15] 資料產品生命週期管理-預測模型

儘管都是模型,但預測模型目的在於預測未來,所以開發方式也會和描述型模型有所差異。

Initiation

起始階段要確認的事情跟之前差不多。

商業意圖是否明確:商業意圖不是指明確的需求,而是想利用這個預測模型做什麼。例如「想預測使用者會不會點擊」,這只能算是需求;「想透過提高使用者點擊率提高使用者觀看數」這樣才是比較完整的商業意圖。因為使用者可能會提出無法滿足商業意圖的需求,這時候做了也是白做,所以最重要的事情就是確認商業意圖。

需求:不管預測人數、預測點擊、預測營收都是單純的預測目標。如果商業意圖還不明確的話,就還需要在回到上一步多著墨,至少要需要變成一個比較明確方向的問題,才有辦法往下走。

資料來源是否足夠:這關乎到「能不能回答問題」,那如何判斷需求可否被預測?很多人(特別是老闆)會覺得模型無所不能,什麼都可以預測。儘管現在預測模型種類繁多,但標準很簡單 - 「有標注的資料是否夠多?」現在大多數的預測模型都是需要 ground true(亦即標準答案),來做為訓練資料,如果一個問題手上有的標注資料不夠、或是這個問題根本無法很好的被標注,那就表示這個問題做起來風險很高(或做不出來)。

Design

預測模型在設計上就有很多選擇了,最主要就是要區別到底要預測什麼

  • 預測數值
  • 預測類別
    • 雙類別
    • 三或三以上個類別

接著就是照一些小細節去選擇對應的模型。
https://ithelp.ithome.com.tw/upload/images/20210916/20141140qVmxbGznMh.png
(https://bigdataanalyticsnews.com/machine-learning-with-python-a-revolution-in-the-field-of-data-analytics/)

如果是 Deep Learning 的話,也是根據需求來選擇相應的結構,像是

影片/影像辨識:走 CNN 路線
聲音/文字辨識:走 LSTM 路線
對抗訓練:走 GAN 路線

https://ithelp.ithome.com.tw/upload/images/20210916/20141140GPDpgfwm5C.png
(https://www.techwebspace.com/9-ways-to-become-the-macgyver-of-deep-learning/)

總之細節很多,就有待各位大大來補充。

Implement

在開發預測模型上,步驟就比較複雜。
https://ithelp.ithome.com.tw/upload/images/20210916/20141140yfmevOaoO1.png

在做預測模型時,通常會先使用過去的資料,接著將資料分為 Traning Set(1a) 和 Testing Set(1b)。

接著會使用 Training Set 代入演算法來訓練模型(2a)。接著我們會用訓練好的模型來做資料驗證(有些套件會將Training Dataset 分成 Training Set 和 Evaluation Set(3b)),透過這樣的過程來優化演算法的參數。並透過之前分出去的 Testing Set 來驗證不同演算法的優劣。

最後我們會選出最好的模型進入正式環境(4,5),並用來預測正式資料。

Deployment

ML 模型部署部分是最近最熱門的題目 - MLOps 值得用一整篇來寫。


上一篇
[Day 14] 資料產品生命週期管理-描述型模型
下一篇
[Day 16] 資料產品生命週期管理-預測模型的部署與管理(MLOps)
系列文
資料產品開發與專案管理30

尚未有邦友留言

立即登入留言