This version can both save and load nice-looking XML parameter files. That means you can train it for hours, on tons of data, just once and then load the well-trained parameters later. XML file creation is achieved in way that could be neater; each of my RegressionTree() objects are mapped onto a object of the ElementTree() type, which is a container defined in the Python XML library. I then use the associated library to write an XML file (with an auxilary file I copied from the internet that makes this XML file more human readable). I also use that library to load from the XML file and then rebuild trees of my own type. Eventually you should just use your trees and write your own XML reader/writer subroutines, or use just the ElementTree objects in the main program and get rid of your objects.