It is not necessary that your loss should decrease for every batch within each epoch (it can go up for different batches), but it should decrease across different epochs.
If your loss is not decreasing across different epochs, learning rate could be a problem