三、AI技術(shù) 業(yè)內(nèi)通常將人工智能分類為機器學習,、計算機視覺,、語音交互和自然語言處理四大領(lǐng)域,機器學習可以理解為是其他三大領(lǐng)域的底層基礎,,大致可以分為監(jiān)督學習,、非監(jiān)督學習,、強化學習、遷移學習,。 本文在此基本不涉及公式,,盡量以平直易懂的語言講述這幾種機器學習方法及相關(guān)算法。個人認為在實戰(zhàn)過程中根據(jù)工作需要再深入學習這些算法,,會更有針對性而且效率會更高,,事半功倍。 3.1 機器學習概念:投喂給機器訓練數(shù)據(jù),,機器從這些數(shù)據(jù)中找出一個能夠良好擬合已有數(shù)據(jù)的函數(shù),,新數(shù)據(jù)來了后,就可以通過這個函數(shù)預測對應結(jié)果,。 適合解決的問題:有規(guī)律可以學習,、編程很難做到、有能夠?qū)W習到規(guī)律的數(shù)據(jù),。 工作方式:
概念:機器學習的一種,,通過學習許多有標簽的樣本,得到特征值和標記值之間的對應規(guī)律,,然后對新的數(shù)據(jù)做出預測,。 分類:根據(jù)輸入數(shù)據(jù)x預測出輸出數(shù)據(jù)y,如果y是整數(shù)的類別編號,,則稱為分類問題,,算法包括:決策樹、隨機森林,、貝葉斯,、KNN、SVM,、邏輯回歸,。如果y是實數(shù)值,則為回歸問題,,算法包括決策樹,、隨機森林,、KNN、SVM,、線性回歸,。 主流算法: 1)決策樹算法 基本原理:決策樹是一個樹結(jié)構(gòu),每個非葉節(jié)點表示一個特征屬性,,每個分支代表這個特征屬性在某值域上的輸出,,每個葉節(jié)點存放一個類別。使用決策樹進行決策的過程就是從根節(jié)點開始,,測試待分類項中相應的特征屬性,,并按照其值選擇輸出分支,直到到達某個葉節(jié)點,,該葉節(jié)點存放的類別即為決策結(jié)果,。 決策樹是一種判別模型,既支持分類問題,,也支持回歸問題,,是一種非線性模型(分段線性函數(shù)不是線性的),它天然的支持多分類問題,。決策樹的構(gòu)建由機器訓練得到,,而不是人工制定。 決策樹的關(guān)鍵步驟是分裂屬性,,即在某個節(jié)點處按照某一特征屬性的不同劃分構(gòu)造不同的分支,,盡量讓一個分裂子集中待分類項屬于同一類別。而根據(jù)判斷方法的不同所以產(chǎn)生了ID3算法,,C4.5算法以及CART算法,。 下圖以銀行判斷是否給客戶貸款為例大致說明決策樹的原理: 主要用途:基于規(guī)則的信用評估、賽馬結(jié)果預測,。 優(yōu)劣勢:擅長對人,、地點,、事物的一系列不同特征,、品質(zhì)、特性進行評估,,非常容易解釋,,但容易趨于過擬合。 2)隨機森林 基本原理:由決策樹與集成學習算法相結(jié)合生成,,由多棵決策樹組成,。用多棵決策樹聯(lián)合預測可以提高模型的精度,這些決策樹用對訓練樣本集隨機抽樣構(gòu)造出的樣本集訓練得到,。由于訓練樣本集由隨機抽樣構(gòu)造,,因此稱為隨機森林,。 隨機森林不僅對訓練樣本進行抽樣,還對特征向量的分量隨機抽樣,,在訓練決策樹時,,每次分裂時只使用一部分抽樣的特征分量作為候選特征進行分裂。隨機森林是一種判別模型,,既支持分類問題,,也支持回歸問題,并且支持多分類問題,,這是一種非線性模型,。 主要用途:用戶流失分析、風險評估,。 優(yōu)劣勢:隨機森林對大規(guī)模數(shù)據(jù)集和存在大量且有時不相關(guān)特征的項來說很有用,,且有很好的解釋性。它比使用單個模型預測出來的結(jié)果要精確的多,,但同時也需要大量的維護工作,。 3)樸素貝葉斯 基本原理:是在已知樣本的特征向量為x的條件下反推樣本所屬的類別y,即對于給出的待分類項,,求解在此待分類項出現(xiàn)的條件下各個類別出現(xiàn)的概率,,哪個概率最大,就認為此待分類項屬于哪個類別,。 簡單的舉個例子:我們看到一個人高鼻深目金發(fā)碧眼,,便可以推斷他屬于白種人,因為在這種外貌特征下他是白種人的概率最高,。貝葉斯可以處理多分類問題,,是一種非線性模型。 主要用途:文本處理里的垃圾郵件過濾,、情感分析,、消費者分類、拼寫糾正,、文字廣告過濾,、識別惡性評論等領(lǐng)域。 優(yōu)劣勢:對于在小數(shù)據(jù)集上有顯著特征的相關(guān)對象,,樸素貝葉斯方法可對其進行快速分類,,且很統(tǒng)一被解釋。所需估計的參數(shù)不大,,對缺失數(shù)據(jù)不太敏感,,而且無需復雜的迭代求解框架,適用于規(guī)模巨大的數(shù)據(jù)集。但是對輸入數(shù)據(jù)的形式比較敏感,、計算先驗概率時分類決策可能存在錯誤,。如果輸入變量是相關(guān)的,則會出現(xiàn)問題,。 4)k近鄰(KNN) 基本原理:把標注好類別的訓練樣本映射到選取的特征數(shù)維度的坐標系里,,然后再把測試樣本映射到這個坐標系里,選取距離該測試樣本最近的k個訓練樣本,,其中哪個訓練樣本類別占比最大,,就可以認為該類別就是這個測試樣本的類別。 kNN算法是一種判別模型,,即支持分類問題,,也支持回歸問題,是一種非線性模型,。它天然的支持多分類問題,。kNN算法沒有訓練過程,是一種基于實例的算法,。 主要用途:適用 kNN可以處理數(shù)值型(從無限的數(shù)值集合中取值,,如:0.100,42.001等)和標稱型(只在有限目標集中取值,,如:真與假)數(shù)據(jù),。一種特征對應一個維度,一種特征下的數(shù)據(jù)可以數(shù)值型的也可以是標稱型的,。 優(yōu)劣勢:這種算法思想簡單,,理論成熟,準確度高,。但是會占用大量內(nèi)存,,因為需要存儲所有的訓練樣本點,而且每個新測試樣本需要通過kNN算法分類,,都要計算這個測試樣本與所有訓練樣本點的距離,。 5)線性回歸 基本原理:主要用于擬合數(shù)據(jù)趨勢。簡而言之,,就是盡量用一條線或平面或超平面來擬合已有的一組數(shù)據(jù),。確定自變量和因變量間的相互依賴的定量關(guān)系。簡單的線性回歸一般使用“最小二乘法”來求解,,最小二乘的思想就是使得求解的這條線或平面或超平面使所有誤差的平方和最小,。 主要用途:適用于數(shù)值型和標稱型數(shù)據(jù),。 優(yōu)劣勢:結(jié)果易于理解,,計算不復雜,但是只能用于擬合線性數(shù)據(jù),,非線性數(shù)據(jù)擬合效果很差,。 6)邏輯回歸 基本原理:邏輯回歸只是對線性回歸的計算結(jié)果加了Sigmoid函數(shù)進行處理,,將數(shù)值結(jié)果轉(zhuǎn)化為了0到1之間的概率,根據(jù)這個概率可以做預測,。logistic回歸是一種判別模型,,它是一種線性模型,用于二分類問題,。 主要用途:路面交通流量分析,、郵件過濾, 優(yōu)劣勢:實現(xiàn)簡單,,分類時計算量非常小,,速度很快,存儲資源低,,但是容易欠擬合,。 7)支持向量機(SVM) 基本原理:支持向量機的目標是尋找一個分類超平面,它不僅能正確的分類每一個樣本,,并且要使得每一類樣本中距離超平面最近的樣本到超平面的距離盡可能遠,。SVM是一種判別模型,它既可以用于分類問題,,也可以用于回歸問題,。標準的SVM只能支持二分類問題,使用多個分類器的組合,,可以解決多分類問題,。 主要用途:新聞分類、手寫識別,。 優(yōu)劣勢:擅長在變量x和其他變量之間進行二元分類操作,,無論其關(guān)系是否為線性的??梢圆东@數(shù)據(jù)之間更復雜的關(guān)系,,而無需人為地進行困難的數(shù)據(jù)轉(zhuǎn)換。但同時它的訓練時間長得多,,因為計算量更大,,而且可解釋性也比較差。 3.3 非監(jiān)督學習概念:機器學習的一種,,訓練樣本中所有樣本數(shù)據(jù)都不含標記值的學習方式,,目的是將樣本集劃分成多個類,保證同一類的樣本之間盡量相似,,不同類的樣本之間盡量不同,。沒有訓練過程,直接對樣本進行劃分。 主流算法: 1)k均值(k-means) 基本原理:將觀測值分為 k 個聚類,,隨機初始化每個類的類中心,,然后計算樣本與每個類的中心的距離,將其分配到最近的那個類,,然后根據(jù)這種分配方案重新計算每個類的中心,。這也是一種分階段優(yōu)化的策略。 2)主成分分析(PCA) 基本原理:PCA是一種數(shù)據(jù)降維和去除相關(guān)性的方法,,它通過線性變換將向量投影到低維空間,,對向量進行投影就是讓向量左乘一個矩陣得到結(jié)果向量。降維要確保的是在低維空間中的投影能很好的近似表達原始向量,,即重構(gòu)誤差最小化,。PCA是一種無監(jiān)督的學習算法,它是線性模型,,不能直接用于分類和回歸問題,。 2.4 半監(jiān)督學習訓練樣本中只有部分樣本數(shù)據(jù)包含標記值的學習方式,當沒有足夠人力標記所有的樣本數(shù)據(jù),,并且稍稍降低對模型預測精度的要求時,,便可以使用半監(jiān)督學習。相比無監(jiān)督學習會有較高的精度,,相比有監(jiān)督學習可以大幅降低人工標記成本,。 例如:在擁有上百萬篇文章資訊類的網(wǎng)站中進行文章分類標記,便可以采用半監(jiān)督學習,,只需要對訓練樣本進行少量的人工標注處理,,便可以得到較高精度的分類結(jié)果。 2.5 強化學習強化學習是一種特殊的機器學習,,根據(jù)輸入環(huán)境參數(shù)確定要執(zhí)行的動作,,通過與環(huán)境交互來優(yōu)化目標函數(shù)。在訓練時,,對于正確的動作做出獎勵,,對錯誤的動作做出懲罰,訓練完成之后就用得到的模型進行預測,。簡要來說,,強化學習算法是一種根據(jù)當前的狀態(tài)確定要執(zhí)行的動作的學習方式。 2.6 遷移學習遷移學習簡要來說,,就是把已經(jīng)學到訓練好的模型參數(shù)遷移到新的模型來幫助并加快新模型訓練數(shù)據(jù)集,,這種學習方式可以大幅縮短新模型的學習時間。 2.7 深度學習深度學習是機器學習的子集,,這個概念來源于對人工神經(jīng)網(wǎng)絡的研究,。深度學習通過組合低層特征形成更加抽象的高層表示屬性類別或特征,,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。 深度機器學習方法也有監(jiān)督學習與無監(jiān)督學習之分,,不同的學習框架下建立的學習模型很是不同。例如:卷積神經(jīng)網(wǎng)絡(Convolutional neural networks,,簡稱CNNs)就是一種深度的監(jiān)督學習下的機器學習模型,,而深度置信網(wǎng)(Deep Belief Nets,簡稱DBNs)就是一種無監(jiān)督學習下的機器學習模型,。 深度學習相較其他機器學習最厲害的一點:可以對數(shù)據(jù)特征進行預處理(省去數(shù)據(jù)人工標注的麻煩,,同時可以對更多維和復雜的特征進行向量提取和空間向量的轉(zhuǎn)換,方便后續(xù)處理),,這也是它為什么很多層的原因,,因為其中多出來的層數(shù)都是要用來進行數(shù)據(jù)特征提取預處理的。端到端的訓練,,是深度學習的核心技術(shù),。目前深度學習框架有tensorflow、keras,、caffe,、theano、torch等,。 1)卷積神經(jīng)網(wǎng)絡(CNN) 基本原理:CNN是一種前饋神經(jīng)網(wǎng)絡,,它的人工神經(jīng)元可以響應一部分覆蓋范圍內(nèi)的周圍單元,對于大型圖像處理有出色表現(xiàn),。 卷積神經(jīng)網(wǎng)絡由輸入層,、卷積層、激活函數(shù),、池化層,、全連接層組成。卷積層的作用是指對圖片的矩陣進行卷積運算,,得到一些數(shù)值,,作為圖片的某些特征。因為采用了卷積來處理圖像,,所以需要使用激活函數(shù)來加入非線性因素,,來增加表達力。 池化層的作用是對上層的數(shù)據(jù)進行采樣和壓縮,,一方面使特征圖變小,,簡化網(wǎng)絡計算復雜度;一方面進行特征壓縮,,提取主要特征,。全連接層連接所有的特征,,將輸出值分類。 前面卷積層和池化層進行處理后,,得到了很多的特征,,全連接層使用這些特征進行分類。比如:識別數(shù)字,,那就是對0~9的十個類別進行分類,。卷積神經(jīng)網(wǎng)絡是一個判別模型,它既可以用于分類問題,,也可以用于回歸問題,,并且支持多分類問題。 主要用途:圖像處理,,計算機視覺和圖像分類的主要算法,。 2)遞歸神經(jīng)網(wǎng)絡(RNN) 基本原理:又叫循環(huán)神經(jīng)網(wǎng)絡,在任意神經(jīng)網(wǎng)絡中,,每個神經(jīng)元都通過 1 個或多個隱藏層來將很多輸入轉(zhuǎn)換成單個輸出,。遞歸神經(jīng)網(wǎng)絡會將值進一步逐層傳遞,讓逐層學習成為可能,。換句話說,,RNN 存在某種形式的記憶,允許先前的輸出去影響后面的輸入,。當輸入數(shù)據(jù)具有依賴性且是序列模式時,,RNN 對之前發(fā)生在數(shù)據(jù)序列中的事是有一定記憶的,這有助于系統(tǒng)獲取上下文,。 基于RNN還衍生出了LSTM(Long-Short-Term-Memerory)和GRU(Gated Recurrent Unit)等一系列算法,,這些算法擁有記住過去的能力,所以可以用來處理一些有時間序列屬性的數(shù)據(jù),,在處理語言,、文字等方面有獨到的優(yōu)勢。 LSTM和GRU的優(yōu)點是具備與其它遞歸神經(jīng)網(wǎng)絡一樣的優(yōu)點,,但因為它們有更好的記憶能力,,所以更常被使用。 遞歸神經(jīng)網(wǎng)絡是一個判別模型,,既支持分類問題,,也支持回歸問題,并且支持多分類問題,。 主要用途:語言建模,、文本生成、機器翻譯,、語音識別,、生成圖像描述,。 四、小結(jié)AI產(chǎn)品經(jīng)理雖然與傳統(tǒng)互聯(lián)網(wǎng)產(chǎn)品經(jīng)理有些不同,,但對產(chǎn)品思維的要求還是一如既往甚至提出了更高的標準,,所以除了了解本文所述內(nèi)容,形成自己的一套方法論還是非常重要的,。 此外,,在人工智能這個領(lǐng)域,產(chǎn)品經(jīng)理需要有更高的人文素養(yǎng),,目光和眼界一定要長遠,,才可能做出有足夠影響力的人工智能產(chǎn)品,。 參考資料
|
|