文化墙创意设计图片,网络优化工程师发展前景,wordpress 卡片主题,新桥网站建设生成算法尝试去找这个数据到底是怎么生成的#xff08;产生的#xff09;#xff0c;然后再对一个信号进行分类。基于你的生成假设#xff0c;哪个类别最有可能产生这个信号#xff0c;这个信号就属于那个类别。 判别模型不关心数据是怎么生成的#xff0c;它只关心信号之… 生成算法尝试去找这个数据到底是怎么生成的产生的然后再对一个信号进行分类。基于你的生成假设哪个类别最有可能产生这个信号这个信号就属于那个类别。 判别模型不关心数据是怎么生成的它只关心信号之间的差别然后模型学习到差别之后简单地对给定的一个信号进行分类。 在机器学习中无监督学习Unsupervised learning最典型的就是聚类事先不知道样本的类别通过某种办法把相似的样本放在一起归位一类而监督学习Supervised learning就是有训练样本带有属性标签也可以理解成样本有输入有输出意味着输入和输出之间有一个关系监督学习算法就是要发现和总结这种“关系”。 以下是一些常用的监督型学习方法 一. K-近邻算法k-Nearest NeighborsKNN 算法的步骤为 1计算测试数据与各个训练数据之间的距离 2按照距离的递增关系进行排序 3选取距离最小的K个点 4确定前K个点所在类别的出现频率 5返回前K个点中出现频率最高的类别作为测试数据的预测分类。 二. 决策树Decision Trees 决策树是一个树结构可以是二叉树或非二叉树。其每个非叶节点表示一个特征属性上的测试每个分支代表这个特征属性在某个值域上的输出而每个叶节点存放一个类别。使用决策树进行决策的过程就是从根节点开始测试待分类项中相应的特征属性并按照其值选择输出分支直到到达叶子节点将叶子节点存放的类别作为决策结果。 相比贝叶斯算法决策树的优势在于构造过程不需要任何领域知识或参数设置。 构造决策树的关键步骤是分裂属性。所谓分裂属性就是在某个节点处按照某一特征属性的不同划分构造不同的分支其目标是让各个分裂子集尽可能地“纯”。尽可能“纯”就是尽量让一个分裂子集中待分类项属于同一类别。分裂属性分为三种不同的情况 1、属性是离散值且不要求生成二叉决策树。此时用属性的每一个划分作为一个分支。 2、属性是离散值且要求生成二叉决策树。此时使用属性划分的一个子集进行测试按照“属于此子集”和“不属于此子集”分成两个分支。 3、属性是连续值。此时确定一个值作为分裂点split_point按照 split_point 和 split_point 生成两个分支。 构造决策树的关键性内容是进行属性选择度量属性选择度量算法有很多这里介绍ID3和C4.5两种常用算法。 1 ID3算法 从信息论知识中我们直到期望信息越小信息增益越大从而纯度越高。所以ID3算法的核心思想就是以信息增益度量属性选择选择分裂后信息增益最大的属性进行分裂。 熵entropy是描述信息不确定性杂乱程度的一个值。设S是用类别对训练元组进行的划分那么S的信息熵的定义如下 其中n是类别的数目p(xi)表示选择xi类别的概率可用类别数量除以总数量估计。 现在我们假设将S按属性A进行划分则S的条件信息熵也就是A对S划分的期望信息为 其中属性A拥有m个类别例如属性A是体重有轻、中、重三个选项那么m3p(tj)表示类别tj属性A中所有具有第j个特性的所有数据的数量与S总数量的比值H(tj)表示子类别tj的熵即S中拥有属性tj的子元组划分的熵。 而信息增益Information gain即为两者的差值 ID3算法就是在每次需要分裂时计算每个属性的增益率然后选择增益率最大的属性进行分裂。如此迭代直至结束。这里有一个ID3算法的实例过程。 对于特征属性为离散值可以直接使用ID3算法进行划分。对于特征属性为连续值可以如此使用ID3算法先将D中元素按照特征属性排序则每两个相邻元素的中间点可以看做潜在分裂点从第一个潜在分裂点开始分裂D并计算两个集合的期望信息具有最小期望信息的点称为这个属性的最佳分裂点其信息期望作为此属性的信息期望。 2 C4.5算法 ID3算法存在一个问题就是偏向于多值属性例如如果存在唯一标识属性ID则ID3会选择它作为分裂属性这样虽然使得划分充分纯净但这种划分对分类几乎毫无用处。ID3的后继算法C4.5使用增益率gain ratio的信息增益扩充试图克服这个偏倚。严格上说C4.5是ID3的一个改进算法。 C4.5首先定义了分裂信息Split Information 其中各符号意义与ID3算法相同然后增益率Gain Ratio被定义为 C4.5选择具有最大增益率的属性作为分裂属性连续属性要用增益率离散化。C4.5算法有如下优点产生的分类规则易于理解准确率较高。其缺点是在构造树的过程中需要对数据集进行多次的顺序扫描和排序因而导致算法的低效。此外C4.5只适合于能够驻留于内存的数据集当训练集大得无法在内存容纳时程序无法运行。 在决策树构造过程中如果所有属性都作为分裂属性用光了但有的子集还不是纯净集即集合内的元素不属于同一类别。在这种情况下由于没有更多信息可以使用了一般对这些子集进行“多数表决”即使用此子集中出现次数最多的类别作为此节点类别然后将此节点作为叶子节点。 在实际构造决策树时通常要进行剪枝这是为了处理由于数据中的噪声和离群点导致的过分拟合问题。剪枝有两种先剪枝——在构造过程中当某个节点满足剪枝条件则直接停止此分支的构造后剪枝——先构造完成完整的决策树再通过某些条件遍历树进行剪枝。悲观错误剪枝PEP算法是一种常见的事后剪枝策略。 三. 朴素贝叶斯Naive Bayesian 贝叶斯分类是一系列分类算法的总称这类算法均以贝叶斯定理为基础故统称为贝叶斯分类。朴素贝叶斯算法Naive Bayesian) 是其中应用最为广泛的分类算法之一。朴素贝叶斯分类器基于一个简单的假定给定目标值时属性之间相互条件独立。朴素贝叶斯的基本思想是对于给出的待分类项求解在此项出现的条件下各个类别出现的概率哪个最大就认为此待分类项属于哪个类别。 首先给出条件概率的定义P(A | B)表示事件A在B发生下的条件概率其公式为 贝叶斯定理用来描述两个条件概率之间的关系贝叶斯定理公式为 朴素贝叶斯分类算法的具体步骤如下 1设x {a1,a2,...,am}为一个待分类项a1,a2,...,am为x的m个特征属性; 2设有类别集合C {y1,y2,...,yn}即共有n个类别 3依次计算x属于各项分类的条件概率即计算P(y1 | x)P(y2 | x)… P(yn | x) 注意算法的下一步骤是对比这些结果的大小由于各项分母都是P(x)所以分母不用计算。分子部分中P(yn)和P(ai | yn)都是通过样本集统计而得其中P(yn)的值为样本集中属于yn类的数量与样本总数量之比P(ai∥yn)的值为yn类中满足属性ai的数量与yn类下样本总数量之比。 这样的计算方式符合特征属性是离散值的情况如果特征属性是连续值时通常假定其值服从高斯分布也称正态分布高斯分布即 那么P(ai | yn)的值为 其中ηyn 和 σyn 分别为训练样本yn类别中ai属性项对应的高斯分布的均值和标准差。 对于P(a | y)0的情况当某个类别下某个属性项划分没有出现时就是产生这种现象这会令分类器质量大大降低。因此引入Laplace校准对每个类别下所有属性划分的计数加1这样如果训练样本集数量充分大时并不会对结果产生影响也避免了乘积为0的情况。 4比较3中所有条件概率的大小最大的即为预测分类结果即 四. 逻辑回归Logistic Regression 我们知道线性回归就是根据已知数据集求一线性函数使其尽可能拟合数据让损失函数最小常用的线性回归最优法有最小二乘法和梯度下降法。而逻辑回归是一种非线性回归模型相比于线性回归它多了一个sigmoid函数或称为Logistic函数。逻辑回归是一种分类算法主要用于二分类问题。 对于线性回归损失函数是欧式距离指标但这样的Cost Function对于逻辑回归是不可行的因为在逻辑回归中平方差损失函数是非凸我们需要其他形式的Cost Function来保证逻辑回归的成本函数是凸函数。我们选择交叉熵损失函数。 与线性回归相似可以采用梯度下降法寻优也可以采用其他方法。 题外话对数似然函数与交叉熵损失函数的联系 对数似然函数 交叉熵损失函数 x 表示原始信号z 表示重构信号。损失函数的目标是最小化似然函数的目标则是最大化二者仅相差一个负号。 https://blog.csdn.net/zxrttcsdn/article/details/79641054 https://www.leiphone.com/news/201704/w6SbD8XGrvQ9IQTB.html https://www.cnblogs.com/leoo2sk/archive/2010/09/19/decision-tree.html https://blog.csdn.net/lanchunhui/article/details/75433608 转载于:https://www.cnblogs.com/boceng/p/11321534.html