04 机器学习 - 数据挖掘与机器学习导论

简介: 04 机器学习 - 数据挖掘与机器学习导论

1. 数据挖掘

简而言之,数据挖掘(Data Mining)是有组织有目的地收集数据,通过分析数据使之成为信息,从而在大量数据中寻找潜在规律以形成规则或知识的技术。

2. 数据挖掘与机器学习的关系

机器学习可以用来作为数据挖掘的一种工具或手段;

数据挖掘的手段不限于机器学习,譬如还有诸如统计学等众多方法;

但机器学习的应用也远不止数据挖掘,其应用领域非常广泛,譬如人工智能;

3. 机器学习

3.1 定义

机器学习(Machine Learning, ML) 是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。目前,世界上共有几百种不同的机器学习算法。

3.2 机器学习算法类别
3.2.1 分类与聚类
  • Classification (分类):
    对于一个 classifier ,通常需要你告诉它“这个东西被分为某某类”这样一些例子,理想情况下,一个 classifier 会从它得到的训练集中进行“学习”,从而具备对未知数据进行分类的能力,这种提供训练数据的过程通常叫做 supervised learning (监督学习):

定义:给定一堆样本数据,以及这些数据所属的类别标签,通过算法来对预测新数据的类别

  • Clustering(聚类):
    聚类的时候,我们并不关心某一类是什么,我们需要实现的目标只是把相似的东西聚到一起,因此,一个聚类算法通常只需要知道如何计算相似度就可以开始工作了,因此 clustering 通常并不需要使用训练数据进行学习,这在 Machine Learning 中被称作 unsupervised learning (无监督学习):

定义:事先并不知道一堆数据可以被划分到哪些类,通过算法来发现数据之间的相似性,从而将相似的数据划入相应的类,简单地说就是把相似的东西分到一组

3.2.2 常见的分类与聚类算法
  • 常用的分类算法:决策树分类法,朴素贝叶斯分类算法(native Bayesian classifier)、基于支持向量机(SVM) 的分类器,神经网络法,k-最近邻法(k-nearest neighbor,kNN),模糊分类法等等。
  • 常见聚类算法: K均值(K-means clustering)聚类算法、K-MEDOIDS算法、CLARANS算法;BIRCH算法、CURE算法、CHAMELEON算法等;基于密度的方法:DBSCAN算法、OPTICS算法、DENCLUE算法等;基于网格的方法:STING算法、CLIQUE算法、WAVE-CLUSTER算法;
3.2.3监督学习与无监督学习

机器学习按照训练数据是否有“先验知识”,一般划分为三类:

  1. 监督学习(supervised learning)
  2. 半监督学习(semi-supervised learning)
  3. 无监督学习(unsupervised learning)

监督式学习技术需要关于结果的先验知识

  • 例如,如果我们正在研究一个市场活动的历史数据,我们可以根据市场是否产生预期的反应来对数据进行分类,或决定下一步要花多少钱。监督式学习技术为预测和分类提供了强大的工具。

无监督学习技术不需要先验知识。

  • 例如,在某些欺诈的案例中,只有当事情发生很久以后,我们才可能知道某次交易是不是欺诈。在这种情况下,与其试图预测哪些交易是欺诈,我们不如使用机器学习来识别那些可疑的交易,并做出标记,以备后续观察。我们对某种特定的结果缺乏先验知识、但仍希望从数据中汲取有用的洞察时,就要用到无监督式学习。
3.3 机器学习的应用步骤
  1. 需求分析
  2. 收集数据
  3. 探索数据特性
  4. 提取数据特征并建模[这一部分需要工具的娴熟和丰富的经验,一定的抽象能力和对数据的敏感]
  5. 开发代码(常用语言:R语言,Python语言)
  6. 训练模型[这一部分需要熟练的开发能力]
  7. 应用系统集成(比如将训练好的算法模型集成到推荐系统中)
3.4 机器学习必需数学知识

在数据挖掘所用的机器学习算法中,几乎所有问题都可以归结为以下三个方面的数学知识:概率、距离、线性方程。

3.4.1 概率

基本概念:

概率描述的是随机事件发生的可能性

比如,抛一枚硬币,出现正反两面的概率各为50%

基本计算:

设一个黑箱中有8个黑球2个红球,现随机抽取一个球,则

取到黑球的概率为:8/(8+2) =0.8

取到红球的概率:2 /(8+2) =0.2

条件概率:

假如有两个黑箱A/B,A中有7黑球+1红球,B中有1黑球+1红球,假如随机抽取到一个

为红球,问,球来自A箱的概率——这就是条件概率问题

所求概率可表示为: p(A|红球) 即在已知结果是红球的条件下,是来自A的概率

条件概率的计算:

P(A|红球) = P(A,红球)/P(A)

<补充:具体运算过程>

3.4.2 距离(相似度)

在机器学习中,距离通常用来衡量两个样本之间的相似度,当然,在数学上,距离这个概念很丰满,有很多具体的距离度量,最直白的是“欧氏距离”,即几何上的直线距离

图示:

如图,在二维平面上有两个点(x1,y1) , (x2,y2),求两点之间的距离

计算方法:

而在机器学习中,通常涉及的是多维空间中点的距离计算,计算方式一样:

3.4.3 线性方程

机器学习中的线性拟合或回归分类问题都需要理解线性方程

图示:

线性方程用来描述二维空间中的直线或多维空间中的平面,比如在二维空间中,如图

