前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >机器学习理论篇+数学建模作业题目(数据导入结果导出至excel)

机器学习理论篇+数学建模作业题目(数据导入结果导出至excel)

作者头像
阑梦清川
发布2025-02-24 22:16:23
发布2025-02-24 22:16:23
9100
代码可运行
举报
文章被收录于专栏:学习成长指南学习成长指南
运行总次数:0
代码可运行

1.K临近算法(KNN)

下面的这个KNN算法的图片来自于这个B栈的老师—5分钟机器学习,这个视频做的真的是非常好,我们可以通过这个5分钟的介绍,让这个高深的理论知识建立起来一个大致的印象,知道这个算法是解决什么问题的,以及这个算法和我们的这个日产生活之间又是如何建立联系的,有助于我们对于这个算法的了解,我认为对于这些发杂的理论计算以及这个严谨的数学推导,不应该成为我们学习这个数学建模道路上面的这个拦路虎,而是应该以一个更加通俗易懂的方式学习这个算法,然后逐步地进行深入;

因此这个5分钟机器学习的这个up主制作的这个视频非常有利于我们的这个零基础入门者的学习;

1.1算法的基本步骤

就是需要划分这个录入多少个样本点,再看看这个录入的这些样本店里面的这个大致特征,在这个里面找到这个类比最多的这个样本特征作为我们的这个已知的点的数据特征;

image-20241117192422267
image-20241117192422267

1.2算法的应用

这个算法应用就是我们的这个电影网站的这个推荐系统,其实这个就是智能过滤算法,就是根据这个相关的相似喜好的用户决定我们应该给这个用户推送怎么样的数据,这个其实和我们的这个日常生活就是密不可分的;

image-20241117192523753
image-20241117192523753

1.3算法的优缺点

1)优点:只需要考虑这个局部分布的情况,不需要考虑这个总体情况,不需要了解这个总体分布;

2)缺点:和我们的这个录入的这个样本点的数量有关,即和我们的这个k的取值有很大的关系,这个k的取值会影响我们对于这个已知点的特征的定义;

image-20241117192601980
image-20241117192601980

2.决策树模型

决策树就是一个树状结构,我们在每一个点针对于这个对应的特征进行拆分这个分支,得到的这个最后一个节点就是我们的叶子节点,这个节点就是我们的结论(这个和我们的这个二叉树里面的内容是一样的);

image-20241117182505915
image-20241117182505915
image-20241117182734394
image-20241117182734394

3.支持向量机(SVM)

3.1线性支持向量机

image-20241117183456096
image-20241117183456096

3.2硬间隔和软间隔

硬间隔就是一个理想的情况:有一个超平面可以把我们的这个数据集合话分为两个组别,每一个样本点到这个平面的距离是最小的;

但是现实情况就是大部分情况下我们很难找到这样的一个平面,我们需要允许一定的这个误差存在,这个时候我们希望这个误差越小越好,也就是这个出错的这个样本的数量越少越好,这样的这个分类的方式就是我们的这个间隔最大化;

image-20241117183935428
image-20241117183935428

3.3转换函数

非线性支持向量机就是使用的这个转换函数类似的这个技巧,把原来的这个特征映射到新的这个特征空间;通过这个映射我们数据这个时候就会变得线性可分;

image-20241117184206853
image-20241117184206853

4.集成学习的类型

4.1装袋法和提升法

1)我们熟知的这个随机森林算法就是这个装袋的改进版本;

2)两个方法的区别就是我们的这个个体学习机器之间是不是存在着强依赖关系(并行化还是序列化);

image-20241117193223970
image-20241117193223970
image-20241117193236567
image-20241117193236567

5.数据作业题目

5.1题目介绍

image-20241117214729689
image-20241117214729689

5.2代码

这个题目之所以值得学习,因为我之前是不会进行吧计算之后的这个数据导入到这个表格里面的,因此我认为这个题目是值得我们进行学习的;

代码语言:javascript
代码运行次数:0
复制
clc;clear;
//读取这个表格里面的数据
data=xlsread('shuishou.xls');%导入当前目录下的待计算所得税的数据 shuishou.xls
dataincome=data(:,2);%提取待计算所得税的数据,也即第二列。
[tax2011,tax2018]=tax(dataincome);%代入所得税计算函数,求得两种税率下的所得税。
A=[tax2011,tax2018,tax2011-tax2018];%将两种税率下的所得税,以及节约的钱数(前面二者相减),合并为一个数组(或矩阵)。

//下面的这个就是把我们的这个计算结果写入到这个表格里面去
xlswrite('shuishou.xls',A,'C2:E11');%将A保存到原来的shuishou.xls对应的位置,保存将两种税率下的所得税,以及节约钱数。
A

我们上面的这个调用了tax函数:

代码语言:javascript
代码运行次数:0
复制
function [tax2011,tax2018]=tax(income)
 %导入数据待写
%%2011年个税计算 起征点3500元
jishu2011=income-3500;
if jishu2011>80000
  rate2011=0.45;
  tax2011=jishu2011*rate2011-13505; //这个13505是这个速算扣除数,计算出来的,下面的这个5505之类的也使得,具体的这个计算的方法可以自行了解
elseif 55000<jishu2011
  rate2011=0.35;
  tax2011=jishu2011*rate2011-5505;
elseif 35000<jishu2011
  rate2011=0.30;
  tax2011=jishu2011*rate2011-2755;
elseif 9000<jishu2011
  rate2011=0.25;
  tax2011=jishu2011*rate2011-1005;
elseif 4500<jishu2011
  rate2011=0.20;
  tax2011=jishu2011*rate2011-555;
elseif 1500<jishu2011
  rate2011=0.10;
  tax2011=jishu2011*rate2011-105;
elseif  0<jishu2011&&jishu2011<=1500  
  rate2011=0.03;
  tax2011=jishu2011*rate2011-0;
else
  tax2011=0;
end
%%2018年10月个税计算 起征点5000元
jishu2018=income-5000;
if jishu2018>80000
  rate2018=0.45;
  tax2018=jishu2018*rate2018-15160; 
elseif 55000<jishu2018
  rate2018=0.35;
  tax2018=jishu2018*rate2018-7160;
elseif 35000<jishu2018
  rate2018=0.30;
  tax2018=jishu2018*rate2018-4410;
elseif 25000<jishu2018
  rate2018=0.25;
  tax2018=jishu2018*rate2018-2660;
elseif 12000<jishu2018
  rate2018=0.20;
  tax2018=jishu2018*rate2018-1410;
elseif 3000<jishu2018
  rate2018=0.10;
  tax2018=jishu2018*rate2018-210;
elseif  0<jishu2018 
  rate2018=0.03;
  tax2018=jishu2018*rate2018-0;
else
  tax2018=0;
end
 end

下面的这个就是我们计算之后,把这个数据写回到我们的这个表格里面之后的这个情况:

image-20241117215108874
image-20241117215108874
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-02-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.K临近算法(KNN)
    • 1.1算法的基本步骤
    • 1.2算法的应用
    • 1.3算法的优缺点
  • 2.决策树模型
  • 3.支持向量机(SVM)
    • 3.1线性支持向量机
    • 3.2硬间隔和软间隔
    • 3.3转换函数
  • 4.集成学习的类型
    • 4.1装袋法和提升法
  • 5.数据作业题目
    • 5.1题目介绍
    • 5.2代码
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档