日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

梯度下降法,牛顿法,高斯-牛顿迭代法,附代码实现

發(fā)布時(shí)間:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 梯度下降法,牛顿法,高斯-牛顿迭代法,附代码实现 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

---------------------梯度下降法-------------------

梯度的一般解釋:

f(x)在x0的梯度:就是f(x)變化最快的方向。梯度下降法是一個(gè)最優(yōu)化算法,通常也稱(chēng)為最速下降法。

假設(shè)f(x)是一座山,站在半山腰,往x方向走1米,高度上升0.4米,也就是說(shuō)x方向上的偏導(dǎo)是 0.4;往y方向走1米,高度上升0.3米,也就是說(shuō)y方向上的偏導(dǎo)是 0.3;這樣梯度方向就是 (0.4 , 0.3),也就是往這個(gè)方向走1米,所上升的高度最高。梯度不僅僅是f(x)在某一點(diǎn)變化最快的方向,而且是上升最快的方向;如果想下山,下降最快的方向就是逆著梯度的方向,這就是梯度下降法,又叫最速下降法。

梯度下降法用途:

最速下降法是求解無(wú)約束優(yōu)化問(wèn)題最簡(jiǎn)單和最古老的方法之一,雖然現(xiàn)在已經(jīng)不具有實(shí)用性,但是許多有效算法都是以它為基礎(chǔ)進(jìn)行改進(jìn)和修正而得到的。最速下降法是用負(fù)梯度方向?yàn)樗阉鞣较虻?#xff0c;最速下降法越接近目標(biāo)值,步長(zhǎng)越小,前進(jìn)越慢。

迭代公式:

其中,λ為步長(zhǎng),就是每一步走多遠(yuǎn),這個(gè)參數(shù)如果設(shè)置的太大,那么很容易就在最優(yōu)值附加徘徊;相反,如果設(shè)置的太小,則會(huì)導(dǎo)致收斂速度過(guò)慢。所以針對(duì)這一現(xiàn)象,也有一些相應(yīng)的改進(jìn)算法。例如,改進(jìn)的隨機(jī)梯度下降算法,偽代碼如下:

/*************************************
初始化回歸系數(shù)為1
重復(fù)下面步驟直到收斂

{
對(duì)隨機(jī)遍歷的數(shù)據(jù)集中的每個(gè)樣本
隨著迭代的逐漸進(jìn)行,減小alpha的值
計(jì)算該樣本的梯度
使用alpha x gradient來(lái)更新回歸系數(shù)

}
**************************************/

舉例說(shuō)明,定義出多變量線(xiàn)性回歸的模型:

Cost function如下:

如果我們要用梯度下降解決多變量的線(xiàn)性回歸,則我們還是可以用傳統(tǒng)的梯度下降算法進(jìn)行計(jì)算:

梯度下降、隨機(jī)梯度下降、批量(小批量)梯度下降算法對(duì)比:

http://www.cnblogs.com/louyihang-loves-baiyan/p/5136447.html

梯度下降:梯度下降就是上面的推導(dǎo),要留意,在梯度下降中,對(duì)于θ的更新,所有的樣本都有貢獻(xiàn),也就是參與調(diào)整θ.其計(jì)算得到的是一個(gè)標(biāo)準(zhǔn)梯度。因而理論上來(lái)說(shuō)一次更新的幅度是比較大的。如果樣本不多的情況下,當(dāng)然是這樣收斂的速度會(huì)更快啦~
隨機(jī)梯度下降:可以看到多了隨機(jī)兩個(gè)字,隨機(jī)也就是說(shuō)用樣本中的一個(gè)例子來(lái)近似所有的樣本,來(lái)調(diào)整θ,因而隨機(jī)梯度下降是會(huì)帶來(lái)一定的問(wèn)題,因?yàn)橛?jì)算得到的并不是準(zhǔn)確的一個(gè)梯度,容易陷入到局部最優(yōu)解中
批量梯度下降:其實(shí)批量的梯度下降就是一種折中的方法,他用了一些小樣本來(lái)近似全部的,其本質(zhì)就是隨機(jī)指定一個(gè)例子替代樣本不太準(zhǔn),那我用個(gè)30個(gè)50個(gè)樣本那比隨機(jī)的要準(zhǔn)不少了吧,而且批量的話(huà)還是非常可以反映樣本的一個(gè)分布情況的。

------------------------牛頓法------------------------

1、求解方程。

并不是所有的方程都有求根公式,或者求根公式很復(fù)雜,導(dǎo)致求解困難。利用牛頓法,可以迭代求解。

原理是利用泰勒公式,在x0處泰勒展開(kāi)到一階,即:f(x) = f(x0)+(x-x0)f'(x0)

求解方程:f(x)=0,即:f(x0)+(x-x0)*f'(x0)=0,求解:x =?x1=x0-f(x0)/f'(x0),

利用泰勒公式的一階展開(kāi),f(x) = f(x0)+(x-x0)f'(x0)處只是近似相等,這里求得的x1并不能讓f(x)=0,只能說(shuō)f(x1)的值比f(wàn)(x0)更接近f(x)=0,于是乎,迭代求解的想法就很自然了,可以進(jìn)而推出x(n+1)=x(n)-f(x(n))/f'(x(n)),通過(guò)迭代,這個(gè)式子必然在f(x*)=0的時(shí)候收斂。整個(gè)過(guò)程如下圖:

2、牛頓法用于最優(yōu)化

在最優(yōu)化的問(wèn)題中,線(xiàn)性最優(yōu)化至少可以使用單純行法求解,但對(duì)于非線(xiàn)性?xún)?yōu)化問(wèn)題,牛頓法提供了一種求解的辦法。假設(shè)任務(wù)是優(yōu)化一個(gè)目標(biāo)函數(shù)f,求函數(shù)f的極大極小問(wèn)題,可以轉(zhuǎn)化為求解函數(shù)f的導(dǎo)數(shù)f'=0的問(wèn)題,這樣求可以把優(yōu)化問(wèn)題看成方程求解問(wèn)題(f'=0)。剩下的問(wèn)題就和第一部分提到的牛頓法求解很相似了。在極小值估計(jì)值附近,把f(x)泰勒展開(kāi)到2階形式:

當(dāng)且僅當(dāng)?Δx?無(wú)線(xiàn)趨近于0,上面的公式成立。令:f'(x+delta(X))=0,得到:

求解:

