python&AI

    技术2022-07-10  128

    文章目录

    人工智能三个阶段 机器学习Tom Mitchel定义的过程与统计学&计量经济学关系分类基本过程应用准确度结果分类检验指标 降维方法非深度学习SVMRandom Forest 深度学习神经网络激活函数传播概念

    人工智能

    三个阶段

    弱人工智能 只能完成特定任务(驾驶,翻译)通用人工智能强人工智能 超越人类

    机器学习

    Tom Mitchel定义的过程

    任务训练过程模型表现

    与统计学&计量经济学关系

    机器学习:侧重Optimization实现Prediction统计学:Statistically modeling and inference计量经济学:causal inference

    分类

    Supervised learning 数据已经打标签Unsupervised learning 数据无标签,用于聚类,主成分分析Reinforcement Learning 属于无监督学习,与环境交互获得反馈

    基本过程

    建立模型确定loss Function使用训练集样本数据进行训练和优化求解(梯度下降Gradient Decent)使用测试样本检验模型应用

    应用

    线性回归(预测问题) h θ ( x ) = θ 0 + θ 1 x h_θ(x)=θ_0+θ_1x hθ(x)=θ0+θ1x 损失函数 J ( θ 0 , θ 1 ) = 1 m ∑ i = 1 m ( h ( x ( i ) ) − y ( i ) ) 2 J(θ_0,θ_1)=\frac{1}{m}\sum_{i=1}^{m}(h(x^{(i)})-y^{(i)})^2 J(θ0,θ1)=m1i=1m(h(x(i))y(i))2逻辑回归(分类问题) h θ ( x ) = g ( θ T x ) h_θ(x)=g(θ^Tx) hθ(x)=g(θTx) g ( z ) = 1 1 + e − z g(z)=\frac{1}{1+e^{-z}} g(z)=1+ez1 损失函数 C o s t ( h θ ( x ) , y ) = { − log ⁡ ( h θ ( x ) ) i f y = 1 − log ⁡ ( 1 − h θ ( x ) ) i f y = 0 Cost(h_θ(x),y) =\begin {cases}-\log(h_θ(x))\quad &if\quad y=1\\-\log(1-h_θ(x))\quad &if\quad y=0 \end{cases} Cost(hθ(x),y)={log(hθ(x))log(1hθ(x))ify=1ify=0

    准确度

    结果分类

    True positivesFalse positivesFalse negativesTrue negateive

    检验指标

    如果检验结果太好还要看下样本是否均衡

    accuracy accuracy=(TP+TN)/(P+N)error rate error rate=(FP+FN)/(P+N)precision 精度 precision=TP/(TP+FP)recall 查全率 recall=TP/(TP+FN)F1 scoreReceiver Operating Characteristic

    降维方法

    主成分分析(PCA)因子分析独立成分分析

    非深度学习

    SVM

    按监督学习方式对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane).SVM可以通过核方法(kernel menthod)进行非线性分类

    Random Forest

    利用多棵决策树对样本进行训练并预测的一种分类器,是一种通过建立多个分类器模型,各自独立学习和预测并将结果合成单一预测的集成学习方法

    深度学习

    深度学习的本质是降维,适应于未做任何处理的原始数据,但也有以下缺点:

    黑盒子,不可解释性受限于训练样本的局限性(由于局部样本,从而局部最优)只能完成单元工作,无法通用容易被反向攻击(欺骗神经网络)不能使用其他领域已有的知识依赖专家设计合理模型

    神经网络

    全连接网络每一层神经元与上一层/下一层所有神经元

    激活函数

    sigmoid σ ( a ) = 1 1 + e − a \sigma(a)=\frac{1}{1+e^{-a}} σ(a)=1+ea1 ∂ σ ( a ) ∂ a = σ ( a ) ( 1 − σ ( a ) ) \frac{\partial\sigma(a)}{\partial a}=\sigma (a)(1-\sigma(a)) aσ(a)=σ(a)(1σ(a)) 取值范围:(0,1)TanH t a n h ( a ) = e a − e − a e a + e − a tanh(a)=\frac{e^a-e^{-a}}{e^a+e^{-a}} tanh(a)=ea+eaeaea ∂ t a n h ( a ) ∂ a = 4 ( e a + e − a ) 2 \frac{\partial tanh(a)}{\partial a}=\frac{4}{(e^a+e^{-a})^2} atanh(a)=(ea+ea)24ReLu r e l u ( a ) = m a x ( 0 , a ) relu(a)=max(0,a) relu(a)=max(0,a) ∂ r e l u ( a ) ∂ a = { 0 , i f a ≤ 0 1 , i f a > 0 \frac{\partial relu(a)}{\partial a}=\begin{cases}0,if\quad a\leq0\\1,if\quad a>0\end{cases} arelu(a)={0,ifa01,ifa>0softmax σ i ( a ) = e a i Σ j e a j \sigma_i(a)=\frac{e^{a_i}}{\Sigma_je^{a_j}} σi(a)=Σjeajeai ∂ σ i ( a ) ∂ a j = σ i ( δ i j − σ j ( a ) ) δ i j = { 1 , i f i = j 0 , i f i ≠ j \frac{\partial\sigma_i(a)}{\partial a_j}=\sigma_i(\delta_{ij}-\sigma_j(a)) \quad \delta_{ij}=\begin{cases}1,if \quad i=j\\0,if\quad i\neq j\end{cases} ajσi(a)=σi(δijσj(a))δij={1,ifi=j0,ifi=j softmax是一个多分类判定函数,输出结果为每种分类的概率,通常用于输出层

    传播

    Forward propagationBack propagation

    概念

    Hyper-parameters 超参数:神经网络训练过程中不变的参数:网络层数,每层神经元数量,学习率Adaptive Learning Rate 自适应学习率:训练过程中学习率不再是固定的,而是根据梯度大小,学习速度,每个参数的大小变化Adam 自适应惯性学习率调整:训练过程学习率自适应调整,且具有惯性特点,可以跳过局部最优点Stochastic Gradient Descent 随机梯度下降:SGDTraining,validation,test 训练集:训练模型 验证集:检查是否过拟合 测试集:检查是否有效 以上三者一般是8:1:1Epoch,Batch 全样本集: Batch:underfitting,ideal fit,overfitting 过拟合: 一般有以下两种方案:Early Stopping:训练集损失函数在下降但是验证集的损失函数在上升就提前结束Regularization(正则化) 对参数值进行惩罚(参数值计入损失函数)随机丢弃一些神经元(Dropout) One-hot 独热编码:对于一些类别信息,由于不适用加法,而是使用一个向量来表示 eg: 香蕉[1,0,0],苹果[0,1,0],橘子[0,0,1]相对于香蕉3,苹果2,橘子1(会产生香蕉=苹果+橘子) 包括年龄也应该使用独热编码
    Processed: 0.008, SQL: 9