Seol mar théacs é seo: Artificial neural network training and software implementation techniques