得出迭代公式:

  從本質(zhì)上去看,牛頓法是二階收斂,梯度下降是一階收斂,所以牛頓法更快。比如你想找一條最短的路徑走到一個(gè)盆地的最底部,梯度下降法每次只從你當(dāng)前所處位置選一個(gè)坡度最大的方向走一步,牛頓法在選擇方向時(shí),不僅會(huì)考慮坡度是否夠大,還會(huì)考慮你走了一步之后,坡度是否會(huì)變得更大。所以,可以說(shuō)牛頓法比梯度下降法看得更遠(yuǎn)一點(diǎn),能更快地走到最底部。(牛頓法目光更加長(zhǎng)遠(yuǎn),所以少走彎路;相對(duì)而言,梯度下降法只考慮了局部的最優(yōu),沒(méi)有全局思想。

從幾何上說(shuō),牛頓法就是用一個(gè)二次曲面去擬合你當(dāng)前所處位置的局部曲面,而梯度下降法是用一個(gè)平面去擬合當(dāng)前的局部曲面,通常情況下,二次曲面的擬合會(huì)比平面更好,所以牛頓法選擇的下降路徑會(huì)更符合真實(shí)的最優(yōu)下降路徑。如下圖是一個(gè)最小化一個(gè)目標(biāo)方程的例子,紅色曲線(xiàn)是利用牛頓法迭代求解,綠色曲線(xiàn)是利用梯度下降法求解。

在上面討論的是2維情況,高維情況的牛頓迭代公式是:

其中H是hessian矩陣,定義為:

高維情況也可以用牛頓迭代求解,但是Hessian矩陣引入的復(fù)雜性,使得牛頓迭代求解的難度增加,解決這個(gè)問(wèn)題的辦法是擬牛頓法(Quasi-Newton methond),po下擬牛頓法的百科簡(jiǎn)述:

?

----------------高斯-牛頓迭代法----------------

?

高斯--牛頓迭代法的基本思想是使用泰勒級(jí)數(shù)展開(kāi)式去近似地代替非線(xiàn)性回歸模型,然后通過(guò)多次迭代,多次修正回歸系數(shù),使回歸系數(shù)不斷逼近非線(xiàn)性回歸模型的最佳回歸系數(shù),最后使原模型的殘差平方和達(dá)到最小。

①已知m個(gè)點(diǎn):

②函數(shù)原型:

其中:(m>=n),

③目的是找到最優(yōu)解β,使得殘差平方和最小:

殘差:

④要求最小值,即S的對(duì)β偏導(dǎo)數(shù)等于0:

⑤在非線(xiàn)性系統(tǒng)中,是變量和參數(shù)的函數(shù),沒(méi)有close解。因此給定一個(gè)初始值,用迭代法逼近解:

其中k是迭代次數(shù),是迭代矢量。

⑥每次迭代函數(shù)是線(xiàn)性的,在處用泰勒級(jí)數(shù)展開(kāi):

其中:J是已知的矩陣,為了方便迭代,令。

⑦此時(shí)殘差表示為:

⑧帶入公式④有:

化解得:

⑨寫(xiě)成矩陣形式:

⑩所以最終迭代公式為:

?(參見(jiàn)公式7)

其中,Jf是函數(shù)f=(x,β)對(duì)β的雅可比矩陣。

關(guān)于雅克比矩陣,可以參見(jiàn)一篇寫(xiě)的不錯(cuò)的博文:http://jacoxu.com/jacobian矩陣和hessian矩陣/,這里只po博文里的雅克比矩陣部分:

?

1.梯度下降法代碼

/* 需要參數(shù)為theta:theta0,theta1 目標(biāo)函數(shù):y=theta0*x0+theta1*x1; */ #include <iostream> using namespace std;int main() {float matrix[4][2] = { { 1, 1 }, { 2, 1 }, { 2, 2 }, { 3, 4 } };float result[4] = {5,6.99,12.02,18};float theta[2] = {0,0};float loss = 10.0;for (int i = 0; i < 10000 && loss>0.0000001; ++i){float ErrorSum = 0.0;float cost[2] = { 0.0, 0.0 };for (int j = 0; j <4; ++j){float h = 0.0;for (int k = 0; k < 2; ++k){h += matrix[j][k] * theta[k];}ErrorSum = result[j] - h;for (int k = 0; k < 2; ++k){cost[k] = ErrorSum*matrix[j][k];}}for (int k = 0; k < 2; ++k){theta[k] = theta[k] + 0.01*cost[k] / 4;}cout << "theta[0]=" << theta[0] << "\n" << "theta[1]=" << theta[1] << endl;loss = 0.0;for (int j = 0; j < 4; ++j){float h2 = 0.0;for (int k = 0; k < 2; ++k){h2 += matrix[j][k] * theta[k];}loss += (h2 - result[j])*(h2 - result[j]);}cout << "loss=" << loss << endl;}return 0; }

?

隨機(jī)梯度下降法C++代碼:

/* 需要參數(shù)為theta:theta0,theta1 目標(biāo)函數(shù):y=theta0*x0+theta1*x1; */ #include <iostream> using namespace std;int main() {float matrix[4][2] = { { 1, 1 }, { 2, 1 }, { 2, 2 }, { 3, 4 } };float result[4] = {5,6.99,12.02,18};float theta[2] = {0,0};float loss = 10.0;for (int i = 0; i<1000 && loss>0.00001; ++i){float ErrorSum = 0.0;int j = i % 4;float h = 0.0;for (int k = 0; k<2; ++k){h += matrix[j][k] * theta[k];}ErrorSum = result[j] - h;for (int k = 0; k<2; ++k){theta[k] = theta[k] + 0.001*(ErrorSum)*matrix[j][k];}cout << "theta[0]=" << theta[0] << "\n" << "theta[1]=" << theta[1] << endl;loss = 0.0;for (int j = 0; j<4; ++j){float sum = 0.0;for (int k = 0; k<2; ++k){sum += matrix[j][k] * theta[k];}loss += (sum - result[j])*(sum - result[j]);}cout << "loss=" << loss << endl;}return 0; }

matlab代碼:(http://www.dsplog.com/2011/10/29/batch-gradient-descent/)

?

clear ; close all; x = [1:50].'; y = [4554 3014 2171 1891 1593 1532 1416 1326 1297 1266 ...1248 1052 951 936 918 797 743 665 662 652 ...629 609 596 590 582 547 486 471 462 435 ...424 403 400 386 386 384 384 383 370 365 ...360 358 354 347 320 319 318 311 307 290 ].';m = length(y); % store the number of training examples x = [ ones(m,1) x]; % Add a column of ones to x n = size(x,2); % number of features theta_vec = [0 0]'; alpha = 0.002; err = [0 0]'; for kk = 1:10000h_theta = (x*theta_vec);h_theta_v = h_theta*ones(1,n);y_v = y*ones(1,n);theta_vec = theta_vec - alpha*1/m*sum((h_theta_v - y_v).*x).';err(:,kk) = 1/m*sum((h_theta_v - y_v).*x).'; endfigure; plot(x(:,2),y,'bs-'); hold on plot(x(:,2),x*theta_vec,'rp-'); legend('measured', 'predicted'); grid on; xlabel('Page index, x'); ylabel('Page views, y'); title('Measured and predicted page views');

2.牛頓法代碼

實(shí)例,求解二元方程:

x*x-2*x-y+0.5=0; ?(1)

x*x+4*y*y-4=0; ?(2)

#include<iostream> #include<cmath> #define N 2 // 非線(xiàn)性方程組中方程個(gè)數(shù) #define Epsilon 0.0001 // 差向量1范數(shù)的上限 #define Max 1000 //最大迭代次數(shù)using namespace std;const int N2 = 2 * N; void func_y(float xx[N], float yy[N]); //計(jì)算向量函數(shù)的因變量向量yy[N] void func_y_jacobian(float xx[N], float yy[N][N]); // 計(jì)算雅克比矩陣yy[N][N] void inv_jacobian(float yy[N][N], float inv[N][N]); //計(jì)算雅克比矩陣的逆矩陣inv void NewtonFunc(float x0[N], float inv[N][N], float y0[N], float x1[N]); //由近似解向量 x0 計(jì)算近似解向量 x1int main() {float x0[N] = { 2.0, 0.5 }, y0[N], jacobian[N][N], invjacobian[N][N], x1[N], errornorm;//再次X0初始值滿(mǎn)足方程1,不滿(mǎn)足也可int i, j, iter = 0;cout << "初始近似解向量:" << endl;for (i = 0; i < N; i++){cout << x0[i] << " ";}cout << endl;cout << endl;while (iter<Max){iter = iter + 1;cout << "第 " << iter << " 次迭代" << endl; func_y(x0, y0); //計(jì)算向量函數(shù)的因變量向量func_y_jacobian(x0, jacobian); //計(jì)算雅克比矩陣inv_jacobian(jacobian, invjacobian); //計(jì)算雅克比矩陣的逆矩陣NewtonFunc(x0, invjacobian, y0, x1); //由近似解向量 x0 計(jì)算近似解向量 x1errornorm = 0;for (i = 0; i<N; i++)errornorm = errornorm + fabs(x1[i] - x0[i]);if (errornorm<Epsilon)break;for (i = 0; i<N; i++)x0[i] = x1[i];}return 0; }void func_y(float xx[N], float yy[N])//求函數(shù)的因變量向量 {float x, y;int i;x = xx[0];y = xx[1];yy[0] = x*x-2*x-y+0.5;yy[1] = x*x+4*y*y-4;cout << "函數(shù)的因變量向量:" << endl;for (i = 0; i<N; i++)cout << yy[i] << " ";cout << endl; }void func_y_jacobian(float xx[N], float yy[N][N]) //計(jì)算函數(shù)雅克比的值 {float x, y;int i, j;x = xx[0];y = xx[1];//yy[][]分別對(duì)x,y求導(dǎo),組成雅克比矩陣yy[0][0] = 2*x-2;yy[0][1] = -1;yy[1][0] = 2*x;yy[1][1] = 8*y;cout << "雅克比矩陣:" << endl;for (i = 0; i<N; i++){for (j = 0; j < N; j++){cout << yy[i][j] << " ";}cout << endl;}cout << endl; }void inv_jacobian(float yy[N][N], float inv[N][N])//雅克比逆矩陣 {float aug[N][N2], L;int i, j, k;cout << "計(jì)算雅克比矩陣的逆矩陣:" << endl;for (i = 0; i<N; i++){for (j = 0; j < N; j++){aug[i][j] = yy[i][j];}for (j = N; j < N2; j++){if (j == i + N) aug[i][j] = 1;else aug[i][j] = 0;}}for (i = 0; i<N; i++){for (j = 0; j < N2; j++){cout << aug[i][j] << " ";}cout << endl;}cout << endl;for (i = 0; i<N; i++){for (k = i + 1; k<N; k++){L = -aug[k][i] / aug[i][i];for (j = i; j < N2; j++){aug[k][j] = aug[k][j] + L*aug[i][j];}}}for (i = 0; i<N; i++){for (j = 0; j<N2; j++){cout << aug[i][j] << " ";}cout << endl;}cout << endl;for (i = N - 1; i>0; i--){for (k = i - 1; k >= 0; k--){L = -aug[k][i] / aug[i][i];for (j = N2 - 1; j >= 0; j--){aug[k][j] = aug[k][j] + L*aug[i][j];}}}for (i = 0; i<N; i++){for (j = 0; j < N2; j++){cout << aug[i][j] << " ";}cout << endl;}cout << endl;for (i = N - 1; i >= 0; i--){for (j = N2 - 1; j >= 0; j--){aug[i][j] = aug[i][j] / aug[i][i];}}for (i = 0; i<N; i++){for (j = 0; j < N2; j++){cout << aug[i][j] << " ";}cout << endl;for (j = N; j < N2; j++){inv[i][j - N] = aug[i][j];}}cout << endl;cout << "雅克比矩陣的逆矩陣: " << endl;for (i = 0; i<N; i++){for (j = 0; j < N; j++){cout << inv[i][j] << " ";}cout << endl;}cout << endl; }void NewtonFunc(float x0[N], float inv[N][N], float y0[N], float x1[N]) {int i, j;float sum = 0;for (i = 0; i<N; i++){sum = 0;for (j = 0; j < N; j++){sum = sum + inv[i][j] * y0[j];}x1[i] = x0[i] - sum;}cout << "近似解向量:" << endl;for (i = 0; i < N; i++){cout << x1[i] << " ";}cout << endl; }

3.高斯牛頓迭代法代碼(見(jiàn)參考目錄,暫時(shí)只po碼)

例子1,根據(jù)美國(guó)1815年至1885年數(shù)據(jù),估計(jì)人口模型中的參數(shù)A和B。如下表所示,已知年份和人口總量,及人口模型方程,求方程中的參數(shù)。

#include <cstdio> #include <vector> #include <opencv2/core/core.hpp> using namespace std; using namespace cv;const double DERIV_STEP = 1e-5; const int MAX_ITER = 100;void GaussNewton(double(*Func)(const Mat &input, const Mat params), const Mat &inputs, const Mat &outputs, Mat params);double Deriv(double(*Func)(const Mat &input, const Mat params),const Mat &input, const Mat params, int n);// The user defines their function here double Func(const Mat &input, const Mat params);int main() {// For this demo we're going to try and fit to the function // F = A*exp(t*B), There are 2 parameters: A B int num_params = 2;// Generate random data using these parameters int total_data = 8;Mat inputs(total_data, 1, CV_64F);Mat outputs(total_data, 1, CV_64F);//load observation data for (int i = 0; i < total_data; i++) {inputs.at<double>(i, 0) = i + 1; //load year }//load America population outputs.at<double>(0, 0) = 8.3;outputs.at<double>(1, 0) = 11.0;outputs.at<double>(2, 0) = 14.7;outputs.at<double>(3, 0) = 19.7;outputs.at<double>(4, 0) = 26.7;outputs.at<double>(5, 0) = 35.2;outputs.at<double>(6, 0) = 44.4;outputs.at<double>(7, 0) = 55.9;// Guess the parameters, it should be close to the true value, else it can fail for very sensitive functions! Mat params(num_params, 1, CV_64F);//init guess params.at<double>(0, 0) = 6;params.at<double>(1, 0) = 0.3;GaussNewton(Func, inputs, outputs, params);printf("Parameters from GaussNewton: %f %f\n", params.at<double>(0, 0), params.at<double>(1, 0));return 0; }double Func(const Mat &input, const Mat params) {// Assumes input is a single row matrix // Assumes params is a column matrix double A = params.at<double>(0, 0);double B = params.at<double>(1, 0);double x = input.at<double>(0, 0);return A*exp(x*B); }//calc the n-th params' partial derivation , the params are our final target double Deriv(double(*Func)(const Mat &input, const Mat params), const Mat &input, const Mat params, int n) {// Assumes input is a single row matrix // Returns the derivative of the nth parameter Mat params1 = params.clone();Mat params2 = params.clone();// Use central difference to get derivative params1.at<double>(n, 0) -= DERIV_STEP;params2.at<double>(n, 0) += DERIV_STEP;double p1 = Func(input, params1);double p2 = Func(input, params2);double d = (p2 - p1) / (2 * DERIV_STEP);return d; }void GaussNewton(double(*Func)(const Mat &input, const Mat params),const Mat &inputs, const Mat &outputs, Mat params) {int m = inputs.rows;int n = inputs.cols;int num_params = params.rows;Mat r(m, 1, CV_64F); // residual matrix Mat Jf(m, num_params, CV_64F); // Jacobian of Func() Mat input(1, n, CV_64F); // single row input double last_mse = 0;for (int i = 0; i < MAX_ITER; i++) {double mse = 0;for (int j = 0; j < m; j++) {for (int k = 0; k < n; k++) {//copy Independent variable vector, the year input.at<double>(0, k) = inputs.at<double>(j, k);}r.at<double>(j, 0) = outputs.at<double>(j, 0) - Func(input, params);//diff between estimate and observation population mse += r.at<double>(j, 0)*r.at<double>(j, 0);for (int k = 0; k < num_params; k++) {Jf.at<double>(j, k) = Deriv(Func, input, params, k);}}mse /= m;// The difference in mse is very small, so quit if (fabs(mse - last_mse) < 1e-8) {break;}Mat delta = ((Jf.t()*Jf)).inv() * Jf.t()*r;params += delta;//printf("%d: mse=%f\n", i, mse); printf("%d %f\n", i, mse);last_mse = mse;} }

例子2:要擬合如下模型,

由于缺乏觀測(cè)量,就自導(dǎo)自演,假設(shè)4個(gè)參數(shù)已知A=5,B=1,C=10,D=2,構(gòu)造100個(gè)隨機(jī)數(shù)作為x的觀測(cè)值,計(jì)算相應(yīng)的函數(shù)觀測(cè)值。然后,利用這些觀測(cè)值,反推4個(gè)參數(shù)

#include <cstdio> #include <vector> #include <opencv2/core/core.hpp> using namespace std; using namespace cv;const double DERIV_STEP = 1e-5; const int MAX_ITER = 100;void GaussNewton(double(*Func)(const Mat &input, const Mat params), const Mat &inputs, const Mat &outputs, Mat params);double Deriv(double(*Func)(const Mat &input, const Mat params), const Mat &input, const Mat params, int n);double Func(const Mat &input, const Mat params);int main() {// For this demo we're going to try and fit to the function // F = A*sin(Bx) + C*cos(Dx),There are 4 parameters: A, B, C, D int num_params = 4;// Generate random data using these parameters int total_data = 100;double A = 5;double B = 1;double C = 10;double D = 2;Mat inputs(total_data, 1, CV_64F);Mat outputs(total_data, 1, CV_64F);for (int i = 0; i < total_data; i++) {double x = -10.0 + 20.0* rand() / (1.0 + RAND_MAX); // random between [-10 and 10] double y = A*sin(B*x) + C*cos(D*x);// Add some noise // y += -1.0 + 2.0*rand() / (1.0 + RAND_MAX); inputs.at<double>(i, 0) = x;outputs.at<double>(i, 0) = y;}// Guess the parameters, it should be close to the true value, else it can fail for very sensitive functions! Mat params(num_params, 1, CV_64F);params.at<double>(0, 0) = 1;params.at<double>(1, 0) = 1;params.at<double>(2, 0) = 8; // changing to 1 will cause it not to find the solution, too far away params.at<double>(3, 0) = 1;GaussNewton(Func, inputs, outputs, params);printf("True parameters: %f %f %f %f\n", A, B, C, D);printf("Parameters from GaussNewton: %f %f %f %f\n", params.at<double>(0, 0), params.at<double>(1, 0),params.at<double>(2, 0), params.at<double>(3, 0));return 0; }double Func(const Mat &input, const Mat params) {// Assumes input is a single row matrix // Assumes params is a column matrix double A = params.at<double>(0, 0);double B = params.at<double>(1, 0);double C = params.at<double>(2, 0);double D = params.at<double>(3, 0);double x = input.at<double>(0, 0);return A*sin(B*x) + C*cos(D*x); }double Deriv(double(*Func)(const Mat &input, const Mat params), const Mat &input, const Mat params, int n) {// Assumes input is a single row matrix // Returns the derivative of the nth parameter Mat params1 = params.clone();Mat params2 = params.clone();// Use central difference to get derivative params1.at<double>(n, 0) -= DERIV_STEP;params2.at<double>(n, 0) += DERIV_STEP;double p1 = Func(input, params1);double p2 = Func(input, params2);double d = (p2 - p1) / (2 * DERIV_STEP);return d; }void GaussNewton(double(*Func)(const Mat &input, const Mat params),const Mat &inputs, const Mat &outputs, Mat params) {int m = inputs.rows;int n = inputs.cols;int num_params = params.rows;Mat r(m, 1, CV_64F); // residual matrix Mat Jf(m, num_params, CV_64F); // Jacobian of Func() Mat input(1, n, CV_64F); // single row input double last_mse = 0;for (int i = 0; i < MAX_ITER; i++) {double mse = 0;for (int j = 0; j < m; j++) {for (int k = 0; k < n; k++) {input.at<double>(0, k) = inputs.at<double>(j, k);}r.at<double>(j, 0) = outputs.at<double>(j, 0) - Func(input, params);mse += r.at<double>(j, 0)*r.at<double>(j, 0);for (int k = 0; k < num_params; k++) {Jf.at<double>(j, k) = Deriv(Func, input, params, k);}}mse /= m;// The difference in mse is very small, so quit if (fabs(mse - last_mse) < 1e-8) {break;}Mat delta = ((Jf.t()*Jf)).inv() * Jf.t()*r;params += delta; printf("%f\n", mse);last_mse = mse;} }

參考:

http://blog.csdn.net/xiazdong/article/details/7950084

https://en.wikipedia.org/wiki/Gauss%E2%80%93Newton_algorithm

http://blog.csdn.NET/dsbatigol/article/details/12448627

http://blog.csdn.Net/hbtj_1216/article/details/51605155

http://blog.csdn.net/zouxy09/article/details/20319673

http://blog.chinaunix.net/uid-20648405-id-1907335.html?

http://www.2cto.com/kf/201302/189671.html?

http://www.cnblogs.com/sylvanas2012/p/logisticregression.html

http://blog.csdn.net/u012328159/article/details/51613262

?

1.梯度下降法代碼參考

http://blog.csdn.net/u014403897/article/details/45246781

http://www.dsplog.com/2011/10/29/batch-gradient-descent/

2.牛頓法代碼參考

https://wenku.baidu.com/view/949c00fda1c7aa00b42acb13.html

http://www.2cto.com/kf/201302/189671.html

3.高斯牛頓迭代法代碼參考

http://blog.csdn.net/tclxspy/article/details/51281811

http://blog.csdn.net/jinshengtao/article/details/51615162

總結(jié)

以上是生活随笔為你收集整理的梯度下降法,牛顿法,高斯-牛顿迭代法,附代码实现的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

午夜美女影院 | 精品亚洲视频在线 | 精品一区二区在线免费观看 | 国产精品刺激对白麻豆99 | 亚洲天堂精品视频 | 狠狠操综合 | 国产免码va在线观看免费 | 黄色看片| 日韩精品在线免费观看 | 中文字幕亚洲精品日韩 | 中文字幕字幕中文 | 在线久草视频 | 精品免费久久久久 | 日韩欧美视频免费在线观看 | 欧美日韩不卡在线 | 91精品国产福利 | 麻豆视频在线免费观看 | 午夜久久影院 | 在线免费观看国产 | 亚洲精品电影在线 | 国产亚洲精品久久久久久久久久 | 欧美一级激情 | 午夜国产在线 | 91亚洲精品久久久中文字幕 | 国产精品视频资源 | 一区二区视频电影在线观看 | 免费在线播放视频 | 欧美动漫一区二区三区 | 免费特级黄毛片 | 精品999在线观看 | 日韩中文字幕免费电影 | 婷婷六月中文字幕 | 国产一区二区在线免费视频 | 中文字幕在线影院 | 久久ww| 国产精品一区二区三区视频免费 | 91在线免费看片 | 黄色电影网站在线观看 | 久久久影视 | 在线播放亚洲激情 | 久久国产免 | 午夜久久福利视频 | 亚洲黄色app | 黄色毛片在线观看 | 久久黄色小说视频 | 日韩精品欧美专区 | 91少妇精拍在线播放 | 亚洲精品一区二区三区高潮 | 国产精品 9999 | 国产1级毛片 | 亚州欧美视频 | 天天搞夜夜骑 | 精品国产一区二区三区av性色 | 免费99| 天天碰天天操视频 | 国产美女网站在线观看 | 免费观看av | 天天摸天天干天天操天天射 | 九九色在线观看 | 香蕉视频导航 | 久久国产精品网站 | 欧美在线不卡一区 | 又黄又刺激的网站 | 日本公乱妇视频 | 在线免费亚洲 | 激情网综合 | 九月婷婷人人澡人人添人人爽 | 国产综合香蕉五月婷在线 | 国产精品毛片一区 | 亚洲国产精久久久久久久 | 日本黄色免费播放 | 97视频资源 | av丝袜制服| 精品在线观看国产 | 国产精品久久久久av | 亚洲国产精选 | 人人爽久久久噜噜噜电影 | 国产激情久久久 | 欧美精品久久久久久久亚洲调教 | 午夜18视频在线观看 | 久久久亚洲网站 | 欧美精品一区二区三区一线天视频 | 日韩一区二区在线免费观看 | 亚州av免费 | 深爱激情综合网 | 亚洲黄色免费在线 | 波多野结衣一区 | 国内精品久久久久影院日本资源 | 91久久丝袜国产露脸动漫 | 91免费版在线 | 欧美一级专区免费大片 | 丁香电影小说免费视频观看 | 国产精品久久久久免费 | 久久午夜国产精品 | 992tv在线观看网站 | 久久五月婷婷综合 | 91av社区 | 国产精品99久久久久久宅男 | 九九热在线精品视频 | 丝袜美腿在线 | 日韩一区二区免费在线观看 | 日韩3区 | 美国三级黄色大片 | 国产中文字幕精品 | 99色网站 | 欧美在线视频第一页 | 国内精品久久久久久久久久久 | 色先锋资源网 | 97夜夜澡人人双人人人喊 | 久久99国产综合精品免费 | 六月婷婷久香在线视频 | 国产精品亚洲视频 | 亚洲jizzjizz日本少妇 | 久久久久在线观看 | 香蕉视频在线免费 | 成人影音在线 | 中文字幕中文中文字幕 | 国产成人精品在线观看 | 免费观看性生交大片3 | 日本高清中文字幕有码在线 | 久草新在线 | 亚洲成人一二三 | 天天搞夜夜骑 | 国产精品不卡一区 | 91视频在线 | 在线а√天堂中文官网 | 国产在线91在线电影 | 精品久久网| 国产精品免费成人 | 久久久九九 | 一本一道久久a久久综合蜜桃 | 国产在线观看免费 | 成人午夜电影在线 | 免费黄色在线播放 | 成人免费观看视频网站 | a色视频| 午夜性色 | 日韩免费不卡视频 | 五月天久久狠狠 | 国产一区二区在线免费播放 | 人人澡人人干 | 久久久久看片 | 久久精品视频99 | 五月婷久| 五月婷婷激情六月 | 免费久久99精品国产婷婷六月 | zzijzzij亚洲日本少妇熟睡 | 国产精品久久久久久久久久久久冷 | 欧美国产三区 | 四虎成人精品永久免费av九九 | 99久久er热在这里只有精品66 | av网址最新| 中文有码在线视频 | 久久精品一二三区白丝高潮 | 日本少妇高清做爰视频 | 激情欧美日韩一区二区 | 2000xxx影视 | 国产福利a | 99久久激情视频 | 国产一区二区不卡视频 | 黄色在线成人 | 日韩午夜在线 | 开心色激情网 | 欧美日韩不卡一区二区三区 | 日韩欧美电影 | 久久国产女人 | 国产一区二区在线播放 | 国产精品毛片久久久久久 | 欧美日韩精品电影 | 黄色三级免费网址 | 观看免费av| 久久99国产一区二区三区 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 99久久久国产免费 | 国产福利久久 | 国产精品嫩草影院99网站 | 三级在线播放视频 | 欧美日韩免费一区二区 | 国产97免费 | 亚洲国内精品 | 97网| 欧美精品免费一区二区 | 91成人精品 | 一级黄色片网站 | 四虎永久免费在线观看 | 日韩精品中文字幕av | 天天干天天怕 | 久久精品久久久久电影 | 久久欧美在线电影 | 国产免费叼嘿网站免费 | 成年人网站免费在线观看 | 国产99久久久国产 | 精品久久一区二区三区 | 天天狠狠干 | 国产丝袜制服在线 | 日韩av影片在线观看 | 久久久久久毛片精品免费不卡 | 亚洲综合色视频 | 国产粉嫩在线 | 久草在线资源网 | 91精品啪在线观看国产 | 国产一区视频在线播放 | 久久午夜电影院 | 91精品视频在线 | 亚洲视频在线播放 | 久久九九精品久久 | 国产在线视频一区二区三区 | 黄网站免费大全入口 | 亚洲国产999 | 亚洲另类xxxx | 亚洲成人欧美 | 国产网红在线 | 黄色毛片观看 | 中文成人字幕 | 日韩啪啪小视频 | 国产区在线视频 | 九九久久久久久久久激情 | 国产精品一区二 | 亚洲视频六区 | 久久成电影 | 国内精品久久久久久中文字幕 | 国内精品久久久久影院男同志 | 午夜在线日韩 | jizz欧美性9 国产一区高清在线观看 | 日本一区二区三区视频在线播放 | 国产一区免费视频 | 伊人亚洲精品 | 欧美视频www | 国产免费av一区二区三区 | 一区二区三区高清在线 | 国产三级视频在线 | 四虎在线免费观看视频 | 欧美另类xxxxx | 色资源中文字幕 | 成片视频在线观看 | 成人在线黄色电影 | 国产在线高清 | 97福利在线 | 97色在线观看 | 精品国产一区二区三区久久久久久 | 三三级黄色片之日韩 | 五月婷婷视频在线 | 天天操·夜夜操 | 亚洲免费精彩视频 | 日韩免费一区二区在线观看 | 欧美精品免费在线观看 | 性色av香蕉一区二区 | 在线观看色视频 | 高清av在线 | 青青河边草免费 | 国内精品视频在线 | 肉色欧美久久久久久久免费看 | 国产精品九九久久99视频 | 日日夜夜添| 色视频成人在线观看免 | 亚洲欧美成人在线 | 在线观看中文字幕dvd播放 | 国产二区电影 | 欧美日韩国产综合网 | 大型av综合网站 | 久操伊人 | 五月天天在线 | 91精品国产99久久久久久红楼 | 福利视频第一页 | 久热香蕉视频 | sm免费xx网站 | 91网在线看 | 五月婷婷播播 | 亚洲视频每日更新 | 久久综合操 | 精品国产一区二区三区男人吃奶 | 精品视频免费观看 | 青春草视频| 国产日产高清dvd碟片 | 四虎精品成人免费网站 | 69国产精品成人在线播放 | av网站在线免费观看 | 欧美一级片免费观看 | 国产精品久久电影网 | 亚洲精品国偷自产在线91正片 | 手机av看片| 草久久精品 | 91尤物国产尤物福利在线播放 | 中文字幕乱在线伦视频中文字幕乱码在线 | 91精品国产91久久久久久三级 | 西西4444www大胆无视频 | 久草在线视频首页 | 国产自偷自拍 | 欧美日韩精品在线视频 | 国产91精品看黄网站在线观看动漫 | 欧美一进一出抽搐大尺度视频 | 成人福利在线 | 国产无套一区二区三区久久 | 精品视频区 | 欧美最猛性xxxxx免费 | 热久久这里只有精品 | 97色在线观看 | 日韩精品偷拍 | 久久久久久久99精品免费观看 | 国产爽妇网 | 在线观看免费91 | 成人免费观看网站 | 久久精品一区二区三区中文字幕 | 69视频国产 | 天天干天天射天天爽 | 青春草免费在线视频 | 免费观看视频黄 | 看污网站 | 国产精品一区二区久久久 | 伊人激情网 | 国产裸体无遮挡 | 国产亚洲综合性久久久影院 | 97电影网站 | 久久精品人 | 91精品国产91久久久久 | 蜜臀精品久久久久久蜜臀 | 久久观看最新视频 | 天天综合入口 | 久久99久久99免费视频 | 国产精品国产三级国产 | www178ccom视频在线 | 欧美人人爱 | 日韩在线不卡 | 99视频精品免费视频 | 免费成视频 | 欧美日韩在线视频一区 | 欧美日韩视频网站 | 999热视频 | 久久久久久久久毛片精品 | 久久久伦理| 亚洲三级av | 成人黄色大片在线观看 | 免费成人在线观看视频 | 色先锋av资源中文字幕 | 午夜在线免费观看视频 | 一级黄色在线免费观看 | 五月开心婷婷 | 91成人免费在线视频 | 激情图片久久 | 人人超在线公开视频 | 五月天天色 | 国产成人精品一区二 | 成人免费观看大片 | 婷婷深爱 | 成人a级网站 | 91久久偷偷做嫩草影院 | 国产成人在线一区 | 成人国产精品久久久久久亚洲 | 二区三区毛片 | 青青草国产精品 | 国产精品video | 日韩中文在线播放 | 欧美一级性视频 | 蜜桃视频成人在线观看 | 国产精品视频永久免费播放 | 久久成人18免费网站 | 日日爱av | 国产精品一区二区在线观看免费 | 天天操福利视频 | 精品亚洲成人 | 色精品视频 | 激情婷婷亚洲 | 狠狠色丁香婷婷综合 | 一区二区影院 | 超碰公开在线观看 | 亚洲综合色视频 | 免费不卡中文字幕视频 | 亚洲欧美成人综合 | 免费在线观看不卡av | 国产亚洲婷婷免费 | 亚洲首页 | 久草在线最新 | 小草av在线播放 | 在线观看日韩av | 久久九精品 | 免费三及片 | 在线精品视频在线观看高清 | 日韩午夜剧场 | 久久精品视频一 | 亚洲国产精品成人精品 | 天天干,天天射,天天操,天天摸 | 日韩电影精品 | 99999精品视频 | 9999激情| 国产专区第一页 | 91麻豆精品国产91 | 高清不卡一区二区在线 | 国产精品永久 | 亚洲高清在线精品 | 探花在线观看 | 黄色三级免费观看 | 欧美日韩免费一区二区 | 349k.cc看片app| 久久精品一区八戒影视 | 日韩天堂网 | www.久久爱.cn | 成人av影院在线观看 | 91av观看 | 中文字幕av一区二区三区四区 | 亚洲免费av网站 | 香蕉久久久久久av成人 | 免费av免费观看 | 超碰在线最新网址 | 欧美激情综合五月色丁香 | 四虎视频 | 国产视频一 | 久久久久久久久久久电影 | 成人小视频在线观看免费 | 欧美黄色成人 | av网站免费线看精品 | 五月天婷婷在线观看视频 | 国产精品igao视频网入口 | 黄色片网站| 深爱激情综合 | 久久午夜色播影院免费高清 | 国内精品久久久久影院一蜜桃 | 国产1区2| 日本在线观看视频一区 | 久久久夜色| 欧美精品中文字幕亚洲专区 | 亚洲精品网站在线 | 一区二区不卡视频在线观看 | 99国产在线观看 | 国产精品99久久久久久武松影视 | 国产v视频 | 在线三级播放 | 久久在线免费 | 国产精品一区二区视频 | 婷婷伊人五月天 | 国产欧美精品在线观看 | 丁香婷婷基地 | 日韩资源在线 | 国产网红在线 | 91x色| 精品久久久久久久久亚洲 | 久久狠狠干 | 欧美日韩一区三区 | 能在线观看的日韩av | 91福利小视频 | 在线va网站 | 在线看av的网址 | 最近2019好看的中文字幕免费 | 日本资源中文字幕在线 | 久久综合天天 | 久久爱www.| 久久综合九色欧美综合狠狠 | 亚洲日本va中文字幕 | 日韩中文字幕免费在线观看 | 国产欧美最新羞羞视频在线观看 | 99热在线精品观看 | 伊人中文在线 | 国产一区二区影院 | 91精品国产综合久久福利不卡 | 97国产精品亚洲精品 | 亚洲国产婷婷 | 日韩狠狠操 | 欧美日韩中文字幕视频 | 亚洲精品日韩在线观看 | 国产97视频在线 | 日日插日日干 | 丁香六月欧美 | 日韩在线观看网站 | 在线免费观看黄色av | 粉嫩av一区二区三区四区五区 | 国产中文字幕久久 | 最新日韩视频在线观看 | www.黄色片网站 | 一本一本久久aa综合精品 | 日本动漫做毛片一区二区 | 狠狠色伊人亚洲综合网站色 | 99亚洲天堂| 五月婷婷激情综合网 | 免费观看av | www看片网站 | 国内精品久久久久久久久久 | 麻豆你懂的 | 天天摸夜夜添 | 亚洲 成人 欧美 | 久久久婷| 综合精品在线 | 日韩性xxx | 一区中文字幕 | 色网免费观看 | 久久久久国产精品一区 | 91大神一区二区三区 | 日本特黄特色aaa大片免费 | 国产亚洲综合在线 | 国产精品6999成人免费视频 | 视频在线亚洲 | 天天爽天天搞 | 日韩女同av | 久草精品电影 | 91中文字幕在线观看 | 中文字幕人成不卡一区 | 日本九九视频 | 欧美一二三区在线观看 | 日韩高清一二区 | 欧美日韩午夜在线 | 69亚洲精品 | 国产成人精品一区在线 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 国产精彩视频一区二区 | 中文字幕a∨在线乱码免费看 | 最近中文字幕mv免费高清在线 | 亚洲国产av精品毛片鲁大师 | www.99在线观看 | 久久区二区| 精品一区二区在线看 | 国产在线国偷精品产拍免费yy | 久久精品超碰 | 亚洲激精日韩激精欧美精品 | 国产精品网红直播 | 国产精品大片在线观看 | 在线成人小视频 | www.国产毛片 | 日韩电影精品 | 999国内精品永久免费视频 | 天天干天天操人体 | 国产精品嫩草在线 | 日b视频在线观看网址 | 亚洲精品免费在线观看 | 在线免费中文字幕 | 在线观看免费av片 | 在线观看a视频 | 天天操天天干天天干 | 亚洲成av人片在线观看www | 激情网站网址 | 中文字幕日韩国产 | 六月丁香在线观看 | 亚洲高清在线 | 射射射av | 日韩成人免费在线 | 色偷偷88欧美精品久久久 | 在线视频你懂得 | 热久久视久久精品18亚洲精品 | 国产高清在线观看av | 亚洲在线视频播放 | 欧美一级看片 | 色婷婷成人 | 丁香视频五月 | 国内精品国产三级国产aⅴ久 | www.香蕉视频在线观看 | 久久久久久久久久久久久久免费看 | 精品欧美日韩 | 99看视频在线观看 | 91喷水 | 91av视频在线播放 | 色综合久久精品 | 在线观看免费观看在线91 | 国产999免费视频 | 国产爽视频 | 五月天综合婷婷 | 91精品蜜桃 | 亚洲一区 av | 国内精品免费 | 一本—道久久a久久精品蜜桃 | 精品99久久久久久 | 在线黄色国产电影 | 欧美亚洲久久 | 亚洲高清91 | 久久久久婷 | 西西人体4444www高清视频 | 91免费高清视频 | 成人丝袜| 久久综合狠狠狠色97 | 天天艹天天操 | 日韩高清dvd | 99热精品国产一区二区在线观看 | 欧美日韩一区二区三区在线观看视频 | 超碰97国产在线 | 成年人视频免费在线播放 | 日韩69视频 | 13日本xxxxxⅹxxx20| www免费黄色| 久久久久久久久艹 | av色网站| 免费三级网 | 成年人黄色在线观看 | 亚洲精品免费在线播放 | 日韩免费看片 | 国产成人精品一二三区 | 天天天天综合 | 欧美日韩一级视频 | 欧美激情精品久久久久久 | 91久久人澡人人添人人爽欧美 | 午夜12点 | 日韩免费在线观看网站 | 欧美va天堂va视频va在线 | 久久免费一 | 欧美精品在线免费 | 999国内精品永久免费视频 | 麻豆精品在线视频 | 999久久久久久久久久久 | 美女视频是黄的免费观看 | 久久a v视频 | 国产综合精品久久 | 在线色亚洲 | 天天草av | 国产精品久久久久9999吃药 | 日韩中文在线观看 | 日韩在线视频免费播放 | 青春草视频在线播放 | 在线观看一区二区视频 | 成人av一级片 | 国产精品自产拍在线观看网站 | 日韩精品一区二区三区在线播放 | 一色av | 久久国产精品99久久久久久丝袜 | 成人在线你懂得 | 国产精品aⅴ | 久久国产一区二区三区 | 日韩中文字幕网站 | 精品久久久久久久久久岛国gif | 亚洲天天看 | 又黄又爽免费视频 | 国产99久久九九精品免费 | 超薄丝袜一二三区 | 国产精品一区二区三区久久久 | 成人小视频免费在线观看 | 麻豆视屏 | 国产精品涩涩屋www在线观看 | 在线黄av | 色国产精品一区在线观看 | 国产精品美女久久久 | 亚洲草视频 | 91高清视频在线 | 亚洲一区视频在线播放 | 国产片免费在线观看视频 | 欧美成人999 | 日韩视频一区二区 | 天天操夜夜逼 | 99爱精品在线 | 午夜视频在线观看欧美 | 91黄色小网站 | 色com | 天天草天天干天天射 | 国产黄色美女 | 一区二区三区国产精品 | 人人看看人人 | 久99久精品 | 伊在线视频 | 一本大道久久精品懂色aⅴ 五月婷社区 | 免费毛片一区二区三区久久久 | 国产精品福利在线 | www.久久久久 | 中文字幕免费高清av | 男女啪啪免费网站 | 国产一区二区成人 | 国产亚洲成人网 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | free. 性欧美.com | 91男人影院 | 亚洲精品午夜一区人人爽 | 亚洲精品久久久久999中文字幕 | 国产一区二区在线免费播放 | 亚洲成年人在线播放 | 国产成人精品女人久久久 | 婷婷丁香激情 | 午夜影视一区 | 亚洲三级在线免费观看 | 久久久亚洲精品 | 日韩手机视频 | 狠狠色丁香婷婷综合 | 亚洲美女免费精品视频在线观看 | 免费在线播放黄色 | 国产 日韩 欧美 在线 | 欧美国产三区 | 日日干精品 | 国产一级在线视频 | 免费手机黄色网址 | 国内精品毛片 | 亚洲成av人片在线观看香蕉 | 精品国产精品久久 | 国产午夜一区二区 | 综合黄色网 | 色香com.| 97超视频 | 一区二区日韩av | 欧美久久久久久久久 | 精品国自产在线观看 | 国产探花在线看 | 丰满少妇在线观看 | 中文字幕资源网在线观看 | 天天干天天射天天爽 | www狠狠| 免费亚洲黄色 | 五月天九九 | 国产精品视频永久免费播放 | 久久国产精品小视频 | 色久av| av 一区二区三区四区 | 免费在线激情电影 | 久黄色| 日韩美女av在线 | 亚洲三级在线免费观看 | 视频在线观看日韩 | 午夜精品一区二区三区可下载 | 亚洲1级片 | 女人18片 | 99精品视频在线播放观看 | 欧美色噜噜 | 国产破处在线视频 | 亚洲无吗视频在线 | 国产91对白在线播 | 九九热精品在线 | 在线看黄色的网站 | www.玖玖玖| 日韩在线视频免费看 | www国产亚洲 | 91色偷偷 | 视频一区二区精品 | 伊人狠狠色丁香婷婷综合 | 成人黄色电影在线播放 | 97人人模人人爽人人喊中文字 | 国产精品99蜜臀久久不卡二区 | 免费91在线| 国产一级二级三级视频 | 久久免费精品国产 | 成人av久久 | 国产精品久久久久婷婷二区次 | 四虎影视欧美 | 国产精品综合av一区二区国产馆 | 亚洲成人一区 | 黄色片免费看 | 亚洲黄色片| 五月综合婷 | 一区二区三区日韩在线 | 久久字幕网 | 国产91学生粉嫩喷水 | 国产午夜视频在线观看 | 久久艹在线观看 | 97人人模人人爽人人喊中文字 | 精品999国产| 国产精品免费观看在线 | 91av在线国产| 国产精品igao视频网网址 | 久久影视中文字幕 | 中文字幕在线视频一区二区 | 永久免费观看视频 | www.色五月.com | 成人一级片视频 | 日韩av网站在线播放 | 精品久久久久久久久久久久久 | 欧美不卡视频在线 | 日本中文字幕免费观看 | 成人在线免费观看视视频 | 日韩欧美综合精品 | 久久无码精品一区二区三区 | 在线看成人av| 日韩中文字幕一区 | 欧美亚洲国产一卡 | 手机成人在线电影 | 中文字幕在线观看第二页 | 色多多污污在线观看 | 蜜桃视频在线观看一区 | av三级在线播放 | 久久精品官网 | 亚洲精品欧美专区 | 精品麻豆入口免费 | 日韩大片免费在线观看 | 久久理论电影 | 久99久在线 | 亚洲精品美女 | 精品视频在线视频 | 婷婷社区五月天 | 久久伦理影院 | 麻豆国产视频下载 | 色婷婷综合久久久久中文字幕1 | 黄色一级大片在线免费看国产一 | 国外调教视频网站 | 欧美性高跟鞋xxxxhd | 国产一级视屏 | 天天爽网站 | 久久精品理论 | 天天操天天射天天舔 | 日日日日 | japanesexxxhd奶水 国产一区二区在线免费观看 | 欧美黄色软件 | 精品在线观看一区二区 | 欧美日韩综合在线观看 | 久草久草在线观看 | 国产精品日韩欧美一区二区 | av大全在线免费观看 | 中文字幕一区在线观看视频 | 丁香婷婷综合色啪 | 国产日韩在线看 | 亚洲精品国产精品99久久 | 欧美精品一区二区在线播放 | 久久久资源 | 午夜精品影院 | 精品福利网 | 黄污在线观看 | 久久精品91久久久久久再现 | 中文字幕一二 | 国产精品自产拍在线观看桃花 | 99在线免费视频 | 亚洲激精日韩激精欧美精品 | 在线观看片 | 婷婷在线不卡 | 77国产精品 | 91在线91拍拍在线91 | 一色av | 国内久久久久久 | 久久久久综合网 | 亚洲精品一区二区久 | 黄色片免费电影 | 亚洲日日夜夜 | www天天操 | 日韩欧美在线观看一区二区三区 | 99国产成+人+综合+亚洲 欧美 | 久久精视频 | 日韩欧美国产精品 | 亚洲精品玖玖玖av在线看 | 最新av在线网址 | 91中文字幕一区 | 久久在线免费观看视频 | 中文字幕一区二区三区久久 | 欧美一区二区在线刺激视频 | 午夜三级毛片 | 西西4444www大胆无视频 | www.色com| 久久玖| 国产视频 亚洲精品 | 99久久精品免费视频 | 亚洲综合激情小说 | 天天干中文字幕 | 午夜12点 | 日韩字幕在线观看 | 国产精品av在线 | 国产精品一区二区久久精品 | 久久1区 | 久久精品视频在线观看免费 | 免费日韩一区二区三区 | 国精产品999国精产 久久久久 | 在线观看免费中文字幕 | 国产一区视频导航 | www.狠狠操.com| 国产亚州精品视频 | 亚洲午夜精品一区 | 在线免费观看黄色小说 | www.国产在线视频 | 粉嫩av一区二区三区入口 | 国产精品久久99精品毛片三a | 久久在线影院 | 激情av在线播放 | 日批视频在线观看免费 | 婷婷久久综合网 | 欧美日韩国产在线 | 久久精品在线视频 | 国产视频综合在线 | 亚洲人成免费网站 | 99在线看| 国产福利在线不卡 | av色影院 | 国产精品久久久电影 | av看片在线观看 | 日韩欧美亚州 | 成人h视频在线 | 国产一卡在线 | 免费的国产精品 | 精品国产乱码久久久久久1区二区 | 亚洲三级性片 | 黄色一级免费网站 | 不卡的av在线播放 | 久久手机免费视频 | 国产人成在线视频 | 国产高清在线免费观看 | 97电影网手机版 | 在线观看中文 | 人人爽人人爽人人爽学生一级 | 一区二区三区高清在线观看 | 欧美色综合天天久久综合精品 | 中国成人一区 | 97操操操| 亚洲精品在线看 | 亚洲成人av在线播放 | 日韩网站在线播放 | 成人久久久久久久久久 | 丰满少妇在线观看网站 | 亚洲综合网 | 丁香婷婷色综合亚洲电影 | 国产精品福利视频 | 午夜视频一区二区三区 | 美女激情影院 | 岛国av在线免费 | 亚洲精品国产精品乱码在线观看 | 成人欧美一区二区三区在线观看 | av专区在线 | 久草在线视频在线观看 | 亚洲综合干| 超碰精品在线观看 | 超碰在线天天 | 色天天 | 成人国产一区二区 | 欧美一级电影在线观看 | 欧美午夜精品久久久久久孕妇 | 国产又粗又猛又黄又爽视频 | 97天天干 | 丁香色婷 | 国产精品高潮久久av | 国产精品18videosex性欧美 | 五月婷婷视频在线 | 亚洲一级黄色大片 | a色视频 | 国产精品99久久99久久久二8 | 亚洲 欧美 变态 国产 另类 | 久久综合狠狠综合久久狠狠色综合 | 五月开心六月伊人色婷婷 | 亚洲精品国产精品国自产在线 | 麻豆传媒视频在线免费观看 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 丁香在线观看完整电影视频 | 国产精品久久久久永久免费看 | 国产黄色精品网站 | 国产精品一区在线播放 | 在线成人av | 国产在线国偷精品产拍 | 中文字幕国内精品 | 国产免费大片 | 欧美狠狠色 | 中文字幕资源站 | 亚洲精品1区2区3区 超碰成人网 | 亚洲国产精品激情在线观看 | 日日综合 | 国产福利网站 | 精品国产乱码久久久久久1区2匹 | 涩av在线| 国产小视频福利在线 | 欧美少妇18p | 成人 国产 在线 | 丁香婷婷自拍 | 亚洲精品国产高清 | 激情在线网站 | 日韩免费在线网站 | 久久综合网色—综合色88 | 国产色网| 成人av资源在线 | 成人免费大片黄在线播放 | 精品国产欧美一区二区三区不卡 | 黄色成人毛片 | 国产精品亚洲人在线观看 | 一区二区三区免费在线观看视频 | 一区二区 不卡 | 黄色a在线| 国产视频一区在线免费观看 | 九九九在线观看视频 | 狠狠干在线 | 国产视频中文字幕 | 午夜久久网站 | 色综合久久久久综合99 | 日日夜夜免费精品视频 | 久久综合久久伊人 | 六月婷婷久香在线视频 | 久久看毛片 | 久久成人亚洲欧美电影 | 91麻豆高清视频 | 人人狠狠综合久久亚洲 | 特级片免费看 | 一区二区三区久久 | 日韩免费一区二区在线观看 | 中文字幕综合在线 | 久久免费精品国产 | 4438全国亚洲精品在线观看视频 | 91高清免费在线观看 | 2018好看的中文在线观看 | 国产精品对白一区二区三区 | 久久九九免费视频 | 激情视频二区 | 亚洲精品动漫成人3d无尽在线 | 91女神的呻吟细腰翘臀美女 | 欧美日韩另类在线 | 狠狠色狠狠色综合系列 | 成人试看120秒 | av一区二区三区在线观看 | 久久久久久久毛片 | 免费网站看av片 | 婷婷六月色 | zzijzzij亚洲日本少妇熟睡 | 色网站视频 | 在线观看中文字幕网站 | 亚洲国产小视频在线观看 | 精品久久久久久亚洲综合网站 | 在线а√天堂中文官网 | 中文字幕免费在线看 | 久久午夜精品 | 菠萝菠萝蜜在线播放 | 欧美xxxxx在线视频 | 亚洲国产美女精品久久久久∴ | 在线日本v二区不卡 | 一区二区三区福利 | 国产高清视频 | 天天艹日日干 | 国产精品爽爽爽 | 五月婷婷视频在线观看 | 日韩高清不卡在线 | 国产+日韩欧美 | 日韩在线视频一区二区三区 | 久久精品久久精品久久 |