上一节我们给出纯随机LS-SVR-DS算法,此算法简单易行,但有时效率较低,尤其是在参数空间较大的情形下。举例来说,若初始参数接近最优参数,但两个参数的随机步长可能会导致搜索方向偏离正确的方向,这将降低寻优算法的收敛速度。
为了提高寻优效率,我们提出改进的LS-SVR-DS算法。在不放弃精度和简便性的前提下,考虑一个八方向LS-SVR-DS算法以提高效率。
该八方向是均匀分布的,如图4.3(b)所示。这种搜索方法综合了网格搜索法和直接搜索法的优点。网格搜索法的搜索方向和步长都是确定的,虽然算法简便,但是大部分时候我们并不清楚最佳参数的位置信息,这种确定的步长未免过于粗糙,以至于会影响预测精度。通过随机步长和确定搜索方向相结合,改进的八方向LS-SVR-DS既能保留网格搜索的高效,又能引进直接搜索法的高精度。
改进的八方向LS-SVR-DS算法如下:
Step 1 选择初始点B 0=(σ0,γ0),令k=1。
Step 2 考虑B i=(σ0,γ0)+λp(i)作为备选点,其中λ是随机步长;p i()=(p i()σ,p i()γ),i=1,…,8为搜索方向,且(www.xing528.com)
图4.3 最优参数的两种搜索方式
Step 3 根据公式(4.30)计算G在B 0和B i点上的函数值,i=1,…,8。
Step 4 先令B∗=arg min Bi G(B i),i=1,…,8,然后令B 0=B∗。
Step 5 若G(σ0,γ0)≤ε或k≥N,迭代停止。否则,k=k+1,返回Step 2。
纯随机LS-SVR-DS算法与改进的八方向LS-SVR-DS算法的区别如图3.3所示。接下来我们用一组仿真实验来验算算法。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。