學(xué)貫中西(6):闡述ML分類器的工作流程
1 天字第一號(hào)ML模型:分類器
在上一期里,曾經(jīng)在Excel 畫面的幕后,設(shè)計(jì)了一個(gè)分類器(Classifier)模型,將各< 詩(shī)句> 歸類到各自所屬的< 作品>。此時(shí),把一個(gè)作品名稱(如靜夜思),當(dāng)作一個(gè)類(Class)。于是,這種ML 模型,就通稱為:分類器。在ML(機(jī)器學(xué)習(xí))領(lǐng)域中,分類器就是天字第1 號(hào)模型。
在本專欄的前面幾期里,曾經(jīng)介紹過分類器的幕后實(shí)踐技術(shù)。在本期里,就來(lái)把去年介紹過的技術(shù),與華夏的藝術(shù)、文化創(chuàng)作,連結(jié)起來(lái),讓您能夠貫通ML 的知識(shí)體系及其實(shí)現(xiàn)技術(shù),請(qǐng)您回憶上一期的范例(見圖1)。
圖1 基本范例示意
這是ML 模型的基本技能,它透過機(jī)器學(xué)習(xí)而記住了< 詩(shī)句> 與< 作品名稱> 之間的關(guān)系,也就是分類關(guān)系。于是我們就可以把某個(gè)< 詩(shī)句> 輸入給這模型,由它來(lái)預(yù)測(cè)(推論)出其所屬的< 作品名稱>(參見圖2)。
圖2 典型的ML分類器模型
這是典型的ML 分類器模型。我們可以建立更多這樣的模型,來(lái)表達(dá)各式各樣的事物之間的復(fù)雜關(guān)系。
2 分類器的學(xué)習(xí)流程
剛才已經(jīng)說明了,分類器是一種AI 模型。顧名思義,它經(jīng)過機(jī)器學(xué)習(xí),就能在人們的指引下,認(rèn)識(shí)不同種類的圖像,或其他事物。換句話說,它就具有分辨出不同種類事物的智慧能力?,F(xiàn)在來(lái)舉例說明其學(xué)習(xí)流程。
2.1 收集數(shù)據(jù)
于此,敘述分類器的工作(學(xué)習(xí))流程。例如,它就具有分辨出八大山人與畢加索,兩種不同畫作的風(fēng)格。首先,收集兩個(gè)類的畫作圖像,如圖3。
圖3 畫作圖像示意
這些圖像是用來(lái)訓(xùn)練一個(gè)分類器模型。訓(xùn)練完畢之后,它就具有分辨出八大山人與畢加索,兩種不同畫作的風(fēng)格。由于分類器是屬于監(jiān)督式學(xué)習(xí)(Supervised learning),我們先進(jìn)行分類,并且對(duì)各類來(lái)貼上標(biāo)簽(Label)。貼上類的標(biāo)簽:[1]代表<Picasso> 類,而以[0]代表< 八大山人> 類(見圖4)。
分類器是屬于監(jiān)督式學(xué)習(xí)(Supervised learning),我們先進(jìn)行分類,并且對(duì)各類來(lái)貼上標(biāo)簽(Label)。貼上類的標(biāo)簽:[1] 代表<Picasso> 類,而以[0]代表< 八大山人> 類。接下來(lái),就來(lái)定義這個(gè)分類器的架構(gòu),包括它的各項(xiàng)參數(shù)來(lái)配合這些畫作圖像的大?。炊嗌傧袼兀?。
圖4 類標(biāo)簽及分類器
現(xiàn)在,訓(xùn)練數(shù)據(jù)(Training data)準(zhǔn)備好了,模型也定義好了,就可以展開< 機(jī)器學(xué)習(xí)> 了;也就是,開始訓(xùn)練這個(gè)分類器模型。
2.2 展開機(jī)器學(xué)習(xí)
● 步驟1:拿第1 筆數(shù)據(jù)來(lái)訓(xùn)練
首先從Picasso 類取出一筆數(shù)據(jù)(即一張畫作),以X 表示之,輸入給分類器。同時(shí),把Picasso 類的標(biāo)簽,提供給分類器,做為目標(biāo)值(Target),簡(jiǎn)稱:T 值(見圖5)。
圖5 目標(biāo)值設(shè)定
此時(shí),分類器模型就進(jìn)行推論(Inference):從X計(jì)算出Z。并且計(jì)算出Z 與T 的誤差。也就是:T–Z =Error(見圖6)。
圖6 推論產(chǎn)生
圖7 分類器參數(shù)更新
然后,依據(jù)這項(xiàng)誤差值(即Error)來(lái)更新這分類器的參數(shù),如圖7 所示。于是,更新了分類器的參數(shù),讓分類器的智慧提升了。此時(shí)已經(jīng)輸入第1 筆數(shù)據(jù),并對(duì)分類器進(jìn)行1 次迭代(Iteration)的訓(xùn)練了。
● 步驟2:拿第2 筆數(shù)據(jù)來(lái)訓(xùn)練
現(xiàn)在從八大山人類取出一筆數(shù)據(jù)(即一張畫作),以X表示之,輸入給分類器。同時(shí),把八大山人類的標(biāo)簽,提供給分類器,做為目標(biāo)值(T)。此時(shí),分類器模型就進(jìn)行推論:從X 計(jì)算出Z,如圖8 所示。
圖8 推論Z的產(chǎn)生過程
接下來(lái),就計(jì)算出Z 與T 的誤差。也就是:T–Z =Error。然后,依據(jù)這項(xiàng)誤差值(即Error)來(lái)更新這分類器的參數(shù)(見圖9)。
圖9 更新后的分類器參數(shù)
更新了分類器的參數(shù),讓分類器的智慧提升了。此時(shí)已經(jīng)輸入2 筆數(shù)據(jù),并對(duì)分類器進(jìn)行2 次迭代的訓(xùn)練了。
● 步驟3:繼續(xù)拿下一筆數(shù)據(jù)來(lái)訓(xùn)練
這是重復(fù)< 步驟1> 的學(xué)習(xí)流程,從Picasso 類取出另一筆數(shù)據(jù)(即另一張畫作),以X 表示之,輸入給分類器。同時(shí),把Picasso 類的標(biāo)簽,提供給分類器,做為目標(biāo)值。此時(shí),分類器模型就進(jìn)行推論,計(jì)算出Z和誤差值(Error)。最后,依據(jù)這項(xiàng)誤差值來(lái)更新這分類器的參數(shù)。更新了分類器的參數(shù),讓分類器的智慧提升了。此時(shí)已經(jīng)輸入3 筆數(shù)據(jù),并對(duì)分類器進(jìn)行3 次迭代的訓(xùn)練了。
● 步驟4:繼續(xù)拿下一筆數(shù)據(jù)來(lái)訓(xùn)練
這是重復(fù)< 步驟2> 的工作流程,但是從八大山人類別取出另一筆數(shù)據(jù)(即另一張畫作),來(lái)輸入給分類器。同時(shí),把八大山人類的標(biāo)簽,提供給分類器,做為目標(biāo)值(T)。此時(shí),分類器模型就進(jìn)行推論,計(jì)算出Z 和誤差值。最后,依據(jù)這項(xiàng)誤差值來(lái)更新這分類器的參數(shù),讓分類器的智慧提升了。此時(shí)已經(jīng)輸入4 筆數(shù)據(jù),并對(duì)分類器進(jìn)行4 次迭代的訓(xùn)練了。
● 步驟5:繼續(xù)重復(fù)循環(huán)下去
然后,重復(fù)循環(huán)下去,直到Error 趨近于0 為止。以上是典型的機(jī)器學(xué)習(xí)流程,其中每1 次迭代都各輸入1 筆數(shù)據(jù)給分類器去進(jìn)行學(xué)習(xí)(也是訓(xùn)練),也更新1 次模型參數(shù)。這樣地重復(fù)循環(huán)下去,就會(huì)逐一地把各筆數(shù)據(jù)(畫作)都輸入給分類器去學(xué)習(xí)了。當(dāng)我們把全部數(shù)據(jù)都輸入給模型去學(xué)習(xí)了,就稱為:學(xué)習(xí)一回合(Epoch)。
如果學(xué)習(xí)了一回合之后,發(fā)現(xiàn)其誤差值(Error)還蠻大的(不接近于0),表示學(xué)習(xí)得還不夠好。于是繼續(xù)重復(fù)下去,也就是進(jìn)行另一回合的學(xué)習(xí),重復(fù)循環(huán)下去,直到Error 趨近于0 為止。一般而言,機(jī)器學(xué)習(xí)都需要進(jìn)行數(shù)千或數(shù)萬(wàn),或更多回合的學(xué)習(xí)(訓(xùn)練)過程,Error 才會(huì)趨近于0。
3 學(xué)習(xí)的效果
于此,使用空間對(duì)應(yīng)(Space-mapping)的觀念來(lái)解釋之。輸入空間(即X 空間)包含全部數(shù)據(jù)(畫作),經(jīng)由推論(計(jì)算)之后,會(huì)對(duì)應(yīng)到輸出空間(即Z 空間)。這種對(duì)應(yīng)過程,就通稱為:模型推論,如圖10 所示。
圖10 模型推論
經(jīng)過數(shù)百或數(shù)千,或更多回合的學(xué)習(xí)之后,這分類器就能把這些畫作,對(duì)應(yīng)(Mapping)到它們各自所屬的類了。
圖11 關(guān)系的建立
一旦機(jī)器學(xué)習(xí)完成,圖11 里的關(guān)系建立起來(lái)了。計(jì)算機(jī)(ML 模型)就觀察畫作的風(fēng)格,而推論出該幅畫作是來(lái)自畢加索或是來(lái)自八大山人了。
4 結(jié)語(yǔ)
前面提到了,分類器是ML 領(lǐng)域的天字第一號(hào)模型。為什么它具有這樣重要的角色呢? 請(qǐng)您仔細(xì)領(lǐng)會(huì)一下圖11 里的X(空間)與Z(空間)的關(guān)系。基于這項(xiàng)關(guān)系,ML 模型就觀察畫作的風(fēng)格(結(jié)果),而推論出該幅畫作是來(lái)自畢加索(原因)或是來(lái)自八大山人了。
于是,X 空間里的事物或其特征,是我們所觀察到的結(jié)< 果>。而Z 空間里所表達(dá)的卻是這些結(jié)果幕后隱藏的原< 因>。一旦能找到眼前(現(xiàn)實(shí))結(jié)果幕后藏的真正的因,我們就能針對(duì)此< 因> 而對(duì)癥下藥,就可以改變眼前的< 果> 了。這稱為:溯因(Abductive reasoning)推理。君不見,許多人類的科學(xué)性創(chuàng)新,大多來(lái)自于這項(xiàng)溯因(又稱果因)推理能力。請(qǐng)您期待本專欄的繼續(xù)解說ML 的更多魅力。
(本文來(lái)源于《電子產(chǎn)品世界》雜志2022年4月期)
評(píng)論