算法总结

目录

一、决策树

二、朴素贝叶斯

三、SVM支持向量机

四、KNN

1.KNN工作原理

2.距离如何计算

五、K-Means

1.K-Means简介:

2.K-Means工作原理

3.K-Means总结

六、EM算法-最大期望算法

(一)EM算法理解:

(二)EM和K-Means的异同:

七、关联挖掘规则

(一)关联规则介绍

(二)学习目的

(三)概念

(四)Apriori算法的工作原理

八、PageRank

1.PageRank的应用场景

2.PageRank需要思考的三个问题

3.如何使用工具实现PageRank算法

4.networkx有哪些常用的操作

九、AdaBoost算法

(一)AdaBoost简介

十、数据分析实战

十一、深度学习入门


一、决策树

  • 1.构造:构造的过程就是选择把什么属性作为节点的过程,一个决策树包括根节点、子节点、叶子节点,在构造过程中,要解决三个问题,选择哪个属性作为根节点,选择哪些属性作为子节点,选择哪些属性作为叶子节点
  • 2.剪枝:决策时构造出来之后,我们要对决策树进行剪枝,剪枝就是给决策树瘦身,这一步想实现的目标就是不需要太多的判断,同样可以得到不错的结果,之所以这样做,是为了防止‘过拟合’现象的发生。剪枝分为预剪枝和后剪枝。
  • 3.纯度:让目标的分歧量最小
  • 4.信息熵:离散事件出现的概率存在着不确定性,为了衡量这种不确定性,引入了信息熵,它代表着信息的不确定度,当不确定性越大时,它所包含的信息量越大,信息熵也就越高。信息熵越大,纯度越低。
  • 5.信息增益:ID3算法就是信息增益,信息增益就是:划分可以带来纯度的提升,信息熵的下降。它的计算公式:父亲节点的信息熵减去所有子节点的信息熵。选择信息增益最大的作为节点。
  • ID3算法有一个缺陷:有些属性对分类没有太多的作用,他们仍然可能会被选为最优属性。
  • 这个时候,我们就要做好特征向量的选择。
  • 6.信息增益率:针对ID3算法的缺陷,C4.5算法采用信息增益率的方式来选择属性。信息增益率=信息增益/属性熵。当属性有很多值时,信息增益虽然变大了,但属性熵也会变大,所以整体的信息增益率并不大。
  • 7.C4.5算法在哪些方面对ID3算法进行了改进呢?采用信息增益率、悲观剪枝、离散化处理连续属性、处理缺失值
  • 8.CART算法:英文全称classification and regression tree,中午叫做分类回归树。ID3和C4.5可以生成二叉树或多叉树,而CART只支持二叉树。CART比较特殊,即可以做分类树,也可以做回归树。作为分类树,cart采用基尼系数作为节点划分的依据,得到的是离散结果,也就是分类结果;作为回归树,cart可以采用最小绝对偏差或者最小二乘偏差作为节点划分的依据,得到的是连续值,即回归预测结果。CART在构造分类时,会选择基尼系数最小的属性作为属性的划分。当基尼系数越小时,说明样本的差异性越小,不确定程度越低。
  • 分类树:可以处理离散数据,它输出的是样本的类别;
  • 回归树:可以对连续的数值进行预测,它输出的是一个数值。
  • 9.三种决策树之间在属性选择标准的差异
  • ID3算法:基于信息增益做判断,选择信息增益最大的;
  • C4.5算法:基于信息增益率做判断,选择信息增益率最大的;
  • CART算法:分类树基于基尼指数,回归树基于偏差。采用基尼系数小的作为节点;
  • 10.实战中,如何构造决策树模型
  • 1.进行数据探索,对数据进行清洗(去除空值或者补充空值)、特征选择
  • 2.构建决策树模型
  • 3.模型预测和评估

    二、朴素贝叶斯

    1.贝叶斯介绍
    贝叶斯定理:用先验概率和条件概率估计后验概率,解决了概率论中‘逆向概率’的问题。
    朴素贝叶斯:假定对象的不同属性之间是相互独立的,也就是每个类别的概率是相互独立的。
    2.朴素贝叶斯应用场景:
    朴素贝叶斯分类最适合的场景就是分本分类、情感分析和垃圾邮件识别
    其中情感分析和垃圾邮件识别都是通过文本来进行判断,这三个场景的本质都是文本分类,这也是朴素贝叶斯最擅长的地方。所以朴素贝叶斯也常用语自然语言处理NLP的工具
    3.朴素贝叶斯的工作流程:
    对文档提取分词。这些分词就是贝叶斯分类中最重要的特征属性。基于这些分词,我们得到分词的权重,即特征矩阵。通过特征矩阵与分类结果,我们就可以创建朴素贝叶斯分类器,然后用分类器进行预测。最后预测结果与实际结果做对比,即可以得到分类器在测试集上的准确率。
    3.1.准备阶段:确定特征属性,并对每个特征属性进行适当划分,然后人工对一部分数据进行分类,形成训练样本
    比如:针对水果分类,把水果的各种属性转化为计算机可以理解的语言,我们这这些数据称为训练样本。
    3.2:训练阶段-模型训练
    计算每个类别在训练样本中的出现频率及每个特征属性划分对每个类别的条件概率。
    输入是特征属性和训练样本,输出是分类器。
    针对当前数据,让计算机统计每种水果、属性出现的先验概率,以及在某个水果分类下某种属性出现的条件概率。这个过程称为基于样本的训练。
    3.3:应用阶段
    使用分类器对新数据进行分类,输入是分类器和新数据,输出是新数据的分类结果。
    对于一个新水果的属性数据,得到该水果属于水果分类的概率,实现了分类的目的。这个过程称为预测。
    4.如何对文档进行分类
    1.文档输入,读取训练集和测试集文档
    2.对文档进行分词(分词意思就是:把句子分成词组)
    3.加载停用词表(为了节省空间和计算时间,把词频TF高IDF低的词,去掉)
    4.计算单词的权重TF-IDF值,获得特征矩阵
    5.训练模型,获得朴素贝叶斯分类器
    6.获取测试集的特征矩阵,使用生成的分类器做预测
    7.计算模型准确率
    详细流程:
    1.对文档进行分词
    英文文档:NTLK包,NTLK中包含了英文的停用词stop words、分词和标注方法
    中文文档:jieba包,jieba包含了中文的停用词stop words和分词方法
    2.加载停用词表
    我们需要自己读取停用词表文件,从网上找到停用词保存在stop_words.txt中,然后利用python读取文件,保存在stop_words停用词数组中
    3.计算单词的权重
    我们这里使用TfidfVectorizer,然后使用fit_transform方法进行拟合,得到TF-IDF特征空间features,可以理解为选出来的分词就是特征。
    4.生成朴素贝叶斯分类器
    我们将特征训练集的特征空间train_features,以及训练集对应的分类train_labels传递给贝叶斯分类器clf,它会自动生成一个符合特征空间和对应分类的分类器。
    这里要选择分类器:多项式贝叶斯分类器
    5.使用生成的分类器做预测
    用训练集的分词创建一个TfidfVectorizer,然后使用同样的stop_words和max_df,然后用TfidfVectorizer对测试集内容进行fit_transform拟合,得到测试集的特征矩阵,然后用训练好的分类器对新数据做预测,方式使用predict函数,传入测试集的特征矩阵test_features,得到分类结果predicted_labels
    6.计算准确率
    计算准确率实际上就是对分类模型进行评估 ,通过训练集得到朴素贝叶斯分类器,然后将分类器应用于测试集,并与实际结果做对比,最终得到测试集的分类准确率。
    在sklearn提供了metrics包,在metrics包中提供accuracy_score函数,方便我们队实际结果也预测结果进行对比,得出模型的准确率。
    5.朴素贝叶斯常用概念介绍
    高斯朴素贝叶斯:特征变量是连续变量,符合高斯分布,比如:人的身高、体重
    多项式朴素贝叶斯:特征变量是离散变量,符合多项分布,在文档分类中特征变量体现在一个单词出现的次数,或者说单词的TF-IDF值等
    伯努力朴素贝叶斯:特征变量是布尔变量,符合0/1分布,在文档分类中特征是单词是否出现
    伯努力是以文件为粒度,如果该单词在某文件中出现了即为1,否则为0
    多项式以单词为粒度,计算在某个文件中出现的具体次数
    高斯朴素贝叶斯适合处理特征变量是连续变量,且符合正态分布(高斯分布)
    TF-IDF值:TF-IDF实际上是两个词组term frequency和inverse document frequency的总称,分别代表词频和逆向文档词频。
    TF-IDF是一个统计方法,用来评估某个词语对于一个文件集或文档中的其中一份文件的重要程度
    词频TF:计算一个单词在文档中出现的次数,它认为一个单词的重要性和它在文档中出现的次数成正比
    逆向文档频率IDF:是指一个单词在文档中的区分度,它认为一个单词出现在的文档书越少,就越能通过这个单词把该文档和其它文档区分开。
    IDF越大,就代表该单词的区分度越大
    TF-IDF是TF和IDF乘积,选择在一个文档中出现的次数多,同时又很少出现在其它文档的单词,这样的单词适合用于分类。

    三、SVM支持向量机

    SVM英文名support vector machine,中文名支持向量机。SVM是有监督的学习模型。
    SVM在文本分类尤其是针对二分类任务性能卓越。
    SVM理解:SVM就是帮我们找到一个超平面,这个超平面将不同的样本划分开,同时使得样本集中的点到这个超平面的分类间隔最大化,这个超平面就是SVM的分类器。
    1.SVM总结
    1.完全线性可分情况下的线性分类器,也就是线性可分的情况,是最原始的SVM,它最核心的思想就是找到最大的分类间隔。
    2.大部分线性可分情况下的线性分类器,引入了软间隔的概念,软间隔就是允许一定量的样本分类错误。
    3.线性不可分情况下的非线性分类器,引入了核函数,它让原有的样本空间通过核函数投射到了一个高维的空间中,从而变得线性可分。
    2.SVM概念介绍
    有监督学习模型:指的是我们需要事先对数据打上分类的标签,这样机器就知道数据属于哪个分类。
    无监督学习:数据没有被打上分类的标签,需要数据进行聚类。
    SVM作为有监督的学习模型,可以帮我们进行模式识别、分类以及回归分析。
    硬间隔:硬间隔指的是分类完全正确,不能存在分类错误的情况。
    软间隔:软间隔允许一定量的样本分类错误。
    核函数:它可以将样本从原始空间映射到一个更高维的特质空间中,使得样本在新的空间中线性可分。解决样本线性不可分的情况。
    3.SVM实战
    SVM是有监督的学习模型,我们需要事先对数据打上分类的标签,通过求解最大分类间隔来求解二分类问题。如果要求解多分类问题,可以将多个二分类器组合起来形成一个多分类器。SVM既可以做分类,又可以做回归。
    1.当做分类的时候,我们使用SVC或LinerSVC,c是classification。
    2.当做回归的时候,我们使用SVR或LinerSVR,r是regression。
    SVC或LinerSVC是个线性分类器,用于处理线性可分的数据,只能使用线性核函数。
    如果是处理非线性的数据,需要用到SVC,既可以使用线性核函数也可以使用高维的核函数。
    |函数名称|优点|缺点|
    |:——|:——|:——|
    |liner:线性核函数|在数据线性可分的情况下使用,运算速度快,效果好|不能处理线性不可分的数据|
    |poly:多项式核函数|可以将数据从低维空间映射到高维空间|参数比较多,计算量大|
    |rbf:高斯核函数(默认)|1.可以将数据从低维空间映射到高维空间
    2.相对多项式核函数,所需参数较少,通常性能不错,所以它是默认使用的核函数| |
    |sigmoid:sigmoid核函数|sigmoid经常用在神经网络的映射中,当选用sigmoid核函数时,SVM实现的是多层神经网络| |
    4.SVM实战流程
    1.加载数据源
    2.对数据进行探索,查看样本特征和特征值,这个过程可以使用数据可视化。
    目的:对数据加深了解,判断对哪些数据进行清洗(删除字段、填充字段)
    3.对数据进行清洗
    4.对特征字段进行筛选,观察各个变量之间的关系,可以使用热力图查看各个变量之间的关系。目的:对数据进行降维,用少量的特征代表数据的特性,增强分类器的泛化能力,避免数据过拟合。
    5.特征选择之后,开始准备训练集数据和测试集数据
    6.开始训练模型之前,对数据进行规范化,目的:让数据在同一个量级上,避免因维度问题造成数据误差。
    7.创建分类器,用训练集数据做训练
    8.用测试集做预测,然后查看准确率

    四、KNN

    1.KNN工作原理

    1.计算待分类物体与其他物体之间的距离
    2.统计距离最近的k个邻居
    3.对于k个最近的邻居,他们属于哪个分类最多,待分类物体就属于哪一类
    2.knn既可以做分类,也可以做回归
    3.knn缺点
    knn需要计算测试点与样本之间的距离,当数据量大的时候,计算量是非常庞大的,需要大量的存储空间和计算时间。另外如果样本分类不均衡,比如有些分类的样本非常少,那么该类别的分类准确率就会低很多。
    注意:
    1.关于k值的取值
    如果k值较小,就相当于未分类物体与它的邻居非常接近才行,如果邻居是个噪声点,那么未分类物体也会产生误差,这样knn分类会产生过拟合。
    如果k值较大,相当于距离过远的点也会对未知物体的分类产生影响,虽然这种情况鲁棒性强,但是容易产生欠拟合情况,没有把未分类物体真正分类出来。
    在工程上,我们采用交叉验证的方式选择k值。

    2.距离如何计算

    2.1:欧式距离
    2.2:曼哈顿距离
    2.3:闵可夫斯基距离
    2.4:切比雪夫距离
    2.5:余弦距离

    五、K-Means

    1.K-Means简介:

    K-Means是一种非监督学习,解决的是聚类的问题。K代表的是K类,Means代表的是中心。K-Means算法的本质是确定K类的中心点,当我们找到这些中心点,也就完成了聚类。
    一开始我们随机指定中心点,K-Means有自我纠正机制,在不断的迭代过程中,会纠正中心点。中心点在这个迭代过程中,会不断修正,中心点并不是唯一的。

    2.K-Means工作原理

    1.选取K个点作为初始的类中心点,这些点一般都是从数据集随机抽取的。
    2.将每个点分配到最近的类中心点,这就形成了K个类,然后重新计算每个类的中心点
    3.重复第二步,直到类不发生变化,或者我们可以设置最大迭代次数。
    这样即使类中心点发生变化,但是只要达到最大迭代次数就会结束。

    3.K-Means总结

    3.1:如何确定k类的中心点
    先设置k个点作为初始的类中心点,然后中间迭代过程对中心点进行计算,在初始值设置中,会进行n_init次选择,然后选择中心点效果最好的为初始值。在每次分类更新后,都需要重新确认每一类的中心点,一般采用均值的方式进行确认。
    3.2:如何将其他点划分到k类中
    这里实际上是关于距离的定义,在k-means和knn中,我们都可以采用欧氏距离、曼哈顿距离、切雪夫距离、余弦距离等,对于点的划分,就看它距离哪个类的中心点距离最近,就属于哪一类。
    3.3:如何区分k-means和knn这两种算法呢
    首先:k-means是聚类算法,knn是分类算法
    其次:k-mea是非监督学习,也就是事先不需要给出分类标签,knn是有监督学习,需要我们给出训练数据的分类标识
    最好:k值的含义不同,k-means代表k类,knn中的k代表k个最近的邻居

    六、EM算法-最大期望算法

    EM的英文是expectation maximization,所以EM算法也叫最大期望算法。

    (一)EM算法理解:

  • 1.EM算法可以理解是一个框架,在这个框架可以采用不同的模型来用EM求解,常用的EM聚类有GMM高斯混合模型、HMM隐马尔科夫模型
  • GMM高斯混合模型:通过概率密度来进行聚类,聚成的类符合高斯分布
  • HMM隐马尔科夫模型:用到了马尔可夫过程,在这个过程,我们通过状态转移矩阵来计算转态转移的概率。HMM在自然语言处理和语音识别领域有广泛的应用。
  • 2.通常,我们可以假设样本是符合高斯分布的(正态分布)。每个高斯分布都属于这个模型的组成部分,要分成k类就相当于是k个组成部分。这样我们可以先初始化每个组成部分的高斯分布的参数,然后再判断每个样本属于哪个组成部分,这就是E步骤。再通过得到的这些隐含变量结果,反过来求每个组成部分高斯分布的参数,即M步骤。反复EM步骤,直到每个组成部分的高斯分布参数不变为止。
  • 总结:
  • EM算法是不断观察和调整的过程。在EM框架中,我们将潜在类别当做隐藏变量,样本看做观察值,把聚类问题转化为参数估计问题,最终把样本进行聚类。E步相当于通过初始化参数来估计隐含变量。M步通过隐含变量来反推优化参数。最后EM的迭代来得到最终的模型参数。

    (二)EM和K-Means的异同:

    K-Means:通过距离来区分样本之间从差别,且每个样本在计算的时候只能属于一个分类,称之为硬聚类算法。
    EM算法:EM聚类在求解的过程中,实际上每个样本都有一定的概率和每个聚类相关,叫做软聚类算法。
    EM算法和K-Means一样,我们事先知道聚类的个数,但是不知道每个样本分别属于哪一类。
    聚类是无监督学习,我们不需要事先指定聚类的结果,也无法基于先验的结果经验来进行学习。只要在训练过程中传入特征值矩阵,机器就会按照特征值矩阵生成聚类器,然后就可以使用这个聚类器进行聚了。

    七、关联挖掘规则

    (一)关联规则介绍

    关联规则可以让我们从数据集中发现项与项(item与item)之间的关系,‘购物篮分析’就是一个常见的场景。
    这个场景可以从消费者交易记录中发掘商品与商品之间的关联关系,进而通过商品捆绑销售或者相关推荐的方式带来更多销售量。所以说,关联规则挖掘是个非常有用的技术。

    (二)学习目的

    1.搞懂关联规则中的几个重要概念:支持度、置信度、提升度
    2.Apriori算法的工作原理

    (三)概念

    支持度
    支持度是个百分比,它指的是某个商品组合出现的次数与总次数之间的比例。支持度越高,代表这个组合出现的频率越大。
    置信度
    置信度指的是:当你购买了商品A,会有多大概率购买商品B.置信度是个条件概念,就是说在a发生的情况下,b发生的概率
    提升度
    我们在做商品推荐时,重点考虑的是提升度,因为提升度代表的是‘商品a的出现,对商品b的出现概率提升的’程度。提升度(A->B)=置信度(A->B)/支持度(B)。提升度大于1,代表有提升;等于1代表没变化;小于1,代表有下降。

    (四)Apriori算法的工作原理

    Apriori算法其实就是查找频繁项集(frequent itemset)的过程。
    频繁项集:就是支持度大于等于最小支持度(min support)阈值的项集。所以小于最小值支持度的项目就是非频繁项集,大于等于最小支持度的就是频繁项集。
    项集:可以是单个商品,也可以是商品的组合。
    Apriori算法的递归流程:
    1.k=1,计算k项集的支持度
    2.筛选掉小于最小支持度的项集
    3.k=2,两两组合,计算支持度;k++
    Apriori算法的缺点:
    1.可能产生大量的候选集,因为采用组合的方式,把可能的项集都组合出来了。
    2.每次计算都需要重新扫描数据集,来计算每个项集的支持度。
    为此,人们提出了FP-Growth算法,它的特点是:
    创建项头表:为FP构建及频繁项集挖掘提供索引。
    构建FP树。
    1.创建一颗FP树来存储频繁项集,在创建前对不满足最小支持度的项进行删除,减少存储空间。
    2.整个生成过程,只遍历数据集两次,大大减少了计算量。
    在实际工作中,我们常常用FP-Growth算法来做频繁项集的挖掘。
    FP-Growth算法在Apriori算法基础上,做了改进型的创新,重点是在空间和时间复杂度上进行降维,比如采用新型的数据结构,树在存储和检索中是一个非常好用的数据结构。

    八、PageRank

    1.PageRank的应用场景

    PageRank算法经常被用到网络关系的分析中,比如社交网络中计算个人影响力,计算论文的影响力或者网站的影响力,图书影响力等。

    2.PageRank需要思考的三个问题

    1.如果使用工具完成PageRank算法,包括使用工具创建网络图,设置节点、边、权重,并通过创建好的网络图计算节点的PR值;
    2.对于一个实际的项目,比如希拉里的9306封邮件(工具中邮件的数量),如何使用PageRank算法挖掘出有影响力的节点,并且绘制网络图。
    3.如何对创建好的网络图进行可视化,如果网络中的节点数较多,如何筛选重要的节点进行可视化,从而得到精简的网络关系图。

    3.如何使用工具实现PageRank算法

    PageRank算法工具在sklearn中并不存在,有一个关于图论和网络建模的工具叫NetworkX,内置了常用的图与网络分析算法,方便我们进行网络数据分析。
    我们通过networkx创建了一个有向图,设置了节点之间的边。然后使用PageRank函数就可以求得节点的PR值。

    4.networkx有哪些常用的操作

    我们创建了一个图,对节点和边进行设置,就可以找到其中有影响力的节点。原理就是通过PageRank算法。
    1.关于图的创建
    图可以分为有向图和无向图。无向图用nx.Graph()创建, 有向图用nx.DiGraph()创建。
    2.关于节点的增加、删除、查询
    3.关于边的增加、删除、查询

    九、AdaBoost算法

    (一)AdaBoost简介

    在数据挖掘中,分类算法可以说是核心算法,其中AdaBoost算法与随机森林算法一样都属于分类算法中的集成算法。AdaBoost算法英文全称是Adaptive Boosting,中文含义是自适应提升算法。
    (二)每个弱分类器在强分类器中的权重是如何计算的
    答案:实际上在一个有k个若分类器中组成的强分类器中,如果弱分类器的分类效果好,那么权重应该比较大,如果弱分类器的分类效果一般,权重应该降低。所以我们需要基于这个弱分类器对样本的分类错误率来决定它的权重。

    十、数据分析实战

    1.有三个学习目标
    1.创建各种分类器:决策树、svm、knn分类器、adsboost分类器、随机森林分类器
    2.掌握gridsearchcv工具,优化算法模型的参数
    3.使用Pipeline管道机制进行流水线作业。
    4.分类之前,对数据进行清洗、数据规范化、数据降维
    2.随机森林
    随机森立英文是RandomForest,简写RF,实际上是一个包含多个决策树的分类器,每一个子分类器都是一颗CART分类回归树。所以随机森林,既可以做分类,又可以做回归。
    当做分类的时候,输出结果是每个子分类器的分类结果中最多的那个。可以理解每个分类器做投票,选择最多的那个结果。
    做回归的时候,输出结果是每颗CART树的回归结果的平均值。

    十一、深度学习入门

    1.数据挖掘、机器学习和深度学习的区别是什么
    2.深度学习的大脑是如何工作的
    3.深度学习是基于神经网络构建的,都有哪些常用的网络模型
    4.深度学习有三个重要的学习领域,这三个领域分别是什么
  • 数据挖掘:和机器学习在很大程度是重叠的,一些常用的算法,比如k-means、knn、svm、决策树和朴素贝叶斯等,既可以说是数据挖掘算法,又可以说是机器学习算法。
  • 数据挖掘:是从现有的数据中提取规律模式以及使用算法模型。核心是找到这些数据变量之间的关系,我们也会通过数据可视化对变量之间的关系进行呈现,用算法模型挖掘变量之间的关联关系。
  • 通常情况下,我们只能判断出变量a和变量b是有关系的,但并不一定清楚这两者之间的关系,在我们谈论数据的时候,更强调的是从数据中挖掘价值。
  • 机器学习:是人工智能的一部分,通过训练数据和算法模型让机器具有一定的智能,通过已有的数据来学习知识,并通过各种算法模型形成一定的处理能力,比如分类、聚类、预测、推荐能力等。
  • 这样当有新的数据进来时,就可以通过训练好的模型对数据进行预测。也就是通过机器的智能帮我们完成某些特定的任务。
  • 深度学习:属于机器学习的一种,它的目标同样是让机器具有智能,只是与传统的机器学习算法不同,它是通过神经网络来实现的。训练过程中,我们只需要告诉机器输入的数据是什么,以及对应的输出结果即可。通过多次训练,机器中的多层神经网络的参数会自动优化,从而得到一个适应于训练数据的模型。
  • 机器学习和深度学习的区别:
  • 传统的机器学习,我们更关注算法的原理。神经网络,我们更关注的是网络结构,以及网络结构中每层神经元的传输机制。不需要告诉机器具体的特征规律,只需要把想要训练的数据和对应的结果告诉机器大脑即可。
  • 深度学习会自己找到数据的特征规律。传统机器学习,需要人告诉机器采用什么样的算法模型。
  • 机器在训练过程中,神经网络主要是通过前向传播和反向传播机制运作的。
  • 前向传播:数据从输入层传递到输出层的过程叫做前向传播。这个过程的计算结果是通过上一层的神经元的输出经过矩阵运算和激活函数得到的。这样就完成了每层之间的神经元数据的传输。
  • 反向传播:当前向传播作用到输出层得到分类结果之后,我们需要与实际值进行比对,从而得到误差。反向传播也叫做误差反向传播。核心原理是通过代价函数对网络中的参数进行修正,这样更容易让网络参数得到收敛。
  • 所以整个神经网络就是不断通过前向传播和反向传播迭代完成的。当达到指定的迭代次数或收敛标准的时候即可以停止训练。然后我们就可以拿到训练好的网络模型对新的数据进行预测。
  • 常用的神经网络有哪些:
  • 按照中间层功能的不同,神经网络可以分为三种网络结构,分别为FNN、CNN 、RNN
  • FNN:fully connected neural network全连接神经网络
  • CNN:卷积神经网络,图像识别
  • RNN:循环神经网络,语音识别和NLP自然语言处理。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值