1.1 課程介紹【斯坦福21秋季:實(shí)用機(jī)器學(xué)習(xí)中文版】

# ?斯坦福21年秋季實(shí)用機(jī)器學(xué)習(xí)課程第1課
這是系列課程的第1個(gè)講座,
是課程的大致介紹
首先介紹了機(jī)器學(xué)習(xí)作為技術(shù)本身,
它的大致構(gòu)成以及所面臨的一些挑戰(zhàn).
然后講述學(xué)習(xí)機(jī)器學(xué)習(xí),你會(huì)變成什么樣的角色.
最后講述了本課程中會(huì)涉及到哪些主題.
## 作為技術(shù)本身的機(jī)器學(xué)習(xí)
這里使用的案例是房?jī)r(jià)預(yù)測(cè).

### 工業(yè)界中應(yīng)用機(jī)器學(xué)習(xí)的基本流程
機(jī)器學(xué)習(xí)的應(yīng)用是一個(gè)循環(huán)過(guò)程.
他從問(wèn)題表述開(kāi)始到收集數(shù)據(jù)建立模型并將模型上線.
上線之后要對(duì)模型不停的監(jiān)測(cè)并重復(fù)更新模型. ?

1. Problem formulation
首先是將實(shí)際問(wèn)題換一種描述方式,
表述成機(jī)器學(xué)習(xí)可以解答的數(shù)學(xué)問(wèn)題. ?(Problem formulation)
比如房?jī)r(jià)預(yù)測(cè)就是一個(gè)回歸(regression)問(wèn)題.
2. Data
然后是數(shù)據(jù) (Data )的收集與整理
3. Train Models
之后在這些數(shù)據(jù)基礎(chǔ)上訓(xùn)練并調(diào)整模型(Train models).
實(shí)際操作中會(huì)從一個(gè)相對(duì)簡(jiǎn)單的模型開(kāi)始.
4. Deploy models
? ?
模型完成之后就開(kāi)始部署上線( ?Deploy models)
5. Monitor
模型并不能一勞永逸, 你需要不停的監(jiān)控 (Monitor)
比如查看模型是否符合實(shí)際情況?
是否需要增加數(shù)據(jù)?
或者數(shù)據(jù)是否已經(jīng)發(fā)生了重大的變化,需要調(diào)整模型?
在監(jiān)測(cè)過(guò)程中, 從收集數(shù)據(jù)開(kāi)始的循環(huán)可能要重復(fù)多次
### 機(jī)器學(xué)習(xí)的挑戰(zhàn)
這個(gè)模型流程中遇到的挑戰(zhàn)

#### Formulate problem
(Formulate problem)問(wèn)題方面: 很多問(wèn)題用機(jī)器學(xué)習(xí)來(lái)處理會(huì)很難.
要將實(shí)際問(wèn)題轉(zhuǎn)化, 方便機(jī)器學(xué)習(xí)處理.
就是要把很多的事情用數(shù)字表示出來(lái).
這往往很難.
因?yàn)橛脭?shù)字表述出來(lái),意味著測(cè)量.
而測(cè)量的前提就是有一個(gè)客觀的量,并且它能被量化.
但很多問(wèn)題我們都習(xí)慣用身體, 用神經(jīng)系統(tǒng)去感受它. 而不是用儀器測(cè)量.
比如說(shuō)疊被子, 我們能感受到自己手部的動(dòng)作,
我知道,我在伸手,我在握拳.
但你如果需要描述手部動(dòng)作的話, 就會(huì)變得非常繁瑣
#### 數(shù)據(jù) Data
這個(gè)世界上數(shù)據(jù)很多, 但好數(shù)據(jù)不多.
另外提取數(shù)據(jù)的過(guò)程, 會(huì)涉及隱私問(wèn)題.
你想更全面的了解一個(gè)人用戶的信息,不可避免的會(huì)侵犯他的隱私.
#### Model
從機(jī)器學(xué)習(xí)發(fā)展至今, 模型變得越來(lái)越貴越來(lái)越重
同時(shí)他們對(duì)數(shù)據(jù)量的需求也越來(lái)越大.
尤其是大家開(kāi)始熱衷于深度學(xué)習(xí)之后.

