zoukankan      html  css  js  c++  java
  • matlab中各种高斯相关函数

    matlab中各种高斯相关函数

    最常见的是产生服从一维标准正态分布的随机数

    1. n=100
    2. x=randn(1,n) 

    实现服从任意一维高斯分布的随机数

    1. u=10
    2. sigma=4
    3. x=sigma*randn(1,n)+u 

    产生服从多元高斯分布的随机变量函数mvnrnd,[multivarite normal random]

    1. n=100; %产生随机数的个数 
    2. mu=[1 -1]
    3. Sigma=[.9,.4;.4,.3]
    4. r=mvnrnd(mu,Sigma,n); 

    将产生的随机数绘制在二维平面

    1. scatter(r(:,1),r(:,2)); 

    enter description here

    1474457688429.jpg

    当然mvnrnd函数还可以产生更高维数的高斯随机数,具体参见matlab help。


    产生多元高斯分布概率密度函数
    Y=mvnpdf(X,[MU,Sigma])
    其中可省参数MU,Sigma默认值分别为零向量和单位阵,X是的矩阵,N是样本个数,D是样本维数。

    1. mu = [1 -1]; Sigma = [.9 .4; .4 .3]
    2. [X1,X2] = meshgrid(linspace(-1,3,25)', linspace(-3,1,25)'); 
    3. X = [X1(:) X2(:)]
    4. p = mvnpdf(X, mu, Sigma); 
    5. surf(X1,X2,reshape(p,25,25)); 

    和下面代码产生的趋势相同

    1. mu = [1 -1]
    2. Sigma = [.9 .4; .4 .3]
    3. [X,Y] = meshgrid(linspace(-1,3,25)', linspace(-3,1,25)'); 
    4. for i=1:25 
    5. for j=1:25 
    6. XY=[X(i,j),Y(i,j)]
    7. Z(i,j)=exp(-0.5*(XY-mu)/Sigma*(XY-mu)'); 
    8. end 
    9. end 
    10. surf(X,Y,Z); 

    enter description here

    1474460161935.jpg


    高斯分布函数
    Y=mvncdf(X,[Mu],[Sigma]) , cumulative probability of the multivariate norm distribution with mean Mu and covariance Sigma.
    具体使用看代码

    1. mu = [1 -1]; Sigma = [.9 .4; .4 .3]
    2. [X1,X2] = meshgrid(linspace(-1,3,25)', linspace(-3,1,25)'); 
    3. X = [X1(:) X2(:)]
    4. p = mvncdf(X, mu, Sigma); 
    5. surf(X1,X2,reshape(p,25,25)); 

    enter description here

    1474460555428.jpg


    高斯隶属函数
    gaussmf(X,[Sigma,Mu])

    1. x = (0:0.1:10)'
    2. y1 = gaussmf(x, [0.5 5]); 
    3. y2 = gaussmf(x, [1 5]); 
    4. y3 = gaussmf(x, [2 5]); 
    5. y4 = gaussmf(x, [3 5]); 
    6. plot(x, [y1 y2 y3 y4]); 

    enter description here

    1474460751315.jpg

  • 相关阅读:
    关于linux下如何使用svn 客户端
    vscode 如何格式化vue(template)html代码 , 保持标签属性不换行
    echarts的一些基础笔记
    Stompjs websocket vue
    GLSL反转矩阵inverse
    【入门向】使用 MetaHook Plus 绘制 HUD
    取文件MD5 WINAPI
    BAD APPLE C++控制台程序
    查看struct或class的内存布局
    让游戏以高性能GPU(独立显卡)运行
  • 原文地址:https://www.cnblogs.com/YiXiaoZhou/p/5894030.html
Copyright © 2011-2022 走看看