请更新您的浏览器。 为了获得最佳的 Liquid Instruments 使用体验,请将 Chrome、Edge、Firefox 或 Safari 更新到最新版本。 更新 Microsoft Edge.
液体仪器标志
产品
硬件平台
Moku:Delta
Moku:Delta
全新发布
用于高级设计和验证
Moku:Pro
Moku:Pro用于多种测试和测量
Moku:Lab
Moku:Lab用于实验研究实验室
Moku:Go
Moku:Go用于快速测试和调试
比较硬件
比较硬件横向比较所有 Moku 硬件
技术
GenInst Studio
全新发布
生成个性化工具
仪器功能高度集成触手可及的专业仪器设备
神经网络集成了 基于 FPGA 的神经网络仪器
多仪器并行模式组合仪器功能以创建自定义测试系统
Moku Compile编码、编译和部署到 Moku 的 FPGA 上
软件
MokuOS下载适用于 Windows、macOS、iPadOS 和 VisionOS 的 Moku 应用
APIsPython、MATLAB、LabVIEW
实用工具用于文件转换的命令行和图形工具
仪器功能
信号分析
示波器
频谱分析仪
频率响应分析仪
锁相放大器
相位表
逻辑分析仪/码型发生器
时间间隔与频率分析仪
数据记录器
信号生成
波形发生器
任意波形发生器
信号控制与调理
PID 控制器
数字滤波器
FIR 滤波器生成器
激光锁频/稳频器
自定义与其他功能
GenInst Studio
全新发布
高速信号采集记录回放仪(Gigabit Streamer)
自定义仪器
神经网络
多仪器并行模式
应用
光学与光子学
显微镜和光谱学
光子计数
量子光学
航空航天和国防
A&D仪器
器件测试
自动化测试
半导体测试
控制系统和伯德图分析
MEMS 系统测试
AI 和机器学习
生成式仪器
全新发布
神经网络
教育服务提供商
教育与研究
相关资源
应用笔记
博客
客户案例
相关课程
指南
产品文档
资讯观点
网络研讨会
白皮书
支持
关于我们
联系我们
关于我们
领导团队
合作伙伴
公司动态
媒体中心
活动日程表
加入我们
商店
Moku:Delta
Moku:Pro
Moku:Go
升级您的 Moku:Pro
升级您的 Moku:Lab
升级您的 Moku:Go
0
获取报价 立即购买
博客

什么是神经网络?

了解利用神经网络推进实验研究的新方法,以及基于 FPGA 方法的优势

