[IT技术] 机器学习(一)概论

[复制链接]
chysh 发表于 2023-11-30 06:51:09|来自:北京 | 显示全部楼层 |阅读模式
本系列文章声明:根据复旦大学赵卫东老师《深度学习及其应用》课程、北京理工大学高琪老师《人工智能之模式识别》课程、哈尔滨工业大学刘远超老师《深度学习基础》课程进行整理。
1、机器学习定义
机器学习(Machine Learning)是计算机科学的子领域,也是人工智能的一个分支和实现方
式。机器学习这门学科所关注的是计算机程序如何随着经验积累自动提高性能。
形式化的描述:
对于某类任务T和性能度量P,如果一个计算机程序在T上以P衡量的性能随着经验E而自
我完善,那么就称这个计算机程序在从经验E学习。

机器学习主要的理论基础涉及到概率论、数理统计、数值逼近、最优化理论、计算复
杂理论等,核心要素是数据、算法和模型

2、机器学习的发展
机器学习的发展分为知识推理期、知识工程期、浅层学习(Shallow Learning)和深
度学习(Deep Learning)几个阶段。
在机器学习的发展过程中,随着人们对智能的理解和现实问题的解决方法演变,大
致出现了符号主义、贝叶斯、联结主义、进化主义、行为类推主义五大流派。
3、机器学习的演化



机器学习的演化

4、机器学习、人工智能和数据挖掘的关系


机器学习是人工智能的一个分支,它是实现人工智能的一个核心技术,即以机器学习为手段解 决人工智能中的问题。机器学习是通过一些让计算机可以自动“学习”的算法并从数据中分析获 得规律,然后利用规律对新样本进行预测。
数据挖掘是从大量的业务数据中挖掘隐藏、有用的、正确的知识促进决策的执行。数据挖掘的 很多算法都来自于机器学习,并在实际应用中进行优化。机器学习最近几年也逐渐跳出实验室,解决从实际的数据中学习模式,解决实际问题。数据挖掘和机器学习的交集越来越大。
5、机器学习典型应用领域
艺术创作、金融领域、医疗领域、自然语言处理、网络安全、工业领域、娱乐行业
例子:
例子1:人机大战:lphaGo本质上是深度卷积神经网络CNN、加强学习RL、蒙特卡洛树搜索MCTS三者相结合的产物
例子2:多分类问题:
输入:棋局盘面
输出:各个位置的落子概率
模型:卷积神经网络CNN
数据来源:KGS Go Server上的16万盘6-9段的棋谱,共近3000万步
例子3:趋势预测


例子4:反垃圾邮件系统


例子5:个性化推荐


例子6:社交网络分析


6、机器学习流程
机器学习是一门入门容易但精通难的学科 机器学习分析人员需要掌握行业知识以了解业务流程、理解数据背后的隐含信息以合理解读数据、从变化的角度和时间维度把握需求以确定使用哪些数据,这是数据分析的基础。
机器学习的主要流程是明确分析目标、数据收集、数据预处理、建模分析、结果评估、部署使用以及学习更新。

明确数据分析目标


数据收集


数据预处理


数据建模


效果评估


部署使用       更新



7、机器学习常用算法
7.1机器学习算法分类




