MATLAB数学建模(四):机器学习

一、学习目标。

(1)了解机器学习算法在数学建模中的应用。

(2)掌握机器学习算法中的二分类、多分类、回归、聚类算法。

二、实例演练。

   1、谈谈你对机器学习算法与数学建模的了解。

         机器学习 ( Machine Learning ) 是一门多领域交叉学科,它涉及到概率论、统计学、计算机科学以及软件工程。机器学习是指一套工具或方法,凭借这套工具和方法,利用历史数据对机器进行“训练”进而“学习”到某种模式或规律,并建立预测未来结果的模型。机器学习涉及两类学习方法:有监督学习,主要用于决策支持,它利用有标识的历史数据进行训练,以实现对新数据的标识的预测。有监督学习方法主要包括分类和回归;无监督学习,主要用于知识发现,它在历史数据中发现隐藏的模式或内在结构。无监督学习方法主要包括聚类。

          近年来,全国赛的题目中,多多少少都有些数据,而且数据量总体来说呈不断增加的趋势, 这是由于在科研界和工业界已积累了比较丰富的数据,伴随大数据概念的兴起及机器学习技术的发展, 这些数据需要转化成更有意义的知识或模型。 所以在建模比赛中, 只要数据量还比较大, 就有机器学习的用武之地。

   2、用二分类算法对fisheriris数据集进行分析。

以下示例显示了利用 MATLAB 提供的支持向量机模型进行二分类,并在图中画出了支持向量的分布情况(图1中圆圈内的点表示支持向量)

(1)导入数据并处理数据。

%% 支持向量机模型
clc,clear,close all
load fisheriris % 导入数据集,fisheriris是Matlab自带的数据集
%fisheriris数据类别分为3类,setosa,versicolor,virginica.每类植物有50个样本,共150个。

% 读取数据集中的两个分类‘versicolor' 和 'virginica'
inds = ~strcmp(species,'setosa'); % 产生样本标签,属于setosa类的样本类别为0,其他类别(versicolor,virginica)样本类别为1
% 使用两个维度,即第三列和第四列数据。
X = meas(inds,3:4); % 在meas数据矩阵中,前50行数据移除,后100行数据移除;保留第三、四列的数据
y = species(inds); % 移除前50行的种类,保留后50行的种类。
tabulate(y) % tabulate()用于统计数值的个数和频率

运行结果:

下面,我将对这段代码进行详细的分析:

          fisheriris是Matlab自带的数据集,fisheriris数据类

  • 15
    点赞
  • 152
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值