人工智能 - 神经网络


人工智能的另一个研究领域——神经网络,其灵感来自于人类神经系统的自然神经网络。

什么是人工神经网络 (ANN)?

第一台神经计算机的发明者 Robert Hecht-Nielsen 博士将神经网络定义为 -

“......由许多简单、高度互连的处理元件组成的计算系统,这些处理元件通过对外部输入的动态响应来处理信息。”

人工神经网络的基本结构

人工神经网络的想法基于这样的信念:通过建立正确的连接,可以使用硅和电线作为活神经元树突来模仿人脑的工作。

人脑由 860 亿个称为神经元的神经细胞组成。它们通过轴突与其他数千个细胞相连来自外部环境的刺激或来自感觉器官的输入被树突接受。这些输入产生电脉冲,快速穿过神经网络。然后,神经元可以将消息发送到其他神经元来处理问题,或者不转发。

神经元的结构

人工神经网络由多个节点组成,模仿人脑的生物神经元。神经元通过链接连接,并且彼此相互作用。节点可以获取输入数据并对数据执行简单的操作。这些操作的结果被传递给其他神经元。每个节点的输出称为其激活节点值。

每个链接都与权重相关联人工神经网络具有学习能力,这是通过改变权重值来实现的。下图显示了一个简单的 ANN -

典型的人工神经网络

人工神经网络的类型

有两种人工神经网络拓扑 -前馈反馈。

前馈神经网络

在这个人工神经网络中,信息流是单向的。一个单元向其他单元发送信息,但它不从其他单元接收任何信息。没有反馈循环。它们用于模式生成/识别/分类。它们有固定的输入和输出。

前馈神经网络

反馈神经网络

这里,允许反馈循环。它们用于内容可寻址存储器。

反馈神经网络

人工神经网络的工作

在所示的拓扑图中,每个箭头代表两个神经元之间的连接,并指示信息流的路径。每个连接都有一个权重,一个控制两个神经元之间信号的整数。

如果网络生成“良好或期望”的输出,则无需调整权重。然而,如果网络生成“不良或不期望的”输出或错误,则系统会改变权重以改善后续结果。

人工神经网络中的机器学习

人工神经网络具有学习能力,并且需要接受培训。有几种学习策略 -

  • 监督学习- 它涉及一位比人工神经网络本身更学者的老师。例如,教师提供一些教师已经知道答案的示例数据。

    例如,模式识别。人工神经网络在识别的同时提出猜测。然后老师向 ANN 提供答案。然后,网络将其猜测与老师的“正确”答案进行比较,并根据错误进行调整。

  • 无监督学习- 当没有已知答案的示例数据集时需要它。例如,搜索隐藏的模式。在这种情况下,基于现有的数据集执行聚类,即根据某种未知模式将一组元素划分为组。

  • 强化学习- 这种策略建立在观察的基础上。人工神经网络通过观察其环境做出决定。如果观察结果是否定的,网络会调整其权重,以便下次能够做出不同的所需决策。

反向传播算法

它是训练或学习算法。它通过例子来学习。如果您向算法提交您希望网络执行的操作的示例,它会更改网络的权重,以便在完成训练时可以为特定输入生成所需的输出。

反向传播网络非常适合简单的模式识别和映射任务。

贝叶斯网络 (BN)

这些是用于表示一组随机变量之间的概率关系的图形结构。贝叶斯网络也称为信念网络贝叶斯网络。BN 对不确定领域进行推理。

在这些网络中,每个节点代表一个具有特定命题的随机变量。例如,在医学诊断领域,节点Cancer代表患者患有癌症的命题。

连接节点的边表示这些随机变量之间的概率依赖性。如果两个节点中的一个正在影响另一个,那么它们必须在影响的方向上直接连接。变量之间关系的强度通过与每个节点相关的概率来量化。

BN 中的弧有一个唯一的限制,即不能简单地通过有向弧返回到节点。因此,BN 被称为有向无环图 (DAG)。

BN 能够同时处理多值变量。BN 变量由两个维度组成 -

  • 介词范围
  • 分配给每个介词的概率。

考虑离散随机变量的有限集 X = {X 1 , X 2 , …,X n },其中每个变量X i可以从有限集中获取值,用Val(X i ) 表示。如果存在从变量X i到变量X j的定向链接,则变量X i将是变量X j的父级,显示变量之间的直接依赖关系。

BN 的结构非常适合将先验知识和观测数据相结合。BN 可用于学习因果关系、理解各种问题领域并预测未来事件,即使在数据丢失的情况下也是如此。

构建贝叶斯网络

