轉(zhuǎn)型AI產(chǎn)品經(jīng)理需要掌握的硬知識(shí)二:AI常見(jiàn)概念和算法梳理

5 評(píng)論 17165 瀏覽 147 收藏 33 分鐘

本文將介紹AI產(chǎn)品經(jīng)理需要理解的一些概念,常見(jiàn)AI算法,機(jī)器學(xué)習(xí)的工作方式和三大流派,使用Tensorflow實(shí)現(xiàn)手寫數(shù)字識(shí)別,幫助大家理解技術(shù)實(shí)現(xiàn)流程和一些AI技術(shù)名詞,更有助于同AI科學(xué)家或AI工程師的溝通。

上一篇文章介紹AI產(chǎn)品經(jīng)理能力模型,人工智能的發(fā)展歷史,人工智能常見(jiàn)概念的結(jié)構(gòu)梳理,也簡(jiǎn)要做了BAT人工智能的優(yōu)勢(shì)分析,感興趣的朋友可以點(diǎn)擊鏈接查看上文:《轉(zhuǎn)型AI產(chǎn)品經(jīng)理需要掌握的硬知識(shí)一:AI產(chǎn)品能力框架和看待AI的幾個(gè)視角?》

本文將繼續(xù)介紹AI產(chǎn)品經(jīng)理需要理解的一些概念,常見(jiàn)AI算法,機(jī)器學(xué)習(xí)的工作方式和三大流派,使用Tensorflow實(shí)現(xiàn)手寫數(shù)字識(shí)別,幫助大家理解技術(shù)實(shí)現(xiàn)流程和一些AI技術(shù)名詞,更有助于同AI科學(xué)家或AI工程師的溝通。

一、常用AI技術(shù)概念

提到人工智能,大家應(yīng)該都聽說(shuō)過(guò)這樣幾個(gè)概念:人工智能,機(jī)器學(xué)習(xí),深度學(xué)習(xí),模式識(shí)別,知識(shí)圖譜,卷積神經(jīng)網(wǎng)絡(luò),遞歸神經(jīng)網(wǎng)絡(luò),以及與人工智能直接相關(guān)的概念,如云計(jì)算,數(shù)據(jù)挖掘等,這些概念之間是什么關(guān)系呢?筆者找到了一張這些概念的關(guān)系圖,可以將上述概念串在一起,更易理解,如下圖所示:

1、人工智能>機(jī)器學(xué)習(xí)>深度學(xué)習(xí)

人工智能(Artificial Intelligence):英文縮寫為AI。它是研究、開發(fā)用于模擬、延伸和擴(kuò)展人的智能的理論、方法、技術(shù)及應(yīng)用系統(tǒng)的一門新的技術(shù)科學(xué)。人工智能是計(jì)算機(jī)科學(xué)的一個(gè)分支,它企圖了解智能的實(shí)質(zhì),并生產(chǎn)出一種新的能以人類智能相似的方式做出反應(yīng)的智能機(jī)器,該領(lǐng)域的研究包括機(jī)器人、語(yǔ)言識(shí)別、圖像識(shí)別、自然語(yǔ)言處理和專家系統(tǒng)等。

機(jī)器學(xué)習(xí)(Machine Learning):機(jī)器學(xué)習(xí)是人工智能領(lǐng)域的一部分,并且和知識(shí)發(fā)現(xiàn)與數(shù)據(jù)挖掘有所交集。機(jī)器學(xué)習(xí)還有下面幾種定義: “機(jī)器學(xué)習(xí)是一門人工智能的科學(xué),該領(lǐng)域的主要研究對(duì)象是人工智能,特別是如何在經(jīng)驗(yàn)學(xué)習(xí)中改善具體算法的性能”。

“機(jī)器學(xué)習(xí)的應(yīng)用已遍及人工智能的各個(gè)分支,如專家系統(tǒng)、自動(dòng)推理、自然語(yǔ)言理解、模式識(shí)別、計(jì)算機(jī)視覺(jué)、智能機(jī)器人等領(lǐng)域。機(jī)器學(xué)習(xí)的研究是根據(jù)生理學(xué)、認(rèn)知科學(xué)等對(duì)人類學(xué)習(xí)機(jī)理的了解,建立人類學(xué)習(xí)過(guò)程的計(jì)算模型或認(rèn)識(shí)模型,發(fā)展各種學(xué)習(xí)理論和學(xué)習(xí)方法,研究通用的學(xué)習(xí)算法并進(jìn)行理論上的分析,建立面向任務(wù)的具有特定應(yīng)用的學(xué)習(xí)系統(tǒng)。

深度學(xué)習(xí)(Deep Learning):深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究,是一種含多隱層的多層感知器。深度學(xué)習(xí)通過(guò)組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。深度機(jī)器學(xué)習(xí)方法也有監(jiān)督學(xué)習(xí)與無(wú)監(jiān)督學(xué)習(xí)之分。

