白话机器学习
- 格式:doc
- 大小:329.50 KB
- 文档页数:5
机器学习的基本认识机器学习(Machine Learning,ML)是一种通过计算机程序进行无需明确编程的人工智能(Artificial Intelligence,AI)学习的方法。
它通过对大量数据进行分析和处理,从中学习规律和模式,以便做出预测和决策。
机器学习已经成为现代科学和技术研究的重要领域,广泛应用于图像和语音识别、自然语言处理、推荐系统等诸多领域。
机器学习的基本原理是利用统计学和优化理论的方法,通过对样本数据的学习来推断输入和输出之间的关系,并将学习到的模型用于未知数据的预测和分类。
其中,输入数据称为特征,输出数据称为标签或目标变量。
在机器学习中,我们常用的任务可以分为监督学习、无监督学习和强化学习。
监督学习(Supervised Learning)是指在训练样本中,除了输入特征外,还给出了对应的标签或目标变量,如分类和回归问题。
分类问题是指将输入样本分为预先定义的类别,如垃圾邮件识别和图像分类;而回归问题则是建立输入和输出之间的连续关系,如房价预测和股票价格预测。
无监督学习(Unsupervised Learning)与监督学习相反,它只给出输入数据的特征,没有给出输出数据的标签或目标变量。
无监督学习主要用于聚类和降维。
聚类是一种将样本划分到不同组别的方法,如市场用户分群、图像分割和推荐系统;降维则是减少数据特征维度的方法,以便更好地可视化和理解数据。
强化学习(Reinforcement Learning)是指智能体通过与环境进行交互,根据环境的反馈调整自己的行为以获得最大化的奖励。
强化学习常用于游戏策略、机器人控制和搜索优化等领域。
其中,智能体通过学习、规划和执行三个步骤来梳理与环境的交互。
机器学习的方法有很多,其中最常用的方法包括决策树、逻辑回归、支持向量机、人工神经网络和集成学习等。
决策树是一种根据特征逐步判断目标变量的方法;逻辑回归是一种线性分类方法,用于解决二分类问题;支持向量机则是非线性分类的方法,它通过引入核函数将数据映射到高维空间,以便更好地分割不同类别;人工神经网络则是一种模拟大脑神经元的计算模型,通过多个神经元的相互连接来实现复杂的模式识别。
机器学习概述4.1 机器学习的概念4.1.1 什么是学习学习是人类具有的一种重要智能行为。
但究竟什么是学习,目前还没有一个统一的定义。
Simon(1983年)认为学习就是系统中的变化,这种变化使系统比以前更有效地去做同样的工作。
Minsky(1985年)认为学习是我们头脑中进行有用的变化。
也有人认为学习是构造或修改对于经验的表示。
我们认为:学习是从不知到知的过程,是对经验形成有效重组的过程。
一般来说,学习基本形式有知识获取和技能求精。
学习的本质就是获取新的知识,包括物理系统、行为的描述和模型的建立,构造客观现实的表示。
将新知识组织成为通用化和有效的表达形式。
例如科学知识的学习。
技能求精指通过教育或实践改进机制和认知能力。
这些技能包括意识的或机制的。
这种改变是通过反复实践和从失败中纠正错误来进行的。
借助观察和实验发现新的事实和新的理论,如学习骑自行车。
知识获取的本质是一个自觉的过程,其结果是产生新的符号知识结构和智力模型。
而技能求精则是下意识地借助于反复地实践来实现的。
人类有能力获取新知识、学习新技巧,并在实践中改进之。
学习是智能的重要一环,如果一个人反复犯同样的错误,就不能说他是有智能的。
机器学习是研究如何使用机器来模拟人类学习活动的一门学科。
它是人工智能研究的重要领域之一,目的是理解学习的本质和建立学习系统。
一个真正的智能系统必须具备真正的学习功能。
基于这种学习功能,人们可以根据数据和经验等构造一个具有一定智能的系统。
该系统可以在这个初始数据库的基础上,通过归纳、推理等方法进一步丰富、完善自己,使自己适应外界环境。
未来的计算机将有自动获取知识的能力。
它们直接由书本学习,通过与人谈话学习,通过观察环境学习。
它们通过实践自我完善,克服人的局限性,例如存储量少、效率低、注意力分散和难以传送所获取的知识。
一台计算机获取的知识很容易复制给任何其他机器。
人类的这些设想可望在不久的将来变成现实。
4.1.2 机器学习与人类学习的区别人类的学习过程是漫长的,而且是极其缓慢的。
白话机器学习的数学pdf1机器学习的数学基础机器学习是一个十分复杂的学科,其理论底层涉及到深入的数学知识,因此机器学习的数学基础对学习机器学习非常重要。
首先,要学习一些基本的数学知识,比如函数、微积分、矩阵论、逻辑、基本的概率理论等,这些数学知识将对机器学习的具体实践提供帮助。
其次,机器学习的数学基础还包括数据处理和优化技术,例如线性代数、矩阵因式分解、抽样等等,这些约束和提炼机器学习模型运行所需要的数据集以及调整模型参数。
同时,分布式系统设计有助于实现机器学习应用程序在分布式系统上的实现。
2模型和最优化机器学习的模型是由参数和特征确定的复杂函数,这些参数和特征组合能够表示数据中的内在结构和关系,因此有效的模型参数的确定是机器学习的关键。
最优化是找到最高效模型参数的技术,其基本概念涉及到梯度下降、极限、梯度流形优化等知识。
另外,还需要学习非凸优化和贝叶斯优化,以及基于统计分析、概率和统计,即ADMM(Alternating Direction Method of Multipliers,也称为乘子技术),DFT(Discrete Fourier Transformation,离散傅里叶变换)和函数块(Function Blocks)等等。
3神经网络神经网络是机器学习应用中最有效的技术之一,其基本思想是根据输入试图预测准确的输出。
神经网络的建模需要学习损失函数、激活函数、反向传播等相关知识。
另外,还需要学习神经网络模型的评估方法,比如神经网络的可扩展性等。
4机器学习工具除了理论以外,学习机器学习需要练习相关工具,一些免费、开源的工具,如Python、TensorFlow、PyTorch等,可以帮助大家快速了解机器学习的基本概念和实现机器学习技术发挥作用。
同时,学习使用深度学习框架,如Keras、Pytorch、MXNet等,也是必不可少的步骤。
此外,还需要一些基于机器学习的,比如机器学习的调试工具和可视化工具,帮助大家实现机器学习项目的实现。
关于机器学习评价指标AUC召回率准确率(ACC)MRR的白话讲解AUC、召回率、准确率(ACC)和MRR是机器学习中常用的评价指标,用来评估模型的性能。
下面将对这些指标进行白话讲解。
首先,我们来介绍AUC(Area Under the Curve)。
在机器学习中,我们通常使用ROC曲线(Receiver Operating Characteristic curve)来评估模型的性能。
ROC曲线是以假正例率(False Positive Rate)为横坐标,真正例率(True Positive Rate)为纵坐标绘制的。
而AUC就是ROC曲线下的面积,取值范围在0到1之间。
AUC的值越接近于1,说明模型的性能越好。
接下来,我们介绍召回率(Recall),又称为查全率。
召回率是指模型识别出的正例占所有实际正例的比例,也就是模型能够正确找到的所有正例的数量除以真实正例的总数量。
召回率的取值范围在0到1之间,召回率越高,说明模型能够较好地找到真实正例。
然后,我们来讲解准确率(ACC,Accuracy)。
准确率是指模型正确预测的样本数量占所有预测样本的比例,也就是模型预测正确的数量除以总样本数量。
准确率的取值范围在0到1之间,准确率越高,说明模型的预测结果越准确。
最后,我们介绍MRR(Mean Reciprocal Rank)。
MRR是对模型在排序问题中的性能进行评价的指标。
在排序问题中,模型会根据预测结果对样本进行排序,MRR则是对排序结果的评估。
对于每个查询,在排序后的结果列表中,MRR计算的是第一个正确答案的倒数,然后取所有查询的平均值。
MRR的取值范围在0到1之间,MRR越接近于1,说明模型的排序性能越好。
综上所述,AUC、召回率、准确率和MRR都是用于评估机器学习模型性能的指标。
AUC可以评估模型的整体性能,召回率可以评估模型找到真实正例的能力,准确率可以评估模型的预测准确性,而MRR则适用于排序问题的评估。
机器学习知识:什么是机器学习机器学习(Machine Learning)是一种通过利用算法来使计算机能够自动学习的技术,并根据所获得的数据进行深入的分析和预测。
简单的说,机器学习就是人工智能的一种分支,它利用数据和算法来让计算机自动地进行学习,从而识别、分类、预测和反馈。
在日常生活中,我们随处可见机器学习的应用。
例如,我们常用的推荐系统是基于机器学习技术的,它根据我们的历史消费记录,利用算法分析我们的偏好,然后给我们推荐符合我们喜好的商品和服务。
在医学中,机器学习技术也得到了广泛的应用,识别病人的疾病类型和病情。
它甚至可以预测未来的病情,从而提前采取措施进行治疗。
机器学习是通过模拟人类学习的过程,以提高计算机处理信息的能力。
在机器学习中,通常有三个主要的步骤:收集数据、训练模型和预测。
在收集数据的过程中,机器学习需要大量的数据,这些数据通常是由计算机自动收集的。
这些数据的来源包括传感器数据、代码的日志、社交媒体数据和图像等。
在训练模型的过程中,机器学习使用算法来分析数据,确定可能存在的模式,并根据这些模式和数据来预测未来的情况。
训练模型的过程十分重要,由于一个模型的质量取决于它对训练数据的准确度,最后的模型将影响预测的准确度。
在预测的过程中,机器学习将利用训练模型中的算法来进行预测和分类等操作,然后产生预测结果。
有关机器学习的讨论不仅局限于与技术相关方面的概念。
机器学习已经成为了商业经济领域的全新模式,它已经改变了商业模式,推动了产品创新。
以Netflix为例,它利用机器学习技术推荐用户喜欢的电影和电视节目,它的成功始于其推荐算法的准确性,可见机器学习价值的重要性在日益凸显。
另一方面,机器学习的使用也在带来一些问题和挑战。
由于数据的准确性对决策的质量至关重要,机器学习算法也不能绝对确定正确结果,人类仍需要对它进行监管和控制。
尤其是近年来越来越多的机器学习算法用于面部识别和行为分析等方面,这一趋势也引起了很大争议。
机器学习的基本概念和原理机器学习是一种人工智能的领域,它研究如何让机器通过经验来学习并提高性能。
与传统的编程方法不同,机器学习依赖于大量的数据和算法,从中提取规律和模式,从而自动进行预测和决策。
机器学习的基本概念包括数据、模型和算法。
数据是机器学习的基础,它可以是结构化数据(如表格数据)或非结构化数据(如文字、图像和音频)。
模型是机器学习对数据的抽象表示,它描述了数据之间的关系和规律。
算法是机器学习的数学和统计方法,用于从数据中构建模型,并根据模型进行预测和决策。
机器学习的原理基于统计学和概率论。
机器学习是一种数据驱动的方法,它通过收集大量的数据来训练模型。
在训练过程中,机器学习算法通过最小化数据之间的误差来调整模型的参数,从而使模型能够更好地适应数据。
这一过程称为模型的学习或训练。
一旦模型被训练好,就可以用来进行预测和决策。
在机器学习中,有监督学习、无监督学习和强化学习这三种主要的学习方式。
有监督学习是通过已有的标记样本来训练模型,以预测新样本的标记;无监督学习是在没有标记样本的情况下,通过发现数据之间的结构和模式来训练模型;强化学习是通过与环境的交互来学习,在每一步的行动中,根据环境的反馈来调整模型的策略,以达到最大化奖励的目标。
在机器学习中,常见的算法包括线性回归、逻辑回归、决策树、支持向量机、神经网络和深度学习等。
线性回归是一种用于建立变量之间线性关系的算法,适用于回归问题;逻辑回归是一种用于建立变量之间逻辑关系的算法,适用于分类问题。
决策树是一种基于树形结构的分类模型,通过一系列的判断节点和叶节点来进行分类。
支持向量机是一种通过寻找最优超平面来进行分类的算法,适用于线性和非线性分类问题。
神经网络和深度学习是一种模仿人脑神经网络结构的算法,通过多层神经元的组合和计算来进行学习和预测。
机器学习的应用广泛,包括自然语言处理、计算机视觉、语音识别、推荐系统、金融风险评估和医学诊断等领域。
例如,在自然语言处理中,机器学习可以用于自动翻译、语义分析和情感分析;在计算机视觉中,机器学习可以用于图像分类、目标检测和人脸识别;在医学诊断中,机器学习可以用于癌症检测、疾病预测和药物发现。
机器学习的定义从广义上来说,机器学习是一种能够赋予机器学习的能力以此让它完成直接编程无法完成的功能的方法。
但从实践的意义上来说,机器学习是一种通过利用数据,训练出模型,然后使用模型预测的一种方法。
机器学习的范围其实,机器学习跟模式识别,统计学习,数据挖掘,计算机视觉,语音识别,自然语言处理等领域有着很深的联系。
从范围上来说,机器学习跟模式识别,统计学习,数据挖掘是类似的,同时,机器学习与其他领域的处理技术的结合,形成了计算机视觉、语音识别、自然语言处理等交叉学科。
因此,一般说数据挖掘时,可以等同于说机器学习。
同时,我们平常所说的机器学习应用,应该是通用的,不仅仅模式识别模式识别=机器学习。
两者的主要区别在于前者是从工业界发展起来的概念,后者则主要源自计算机学科。
在著名的《Pattern Recognition And Machine Learning》这本书中,Christopher M. Bishop在开头是这样说的“模式识别源自工业界,而机器学习来自于计算机学科。
不过,它们中的活动可以被视为同一个领域的两个方面,同时在过去的10年间,它们都有了长足的发展”。
数据挖掘数据挖掘=机器学习+数据库。
这几年数据挖掘的概念实在是太耳熟能详。
几乎等同于炒作。
但凡说数据挖掘都会吹嘘数据挖掘如何如何,例如从数据中挖出金子,以及将废弃的数据转化为价值等等。
但是,我尽管可能会挖出金子,但我也可能挖的是“石头”啊。
这个说法的意思是,数据挖掘仅仅是一种思考方式,告诉我们应该尝试从数据中挖掘出知识,但不是每个数据都能挖掘出金子的,所以不要神话它。
一个系统绝对不会因为上了一个数据挖掘模块就变得无所不能(这是IBM最喜欢吹嘘的),恰恰相反,一个拥有数据挖掘思维的人员才是关键,而且他还必须对数据有深刻的认识,这样才可能从数据中导出模式指引业务的改善。
大部分数据挖掘中的算法是机器学习的算法在数据库中的优化。
统计学习统计学习近似等于机器学习。
《白话机器学习算法》数据来源和参考资料k均值聚类:Facebook用户性格特征Stillwell, D., & Kosinski, M. (2012). myPersonality Project: .Kosinski, M., Matz, S., Gosling, S., Popov, V., & Stillwell, D. (2015). Facebook as a Social Science Research Tool: Opportunities, Challenges, Ethical Considerations and Practical Guidelines. American Psychologist.主成分分析:食物的营养成分美国农业部(2015),USDA Food Composition Databases:。
关联规则:杂货店数据数据集包含在如下R包中:Hahsler, M., Buchta, C., Gruen, B., & Hornik, K. (2016). arules: Mining Association Rules and Frequent Itemsets. R包版本1.5-0. 。
Hahsler, M., Hornik, K., & Reutterer, T. (2006). Implications of Probabilistic Data Modeling for Mining Association Rules. In Spiliopoulou, M., Kruse, R., Borgelt, C., Nürnberger, A.,& Gaul, W. Eds., From Data and Information Analysis to Knowledge Engineering, Studies in Classification, Data Analysis, and Knowledge Organization. pp.598-605. Berlin, Germany: Springer-Verlag.Hahsler, M., & Chelluboina, S. (2011). Visualizing Association Rules: Introduction to the R-extension Package arulesViz. R Project Module, 223-238.回归分析:预测房价Harrison, D., & Rubinfeld, D. (1978). Hedonic Prices and the Demand for Clean Air. Journal of Environmental Economics and Management, 5, 81-102.k最近邻算法:葡萄酒的化学成分Forina, M., et al. (1998). Wine Recognition: .Cortez, P., Cerdeira, A., Almeida, F., Matos, T., & Reis, J. (2009). Modeling Wine Preferences by Data Mining from Physicochemical Properties. Decision Support Systems, 47(4), 547-553.支持向量机:预测心脏病Robert Detrano (M.D., Ph.D), from Virginia Medical Center, Long Beach and Cleveland Clinic Foundation (1988). Heart Disease Database (Cleveland) [Data file and description]: +Disease.Detrano, R., et al. (1989). International Application of a New Probability Algorithm for the Diagnosis of Coronary Artery Disease. The American Journal of Cardiology, 64(5), 304-310.决策树:泰坦尼克号乘客数据Report on the Loss of the 'Titanic' (S.S.) (1990). British Board of Trade Inquiry Report (reprint), Gloucester, UK: Allan Sutton Publishing and are discussed in Dawson, R. J. M. (1995). The 'Unusual Episode' Data Revisited. Journal of Statistics Education, 3(3).随机森林:旧金山犯罪事件数据SF OpenData, City and County of San Francisco (2016). Crime Incidents.随机森林:旧金山天气National Oceanic and Atmospheric Administration, National Centers for Environmental Information (2016). Quality Controlled Local Climatological Data (QCLCD).神经网络:手写数字LeCun, Y., & Cortes, C. (1998). The MNIST Database of Handwritten Digits[Data file and description]: .LeCun, Y., Bottou, L., Bengio, Y., & Haffner, P. (1998). Gradient-based Learning Applied to Document Recognition. Proceedings of the IEEE, 86(11), 2278-2324.若想获取更多开放数据集,请访问。
白话机器学习
机器学习和自然语言处理也是密不可分的。
在很多自然语言处理中,将大量使用机器学习的概念。
马尔可夫链和条件随机场,狄利克雷分布这些都是自然语言处理的基础理论。
从去年开始,陆陆续续学习了大半年的机器学习,现在是时候做个总结了。
在以往的编程经验里面,我们需要对于输入有一个精确的,可控制的,可以说明的输出。
例如,将1 + 1作为输入,其结果就是一个精确的输出 2 。
并且不论怎么调整参数,都希望结果是2,并且能够很清楚的说明,为什么结果是2,不是3。
这样的理念在传统的IT界,非常重要,所有的东西就像时钟一般精确,一切都是黑白分明的。
由于这种严格的输入输出,衍生出很多对于程序的自动测试工具,你的程序无论怎么运行,都应该在相同输入情况下,得到相同的,准确的,精确的输出。
但是,如果你进入机器学习的世界,则一切都是基于一个准确率。
换句话说,你的模型,允许是不完美的,1 + 1,结果可以是 2.01,也可以是1.98。
有时候,如果你的模型要追求完美,则可能出现过拟合的可能性。
也就是说,由于你的模
型太过于完美,使得模型可以很好的匹配训练用数据,反而失去了通用性,在数据发生变化的时候,发生错误。
举个例子来说吧,如果一个男孩子说喜欢某个女孩子,这个女孩子身高178,籍贯是辽宁抚顺,专业是计算机。
如果机器学习发生过拟合的时候,它就会输出这样一个模型
如果身高= 178 ,籍贯= 抚顺,专业= 计算机则喜欢。
这个模型如果用来匹配一个个例,则这个模型是完美的!
但是,如果这个女孩子身高是179呢,这个模型会告诉你,这个男孩子不喜欢她。
其实,对于男孩子来说,178和179其实没有什么很大的区别。
但是由于计算机想精确给出男孩子喜欢女孩子的模型,所以,计算机做出了过拟合的模型。
当然,一般来说,计算机的模型应该是有弹性的。
身高在【175,185】之间
籍贯是东北
专业是IT相关的
这样的话,模型虽然会把一些男孩子不喜欢的女孩子也错误的标识出来,但是大部分的样本还是可以比较好的预测出来的。
机器学习追求的不是100%的正确,而是一个可以容忍的正确率。
当然,在某些时候,还需要一些风险策略的,例如,在人工智能判断一个用户是否能够发给信用卡的时候,并不是说,这个人51%的可能性是一个讲信用的人,就发卡,而是这个人95%是讲信用的人的时候,才发卡的。
机器给出的只是一个估计值,最后还是要人工控制风险的。
机器学习,很多人认为是一个高科技的IT技能,其实,一个好的机器学习模型,领域里的业务知识还是很需要的。
而且现在很多工具可以帮助大家建立程序,完
全不需要什么编程的技能,只需要给机器“喂”数据,调节参数,就可以获得结果了。
给机器“喂”什么数据,那些数据的特征值是有用的,那些特征值没有价值,这个就是领域专家思考的问题了。
男孩子喜欢女孩子,这时候颜值,身材,脾气可能是比较关键的特征值,喜欢可口可乐还是百事可乐则变得基本没有什么价值。
如果你的数据里面,都是女孩子喜欢那个牌子的可乐,这样的数据训练出来的模型没有任何意义。
当然,如果你有很多特征值,还是有一些自动化的计算帮你挑选用那些特征值的(主成因分析)。
在机器学习中,有一些复杂的概念,往往都是由一个简单的概念扩展开来的。
卷积神经网络为首的一些神经网络的概念,都是从感知机这个小家伙来的。
感知机的输出,是由输入和权重决定的,在监督学习中,输入和输出是已知的,然后机器学习通过不停的调整权重,使得感知机的输出(模型)和实际的输出(样本)尽量一致。
这个过程中,学习结果就是这些权重,权重知道了,模型就定下来了。
一个最简单的感知机的应用就是线性单元。
单个感知机是弱小的,但是,如果感知机有成千上万个,然后一层一层一层叠加起来呢。
这些小家伙就变成强大的神经网络了
贝叶斯,马尔科夫同志则共享了很多关于概率的机器学习。
贝叶斯最大贡献如下。
在“你家隔壁住着老王(B)”的前提下,“你的孩子长得像隔壁老王(A)”的概率
等于“你的孩子长得像隔壁老王(A)”的前提下,“你家隔壁住着老王(B)”
乘以:“你的孩子长得像隔壁老王(A)”的概率(和隔壁是否住着老王无关)
除以:“你家隔壁住着老王(B)”的概率
当然这个正统说法要牵涉到先验概率,后验概率。
从最简单的伯努利分布,到关于分布的分布的变态级别的狄利克雷分布,很多机器学习都在追求模型最符合抽样的分布概率。
换句话说,就是希望从概率学上看,我们做出来的模型,和我们看到的样本之间,看上去是最相似。
(最大似然)
例如,我们要做一个模型,表示抛一枚硬币有多大概率正面向上。
如果我们的样本告诉我们,10次里面,有7次正面向上,则我们说这枚硬币70%会出现正面向上。
这个模型的结论和样本之间,从概率学上看是最有可能的。
我们做的模型,就是追求和实际样本的结果,在概率学上看,是最有可能发生的情况。
最快梯度下降则几乎出现在所有的迭代算法中。
为什么梯度下降特别重要,因为大部分的算法都是尽可能将损失函数降低,怎么才能将损失函数降低,就是不停调整参数(权重),权重调整的方向,和梯度下降的方向是一致的。
当然,最快梯度下降有可能不会收敛到全局最低点。
(能否收敛到全局最低点,和初始位置有关)
机器学习和自然语言处理也是密不可分的。
在很多自然语言处理中,将大量使用机器学习的概念。
马尔可夫链和条件随机场,狄利克雷分布这些都是自然语言处理的基础理论。