> Mathematical & Statistical Subjects in Artificial Intelligence Algorithms
探索AI算法的數(shù)學(xué)和統(tǒng)計(jì)主題。
· 介紹
· 為什么需要數(shù)學(xué)。
· 列出AI的子字段/模塊。
· 數(shù)學(xué)主題和必修主題。
· 在神經(jīng)網(wǎng)絡(luò)中應(yīng)用數(shù)學(xué)主題進(jìn)行多分類示例。
· 結(jié)論
在本文中,以上指標(biāo)分為兩部分,第一部分(1-4)僅對(duì)數(shù)學(xué)主題進(jìn)行了理論解釋,第二部分(5)將概念應(yīng)用于多分類神經(jīng)網(wǎng)絡(luò)。
介紹 :
本文基于數(shù)學(xué)和統(tǒng)計(jì)學(xué)的AI算法解釋了數(shù)學(xué)在AI中的重要性。AI算法背后的數(shù)學(xué)很難理解,需要陡峭的學(xué)習(xí)曲線。AI算法使用數(shù)學(xué)主題,即使概念取自其他學(xué)科(例如:人工神經(jīng)網(wǎng)絡(luò)的生物神經(jīng)元)。
為什么選擇數(shù)學(xué):以下是AI中需要數(shù)學(xué)的幾個(gè)原因。
· 您無(wú)法獲得任何算法的清晰畫面或內(nèi)部工作原理
· 大多數(shù)讀者使用方程式,公式,技術(shù),結(jié)果等來(lái)撰寫研究論文,并以純數(shù)學(xué)的觀點(diǎn)來(lái)參與必修課程以完成任務(wù)。 要求您了解數(shù)學(xué)以理解符號(hào),主題和應(yīng)用技術(shù)。
· 在一些復(fù)雜的AI項(xiàng)目中,例如SDC,Robotics,NLP,您需要基于已經(jīng)存在的框架(例如PyTorch,Tensorflow,Keras等)定義自己的框架。要開發(fā)復(fù)雜的項(xiàng)目,您必須熱衷于AI算法的內(nèi)部工作。
· 有時(shí),您可能需要通過(guò)更改參數(shù)值來(lái)微調(diào)算法,如果您不熱衷于算法角度并且不了解數(shù)學(xué)的內(nèi)部工作原理,那么您將無(wú)法進(jìn)行微調(diào)。
· 作為AI架構(gòu)師或研究人員,您無(wú)法以正常方式傳達(dá)實(shí)驗(yàn)結(jié)果,您必須以數(shù)學(xué)方式進(jìn)行解釋。
AI中的模塊或字段
人工智能中有許多模塊,根據(jù)Stuart Russell和Peter Norvig撰寫的《人工智能:現(xiàn)代方法》一書,我列出的模塊很少。
要知道下面的AI模塊的目的就是描述它的示意圖,即使是新手也可以理解模塊的路線圖。
> Purpose of AI Subjects/fields to be understand by newbie
作為AI字段的概述,可以在下圖中進(jìn)行分類。
> Broadly categorizes the fields of AI into 5 groups
數(shù)學(xué)主題/概念將涵蓋幾乎所有領(lǐng)域(AI領(lǐng)域),不僅限于機(jī)器學(xué)習(xí)和深度學(xué)習(xí)。
下一篇文章將簡(jiǎn)要介紹AI領(lǐng)域及其算法中涉及的數(shù)學(xué)主題/概念的方式。
遍歷每個(gè)主題并簡(jiǎn)短地提及所需的主要概念以及在AI算法中的何處以及如何使用。通過(guò)提及,這些讀者在學(xué)習(xí)和開發(fā)算法時(shí)會(huì)很熟悉。
> Requires to to understand the concepts, notations and advanced subjects.
基本公式,函數(shù),指數(shù),對(duì)數(shù),歐幾里得距離,平面,超平面,線性,非線性,斜率,曲線和基礎(chǔ),拋物線,圓等
> Euclidean Distance
> Abstract, Linear and Vector Algebra. Linear Algebra is a computation tool in AI
簡(jiǎn)介:代數(shù)有多種變體,例如抽象代數(shù),向量代數(shù),線性代數(shù)。
抽象代數(shù):代數(shù)定律,群,同態(tài),同構(gòu),環(huán)理論等,
以下是線性代數(shù)和向量代數(shù)中需要的主題。請(qǐng)注意,向量代數(shù)的概念很少,在一些線性代數(shù)中涉及的教科書中。
線性代數(shù)概念:向量,矩陣-矩陣類型(恒等,逆,伴隨),張量,矩陣性質(zhì)(跟蹤,行列式,正交,投影,對(duì)稱,奇異等),乘積規(guī)則-內(nèi)積,外積,向量矩陣,矩陣乘法,向量的線性組合,哈達(dá)瑪(Hadamard),分解-本征值分解,SVD等。
向量論在ML和其他領(lǐng)域中的應(yīng)用:
> Concepts, Types and Usages of Vectors
> Deals with Reasoning and Uncertainty
描述性統(tǒng)計(jì):均值,方差,中位數(shù),眾數(shù),標(biāo)準(zhǔn)偏差,協(xié)方差,期望,分布(伯努利,均勻,正態(tài)(單變量和多元),泊松,二項(xiàng)式,指數(shù),伽瑪),聯(lián)合和邊際分布,概率,概率公理,條件概率,隨機(jī)變量,貝葉斯規(guī)則(最重要),鏈規(guī)則,參數(shù)估計(jì):MLE(最大似然估計(jì)),MAP(最大后驗(yàn)),貝葉斯網(wǎng)絡(luò)或概率模型或圖形模型。
> Major Statistical Concepts used in AI
> Deals with Changes in the parameters, functions , errors and Approximations.
導(dǎo)數(shù):導(dǎo)數(shù)規(guī)則:加法,乘積,除法,鏈規(guī)則,雙曲(tanh),導(dǎo)數(shù)的應(yīng)用(如最小值,最大值等),積分(如果使用轉(zhuǎn)換)。
注意:我們沒(méi)有使用標(biāo)量導(dǎo)數(shù),但是這些將有助于理解向量和矩陣演算,以及很好地理解數(shù)值計(jì)算。
多變量微積分,偏導(dǎo)數(shù),梯度算法。
微積分與線性代數(shù)的變化:矢量微積分和矩陣微積分在機(jī)器學(xué)習(xí)和深度學(xué)習(xí)中最重要
向量和矩陣微積分的概念:梯度,鏈規(guī)則,雅可比,黑森州。
下圖描述了梯度下降算法,該算法在神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)的反向傳播(BP)中用于優(yōu)化參數(shù)。
BP描述了'神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)'部分。
> Gradient Descent Algorithm working on Parameters or Weights in an ML/DL algorithm
> Uses to measuring the uncertainty in algorithms
概念:熵(Shannon熵),信息增益,交叉熵,Kullback-Leibler(KL)發(fā)散。 熵衡量分布的無(wú)序性。
下面是香農(nóng)熵圖,描述了分布。
> Entropy in Classification Problems
> Uses for Convergence/Divergence
集,序列,極限,度量空間,單值和連續(xù)函數(shù),收斂,發(fā)散和泰勒級(jí)數(shù)。
> Converge and Diverge parameters in a model
> Computation methods & Optimizing with respect to constraints
極值,最小值,最大值,鞍點(diǎn),溢出,方向?qū)?shù),下溢,凸,凹,凸,拉格朗日不等式。
在ML和DL中權(quán)重優(yōu)化中使用的以下概念:
> Graphically Minimum, Maximum, Saddle Point, Convex ,Concave
> Optimize Cost (minimize / maximize)
簡(jiǎn)介:運(yùn)籌學(xué)(OR)是將數(shù)學(xué)應(yīng)用于業(yè)務(wù)問(wèn)題的研究。它是應(yīng)用數(shù)學(xué)的一個(gè)子領(lǐng)域。或使用數(shù)學(xué)和統(tǒng)計(jì)學(xué)來(lái)回答優(yōu)化問(wèn)題。
算法與統(tǒng)計(jì):
或嚴(yán)重依賴算法,數(shù)學(xué)和統(tǒng)計(jì)學(xué)。 OR中最重要的算法是優(yōu)化算法:試圖找到最大值或最小值的算法。
優(yōu)化:具有挑戰(zhàn)性的是,在給定的限制條件下,一個(gè)問(wèn)題的最佳解決方案。優(yōu)化可以是成本或收益的最大化或最小化。
主要是在成本函數(shù)的OR中使用優(yōu)化技術(shù)。
> OR works on Typical ML/DL algorithm
> Basics for Logic, Algorithms and proofs
集合,函數(shù),一階邏輯,關(guān)系,數(shù)據(jù)結(jié)構(gòu),算法,算法的時(shí)間和空間復(fù)雜性,遞歸,組合,樹,圖,有限狀態(tài)機(jī),動(dòng)態(tài)編程等
請(qǐng)注意,某些學(xué)科或概念是離散數(shù)學(xué)的一部分,例如概率,矩陣,布爾代數(shù),語(yǔ)言,但它們將出現(xiàn)在各自的領(lǐng)域中。
在下圖中,僅提及在算法中適用的眾所周知的DM概念。 為了避免混淆和沖突,未提及其他各種概念,例如有限自動(dòng)機(jī),形式語(yǔ)言,布爾代數(shù),概率,矩陣。
> DM Concepts applying in Algorithms for various usages
> There are many subjects/concepts will come into picture and have to learn as and when required
其他主題/概念:變換(拉普拉斯變換,Z變換,傅立葉變換),分布函數(shù)(Sigmoid,Softmax,Softplus,Tanh等),信號(hào)處理,生物神經(jīng)元概念,拓?fù)?,物理基礎(chǔ)和控制理論, 等等,僅提及很少的主題/概念,但列表是詳盡的。
讓我們將這些主題(如上所述)組合成一種算法,看看它們是如何工作的。為此,我使用了'多類'文本分類示例,在本示例中,我使用了神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)并解釋了數(shù)學(xué)主題如何完成任務(wù)。
下圖說(shuō)明了數(shù)學(xué)科目如何參與神經(jīng)網(wǎng)絡(luò)。 在神經(jīng)網(wǎng)絡(luò)中實(shí)現(xiàn)ML算法,使用戶可以輕松地一次掌握兩種學(xué)習(xí)技術(shù)。
神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)的每一層都有許多節(jié)點(diǎn),而我們的輸入和輸出層也有許多層。 在此示例中,我使用了1個(gè)隱藏層和1個(gè)輸出層以及輸入層。
多類別分類算法的層:
輸入層:以矢量形式輸入的要素或尺寸。
隱藏層:我們可以在每個(gè)層中包含多個(gè)隱藏層和神經(jīng)元。在此示例中,我們僅使用一個(gè)隱藏層。
輸出層:Soft-max函數(shù)產(chǎn)生分布。
神經(jīng)網(wǎng)絡(luò)架構(gòu)建立在神經(jīng)元的概念上。深度學(xué)習(xí)的一部分,所有神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)(例如NN,CNN,RNN,生成模型,自動(dòng)編碼器,解碼器等)都適用于人工神經(jīng)網(wǎng)絡(luò)。
> Neural Network Architecture for Multi-class Classification
下圖比較了生物神經(jīng)元和人工神經(jīng)元。
> (a) Biological Neural Network (BNN) & (b) Artificial Neural Network (ANN) and representing in BNN
人工神經(jīng)網(wǎng)絡(luò)用于多類別分類。
神經(jīng)網(wǎng)絡(luò)訓(xùn)練可以在前饋傳播或正向傳播和向后傳播或向后傳播中進(jìn)行。
每層中的每個(gè)節(jié)點(diǎn)都是Vector中的Element,每個(gè)層都被矢量化。前饋傳播結(jié)合了權(quán)重和輸入(輸入層中的輸入和隱藏層中的節(jié)點(diǎn))的線性組合,可以使用矢量和矩陣乘積以及偏置矢量的相加來(lái)完成。
由于我們有2個(gè)隱藏層和輸出層,因此,前饋和后向傳播將分兩個(gè)階段進(jìn)行計(jì)算。
讓我們?cè)谏鲜錾窠?jīng)網(wǎng)絡(luò)中定義中間變量。
> Defining Intermediate Variables in Neural Network
知道參數(shù)的尺寸:
> Dimensions of Intermediate Variables
我在本文中詳細(xì)介紹了深度學(xué)習(xí)中的矩陣和向量。
讓我們計(jì)算第一階段的中間變量。
> Calculation of Feedforward Propagation for Hidden Layer
讓我們計(jì)算第二階段的中間變量?,F(xiàn)在,輸入已隱藏到輸出層。
> Calculation of Feedforward Propagation for Output Layer
前饋傳播完成后,反向傳播開始。 BP分兩個(gè)階段完成。 輸出層的階段1和隱藏層的階段2。
第一階段反向傳播:
BP從前饋停止處開始。從成本函數(shù)J或H開始。BP涉及許多數(shù)學(xué)主題,例如實(shí)數(shù)分析,數(shù)值計(jì)算,凸優(yōu)化,諸如梯度下降及其變型算法的優(yōu)化算法,矩陣演算/矢量演算等。
Sigmoid和Softmax的鏈規(guī)則及其導(dǎo)數(shù):
> Chain Rule and function Derivatives
中間變量和反向傳播:
> Back Propagation goes in reverse order of Forward Propagation
多類別分類的成本函數(shù)
> Cost Function for Multi-Class Classification
我們針對(duì)每一層中的參數(shù)區(qū)分成本函數(shù)。即
> Generic Formula for param derivative
從輸出層參數(shù)開始,可以在數(shù)學(xué)上對(duì)其進(jìn)行描述
> Output Layer's Weight param derivatives
在上式中,第一部分的導(dǎo)數(shù)是
> Derivative of first part
接下來(lái)關(guān)于方程式(1)的第二部分進(jìn)行微分
> Derivative of second part
> Substituting Derivatives of first and second parts in equation (1)
同樣,我們需要針對(duì)偏見區(qū)分J
> Differentiating Cost J with respect to Bias in output layer
第二階段反向傳播:
在這里,我正在擴(kuò)展鏈?zhǔn)芥溄有g(shù)語(yǔ),并在確切的位置進(jìn)行替換,而沒(méi)有給出太多解釋,因?yàn)檫@有可能引起混淆。
> Phase-2 Back Propagation
下圖清楚地說(shuō)明了每一層的正向和反向傳播輸出。
> Forward and Back Propagation yields activation and derivatives of parameters
簡(jiǎn)單來(lái)說(shuō),我們訓(xùn)練整個(gè)訓(xùn)練集,一旦完成紀(jì)元數(shù)或達(dá)到極小值,所有參數(shù)都將得到優(yōu)化,并在未知數(shù)據(jù)上提供良好的結(jié)果以及準(zhǔn)確性。 納入學(xué)習(xí)(ML / DL)。
數(shù)學(xué)和統(tǒng)計(jì)學(xué)科目非常重要,沒(méi)有像沒(méi)有靈魂的人體那樣的東西。只要需要掌握和開始工作的科目,就可以將數(shù)學(xué)科目視作報(bào)酬至少需要了解AI算法中的任何主題或概念。
(本文由聞數(shù)起舞翻譯自Particles, Symmetries, And The Weird World Of Quantum Mechanics的文章《AI & Mathematics》,轉(zhuǎn)載請(qǐng)注明出處,原文鏈接:https://medium.com/swlh/ai-mathematics-699a9ea2a0d6)
聯(lián)系客服