不同的學(xué)習(xí)框架下建立的學(xué)習(xí)模型很是不同.例如,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural networks,簡(jiǎn)稱CNNs)就是一種深度的監(jiān)督學(xué)習(xí)下的機(jī)器學(xué)習(xí)模型,而深度置信網(wǎng)(Deep Belief Nets,簡(jiǎn)稱DBNs)就是一種無(wú)監(jiān)督學(xué)習(xí)下的機(jī)器學(xué)習(xí)模型。

2、神經(jīng)計(jì)算>人工神經(jīng)網(wǎng)絡(luò)>深度學(xué)習(xí)>卷積神經(jīng)網(wǎng)絡(luò)/遞歸神經(jīng)網(wǎng)絡(luò)

神經(jīng)計(jì)算科學(xué)是使用數(shù)學(xué)分析和計(jì)算機(jī)模擬的方法在不同水平上對(duì)神經(jīng)系統(tǒng)進(jìn)行模擬和研究: 從神經(jīng)元的真實(shí)生物物理模型,它們的動(dòng)態(tài)交互關(guān)系以及神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí), 到腦的組織和神經(jīng)類型計(jì)算的量化理論等,從計(jì)算角度理解腦,研究非程序的、 適應(yīng)性的、大腦風(fēng)格的信息處理的本質(zhì)和能力,探索新型的信息處理機(jī)理和途徑。

延伸閱讀:計(jì)算神經(jīng)科學(xué)

人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,即ANN ),是20世紀(jì)80 年代以來(lái)人工智能領(lǐng)域興起的研究熱點(diǎn)。它從信息處理角度對(duì)人腦神經(jīng)元網(wǎng)絡(luò)進(jìn)行抽象, 建立某種簡(jiǎn)單模型,按不同的連接方式組成不同的網(wǎng)絡(luò)。神經(jīng)網(wǎng)絡(luò)是一種運(yùn)算模型,由大量的節(jié)點(diǎn)(或稱神經(jīng)元)之間相互聯(lián)接構(gòu)成。每個(gè)節(jié)點(diǎn)代表一種特定的輸出函數(shù),稱為激勵(lì)函數(shù)(activation function)。

每?jī)蓚€(gè)節(jié)點(diǎn)間的連接都代表一個(gè)對(duì)于通過(guò)該連接信號(hào)的加權(quán)值,稱之為權(quán)重,這相當(dāng)于人工神經(jīng)網(wǎng)絡(luò)的記憶。網(wǎng)絡(luò)的輸出則依網(wǎng)絡(luò)的連接方式,權(quán)重值和激勵(lì)函數(shù)的不同而不同。而網(wǎng)絡(luò)自身通常都是對(duì)自然界某種算法或者函數(shù)的逼近,也可能是對(duì)一種邏輯策略的表達(dá)。

延伸閱讀?神經(jīng)網(wǎng)絡(luò)的簡(jiǎn)化理解

深度學(xué)習(xí)的概念見(jiàn)上文。

卷積神經(jīng)網(wǎng)絡(luò)和遞歸神經(jīng)網(wǎng)絡(luò)下文算法中詳細(xì)介紹。

3、模式識(shí)別、知識(shí)圖譜和專家系統(tǒng)

模式識(shí)別(Pattern Recognition)是指對(duì)表征事物或現(xiàn)象的各種形式的(數(shù)值的、文字的和邏輯關(guān)系的)信息進(jìn)行處理和分析,以對(duì)事物或現(xiàn)象進(jìn)行描述、辨認(rèn)、分類和解釋的過(guò)程,是信息科學(xué)和人工智能的重要組成部分。模式識(shí)別又常稱作模式分類,從處理問(wèn)題的性質(zhì)和解決問(wèn)題的方法等角度,模式識(shí)別分為有監(jiān)督的分類(Supervised Classification)和無(wú)監(jiān)督的分類(Unsupervised Classification)兩種。

我們所指的模式識(shí)別主要是對(duì)語(yǔ)音波形、地震波、心電圖、腦電圖、圖片、照片、文字、符號(hào)、生物傳感器等對(duì)象的具體模式進(jìn)行辨識(shí)和分類。模式識(shí)別研究主要集中在兩方面,一是研究生物體(包括人)是如何感知對(duì)象的,屬于認(rèn)識(shí)科學(xué)的范疇,二是在給定的任務(wù)下,如何用計(jì)算機(jī)實(shí)現(xiàn)模式識(shí)別的理論和方法。

應(yīng)用計(jì)算機(jī)對(duì)一組事件或過(guò)程進(jìn)行辨識(shí)和分類,所識(shí)別的事件或過(guò)程可以是文字、聲音、圖像等具體對(duì)象,也可以是狀態(tài)、程度等抽象對(duì)象。這些對(duì)象與數(shù)字形式的信息相區(qū)別,稱為模式信息。它與人工智能、圖像處理的研究有交叉關(guān)系。

知識(shí)圖譜本質(zhì)上是語(yǔ)義網(wǎng)絡(luò),是一種基于圖的數(shù)據(jù)結(jié)構(gòu),由節(jié)點(diǎn)(Point)和邊(Edge)組成。在知識(shí)圖譜里,每個(gè)節(jié)點(diǎn)表示現(xiàn)實(shí)世界中存在的“實(shí)體”,每條邊為實(shí)體與實(shí)體之間的“關(guān)系”。知識(shí)圖譜是關(guān)系的最有效的表示方式。通俗地講,知識(shí)圖譜就是把所有不同種類的信息連接在一起而得到的一個(gè)關(guān)系網(wǎng)絡(luò)。

