數字訊號處理 高斯牛頓法與matlab例項

2021-10-10 05:48:48 字數 2165 閱讀 2776

目錄

一、前言

二、 高斯牛頓法原理

三、matlab例項

高斯牛頓法實際上是牛頓法的在求解非線性最小二乘問題時的乙個特例。基本思想是,使用泰勒級數一階展開式去近似地代替非線性回歸模型,然後通過多次迭代,多次修正回歸係數,使回歸係數不斷通過逼近非線性回歸模型的最佳回歸係數,最後使原模型的殘差平方和達到最小.

泰勒公式是乙個用函式在某點的資訊描述其附近取值的公式。如果函式滿足一定的條件,泰勒公式可以用函式在某一點的各階導數值做係數構建乙個多項式來近似表達這個函式.

在實際使用中,我們使用高斯牛頓法用於雷達目標聚類之後的航向估計。

(1) 初始值的選擇。其方法有三種:

1) 根據以往的經驗選定初始值;

2)  用分段法求出初始值;

3)  對於可線性化的非線性回歸模型,通過線性變換,然後施行最小平方法求出初始值

總結:上述矩陣表示式中第三項有誤,d_px1應當是b_px1,注意移項之後的表示式,也就是說帶估計引數移動一小段δx對應δf(x)移動了多大距離,目標是求出乙個δx使δf(x)移動的距離最小. 注意上述表示式中yi是理想值也是已知值,f(x,g)是根據估計引數得出的對應實際值.為了使||f(x+δx)||^2最小求出乙個增量δx,迴圈迭代直到δx變化很小,說明||f(x+δx)||^2也變化很小,可以說已經達到最優解了.具體的可以對應以下**理解.

計算步驟(slam 十四講,高斯牛頓):

y=exp(a*x^2+b*x+c)+w這個模型驗證一下,其中w為雜訊,a、b、c為待解算係數

clear all;

close all;

clc;

a=1;b=2;c=1; %待求解的係數

x=(0:0.01:1)';

w=rand(length(x),1)*2-1; %生成雜訊

y=exp(a*x.^2+b*x+c)+w; %帶雜訊的模型

plot(x,y,'.')

pre=rand(3,1); %步驟1

for i=1:1000

f = exp(pre(1)*x.^2+pre(2)*x+pre(3));

g = y-f; %步驟2中的誤差

p1 = exp(pre(1)*x.^2+pre(2)*x+pre(3)).*x.^2; %對a求偏導

p2 = exp(pre(1)*x.^2+pre(2)*x+pre(3)).*x; %對b求偏導

p3 = exp(pre(1)*x.^2+pre(2)*x+pre(3)); %對c求偏導

j = [p1 p2 p3]; %步驟2中的雅克比矩陣

delta = inv(j'*j)*j'* g; %步驟3,inv(j'*j)*j'為h的逆

pcur = pre+delta; %步驟4

if norm(delta) <1e-16

break;

endpre = pcur;

endhold on;

plot(x,exp(a*x.^2+b*x+c),'r');

plot(x,exp(pre(1)*x.^2+pre(2)*x+pre(3)),'g');

%比較一下

參考:多元高斯牛頓法推導:

最小二乘法,梯度下降法,牛頓迭代法,高斯牛頓法原理整理:

數字訊號處理與數字訊號處理器

數字訊號處理與數字訊號處理器 數字訊號處理 digital signal processing,dsp 與數字訊號處理器 digital signal processor,dsp 兩者的縮寫都是dsp,但凡是電子資訊類專業的同學,都知道dsp是這個學科最重要的專業基礎課程之一,但實際上,很多朋友對這...

數字訊號處理

1.乙個切比雪夫i型模擬帶阻濾波器用下面的指標設計 通帶截止頻率為 和 阻帶截止頻率為 和 峰值通帶紋波是 最小阻帶衰減為 相應的模擬低通濾波器的頻帶截止頻率和階次是多少?帶阻濾波器的階次是多少?用matlab函式cheblord來驗證濾波器階次結果 寫出程式關鍵步驟 matlab驗證 n 3 fs...

數字訊號處理

一 訊號處理的典型過程 1 模擬濾波 x t xa t 觀測訊號經過前置模擬器ha s 去掉一些帶外成分和干擾 2 取樣 xa t xa nt 以取樣週期t對xa t 進行取樣,得到時域離散訊號xa nt 將時間離散化 3 a d 變換 xa nt x n 把原先訊號幅值連續變換 量化幅值 將幅值離...