  A critical aspect of reliable communication involves the design of codes that
allow transmissions to be robustly and computationally efficiently decoded
under noisy conditions. Advances in the design of reliable codes have been
driven by coding theory and have been sporadic. Recently, it is shown that
channel codes that are comparable to modern codes can be learned solely via
deep learning. In particular, Turbo Autoencoder (TURBOAE), introduced by Jiang
et al., is shown to achieve the reliability of Turbo codes for Additive White
Gaussian Noise channels. In this paper, we focus on applying the idea of
TURBOAE to various practical channels, such as fading channels and chirp noise
channels. We introduce TURBOAE-TI, a novel neural architecture that combines
TURBOAE with a trainable interleaver design. We develop a carefully-designed
training procedure and a novel interleaver penalty function that are crucial in
learning the interleaver and TURBOAE jointly. We demonstrate that TURBOAE-TI
outperforms TURBOAE and LTE Turbo codes for several channels of interest. We
also provide interpretation analysis to better understand TURBOAE-TI.