知识工程师可以构建贝叶斯网络。知识工程师在构建它时需要采取许多步骤。

示例问题-肺癌。一名患者一直感到呼吸困难。他去看医生,怀疑自己患有肺癌。医生知道,除了肺癌之外,患者还可能患有各种其他疾病,例如肺结核和支气管炎。

收集问题的相关信息

  • 患者是否吸烟?如果是,那么患癌症和支气管炎的机会就很高。
  • 患者是否接触过空气污染?如果有,是什么类型的空气污染?
  • X 光检查呈阳性 X 光检查表明患有结核病或肺癌。

识别有趣的变量

知识工程师试图回答这些问题 -

  • 代表哪些节点?
  • 他们可以取什么值?他们可以处于哪种状态?

现在让我们考虑仅具有离散值的节点。该变量一次必须恰好采用这些值之一。

离散节点的常见类型是-

  • 布尔节点- 它们代表命题,采用二进制值 TRUE (T) 和 FALSE (F)。

  • 有序值- 节点污染可能代表并取{低、中、高}中的值,描述患者暴露于污染的程度。

  • 积分值- 名为“年龄”的节点可能代表患者的年龄,可能的值从 1 到 120。即使在这个早期阶段,也正在做出建模选择。

肺癌示例的可能节点和值 -

节点名称 类型 价值 节点创建
污染 二进制 {低、高、中} BNN节点创建
吸烟者 布尔值 {正确,错误}
肺癌 布尔值 {正确,错误}
X射线 二进制 {正负}

在节点之间创建弧

网络的拓扑应该捕捉变量之间的定性关系。

例如,是什么原因导致患者患上肺癌?- 污染和吸烟。然后添加从节点“污染”和节点“吸烟者”到节点“肺癌”的弧。

同样,如果患者患有肺癌,那么X光结果也会呈阳性。然后添加从节点Lung-Cancer到节点X-Ray 的弧

BNN 弧创建

指定拓扑

按照惯例,BN 的布局使得弧线从上到下。节点 X 的父节点集合由 Parent(X) 给出。

Lung -Cancer节点有两个父节点(原因或原因):PollutionSmoker,而节点Smoker是节点X-Ray的祖先。同样,X 射线是肺癌节点的子节点(后果或影响),也是吸烟者和污染节点的后继节点

条件概率

现在量化连接节点之间的关系:这是通过指定每个节点的条件概率分布来完成的。由于这里仅考虑离散变量,因此采用条件概率表(CPT)的形式。

首先,对于每个节点,我们需要查看这些父节点值的所有可能组合。每个这样的组合称为父集的实例化。对于父节点值的每个不同实例,我们需要指定子节点将采用的概率。

例如,肺癌节点的父节点是污染吸烟。它们采用可能的值 = { (H,T), ( H,F), (L,T), (L,F)}。CPT 将每种情况的癌症概率分别指定为 <0.05、0.02、0.03、0.001>。

每个节点都有相关的条件概率,如下所示 -

概率

神经网络的应用

他们可以执行对人类来说容易但对机器来说困难的任务 -

  • 航空航天- 自动驾驶飞机、飞机故障检测。

  • 汽车- 汽车导航系统。

  • 军事- 武器定向和转向、目标跟踪、物体辨别、面部识别、信号/图像识别。

  • 电子- 代码序列预测、IC 芯片布局、芯片故障分析、机器视觉、语音合成。

  • 金融- 房地产评估、贷款顾问、抵押贷款筛选、公司债券评级、投资组合交易程序、公司财务分析、货币价值预测、文件阅读器、信贷申请评估器。

  • 工业- 制造过程控制、产品设计和分析、质量检测系统、焊接质量分析、纸张质量预测、化工产品设计分析、化工过程系统动态建模、机器维护分析、项目招标、规划和管理。

  • 医疗- 癌细胞分析、脑电图和心电图分析、假体设计、移植时间优化器。

  • 语音- 语音识别、语音分类、文本到语音转换。

  • 电信- 图像和数据压缩、自动化信息服务、实时口语翻译。

  • 运输- 卡车制动系统诊断、车辆调度、路线系统。

  • 软件- 面部识别、光学字符识别等中的模式识别。

  • 时间序列预测- 人工神经网络用于对股票和自然灾害进行预测。

  • 信号处理- 可以训练神经网络来处理音频信号并在助听器中对其进行适当的过滤。

  • 控制- 人工神经网络通常用于做出物理车辆的转向决策。

  • 异常检测- 由于人工神经网络擅长识别模式,因此它们也可以接受训练,以便在发生与模式不符的异常情况时生成输出。