2017-10-22 16 views
0

tensorflowライブラリを使用してデータセットを処理する効率的な方法はありますか?テンソルフローを使用してデータセットの形式を変更するにはどうすればよいですか?

+0

これまでに何を試みましたか? – Wndrr

+0

数字の配列ですか?パンダを使って何が問題になったのですか? – Maxim

+0

実際に私は完全に初心者で、私はPythonでデータセットを読み込む方法を知りませんでした。テンソルフローを使ってすばやく効率的な方法があるかどうかを尋ねていましたが、パンダが@Maximのように言います – Adiaforos

答えて

0

このサンプルコードは、CSVのインポート、いくつかの基本的な操作、およびテンソルフローでのNN学習の実行を開始するのに役立ちます。 data hereを入手できます。

import numpy as np 
import pandas as pd 
import tensorflow as tf 

# Read and manipulate data from CSV 
df = pd.read_csv('df.csv') 
df = df.dropna(how='any') 
df = df.drop('DayOfWeek', axis=1) 
df.Customers = df.Customers/1000.0 
df.CompetitionDistance = df.CompetitionDistance/1000.0 
df.Sales = df.Sales/1000.0 

# Parameters 
features = 2 
hidden = 3 
learning_rate = 0.2 

# Prepare input and output arrays 
train_x = np.array(df[['CompetitionDistance', 'Customers']]) 
train_y = np.array(df[['Sales']]).reshape([-1]) 

# Build a simple TF graph 
x = tf.placeholder(tf.float32, shape=[None, features], name='x') 
y = tf.placeholder(tf.float32, shape=[None], name='y') 
W = tf.get_variable(name='W', shape=[features, hidden]) 
b = tf.get_variable(name='b', shape=[hidden], initializer=tf.zeros_initializer) 
z = tf.matmul(x, W) + b 
predict = tf.reduce_sum(z, axis=1) 
loss = tf.reduce_mean(tf.square(y - predict)) 
optimizer = tf.train.AdamOptimizer(learning_rate).minimize(loss) 

# Run the training 
with tf.Session() as session: 
    session.run(tf.global_variables_initializer()) 
    for i in xrange(101): 
    _, loss_value = session.run([optimizer, loss], 
           feed_dict={x: train_x, y: train_y}) 
    if i % 10 == 0: 
     print "epoch=%03i, loss=%.5f" % (i, loss_value) 
関連する問題