深度学习-Tensorflow2.2-深度学习基础和tf.keras{1}-线性回归tf.keras概述-02

线性回归原理

在这里插入图片描述
线性方程 y=kx+b
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' # 修改警告级别,不显示警告
import tensorflow as tf
import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv('A.csv')
print(data)
plt.scatter(data.Education,data.Income)
plt.show()

在这里插入图片描述

在这里插入图片描述

预测目标与损失函数

目标:预测函数f(x)与真实值之间的整体误差最小。
损失函数:使用均方误差作为成本函数,也就是预测值和真实值之间差的平方取均值。
在这里插入图片描述
在这里插入图片描述

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' # 修改警告级别,不显示警告
import tensorflow as tf
import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv('A.csv')
# print(data)
# plt.scatter(data.Education,data.Income)
# plt.show()
x = data.Education
y = data.Income

model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(1,input_shape=(1,)))
model.summary()

在这里插入图片描述

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' # 修改警告级别,不显示警告
import tensorflow as tf
import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv('A.csv')
# print(data)
# plt.scatter(data.Education,data.Income)
# plt.show()
x = data.Education
y = data.Income

model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(1,input_shape=(1,)))
# model.summary() # ax+b
model.compile(optimizer='adam',loss='mse')# 编译(优化方法:admaoptimizer='adam',损失函数:均方差loss='mse')
history = model.fit(x,y,epochs=5000) # 训练x,y5000次寻找a和b的最小值
print(history)


在这里插入图片描述

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' # 修改警告级别,不显示警告
import tensorflow as tf
import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv('A.csv')
# print(data)
# plt.scatter(data.Education,data.Income)
# plt.show()
x = data.Education
y = data.Income

model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(1,input_shape=(1,)))
# model.summary() # ax+b
model.compile(optimizer='adam',loss='mse')# 编译(优化方法:admaoptimizer='adam',损失函数:均方差loss='mse')
history = model.fit(x,y,epochs=5000) # 训练x,y5000次寻找a和b的最小值
print(history)
print(model.predict(x))  # 预测现有的x值收入
print("20年的预测收入为:",model.predict(pd.Series([20]))) # 预测20年的收入


在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
多元线性回归是指依据多个自变量来预测因变量的一种回归分析方法。在Python中,使用Tensorflow2.3.0可以很方便地实现多元线性回归预测。 以下是一个简单的示例代码: ```python import tensorflow as tf import numpy as np # 设置训练数据 x_train = np.array([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.], [10., 11., 12.]]) y_train = np.array([[6.], [15.], [24.], [33.]]) # 定义模型 model = tf.keras.Sequential([ tf.keras.layers.Dense(units=1, input_shape=[3]) ]) # 编译模型 model.compile(optimizer=tf.keras.optimizers.Adam(0.1), loss='mean_squared_error') # 训练模型 model.fit(x_train, y_train, epochs=1000) # 使用模型进行预测 x_test = np.array([[2., 3., 4.]]) y_predict = model.predict(x_test) print(y_predict) ``` 在这个示例中,首先定义了训练数据x_train和y_train,其中x_train包含了4组3个自变量的数据,y_train包含了对应的4组因变量的数据。 接着定义了一个模型,使用了Tensorflow中的Sequential模型,其中只有一个Dense层,它的输入维度为3(与自变量个数相同),输出维度为1(因变量个数)。 在模型编译时,使用了Adam优化器和均方误差作为损失函数。 接下来进行了1000次的训练,最后使用训练好的模型对一个新的测试数据进行预测,并打印出预测结果。 需要注意的是,在实际应用中,训练数据和测试数据的数量应该远远大于这个示例中的数量,同时还要考虑特征的选择和处理、模型的优化等问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值