Skip to content

Latest commit

 

History

History
128 lines (69 loc) · 10 KB

File metadata and controls

128 lines (69 loc) · 10 KB

第39节 机器学习(AI)

❤️💕💕CS自学指南,大学教育无论是深度还是广度都没有办法支撑我们的职业素养,这个板块算是自己在CS学习中额外补充和记录的。个人博客:http://nsddd.top


[TOC]

AI 和机器学习

AI (Artificial Intelligence) 是人工智能的总体概念,涵盖了许多技术,包括机器学习。机器学习是一种 AI 技术,通过模型学习从数据中了解特征并做出预测,而不需要明确编程。因此,机器学习是 AI 的一个重要组成部分,但不是全部。

机器学习有两种类型:监督式学习(Supervised Learning)和非监督式学习(Unsupervised Learning)。

再划分可以得到第三种类型:监督学习、非监督学习和强化学习。

  1. 监督学习:模型从给定的标记数据(带有正确答案的数据)中学习,并用于预测未知数据的标记。常见的监督学习算法包括回归和分类。
  2. 非监督学习:模型从未标记的数据中学习,以发现数据内的模式和结构。常见的非监督学习算法包括聚类和降维。
  3. 强化学习:模型通过试错和反馈,在特定环境中学习如何做决策,以达到最优结果。强化学习常见应用于游戏、机器人控制等领域。

监督式学习

所谓监督式学习,也就是说,我们需要提供一组学习样本,包括相关的特征数据以及相应的标签。程序可以通过这组样本来学习相关的规律或是模式,然后通过得到的规律或模式来判断没有被打过标签的数据是什么样的数据。

举个例子,假设需要识别一些手写的数字,那么我们就需要找到尽可能多的手写体数字的图像样本,然后人工或是通过某种算法来明确地标注什么是这些手写体的图片,谁是 1,谁是 2,谁是 3……这组数据就叫样本数据,又叫训练数据(training data)。

通过机器学习的算法,我们可以找到每个数字在不同手写体下的特征,进而找到规律和模式。然后通过得到的规律或模式来识别那些没有被打过标签的手写数据,以此完成识别手写体数字的目标。

一种比较常见的监督式学习,就是从历史数据中获得数据的走向趋势,来预测未来的走向。比如,我们使用历史上的股票走势数据来预测接下来的股价涨跌,或者通过历史上的一些垃圾邮件的样本来识别新的垃圾邮件。

监督学习是机器学习中最常见的方法之一。它通过对带有标签的训练数据进行学习,以预测新的未知数据的标签。监督学习可以分为回归和分类两种。

  • 回归:回归模型预测连续值,如预测房价、股票价格等。例如,使用线性回归模型预测房价,可以从历史房价数据中学习关于面积、地理位置等因素对房价的影响。
  • 分类:分类模型预测离散值,如预测一张图片是猫还是狗、一条评论是正面的还是负面的。例如,使用逻辑回归模型预测一条评论是正面的还是负面的,可以从已有的正面和负面评论数据中学习关键词和语法结构。

非监督式学习

对于非监督式学习,也就是说,数据是没有被标注过的,所以相关的机器学习算法需要找到这些数据中的共性。因为大量的数据是没有被标识过的,所以这种学习方式可以让大量未标识的数据能够更有价值。

而且,非监督式的学习,可以为我们找到人类很难发现的数据里的规律或模型。所以,也有人将这种学习称为“特征点学习”。其可以让我们自动地为数据进行分类,并找到分类的模型。

一般来说,非监督式学习会应用在一些交易型的数据中。 比如,有一堆的用户购买数据,但是对于人类来说,我们很难找到用户属性和购买商品类型之间的关系,而非监督式学习算法可以帮助我们找到他们之间的关系。

比如,一个在某一年龄段区间的女生购买了某种肥皂,有可能说明这个女生在怀孕期,或是某人购买儿童用品,有可能说明这个人的关系链中有孩子,等等。于是这些信息会被用在一些所谓的精准市场营销活动中,从而可以增加商品销量。

我们这么来说吧,监督式学习是在被告诉过正确的答案之后的学习,而非监督式学习是在没有被告诉正确答案时的学习,所以说,非监督式的学习是在大量的非常混乱的数据中找寻一些潜在的关系,这个成本也比较高。

