Version history: Difference between revisions
From Jstacs
Jump to navigationJump to search
No edit summary |
m (Restructuring) |
||
Line 1: | Line 1: | ||
This page briefly summarizes the change in Jstacs. Each release is listed as separate section. | |||
Jstacs | |||
New classes | == Jstacs 2.1 (''released Mai 31, 2013'')== | ||
=== New classes === | |||
* [http://www.jstacs.de/api-2.1/de/jstacs/algorithms/optimization/termination/MultipleIterationsCondition.html MultipleIterationsCondition]: Requires another TerminationCondition to fail a contiguous, specified number of times | * [http://www.jstacs.de/api-2.1/de/jstacs/algorithms/optimization/termination/MultipleIterationsCondition.html MultipleIterationsCondition]: Requires another TerminationCondition to fail a contiguous, specified number of times | ||
* [http://www.jstacs.de/api-2.1/de/jstacs/classifiers/ClassifierFactory.html ClassifierFactory]: Allows for creating standard classifiers | * [http://www.jstacs.de/api-2.1/de/jstacs/classifiers/ClassifierFactory.html ClassifierFactory]: Allows for creating standard classifiers | ||
Line 9: | Line 10: | ||
* [http://www.jstacs.de/api-2.1/de/jstacs/sequenceScores/statisticalModels/trainable/discrete/inhomogeneous/MEManager.html MEManager]: Maximum entropy model | * [http://www.jstacs.de/api-2.1/de/jstacs/sequenceScores/statisticalModels/trainable/discrete/inhomogeneous/MEManager.html MEManager]: Maximum entropy model | ||
New features and improvements | === New features and improvements === | ||
* [http://www.jstacs.de/api-2.1/de/jstacs/algorithms/alignment/Alignment.html Alignment]: Added [http://www.jstacs.de/api-2.1/de/jstacs/algorithms/alignment/Alignment.AlignmentType.html#FREE_SHIFT free shift] alignment | * [http://www.jstacs.de/api-2.1/de/jstacs/algorithms/alignment/Alignment.html Alignment]: Added [http://www.jstacs.de/api-2.1/de/jstacs/algorithms/alignment/Alignment.AlignmentType.html#FREE_SHIFT free shift] alignment | ||
* [http://www.jstacs.de/api-2.1/de/jstacs/classifiers/performanceMeasures/PerformanceMeasure.html PerformanceMeasure] and sub-classes: Extension to weighted test data | * [http://www.jstacs.de/api-2.1/de/jstacs/classifiers/performanceMeasures/PerformanceMeasure.html PerformanceMeasure] and sub-classes: Extension to weighted test data | ||
Line 21: | Line 22: | ||
* [http://www.jstacs.de/api-2.1/de/jstacs/utils/REnvironment.html REnvironment]: Changed several methods from String to CharSequence | * [http://www.jstacs.de/api-2.1/de/jstacs/utils/REnvironment.html REnvironment]: Changed several methods from String to CharSequence | ||
Restructuring: | === Restructuring: === | ||
* changed MultiDimensionalSequenceWrapperDiffSM to [http://www.jstacs.de/api-2.1/de/jstacs/sequenceScores/differentiable/MultiDimensionalSequenceWrapperDiffSS.html MultiDimensionalSequenceWrapperDiffSS] | * changed MultiDimensionalSequenceWrapperDiffSM to [http://www.jstacs.de/api-2.1/de/jstacs/sequenceScores/differentiable/MultiDimensionalSequenceWrapperDiffSS.html MultiDimensionalSequenceWrapperDiffSS] | ||
Several minor new features, bug fixes, and code cleanups | Several minor new features, bug fixes, and code cleanups | ||
== Jstacs 2.0 (''released February 2, 2012'')== | |||
''February 2, 2012 | |||
''Jstacs 2.0 changes many names and the structure of several packages. It is not code-compatible with Jstacs 1.5 and earlier'' | ''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 | === Restructuring and Renaming === | ||
* former ScoringFunction, NormalizableScoringFunction, Model | * former ScoringFunction, NormalizableScoringFunction, Model | ||
** new base-interface [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/SequenceScore.html SequenceScore] | ** new base-interface [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/SequenceScore.html SequenceScore] | ||
Line 66: | Line 64: | ||
* new class [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/differentiable/UniformDiffSS.html UniformDiffSS] as super-class of [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/statisticalModels/differentiable/UniformDiffSM.html UniformDiffSM] (former UniformScoringFunction) | * new class [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/differentiable/UniformDiffSS.html UniformDiffSS] as super-class of [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/statisticalModels/differentiable/UniformDiffSM.html UniformDiffSM] (former UniformScoringFunction) | ||
New functionality | === New functionality === | ||
* multi-threaded implementation of Baum-Welch and Viterbi training of hidden Markov models | * multi-threaded implementation of Baum-Welch and Viterbi training of hidden Markov models | ||
* new Interface [http://www.jstacs.de/api-2.0/de/jstacs/Singleton.html Singleton] that can be used for singleton instances to save memory, current examples: [http://www.jstacs.de/api-2.0/de/jstacs/data/alphabets/DNAAlphabet.html DNAAlphabet], [http://www.jstacs.de/api-2.0/de/jstacs/data/alphabets/DNAAlphabetContainer.html DNAAlphabetContainer], [http://www.jstacs.de/api-2.0/de/jstacs/data/alphabets/ProteinAlphabet.html ProteinAlphabet] | * new Interface [http://www.jstacs.de/api-2.0/de/jstacs/Singleton.html Singleton] that can be used for singleton instances to save memory, current examples: [http://www.jstacs.de/api-2.0/de/jstacs/data/alphabets/DNAAlphabet.html DNAAlphabet], [http://www.jstacs.de/api-2.0/de/jstacs/data/alphabets/DNAAlphabetContainer.html DNAAlphabetContainer], [http://www.jstacs.de/api-2.0/de/jstacs/data/alphabets/ProteinAlphabet.html ProteinAlphabet] | ||
Line 83: | Line 81: | ||
* added [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/statisticalModels/differentiable/DifferentiableStatisticalModelFactory.html DifferentiableStatisticalModelFactory] | * added [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/statisticalModels/differentiable/DifferentiableStatisticalModelFactory.html DifferentiableStatisticalModelFactory] | ||
Bugfixes/Improvements | === Bugfixes/Improvements === | ||
* bugfix in propagation of equivalent sample size in [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/statisticalModels/trainable/hmm/HMMFactory.html HMMFactory] | * bugfix in propagation of equivalent sample size in [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/statisticalModels/trainable/hmm/HMMFactory.html HMMFactory] | ||
* bugfix in random initialization of [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/statisticalModels/trainable/hmm/transitions/BasicHigherOrderTransition.html BasicHigherOrderTransition] | * bugfix in random initialization of [http://www.jstacs.de/api-2.0/de/jstacs/sequenceScores/statisticalModels/trainable/hmm/transitions/BasicHigherOrderTransition.html BasicHigherOrderTransition] | ||
Line 89: | Line 87: | ||
* [http://www.jstacs.de/api-2.0/de/jstacs/utils/SafeOutputStream.html SafeOutputStream] with new static factory method getSafeOutputStream, write methods now work on Objects | * [http://www.jstacs.de/api-2.0/de/jstacs/utils/SafeOutputStream.html SafeOutputStream] with new static factory method getSafeOutputStream, write methods now work on Objects | ||
Documentation | === Documentation === | ||
* improved Javadocs in many classes and packages | * improved Javadocs in many classes and packages | ||
* new [[Cookbook]] with extensive documentation and explanation | * new [[Cookbook]] with extensive documentation and explanation | ||
Misc | === Misc === | ||
* output of [http://www.jstacs.de/api-2.0/de/jstacs/io/NonParsableException.html NonParsableException] more verbose | * output of [http://www.jstacs.de/api-2.0/de/jstacs/io/NonParsableException.html NonParsableException] more verbose | ||
* Exceptions in multi-threaded code now lead to exit of program instead of only stopping the thread | * Exceptions in multi-threaded code now lead to exit of program instead of only stopping the thread | ||
* update of RServe/RClient | * update of RServe/RClient | ||
== Jstacs 1.5 (''released June 1, 2011'') == | |||
* new package [http://www.jstacs.de/api-1.5/de/jstacs/algorithms/alignment/package-summary.html de.jstacs.algorithms.alignment] for sequence alignment algorithms | * new package [http://www.jstacs.de/api-1.5/de/jstacs/algorithms/alignment/package-summary.html de.jstacs.algorithms.alignment] for sequence alignment algorithms | ||
* new class [http://www.jstacs.de/api-1.5/de/jstacs/models/ModelFactory.html de.jstacs.models.ModelFactory] with static classes to construct many standard models | * new class [http://www.jstacs.de/api-1.5/de/jstacs/models/ModelFactory.html de.jstacs.models.ModelFactory] with static classes to construct many standard models | ||
Line 112: | Line 108: | ||
* bugfix in [http://www.jstacs.de/api-1.5/de/jstacs/io/XMLParser.html XMLParser] for cases, where the tag of interest also occurrs within other, nested tags | * bugfix in [http://www.jstacs.de/api-1.5/de/jstacs/io/XMLParser.html XMLParser] for cases, where the tag of interest also occurrs within other, nested tags | ||
== Jstacs 1.4 (''released December 31, 2010'') == | |||
''December 31, 2010 | |||
* added [http://www.jstacs.de/api-1.5/de/jstacs/data/DinucleotideProperty.html DincleotideProperty] for computing properties like melting temperature, twist, or G/C content | * added [http://www.jstacs.de/api-1.5/de/jstacs/data/DinucleotideProperty.html DincleotideProperty] for computing properties like melting temperature, twist, or G/C content | ||
* support for [http://www.jstacs.de/api-1.5/de/jstacs/data/sequences/MultiDimensionalDiscreteSequence.html multidimensional sequence data] | * support for [http://www.jstacs.de/api-1.5/de/jstacs/data/sequences/MultiDimensionalDiscreteSequence.html multidimensional sequence data] | ||
Line 124: | Line 117: | ||
* Jstacs requires Java 1.6 now | * Jstacs requires Java 1.6 now | ||
== Jstacs 1.3.1 (''released March 2, 2010'') == | |||
Jstacs 1.3.1 released | |||
* Partitioning of [http://www.jstacs.de/api-1.5/de/jstacs/data/Sample.html Sample]s including weights | * Partitioning of [http://www.jstacs.de/api-1.5/de/jstacs/data/Sample.html Sample]s including weights | ||
* Release of [[Dispom]] (de-novo discovery of differentially abundant transcription factor binding sites including their positional preference) | * Release of [[Dispom]] (de-novo discovery of differentially abundant transcription factor binding sites including their positional preference) | ||
* Several bugfixes | * Several bugfixes | ||
== Jstacs 1.3 (''released December 2, 2009'') == | |||
''December 2, 2009 | |||
* generalized termination of numerical optimization in [http://www.jstacs.de/api-1.5/de/jstacs/algorithms/optimization/termination/package-summary.html de.jstacs.algorithms.optimization.termination] | * generalized termination of numerical optimization in [http://www.jstacs.de/api-1.5/de/jstacs/algorithms/optimization/termination/package-summary.html de.jstacs.algorithms.optimization.termination] | ||
* Added a unified generative-discriminative learning principle in [http://www.jstacs.de/api-1.5/de/jstacs/classifier/scoringFunctionBased/gendismix/package-summary.html de.jstacs.classifier.scoringFunctionBased.gendismix] | * Added a unified generative-discriminative learning principle in [http://www.jstacs.de/api-1.5/de/jstacs/classifier/scoringFunctionBased/gendismix/package-summary.html de.jstacs.classifier.scoringFunctionBased.gendismix] | ||
Line 143: | Line 130: | ||
* Several bugfixes | * Several bugfixes | ||
== Jstacs 1.2.2 (''released April 8, 2009'') == | |||
Jstacs 1.2.2 released | |||
* Bugfix-Release | * Bugfix-Release | ||
== Jstacs 1.2.1 (''released February 19, 2009'') == | |||
Jstacs 1.2.1 released | |||
* Bugfix in [http://www.jstacs.de/api-1.5/de/jstacs/parameters/EnumParameter.html EnumParameter] | * Bugfix in [http://www.jstacs.de/api-1.5/de/jstacs/parameters/EnumParameter.html EnumParameter] | ||
== Jstacs 1.2 (''released February 2, 2009'') == | |||
''February 2, 2009'' | |||
* Bugfixes | * Bugfixes | ||
* Discriminative de-novo motif discovery | * Discriminative de-novo motif discovery | ||
* [http://www.jstacs.de/api-1.5/de/jstacs/classifier/scoringFunctionBased/logPrior/CompositeLogPrior.html Transformed Dirichlet Prior for numerical optimization] | * [http://www.jstacs.de/api-1.5/de/jstacs/classifier/scoringFunctionBased/logPrior/CompositeLogPrior.html Transformed Dirichlet Prior for numerical optimization] | ||
== Jstacs 1.1 (''released October 29, 2008'') == | |||
''October 29, 2008'' | |||
* Bugfixes | * Bugfixes | ||
* Improved Javadoc | * Improved Javadoc | ||
* [http://www.jstacs.de/api-1.5/de/jstacs/motifDiscovery/MotifDiscoverer.html De-novo motif discovery] | * [http://www.jstacs.de/api-1.5/de/jstacs/motifDiscovery/MotifDiscoverer.html De-novo motif discovery] | ||
== Jstacs 1.0 (''released September 8, 2008'') == | |||
''September 8, 2008'' | |||
The first version of Jstacs has been released. | The first version of Jstacs has been released. |
Revision as of 05:52, 3 June 2013
This page briefly summarizes the change in Jstacs. Each release is listed as separate section.
Jstacs 2.1 (released Mai 31, 2013)
New classes
- MultipleIterationsCondition: Requires another TerminationCondition to fail a contiguous, specified number of times
- ClassifierFactory: Allows for creating standard classifiers
- SeqLogoPlotter: Plot PNG sequence logos from within Jstacs
- MultivariateGaussianEmission: Multivariate Gaussian emission density for a Hidden Markov Model
- MEManager: Maximum entropy model
New features and improvements
- Alignment: Added free shift alignment
- PerformanceMeasure and sub-classes: Extension to weighted test data
- DNAAlphabet: Parser speed-up
- PFMComparator: Extension to PFM from other sources/databases
- ToolBox: New convenience methods for computing several statistics (e.g., median, correlation)
- SignificantMotifOccurrencesFinder: New methods for computing PWMs and statistics from predictions
- SequenceScore and sub-classes: New method toString(NumberFormat)
- AbstractClassifier, ClassifierAssessment and sub-classes: Adaption to weighted PerformanceMeasures
- DataSet: Adaption to weighted data, e.g., partitioning
- REnvironment: Changed several methods from String to CharSequence
Restructuring:
- changed MultiDimensionalSequenceWrapperDiffSM to MultiDimensionalSequenceWrapperDiffSS
Several minor new features, bug fixes, and code cleanups
Jstacs 2.0 (released February 2, 2012)
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
- AbstractTerminationCondition 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
Jstacs 1.5 (released June 1, 2011)
- 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
Jstacs 1.4 (released December 31, 2010)
- 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
Jstacs 1.3.1 (released March 2, 2010)
- Partitioning of Samples including weights
- Release of Dispom (de-novo discovery of differentially abundant transcription factor binding sites including their positional preference)
- Several bugfixes
Jstacs 1.3 (released December 2, 2009)
- 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
Jstacs 1.2.2 (released April 8, 2009)
- Bugfix-Release
Jstacs 1.2.1 (released February 19, 2009)
- Bugfix in EnumParameter
Jstacs 1.2 (released February 2, 2009)
- Bugfixes
- Discriminative de-novo motif discovery
- Transformed Dirichlet Prior for numerical optimization
Jstacs 1.1 (released October 29, 2008)
- Bugfixes
- Improved Javadoc
- De-novo motif discovery
Jstacs 1.0 (released September 8, 2008)
The first version of Jstacs has been released.