人工智能学习之机器学习总结1

人工智能里面分机器学习和深度学习,机器学习里有线性回归,逻辑回归,聚类,深度学习里有卷积神经网络和循环神经网和多层感知器

首先学习了线性回归,其思想就是使用梯度下降算法(求导数)对a和b求导数,不断搜索迭代以求最好的线性a,b,使得预测值和真实值的差距越来越小,同时有损失函数MSE和R2 来评估模型,有scikit-learn评估模型

其使用流程一般为pandas导入数据,matplotlib绘制原始数据图,numpy将得到的原始数据转化为有维度的数组(方便使用函数预测),然后使用sclearn.LinearRegression().fit(数据)预测,多因子模型就使用loc[:]对数据切片

然后预测值可以使用对象.predict()获取,评估需要使用from sklearn.metrics import mean_squared_error,r2_score

import matplotlib
from matplotlib import pyplot as plt
#数据处理
x=[1,2,3,4,5,6,7,8,9,10]
y=[7,9,11,13,15,17,19,21,23,25]
#设置图像大小
fig1=plt.figure(figsize=(5,5))
#绘制线型图
plt.plot(x,y)
#对x,y轴设置名称
plt.xlabel("x")
plt.ylabel("y")
plt.show()

 

import numpy as np
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error,r2_score
#初始化对象
linear_model=LinearRegression()
#用numpy将数据转化为数组并用reshape设置维度
x=np.array(x)
x=x.reshape(-1,1)
y=np.array(y)
y=y.reshape(-1,1)
#预测模型
linear_model.fit(x,y)


#对象的predict用于预测模型的结果,预测x轴上的数据用[[0.6]]表示
y_predicct=linear_model.predict(x)
print(y_predicct)
a=linear_model.coef_
b=linear_model.intercept_
print(a,b)
[[ 7.]
 [ 9.]
 [11.]
 [13.]
 [15.]
 [17.]
 [19.]
 [21.]
 [23.]
 [25.]]
[[2.]] [5.]
MSE=mean_squared_error(y,y_predicct) R2=r2_score(y,y_predicct)
print(MSE,R2)
plt.figure()
plt.scatter(y,y_predicct)
plt.show()

 

 

 

posted @ 2023-07-29 13:56  cojames  阅读(10)  评论(0编辑  收藏  举报