已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
上海住房面積和房?jī)r(jià)的線性回歸分析王明黔(上海大學(xué) 機(jī)電工程與自動(dòng)化學(xué)院,上海200444) 摘要:在數(shù)據(jù)構(gòu)建統(tǒng)計(jì)模型的學(xué)習(xí)中,統(tǒng)計(jì)學(xué)習(xí)是其一種基礎(chǔ)的學(xué)習(xí)方法。本文針對(duì)城市人口數(shù)目與飲品連鎖店利潤(rùn)的關(guān)系,就已有的數(shù)據(jù)進(jìn)行線性回歸分析,利用Matlab工具進(jìn)行數(shù)據(jù)的線性回歸模擬,進(jìn)而得出城市人口數(shù)目與飲品連鎖店利潤(rùn)的散點(diǎn)圖、擬合直線圖和三維等高線圖。為了分析上海地區(qū)的住房面積和房?jī)r(jià)的關(guān)系,收集最近的售房成交數(shù)據(jù),將數(shù)據(jù)導(dǎo)入到Matlab進(jìn)行分析,得出上海房?jī)r(jià)與住房面積的線性關(guān)系。關(guān)鍵詞:Matlab;線性回歸;目標(biāo)函數(shù);梯度下降;統(tǒng)計(jì)學(xué)習(xí)基于數(shù)據(jù)的機(jī)器學(xué)習(xí)是現(xiàn)代智能技術(shù)中十分重要的一個(gè)方面,主要研究如何從一些觀測(cè)數(shù)據(jù)(樣本)出發(fā),得出目前尚不能通過原理性分析得到的規(guī)律,并用以對(duì)未來數(shù)據(jù)或無法觀測(cè)的數(shù)據(jù)進(jìn)行預(yù)測(cè)。現(xiàn)實(shí)生活中大量存在我們尚無法準(zhǔn)確認(rèn)識(shí)但卻可以進(jìn)行觀測(cè)的事件。因此,這種機(jī)器學(xué)習(xí)在從現(xiàn)代科學(xué)、技術(shù)到社會(huì)、經(jīng)濟(jì)等各領(lǐng)域中都有著十分重要的應(yīng)用1。使用線性回歸方法可以對(duì)一些觀測(cè)數(shù)據(jù)進(jìn)行分析,把預(yù)測(cè)事件中一些因素作為自變量,另一些隨自變量變化而變化的變量作為因變量,研究它們之間的非確定性因果關(guān)系,以便預(yù)測(cè)因變量的未來發(fā)展趨勢(shì)。根據(jù)若干觀測(cè)數(shù)據(jù)尋找描述變量之間的函數(shù)或統(tǒng)計(jì)相關(guān)關(guān)系的最佳數(shù)學(xué)表達(dá)式,或者匹配數(shù)據(jù)之間相關(guān)關(guān)系的最佳擬合曲線,來表達(dá)隨機(jī)性變量間的規(guī)律2。利用線性回歸通過多變量機(jī)器學(xué)習(xí)的方法,可以建立上海住房面積和價(jià)格的線性關(guān)系,建立數(shù)學(xué)模型并評(píng)估其中的未知參數(shù)。1 案例分析1.1 目標(biāo)函數(shù)的建立根據(jù)已知給出的城市人口數(shù)目與飲品連鎖店利潤(rùn)的一些數(shù)據(jù),可以得到一個(gè)樣本集,如圖1,為樣本在Matlab軟件加載數(shù)據(jù)圖,第一列表示城市人口數(shù)目,第二列表示飲品連鎖店利潤(rùn)。圖1 城市人口數(shù)目與飲品連鎖店利潤(rùn)的樣本集Fig 1 Urban population and beverage chain profits of sample set針對(duì)樣本集,我們可以假設(shè)一個(gè)線性模型: (1)式中:假設(shè)的線性模型;樣本/特征;參數(shù)。其中,為模型參數(shù),因此問題就可以轉(zhuǎn)換為,求出的值。為了得到較為準(zhǔn)確的回歸線,應(yīng)該滿足一個(gè)前提,即各樣本點(diǎn)盡可能分布在所建立的線性模型周圍,因此我們建立目標(biāo)函數(shù): (2)式中:向量中的第個(gè)元素;向量中的第個(gè)元素;模型假設(shè);訓(xùn)練集的數(shù)量。因此,我們只要求得使上述函數(shù)的值最小時(shí)的的值。1.2 目標(biāo)函數(shù)的求解我們首先從一組開始,利用最速下降法不斷改變的值來減小,直到達(dá)到我們希望得到的最小值3。對(duì)于最速下降法,可利用以下公式而來求解: (3)式中:學(xué)習(xí)速率(步長(zhǎng)); 下降方向。其中為修正學(xué)習(xí)速率,即搜索的步長(zhǎng),當(dāng)過小,會(huì)延長(zhǎng)搜索的時(shí)間,當(dāng)過大,可能會(huì)錯(cuò)過極值點(diǎn),導(dǎo)致不收斂。還有要注意最速下降法會(huì)收斂到局部最小值的情況,這種情況即便修正學(xué)習(xí)速率也不會(huì)改變結(jié)果,并且接近局部最小值時(shí),因?yàn)樾甭实臏p小最速下降法會(huì)自動(dòng)減少每步的補(bǔ)償4。因此,我們要現(xiàn)注意目標(biāo)函數(shù)的極小值情況,如果有局部最小值可通過調(diào)節(jié)參數(shù)的大小來跳過局部最小值情況,否則,就不需跳過,最終通過多次迭代可以得到最終的理想結(jié)果。2 Matlab求解2.1 最速下降法的循環(huán)語句在Matlab程序中,最速下降法是一個(gè)不斷迭代循環(huán)的過程,且確保同時(shí)更新,具體循環(huán)如下:2.2 ComputeCost函數(shù)的定義J函數(shù)即目標(biāo)函數(shù),m代表數(shù)據(jù)的個(gè)數(shù),具體程序如下:function J = computeCost(X, y, theta)m = length(y);J = 0;predictions=X*theta;J=1/(2*m)*(predictions-y)*(predictions-y);end2.3 gradientDescent函數(shù)的定義GradientDescent函數(shù)就是最速下降法的迭代與循環(huán)過程5,具體如下:function theta, J_history = gradientDescent(X, y, theta, alpha, num_iters)m = length(y);J_history = zeros(num_iters, 1);for iter = 1:num_iterstemp1 = theta(1) - (alpha / m) * sum(X * theta - y).* X(:,1);temp2 = theta(2) - (alpha / m) * sum(X * theta - y).* X(:,2);theta(1) = temp1;theta(2) = temp2;J_history(iter) = computeCost(X, y, theta);endend2.4 散點(diǎn)圖的繪制具體的數(shù)據(jù)已經(jīng)根據(jù)一定格式記錄在txt文件中,因此只需調(diào)取其中的數(shù)據(jù)并將散點(diǎn)繪制到圖中6,具體程序如下:function plotData(x, y)figure; data = load(ex1data1.txt);X = data( : , 1 );Y = data( : , 2);X = ones(size(X,1),1),X; plot(X,Y,rx,MarkerSize, 4); axis(4 24 -5 25); xlabel(x); ylabel(y); end運(yùn)行程序后得到散點(diǎn)圖如圖2所示:圖2 散點(diǎn)圖Fig.2 scatter diagram2.5 回歸線的繪制通過機(jī)器統(tǒng)計(jì)學(xué)習(xí)后得到線性回歸線,如圖3所示: 圖3 回歸線fig.3 The regression line運(yùn)行主程序中的語句計(jì)算出和J的最小值,程序如下:theta,J_history = gradientDescent(X, y, theta, alpha, num_iters);Matlab程序運(yùn)行后結(jié)果報(bào)告如圖4所示:圖4 報(bào)告窗口fig.4 The report window其中ans結(jié)果為Matlab運(yùn)行的最后一步結(jié)果,下面為模型參數(shù)值。假設(shè)模型參數(shù)值: ,2.6 等高線及三維圖的繪制將和J的值繪制在三維圖上,將的值以J為高度繪制繪制成等高線圖,并將中心點(diǎn)即優(yōu)化的參數(shù)用紅色點(diǎn)標(biāo)記,如下圖5所示: 圖5 三維圖和等高線圖Fig. 5 Graphic model and contour map等高線圖中點(diǎn)紅點(diǎn)代表了目標(biāo)函數(shù)最小是對(duì)應(yīng)的模型參數(shù)值,該參數(shù)值下的直線到每一個(gè)統(tǒng)計(jì)數(shù)據(jù)點(diǎn)的距離最短,最能代表離散統(tǒng)計(jì)數(shù)據(jù)的線性回歸特性。2.7 結(jié)論根據(jù)已經(jīng)給定的城市人口數(shù)目與飲品連鎖店利潤(rùn)的關(guān)系,通過建立目標(biāo)函數(shù),由Matlab軟件進(jìn)行迭代求解,求解后的線性回歸模型函數(shù)如下: (4)3 實(shí)際問題中國(guó)人多地少,土地不可再生,土地的稀缺性導(dǎo)致土地價(jià)格在未來城市發(fā)展中看漲,因此,房?jī)r(jià)也自然總體趨漲7。對(duì)于一些在滬求學(xué)的異地研究生們,在畢業(yè)后會(huì)存在是否留滬的選擇。而房?jī)r(jià)是我們選擇留滬的主要因素。為了了解上海的住房面積和價(jià)格的情況,我從鏈家網(wǎng)隨機(jī)查找了120組不同區(qū)域以及不同面積的售房交易數(shù)據(jù),將這些數(shù)據(jù)進(jìn)行整理,并且希望通過統(tǒng)計(jì)學(xué)習(xí)的手段得出一般住房面積和價(jià)格的線性回歸關(guān)系,通過設(shè)定兩個(gè)期望住房面積來估計(jì)對(duì)應(yīng)面積下的購(gòu)房?jī)r(jià)格。3.1 程序的設(shè)計(jì)首先,通過EXCEL表格將收集的數(shù)據(jù)進(jìn)行整理,得出了上海地區(qū)售房面積和價(jià)格對(duì)應(yīng)表格,120組數(shù)據(jù)具體可見于附錄。將120組數(shù)據(jù)通過TXT文件進(jìn)行編輯后導(dǎo)入到Matlab軟件中,其部分?jǐn)?shù)據(jù)在軟件中的表現(xiàn)形式如圖6所示:圖6 售房面積和價(jià)格數(shù)據(jù)在Matlab中表現(xiàn)形式Fig. 6 The data expression form of house area and price on sale in Matlab將這些數(shù)據(jù)以txt的格式保存,文件名為house,以便在主程序加載數(shù)據(jù)調(diào)用。該最速下降統(tǒng)計(jì)學(xué)習(xí)程序主要分為調(diào)用數(shù)據(jù)、繪制離散圖、梯度下降和擬合直線、可視化顯示目標(biāo)函數(shù)、目標(biāo)函數(shù)值與迭代次數(shù)關(guān)系函數(shù)這五個(gè)部分。3.1.1 調(diào)用數(shù)據(jù)程序?qū)ouse.txt文件中的數(shù)據(jù)加載到data矩陣中,將data矩陣中的第一列中所有值組成一個(gè)向量?jī)?chǔ)存在X向量中,將data矩陣中的第二列中所有值組成一個(gè)向量?jī)?chǔ)存在y向量中,然后在y向量中計(jì)算訓(xùn)練樣本數(shù)量存儲(chǔ)到變量m中。其相關(guān)程序段如下:data = load(house.txt); %調(diào)用數(shù)據(jù)X = data(:, 1); y = data(:, 2); %向量存儲(chǔ)m = length(y); %計(jì)算訓(xùn)練樣本數(shù)量3.1.2 繪制離散圖程序 該過程主要包括主程序的調(diào)用以及調(diào)用函數(shù)的定義,定義函數(shù)首先要打開一個(gè)繪圖窗口,然后定義數(shù)值范圍,最終附上標(biāo)簽繪制圖形或者點(diǎn)。通過這樣的方式處理,我們可以清晰的看到上海售房面積和價(jià)格的離散分布關(guān)系。主程序部分:plotData(X, y);fprintf(Program paused.Press enter to continue.n);定義調(diào)用函數(shù)plotData(X, y)function plotData(x, y)figure; % open a new figure windowplot(x, y, rx, MarkerSize,10);ylabel(Shanghai Commercial Housing Price in RMB one million);xlabel(Shanghai Commercial Housing Area in 10 square meters);end3.1.3 梯度下降和擬合直線程序此處先對(duì)參數(shù)進(jìn)行初始化設(shè)置,然后設(shè)置初始的迭代次數(shù)和計(jì)算步長(zhǎng)(學(xué)習(xí)速率),接著進(jìn)行目標(biāo)函數(shù)的迭代計(jì)算,并且不斷將模型參數(shù)顯示在屏幕上,接著畫出擬合的直線,在屏幕上顯示顯示“數(shù)據(jù)訓(xùn)練和直線擬合”,最后根據(jù)擬合的直線估計(jì)80和160的商品房所對(duì)應(yīng)的價(jià)格。主程序部分:fprintf(Running Gradient Descent .n)X = ones(m, 1), data(:,1); % Add a column of ones to xtheta = zeros(2, 1); % initialize fitting parameters iterations = 1000; % Some gradient descent settingsalpha =0.01; % compute and display initial costcomputeCost(X, y, theta) % run gradient descenttheta = gradientDescent(X, y, theta, alpha, iterations); % print theta to screenfprintf(Theta found by gradient descent: );fprintf(%f %f n, theta(1), theta(2); % Plot the linear fithold on; % keep previous plot visibleplot(X(:,2), X*theta, -)legend(Training data, Linear regression)hold off % dont overlay any more plots on this figurepredict1 = 1,8 *theta; % Predict values for house area of 35,000 and 70,000fprintf(For house area = 80, we predict a price of %fn,. predict1*1000000);predict2 = 1, 16 * theta;fprintf(For house area = 160, we predict a price of %fn,. predict2*1000000);fprintf(Program paused. Press enter to continue.n);pause;定義梯度下降調(diào)用函數(shù):function theta, J_history = gradientDescent(X, y, theta, alpha, num_iters)m = length(y); % number of training examplesJ_history = zeros(num_iters, 1);for iter = 1:num_iterstemp1 = theta(1) - (alpha / m) * sum(X * theta - y).* X(:,1);%最速下降發(fā)的迭代循環(huán) temp2 = theta(2) - (alpha / m) * sum(X * theta - y).* X(:,2); theta(1) = temp1; theta(2) = temp2;%同時(shí)更新theta1和theta2 J_history(iter) = computeCost(X, y, theta);endend3.1.4 可視化顯示目標(biāo)函數(shù) 該處Matlab程序主要將目標(biāo)函數(shù)和兩模型參數(shù)的對(duì)應(yīng)關(guān)系通過空間平面和等高線的形式表達(dá)出來,根據(jù)空間平面我們可以清晰看出目標(biāo)函數(shù)的具體極值分布形式。根據(jù)等高線圖可以看出最終迭代計(jì)算結(jié)果是否為最優(yōu)解,倘若紅色的點(diǎn)位于等高線的最中間,則該情況為最優(yōu)解,否則,不是最優(yōu)解。主程序部分:fprintf(Visualizing J(theta_0, theta_1) .n)theta0_vals = linspace(-10, 10, 100);theta1_vals = linspace(-1, 4, 100);J_vals = zeros(length(theta0_vals), length(theta1_vals);for i = 1:length(theta0_vals) for j = 1:length(theta1_vals) t = theta0_vals(i); theta1_vals(j); J_vals(i,j) = computeCost(X, y, t); endendJ_vals = J_vals;figure;surf(theta0_vals, theta1_vals, J_vals)xlabel(theta_0); ylabel(theta_1);figure;contour(theta0_vals, theta1_vals, J_vals, logspace(-2, 3, 20)xlabel(theta_0); ylabel(theta_1);hold on;plot(theta(1), theta(2), rx, MarkerSize, 10, LineWidth, 10);定義目標(biāo)函數(shù): function J = computeCost(X, y, theta)m = length(y); J = 0;predictions=X*theta;J=1/(2*m)*(predictions-y)*(predictions-y);end3.2 確定計(jì)算步長(zhǎng)我們?cè)谶@里迭代計(jì)算時(shí),并不是一開始就能迭代成功,正如前面所說步長(zhǎng)過小,會(huì)延長(zhǎng)搜索的時(shí)間,步長(zhǎng)過大,可能會(huì)錯(cuò)過極值點(diǎn),導(dǎo)致不收斂。故我們可通過建立目標(biāo)函數(shù)值和迭代次數(shù)的關(guān)系函數(shù),將不同的步長(zhǎng)以一定的數(shù)量級(jí)排列,分別作出目標(biāo)函數(shù)值和已運(yùn)算迭代次數(shù)的關(guān)系函數(shù)曲線。為了更好的展示目標(biāo)函數(shù)值和已運(yùn)算迭代次數(shù)的對(duì)應(yīng)關(guān)系,可以設(shè)置足夠的迭代次數(shù),設(shè)定足夠的迭代次數(shù)為3000。目標(biāo)函數(shù)值與迭代次數(shù)關(guān)系函數(shù)程序段:iterations=3000;alpha=1;%輸入第一個(gè)步長(zhǎng)theta,J1 = gradientDescent(X, y, zeros(2,1), alpha, iterations);alpha=2;%輸入第二個(gè)步長(zhǎng)theta,J2 = gradientDescent(X, y, zeros(2,1), alpha, iterations);alpha=3;%輸入第三個(gè)步長(zhǎng)theta,J3 = gradientDescent(X, y, zeros(2,1), alpha, iterations);figure;plot(1:numel(J1), J1, -k, LineWidth, 2);%第一條線顯示連續(xù)線hold on;plot(1:numel(J2), J2, - -k, LineWidth, 2);%第二條線顯示虛線hold on;plot(1:numel(J3), J3, -.k, LineWidth, 2);%第三條線顯示點(diǎn)畫線axis(0 3000 0 15);%限定坐標(biāo)值顯示范圍xlabel(迭代次數(shù)); ylabel(J的值);legend(alpha=1 , alpha=2, alpha=3)hold off現(xiàn)在選取步長(zhǎng)為1、0.1、0.01和0.001、0.0001、0.00001兩組數(shù)據(jù)進(jìn)行迭代運(yùn)算,通過Matlab作出目標(biāo)函數(shù)值和已運(yùn)算迭代次數(shù)的關(guān)系函數(shù)曲線,判斷目標(biāo)函數(shù)值的收斂性。 3.2.1 第一組迭代運(yùn)算判斷斂散性將第一組步長(zhǎng)值1、0.1和0.01帶入目標(biāo)函數(shù)值與迭代次數(shù)關(guān)系函數(shù)程序段中進(jìn)行運(yùn)算作圖,為了讓圖形表示清晰,其坐標(biāo)值可再一次限定其范圍,其運(yùn)行結(jié)果如圖7所示。根據(jù)圖中結(jié)果可知:步長(zhǎng)為1和0.1時(shí),J的函數(shù)是發(fā)散的,而步長(zhǎng)為0.01時(shí),J的函數(shù)是收斂的。圖7 第一組步長(zhǎng)中目標(biāo)函數(shù)值的斂散性Fig.7 The convergence curves of first group alpha 3.2.2 第二組迭代運(yùn)算判斷斂散性 將第一組步長(zhǎng)值0.001、0.0001和0.00001帶入目標(biāo)函數(shù)值與迭代次數(shù)關(guān)系函數(shù)程序段中進(jìn)行運(yùn)算作圖,為了讓圖形表示清晰,其坐標(biāo)值可再一次限定其范圍,其運(yùn)行結(jié)果如圖8所示。根據(jù)圖中結(jié)果可知:在該組所有步長(zhǎng)下,J的函數(shù)都是收斂的。圖8 第二組步長(zhǎng)中目標(biāo)函數(shù)值的斂散性Fig.8 The convergence curves of second group alpha3.2.3 綜合步長(zhǎng)分析在第一組步長(zhǎng)分析過程中,當(dāng)步長(zhǎng)為0.01時(shí),J的函數(shù)雖然判斷是收斂的,但是其具體在多少次迭代下已經(jīng)收斂到最小值我們不能從圖7中看出。在第二組步長(zhǎng)分析過程中,雖然3個(gè)步長(zhǎng)下均能保證目標(biāo)函數(shù)值能收斂,但是當(dāng)步長(zhǎng)為0.00001時(shí),其所需的迭代次數(shù)需達(dá)到5000才收斂,其計(jì)算時(shí)間太長(zhǎng),故不能算是最速下降。為確定合適的步長(zhǎng),現(xiàn)將步長(zhǎng)為0.01、0.001和0.0001進(jìn)行目標(biāo)函數(shù)收斂分析。如圖9所示,該圖在不同的迭代次數(shù)尺度下表現(xiàn)不同步長(zhǎng)對(duì)應(yīng)目標(biāo)函數(shù)J的收斂特性。圖9 綜合目標(biāo)函數(shù)收斂特性分析Fig.9 The convergence curves of composite alpha根據(jù)上圖和Matlab迭代計(jì)算結(jié)果的最小值和對(duì)應(yīng)最小值所需的最少迭代次數(shù)填入下表,如下表1。表1 步長(zhǎng)和目標(biāo)函數(shù)值Tab.1 The alpha and J步長(zhǎng)alpha目標(biāo)函數(shù)最小值達(dá)到最小值時(shí)所需最少迭代次數(shù)0.012.49592914980.0012.495929149880.00012.495929149892由上表可知選用步長(zhǎng)數(shù)量級(jí)為0.01,可實(shí)現(xiàn)最速梯度下降。此處,不再討論0.01附近的步長(zhǎng)所對(duì)應(yīng)的目標(biāo)函數(shù)迭代次數(shù)關(guān)系。3.3 計(jì)算假設(shè)模型參數(shù)上面已經(jīng)得到比較適合的迭代參數(shù),現(xiàn)在可將步長(zhǎng)為0.01,迭代次數(shù)iterations為1500帶入到程序中進(jìn)行計(jì)算,其運(yùn)算結(jié)果如下:ans =14.2726Theta found by gradient descent: -0.715237 0.590743運(yùn)算結(jié)果中ans代表了Matlab軟件最后一步運(yùn)算的結(jié)果,gradient descent代表了模型參數(shù)值,即模型參數(shù)值,即參數(shù)、。以下為可視化的點(diǎn)圖、擬合直線圖、目標(biāo)函數(shù)與模型參數(shù)的立體圖以及等高線圖。通過plot函數(shù)作圖可以得出售房面積和售房?jī)r(jià)格的離散數(shù)據(jù)圖。如圖10所示,從離散圖可以看出數(shù)據(jù)整體是呈現(xiàn)售房?jī)r(jià)格與售房面積線性遞增的趨勢(shì)。圖10 離散點(diǎn)圖Fig. 10 The discrete point diagram接下來通過統(tǒng)計(jì)學(xué)習(xí)的方法擬合直線,如圖11所示,從擬合直線可以看出擬合后的售房房?jī)r(jià)與售房面積的線性關(guān)系,直線以上數(shù)據(jù)差不多為市中心售房?jī)r(jià)位,直線以下大概為郊區(qū)售房?jī)r(jià)位,直線上大概為市中心與郊區(qū)的普遍價(jià)位。圖11. 線性擬合圖Fig11. Linear regression figure接下來可以通過surf函數(shù)和contour函數(shù)繪制目標(biāo)函數(shù)與模型參數(shù)的立體圖以及等高線圖。如圖12所示,從曲面圖可以看出目標(biāo)函數(shù)隨模型參數(shù)的變化關(guān)系,可以明顯看出該目標(biāo)函數(shù)只有一個(gè)極小值,因此該處不會(huì)出現(xiàn)局部最小值情況。根據(jù)目標(biāo)函數(shù)等高線圖可以看出迭代計(jì)算后的參數(shù)值位于等高線的中間區(qū)域,因此可以判斷出以上合適步長(zhǎng)優(yōu)化分析過程是正確的。圖12 實(shí)際問題三維圖和等高線圖Fig. 12 Graphic model and contour map in practical problem通過上面的分析,這里的迭代過程顯然是合理的,我們可以直接得出模型的線性回歸方程:在程序中我們添加了預(yù)測(cè)情況計(jì)算,其具體主程序段如下:predict1 = 1,8 *theta;fprintf(For house area = 80, we predict a house price of %fn,. predict1*1000000);predict2 = 1, 120 * theta;fprintf(For house area = 120, we predict a house price of %fn,. predict2*1000000);程序運(yùn)算結(jié)果解釋如下,當(dāng)我們考慮購(gòu)買上海商品房面積為80平方和120平方時(shí),根據(jù)所求的線性方程計(jì)算所得的房?jī)r(jià)為4010703.397050元和70173870.477535元。Matlab中具體輸出結(jié)果如下:For house area = 80, we predict a house price of 4010703.397050For house area = 120, we predict a house price of 70173870.4775353.4 步長(zhǎng)與迭代次數(shù)的可視化分析上面已經(jīng)找到合適的步長(zhǎng)和迭代次數(shù),現(xiàn)在我們使用控制變量法對(duì)步長(zhǎng)和迭代次數(shù)進(jìn)一步分析,通過等高線圖的可視化手段來描述步長(zhǎng)與迭代次數(shù)的相互關(guān)系。3.4.1 相同步長(zhǎng)不同迭代次數(shù)可視化分析 我們首先控制合適的步長(zhǎng)為0.01,將迭代次數(shù)設(shè)置在1498次范圍附近,分析迭代次數(shù)對(duì)最終迭代計(jì)算極小值點(diǎn)的位置。為了使等高線表達(dá)得更清晰,這里我們通過多次迭代計(jì)算得出相同幅度的等高線圖,通過得出的模型參數(shù)的極值點(diǎn)的位置可以發(fā)現(xiàn)不同迭代次數(shù)下的極值點(diǎn)的移動(dòng)規(guī)律。如圖13所示,該圖表現(xiàn)出四種不同迭代次數(shù)下的極點(diǎn)位置,根據(jù)這些位置,我們可以總結(jié)出極點(diǎn)位置特征。其特征總結(jié)如下表2所示。表2 迭代次數(shù)取值與梯度下降關(guān)系Tab.2 The relationship betweem iterations and gradient descent步長(zhǎng)alpha迭代次數(shù)最終梯度下降情況0.011位于第二環(huán)與第三環(huán)之間0.0110緊靠第一環(huán)內(nèi)側(cè)0.01500第一環(huán)內(nèi)側(cè)靠中0.011500中心位置圖13 相同步長(zhǎng)下的等高線圖Fig 13 contour map in the same alpha由上述可知,當(dāng)步長(zhǎng)一定,當(dāng)?shù)螖?shù)大于等于最小迭代次數(shù)時(shí),其模型參數(shù)值的坐標(biāo)點(diǎn)位于正中心,然后隨著迭代次數(shù)的減少,坐標(biāo)點(diǎn)會(huì)由內(nèi)往外變動(dòng)。3.4.2 相同迭代次數(shù)和不同步長(zhǎng)的可視化分析我們首先選擇合適的迭代次數(shù)為1500次,將步長(zhǎng)(學(xué)習(xí)速率)設(shè)置在0.01次范圍附近,分析不同步長(zhǎng)對(duì)最終迭代計(jì)算極小值點(diǎn)的位置。為了使等高線表達(dá)得更清晰,這里我們通過多次迭代計(jì)算得出相同幅度的等高線圖,通過得出的模型參數(shù)的極值點(diǎn)的位置可以發(fā)現(xiàn)不同步長(zhǎng)下的極值點(diǎn)的移動(dòng)規(guī)律。如圖14所示,該圖表現(xiàn)出六種不同步長(zhǎng)下的極點(diǎn)位置,我們可以總結(jié)出極點(diǎn)位置特征。其特征總結(jié)如下表3所示。表3 迭代次數(shù)取值與梯度下降關(guān)系Tab.3 The relationship betweem iterations and gradient descent迭代次數(shù)步長(zhǎng)alpha最終梯度下降情況15000.00001位于第六環(huán)上0.00002位于第二環(huán)與第三環(huán)之間0.0001緊靠第一環(huán)內(nèi)側(cè)0.001第一環(huán)內(nèi)側(cè)靠中0.01中心位置0.23中心位置圖14 相同迭代次數(shù)下的等高線圖Fig 14 contour map in the same iterations由上述可知,當(dāng)?shù)螖?shù)一定,當(dāng)步長(zhǎng)大于0.01且不超過0.023時(shí),其模型參數(shù)值的坐標(biāo)點(diǎn)位于正中心,然后隨著迭代步長(zhǎng)的減少,坐標(biāo)點(diǎn)會(huì)由內(nèi)往外變動(dòng)。4 總結(jié)以上對(duì)兩個(gè)案例進(jìn)行了詳細(xì)的分析,現(xiàn)將上述內(nèi)容模型結(jié)果進(jìn)行總結(jié):1.城市人口數(shù)量和飲料連鎖店利潤(rùn)的線性回歸方程為:2.上海住房面積和售房?jī)r(jià)格的線性回歸方程:通過統(tǒng)計(jì)線性回歸的理論學(xué)習(xí)和Matlab實(shí)踐,我充分了解了線性回歸模型建立與求解的整個(gè)過程,學(xué)習(xí)了Matlab工具中最速下降法的迭代求解過程,熟悉使用Matlab軟件的圖形可視化的表示功能,為以后的課題數(shù)據(jù)的統(tǒng)計(jì)研究打下了良好的基礎(chǔ)。致謝 感謝姚教授對(duì)本工作的大力支持,在此表示感謝!參考文獻(xiàn):1 張向君.信號(hào)分析與數(shù)據(jù)統(tǒng)計(jì)學(xué)習(xí)M.哈爾濱:哈爾濱工程大學(xué)出版社,2009:129-131.2 許繼平,劉載文.同步變壓位機(jī)械通氣系統(tǒng)研究M.北京:北京大學(xué)出版社,2012:69-71.3 王玉英.優(yōu)化與決策M(jìn).西安:西安交通大學(xué)出版社,2014:80-81.4 王橋.數(shù)字圖像處理M.北京:科學(xué)出版社,2009:333-337.5 王正林,龔純,何倩.精通Matlab科學(xué)計(jì)算M.北京:電子工業(yè)出版社,2012:401-404.6 劉浩.MatlabR2014a完全自學(xué)一本通M.北京:電子工業(yè)出版社,2015:1-708.7 鄭友林.身邊的經(jīng)濟(jì)學(xué)M.北京:中國(guó)市場(chǎng)出版社,2006:105-107.附錄:表4 上海地區(qū)售房面積和價(jià)格表Tab.4 The house area and price on sale in Shanghai序號(hào)區(qū)域面積/價(jià)格/萬元序號(hào)區(qū)域面積/價(jià)格/萬元1黃浦 世博濱江51.5245544楊浦 中原75.333402松江大學(xué)城62.8524545閘北 陽城45.942653徐匯 上海南站52.424046松江 九亭134.884854松江 新橋51.7132247浦東 川沙85.962405虹口 江灣鎮(zhèn)82.9245548浦東 唐鎮(zhèn)87.663556楊浦 中原35.9515049浦東 航頭93.542307嘉定 江橋39.495250青浦 盈浦63.82858浦東 金楊52.9626051松江 松江新城105.712589閔行 莘莊63.7139552閔行 吳涇21.795010長(zhǎng)寧 北新涇36.7720053浦東 書院鎮(zhèn)162.1413011松江 松江老城156.0131454浦東 外高橋74.7120812奉賢 西渡73.1815555浦東 川沙91.5228013普陀 長(zhǎng)征56.9329056楊浦 中原69.8131014普陀 長(zhǎng)征83.7141557閔行 古美76.8637515浦東 世博44.624558閔行 靜安新城65.6634916寶山 淞南61.6123559閔行 老閔行128.5248017閔行 梅隴127.2258060閘北 西藏北路37.115918嘉定 江橋112.6740261浦東 祝橋60.420219浦東 金楊74.3439562普陀 光新136.6190020寶山 共富51.3716663閔行 古美121.3972021普陀 長(zhǎng)壽路39.679064寶山 上大60.139022長(zhǎng)寧 新華路59.5941065普陀 長(zhǎng)征44.3422023浦東 三林103.0963066寶山 張廟8
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度新型節(jié)能窗戶采購(gòu)與安裝合同4篇
- 二零二五年度商業(yè)廚房設(shè)備維護(hù)承包合同4篇
- 2025年度藝術(shù)品拍賣合同樣本二4篇
- 二零二五年度快遞物流運(yùn)輸與銷售代理服務(wù)合同2篇
- 二零二五年度瓷磚施工安全防護(hù)用品供應(yīng)合同3篇
- 2025年度個(gè)人住房抵押貸款電子合同規(guī)范2篇
- 2025年度個(gè)人道路客運(yùn)服務(wù)合同范本(旅游包車)2篇
- 2025年個(gè)人與企業(yè)間長(zhǎng)期租車服務(wù)合同3篇
- 2025年度承建工程皮卡車租賃與道路通行保障合同4篇
- 2025年度車庫租賃及停車服務(wù)標(biāo)準(zhǔn)合同范本4篇
- 配電工作組配電網(wǎng)集中型饋線自動(dòng)化技術(shù)規(guī)范編制說明
- 職業(yè)分類表格
- 2024高考物理全國(guó)乙卷押題含解析
- 廣東省深圳高級(jí)中學(xué)2023-2024學(xué)年八年級(jí)下學(xué)期期中考試物理試卷
- 電網(wǎng)建設(shè)項(xiàng)目施工項(xiàng)目部環(huán)境保護(hù)和水土保持標(biāo)準(zhǔn)化管理手冊(cè)(變電工程分冊(cè))
- 介入科圍手術(shù)期護(hù)理
- 青光眼術(shù)后護(hù)理課件
- 設(shè)立工程公司組建方案
- 設(shè)立項(xiàng)目管理公司組建方案
- 《物理因子治療技術(shù)》期末考試復(fù)習(xí)題庫(含答案)
- 退款協(xié)議書范本(通用版)docx
評(píng)論
0/150
提交評(píng)論