matlab normalise函数,使用Matlab中的polyfit函数对数据进行居中和缩放(Centering and scaling data using the polyfit functi...

本文介绍了如何使用Matlab的polyfit函数对数据进行居中和缩放,以找到最佳拟合线。通过[p,S,mu] = polyfit(x,n)获取居中和缩放后的数据,然后使用polyval函数结合(x-mu(1))/mu(2)计算修正的x值,从而得到最佳拟合线。" 89027452,8338949,自定义表单操作列,"['前端开发', 'HTML', 'CSS', 'JavaScript', 'MVC', '框架']
摘要由CSDN通过智能技术生成

使用Matlab中的polyfit函数对数据进行居中和缩放(Centering and scaling data using the polyfit function in Matlab)

所以我有一长串的数据和我的项目,我需要找到一个最适合它的行。 我的教授建议使用[p,S,mu] = polyfit(x,n)对数据进行居中和缩放。 但是当我计算最佳拟合线时,我应该使用这个新数据。 我如何访问这些数据? Matlab的帮助说它使用了一个公式(x-mu1)/ mu2。 因此,要使用修正的x值,我只需要替换yfit1 = polyval(coef1,x) ; 用(x-mu(1)/mu(2)) ?

So I have a long list of data and for my project and I need to find a line of best fit for it. My professor has recommended centering and scaling the data using [p,S,mu] = polyfit(x,n). But then when I compute the best fit line, I should be using this new data. How do I access this data? Matlab's help says that it uses a formula taking (x- mu1)/mu2. So to use the corrected x values I would just need to replace the x in yfit1 = polyval(coef1,x); with (x-mu(1)/mu(2))?

原文:https://stackoverflow.com/questions/23144265

更新时间:2020-01-30 13:54

最满

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用HMM进行音频车型识别的MATLAB代码示例: 首先,我们需要导入数据集和HMM工具箱: ```matlab load carspeech % 导入数据集 addpath(genpath('HMM_Toolbox')); % 导入HMM工具箱 ``` 然后,我们定义模型参数: ```matlab % 定义模型参数 numStates = 5; % HMM状态数 numMixtures = 3; % 每个状态的混合高斯数量 features = mfcc(carspeech, 16000); % 提取MFCC特征 numFeatures = size(features, 2); % 特征维度 % 初始化HMM模型参数 prior0 = normalise(rand(numStates, 1)); transmat0 = mk_stochastic(rand(numStates, numStates)); [mu0, Sigma0] = mixgauss_init(numStates * numMixtures, features', 'diag'); mu0 = reshape(mu0, [numFeatures, numMixtures, numStates]); Sigma0 = reshape(Sigma0, [numFeatures, numFeatures, numMixtures, numStates]); mixmat0 = ones(numStates, numMixtures) / numMixtures; ``` 接下来,我们使用EM算法训练HMM模型: ```matlab % 使用EM算法训练HMM模型 [LL, prior, transmat, mu, Sigma, mixmat] = mhmm_em(features', prior0, transmat0, mu0, Sigma0, mixmat0, 'max_iter', 50); ``` 最后,我们可以使用训练好的模型进行音频车型识别: ```matlab % 使用训练好的模型进行音频车型识别 testFeatures = mfcc(testspeech, 16000); % 提取MFCC特征 loglik = mhmm_logprob(testFeatures', prior, transmat, mu, Sigma, mixmat); [~, index] = max(loglik); vehicleModels = {'Audi', 'BMW', 'Ford', 'Honda', 'Hyundai', 'Mazda', 'Mercedes', 'Nissan', 'Toyota', 'Volkswagen'}; predictedModel = vehicleModels{index}; disp(['Predicted vehicle model: ' predictedModel]); ``` 完整代码如下所示: ```matlab load carspeech % 导入数据集 addpath(genpath('HMM_Toolbox')); % 导入HMM工具箱 % 定义模型参数 numStates = 5; % HMM状态数 numMixtures = 3; % 每个状态的混合高斯数量 features = mfcc(carspeech, 16000); % 提取MFCC特征 numFeatures = size(features, 2); % 特征维度 % 初始化HMM模型参数 prior0 = normalise(rand(numStates, 1)); transmat0 = mk_stochastic(rand(numStates, numStates)); [mu0, Sigma0] = mixgauss_init(numStates * numMixtures, features', 'diag'); mu0 = reshape(mu0, [numFeatures, numMixtures, numStates]); Sigma0 = reshape(Sigma0, [numFeatures, numFeatures, numMixtures, numStates]); mixmat0 = ones(numStates, numMixtures) / numMixtures; % 使用EM算法训练HMM模型 [LL, prior, transmat, mu, Sigma, mixmat] = mhmm_em(features', prior0, transmat0, mu0, Sigma0, mixmat0, 'max_iter', 50); % 使用训练好的模型进行音频车型识别 testspeech = wavread('test.wav'); % 导入测试音频 testFeatures = mfcc(testspeech, 16000); % 提取MFCC特征 loglik = mhmm_logprob(testFeatures', prior, transmat, mu, Sigma, mixmat); [~, index] = max(loglik); vehicleModels = {'Audi', 'BMW', 'Ford', 'Honda', 'Hyundai', 'Mazda', 'Mercedes', 'Nissan', 'Toyota', 'Volkswagen'}; predictedModel = vehicleModels{index}; disp(['Predicted vehicle model: ' predictedModel]); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值