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) を参照してください。