如何使用Tensorflow和Python对预处理后的数据进行洗牌?
Tensorflow 是谷歌提供的机器学习框架。它是一个开源框架,与 Python 结合使用以实现算法、深度学习应用程序等等。它用于研究和生产目的。它具有优化技术,有助于快速执行复杂的数学运算。这是因为它使用了 NumPy 和多维数组。这些多维数组也称为“张量”。该框架支持使用深度神经网络。
可以使用以下代码行在 Windows 上安装“tensorflow”包:
pip install tensorflow
张量是 TensorFlow 中使用的数据结构。它有助于连接流图中的边。此流图称为“数据流图”。张量只不过是多维数组或列表。
我们将使用伊利亚特的数据集,其中包含威廉·考珀、爱德华(德比伯爵)和塞缪尔·巴特勒的三部翻译作品的文本数据。该模型经过训练,可以在给出一行文本时识别翻译者。使用的文本文件已进行预处理。这包括删除文档标题和页脚、行号和章节标题。
我们正在使用 Google Colaboratory 来运行以下代码。Google Colab 或 Colaboratory 帮助通过浏览器运行 Python 代码,无需任何配置即可免费访问 GPU(图形处理单元)。Colaboratory 基于 Jupyter Notebook 构建。
示例
以下是代码片段:
print("Combine the labelled dataset and reshuffle it") BUFFER_SIZE = 50000 BATCH_SIZE = 64 VALIDATION_SIZE = 5000 all_labeled_data = labeled_data_sets[0] for labeled_dataset in labeled_data_sets[1:]: all_labeled_data = all_labeled_data.concatenate(labeled_dataset) all_labeled_data = all_labeled_data.shuffle( BUFFER_SIZE, reshuffle_each_iteration=False) print("Displaying a few samples of input data") for text, label in all_labeled_data.take(8): print("The sentence is : ", text.numpy()) print("The label is :", label.numpy())
代码来源:https://tensorflowcn.cn/tutorials/load_data/text
输出
Combine the labelled dataset and reshuffle it Displaying a few samples of input data The sentence is : b'But I have now both tasted food, and given' The label is : 0 The sentence is : b'All these shall now be thine: but if the Gods' The label is : 1 The sentence is : b'Their spiry summits waved. There, unperceived' The label is : 0 The sentence is : b'"I pray you, would you show your love, dear friends,' The label is : 1 The sentence is : b'Entering beneath the clavicle the point' The label is : 0 The sentence is : b'But grief, his father lost, awaits him now,' The label is : 1 The sentence is : b'in the fore-arm where the sinews of the elbow are united, whereon he' The label is : 2 The sentence is : b'For, as I think, I have already chased' The label is : 0
解释
在预处理数据后,控制台上会显示数据集中的几个样本。
数据未分组,这意味着“all_labeled_data”中的每个条目都对应一个数据点。
广告