Sono piuttosto nuovo su Neural Networks e Keras Library e mi chiedo come posso usare il Embedding Layer come descritto here per mascherare i miei dati di input da un tensore 2D a un tensore 3D per un RNN.Come utilizzare il layer di incorporamento per reti neurali ricorrenti (RNN) in Keras
Dire dati i miei TimeSeries cercando come segue (un tempo più basso):
X_train = [
[1.0,2.0,3.0,4.0],
[2.0,5.0,6.0,7.0],
[3.0,8.0,9.0,10.0],
[4.0,11.0,12.0,13.0],
...
] # with a length of 1000
Ora, dico io vorrei dare l'RNN ultimi 2 vettori di caratteristiche al fine di prevedere il vettore funzione per il tempo t +1.
Attualmente (senza il livello di inclusione), sto creando il tensore 3D richiesto con forma (nb_samples, timesteps, input_dim) me stesso (come in questo esempio here).
correlati a mio esempio, la finale 3D Tensor avrebbe poi apparire come segue:
X_train_2 = [
[[1.0,2.0,3.0,4.0],
[2.0,5.0,6.0,7.0]],
[[2.0,5.0,6.0,7.0],
[3.0,8.0,9.0,10.0]],
[[3.0,8.0,9.0,10.0],
[4.0,11.0,12.0,13.0]],
etc...
]
e Y_train:
Y_train = [
[3.0,8.0,9.0,10.0],
[4.0,11.0,12.0,13.0],
etc...
]
Il mio modello appare come segue (adattato alla esempio semplificato di cui sopra):
num_of_vectors = 2
vect_dimension = 4
model = Sequential()
model.add(SimpleRNN(hidden_neurons, return_sequences=False, input_shape=(num_of_vectors, vect_dimension)))
model.add(Dense(vect_dimension))
model.add(Activation("linear"))
model.compile(loss="mean_squared_error", optimizer="rmsprop")
model.fit(X_train, Y_train, batch_size=50, nb_epoch=10, validation_split=0.15)
Infine, la mia domanda sarebbe, come posso evitare di fare quel tensore 2D a Tensore 3D che rimodella me stesso e uso invece il livello Incorporamento? Credo che dopo il modello = sequenziale() avrei dovuto aggiungere qualcosa come:
model.add(Embedding(?????))
Probabilmente la risposta è piuttosto semplice, sto semplicemente confuso dalla documentazione dello strato di incorporamento.
forse avrei dovuto aggiungere un ".0" dietro tutti i miei numeri. In realtà non sto cercando di eseguire un'analisi categoriale. – Kito