Version history: Difference between revisions

From Jstacs
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
''February 2, 2012:<br />
Jstacs 2.0 released
''Jstacs 2.0 changes many names and the structure of several packages. It is not code-compatible with Jstacs 1.5 and earlier''
Restructuring and Renaming:
* former ScoringFunction, NormalizableScoringFunction, Model
** new base-interface SequenceScore
** new sub-interface StatisticalModel of SequenceScore for all statistical models with sub-iterfaces DifferentiableStatisticalModel and TrainableStatisticalModel
** new interface DifferentiableSequenceScore replaces ScoringFunction
** new interface DifferentiableStatisticalModel replaces NormalizableScoringFunction
** new interface TrainableStatisticalModel replaces Model
** new abstract class AbstractDifferentiableSequenceScore
** new abstract class AbstractDifferentiableStatisticalModel replaces AbstractNormalizableScoringFunction
** new abstract class AbstractTrainableStatisticalModel replaces AbstractModel
** former *Models renamed to *TrainSM
** former *ScoringFunction renamed to *DiffSS or *DiffSM
** getProbFor removed from TrainableStatisticalModel (former Model) and conceptually replaced by getLogProbFor
** getLogScore(Sequence,int,int) with changed meaning of arguments: getLogScore(Sequence,start,end) instead of getLogScore(Sequence,start,length)
** isTrained() replaced by common method isInitialized()
* Sample renamed to DataSet
* Parameters and Results
** new super-class of Parameters and Results: AnnotatedEntity
** common list-type for Parameters and Results: AnnotatedEntityList
** Renaming: CollectionParameter -> SelectionParameter, MultiSelectionCollectionParameter -> MultiSelectionParameter, new super-class AbstractSelectionParameter
** major refactoring due to common hierarchy and code-cleanup
** lazy evaluation of Parameter/ParameterSet hierarchies moved from ParameterSet (loadParameters()) to ParameterSetContainer (constructor on class)
** SubclassFinder adapted to lazy evaluation
* performance measures
** new abstract super-class AbstractPerformanceMeasure of all performance measures
** new interface NumericalPerformanceMeasure for all performance measures that return a single number (as opposed, e.g., to curves)
** new class PerformanceMeasureParameterSet for a collection of general performance measures
** new class NumericalPerformanceMeasureParameterSet for a collection of NumericalPerformanceMeasures
** used in evaluate-method of AbstractClassifier and in ClassifierAssessments
* evaluate and evaluateAll in AbstractClassifier joined
* new class IndependentProductDiffSS as super-class of IndepedentProductDiffSM (former IndependentProductScoringFunction)
* new class UniformDiffSS as super-class of UniformDiffSM (former UniformScoringFunction)
New functionality:
* multi-threaded implementation of Baum-Welch and Viterbi training of hidden Markov models
* new Interface Singleton that can be used for singleton instances to save memory, current examples: DNAAlphabet, DNAAlphabetContainer, ProteinAlphabet
* added possibility to use NaN-values with ContinuousAlphabets
* added ProteinAlphabet
* added ArbitraryFloatSequence including static methods for DataSet creation for cases where double-precision is not needed
* new performance measure MaximumFMeasure
* access to Parameters in ParameterSets and Results in ResultSets by name
* emitDataSet in BayesianNetworkDiffSM
* new static method Time.getTimeInstance that returns UserTime or RealTime depending on availability of shared lib
* SubclassFinder allows for adding own base packages
* new method overlaps() in LocatedSequenceAnnotationWithLength
* TerminationCondition used in ScoreClassifier and sub-classes
* public method propagateESS in HMMFactory
* new method generateLog in DirichletMRG for drawing log-values
* added DifferentiableStatisticalModelFactory
Bugfixes/Improvements:
* bugfix in propagation of equivalent sample size in HMMFactory
* bugfix in random initialization of BasicHigherOrderTransition
* improved Alignment implementation
* SafeOutputStream with new static factory method getSafeOutputStream, write methods now work on Objects
Documentation:
* improved Javadocs in many classes and packages
* new Cookbook with extensive documentation and explanation
Misc:
* output of NonParsableException more verbose
* Exceptions in multi-threaded code now lead to exit of program instead of only stopping the thread
* update of RServe/RClient
----
''June 1, 2011:<br />
''June 1, 2011:<br />
Jstacs 1.5 released
Jstacs 1.5 released

Revision as of 14:55, 2 February 2012

February 2, 2012:
Jstacs 2.0 released

Jstacs 2.0 changes many names and the structure of several packages. It is not code-compatible with Jstacs 1.5 and earlier