構(gòu)建知識(shí)圖譜的重點(diǎn)在于語(yǔ)義理解、知識(shí)表示、QA、智能對(duì)話和用戶建模。知識(shí)圖譜是一系列結(jié)構(gòu)化數(shù)據(jù)的處理方法,它涉及知識(shí)的提取、 表示、存儲(chǔ)、檢索等諸多技術(shù)。從淵源上講,它是知識(shí)表示與推理、數(shù)據(jù)庫(kù)、信息檢索、自然語(yǔ)言處理等多種技術(shù)發(fā)展的融合。

延伸閱讀?知識(shí)圖譜技術(shù)解剖

專家系統(tǒng)是一個(gè)具有大量的專門知識(shí)與經(jīng)驗(yàn)的程序系統(tǒng),它應(yīng)用人工智能技術(shù)和計(jì)算機(jī)技術(shù),根據(jù)某領(lǐng)域一個(gè)或多個(gè)專家提供的知識(shí)和經(jīng)驗(yàn),進(jìn)行推理和判斷,模擬人類專家的決策過(guò)程,以便解決那些需要人類專家處理的復(fù)雜問(wèn)題。專家系統(tǒng)就是人去學(xué)一個(gè)東西,然后把學(xué)到的知識(shí)理論化,再把這些理論模型化,最后把這個(gè)模型程序化,形成一個(gè)系統(tǒng),就叫專家系統(tǒng)。知識(shí)圖譜可以作為專家系統(tǒng)的一部分存在,提供半自動(dòng)構(gòu)建知識(shí)庫(kù)的方法。

二、常見(jiàn)算法概述

前文中我們提到了深度學(xué)習(xí),既然有深度學(xué)習(xí)就一定有淺度學(xué)習(xí),其區(qū)別體現(xiàn)在隱藏層的數(shù)量上,一般來(lái)說(shuō),淺層學(xué)習(xí)沒(méi)有隱藏層或者只有一層隱藏層,常見(jiàn)算法包括線性回歸、邏輯回歸、隨機(jī)森林、SVM、K-means、RBM、AutoEncoder、PCA、SOM等。深度學(xué)習(xí)通常會(huì)有較多隱藏層,可以表達(dá)復(fù)雜函數(shù),識(shí)別更多復(fù)雜特征。常見(jiàn)算法有CNN卷積神經(jīng)網(wǎng)絡(luò)和RNN遞歸神經(jīng)網(wǎng)絡(luò),而基于RNN衍生出了LSTM和GRU等一系列算法。

下面將介紹學(xué)習(xí)過(guò)程中一些常見(jiàn)的算法分類,AI產(chǎn)品未必掌握具體算法實(shí)現(xiàn)細(xì)節(jié),但是需要掌握一些常見(jiàn)算法概念,它們可以處理什么類型的問(wèn)題,有什么優(yōu)點(diǎn),一般應(yīng)用在哪些領(lǐng)域。

1、決策樹

決策樹根據(jù)數(shù)據(jù)的屬性采用樹狀結(jié)構(gòu)建立決策模型, 用樹形結(jié)構(gòu)對(duì)數(shù)據(jù)進(jìn)行分類,在進(jìn)行逐步應(yīng)答過(guò)程中,典型的決策樹分析會(huì)使用分層變量或決策節(jié)點(diǎn),決策樹模型常常用來(lái)解決分類和回歸問(wèn)題。以服裝購(gòu)買為例,首先判定是否喜歡,不喜歡則不買,喜歡則看價(jià)格,價(jià)格不合適則不買,合適則看是否有合適的尺碼,沒(méi)有合適的尺碼則不買,有則購(gòu)買,基于以上選擇,可以畫出一個(gè)簡(jiǎn)單的樹樁結(jié)構(gòu)。

場(chǎng)景舉例:基于規(guī)則的信用評(píng)估、賽馬結(jié)果預(yù)測(cè)

優(yōu)點(diǎn):擅長(zhǎng)對(duì)人、地點(diǎn)、事物的一系列不同特征、品質(zhì)、特性進(jìn)行評(píng)估

常見(jiàn)相關(guān)算法:分類及回歸樹(Classification And Regression Tree, CART)、ID3(Iterative Dichotomiser 3)、GBDT、C4.5、Chi-squared Automatic Interaction Detection(CHAID)、Decision Stump、隨機(jī)森林(Random Forest)、多元自適應(yīng)回歸樣條(MARS)、梯度推進(jìn)機(jī)(Gradient Boosting Machine, GBM)

隨機(jī)森林(Random forest):隨機(jī)森林算法通過(guò)使用多個(gè)帶有隨機(jī)選取的數(shù)據(jù)子集的樹(tree)改善了決策樹的精確性。

