Neural Networks Techniques for Predistortion