当前位置:网站首页>【统计机器学习】线性回归模型
【统计机器学习】线性回归模型
2022-08-03 19:05:00 【鱼与钰遇雨】
相关知识
概率论,是研究随机现象数量规律的数学分支。随机现象是相对于决定性现象而言的,例如太阳东升西落。随机现象是指在基本条件不变的情况下,每一次试验或观察前,不能肯定会出现哪种结果,呈现出偶然性。例如,掷一硬币,可能出现正面或反面。
数理统计是数学的一个分支,分为描述统计和推断统计。它以概率论为基础,研究大量随机现象的统计规律性。描述统计的任务是搜集资料,进行整理、分组,编制次数分配表,绘制次数分配曲线,计算各种特征指标,以描述资料分布的集中趋势、离中趋势和次数分布的偏斜度等。推断统计是在描述统计的基础上,根据样本资料归纳出的规律性,对总体进行推断和预测。
(描述统计——>推断统计)
计算机角度的机器学习和统计角度的机器学习,对一些名称的定义可能会有些不同。
例如
| 机器学习 | 统计机器学习 |
|---|---|
| Unsupervised Learning (无监督学习) | Clustering 聚类 |
| Supervised Learning 监督学习 | 回归分析 |
| Semi-Supervised Learning | … |
| Reinforcement Learning | … |
| … | … |
变量类型
分类数据:职业、地址、性别
连续数据:年龄、收入
分类数据(但有顺序含义):High school ,BSc,MSc,PhD
Y的变量类型决定了问题,以及用什么方法解决问题
什么时候用统计方法、什么时候用机器学习、什么时候用机器学习呢?
只有特征和样本量都很大(样本量超过200,特征超过20)的时候,我们考虑机器学习的方法。
除此之外,经典的统计方法或者统计学习方法几乎可以解决所有问题。(当然了,机器学习也可以用,但是工程上没有必要)
模型在不同数据量场景下的效果:
线性回归模型实例
心法:定(任务,方法同数据准备阶段,通过数据量和预测任务来判断)、数、模、训、测、上
数:分析(任务)、理解、清晰、构建、选择、提取
模:模型、损失、优化器 (基于数据量和预测类型选择模型。)
训练:迭代、调参、降损失
定(问题定义)
预测房价、很明显的线性回归任务,而且特征数目少于20,首选线性回归。
数(数据准备)
1,2 分析(问题,看Y)和 理解(特征,看X)
#1 问题分析
#(房价预测,回归任务,)
from sklearn import datasets
boston = datasets.load_boston()
print(boston.DESCR)
boston.shape
#分析(分析Y的类型,判断问题类型)
y = boston.target
y = pd.DataFrame(y)
y.describe()
# 理解
house = boston.data
house = pd.DataFrame(house,columns=['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD',
'TAX', 'PTRATIO', 'B', 'LSTAT'])
house.info()# 查看基本的描述统计
house.describe()
Data Set Characteristics:
:Number of Instances: 506
:Number of Attributes: 13 numeric/categorical predictive. Median Value (attribute 14) is usually the target.
:Attribute Information (in order):
- CRIM per capita crime rate by town
- ZN proportion of residential land zoned for lots over 25,000 sq.ft.
- INDUS proportion of non-retail business acres per town
- CHAS Charles River dummy variable (= 1 if tract bounds river; 0 otherwise)
- NOX nitric oxides concentration (parts per 10 million)
- RM average number of rooms per dwelling
- AGE proportion of owner-occupied units built prior to 1940
- DIS weighted distances to five Boston employment centres
- RAD index of accessibility to radial highways
- TAX full-value property-tax rate per $10,000
- PTRATIO pupil-teacher ratio by town
- B 1000(Bk - 0.63)^2 where Bk is the proportion of black people by town
- LSTAT % lower status of the population
- MEDV Median value of owner-occupied homes in $1000's
- 首先是分析数据标签,要明白任务的需求。数据挖掘任务主要分为两类:回归与分类。
- 回归指标签值是连续值的任务,例如用到的数据集,要求预测房价信息,房价是一个连续的变量,因此这样的任务属于回归问题(Regression)
- 分类指标签值离散的任务,例如鸢尾花(Iris)数据集,收集三种鸢尾花的萼片长度,宽度等信息,要求根据这些信息预测鸢尾花属于哪种类别,因此标签就是1,2,3,代表三类鸢尾花。这种任务属于分类任务。


通过分析可知,房价标签是连续数据,因此是回归任务。
- 特征X理解
house_data.head()
house_data.info()
house_data.describe()



通过这几张基本统计表,我们可以看:
- 是否有缺失值
- 数据是否和我们理解的不同,例如处于[0-1]的值却>1
- 方差特别小的特征也考虑删除,或者说取值唯一的特征是没有意义的。(举例,如果在一次考试中,大家的数学成绩都是100分,那么是没有办法通过数学成绩来区分每位同学的能力的,也就是说数学这门课没有区分性,不具有分析的意义,可以删掉。)
- 方差太大说明数据不太可能是正态的,因为不够集中。(补充说明:标准差是方差开根号,标准差越大,对于正太分布来说,分布图像越矮胖,因此数据不集中。而标准差越小,对于正太分布来说,图像越矮瘦,数据集中。
- 对于是否有离群值后面我们需要通过箱线图或者散点图等可视化分析后才能得知。

继续,我们绘制所有特征的柱状图如下,来分析各特征的分布情况。进而通过分布观察变量之间的相关性。(这部分可以在scatter plot matrix中一起画出来,我们这里先单独画出来分析,以后就直接用scatter plot matrix就可以了)
https://blog.csdn.net/laffycat/article/details/125883973
http://t.csdn.cn/lGF1A
https://blog.csdn.net/qq_37596349/article/details/105378996
研究思路:
4. 先看首先研究单变量的数据类型、分布情况、是否有离群值等情况,
再研究变量之间的关系:相关性分析、分组统计等
3 特征清洗
缺失值统计和处理
边栏推荐
猜你喜欢

When does MySQL use table locks and when to use row locks?You should know this

MYSQL误删数据恢复

设备树基本原理与操作方法

学弟:我适不适合转行做软件测试?

2022年最新的Android面试大厂必考174题(附带详细答案)

Shell:循环语句

BinomialTree 二叉树

Don't look down upon the WebSocket!Long connection, stateful, two-way, full-duplex king is Fried

pytest接口自动化测试框架 | Jenkins集成初探

Shell编程案例
随机推荐
MD5是对称加密还是非对称加密,有什么优缺点
pytest接口自动化测试框架 | 基于Pytest的Web UI自动化测试框架介绍
Shell:循环语句
typescript学习笔记
微信小程序分享功能
JumpServer开源堡垒机完成龙芯架构兼容性认证
阿里资深专家打造从零开始学架构,含阿里内部技术栈PPT、PFD实战
With the help of Kubernetes kubekey speed installation
Difference差分数组
X86函数调用模型分析
设备树基本原理与操作方法
APT级全面免杀与企业纵深防御体系的红蓝对抗
InnoDB 中不同SQL语句设置的锁
七夕之前,终于整出了带AI的美丽秘笈
sys文件系统
【微信小程序】NFC 标签打开小程序
YAML中多行字符串的配置方法:|+、 |、 |-、 >+、 >、 >-的区别
【Azure 事件中心】使用Azure AD认证方式创建Event Hub Consume Client + 自定义Event Position
ImportError: /lib/libgdal.so.26: undefined symbol: sqlite3_column_table_name
OneNote 教程,如何在 OneNote 中设置页面格式?