優(yōu)點(diǎn):隨機(jī)森林方法被證明對(duì)大規(guī)模數(shù)據(jù)集和存在大量且有時(shí)不相關(guān)特征的項(xiàng)(item)來(lái)說(shuō)很有用

場(chǎng)景舉例:用戶流失分析、風(fēng)險(xiǎn)評(píng)估

2、回歸算法

回歸算法是試圖采用對(duì)誤差的衡量來(lái)探索變量之間的關(guān)系的一類算法,可以勾畫出因變量與一個(gè)或多個(gè)因變量之間的狀態(tài)關(guān)系??梢岳没貧w算法將垃圾郵件和非垃圾郵件進(jìn)行了區(qū)分。常見(jiàn)算法有最小二乘法(Ordinary Least Square)、線性回歸、邏輯回歸(Logistic Regression)、逐步式回歸(Stepwise Regression)、多元自適應(yīng)回歸樣條(Multivariate Adaptive Regression Splines)、本地散點(diǎn)平滑估計(jì)(Locally Estimated Scatterplot Smoothing)

場(chǎng)景舉例:路面交通流量分析、郵件過(guò)濾

優(yōu)點(diǎn):回歸可用于識(shí)別變量之間的連續(xù)關(guān)系,即便這個(gè)關(guān)系不是非常明顯

3、基于核函數(shù)的學(xué)習(xí)算法

基于核的算法中最著名的莫過(guò)于支持向量機(jī)(SVM)了。 基于核的算法把輸入數(shù)據(jù)映射到一個(gè)高階的向量空間, 在這些高階向量空間里, 有些分類或者回歸問(wèn)題能夠更容易的解決。常見(jiàn)算法有支持向量機(jī)(Support Vector Machine, SVM)、徑向基函數(shù)(Radial Basis Function ,RBF)、線性判別分析(Linear Discriminate Analysis ,LDA)。

延伸閱讀?基于核函數(shù)的學(xué)習(xí)算法

4、基于實(shí)例的算法

常常用來(lái)對(duì)決策問(wèn)題建立模型,這樣的模型常常先選取一批樣本數(shù)據(jù),然后根據(jù)某些近似性把新數(shù)據(jù)與樣本數(shù)據(jù)進(jìn)行比較。通過(guò)這種方式來(lái)尋找最佳的匹配。常見(jiàn)算法有k-Nearest Neighbor(KNN),、學(xué)習(xí)矢量量化(Learning Vector Quantization, LVQ)、自組織映射算法(Self-Organizing Map , SOM)。

延伸閱讀?基于實(shí)例的學(xué)習(xí)

5、神經(jīng)網(wǎng)絡(luò)

神經(jīng)網(wǎng)絡(luò)也是一種分類器。它是由很多個(gè)虛擬的神經(jīng)元組成的一個(gè)網(wǎng)絡(luò),我們可以把一個(gè)神經(jīng)元看做是一個(gè)分類器,那很多個(gè)神經(jīng)元組成的網(wǎng)絡(luò)就能對(duì)樣本進(jìn)行很多次分類。

CNN(Convolutional Neural Networks)卷積神經(jīng)網(wǎng)絡(luò),是一種前饋神經(jīng)網(wǎng)絡(luò),它的人工神經(jīng)元可以響應(yīng)一部分覆蓋范圍內(nèi)的周圍單元,對(duì)于大型圖像處理有出色表現(xiàn)。

優(yōu)點(diǎn):當(dāng)存在非常大型的數(shù)據(jù)集、大量特征和復(fù)雜的分類任務(wù)時(shí),卷積神經(jīng)網(wǎng)絡(luò)是非常有用的

場(chǎng)景舉例:圖像識(shí)別、文本轉(zhuǎn)語(yǔ)音、藥物發(fā)現(xiàn)、照片濾鏡、人臉識(shí)別,無(wú)人汽車等。

RNN(Recurrent Neural NetWorks遞歸神經(jīng)網(wǎng)絡(luò),在任意神經(jīng)網(wǎng)絡(luò)中,每個(gè)神經(jīng)元都通過(guò) 1 個(gè)或多個(gè)隱藏層來(lái)將很多輸入轉(zhuǎn)換成單個(gè)輸出。遞歸神經(jīng)網(wǎng)絡(luò)(RNN)會(huì)將值進(jìn)一步逐層傳遞,讓逐層學(xué)習(xí)成為可能。換句話說(shuō),RNN 存在某種形式的記憶,允許先前的輸出去影響后面的輸入。

遞歸神經(jīng)網(wǎng)絡(luò)其實(shí)是兩種人工神經(jīng)網(wǎng)絡(luò)的總稱,一種是時(shí)間遞歸神經(jīng)網(wǎng)絡(luò)(recurrent neural network),另一種是結(jié)構(gòu)遞歸神經(jīng)網(wǎng)絡(luò)(recursive neural network)。時(shí)間遞歸神經(jīng)網(wǎng)絡(luò)的神經(jīng)元間連接構(gòu)成有向圖,而結(jié)構(gòu)遞歸神經(jīng)網(wǎng)絡(luò)利用相似的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)遞歸構(gòu)造更為復(fù)雜的深度網(wǎng)絡(luò)。兩者訓(xùn)練的算法不同,但屬于同一算法變體?;?b>RNN還衍生出了LSTM(Long-Short-Term-Memerory)和GRU(Gated Recurrent Unit)等一系列算法,這些算法擁有記住過(guò)去的能力,所以可以用來(lái)處理一些有時(shí)間序列屬性的數(shù)據(jù),在處理語(yǔ)言、文字等方面有獨(dú)到的優(yōu)勢(shì),LSTM和GRU的優(yōu)點(diǎn)是具備與其它遞歸神經(jīng)網(wǎng)絡(luò)一樣的優(yōu)點(diǎn),但因?yàn)樗鼈冇懈玫挠洃浤芰?,所以更常被使用?/p>

