人工智能(AI) - 神经网络

  • 简述

    人工智能的另一个研究领域是神经网络,其灵感来自人类神经系统的自然神经网络。
  • 什么是人工神经网络 (ANN)?

    第一台神经计算机的发明者 Robert Hecht-Nielsen 博士将神经网络定义为 -
    “......一个由许多简单、高度互连的处理元件组成的计算系统,它们通过对外部输入的动态响应来处理信息。”
  • 人工神经网络的基本结构

    人工神经网络的想法是基于这样一种信念,即通过建立正确的连接来进行人脑的工作,可以使用硅和电线作为生命来模仿neuronsdendrites.
    人脑由 860 亿个神经细胞组成,称为neurons.它们通过以下方式连接到其他数千个细胞Axons.来自外部环境的刺激或来自感觉器官的输入被树突接受。这些输入会产生电脉冲,这些电脉冲会迅速通过神经网络。然后,一个神经元可以将消息发送给其他神经元以处理该问题,或者不将其转发。
    神经元的结构
    ANN由多个nodes, 模仿生物neurons的人脑。神经元通过链接连接并相互交互。节点可以获取输入数据并对数据执行简单的操作。这些操作的结果被传递给其他神经元。每个节点的输出称为它的activation或者node value.
    每个链接都与weight.人工神经网络能够学习,这是通过改变权重值来实现的。下图显示了一个简单的 ANN -
    典型的人工神经网络
  • 人工神经网络的类型

    有两种人工神经网络拓扑 -FeedForwardFeedback.

    前馈人工神经网络

    在这个 ANN 中,信息流是单向的。一个单位将信息发送给它没有收到任何信息的其他单位。没有反馈回路。它们用于模式生成/识别/分类。它们具有固定的输入和输出。
    前馈人工神经网络

    反馈人工神经网络

    在这里,允许反馈回路。它们用于内容可寻址存储器。
    反馈人工神经网络
  • 人工神经网络的工作

    在所示的拓扑图中,每个箭头代表两个神经元之间的连接,并指示信息流的路径。每个连接都有一个权重,一个控制两个神经元之间信号的整数。
    如果网络产生“好的或期望的”输出,则无需调整权重。但是,如果网络产生“不良或不希望的”输出或错误,则系统会更改权重以改善后续结果。
  • 人工神经网络中的机器学习

    人工神经网络具有学习能力,需要接受培训。有几种学习策略 -
    • Supervised Learning- 它涉及一位比 ANN 本身更具有学术性的老师。例如,教师提供一些教师已经知道答案的示例数据。
      例如,模式识别。人工神经网络在识别时提出猜测。然后教师向 ANN 提供答案。然后,网络将其猜测与老师的“正确”答案进行比较,并根据错误进行调整。
    • Unsupervised Learning− 当没有已知答案的示例数据集时需要。例如,搜索隐藏模式。在这种情况下,基于存在的现有数据集进行聚类,即根据某种未知模式将一组元素分组。
    • Reinforcement Learning− 该策略基于观察。ANN 通过观察其环境做出决定。如果观察结果是否定的,网络会调整其权重,以便下次能够做出不同的所需决策。

    反向传播算法

    它是训练或学习算法。它通过例子来学习。如果您向算法提交您希望网络执行的示例,它会更改网络的权重,以便在完成训练时为特定输入生成所需的输出。
    反向传播网络非常适合简单的模式识别和映射任务。
  • 贝叶斯网络 (BN)

    这些是用于表示一组随机变量之间的概率关系的图形结构。贝叶斯网络也称为Belief Networks或者Bayes Nets.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 可用于学习因果关系并理解各种问题域并预测未来事件,即使在丢失数据的情况下也是如此。

    构建贝叶斯网络

    知识工程师可以构建贝叶斯网络。知识工程师在构建它时需要采取许多步骤。
    Example problem肺癌。一名患者一直呼吸困难。他去看医生,怀疑他得了肺癌。医生知道,除了肺癌,患者还可能患有各种其他可能的疾病,例如肺结核和支气管炎。
    Gather Relevant Information of Problem
    • 患者是否吸烟?如果是,那么患癌症和支气管炎的几率很高。
    • 患者是否暴露于空气污染中?如果是,是哪种空气污染?
    • 采取 X 射线阳性 X 射线将表明结核病或肺癌。
    Identify Interesting Variables
    知识工程师试图回答问题 -
    • 代表哪些节点?
    • 他们可以采取什么价值观?他们可以处于哪个状态?
    现在让我们考虑只有离散值的节点。变量一次必须恰好取其中一个值。
    Common types of discrete nodes are
    • Boolean nodes− 它们代表命题,取二进制值 TRUE (T) 和 FALSE (F)。
    • Ordered values− 节点污染可能代表并取自描述患者暴露于污染程度的{低、中、高}的值。
    • Integral values− 一个名为Age的节点可能代表患者的年龄,可能的值从 1 到 120。即使在这个早期阶段,也正在做出建模选择。
    肺癌示例的可能节点和值 -
    Node Name Type Value Nodes Creation
    Polution Binary {LOW, HIGH, MEDIUM} BNN Node Creation
    Smoker Boolean {TRUE, FASLE}
    Lung-Cancer Boolean {TRUE, FASLE}
    X-Ray Binary {Positive, Negative}
    Create Arcs between Nodes
    网络拓扑应该捕捉变量之间的定性关系。
    例如,是什么导致患者患上肺癌?- 污染和吸烟。然后从节点Pollution和节点Smoker添加弧到节点Lung-Cancer。
    同样,如果患者患有肺癌,那么 X 射线结果将是阳性的。然后添加从节点Lung-Cancer到节点X-Ray的弧。
    BNN 弧创建
    Specify Topology
    传统上,BN 的布局使得弧从上到下指向。节点 X 的父节点集由Parents(X) 给出。
    Lung-Cancer节点有两个父节点(原因或原因):PollutionSmoker 而节点Smokerancestor节点X 射线。同样,X-Ray是节点Lung-Cancer的子节点(后果或影响)和successor节点吸烟者污染。
    Conditional Probabilities
    现在量化连接节点之间的关系:这是通过为每个节点指定条件概率分布来完成的。由于此处仅考虑离散变量,因此采用以下形式Conditional Probability Table (CPT).
    首先,对于每个节点,我们需要查看这些父节点的所有可能的值组合。每个这样的组合称为instantiation的父集。对于父节点值的每个不同实例化,我们需要指定子节点将采用的概率。
    例如,肺癌节点的父节点是污染吸烟。它们取可能的值 = { (H,T), (H,F), (L,T), (L,F)}。CPT 将每个病例的癌症概率分别指定为 <0.05, 0.02, 0.03, 0.001>。
    每个节点将具有如下关联的条件概率 -
    概率
  • 神经网络的应用

    他们可以执行对人类来说很容易但对机器来说很困难的任务 -
    • 航空航天− 自动驾驶飞机,飞机故障检测。
    • 汽车− 汽车引导系统。
    • 军事− 武器定向和转向、目标跟踪、目标识别、面部识别、信号/图像识别。
    • 电子− 码序预测、IC芯片布局、芯片故障分析、机器视觉、语音合成。
    • 金融− 房地产评估、贷款顾问、抵押贷款筛选、公司债券评级、投资组合交易程序、公司财务分析、货币价值预测、文件阅读器、信用申请评估员。
    • 工业− 制造过程控制、产品设计与分析、质量检测系统、焊接质量分析、纸张质量预测、化工产品设计分析、化工过程系统动态建模、机器维护分析、项目招投标、规划和管理。
    • 医疗− 癌细胞分析、EEG 和 ECG 分析、假体设计、移植时间优化器。
    • 演讲− 语音识别、语音分类、文本到语音转换。
    • 电信− 图像和数据压缩、自动化信息服务、实时口语翻译。
    • 运输− 卡车制动系统诊断、车辆调度、路由系统。
    • 软件− 人脸识别、光学字符识别等中的模式识别。
    • 时间序列预测− 人工神经网络用于预测股票和自然灾害。
    • 信号处理− 可以训练神经网络处理音频信号并在助听器中对其进行适当过滤。
    • 控制− 人工神经网络通常用于做出物理车辆的转向决策。
    • 异常检测− 由于人工神经网络擅长识别模式,因此也可以训练它们在发生不符合模式的异常情况时生成输出。