#### Deploy
你可能發(fā)現(xiàn)自己的模型需要的GPU太多
或者說(shuō)你的模型運(yùn)行了以后,無(wú)法達(dá)到實(shí)時(shí)性要求
#### Monitor
監(jiān)控模型是一個(gè)長(zhǎng)期過(guò)程, 要時(shí)刻調(diào)整模型
因?yàn)閿?shù)據(jù)會(huì)發(fā)生變化. 比如你的用戶群體會(huì)發(fā)生變化,
節(jié)假日的時(shí)候,你的用戶群體行為也會(huì)變
另一方面用算法決定事情,會(huì)帶來(lái)公平性的討論.
因?yàn)樗惴ㄒ蕾囉跀?shù)據(jù)來(lái)建立.而數(shù)據(jù)可能存在偏向性.
這就導(dǎo)致了模型會(huì)在不同人群中效果不一樣.
典型的例子就是一些臉部特效.
常用的人臉照片訓(xùn)練集中,白人比較多, 所以這些特效對(duì)黑人處理起來(lái)就會(huì)出一些奇奇怪怪的問(wèn)題
## 工業(yè)界中機(jī)器學(xué)習(xí)與人
### 學(xué)了機(jī)器學(xué)習(xí), 可以勝任哪些崗位?
機(jī)器學(xué)習(xí)的角色定位:

領(lǐng)域?qū)<? 知曉產(chǎn)品的需求,知道模型的價(jià)值, 以及在哪用最好.
數(shù)據(jù)科學(xué)家: ?可以理解為全棧程序員, 需要負(fù)責(zé)從處理數(shù)據(jù)到模型上線的全部過(guò)程
機(jī)器學(xué)習(xí)專家: 專注于模型的改進(jìn)
軟件開(kāi)發(fā)工程師(SDE): 就是碼農(nóng), 他們需要在軟件代碼運(yùn)行維護(hù)方面出力.
這些角色之間可以轉(zhuǎn)化,大致的發(fā)展路線如下

領(lǐng)域?qū)<一蛘哕浖_(kāi)發(fā)工程師可以慢慢的發(fā)展,成為數(shù)據(jù)科學(xué)家.
數(shù)據(jù)科學(xué)家也可以進(jìn)一步提升自己的技能,變成機(jī)器學(xué)習(xí)這一領(lǐng)域的專家
## 我們課程中會(huì)學(xué)習(xí)的一些主題
### 課程的前提要求與特點(diǎn)
?
這門課需要的基礎(chǔ)是一些基本的統(tǒng)計(jì)知識(shí),一些基礎(chǔ)的編程
數(shù)據(jù)科學(xué)家把時(shí)間花在哪兒?時(shí)間的大頭花在數(shù)據(jù)處理上.

所以本門課程里面也會(huì)花很長(zhǎng)的時(shí)間來(lái)講述如何處理數(shù)據(jù),而并不是僅僅關(guān)注于模型的建立
### 課程的主題:
本課程會(huì)側(cè)重于一些經(jīng)典的機(jī)器學(xué)習(xí)課教科書(shū)上不會(huì)提及,但在工業(yè)界中會(huì)涉及到的內(nèi)容

#### 數(shù)據(jù)
需要學(xué)會(huì)如何處理實(shí)際的數(shù)據(jù).
也就是說(shuō)要應(yīng)對(duì)數(shù)據(jù)中的各種偏倚,
并且 真實(shí)數(shù)據(jù)往往沒(méi)法做到獨(dú)立同分布(iid)
#### 訓(xùn)練
除了一般的模型建立外.
課程中還涉及
模型驗(yàn)證
融合
超參數(shù)
遷移學(xué)習(xí)
多模態(tài) : 你的數(shù)據(jù)涉及多種形態(tài), 文本時(shí)間戳等等,你需要把這些不同形態(tài)的數(shù)據(jù)融合成一個(gè)整體的模型
等主題
#### 部署
本課程除了講述模型如何部署如何提升性能之外,
還會(huì)涉及
模型的蒸餾(大模型變小)
#### 監(jiān)測(cè)
會(huì)講解模型的
公平性
可解釋性
## 小結(jié)

這門課講解工業(yè)界的機(jī)器學(xué)習(xí),
關(guān)注機(jī)器學(xué)習(xí)如何在工業(yè)界落實(shí)
你將學(xué)會(huì)作為數(shù)據(jù)科學(xué)家在工業(yè)界中使用機(jī)器學(xué)習(xí)各個(gè)步驟所需的知識(shí),
往往經(jīng)典的教科書(shū)并不會(huì)提及這些知識(shí)或者細(xì)節(jié).