優(yōu)點(diǎn):遞歸神經(jīng)網(wǎng)絡(luò)在存在大量有序信息時(shí)具有預(yù)測(cè)能力

場(chǎng)景舉例:圖像分類與字幕添加、政治情感分析、對(duì)話機(jī)器人,機(jī)器翻譯,科大訊飛的自然語(yǔ)言識(shí)別,文章編輯等。

6、葉貝斯算法

貝葉斯是一個(gè)定理,它的意思是:當(dāng)你不能準(zhǔn)確知悉一個(gè)事物的本質(zhì)時(shí),你可以依靠與事物特定本質(zhì)相關(guān)的事件出現(xiàn)的多少去判斷其本質(zhì)屬性的概率。當(dāng)我們找到若干個(gè)這樣的特征,然后用這些特征進(jìn)行組合后,可以進(jìn)行判斷,常見(jiàn)算法有樸素貝葉斯算法、平均單依賴估計(jì)(Averaged One-Dependence Estimators, AODE)、Bayesian Belief Network(BBN)。

舉例來(lái)看,要識(shí)別一封郵件是不是垃圾郵件??梢噪S機(jī)挑選出100封垃圾郵件,分析它的特征,我們發(fā)現(xiàn)“便宜”這個(gè)詞出現(xiàn)的頻率很高,100封垃圾郵件里,有40封出現(xiàn)了這個(gè)詞。那我們就以這個(gè)認(rèn)知為依據(jù),得出結(jié)論:如果出現(xiàn)了“便宜”,那這封郵件有40%的概率是垃圾郵件。

優(yōu)點(diǎn):對(duì)于在小數(shù)據(jù)集上有顯著特征的相關(guān)對(duì)象,樸素貝葉斯方法可對(duì)其進(jìn)行快速分類

場(chǎng)景舉例:情感分析、消費(fèi)者分類

7、聚類

聚類是一種非監(jiān)督學(xué)習(xí)的方式。簡(jiǎn)單的說(shuō),就是通過(guò)不斷的迭代計(jì)算,把數(shù)據(jù)分成若干個(gè)組,使得這個(gè)組里的都是類似的數(shù)據(jù),而不同組之間的數(shù)據(jù)是不相似的。聚類算法通常按照中心點(diǎn)或者分層的方式對(duì)輸入數(shù)據(jù)進(jìn)行歸并。所以的聚類算法都試圖找到數(shù)據(jù)的內(nèi)在結(jié)構(gòu),以便按照最大的共同點(diǎn)將數(shù)據(jù)進(jìn)行歸類。可以用于圖像分類識(shí)別,用戶行為識(shí)別,用戶畫像等領(lǐng)域。常見(jiàn)算法有k-Means算法、期望最大化算法(Expectation Maximization, EM)。

8、強(qiáng)化學(xué)習(xí)模型

在沒(méi)有給出任何答案的情況下,先進(jìn)行一些嘗試,通過(guò)嘗試所得到的回報(bào),來(lái)確定這個(gè)嘗試是否正確,由這一系列的嘗試來(lái)不斷調(diào)整和優(yōu)化算法,最后算法知道在某種情況下,采取何種動(dòng)作可以得到最好的結(jié)果。他的本質(zhì)是解決“決策問(wèn)題”,就是通過(guò)不斷做出決策并獲得結(jié)果反饋后,學(xué)會(huì)自動(dòng)進(jìn)行決策,得到最優(yōu)結(jié)果。比如上面說(shuō)過(guò)的猴子“學(xué)會(huì)”做算術(shù)題的過(guò)程。

9、集成學(xué)習(xí)模型

用一些相對(duì)較弱的學(xué)習(xí)模型獨(dú)立地就同樣的樣本進(jìn)行訓(xùn)練,然后把結(jié)果整合起來(lái)進(jìn)行整體預(yù)測(cè)。集成算法的主要難點(diǎn)在于究竟集成哪些獨(dú)立的較弱的學(xué)習(xí)模型以及如何把學(xué)習(xí)結(jié)果整合起來(lái)。

我們?cè)谧鰴C(jī)器學(xué)習(xí)的時(shí)候,希望能做出各個(gè)方面表現(xiàn)都比較好的模型。但常?,F(xiàn)實(shí)是我們的模型是有偏好的,可能只對(duì)某一些情況效果比較好,這個(gè)時(shí)候我們就希望把若干個(gè)這樣的模型組合起來(lái),得到一個(gè)更好更全面的模型,這種方法,就叫做集成學(xué)習(xí)。常見(jiàn)算法有Boosting、Bootstrapped Aggregation(Bagging)、AdaBoost、堆疊泛化(Stacked Generalization, Blending)、梯度推進(jìn)機(jī)(Gradient Boosting Machine, GBM)、隨機(jī)森林(Random Forest)。

