Apache Spark DataFrames を TFRecord ファイルとして保存する

この記事では spark-tensorflow-connector を使用して、Apache Spark DataFrames を TFRecord ファイルに保存し、TensorFlow を使用して TFRecord を読み込む方法について説明します。

TFRecord ファイル形式は、ML トレーニング データ用の単純なレコード指向のバイナリ形式です。 tf.data.TFRecordDataset クラスを使用すると、入力パイプラインの一部として 1 つ以上の TFRecord ファイルの内容をストリーミングできます。

spark-tensorflow-connector ライブラリを使用する

spark-tensorflow-connector を使用して、Apache Spark DataFrames を TFRecord ファイルに保存できます。

spark-tensorflow-connector は、Spark DataFrames と TFRecord (TensorFlow のデータを保存するための一般的な形式) 間の変換を可能にする TensorFlow エコシステム内のライブラリです。 spark-tensorflow-connector を使用すると、Spark DataFrame API を使用して TFRecord ファイルを DataFrames に読み込み、DataFrames を TFRecord として書き込むことができます。

注意

spark-tensorflow-connector ライブラリは、Databricks Runtime for Machine Learning に含まれています。 Databricks Runtime リリース ノートのバージョンと互換性spark-tensorflow-connector を使用するには、Maven からライブラリをインストールする必要があります。 詳細については、「Maven または Spark パッケージ」を参照してください。

例: TensorFlow を使用して TFRecord ファイルからデータを読み込む

このノートブックの例は、Apache Spark DataFrames から TFRecord ファイルにデータを保存し、ML トレーニング用に TFRecord ファイルを読み込む方法を示しています。

tf.data.TFRecordDataset クラスを使用して、TFRecord ファイルを読み込むことができます。 詳細については、TensorFlow からの [TFRecord ファイルの読み取り](https://www.tensorflow.org/ tutorials/load_data/tfrecord#reading_a_tfrecord_file) を参照してください。

分散 DL ノートブック用に画像データを準備する

ノートブックを入手