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 13: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
- new package de.jstacs.algorithms.alignment for sequence alignment algorithms
- new class de.jstacs.models.ModelFactory with static classes to construct many standard models
- de.jstacs.utils.galaxy.GalaxyAdaptor, an adaptor to Galaxy, which allows for creating Galaxy applications using Jstacs ParameterSets, also requires new interface GalaxyConvertible
- new package de.jstacs.models.hmm for a variety of hidden Markov models, which can be learned by different learning principles including generative and discriminative learning principles, maximization and sampling methods
- new package de.jstacs.sampling that contains general infrastructure for parameter sampling
- new class de.jstacs.scoringFunctions.MappingScoringFunction that allows for internal mapping of symbols from the alphabet
- new package de.jstacs.classifier.scoringFunctionBases.sampling containing classifiers that sample their parameters by the Metropolis-Hastings algorithm
- new interface de.jstacs.scoringFunctions.SamplingScoringFunction for NormalizableScoringFunctions that can be used in Metropolis-Hastings sampling of parameters
- bugfix in XMLParser for cases, where the tag of interest also occurrs within other, nested tags
December 31, 2010:
Jstacs 1.4 released
- added DincleotideProperty for computing properties like melting temperature, twist, or G/C content
- support for multidimensional sequence data
- more widespread use of TerminationConditions
- completely rewritten XMLParser
- extension of motif discovery to weighted data
- OneSampleLogGenDisMixFunction for using the same Sample with different weights for the different classes
- Jstacs requires Java 1.6 now
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
- generalized termination of numerical optimization in de.jstacs.algorithms.optimization.termination
- Added a unified generative-discriminative learning principle in de.jstacs.classifier.scoringFunctionBased.gendismix
- Implemented a multi-threaded variant of MCL/MSP and GenDisMix in the LogGenDisMixFunction
- Added a convenience class DNASample for samples of DNA sequences
- Added the class ParameterSetTagger to use parameter sets in command line programs
- Several bugfixes
April 8, 2009:
Jstacs 1.2.2 released
- Bugfix-Release
February 19, 2009:
Jstacs 1.2.1 released
- Bugfix in EnumParameter
February 2, 2009:
Jstacs 1.2 released
- Bugfixes
- Discriminative de-novo motif discovery
- Transformed Dirichlet Prior for numerical optimization
October 29, 2008:
Jstacs 1.1 released
- Bugfixes
- Improved Javadoc
- De-novo motif discovery
September 8, 2008:
The first version of Jstacs has been released.