Restructuring and Renaming:

  • former ScoringFunction, NormalizableScoringFunction, Model
    • new base-interface SequenceScore
    • new sub-interface StatisticalModel of SequenceScore for all statistical models with sub-iterfaces DifferentiableStatisticalModel and TrainableStatisticalModel
    • new interface DifferentiableSequenceScore replaces ScoringFunction
    • new interface DifferentiableStatisticalModel replaces NormalizableScoringFunction
    • new interface TrainableStatisticalModel replaces Model
    • new abstract class AbstractDifferentiableSequenceScore
    • new abstract class AbstractDifferentiableStatisticalModel replaces AbstractNormalizableScoringFunction
    • new abstract class AbstractTrainableStatisticalModel replaces AbstractModel
    • former *Models renamed to *TrainSM
    • former *ScoringFunction renamed to *DiffSS or *DiffSM
    • getProbFor removed from TrainableStatisticalModel (former Model) and conceptually replaced by getLogProbFor
    • getLogScore(Sequence,int,int) with changed meaning of arguments: getLogScore(Sequence,start,end) instead of getLogScore(Sequence,start,length)
    • isTrained() replaced by common method isInitialized()
  • Sample renamed to DataSet
  • Parameters and Results
    • new super-class of Parameters and Results: AnnotatedEntity
    • common list-type for Parameters and Results: AnnotatedEntityList
    • Renaming: CollectionParameter -> SelectionParameter, MultiSelectionCollectionParameter -> MultiSelectionParameter, new super-class AbstractSelectionParameter
    • major refactoring due to common hierarchy and code-cleanup
    • lazy evaluation of Parameter/ParameterSet hierarchies moved from ParameterSet (loadParameters()) to ParameterSetContainer (constructor on class)
    • SubclassFinder adapted to lazy evaluation
  • performance measures
    • new abstract super-class AbstractPerformanceMeasure of all performance measures
    • new interface NumericalPerformanceMeasure for all performance measures that return a single number (as opposed, e.g., to curves)
    • new class PerformanceMeasureParameterSet for a collection of general performance measures
    • new class NumericalPerformanceMeasureParameterSet for a collection of NumericalPerformanceMeasures
    • used in evaluate-method of AbstractClassifier and in ClassifierAssessments
  • evaluate and evaluateAll in AbstractClassifier joined
  • new class IndependentProductDiffSS as super-class of IndepedentProductDiffSM (former IndependentProductScoringFunction)
  • new class UniformDiffSS as super-class of UniformDiffSM (former UniformScoringFunction)

New functionality:

  • multi-threaded implementation of Baum-Welch and Viterbi training of hidden Markov models
  • new Interface Singleton that can be used for singleton instances to save memory, current examples: DNAAlphabet, DNAAlphabetContainer, ProteinAlphabet
  • added possibility to use NaN-values with ContinuousAlphabets
  • added ProteinAlphabet
  • added ArbitraryFloatSequence including static methods for DataSet creation for cases where double-precision is not needed
  • new performance measure MaximumFMeasure
  • access to Parameters in ParameterSets and Results in ResultSets by name
  • emitDataSet in BayesianNetworkDiffSM
  • new static method Time.getTimeInstance that returns UserTime or RealTime depending on availability of shared lib
  • SubclassFinder allows for adding own base packages
  • new method overlaps() in LocatedSequenceAnnotationWithLength
  • TerminationCondition used in ScoreClassifier and sub-classes
  • public method propagateESS in HMMFactory
  • new method generateLog in DirichletMRG for drawing log-values
  • added DifferentiableStatisticalModelFactory

Bugfixes/Improvements:

  • bugfix in propagation of equivalent sample size in HMMFactory
  • bugfix in random initialization of BasicHigherOrderTransition
  • improved Alignment implementation
  • SafeOutputStream with new static factory method getSafeOutputStream, write methods now work on Objects

Documentation:

  • improved Javadocs in many classes and packages
  • new Cookbook with extensive documentation and explanation

Misc:

  • output of NonParsableException more verbose
  • Exceptions in multi-threaded code now lead to exit of program instead of only stopping the thread
  • update of RServe/RClient

June 1, 2011:
Jstacs 1.5 released


December 31, 2010:
Jstacs 1.4 released


March 2, 2010:
Jstacs 1.3.1 released

  • Partitioning of Samples including weights
  • Release of Dispom (de-novo discovery of differentially abundant transcription factor binding sites including their positional preference)
  • Several bugfixes

December 2, 2009:
Jstacs 1.3 released


April 8, 2009:
Jstacs 1.2.2 released

  • Bugfix-Release

February 19, 2009:
Jstacs 1.2.1 released


February 2, 2009:
Jstacs 1.2 released


October 29, 2008:
Jstacs 1.1 released


September 8, 2008:
The first version of Jstacs has been released.