非监督学习不需要标签数据,模型仅从数据本身中学习。非监督学习可以分为聚类和降维两种。

  • 聚类:聚类是将数据分为若干个类簇的过程,每个类簇内的数据相似,不同类簇内的数据不同。例如,使用 K 均值聚类算法对顾客消费行为进行分析,可以将顾客分为不同的类簇,例如购买频率高的顾客、年龄较大的顾客等。
  • 降维:降维是将高维数据映射到低维空间的过程,以保留数据的主要特征。例如,使用主成分分析降维对图像数据进行分析,可以将图像从多维空间映射到二维空间,以便于图形的可视化和分析。

如何找到数据的规律和关联

机器学习基本就是在已知的样本数据中寻找数据的规律,在未知的数据中找数据的关系。所以,这就需要一定的数学知识了,但对于刚入门的人来说,学好高数、线性代数、概率论、数据建模等大学本科的数学知识应该就够用了。以前上大学时,总觉得这些知识没什么用处,原来只不过是自己太 low,还没有从事会运用到这些知识的工作。

总之,机器学习中的基本方法论是这样的:

  1. 要找到数据中的规律,你需要找到数据中的特征点。
  2. 把特征点抽象成数学中的向量,也就是所谓的坐标轴。一个复杂的学习可能会有成十上百的坐标轴。
  3. 抽象成数学向量后,就可以通过某种数学公式来表达这类数据(就像 y=ax+b 是直线的公式),这就是数据建模。

这个数据公式就是我们找出来的规律。通过这个规律,我们才可能关联类似的数据。

下面这篇文章是机器学习入门文章:

强化学习

强化学习是人工智能的一种机器学习方法,用于训练智能体在具有限定环境的情况下获得最佳表现。在强化学习中,智能体通过不断试错来学习如何与环境交互,以最大化一个定义的奖励函数。

强化学习是一种学习如何通过不断试错来最大化未来回报的方法。它是一种非监督学习,不需要标签数据,模型仅从回报本身中学习。例如,使用 Q 学习对机器人进行强化学习,机器人可以通过不断尝试不同的动作来学习如何获得最大的回报,例如获得最多的分数或达到目的地。

强化学习与监督学习不同,因为它不是通过标记数据集来学习,而是通过探索环境和反馈来学习。强化学习需要智能体在进行决策时进行权衡,因为它不知道所有决策的后果。

强化学习常用于解决控制问题,例如:游戏控制,机器人控制,智能电网,智能交通等。它也可以用于解决高维、非线性和非平凡问题。

经典算法

监督式学习:

  • 决策树(Decision Tree)。比如自动化放贷、风控。
  • 朴素贝叶斯分类(Naive Bayesian classification)。可以用于判断垃圾邮件,对新闻的类别进行分类,比如科技、政治、运动,判断文本表达的感情是积极的还是消极的,以及人脸识别等。
  • 最小二乘法(Ordinary Least Squares Regression)。算是一种线性回归。
  • 逻辑回归(Logisitic Regression)。一种强大的统计学方法,可以用一个或多个变量来表示一个二项式结果。它可以用于信用评分、计算营销活动的成功率、预测某个产品的收入等。
  • 支持向量机(Support Vector Machine,SVM)。可以用于基于图像的性别检测,图像分类等。
  • 集成方法(Ensemble methods)。通过构建一组分类器,然后根据它们的预测结果进行加权投票来对新的数据点进行分类。原始的集成方法是贝叶斯平均,但是最近的算法包括纠错输出编码、Bagging 和 Boosting。

非监督式学习:

  • 聚类算法(Clustering Algorithms)。聚类算法有很多,目标是给数据分类。
  • 主成分分析(Principal Component Analysis,PCA)。PCA 的一些应用包括压缩、简化数据,便于学习和可视化等。
  • 奇异值分解(Singular Value Decomposition,SVD)。实际上,PCA 是 SVD 的一个简单应用。在计算机视觉中,第一个人脸识别算法使用 PCA 和 SVD 来将面部表示为 “特征面” 的线性组合,进行降维,然后通过简单的方法将面部匹配到身份。虽然现代方法更复杂,但很多方面仍然依赖于类似的技术。
  • 独立成分分析(Independent Component Analysis,ICA)。ICA 是一种统计技术,主要用于揭示随机变量、测量值或信号集中的隐藏因素。

课程推荐

课程视频(Youtube): https://youtu.be/U6M0m9c9_Js

课程Slides和参考资料: https://davidrosenberg.github.io/ml2019/#lectures

作业: https://davidrosenberg.github.io

END 链接