2016-04-24 7 views
6

私はUbuntu 14.04にTensorflowをインストールします。私はMNIST For ML Beginnersチュートリアルを完了しました。わかりました。テンソルフローのために私自身のデータをどのように準備するのですか?

また、自分のデータを使用しようとしています。私は列車のデータをT [1000] [10]としている。ラベルはL [2]、1または0です。

データにはどのようにアクセスできますかmnist.train.images

+0

input_data.pyをチェックしましたか?私はあなたがファイルからいくつかのアイデアを得るだろうと思う。 –

+0

私はそれをチェックします。 https://github.com/tensorflow/tensorflow/blob/r0.8/tensorflow/examples/tutorials/mnist/input_data.pyしかし、私はデータをインストールして解析する方法を理解していません。 –

+0

スクリプトは自動的にデータセットをダウンロードしてインポートします。私は自分でそれをしたい。 –

答えて

1

input_data.pyでは、これらの2つの機能がメインの仕事です。

1.ダウンロード

def maybe_download(filename, work_directory): 
    """Download the data from Yann's website, unless it's already here.""" 
    if not os.path.exists(work_directory): 
     os.mkdir(work_directory) 
    filepath = os.path.join(work_directory, filename) 
    if not os.path.exists(filepath): 
     filepath, _ = urlretrieve(SOURCE_URL + filename, filepath) 
     statinfo = os.stat(filepath) 
     print('Succesfully downloaded', filename, statinfo.st_size, 'bytes.') 
    return filepath 

2データセットと位置に基づいて

def extract_images(filename): 
    """Extract the images into a 4D uint8 numpy array [index, y, x, depth].""" 
    print('Extracting', filename) 
    with gzip.open(filename) as bytestream: 
     magic = _read32(bytestream) 
     if magic != 2051: 
      raise ValueError(
       'Invalid magic number %d in MNIST image file: %s' % 
       (magic, filename)) 
     num_images = _read32(bytestream) 
     rows = _read32(bytestream) 
     cols = _read32(bytestream) 
     buf = bytestream.read(rows * cols * num_images) 
     data = numpy.frombuffer(buf, dtype=numpy.uint8) 
     data = data.reshape(num_images, rows, cols, 1) 
     return data 

をnparray画像、あなたが呼び出すことができます。

local_file = maybe_download(TRAIN_IMAGES, train_dir) 
train_images = extract_images(local_file) 

https://github.com/nlintz/TensorFlow-Tutorials/blob/master/input_data.pyでの完全なソースコードを参照してください。 。

+0

あなたの答えをありがとう。私の入力データには2つのファイルがあります。そのうちの1つに単語が含まれています(mnistは画像シーケンスを使用します)。もう1つはラベル(0または1)を含みます。私は自分の入力をenumareすることはできません。 –

+0

「私の入力をenumareできません」という意味はどうですか?サンプルファイルのdef extract_labels(filename、one_hot = False)を参照してください。 –

+0

私の単語ファイルに英語以外の文字が含まれています。私はextract_images関数で "data"のような行列を抽出できません。 –

関連する問題