如何使用 TensorFlow 和 Auto MPG 数据集对数据进行归一化以预测燃油效率?
Tensorflow 是 Google 提供的一个机器学习框架。它是一个开源框架,与 Python 结合使用以实现算法、深度学习应用程序等等。可以使用以下代码行在 Windows 上安装“tensorflow”包:
pip install tensorflow
张量是 TensorFlow 中使用的数据结构。它有助于连接流图中的边。此流图称为“数据流图”。张量只不过是多维数组或列表。
回归问题的目标是预测连续或离散变量的输出,例如价格、概率、是否会下雨等等。
我们使用的数据集称为“Auto MPG”数据集。它包含 1970 年代和 1980 年代汽车的燃油效率。它包括重量、马力、排量等属性。通过这些属性,我们需要预测特定车辆的燃油效率。
我们使用 Google Colaboratory 来运行以下代码。Google Colab 或 Colaboratory 帮助在浏览器上运行 Python 代码,并且无需任何配置,并且可以免费访问 GPU(图形处理单元)。Colaboratory 是建立在 Jupyter Notebook 之上的。
以下是代码片段:
示例
print("Separating the label from features") train_features = train_dataset.copy() test_features = test_dataset.copy() train_labels = train_features.pop('MPG') test_labels = test_features.pop('MPG') print("The mean and standard deviation of the training dataset : ") train_dataset.describe().transpose()[['mean', 'std']] print("Normalize the features since they use different scales") print("Creating the normalization layer") normalizer = preprocessing.Normalization() normalizer.adapt(np.array(train_features)) print(normalizer.mean.numpy()) first = np.array(train_features[3:4]) print("Every feature has been individually normalized") with np.printoptions(precision=2, suppress=True): print('First example is :', first) print() print('Normalized data :', normalizer(first).numpy())
代码来源 - https://tensorflowcn.cn/tutorials/keras/regression
输出
Separating the label from features The mean and standard deviation of the training dataset : Normalize the features since they use different scales Creating the normalization layer [ 5.467 193.847 104.135 2976.88 15.591 75.934 0.168 0.197 0.635] Every feature has been individually normalized First example is : [[ 4. 105. 63. 2125. 14.7 82. 0. 0. 1. ]] Normalized data : [[−0.87 −0.87 −1.11 −1.03 −0.33 1.65 −0.45 −0.5 0.76]]
解释
目标值(标签)与特征分离。
标签是需要为预测发生而训练的值。
特征被归一化,以便训练稳定。
Tensorflow 中的“Normalization”函数预处理数据。
创建第一层,并将均值和方差存储在此层中。
调用此层时,它会返回输入数据,其中每个特征都已归一化。
广告