初探机器学习模型

一.导读

机器学习分为三种先做大体了解:

监督学习:监督学习使用有标签的训练数据来训练模型,并利用这些标签进行分类或回归任务。 常见的监督学习算法包括决策树、支持向量机和神经网络。

②  无监督学习:无监督学习使用无标签的数据,旨在发现数据中的模式、结构或聚类。 常见的无监督学习算法包括聚类算法、降维算法和关联规则挖掘

③ 强化学习:强化学习是一种通过与环境进行交互学习的方法。 它通过试错和奖励机制来训练智能体,在动态环境中做出最佳决策。 常见的强化学习算法包括Q学习和深度强化学习。

我们先从监督学习的线性回归作为引入,我们通过案例,来初步接触线性回归,在之后我们在学习完针对机器学习模型的数据分析与处理之后,则开始对模型的接触。

二.案例

现实生活中,我们知道房价跟许多因素相关,而在这个案例中,我们假设房价只与面积相关,并给出如下的数据:

面积(m^2)56327816024089916943
价格(万元)906512527231214715910978

为了更好的分析出数据(面积与房价)之间的关系,我们利用散点图进行可视化:

代码如下:

from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt
import numpy as np
//导包
x=np.array([56,32,78,160,240,89,91,69,43])
y=np.array([90,65,125,272,312,147,159,109,78])
X=x.shape(-1,1)
X=x.reshape(-1,1)
Y=y.reshape(-1,1)
plt.figure(figsize=(10,6)) //初始化一个10*6的图像窗口
plt.scatter(X,Y,s=50) //绘制散点图
plt.title('Initial data')
plt.show()

reshape(-1,1)将x,y数据按照二维列向量排开

两者之间可以使用一个线性关系进行表示,即 y =a*x+b。

接下来是模型的训练与预测:

model.fit(X,Y)
LinearRegression()
x1=np.array([40,]).reshape(-1,1)
x1_pre=model.predict(np.array(x1))
x1_pre=model.predict(x1)
a=model.coef_
b=model.intercept_
y=a*X+b
plt.plot(X,y)
y1=a*x1+b
plt.scatter(x1,y1,color='r')
plt.show()

将线性回归模型的方法LinearRegression()放入变量model中,再使用fit()对回归线性方程进行拟合,通过数据(X,Y)得到最优的回归系数。我们再通过model.predict将预测数据放入到已经训练好了的模型当中,就能得出预测值x1_pre。

之后,通过a=model.coef_和b=model.intercept_,得到斜率(偏置)和截距(回归系数)

y=a*X+b和plt.plot(X,y)是让原始数据按照训练好的模型画出直线

y1=a*x1+b和plt.scatter(x1,y1,color='r')是将预测值放入到模型当中得出预测值。

通过数据可视化我们可以直观地去评价模型。

 图中红点就是预测值,可以放心其位置处于我们训练好的线性回归回归模型上。

 三.结尾

以上就是一元线性回归的实习方法,而现实中,房价与多种因素有关,就需要多元线性回归进行拟合,针对一元线性回归模型,我们进行了五个步骤:数据处理和探索,建立模型,训练模型,模型预测,评价模型。。而我们在初探之后将会对模型的使用步骤进行探索,分别有:数据处理和探索,数据特征工程,建立模型,训练模型,模型预测,评价模型。其中据处理和探索和数据特征工程是工作量最大的,于是在模型使用的过程当中,我们需要对数据进行处理,理解整合为合理的数据格式。

  • 17
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值