如何在TensorFlow上构建顺序模型来预测车辆的燃油效率?
Tensorflow是由Google提供的机器学习框架。它是一个开源框架,与Python一起使用来实现算法、深度学习应用等等。它被用于研究和生产目的。Tensor是TensorFlow中使用的一种数据结构。它有助于连接数据流图中的边缘。这个数据流图被称为“数据流图”。Tensors只不过是多维数组或列表。它们可以使用三个主要属性识别出来 –
- Rank − 它告诉张量的维数。可以将其理解为已定义张量中的张量顺序或张量中的维数。
-
Type − 它告诉张量元素关联的数据类型。它可以是一维、二维或n维张量。
-
Shape − 它是行数和列数的总和。
可以使用以下代码在Windows上安装“tensorflow”包 –
pip install tensorflow
回归问题的目标是预测连续或离散变量的输出,例如价格、概率、是否会下雨等等。
我们使用的数据集称为“汽车MPG”数据集。它包含上世纪70年代和80年代汽车的燃油效率。它包括重量、马力、排量等属性。我们需要预测特定车辆的燃油效率。
顺序模型是在层堆栈的基础上构建的模型。
我们使用Google Colaboratory来运行以下代码。Google Colab或Colaboratory可以在浏览器上运行Python代码,无需任何配置,并免费访问GPU(图形处理器)。Colaboratory是建立在Jupyter Notebook之上的。以下是代码片段 –
更多Python相关文章,请阅读:Python 教程
示例
print("正在使用1个密集层构建顺序模型")
linear_model = tf.keras.Sequential([
normalizer,
layers.Dense(units=1)
])
print("正在进行预测")
linear_model.predict(train_features[:10])
linear_model.layers[1].kernel
print("正在编译模型")
linear_model.compile(
optimizer=tf.optimizers.Adam(learning_rate=0.1),
loss='mean_absolute_error')
print("正在将模型拟合到数据中")
history = linear_model.fit(
train_features, train_labels,
epochs=150,
verbose=0,
validation_split = 0.25)
print("正在绘制预测值")
plot_loss(history)
print("正在评估预测结果")
test_results['linear_model'] = linear_model.evaluate(
test_features, test_labels, verbose=0)
代码来源 – https://www.tensorflow.org/tutorials/keras/regression
输出
说明
-
建立了一个使用keras API的顺序结构模型。
-
预测’ MPG ‘的值。
-
线性回归的一般格式为y = mx + b。
-
完成预测后,编译该模型。
-
接下来,将模型拟合到数据中,其中定义了训练步数。
-
在控制台上绘制了先前预测的值。