Autoencoder gets ~0% accuracy / doesn't train at all
A few things. Firstly I don't think what you are trying to do is very meaningful. An autoencoder tries to find patterns in your data and take advantage of them to be able to compress and reconstruct the data. You are trying to use it with random data, which means there will be no patterns for the autoencoder to learn. I suggest you try using MNIST or another dataset.

Another thing is that your last activation function, your loss function, your metric and possibly your data does not work together. It is hard to tell what is right since I don't know what random numbers you generated. Probably your numbers are not binary, and you would want:

model.add(keras.layers.Dense(200))


model.compile(optimizer='adam', loss='mse')


Or if your random numbers are binary then you would want:

model.add(keras.layers.Dense(200), activation='sigmoid')


model.compile(optimizer='adam', loss='binary_crossentropy')


Lastly, using accuracy as a metric does not make sense for an autoencoder. Accuracy is only useful when you are performing classification.