①朴素贝叶斯:
原理è 朴素贝叶斯分类器基于一个简单的假定:给定目标值时属性之间相互条件独立。
条件概率:在B已经发生的情况下继续发生A的概率表示为,同样的,综合可得即贝叶斯定理;文字表述为:
P(类别|特征)=(P(特征|类别)*P(类别))/P(特征)
过程è 在劳动能力鉴定系统的使用中,(1)根据政府发布的伤残等级评定标准构建病例词典;(2)首先对病例进行分词,提取关键词的词频向量和数值大小,使用贝叶斯算法判定待鉴定人员的残疾级别;
应用è 垃圾邮件过滤、贷款风险预测
②决策树:
原理è ID3算法主要针对属性选择问题。是决策树学习方法中最具影响和最为典型的算法。该算法是在树的各个内部节点处寻找一个属性,该属性能最好地将训练集进行分类。依据贪婪算法,为了使下一步所需的信息量最小,要求每一次都选择其信息增益最大的属性作为决策树的新节点。(常用算法包括ID3和C4.5)
过程è(1)选择一个特征对样本进行分类,分类的好坏一般取决于样本集分类后的纯度(一般用熵来表示);(2)对分类后的子集递归进行步骤1;ID3步骤:(1)如果数据库中的数据都属于同一个类,N就是树叶,在树叶上 标出所属的类;如果数据表中没有其他属性可以考虑,则N也是树叶,按照少数服从多数的原则在树叶上标出所属类别。否则,根据平均信息期望值E或GAIN值选出一个最佳属性作为节点N的测试属性;(2)节点属性选定后,对于该属性中的每个值:从N生成一个分支,并将数据表中与该分支有关的数据收集形成分支节点的数据表,如果分支数据表非空,则运用以上方法从该节点进一步建立子树。
应用è 保险行业和医疗行业的辅助诊断
③KNN算法
原理è kNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。kNN方法在类别决策时,只与极少量的相邻样本有关。由于kNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,kNN方法较其他方法更为适合。
过程è (1)准备数据,对数据进行预处理;(2)选用合适的数据结构存储训练数据和测试元组;(3)设定参数,如k;(4)维护一个大小为k的的按距离由大到小的优先级队列,用于存储最近邻训练元组。随机从训练元组中选取k个元组作为初始的最近邻元组,分别计算测试元组到这k个元组的距离,将训练元组标号和距离存入优先级队列;(5)遍历训练元组集,计算当前训练元组与测试元组的距离,将所得距离L 与优先级队列中的最大距离Lmax;(6)进行比较。若L>=Lmax,则舍弃该元组,遍历下一个元组。若L < Lmax,删除优先级队列中最大距离的元组,将当前训练元组存入优先级队列;(7)遍历完毕,计算优先级队列中k 个元组的多数类,并将其作为测试元组的类别;(8)测试元组集测试完毕后计算误差率,继续设定不同的k值重新进行训练,最后取误差率最小的k 值。
应用è 文本分类、手写体识别
④k-means算法
原理è K-means算法是很典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标。注意:聚类个数K和初始聚类中心不易确定,会对算法产生较大的影响。
过程è (1)确定聚类中心;(2)计算每个簇到聚类中心的距离;(3)根据这个距离划分簇群;(4)计算簇群的平均位置,移动聚类中心到该位置上;(4)重复(2)(3)步,直到聚类中心不再移动,说明该算法收敛,算法结束。
应用è 客户分类、文档分类、物品传输优化(使用K-means寻找最佳地点)
⑤线性回归
原理è 通过最小化损失函数获得最佳线性方程描述实际问题;
过程è (1)根据实际问题建立线性方程:;(2)建立损失函数方程:;(3)通过梯度下降或最小二乘法最小化损失函数;(4)求得线性方程中的未知变量。
应用è 商品、市场的定价、预测与机器学习中参数调优
⑥apriori算法
原理è 使用逐层迭代方法并限制候选集的产生找出频繁项集;
过程è 首先扫描数据库,累计每项产生动作的个数,并收集满足最小支持度的项,找出频繁1项集的集合,记为L1,通过置信度限制不能达到要求的项集(剪枝步),并通过L1自行迭代出L2(连接步),同样限制未达到要求的频繁2项集,最终直到不能再找到频繁K项集。
应用è 广泛应用于商业信息分析、活动推广中;
⑦FP-tree
原理è 作为一个挖掘频繁项集的算法,Apriori算法需要多次扫描数据,I/O是很大的瓶颈。为了解决这个问题,FP Tree算法(也称FP Growth算法)采用了一些技巧,无论多少数据,只需要扫描两次数据集,因此提高了算法运行的效率。
过程è (1)第一次扫描数据,得到所有频繁一项集的的计数。然后删除支持度低于阈值的项,将1项频繁集放入项头表,并按照支持度降序排列;(2)第二次扫描数据,对于每条数据剔除非频繁1项集,并按照支持度降序排列。(3逐条读入排序后的数据集,插入FP树,插入时按照排序后的顺序,插入FP树中,排序靠前的节点是祖先节点,而靠后的是子孙节点。如果有共用的祖先,则对应的公用祖先节点计数加1。插入后,如果有新节点出现,则项头表对应的节点会通过节点链表链接上新节点。直到所有的数据都插入到FP树后,FP树的建立完成。)
应用è 与apriori相似
⑧协同过滤
原理è 基于用户的协同过滤:根据所有用户对物品或者信息的偏好,发现与当前用户口味和偏好相似的“邻居”用户群,在一般的应用中是采用计算“K- 邻居”的算法;然后,基于这 K 个邻居的历史偏好信息,为当前用户进行推荐;
基于项目的协同过滤:给用户推荐那些和他们之前喜欢的物品相似的物品;
过程è UserCF: (1)计算其他用户和目标用户的相似度;(2)根据相似度的高低找出K个目标用户最相似的邻居;(3)在这些邻居喜欢的电影中,根据邻居与你的远近程度算出每个电影的推荐度;(4)根据每一件物品的推荐度高低给你推荐物品。ItemCF:(1)计算物品之间的相似度;(2)根据物品的相似度和用户的历史行为给用户生成推荐列表;
应用è 电子商务、图书电影音乐推荐
⑨遗传算法
原理è 模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。
过程è (1)建立染色体编码规则,确定适应度函数和迭代次数;(2)产生初代染色体,评估初代染色体的个体适应度;(3)遵照适应度越高,被选择的概率越大的原则(轮盘赌),从种群中挑选父代个体;(4)两个父代个体进行交叉,产生子代;(5)对子代个体进行变异操作;(6)重复以上步骤,当最优个体的适应度达到给定的阈值,或者最优个体的适应度和群体适应度不再上升时,或者迭代次数达到预设的代数时,算法终止。
应用è 车间调度、工程作业、自动化控制中最优解问题;
⑩监督学习和无监督学习:
原理è 数据集中每个样本都有相应正确的答案或标准化的分类,然后将这些样本提供给算法进行训练,叫做监督学习;而交给算法大量的未分类或无标签数据,让算法为我们从数据中找出某种结构或规律的过程叫做无监督学习。
以上取自互联网与自己理解整理,侵删;