三、三大流派

經(jīng)過(guò)幾十年的發(fā)展,人工智能演化出了多個(gè)分支流派,這些分支一直都在彼此爭(zhēng)奪主導(dǎo)權(quán),此次人工智能的爆發(fā),主要源于聯(lián)結(jié)主義的神經(jīng)網(wǎng)絡(luò)有了突破性發(fā)展,將語(yǔ)音識(shí)別和視覺(jué)識(shí)別的準(zhǔn)確度分別達(dá)到了99%和95%。未來(lái)的發(fā)展很可能是這三大流派彼此合作,因?yàn)樗惴ㄈ诤鲜菍?shí)現(xiàn)真正通用人工智能(AGI)的唯一方式。

①符號(hào)主義(Symbolism):是一種基于邏輯推理的智能模擬方法,又稱為邏輯主義(Logicism)、心理學(xué)派(Psychlogism)或計(jì)算機(jī)學(xué)派(Computerism),其原理主要為物理符號(hào)系統(tǒng)(即符號(hào)操作系統(tǒng))假設(shè)和有限合理性原理,長(zhǎng)期以來(lái),一直在人工智能中處于主導(dǎo)地位。

②聯(lián)結(jié)主義(connectionism):認(rèn)為人工智能源于仿生學(xué),特別是對(duì)人腦模型的研究。它從神經(jīng)元開始進(jìn)而研究神經(jīng)網(wǎng)絡(luò)模型和腦模型,開辟了人工智能的又一發(fā)展道路。1986年,魯梅爾哈特(Rumelhart)等人提出多層網(wǎng)絡(luò)中的反向傳播算法(BP)算法。此后,連接主義勢(shì)頭大振,從模型到算法,從理論分析到工程實(shí)現(xiàn), 為神經(jīng)網(wǎng)絡(luò)計(jì)算機(jī)走向市場(chǎng)打下基礎(chǔ)。

③行為主義:控制論思想早在20世紀(jì)40~50年代就成為時(shí)代思潮的重要部分,影響了早期的人工智能工作者。實(shí)際上是從行為上模擬和體現(xiàn)智能,也就是說(shuō),模擬人在控制過(guò)程中的智能活動(dòng)和行為特性來(lái)研究和實(shí)現(xiàn)人工智能,行為主義思想在智能控制、機(jī)器人領(lǐng)域獲得了很多成就。

還有一種說(shuō)法,將人工只分為五大流派,分別是符號(hào)主義,貝葉斯主義,聯(lián)結(jié)主義,進(jìn)化主義和Analogizer,擴(kuò)展閱讀三張圖讀懂機(jī)器學(xué)習(xí):基本概念、五大流派與九種常見(jiàn)算法?文中包含大量延伸閱讀鏈接。

四、機(jī)器學(xué)習(xí)的工作流程

  1. 選擇數(shù)據(jù):將你的數(shù)據(jù)分成三組:訓(xùn)練數(shù)據(jù)、驗(yàn)證數(shù)據(jù)和測(cè)試數(shù)據(jù)
  2. 模型數(shù)據(jù):使用訓(xùn)練數(shù)據(jù)來(lái)構(gòu)建使用相關(guān)特征的模型
  3. 驗(yàn)證模型:使用你的驗(yàn)證數(shù)據(jù)接入你的模型
  4. 測(cè)試模型:使用你的測(cè)試數(shù)據(jù)檢查被驗(yàn)證的模型的表現(xiàn)
  5. 使用模型:使用完全訓(xùn)練好的模型在新數(shù)據(jù)上做預(yù)測(cè)
  6. 調(diào)優(yōu)模型:使用更多數(shù)據(jù)、不同的特征或調(diào)整過(guò)的參數(shù)來(lái)提升算法的性能表現(xiàn)

五、手寫數(shù)字識(shí)別流程概述

本文下面內(nèi)容源于gitchat上劉穎老師的人人都能看懂的 AI 入門課,對(duì)代碼感興趣的朋友可以點(diǎn)擊查看。本文不討論代碼實(shí)現(xiàn),僅討論實(shí)現(xiàn)流程和實(shí)現(xiàn)過(guò)程中的一些概念。

1、TensorFlow基礎(chǔ)

TensorFlow 是 Google 開源的一款人工智能學(xué)習(xí)系統(tǒng)。使用很方便,幾行代碼就能開始跑模型,這讓神經(jīng)網(wǎng)絡(luò)的入門變得非常簡(jiǎn)單。Google 開源了 TensorFlow,希望占領(lǐng) AI 端。Google 也為入門者提供了一個(gè)這樣的例子,也就是 TensorFlow 里的“ hello world ”,這個(gè)例子的名字叫“ MNIST ”,MNIST機(jī)器學(xué)習(xí)入門可點(diǎn)擊查看。下文將簡(jiǎn)述實(shí)現(xiàn)過(guò)程,重在理解流程和一些模型設(shè)計(jì)概念。

