# Feed data into Keras LSTM layer [closed]

I'm trying to understand how to feed data into LSTM layer of Keras, but I'm in trouble and I don't understand how to do it. I've have a dataset composed by words and each words is embedded with a vector of 839 elements, so the shape of my dataset is (x, 839).

I want to feed my dataset into the LSTM layer, but I don't properly understand the 3D object wanted by Keras, composed by (batch_size, timesteps, feature). I want to feed one word per time into the LSTM, how can I do?

ValueError: Error when checking input: expected lstm_11_input to have shape (2, 839) but got array with shape (839, 1)

I'm using batch_input_shape(batch_size, timesteps, feature) at the moment. This is the code:

class KendallTauHistory(Callback):
def __init__(self, dataset, y_true, groups):
self.y_true = y_true
self.dataset = dataset
self.groups = groups

def on_epoch_end(self, epoch, logs=None):
predictions = self.model.predict(self.dataset)
predictions = predictions.flatten()
predictions = list(map(lambda element: element + np.random.uniform(0.0, 1.0) * 0.02 - 0.01, predictions))
# For batch training
ranked_predictions = np.array([])
kendalls = np.array([])
start_range = 0
for group in self.groups:
end_range = (start_range + group[1]) # Batch is a group of words with same group id
batch_predictions = predictions[start_range:end_range]
batch_labels = self.y_true[start_range:end_range]
batch_predictions = list(map(lambda element: element + np.random.uniform(0.0, 1.0) * 0.02 - 0.01, batch_predictions))
ranked_predictions = np.append(ranked_predictions, np.floor(rankdata(batch_predictions)))
kendalls = np.append(kendalls, kendalltau(batch_labels, batch_predictions))
start_range = end_range
#self.y_true = self.y_true[0:len(ranked_predictions)]
print('\nORIGINAL LABELS: {0}\n'.format(self.y_true))
print('PREDICTED LABELS: {0}'.format(ranked_predictions))
print("\nEpoch Kendall's tau: {0}".format(np.mean(kendalls)))

model = tf.keras.Sequential()

model.summary()

real_labels = np.array([])
losses = np.array([])

with tf.device('/GPU:0'):
model.fit(training_dataset, training_dataset_labels, epochs=10, workers=10,
verbose=1, callbacks=[KendallTauHistory(training_dataset, training_dataset_labels, groups_id_count)])