0

打开 Google colab 笔记本并运行以下语句

#
import tensorflow as tf
import pathlib
import os
dataset = tf.data.TextLineDataset('/content/sample_data/california_housing_test.csv')
dataset ## output is <TextLineDatasetV2 shapes: (), types: tf.string>

然后在下面运行

import tensorflow as tf
import pathlib
import os
dataset = tf.data.experimental.make_csv_dataset('/content/sample_data/california_housing_test.csv',batch_size=5)
dataset ## output is <PrefetchDataset shapes: OrderedDict([(longitude, (5,)), (latitude, (5,)), (housing_median_age, (5,)), (total_rooms, (5,)), (total_bedrooms, (5,)), (population, (5,)), (households, (5,)), (median_income, (5,)), (median_house_value, (5,))]), types: OrderedDict([(longitude, tf.float32), (latitude, tf.float32), (housing_median_age, tf.float32), (total_rooms, tf.float32), (total_bedrooms, tf.float32), (population, tf.float32), (households, tf.float32), (median_income, tf.float32), (median_house_value, tf.float32)])>

显然 tf.data.TextLineDataset 和 tf.data.experimental.make_csv_dataset 处理文本文件的方式存在巨大差异。为什么tensorflow有这两个在实验中,另一个在外面。

4

1 回答 1

1

tf.data.TextLineDataset从文本文件加载文本并创建一个数据集,其中文件的每一行都成为数据集的一个元素。

其中tf.data.experimental.make_csv_dataset将 CSV 文件读入数据集,其中数据集的每个元素都是对应于一批 CSV 行的(特征、标签)元组。file_pattern 应该是包含 CSV 记录的文件或文件路径模式的列表。

tf.experimental表示所述类/方法处于早期开发、不完整或不太常见、不符合标准。有关更多信息,您可以参考此答案

于 2021-06-25T13:49:33.763 回答