2、 手寫圖片識(shí)別實(shí)現(xiàn)步驟概述

劉穎老師對(duì)項(xiàng)目做了三次優(yōu)化,使手寫數(shù)字的準(zhǔn)確率從92%->98%->99.25%,1.0版使用一個(gè)最簡(jiǎn)單的單層的神經(jīng)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí),2.0版使用了卷積神經(jīng)網(wǎng)絡(luò),3.0版使用 Keras 框架,增加20層網(wǎng)絡(luò)的深度。

手寫圖片識(shí)別的實(shí)現(xiàn),分為三步:(1)數(shù)據(jù)的準(zhǔn)備;(2)模型的設(shè)計(jì);(3)代碼實(shí)現(xiàn)

3、數(shù)據(jù)準(zhǔn)備

在寫代碼的過(guò)程中,數(shù)據(jù)的預(yù)處理是最大的一塊工作,60%以上的代碼在做數(shù)據(jù)預(yù)處理。 這個(gè)項(xiàng)目的預(yù)處理,分為5步:

把輸入和結(jié)果分開

對(duì)輸入進(jìn)行處理:把一維的輸入變成28*28的矩陣

對(duì)結(jié)果進(jìn)行處理:把結(jié)果進(jìn)行 One-Hot 編碼

把訓(xùn)練數(shù)據(jù)劃分訓(xùn)練集和驗(yàn)證集

對(duì)訓(xùn)練集進(jìn)行分批

那么準(zhǔn)備的數(shù)據(jù)是什么樣的呢?劉穎老師使用Kaggle 里包含了42000份訓(xùn)練數(shù)據(jù)和28000份測(cè)試數(shù)據(jù),這些數(shù)字是28*28像素的手寫數(shù)字圖片,可以將一張圖理解為一個(gè)二維數(shù)組結(jié)構(gòu),如下圖所示:

Kaggle 的數(shù)據(jù)將二維數(shù)組轉(zhuǎn)化為了一維數(shù)組,也就是28*28=784列,包括圖片代表的數(shù)字一共785列,所以上文中的測(cè)試和訓(xùn)練數(shù)據(jù)被轉(zhuǎn)為[42000,785]和[28000,784]的數(shù)組,這就是圖片的預(yù)處理。

人類可以快速識(shí)別圖像并對(duì)應(yīng)到記憶中的事物,而圖像在計(jì)算機(jī)看來(lái)是這樣的:

4、單層的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)流程及相關(guān)概念

使用一個(gè)最簡(jiǎn)單的單層的神經(jīng)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí)的模型設(shè)計(jì)如下所示:

用 SoftMax 來(lái)做為激活函數(shù)

用交叉熵來(lái)做損失函數(shù)

用梯度下降來(lái)做優(yōu)化方式

激活函數(shù):每個(gè)神經(jīng)元,在通過(guò)一系列計(jì)算后,得到了一個(gè)數(shù)值,怎么來(lái)判斷應(yīng)該輸出什么?激活函數(shù)就是解決這個(gè)問(wèn)題,你把值給我,我來(lái)判斷怎么輸出。所以一個(gè)神經(jīng)網(wǎng)絡(luò),激活函數(shù)是非常重要的。目前主流的幾個(gè)激活函數(shù)是:softMax,sigmoid,tanh,ReLU。

SoftMax:我們知道 max(A,B)是指 A 和 B 里哪個(gè)大就取哪個(gè)值,但我們有時(shí)候希望比較小的那個(gè)也有一定概率取到,怎么辦呢?我們就按照兩個(gè)值的大小,計(jì)算出概率,按照這個(gè)概率來(lái)取 A 或者 B。比如A=9,B=1,那取 A 的概率是90%,取B的概率是10%,這就是SoftMax。

損失函數(shù):損失函數(shù)是模型對(duì)數(shù)據(jù)擬合程度的反映,擬合得越好損失應(yīng)該越小,擬合越差損失則越大,然后我們根據(jù)損失函數(shù)的結(jié)果對(duì)模型進(jìn)行調(diào)整。

交叉熵:交叉熵通俗的講就是現(xiàn)在的訓(xùn)練程度和圓滿之間的距離,我們希望距離越小越好,所以交叉熵可以作為一個(gè)損失函數(shù),來(lái)衡量和目標(biāo)之間的距離。

梯度下降:我們將要解決的問(wèn)題比作是一座山,答案在山底,我們從山頂?shù)缴降椎倪^(guò)程就是解決問(wèn)題的過(guò)程。在山頂,想找到最快的下山的路。這個(gè)時(shí)候,我們的做法是什么呢?在每次選擇道路的時(shí)候,選最陡的那條路。梯度是改變率或者斜度的另一個(gè)稱呼,用數(shù)學(xué)的語(yǔ)言解釋是導(dǎo)數(shù)。對(duì)于求損失函數(shù)最小值這樣的問(wèn)題,朝著梯度下降的方向走,就能找到最優(yōu)值了。

