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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

数学建模方法总结

發布時間:2024/9/30 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数学建模方法总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

多元回歸

以定量地描述某一現象和某些因素之間的函數關系,將各變量的已知值帶入回歸方程可以求出因變量的估計值,從而可以進行預測(多對一)

轉化

非線性轉化為線性

% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % matlab模塊介紹: % [beta,r]=nlinfit(x,y,'fun1',beta0); % beta即所要求的相關系數, % r為殘差 % x為數據的x軸坐標,n*m的矩陣存儲,當x有多個時(x1,x2,x3...),每組x為一列,x1為1列,x2為第二列,x3為第三列...組成n*m的矩陣 % y為數據的y軸坐標,以列矩陣的方式存儲 % fun1為函數模型的表達式,一般要先確定該模型后在做非線性回回歸,該函數一般用單獨的.m文件存放,或者自己定義 % beta0為多個相關系數初始值,該系數需要自己猜測,再從初值一步步迭代算出最終系數 % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % clc % 數據: x=[1.5, 4.5, 7.5,10.5,13.5,16.5,19.5,22.5,25.5]'; y=[7.0,4.8,3.6,3.1,2.7,2.5,2.4,2.3,2.2]'; %% 對數模型擬合:f(x) = b(1) + b(2)*log(x) myfunc = inline('beta(1)+beta(2)*log(x)','beta','x');%三個參數分別為:函數模型(注意需要使用點除和點乘),待定系數,自變量beta0 = [0.2,0.2]';%待定系數的預估值,可固定不變% beta為求得的相關系數 beta = nlinfit(x,y,myfunc,beta0);figure; plot(x,y,'.'); hold on%保證同時顯示x = 0:0.01:8; y = beta(1)+beta(2)*log(x);plot(x,y); title('對數模型擬合');%% 指數模型擬合:f(x) = b1*x^b2; % myfunc = inline('beta(1)*x.^beta(2)','beta','x');%三個參數分別為:函數模型(注意需要使用點除和點乘),待定系數,自變量 % % beta0 = [0.2,0.2]';%待定系數的預估值,可固定不變 % % % beta為求得的相關系數 % beta = nlinfit(x,y,myfunc,beta0); % % figure; % plot(x,y,'.'); % hold on%保證同時顯示 % % x = 0:0.01:8; % y = beta(1)*x.^beta(2); % % plot(x,y); % title('指數模型擬合');

細節

1.用sas和spss做回歸方程和回歸系數的檢驗

2.注意共線性問題即解決,詳見https://zhuanlan.zhihu.com/p/24263575

步驟

(1)根據已知條件的數據,通過預處理得出圖像的大致趨勢或者數據之間的大致關系;
(2)選取適當的回歸方程;
(3)擬合回歸參數;
(4)回歸方程顯著性檢驗及回歸系數顯著性檢驗
(5)預測

一元

% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 回歸分析就是處理變量之間的相關關系的一種數學方法。其解決問題的大致方法、步驟如下: % (1)收集一組包含因變量和自變量的數據; % (2)選定因變量和自變量之間的模型,即一個數學式子,利用數據按照最小二乘準則計算模型中的系數; % (3)利用統計分析方法對不同的模型進行比較,找出與數據擬合得最好的模型; % (4)判斷得到的模型是否適合于這組數據; % (5)利用模型對因變量作出預測或解釋。 % % 一元線性回歸方程: % y = β0 + β1*x; β為回歸系數 % % % matlab模塊說明: % (1)plot(x,y,'r*'); % (2)n = length(x),X=[ones(n,1),x']; % (3)Y = y'; % (4)[b,bint,r,rint,s]=regress(Y,X,alpha); % 參數說明:plot(x,y,'r*'):繪制散點圖 % X:由給定的x值決定,(X必須為列矩陣,所以如果x是行矩陣的話必須通過x'轉置為列向量) % Y:由給定的y值決定,(Y必須為列矩陣,所以如果y是行矩陣的話必須通過y'轉置為列向量) % alpha:顯著性水平(缺省時默認0.05) % b:相關系數的集合,一元線性回歸,b有兩個值,b(1,1) = β0,b(2,1) = β1 % bint: 回歸系數的區間估計 % r :殘差 % rint :殘差置信區間 % s :用于檢驗回歸模型的統計量,有四個數值:相關系數R^2、F值、與F對應的概率p,誤差方差。 % 注意:s通常用于做模型的檢驗,1.關系數R^2越接近1,說明回歸方程越顯著; % 2.p<alpha時,拒絕H0,回歸模型成立 % 3.F > F1-alpha(k,n-k-1)【通過該函數finv(1-,1, n-2)得到】時拒絕H0,F越大,說明回歸方程越顯著,其中F1-alpha(k,n-k-1)的值可查F分布表,或直接用MATLAB命令finv(1-,1, n-2)計算得到 % (4)殘差分析:rcoplot(r,rint) % 繪制出的圖,標紅的點為異常數據,可以去掉后再重新做計算一元線性回歸分析 % % % matlab實現: % (1)輸入: % x(1*n)矩陣存儲x坐標 % y(1*n)矩陣存儲y坐標 % (2)輸出: % [b,bint,r,rint,s]=regress(Y,X,alpha);里面的所有參數,回歸系數b構成一元回歸模型 % 殘差圖分析 % % 重點:如果出現錯誤;"錯誤使用 horzcat串聯的矩陣的維度不一致"可能是X,Y那里的行矩陣和列矩陣的轉化出現問題 % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % clc % 數據的存儲 % x = [3.5 5.3 5.1 5.8 4.2 6.0 6.8 5.5 3.1 7.2 4.5 4.9 8.0 6.5 6.6 3.7 6.2 7.0 4.0 4.5 5.9 5.6 4.8 3.9]; % y = [33.2 40.3 38.7 46.8 41.4 37.5 39.0 40.7 30.1 52.9 38.2 31.8 43.3 44.1 42.5 33.6 34.2 48.0 38.0 35.9 40.4 36.8 45.2 35.1];x=[23.80,27.60,31.60,32.40,33.70,34.90,43.20,52.80,63.80,73.40]; y=[41.4,51.8,61.70,67.90,68.70,77.50,95.90,137.40,155.0,175.0]; % 繪制散點圖 % plot(x,y,'r*');% 數據的長度 n=length(x); % X,Y制作 X=[ones(n,1),x']; Y = y';% 線性分析 [b,bint,r,rint,s]=regress(Y,X,0.05); b bint % r % rint s% 殘差分析 figure; rcoplot(r,rint);fprintf('擬合的函數為:f(x) = %d + %d*x\n',b(1,1),b(2,1)); figure f = @(x) b(1,1) + b(2,1) * x; plot(x,y,'r*'); hold on; ezplot(f, [0, 90]); % 畫出函數圖像 title('擬合的曲線');

多元

% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 回歸分析就是處理變量之間的相關關系的一種數學方法。其解決問題的大致方法、步驟如下: % (1)收集一組包含因變量和自變量的數據; % (2)通過繪制散點圖,判斷是否符合線性回歸,決定用哪種線性回歸 % (3)選定因變量和自變量之間的模型,即一個數學式子,利用數據按照最小二乘準則計算模型中的系數; % (4)利用統計分析方法對不同的模型進行比較,找出與數據擬合得最好的模型; % (5)判斷得到的模型是否適合于這組數據; % (5)利用模型對因變量作出預測或解釋。 % % 多元線性回歸方程:y=b0+b1X1+b2X2+…+bnXn % b0為常數項 % b1,b2,b3,…bn稱為y對應于x1,x2,x3,…xn的偏回歸系數 % % % matlab模塊說明: % (1)subplot(1,3,1),plot(x1,y,'g*'), % subplot(1,3,2),plot(x2,y,'k+'), % subplot(1,3,3),plot(x3,y,'ro'), % ...... % (2)n = length(x1),X=[ones(n,1),x1',x2',x3',...]; % (3)Y = y'; % (4)[b,bint,r,rint,s]=regress(Y,X,alpha); % 參數說明:subplot(1,3,1),plot(x1,y,'g*'):繪制散點圖 % X:由給定的x值決定,(X必須為列矩陣,所以如果x是行矩陣的話必須通過x'轉置為列向量) % Y:由給定的y值決定,(Y必須為列矩陣,所以如果y是行矩陣的話必須通過y'轉置為列向量) % alpha:顯著性水平(缺省時默認0.05) % b:相關系數的集合,一元線性回歸,b有兩個值,b(1,1) = β0,b(2,1) = β1 % bint: 回歸系數的區間估計 % r :殘差 % rint :殘差置信區間 % s :用于檢驗回歸模型的統計量,有四個數值:相關系數R^2、F值、與F對應的概率p,誤差方差。 % 注意:s通常用于做模型的檢驗,1.關系數R^2越接近1,說明回歸方程越顯著; % 2.p<alpha時,拒絕H0,回歸模型成立 % 3.F > F1-alpha(k,n-k-1)【通過該函數finv(1-,1, n-2)得到】時拒絕H0,F越大,說明回歸方程越顯著,其中F1-alpha(k,n-k-1)的值可查F分布表,或直接用MATLAB命令finv(1-,1, n-2)計算得到 % (4)殘差分析:rcoplot(r,rint) % 繪制出的圖,標紅的點為異常數據,可以去掉后再重新做計算一元線性回歸分析 % % % matlab實現: % (1)輸入: % x1(1*n)矩陣存儲x1坐標 % x2(1*n)矩陣存儲x2坐標 % ...... % y1(1*n)矩陣存儲y坐標 % y2(1*n)矩陣存儲y2坐標 % ...... % (2)輸出: % [b,bint,r,rint,s]=regress(Y,X,alpha);里面的所有參數,回歸系數b構成多元回歸模型 % 殘差圖分析 % % 重點:如果出現錯誤;"錯誤使用 horzcat串聯的矩陣的維度不一致"可能是X,Y那里的行矩陣和列矩陣的轉化出現問題 % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % clc % 數據的存儲 x1 = [3.5 5.3 5.1 5.8 4.2 6.0 6.8 5.5 3.1 7.2 4.5 4.9 8.0 6.5 6.6 3.7 6.2 7.0 4.0 4.5 5.9 5.6 4.8 3.9]; x2 = [9 20 18 33 31 13 25 30 5 47 25 11 23 35 39 21 7 40 35 23 33 27 34 15]; x3 = [6.1 6.4 7.4 6.7 7.5 5.9 6.0 4.0 5.8 8.3 5.0 6.4 7.6 7.0 5.0 4.4 5.5 7.0 6.0 3.5 4.9 4.3 8.0 5.8]; y = [33.2 40.3 38.7 46.8 41.4 37.5 39.0 40.7 30.1 52.9 38.2 31.8 43.3 44.1 42.5 33.6 34.2 48.0 38.0 35.9 40.4 36.8 45.2 35.1];% 繪制散點圖 subplot(1,3,1);plot(x1,y,'g*'); subplot(1,3,2);plot(x2,y,'k+'); subplot(1,3,3);plot(x3,y,'ro');% 數據的長度 n=length(x1); % X,Y制作 X=[ones(n,1),x1',x2',x3']; Y = y';% 線性分析 [b,bint,r,rint,s]=regress(Y,X,0.05); b bint % r % rint s% 殘差分析 rcoplot(r,rint);

主成分回歸分析

優秀模型需要用盡可能少的特征來表示更多的信息,所以面對多特征問題需要進行降維,把高維空間上的多個特征組合成少數幾個無關的主成分。來消減模型存在多重共線性帶來的影響,即系數通不過顯著性檢驗。舉個栗子:在二維平面中,如果大部分的點都在一條直線附近,是不是就可以直接用這條直線當作一維坐標軸來反映原始數據?

第一主成分是高維空間上的一個向量,所有的點沿著這條線波動最大,或者說所有的點到直線的距離的平方和最小。就是用一個二維平買你的回歸直線表示一個坐標軸

協方差cov()

觀察不同特征的關聯程度

如果結果為正值,則說明兩者是正相關的,負值為負相關

假設數據集有三個維度,則協方差矩陣為:

?對角線是方差

import numpy as np import matplotlib.pyplot as plt#各取500個標準正態分布的數據 x1=np.random.normal(0,1,500) x2=np.random.normal(0,1,500)#將x1,x2以向量的形式排列起來 X=np.vstack((x1,x2)).T#計算協方差 def cov(x1,x2):x1mean,x2mean=x1.mean(),x2.mean()Sigma=np.sum((x1-x1mean)*(x2-x2mean))/(len(x1)-1)return Sigma#協方差矩陣 def covMatrix(X):matrix=np.array([[cov(X[0],X[0]),cov(X[0],X[1])],[cov(X[1],X[0]),cov(X[1],X[1])]])return matrixcovMatrix(X)#output ''' array([[0.00437243, 0.0433571 ],[0.0433571 , 0.42993022]]) '''### 解法2 a = np.array([[1,2,3],[3,1,1]]) print(np.cov(a))# output array([[1,-1],[-1,1.33]])

提取貢獻率高的特征根,用較少的幾個綜合指標代替原來較多的變量指標,進行進行回歸分析

集訓決定系數R方,說明合理的百分比由該模型決定,再求原始變量的主成分回歸方程(用spss)

詳見:https://zhuanlan.zhihu.com/p/63139206

聚類

將n個樣本找出m個中心點,不關心標簽,屬于無監督學習

舉例

1.根據距離取分的近圓形

2.根據密度取分的不規則形

3.根據邏輯層次區分

步驟

  • 數據準備:特征標準化和降維
  • 特征選擇:從最初的特征中選擇最有效的特征,并將其存儲在向量中
  • 特征提取:通過對選擇的特征進行轉換形成新的突出特征
  • 聚類:基于某種距離函數進行相似度度量,獲取簇
  • 聚類結果評估:分析聚類結果,如距離誤差和(SSE)等
  • 選擇標準

    具體理論

    https://zhuanlan.zhihu.com/p/104355127

    總結

    以上是生活随笔為你收集整理的数学建模方法总结的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。