Deep Learning for Channel Coding