5、卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)流程及相關(guān)概念

卷積神經(jīng)網(wǎng)絡(luò)(CNN)由輸入層、卷積層、激活函數(shù)、池化層、全連接層組成,即INPUT(輸入層)-CONV(卷積層)-RELU(激活函數(shù))-POOL(池化層)-FC(全連接層)

卷積層1+激活函數(shù)+池化層1+卷積層2+激活函數(shù)+池化層2+全連接1+Dropout 層+輸出層

卷積層的作用是指對(duì)圖片的矩陣進(jìn)行卷積運(yùn)算,得到一些數(shù)值,作為圖片的某些特征。

池化層的作用是對(duì)上層的數(shù)據(jù)進(jìn)行采樣,也就是只留下一部分,這樣的作用是可以縮小數(shù)據(jù)量和模糊特征。

全連接層就是連在最后的分類器。前面卷積層和池化層進(jìn)行處理后,得到了很多的特征,全連接層使用這些特征進(jìn)行分類。比如識(shí)別數(shù)字,那就是對(duì)0~9的十個(gè)類別進(jìn)行分類。

Dropout層是為了防止 CNN 對(duì)訓(xùn)練樣本過(guò)擬合,而導(dǎo)致處理新樣本的時(shí)候效果不好,采取的丟棄部分激活參數(shù)的處理方式。

這里對(duì)這些概念的解釋都是比較簡(jiǎn)單的,如果希望詳細(xì)了解,可以看知乎的這個(gè)鏈接:CNN卷積神經(jīng)網(wǎng)絡(luò)是什么??卷積神經(jīng)網(wǎng)絡(luò)

6、使用 Keras 框架實(shí)現(xiàn)多層神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)

使用 Keras 框架提升準(zhǔn)確率

增加網(wǎng)絡(luò)的深度,這里增加到了20層

每次卷積完之后,加入規(guī)范層

使用最新的 SELU 激活函數(shù),這是 Sepp Hochreiter 最新發(fā)表在 arXiv 上的激活函數(shù)

概括來(lái)看,圖片識(shí)別中需要完成數(shù)據(jù)的準(zhǔn)備,模型設(shè)計(jì),代碼實(shí)現(xiàn)三部分,淺層學(xué)習(xí)需要選擇激活函數(shù),損失函數(shù)和優(yōu)化方式,應(yīng)用卷積神經(jīng)網(wǎng)絡(luò)在模型設(shè)計(jì)時(shí)需要考慮輸入層、卷積層、激活函數(shù)、池化層、全連接層等。

筆者暫時(shí)可以理解的只有這些,希望AI大神或前輩可以多多指正,如果AI產(chǎn)品經(jīng)理的崗位求內(nèi)推,如果AI產(chǎn)品經(jīng)理的崗位求內(nèi)推,如果AI產(chǎn)品經(jīng)理的崗位求內(nèi)推,重要的事情說(shuō)三遍~

下一篇文章嘗試總結(jié)我們身邊的一些2B和2C的AI產(chǎn)品,并且嘗試著對(duì)于未來(lái)AI產(chǎn)品的應(yīng)用場(chǎng)景開開腦洞。

相關(guān)閱讀:

轉(zhuǎn)型AI產(chǎn)品經(jīng)理需要掌握的硬知識(shí)(一):AI產(chǎn)品經(jīng)理能力模型和常見(jiàn)AI概念梳理

#專欄作家#

田宇洲(微信公眾號(hào):言之有術(shù)),人人都是產(chǎn)品經(jīng)理專欄作家,北京大學(xué)軟件工程管理碩士,北京電信4年產(chǎn)品經(jīng)理,負(fù)責(zé)B2B電商平臺(tái)的前后端產(chǎn)品設(shè)計(jì),擅長(zhǎng)游戲化產(chǎn)品設(shè)計(jì),挖掘用戶畫像。

本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來(lái)自u(píng)nsplash,基于CC0協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 點(diǎn)贊點(diǎn)贊,濾清了好些概念, 可是心里還是不太明白 AI到底能做什么?日后能 給企業(yè)能帶來(lái)什么利益或者好處?

    來(lái)自陜西 回復(fù)
    1. 我的理解是AI科技從底層上替代人的部分工作,讓企業(yè)縮減成本變得更加高效,下一篇文章打算寫一下AI的實(shí)際應(yīng)用場(chǎng)景,其實(shí)工業(yè)機(jī)器人領(lǐng)域已經(jīng)發(fā)展的很夸張了,可能個(gè)人用戶感受不明顯,這一輪的機(jī)器學(xué)習(xí)在視覺(jué)識(shí)別和語(yǔ)音識(shí)別發(fā)力,這兩個(gè)領(lǐng)取就會(huì)讓很多行業(yè)出現(xiàn)大變革了~

      來(lái)自北京 回復(fù)
  2. 作者很棒,向你學(xué)習(xí)??

    回復(fù)
    1. 也在學(xué)習(xí),總結(jié)的未必對(duì)哦,哈哈,只是把自己理解的有關(guān)系的放在一起哈~

      來(lái)自北京 回復(fù)