TensorFlow入门(一):构建一个线性回归模型

这篇博客介绍了在TensorFlow中构建线性回归模型的步骤,包括环境配置、模型目标、参数说明和代码实践。作者使用Anaconda管理Python环境和依赖库,目标是学习TensorFlow基本概念,并基于加利福尼亚1990年人口普查数据预测房屋价值。模型评估采用均方根误差,通过调整超参数提高准确率。
摘要由CSDN通过智能技术生成

TensorFlow入门(一):构建一个线性回归模型

1.环境配置

系统是macOS,Python版本3.6.4,项目所依赖的各种包都是通过Anaconda来配置的,Anaconda的安装与搭建参考 https://www.zhihu.com/question/24289087 即可。

项目所依赖的包主要有tensorflow,matplotlib,pandas,sklearn,numpy等等,这里有些包在你装好Anaconda时就已经存在,通过在终端中输入

conda list

就可以知道已有的python包,要安装本来没有的,只要在终端中输入

conda install tensorflow

就行,这里以tensorflow举例 。

2.模型目标

  • 学习基本的 TensorFlow 概念
  • 在 TensorFlow 中使用 LinearRegressor 类并基于单个输入特征预测各城市街区的房屋价值中位数
  • 使用均方根误差 (RMSE) 评估模型预测的准确率
  • 通过调整模型的超参数提高模型准确率

数据基于加利福尼亚州 1990 年的人口普查数据。
参考教程:https://developers.google.cn/machine-learning/crash-course/first-steps-with-tensorflow/programming-exercises

3.参数说明

  • steps:指训练迭代的总次数。一步计算一批样本产生的损失,然后使用该值修改模型的权重一次。
  • batch size:指单步的样本数量。例如,SGD(随机梯度下降)的批量大小为 1,而小批量SGD的批量大小通常为10到1000之间。
  • periods:控制报告的粒度,简单来说就是希望生成“报告”的个数。比如说steps为70,而periods为7,则每10个steps就会生成一次“报告”,所以一共有7个“报告”。

4.代码

通过TensorFlow实现一个线性回归的模型大致分为如下几个步骤:

  1. 定义特征(feature)并配置特征列
  2. 定义目标(target)
  3. 配置线性回归模型
  4. 定义输入函数
  5. 训练模型
  6. 评估模型

直接给出完整代码,注释中对代码都做出了解释。

first_steps_with_tensorflow.py文件

#!/usr/bin/python
# -*- coding: UTF-8 -*-

from __future__ import print_function

import math

from IPython import display
from matplotlib import cm
from matplotlib import gridspec
from matplotlib import pyplot as plt
import numpy as np
import pandas as pd
from sklearn import metrics
import tensorflow as tf
from tensorflow.python.data import Dataset

#一些初始化设定
tf.logging.set_verbosity(tf.logging.ERROR)
pd.options.display.max_rows = 10
pd.options.display.float_format = '{:.1f}'.format

#通过pandas从特定网址加载数据集
california_housing_dataframe = pd.read_csv("https://download.mlcc.google.com/mledu-datasets/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值