当前位置:首页 > 智能硬件 > 人工智能AI
[导读] 摘 要: 使用分段非线性逼近算法计算超越函数,以神经网络中应用最为广泛的Sigmoid函数为例,结合函数自身对称的性质及其导数不均匀的特点提出合理的分段方法,给出分段方式同逼近多项式阶数对逼近结

摘 要: 使用分段非线性逼近算法计算超越函数,以神经网络中应用最为广泛的Sigmoid函数为例,结合函数自身对称的性质及其导数不均匀的特点提出合理的分段方法,给出分段方式同逼近多项式阶数对逼近结果精度的影响。完成算法在FPGA上的硬件实现,给出一种使用三阶多项式处理Sigmoid函数的拟合结果及流水线架构,处理精度达到10-5数量级,最大频率达到127.327 MHz,满足了高速、高精度的处理要求。
 

0 引言

在实时图像处理、数字信号处理等领域内,经常需要对非线性函数进行高速计算[1]。而在人工神经网络中更是需要对大量的非线性函数进行计算。因此,在人工神经网络的研究领域内,研究如何高速地处理非线性函数具有十分重要的意义。在人工神经网络中应用最为广泛的是Sigmoid函数。目前对于Sigmoid函数实现技术的研究主要分为软件实现和硬件实现两个方面。由于软件相比硬件而言速度较慢并且并行程度很低,所以无法满足其快速处理的要求[2]。因此,在超大规模集成电路快速发展的当今时期,研究如何利用硬件快速处理Sigmoid函数显然更加有意义。

FPGA凭借其可重构技术的灵活性,成为解决Sigmoid函数高速计算问题的有力工具。目前利用FPGA计算Sigmoid函数常用的方法有查找表法、CORDIC算法、Taylor级数展开法和分段线性逼近法。查找表法[3]提前将所有的计算结果保存在一个ROM中,这种方法计算方便且容易实现,但是随着函数计算精度的提高和拟合区间的增加,其所需求的存储资源会显著增加,资源消耗很高。CORDIC算法[4]通过多次迭代将一些复杂的运算转换成为简单的运算,但是随着精度增高,其算法的迭代次数也会提高,计算速度会减慢。Taylor级数展开法[5]在精度要求较高的条件下会增加乘法器和加法器的使用,资源消耗巨大。分段线性逼近法[6-7]将查找表和低阶多项式相结合,计算速度较快,是当前解决此问题的主流方法,然而在有限的分段区间用低阶的多项式进行拟合运算,其计算结果在精度上并没有优势,难以实现高精度的运算要求。

为了解决上述问题,本文采用传统的分段非线性逼近法来处理Sigmoid函数。文献[8]中使用了分段非线性逼近法来处理神经网络中常见的双曲正切函数,然而文中并没有给出分段方法的依据,同时在各小段的分段区间所得到的精度也差异很大。因此,本文针对这一问题,以Sigmoid函数为研究对象,结合Sigmoid函数自身对称及其导数不均匀的性质,利用数值分析中的最小二乘法作为逼近原理,给出合理的分段方式。同时给出对比均匀分段的处理方式下逼近精度的差异情况。利用硬件描述语言实现硬件结构的设计,并在Xilinx Virtex-5系列的XC5VLX110T器件上完成实际验证和性能测试,从资源使用、运算速度同计算精度等方面对设计结果进行合理评估。

1 Sigmoid函数的分段非线性拟合方案及结果分析

分段非线性逼近法的基本原理是用高阶多项式来逼近曲线。首先将待逼近函数按照一定的方式进行分段,之后对每一个小段构建高阶多项式近似地代替原曲线,从而将复杂的非线性函数的计算问题转换成为多项式的计算问题。

由泰勒公式的原理可知,函数在某一点按照泰勒公式展开,随着展开的项数越来越多,逼近式的误差会越来越小。并且,随着项数的增加,每一项在数值上逐渐递减,并最终趋向于无穷小。函数在某一点按照泰勒公式展开,保留N阶多项式时,其之后的所有项数均影响误差,并且(N+1)阶导函数的数值直接影响N阶多项式的逼近结果。具体影响的方式为:N+1阶导数取绝对值后,其值越大,表明函数在这一点处使用N阶多项式逼近的误差越高,因此在这点处对应的分段区间间隔应该相对较小;其值越小,表明函数在这一点处使用N阶多项式逼近的误差越低,因此在这点处对应的分段区间间隔应该相对较大。在考虑分段时,可以根据N+1阶导数的数值大小,将函数的分段区间进行动态调整,避免造成误差过大。通过这样的处理方式,可以对分段方式进行一些优化。下面结合Sigmoid函数进行具体分析。

首先分析Sigmoid函数及其导函数的性质,如图1。F(x)为Sigmoid函数,G(x)为其4阶导函数。在保证足够的分段区间时,使用3阶多项式就能够得到较高的逼近精度。因此,本文使用3阶多项式逼近Sigmoid函数,4阶导函数G(x)直接影响逼近的误差。通过研究图像,得出以下结论:

(1)Sigmoid函数F(x)是以点(0,0.5)为对称中心的函数,因此在计算Sigmoid函数值时只需计算正区间或负区间,另一半可通过对称关系得到;

(2)以正区间为研究对象,Sigmoid函数的4阶导数在x=1处附近取得最大值,并向两侧衰减,随着x的不断增大,4阶导数最终趋向于0。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