模式识别:人类和机器学习的基础

来源:沈浩老师

前言

人类能很轻易的在人群中一眼认出自己的熟人,同时,人类也具有分辨不同物体的能力。对于人和动物而言,凭借自身的记忆和学习能力,能够很轻易地把握自己所见物体的特征或属性,从而对不同物体做出识别,但是,识别能力对最初的机器来说却是非常困难的。时代的推进需要机器具有甚至超过人或其他生物的识别能力,因此,模式识别应运而生。

  什么是模式?

广义地说,模式是存在于时间和空间中的可观察的事物,如果我们可以区别它们是否相同或者是否相似,那我们从这种事物所获取的信息就可以称之为模式。人们为了掌握客观的事物,往往会按照事物的相似程度组成类别,而模式识别的作用和目的就在于把某一个具体的事物正确的归入某一个类别。

  人类学习与模式识别

人类和动物借助感官进行学习。学习有助于识别和分辨我们周围的模式。模式识别的过程包括将接收到的信息与大脑中已经储存的信息进行匹配。把记忆和感知到的信息联系起来是模式识别的一个名为识别的步骤。

模式识别需要重复经验。迄今为止,所有发现和发明都是人类模式识别技能的结果。人类倾向于在各处看到模式。当进行比较,判断和获取知识时,它们很重要。

 为什么需要模式?

寻找模式非常重要。模式使我们的任务更加简单。

寻找和理解模式对于数学思维和解决问题至关重要。

让我们以1至10的数字总和为55的简单示例为例。

1 + 2 + 3 +…+ 10 = 55

现在,11到20的总和是10×10 + 55 = 155

同样,21到30的总和为20×10 + 55 = 255。

我们可以继续使用此模式进行10个连续数字的总和。数学公式不过是模式的简洁表示。

模式类型

逻辑、数字、声音、图像和文字模式在我们身边无处不在。逻辑模式帮助我们分类相似的对象,而数字模式帮助我们预测一个序列。声音模式帮助我们理解语言。下图是一个逻辑模式的示例。

图像模式有助于对图像中的信息进行分类。悠扬的音乐模式可以用音乐序列来识别。

设计模式

使用Python“ for”循环进行迭代

Python的for循环对迭代器设计模式进行了彻底的抽象,以至于大多数Python程序员甚至没有意识到它在表面之下执行的对象设计模式。for循环执行一个重复赋值,对它迭代遍历的序列中的每个项运行它的缩进代码块一次。

    some_primes = [2, 3, 5]for prime in some_primes: print(prime) #output 2 3 4

    数学与模式

    数学有时被称为模式科学。数学中最重要的概念是函数。函数是模式的抽象表示。类似地,每个活动领域都有模式。

    在这里,函数y = f(x)=  3x 如上面的数字模式所示。模式显示序列的值,但是函数可以直接输出模式序列的任何值。

    统计中的数据模式

    图形显示就像统计中的直方图一样,对于观察数据中的模式很有用。数据中的模式通常用中心、扩展、形状和不寻常的特征来描述。

    一些常见的分布具有特殊的描述性标签,如对称、钟形、倾斜等。这在探索性数据分析中很有用。概率用于预测数据中的模式。

    类似地,每个活动领域都有模式。例如,肿瘤学家研究癌症细胞模式以确定预防措施。

    因此,识别模式是理解、组织和分类信息的一种简单方法。

    数据挖掘中的模式

    如今的数据既有结构化的(数据库,电子表格等)又有非结构化的形式(图像,文档等)。对于利益相关者而言,找到相关数据是一项巨大挑战。

    数据挖掘工具执行数据分析,以发现对业务战略和科学研究有重大贡献的重要数据模式。

    机器学习模式

    机器学习使用数学,统计学以及特定领域的知识和数据来解决复杂的问题。

    什么是机器学习?这是这里有一个非常简单的定义。

    机器学习是将事物(数据)转换成数字,并在这些数字中寻找模式。

    为了寻找模式,我们使用了算法。算法是执行一项任务的特定步骤集。

    机器学习中的“算法”是在数据上运行以创建机器学习“模型”的过程。“我们编写了一个机器学习算法来推导这个模型。模型识别符合数据集的数据中的模式。Fit是“在数据中查找模式”的同义词。

    机器学习中的一个“模型”是机器学习算法运行在数据上的输出。

    一个模型代表机器学习算法所学习到的东西。它基本上是一个数学函数,可以通过调整参数来适应新数据。

    模型类似于直线y = a + bx的一般方程,而模式类似于特定方程,例如y = 5 + 2x。机器学习就是要正确地概括出全新的情况。

    机器学习的基本任务是创建一个模型,可以从数据中预测或分类不同的模式。其中一个应用是对垃圾数据或非垃圾数据进行分类。

    当可供学习的样本数量增加时,算法会自适应地提高其性能。

    机器学习的两种主要类型是监督学习和非监督学习。

    在监督方法中的模式识别称为分类。这类算法使用两阶段的方法来识别模式。第一阶段是模型的开发/构建,第二阶段是对新的或未见对象的预测。

    无监督学习是一种机器学习,它在没有预先设定标签和缺失人工监督的数据集中寻找以前未被发现的模式。

    分类是监督学习,聚类是非监督学习。

    深度学习是一种专门的机器学习形式,它的灵感来自于大脑的工作。深度学习使用人工神经网络进行更复杂的模式任务,如音频和图像处理、自然语言处理等。

    下图区分了深度学习和其他机器学习技术。

    机器学习与模式识别

    机器学习是模式识别的一种形式,它的基本思想是训练机器识别模式并将其应用于实际问题。机器学习是一种可以从数据中学习并迭代地不断更新自己以更好地执行的功能,但是模式识别不会学习问题,但是,它可以被编码来学习模式。

    模式识别的应用

    自然语言处理

    应用程序(例如拼写和语法检查器,垃圾邮件检测器,翻译和情感分析工具)的效果与模式识别方法有很密切的关联。正则表达式有助于识别用于自然语言处理的复杂文本模式。

    图像处理,分割和分析
    模式识别将人类的识别智能赋予图像处理中所需要的机器。

    计算机视觉
    模式识别用于从给定的图像/视频样本中提取有意义的特征,并用于计算机视觉中的各种应用程序,例如生物和生物医学成像。肿瘤鉴定是一个典型的例子。

    地震分析
    模式识别方法用于发现,成像和解释地震阵列记录中的时间模式。
    统计模式识别已在不同类型的地震分析模型中实现和使用。

    雷达信号分类/分析
    模式识别和信号处理方法用于诸如地雷检测和识别之类的雷达信号分类的各种应用中。

    语音识别
    使用模式识别范例将每个单词视为一个单元,可以在语音识别中取得最大的成功。

    指纹识别
    许多指纹识别方法都用于执行指纹匹配,其中模式识别方法被广泛使用。

    结语

    模式无处不在,它是我们生活的一部分。不用说,技术的进步在很大程度上取决于新旧模式的采用。

    原文链接:

    https://www.analyticsvidhya.com/blog/2020/12/patterns-recognition-the-basis-of-human-and-machine-learning/

    (0)

    相关推荐