2017-12-13 5 views
2

ケネスでCNN用の列車データセットを準備しようとしていましたが、データを正しく設定する方法が見つかりませんでした。 kerasでtensoflowを使ってkerasのdata.frameを作成する方法

CNN example、彼らはここで、MNISTデータセットを使用します。

このDIMを持つ配列を出力
library(keras) 

img_rows <- 28 

img_cols <- 28 

mnist <- dataset_mnist() 

x_train <- mnist$train$x 

x_train <- array_reshape(x_train, c(nrow(x_train), img_rows, img_cols, 1)) 

class(x_train) 
[1] "array" 

dim(x_train) 
[1] 60000 28 28  1 

私はこのようなデータフレームを持っている:

x = data.frame(c(1,10,19,28),c(2,11,20,29),c(3,12,21,30),c(4,13,22,31),c(5,14,23,32),c(6,15,24,33),c(7,16,25,34),c(8,17,26,35),c(9,18,27,36)) 

各行は、次のような3x3イメージを表します。

1 2 3 
4 5 6 
7 8 9 

私はこれをしようとしています:

x = as.integer(unlist(x)) 

x = array_reshape(x, c(4,3,3, 1)) 

この戻りスクランブル番号の3つの行列。 ¿ケラスのCNNのデータフレームを正しく変換するにはどうすればいいですか?

答えて

0

あなたがしようとしていることを理解しているならば、トレーニングデータ(x)を、それぞれ3x3行列の4つの要素の配列に再構成します。それは実際にそうであるならば、

> aperm(array(t(x), dim = c(3, 3, 4)), perm = c(2,1,3)) 

, , 1 

    [,1] [,2] [,3] 
[1,] 1 2 3 
[2,] 4 5 6 
[3,] 7 8 9 

, , 2 

    [,1] [,2] [,3] 
[1,] 10 11 12 
[2,] 13 14 15 
[3,] 16 17 18 

, , 3 

    [,1] [,2] [,3] 
[1,] 19 20 21 
[2,] 22 23 24 
[3,] 25 26 27 

, , 4 

    [,1] [,2] [,3] 
[1,] 28 29 30 
[2,] 31 32 33 
[3,] 34 35 36 
+0

これを試してくださいおかげで、しかし、あなたのソリューションは、私に 薄暗い持つオブジェクトを与える(x)は、私は薄暗い 4 3を持つオブジェクトを探しています を3 1 –

関連する問題