即:
无监督学习:
连续:降维(SVD、PCA、K-means)
离散:关联分析(Aprion、FP-Drowth)、隐马尔可夫模型
监督学习:
连续:回归(线性、多项式拟合)、决策树、随机森林
离散:分类(KNN、Trees、Logistic Regression逻辑回归、Naive-Bayes朴素贝叶斯、SVM)
7.2应用场景及其算法和算法阐述:
图像识别、文本分析:神经网络和深度学习、多层前馈神经网络常见的深度学习神经网络卷积神经网络循环神经网络
神经网络:传统的神经网络为BP神经网络,基本网络结构为输入层、隐藏层和输出层,节点代表神经元,边代表权重值,对输入值按照权重和偏置计算后将结果传给下一层,通过不断的训练修正权重和偏置。递归神经网络(RNN)、卷积神经网络(CNN)都在神经网络在深度学习上的变种。神经网络的训练主要包括前向传输和反向传播。神经网络的结果准确性与训练集的样本数量和分类质量有关。神经网络是基于历史数据构建的分析模型,新数据产生时需要动态优化网络的结构和参数。深度学习:深度学习是通过构建多个隐藏层和大量数据来学习特征,从而提升分类或预测的准确性。与神经网络相比,层数更多,而且有逐层训练机制避免梯度扩散。深度学习包括了卷积神经网络(CNN)、深度神经网络(DNN)、循环神经网络(RNN)、对抗神经网络(GAN) 深度学习中训练集、开发集、测试集的样本比例一般为6:2:2。 常见的权重更新方式包括SGD和Momentum
淘宝潜在用户分析、社交网络用户分析:聚类算法
聚类分析是把一个给定的数据对象(样本H集合分成不同的簇(组)。聚类就是把整个数据分成不同的组T并使组与组之间的差距尽可大,组内数据的差异尽可能小。K-means是一种常用的聚类算法,用户指定聚类的类别数K ,随机地选择K个对象作为K个初始聚类中心。对剩余的每个对象,分别计算与初始聚类中心的距离,根据距离划到不同的簇。然后重新计算每个簇的平均值,求出新的聚类中心,再重新聚类。这个过程不断重复,直到收敛(相邻两次计算的聚类中心相同)。聚类是基于无监督学习的分类模型,按照数据内在结构特征进行聚集形成簇群。聚集方法即记录之间的区分规则。聚类与分类的主要区别是其不关心数据的类别。聚类首先选择有效特征向量,然后按照距离函数进行相似度计算。聚类应用广泛:客户群体特征、消费者行为分析、市场细分、交易数据分析、动植物种群分类、医疗领域的疾病诊断、环境质量检测。常见的聚类方法:基于层次聚类(Hierarchical METHod) BIRCH(Balanced Iterative Reducing and Clustering Using Hierarchies) CURE(Clustering Using Representatives) 基于划分的聚类K均值(K-Means) 基于密度的聚类DBSCAN(Density-based spatial clustering of applications with noise) OPTICS(Ordering Points To Identify the Clustering Structure) 基于机器学习的聚类·基于约束的聚类·基于网络的聚类
商品、新闻、APP、专家、影视、音乐等推荐:推荐算法
为应对网络信息的爆炸,电子推荐系统提供一种特定的信息过滤技术,预测和展示用户可能感兴趣的商品,从而节省了用户的时间。推荐系统采用一种或者组合多种推荐方法,对用户偏好的输入数据进行处理,找出用户可能感兴趣的信息或者商品进行推荐。基于内容的推荐:需要把握用户的偏好特征,通常可以分析用户浏览过的内容,从中抽取重要的关键词,并利用文献检索的方法。然后计算商品的描述特征向量与用户的特征向量的相似程度,对候选的信息或商品集合进行过滤,产生用户可能感兴趣的推荐列表。基于协同过滤的推荐:找出与用户偏好相似的用户邻居集合,把邻居集的偏好商品集作为推荐的候选。此外,也可以寻找用户以前的偏好信息或商品的相似项目集合推荐。
社会网络分析:文本分析 ;微博用户情感分析、社会化交通导航、交通事故分析、社会网络营销
关联分析
关联分析(Associative Analysis )通过对数据集中某些属性同时出现的规律和模式来发现其中的属性间的关联、相关、因果等关系,典型应用是购物篮分析。关联分析包括Apriori算法和FP-Growth算法。Apriori 算法的基本思想是先找出所有的频繁项集,然后由频繁项集产生强关联规则,这些规则必须满足最小支持度和最小置信度。 算法要多次扫描样本集,需要由候选频繁项集生成频繁项集。 FP-Growth算法是基于FP树生成频繁项集的,算法只扫描两次数据集,且不使用候选项集,直接按照支持度构造出一个频繁模式树,用这棵树生成关联规则。关联分析已经在客户购物行为分析、电子推荐、产品质量检测、文档主题分析等得到了广泛应用。







多元回归问题
从衡量图像清晰程度的角度出发,对图像特征进行观察和分析,得到4个解释性变量:灰度差分的方差、清晰度、饱和度、高频含量等
预测集与训练集的划分一留一交叉验证法:每次提取1个样本作为预测集。剩下的作为训练集
进行对此样本的预测











8、数据可视化
数据可视化在机器学习中的作用:
(1)视觉是人类获得信息的最主要途径;
(2)可视化本身就是一种机器学习方法;
(3)可视化可以作为数据预处理的方法或者是机器学习过程的表示方式。
(4)机器学习的结果也可以用可视化的形式表示。
9、机器学习常见问题
9.1 数据质量问题与预处理
a 数据质量要求数据是完整的和真实的,并且具有一致性和可靠性
b “垃圾进,垃圾出”
c 数据预处理占用整个机器学习项目60%的工作量
d 问题:数据量较少、数据量过多、维度灾难、数据不完整、异常数据、重复数据、数据不唯一



9.1.1数据量较少
数据挖掘需要一定的数据量作支撑,尽量覆盖领域。
数据量增多,其中的规律会越发明显,也更易发现与分析目标相关的因素。如通过神经网络、深度学习有此结论
一般来说,数据量是自变量数量的10~20倍为佳。
数据样本需要有足够的覆盖范围,需要覆盖与分析目标相关的维度。

9.1.2 数据过多
数据量过多时,对全部数据集进行分析要耗费更多的计算资源,要求硬件配置较高,可应用数
据采样技术随机提取样本子集。
对海量的同质化数据,可通过聚集技术按照时间、空间等属性进行均值等汇总,减少数据数量。
数据集不平衡问题可能导致出现较大的结果误差,因此要对数据集应用采样技术或对异常数据进行复制,提高其占比
9.1.3维度灾难
当数据中的自变量较多时,会出现维度灾难问题。
特别是在矩阵数据中,其中冗余变量占比比较高时,可用数据变成稀疏矩阵,在分类算法处理时就没办法可靠地进行类别划分,在聚类算法中则容易使聚类质量下降。
可采用线性代数的相关方法将数据从高维空间影射到低维空间中:主成分分析(PCA)、奇异值分解(SVD)
9.1.4数据不完整
数据的种类要多,种类多少直接影响数据挖掘方法的选择,可以通过编写程序抓取外部数据作为补充。
数据缺失也是数据不完整的一种表现,包括了空白值、空值、无效值等。
需要针对不同原因对缺失值进行数据预处理,有多种方法可以操作:
a 采用众数、中位数、均值、最短距离等方法进行人为补充
b 通过回归或贝叶斯定理等预测缺失值
c 删除含有缺失值的数据
9.1.5异常数据
异常数据分为错误的数据和小概率事件(又称稀有事件)两类
对错误数据,需要将其剔除或修正
对稀有事件,如信用卡欺诈行为、垃圾邮件,需要重点分析其特征
9.2数据分析常见陷阱
9.2.1
·错误理解相关关系
事物间的相关性并不意味着存在因果关系,或者有可能其因果关系颠倒了 –需要深入理解业务,规避大部分错误
需要分析是否由第三方变量同时引起两种变量的变化,找出其原因
·错误的比较对象
机器学习中的结果或效果进行比较时,容易将不同样本集进行结果比较,比较对象不合
理,其结果自然无效,结论便不能成立
·数据抽样
数据抽样时如果出现偏差可能会影响分析结果
需要考虑采样标准
9.2.2
忽略或关注极值
忽视极值可能失去某类样本或丢失某项重要特征
过于关注极值可能会对结果造成偏差,影响结论
相信巧合数据
实验中多次重复实验可避免巧合数据的出现
数据未做归一化
两个数据进行比较时,容易进行总数比较,而忽视比例的比较
忽视第三方数据
搜集或使用爬虫获得更多数据使数据源更丰富
过度关心统计指标
可能会忽视某些方法或结论成立的前提条件

9.3机器学习方法的选择
理解目标要求是机器学习方法选择的关键,首先要对问题进行分类,如果数据集中有标签则可进行监督式学习,反之可应用无监督学习
熟悉各类机器学习方法的特性是分析方法选择的基础,不仅需要了解如何使用各类分析算法,还要了解其实现的原理
在选择模型前,要对数据进行探索性分析
机器学习方法选择过程中可在几个可能模型中分析选出较优的模型
选择模型后,比较不同模型的拟合程度,反复调整参数使模型结果趋于稳定

10 机器学习技能要求


常见的机器学习语言和平台
Python、R、TensorFlow、Caffe、开源社区Github
全部回复0 显示全部楼层
暂无回复,精彩从你开始!

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则