Joone logo

the Joone site

History of Changes



Version 2.0.0 RC1 (01/18/2007)

  • addThe core engine has been refactored by adding the single-thread mode. The resulting performances are improved by 50%, with an enhanced reliability and scalability.()
  • addA set of tools were added, in order to hide the complexity of the API, and make it very simple to work with the core engine. Now you can build, train and interrogate a neural network by writing only 3 rows of code! Read more...()
  • addA new Image I/O component has been added, in order read and write directly from/to image files (jpeg and gif format supported)()
  • addAdded a new SoftMax Layer to build neural networks for resolving 1 of C classification problems()
  • updateImproved the usability of the property panels, by adopting a new file chooser panel, and a visual calendar panel in order to make it very simple to insert date fields()
  • fixSeveral bugs were fixed and the documentation has been updated with the new features()

Version 1.2.1 (09/08/2005)

  • addAdded the FahlmanTeacherSynapse to implement the Fahlman criterion (by Boris Jansen)()
  • addAdded the support for the Groovy scripting language (by Yan Cheng Cheok)()
  • addAdded the LogarithmicPlugin to apply a logarithmic transformation (base e) to input data (by Yan Cheng Cheok)()
  • addAdded the save as XML in the GUI Editor (needs xstream.jar in the classpath) (by Paolo Marrone)()
  • addAdded the AbstractTeacherSynapse in order to permit to add the calculus of whatever new cost function (by Boris Jansen)()
  • fixFixed the ChartOutputSynapse: small bug in values Y axis labels (bug #1143858) (by Jan Boonen)()
  • fixFixed the lacking of the first column when copied the inspected values (bug #1158597) (by Paolo Marrone)()
  • fixFixed a problem about the data not reloaded after calling StreamInputSynapse.resetInput (#1164061) (by Paolo Marrone)()
  • fixFixed resetInput not propagated through the InputConnector (bug #1164064) (by Paolo Marrone)()
  • fixResolved an ArrayIndexOutOfBoundsException into the ToBinaryPlugin (by Yan Cheng Cheok)()
  • fixFixed a ArrayIndexOutOfBoundsException within the Monitor.fireNetStopped method (by Jonathan Love)()
  • fixFixed a problem that prevented the SangerSynapse from learning when in training mode (by Paolo Marrone)()
  • fixNow the inspection panel doesn't show the biases for Layers for which this doesn't make sense (by Paolo Marrone)()

Version 1.2.0 (02/03/2005)

  • addEngine: Added a basic implementation of the RBF networks (by Boris Jansen)()
  • addEngine: Added the BiasedLinearLayer, useful to implement the RBF networks (by Boris Jansen)()
  • addEngine: Added the DeltaNormPlugin in order to pre-elaborate time series()
  • addEngine: Added the JDBCOutputSynapse to write output patterns to RDBMs via JDBC (by Julien Norman)()
  • addEngine: Added the SineLayer component, a layer that applies the sin(x) function to its input (by Boris Jansen)()
  • addEngine: Added the ShufflePlugin, an input plugin to shuffle the input patterns at each cycle()
  • addEngine: Added the BynaryPlugin, an input plugin to convert to binary the input values (by Boris Jansen)()
  • addEngine: Added the SimulatedAnnealing learning algorithm (by Boris Jansen)()
  • addEngine: Added the 'useRMSE' property to the Monitor object in order to choose how to calculate the error of the network: MSE or RMSE (by Boris Jansen)()
  • addEngine: Added the InputConnector class in order to permit to use a unique input synapse for the entire network()
  • addEngine: Added the 6th column to the YahooFinanceInputSynapse in order to extract also the 'Adjusted Close' value()
  • addEngine: Added the WeightInitializer interface in order to implement a plugable mechanism to initialize the Matrix's weights according to a customizable algorithms (by Boris Jansen)()
  • updateEngine: Refactored the Input plugins mechanism in order to eliminate the duplicated code in both the ConverterPlugin and OutputConverterPlugin classes()
  • updateEngine: Added a new mechanism to manage the chosen learning algorithm()
  • updateGUI Editor: Added a new toolbar in order to reduce the size of the main window()
  • fixEngine: Fixed the 'Batch size never passed to BatchLearner' problem (bug #1027660)()
  • fixEngine: Fixed the unwanted change of the Layer's rows value (bug #1038530)()
  • fixEngine: Fixed a problem in the YahooFinanceInputSynapse correlated with non-US stocks (bug #1047194)()
  • fixEngine: Added code to prevent a clear() call when patternListeners are null (by Firestrand)()
  • fixGUI Editor: Added code in the GUI Control Panel to refresh the display on the last epoch (by Firestrand)()
  • fixEngine: Fixed netStopped wont be invoked in recall mode (bug #1047774)()
  • fixEngine: Fixed a NullPointerException when ispected a DirectSynapse (bug #1038525)()
  • fixEngine: Fixed Joone cannot run within an applet (bug #1110154)()
  • fixEngine: Resolved a problem about unbuffered StreamInputSynapses when a big input file is read()

Version 1.1.1 (09/13/2004)

  • fixEngine: Fixed the 'No matching patterns' problem (bug #1024973)()
  • fixEngine: Fixed the globalError set to 0.0 for a cloned neural network (bug #1013956)()
  • fixEngine: Fixed the missing use of the momentum parameter in the BatchLearner (bug #1024960)()
  • fixEngine: Now the KohonenSynapse registers itself correctly as NeuralNetListener when deserialized (bug #1025177)()
  • fixEngine: Fixed a NullPointerException in the YahooFinanceInputSynapse when no data present (bug #1026110)()

Version 1.1.0 (08/18/2004)

  • addEngine: Added the Resilient Backprop (RPROP) algorithm (by Boris Jansen)()
  • addEngine: Added the method join to the NeuralNet object in order to implement a mechanism to wait for all the running threads to finish()
  • addEngine: Added the 'param' property to the Monitor object in order to permit to store whatever new parameter without the need to change the java code()
  • addGUI Editor: Added the learningMode property in the Control Panel to choose the learning algorithm()
  • addGUI Editor: Added the 'http_proxy...' tag to the xml property file in order to permit to access to Internet also when in presence of a firewall proxy()
  • updateEngine: Revisited the threads synchronization to improve the training speed: improved more than 35%!()
  • updateEngine: Revisited the learners handling mechanism in order to be able to add/choose dynamically the Learner components()
  • fixEngine: Fixed a bug in batchmode (bug #991335) (by Boris Jansen)()
  • fixEngine: Fixed a wrong calculus of the output neighbourhood radius of the GaussianLayer component when in recall mode()
  • fixEngine: Fixed a bug in Layer.isRunning method (bug #1007838) (by Jerry R. Vos)()
  • fixGUI Editor: Fixed the file chooser, that didn't appeare when the .cfg file was corrupted()

Version 1.0.1 (06/13/2004)

  • fixGUI Editor: Resolved the rmse not displayed when the net runs for few epochs (> 50)()
  • fixEngine: Fixed a wrong initialization of the parent Monitor within the NestedNeuralLayer class()
  • fixEngine: Added the netStoppedError notification to the internal NN of the NestedNeuralLayer class()
  • fixEngine: The NestedNeuralLayer's randomize/addNoise method calls now have effect only when in learning mode()
  • fixEngine: Resolved a wrong calculus of the validation error after consecutive runs (bug #957664)()
  • fixEngine: Fixed the wrong validation error calculus when preLearning > 0 (bug #949353)()
  • updateEngine: Eliminated an useless warning raised by the TeacherSynapse when stopped()

Version 1.0.0 final (04/13/2004)

  • addGUI Editor: Added the 'Page Setup' menu item to setup the printer's options()
  • addGUI Editor: Added the 'Paste' button in the inspection frame()
  • addGUI Editor: Added the maxBufSize property to the input synapses based on the StreamInputTokenizer()
  • updateGUI Editor: Now the main window remembers its last position and size()
  • updateGUI Editor: Added the initial splash screen()
  • fixGUI Editor: Inverted the In/Out dataMin/Max properties' description on the NormalizerPlugin()
  • addEngine: Added the setComponent method to the Inspection interface and its inherited classes()
  • addEngine: Added the maxBufSize property to the input synapses based on the StreamInputTokenizer()
  • updateEngine: Decoupled the engine from the logging libraries to be independent from the Log4j library()
  • fixEngine: The StreamInputSynapse checks now if its input patterns number is lesser than the Monitor's input patterns setting()
  • fixEngine: The FileInputSynapse opens the input stream only when requested()
  • fixEngine: Resolved the IOException 'too many open files' on FileOutputSynapse object()
  • fixEngine: Changed the tokenizer handling into all the classes inheriting StreamInputSynapse()
  • fixEngine: The NestedNeuralLayer now handles correctly the attached I/O components()
  • fixEngine: The XLSInputSynapse now handles correctly sheets containing empty columns/rows()
  • fixEngine: The XLSInputSynapse now handles correctly the sheet name property()
  • fixEngine: The Monitor object now handles correctly the nested Monitor, if present()