2024 年 10 月 21 日

    Moku 3.3版本 带来了新的 神经网络 仪器 Moku:Pro 使用户能够实现人工神经网络,以实现快速、灵活的信号分析、去噪、传感器调节、闭环反馈等。如果您不熟悉神经网络的基础知识,或者想知道神经网络如何有益于您的研究和开发目标,请继续阅读以探索实际应用和教程。

    首先,需要注意的是,“人工神经网络”(ANN)是这些系统的更准确术语,因为它们是基于软件的,而不是生物神经元。考虑到这一点,我们将使用术语“神经网络”来指代 ANN。在本介绍中,我们将仅考虑完全连接的神经网络,而不是复杂的设置,例如卷积、循环和变压器架构。

    神经网络是由相互连接的节点(或称神经元)组成的系统,这些节点按层排列。第一层接收外部数据作为输入。每个后续神经元计算其来自前一层的输入的加权和,然后加上一个称为偏置的值。该值随后通过激活函数传递,激活函数引入非线性,使网络能够学习复杂的模式。最后一层产生网络的输出,而中间的所有层都称为隐藏层。通过训练,网络会调整其权重和偏置,以随着时间的推移提高其准确性。

    用数学术语来说,把输入层想象成 否 1 矩阵,其中 N 是输入层的节点数,矩阵中每个元素对应激活值,如图1所示。

    图 1:神经网络架构,显示输入层、隐藏层和输出层。

    接下来是隐藏层。隐藏层及其中的节点数取决于模型的复杂性和可用的计算能力。隐藏层中的激活是使用前一层的激活组合来计算的,每个节点对输入层值应用不同的权重和偏差。这在图 2 中以线性代数术语显示。 

    图 2:隐藏层中的激活是使用前一层的激活组合来计算的。

    如果输入层是 否 1 矩阵(\(n_1\), \(n_2\)),接下来的激活值是通过将其与一个乘以一个 中✕ 矩阵,其中 M 是隐藏层中的节点数。矩阵中的每个元素都是一个权重,用 \(w_{mn}\) 表示。, 意思是 MN 每一层都需要参数。结果是 中号 1 然后,将矩阵偏移一个偏置值(\(b_1\), \(b_2\)…)。计算出新的激活后,它们将通过“激活函数”。激活函数可以提供诸如裁剪和归一化之类的非线性行为,使网络比仅仅是一系列矩阵乘法时更强大。

    每种激活函数都有其独特的特性,“正确”的选择很大程度上取决于应用场景。常见的激活函数包括 ReLU(修正线性单元),它计算效率高,但在某些训练场景下会遇到困难,因为它会截断负值。其他激活函数,例如 Tanh 和 Sigmoid 函数,可以产生平滑且有界的输出,适用于分类任务,但在深度网络中,由于曲线在大输入值处趋于平缓,可能会削弱学习能力。最后,线性函数在回归任务中表现良好,但会限制网络对复杂非线性模式进行建模的能力。不同的网络层可以使用不同的激活函数,具体选择取决于应用需求和网络架构。

    经过几个隐藏层后,数据最终到达输出层。在输出节点中,激活值对应于一些感兴趣的参数。例如,假设从示波器收集的时间序列数据被输入到输入中,网络的目标是将信号分类为正弦波、方波、锯齿波或直流信号。在输出层,每个节点将对应这些选项之一,最高值激活代表网络对信号形式的最佳猜测。如果一个激活接近 1,而其他激活接近 0,则网络猜测的置信度很高。如果激活值相似,则表示对答案的置信度较低。

    神经网络如何工作?

    如果不调整隐藏层的权重和偏差,神经网络最终只不过是一个复杂的随机数生成器。为了提高模型的准确性,用户必须提供训练数据,其中输入数据集和预期答案都是已知的。然后,模型可以计算出自己对训练集的答案,并将其与真实值进行比较。计算出的差异称为成本函数,可以定量评估模型的性能。

    该模型旨在通过训练降低成本函数。例如,均方误差 (MSE) 计算预测值与实际值之间平方差的平均值。优化器是用于有效最小化此成本函数的方法。Python 的机器学习包(例如 Keras)可以帮助选择合适的成本函数和优化器。

    在计算给定数据集的成本函数后,可以通过各种微积分运算调整隐藏层的权重和偏差,以最小化成本函数为目标。这类似于向量微积分中的梯度下降概念,可以在文献 [1] 中进一步探讨。这个过程称为反向传播, 允许通过成本函数获得的信息通过各层向后传递,从而实现模型学习或自我调整,无需人工输入。

    训练数据通常会在神经网络中运行多次。提供给模型的这些数据的每个实例称为一个时期。通常,一些训练数据将被保留用于验证。在验证过程中,训练好的网络用于从这个保留的数据集推断输出,并将其预测与已知的正确输出进行比较。这比单独的成本函数值更能准确地反映模型的性能,因为它表明模型能够将结果推广到新的和新颖的输入的能力。

    神经网络有哪些不同类型?

    神经网络虽然按照类似的原理运行,但可以根据应用采取各种形式。一些常见的神经网络示例包括:

    • 前馈神经网络 (FNN):这是标准格式,例如上述示例中讨论的格式。在 FNN 中,数据通过网络向前传递,没有任何反馈或先前输入的记忆。一个典型的例子是图像,其中每个像素都是神经网络的输入,输出是该图像的分类。
    • 卷积神经网络 (CNN):这是 FNN 的一个子类型,通常用于通过使用过滤器来检测图像中的特征。鉴于图像通常很大,这些过滤器的作用是将输入图像的尺寸减少到更少的权重。然后,隐藏层中的每个神经元都可以在整个输入中扫描相同的特征,从而使 CNN 对图像转换具有鲁棒性。
    • 循环神经网络 (RNN):与前馈网络相反,RNN 涉及在隐藏层中使用反馈。反馈机制为系统提供了记忆,因此给定层的输出可以取决于先前的输入。这使得 RNN 成为顺序数据集(例如时间序列、语音和音频数据)的绝佳选择。
    • 自动编码器:自动编码器是一种特殊的神经网络配置,通常是 FNN 或 CNN,它将给定数据编码到降维空间中,然后根据编码数据重建或解码数据。从概念上讲,这与统计学和生物信息学中有用的主成分分析 (PCA) 非常相似。

    神经网络如何用于信号处理? 

    虽然神经网络在驱动大型语言模型、解读图像和翻译等方面很受欢迎,但它们在信号处理方面也非常有用。机器学习可以改善测量设置的一些示例包括:

    • 控制系统:在某些系统中,很难提前知道实现特定控制状态所需的输入,或者换句话说,很难反转设备模型。在这种情况下,波形发生器或函数发生器探测设备,而示波器监视结果状态。然后,神经网络从当前状态和所需控制之间的差异中学习反向映射。当与 PID 控制器结合使用时,这可以实现 PID 参数的自调节 [2]。
    • 传感器调节:神经网络可以获取传感器数据并补偿系统误差,例如电缆中的相位失真或延迟,或光电探测器中的光束错位。这种方法允许在数据传递到实验的下一阶段之前对其进行校正。
    • 信号去噪:该技术使用神经网络作为自动编码器来提取信号的关键特征,然后根据这些特征重建信号。随机噪声不是关键特征,因此重建的信号应该是无噪声的,本质上是使用神经网络作为噪声过滤器,如图 3 所示。
    • 信号分类:神经网络可以将输入信号(例如时间序列)与已知模板或一系列模板进行比较。这使用户能够快速对信号类别进行分类,识别数据集中的异常值或错误,检测随机事件,或根据 IQ 正交幅度识别量子态 [3]。

    图 3:经过神经网络输入后重建的去噪信号。 

    基于FPGA的神经网络有哪些好处?

    神经网络通常由 CPU 和/或 GPU 组合构建和运行。这种方法提供了惊人的计算能力,但也占用大量资源。大型 AI 模型耗能大,而且对于前面提到的信号处理应用类型来说,通常过于耗能。

    相比之下,FPGA 本身的性能不如高端计算机强大。然而,它们的灵活性使其成为实现小型神经网络的理想选择。它们的并行处理能力有利于处理线性代数和其他复杂的数学运算,这些运算与信息在网络中的前向和反向传播有关。由于 FPGA 的空间容量和内存限制,单周期处理能力有限,因此在 FPGA 上进行大型神经网络的前馈传递通常需要更多的周期数。

    基于 FPGA 的神经网络非常适合实验情况,因为它们处理实时数据的速度可以实现快速控制和决策,而无需与主机 PC 通信。FPGA 还具有可重构性,因此用户可以根据自己的需求快速配置神经网络。最后,由于尺寸紧凑,在 FPGA 上实现的神经网络可以帮助减少资源和能源消耗 [4][5]。

    什么是Moku神经网络?

    除了一套可重构的快速、灵活、基于 FPGA 的测试和测量仪器外, Moku:Pro 现在提供 Moku 神经网络得益于 FPGA 的多功能性和快速处理速度,神经网络可以与其他 Moku 仪器一起使用,例如 波形发生器, PID 控制器和 示波器 在信号分析、去噪、传感器调节和闭环反馈等应用中。 

    您可以使用 Python 开发和训练自己的神经网络,并使用 Moku 神经网络将其上传到 Moku:Pro 多仪器并行模式。这允许分析最多四个输入通道或一个时间序列数据通道,以及最多四个输出以实时处理实验数据——所有这些都在 Moku:Pro 上完成。Moku 神经网络具有最多五个密集层,每个密集层最多 100 个神经元,并根据您的应用提供五种不同的激活函数。 

    如果你有兴趣了解基于 FPGA 的 Moku 神经网络如何为你的研究带来好处,请查看此 分步教程。本指南介绍了所有基础知识,包括 Python 安装、Moku 神经网络构建和训练以及实现。如果您已经熟悉神经网络的基本概念,您可以找到高级的、现成的示例 开始.

    需要视频教程? 点播观看我们的网络研讨会.您将学习如何实现基于 FPGA 的神经网络,以实现快速、灵活的信号分析、闭环反馈等。

    参考文献

    [1] K. Clark,课堂讲座,主题:“计算神经网络梯度”,CS224n,美国斯坦福大学,2019 年。 https://web.stanford.edu/class/cs224n/readings/gradient-notes.pdf

    [2] J. Wang, M. Li, W. Jiang, Y. Huang, R. Lin,“基于FPGA的运动控制系统神经网络PID控制器设计”。 传感器, 卷。 22、没有。 3,第 889 页。 2022,XNUMX 年 XNUMX 月。 https://doi.org/10.3390/s22030889 

    [3] NR沃拉 et al., “基于 ML 驱动的 FPGA 实时量子态鉴别,实现中电路测量”,arXiv:2406.18807 [quant-ph],2024 年 XNUMX 月。 

    https://arxiv.org/abs/2406.18807 

    [4] A. El Bouazzaoui、A. Hadjoudja、O. Mouhib,“FPGA 上的实时自适应神经网络:通过动态分类器选择增强适应性”,arXiv:2311.09516v2 [cs.AR],2023 年 XNUMX 月。 

    https://arxiv.org/html/2311.09516v2

    [5] C. Wang 和 Z. Luo,“基于 FPGA 的神经网络优化设计综述”, 应用科学, 第 12 卷,第 3 期,第 10771 页,2022 年 XNUMX 月。 https://doi.org/10.3390/app122110771 

    在演示模式下试用 Moku 下载 Moku 应用 → 获取常见问题的答案 访问知识库 → 与全球的 Moku 用户建立联系 加入用户论坛 →

    其他推荐博客文章

    博客
    什么是生成式乐器演奏?

    这项人工智能技术可用于创建定制化测试解决方案,包括专业测量、实时信号处理和控制功能。

    日期: 2026 年 7 月 14 日

    博客
    基于FPGA的测试与测量定制的5大优势

    具有用户可编程 FPGA 的仪器如何取代成排的测试设备,这对您的实验室意味着什么。

    特点: 自定义仪器

    日期: 2026 年 5 月 22 日

    博客
    MokuOS 4.2 带来更快、更强大的实时自定义功能

    MokuOS 4.2 通过便捷的软件更新,即可在 Moku:Delta 上解锁更高的带宽、更快的实时处理速度和更多的仪器功能。

    日期: 2026 年 3 月 19 日

    返回所有博客

    站内导航

    • 产品
    • 仪器功能
    • 相关资源
    • 支持
    • 关于我们
    • 联系我们
    • 隐私政策
    • 使用条款

    办公室

    美国
    (619) 332-6230
    12526 High Bluff Dr.
    Suite 150
    San Diego, CA 92130

    澳大利亚
    +61 2 6171 9730
    243 Northbourne Avenue
    Suite 1, Level 1
    Lyneham, ACT 2602

    澳大利亚
    +61 3 7073 3594
    5C套房,5楼
    斯旺斯顿街700号
    维多利亚州卡尔顿 – 3058

     

     

    关注我们

    LinkedIn YouTube X Facebook Instagram

    官方微信

    © 2026 Liquid Instruments. 版权所有