y=ax+b即是图中直线的线性方程:

  • x是自变量,y是因变量
  • a b 是参数,决定直线的斜率和截距

如果在多维空间中,线性方程则是表示平面,方程形式如:ax+by+cz+d=0

计算方法:

初等数学经常已知a, b求解x y,而在高等数学中,我们往往是知道大量的(y,x)样本比如(x1,y1),(x2,y2),(x3,y3)要求反推参数列表(a,b,…)。

在维度小,样本数据都“正确+精确”的情况下,可以通过线性方程求解的方式来解出a,b,…

但在机器学习中,我们拿到的大量样本数据本身都是“不精确且充满噪点”的,所以代入方程来求解a,b…显然不可行,此时,一般都是采用逼近的思想(机器学习中怎么强调都不为过的一个核心思想,甚至可以提升为“逼近论”)来求解:

  1. 设定参数的初始值——>代入样本试探——>根据试探结果调整参数——>再次代入样本试探——>再调整参数
  2. 一直循环迭代直到获得一组满意的参数 <补充:一个运算实例>
3.4.4 向量和矩阵

在以上3大数学问题中,都涉及到大量样本数据大量特征值的“批量运算”,此时,可运用数学中的工具:“向量和矩阵”

N维向量:就是一个一维的数组(x1,x2,x3,x4,…),数组中的元素个数即为向量的“维度数”

矩阵:将多个(比如M个) N维向量写在一起,就是矩阵(M*N):

x11,x12,x13,x14,.....
x21,x22,x23,x24,.....
x31,x32,x33,x34,.....
x41,x42,x43,x44,.....

矩阵和向量的意义主要在哪呢?就是为了方便快速地进行大量数据(尤其是线性方程问题)的批量运算。

如:

  1. 矩阵相加

  2. 矩阵相乘

目录
相关文章
|
3月前
|
机器学习/深度学习 自然语言处理 算法
【数据挖掘】金山办公2020校招大数据和机器学习算法笔试题
金山办公2020校招大数据和机器学习算法笔试题的解析,涵盖了编程、数据结构、正则表达式、机器学习等多个领域的题目和答案。
100 10
|
3月前
|
机器学习/深度学习 人工智能 搜索推荐
【数据挖掘】2022年深信服科技机器学习工程师笔试
总结了深信服科技机器学习工程师笔试中的几道题目及其解答,涉及数据结构、机器学习评估指标和过拟合缓解方法等内容。
93 1
|
2月前
|
机器学习/深度学习 数据采集 算法
数据挖掘和机器学习算法
数据挖掘和机器学习算法
|
3月前
|
机器学习/深度学习 存储 人工智能
【数据挖掘】2022年2023届秋招知能科技公司机器学习算法工程师 笔试题
本文是关于2022-2023年知能科技公司机器学习算法工程师岗位的秋招笔试题,包括简答题和编程题,简答题涉及神经网络防止过拟合的方法、ReLU激活函数的使用原因以及条件概率计算,编程题包括路径行走时间计算和两车相向而行相遇时间问题。
77 2
【数据挖掘】2022年2023届秋招知能科技公司机器学习算法工程师 笔试题
|
3月前
|
机器学习/深度学习 自然语言处理 算法
【数据挖掘】百度机器学习-数据挖掘-自然语言处理工程师 历史笔试详解
文章汇总并解析了百度机器学习/数据挖掘工程师/自然语言处理工程师历史笔试题目,覆盖了多分类任务激活函数、TCP首部确认号字段、GMM-HMM模型、朴素贝叶斯模型、SGD随机梯度下降法、随机森林算法、强连通图、红黑树和完全二叉树的高度、最长公共前后缀、冒泡排序比较次数、C4.5属性划分标准、语言模型类型、分词算法、贝叶斯决策理论、样本信息熵、数据降维方法、分箱方法、物理地址计算、分时系统响应时间分析、小顶堆删除调整等多个知识点。
43 1
【数据挖掘】百度机器学习-数据挖掘-自然语言处理工程师 历史笔试详解
|
3月前
|
机器学习/深度学习 人工智能 算法
【数据挖掘】2022年2023届秋招奇虎360机器学习算法工程师 笔试题
本文提供了奇虎360公司2022年秋招机器学习算法工程师岗位的笔试题内容,包括选择题和编程题,涉及概率统计、数据结构、机器学习、计算机组成原理等多个领域。
94 5
|
3月前
|
机器学习/深度学习 算法 数据挖掘
【数据挖掘】2022年2023届秋招宏瓴科技公司机器学习算法工程师 笔试题
关于宏瓴科技有限公司2022-2023年秋招机器学习算法工程师岗位的笔试题目及作者个人对部分题目的解答尝试,涉及贝叶斯误差和贝叶斯最优分类器的概念、贝叶斯误差的重要性和估算方法,以及如何有效利用训练集和测试集进行深度学习模型训练的数据集划分策略。
58 4
|
3月前
|
机器学习/深度学习 自然语言处理 算法
【数据挖掘】百度机器学习-数据挖掘-自然语言处理工程师 2023届校招笔试详解
百度2023届校招机器学习/数据挖掘/自然语言处理工程师笔试的题目详解
81 1
|
4月前
|
机器学习/深度学习 数据采集 算法
数据挖掘和机器学习算法
数据挖掘和机器学习算法
|
6月前
|
机器学习/深度学习 数据采集 数据可视化
基于数据挖掘与机器学习揭秘脱发主因
基于数据挖掘与机器学习揭秘脱发主因