2006-02-26 18:38 mokhov * doc/src/tex/: architecture.tex, experimentation.tex, fe-aggregation.tex, feature-extraction.tex, history.tex, installation.tex, intro.tex, lang-ident-app.tex, nlp.tex, preprocessing.tex, probabilistic-parsing-app.tex, report.tex, statistic-processing.tex, wave-grapher.tex, zipf-law-app.tex: Spellcheck most of the document. Brand 0.3.0.5 (0.3.0-devel-20060226). 2006-02-26 18:01 mokhov * doc/src/tex/architecture.tex: Update limitations as some of them have been overcome. 2006-02-26 17:50 mokhov * doc/src/tex/installation.tex: Add a description of different .jar files we are to release now. 2006-02-26 16:36 mokhov * doc/src/tex/: Makefile, lang-ident-app.tex, probabilistic-parsing-app.tex, report.tex, test-plugin.tex: Complete preliminary review the NLP apps docs. Few cosmetic fixes elsewhere. There will be more work needed of course for the final release, but for the devel it's okay enough. Correct an error in the Makefile that was generating the same grammar.*.tex files from one source grammar file due to a copy-paste mistake. Also, implmenet rudementary stripping of comments and blank lines from the grammar files prior inclusion into the report. The realistic grammar seems not to fit anyways, will have to do something else for it. 2006-02-26 11:19 mokhov * doc/src/tex/lang-ident-app.tex: Review more the LangIdentApp text. 2006-02-25 22:14 mokhov * doc/src/tex/lang-ident-app.tex: Advance review of the document prior review. Reduce apologetic tone more and mark TODOs. Some English and factual review has taken place. Add more index entries. Make sure more section labels do not collide with the other apps. 2006-02-25 02:14 mokhov * doc/src/tex/: apps.tex, experimentation.tex, history.tex, lang-ident-app.tex, nlp.tex, nnet.tex, probabilistic-parsing-app.tex, report.tex, test-filters.tex, test-loaders.tex, test-nn.tex, test-plugin.tex, training.tex, zipf-law-app.tex: Add initial descriptions of the TestNN and TestPlugin apps. Perform some initial but thorough review of the NLP apps docs as well as some general section a bit in Experimentation. Mention `testing.bat' and its `retrain' shortcut for Windows. Add intended release date of 0.3.0-devel-20060225. Add more index entries. Remove some personal and apologetic tone. Properly renumber sections in the NLP apps. Fix some labels to be app-specific in order not to clash with others. Add missing usage info for TestLoaders. Review briefly some training notes. Apply some cosmetic fixes. 2006-02-24 15:17 mokhov * build.xml, doc/src/tex/history.tex, nbproject/project.properties, nbproject/project.xml: Rename 'marf-net' to 'marf'. 2006-02-24 00:04 mokhov * doc/src/tex/: best-score.tex, results.tex: Update the best result data. 2006-02-23 23:53 mokhov * doc/src/tex/: best-score.tex, stats-date.tex, stats.tex: Update stats data and date. 2006-02-23 18:47 mokhov * doc/src/tex/: history.tex, intro.tex, results.tex: Add initial explanantion of how versioning worked so far for MARF. Massage the contributors info. Begin some review of results. 2006-02-23 15:11 mokhov * doc/: pipeline.ppt, src/graphics/arch/pipeline-flow.png: Clarify the pipeline flow diagram WRT the Distance-based classifiers. Per question from Adam Glowacz of why training takes one set of options skipping some distance classifiers and testing does all. 2006-02-23 11:44 mokhov * src/Makefile: Implement building of the marf-debug distro with the -g debug flag and the JUnit tests. 2006-02-22 20:16 mokhov * src/marf/junit/: Stats/WordStatsTest.java, Storage/DatabaseTest.java: Add incomplete but sufficient to eliminate warnings javadocs. 2006-02-22 20:15 mokhov * src/marf/junit/: CloneabilityTest.java, Storage/DatabaseTest.java: Add missing imports. Temporarely eliminate a few javadoc warnings. Will need to document tests more later. 2006-02-21 23:12 mokhov * src/marf/junit/: CloneabilityTest.java, Stats/WordStatsTest.java, Storage/DatabaseTest.java: Add JUnit unit cloneability test patches from Shuxin, originally submitted on January 18, 2006. 2006-02-21 22:43 mokhov * doc/src/tex/: fe-aggregation.tex, feature-extraction.tex, methodology.tex, preprocessing.tex, results.tex: Describe the FE aggregator. Review a bit some related documenation. Fix improper include of the usage information for SpeakerIdentApp. Add a few more index entries. 2006-02-21 00:15 mokhov * doc/src/tex/: installation.tex, report.tex: Compelete preliminary review of the Installation chapter. Re-arrange the order of the Architecture, Build System, and Installation in a more logical order. 2006-02-20 18:24 mokhov * doc/src/tex/installation.tex: Tidy up the Installation chapter more. 2006-02-20 07:04 mokhov * doc/src/tex/installation.tex: Advance installation chapter. 2006-02-19 15:32 mokhov * TODO, doc/src/tex/installation.tex, doc/src/tex/report.tex: Update a little bit TODO WRT to the things done so far. Begin integration of the INSTALL file with the installation.tex chapter. 2006-02-18 13:08 mokhov * marf.jpx: Update JBuilder project file. 2006-02-13 09:46 mokhov * doc/src/tex/: lang-ident-app-usage.tex, lang-ident-app.tex, math-test-app-usage.tex, math-test-app.tex, nlp.tex, probabilistic-parsing-app-usage.tex, probabilistic-parsing-app.tex, regression-app-usage.tex, results.tex, speaker-ident-app-usage.tex, test-fft-usage.tex, test-fft.tex, test-filters-usage.tex, test-loaders-usage.tex, test-lpc-usage.tex, test-lpc.tex, test-nn-usage.tex, test-plugin-usage.tex, test-wave-loader-usage.tex, test-wave-loader.tex, zipf-law-app-usage.tex, zipf-law-app.tex: Add generated usage information for all the apps for automatic inclusing and easier maintenance within the manual. Add stub sections to the stub NLP chapter. Fix a few inconsistencies in some places, many more fixes to come. 2006-02-12 19:35 mokhov * src/marf/Stats/ProbabilityTable.java: Synchronize class. 2006-02-12 19:22 mokhov * src/marf/Stats/ProbabilityTable.java: Review comments. 2006-02-12 18:57 mokhov * src/marf/: Classification/Stochastic/MaxProbabilityClassifier.java, Classification/Stochastic/Stochastic.java, Classification/Stochastic/ZipfLaw.java, Stats/ProbabilityTable.java: Debug bigram statistics problems revealed while testing LangIdentApp. One problem was unrelated to the stats collection and had to do with storage management as the generic implementation of Classification's dump() and restore() always assumes presence of TrainingSet; thus, we override those methods to call general implementation of dump/restoreGzipBinary() and dump/restoreBinary() of StorageManager. The bigram problem in ProbabilityTable had to do with ignorance of a possible gap in the index of row's so some rows for efficiency were kept as null until actually used; thus, make sure if we don't find such a row, create a new one. Strangely, for long time this case was handled properly in trigram, but more simple case of bigram had a bug. Update copy-pase erroneous comments in ZipfLaw and add a missing case of DUMP_BINARY. Fix a comment typo in Stochastic. Apply more coding conventions where forgotten. Cosmetic changes otherwise elsewhere. 2006-02-11 15:36 mokhov * src/marf/: Classification/Stochastic/MaxProbabilityClassifier.java, Stats/ProbabilityTable.java, Stats/StatisticalEstimators/StatisticalEstimator.java: Comment out a noisy debug() call. Implement backSynchronizeObject() in MaxProbabilityClassifier. Document a bit more params in ProbabilityTable and rename API according to the naming conventions (starts with lowercase). Cosmetic clean up in LangIdentApp. 2006-02-09 14:33 mokhov * src/Makefile: Re-add building of API. 2006-02-09 14:28 mokhov * Makefile, manifest.mf, src/Makefile: Complete preliminary implementation of building custom .jars for -util, -storage, -math, and -utilimathstor packages that include only portions of MARF as the name suggests. This is to allow people to get only the pieces of MARF they need instead of the whole thing. This is the first time we build these so they may be not toally clean or minimal, but this is a start. Another minor issue is that they use the same manifest.mf file as the whole MARF, which is not fully correct and should be corrected in the final 0.3.0 release. Add a new type of distro -bin that bundles the documentation and all the .jars excluding the api-dev documentation bit. Update manifest.mf to include the revision version information. 2006-02-06 07:00 mokhov * src/marf/MARF.java: Complete preliminary preparation of LangIdentApp for testing for the release. This includes recovery of some corpora, new options for the training.sh script, update of Makefile. Add an alias -ele option, -word and WORD_MODE (for now unused, but as a provision for the future). 2006-02-04 13:40 mokhov * src/marf/MARF.java: Add explicit ELE option type to MARF and LangIdentApp. Update code and comments more in preparation for the release. Add versioning support and a set of standard options. Mark "'" as a word char as it was originally intended. Update usage() accordingly. 2006-02-02 23:39 mokhov * src/marf/Classification/Stochastic/: MaxProbabilityClassifier.java, Stochastic.java: Clean up more code and comments and make a few corrections and fix a few omissions in conventions and other things. Replace some System.out.println() calls with Debug.debug(). Clean up dead AP in Stochastic as the parent provides much better implementation (e.g. gzipped and a simple binary work per StorageManager and the rest is per particual module). 2006-01-30 23:51 mokhov * src/marf/MARF.java: Add input validation error checking for the setters of NLP similarly to the rest of MARF with min/max values. 2006-01-29 23:21 mokhov * src/marf/nlp/Parsing/GrammarCompiler/ProbabilisticGrammarCompiler.java: Remove temporarely unused import. 2006-01-29 23:21 mokhov * src/marf/gui/util/SmartSizablePanel.java: Massage and document more. 2006-01-29 22:43 mokhov * src/marf/nlp/Parsing/: ProbabilisticParser.java, GrammarCompiler/ProbabilisticGrammarCompiler.java: Avoid a dump() call in compileGrammar() for now as it was dumping a useless contents under ProbabilisticGrammarCompiler file name. Make sure the binary dump filename is properly set to Grammar in ProbabilisticParser. Adjust some formatting and naming along the way. 2006-01-29 17:28 mokhov * src/marf/: MARF.java, Stats/ProbabilityTable.java, Stats/StatisticalEstimators/StatisticalEstimator.java, Stats/StatisticalEstimators/Smoothing/AddDelta.java, Stats/StatisticalEstimators/Smoothing/GoodTuring.java, Stats/StatisticalEstimators/Smoothing/WittenBell.java: Renumber NLP-related enumerations so that they don't have possible conflicts with typical option processing and the rest of MARF as it was earlier done for the preprocessing, feature, extraction, classification, sample formats, etc. Rename INgramModels to ENgramModels and IStatisticalEstimators to EStatisticalEstimators to indicate that these are just enumerations. When we migrate to Java 1.5 these interfaces will be replaced by the enums anyways, so the name can be changed now. Since these members are unlikely to be used by external apps since 0.3.0.2 the name change impact should be miminal and our own NLP apps that use these are only to be released for the first time anyway. Mark the remaining methods of MARF.NLP as `synchronized'. 2006-01-27 14:15 mokhov * src/marf/util/OptionProcessor.java: Fix a bug (#1415935) in the OptionProcessor(Hashtable) constructor that has gone off sync with the rest of the OptionProcessor about using new internal data structures, such as Option class. Thus, convert it to use Option and verify the contents of the incoming Hashtable. Document the fact. Additinally, add a constructor to the Option class in the form of Option(Integer, String) for covenience. 2006-01-22 19:03 mokhov * src/marf/Classification/NeuralNetwork/: NeuralNetwork.java, Neuron.java: Fine-tune a bit more NeuralNetwork parameters based on the experiments with the revived TestNN to produce a better recognition rate. Adjust epoch testing part in error updates to be in the scale of the minimum error. Though this is still imprecise, but looks more appropraite as a scale. Update a couple of comments. 2006-01-22 18:59 mokhov * src/marf/Preprocessing/FFTFilter/FFTFilter.java: Correct a typo in the comment. 2006-01-22 18:47 mokhov * src/marf/Classification/NeuralNetwork/Layer.java: Correct @since version. 2006-01-22 14:01 mokhov * src/marf/gui/: SpectrogramPanel.java, WaveGrapherPanel.java, util/BorderPanel.java: Add/correct some comments so far. 2006-01-21 23:46 mokhov * src/marf/Classification/NeuralNetwork/NeuralNetwork.java: Prepare TestNN for preliminary release. Clean up the application from the dead code and test only NeuralNetwork by itself by simulating epoch training as NeuralNetwor.train() does except avoiding looking for and using a corresponding training set cluster. Add option processing with OptionProcessor and a few standard and old options passed through it. Add application versioning, usage(), and version checks. Dump the output .xml files to the filename based on the input one. For all this to work update the NeuralNetwork class with the public API of eval() (consistent with Neuron and Layer) as a synonym to the private runNNet()). Additionally, make setInputs() public to be accessible from outside the package. Add test and debug targets with all options for the application to test on all .xml files with and without the --debug option. Update README with the new option information and the list of files. 2006-01-20 21:35 mokhov * src/marf/: Classification/NeuralNetwork/NeuralNetwork.java, Classification/NeuralNetwork/Neuron.java, FeatureExtraction/FeatureExtraction.java, FeatureExtraction/RandomFeatureExtraction/RandomFeatureExtraction.java, Preprocessing/FFTFilter/FFTFilter.java, Stats/StatisticalEstimators/Smoothing/GoodTuring.java, Stats/StatisticalEstimators/Smoothing/WittenBell.java, gui/WaveGrapher.java, math/Algorithms.java, nlp/Parsing/GrammarCompiler/Grammar.java: Clean up code more WRT coding conventions and remove redundant casts reported by Eclipse. 2006-01-20 21:32 mokhov * src/marf/Classification/NeuralNetwork/Layer.java: Add serialVersionUID. 2006-01-20 12:33 mokhov * src/marf/Classification/NeuralNetwork/: Layer.java, NeuralNetwork.java: Complete preliminary implementation of the Layer class and its use in NeuralNetwork. 2006-01-20 09:34 mokhov * src/marf/Classification/NeuralNetwork/: Layer.java, NeuralNetwork.java: Advance implementation of Layer and its use in NeuralNetwork. 2006-01-20 02:10 mokhov * src/marf/Classification/NeuralNetwork/: Layer.java, NeuralNetwork.java, Neuron.java: Complete preliminary code and comments review for NeuralNetwork and Neuron for naming conventions and stuff. Begin implementation of the Layer class and use of it in NeuralNetwork. 2006-01-18 23:51 mokhov * src/marf/nlp/Parsing/: TransitionTable.java, VarSymTabEntry.java: This completes preliminary code and comments review of the marf.nlp.Parsing package. 2006-01-18 23:13 mokhov * src/marf/nlp/: Parsing/GenericLexicalAnalyzer.java, Parsing/LexicalAnalyzer.java, Parsing/Parser.java, Parsing/SymTabEntry.java, Parsing/Token.java, Parsing/TokenSubType.java, Parsing/TokenType.java, Parsing/TransitionTable.java, Parsing/GrammarCompiler/GrammarAnalyzer.java, Parsing/GrammarCompiler/GrammarCompiler.java, Parsing/GrammarCompiler/GrammarTokenType.java, Parsing/GrammarCompiler/ProbabilisticGrammarAnalyzer.java, Parsing/GrammarCompiler/ProbabilisticGrammarCompiler.java, Parsing/GrammarCompiler/ProbabilisticGrammarTokenType.java, util/NLPStreamTokenizer.java: Complete preliminary code and comments review as well as refactoring of the TokenType and TokenSubType classes. Make corresponding changes in the call sites of these classes. 2006-01-18 14:31 mokhov * src/marf/util/Debug.java: Make use of StringBuffer. 2006-01-17 17:41 mokhov * src/marf/Stats/: StatisticalObject.java, WordStats.java: Format after the recent patch. 2006-01-17 17:14 susan_fan * src/marf/Stats/: StatisticalObject.java, WordStats.java: add toString(), equals(Object poStatisticalObject), hashcode() methods 2006-01-17 12:27 mokhov * src/marf/nlp/Parsing/Token.java: Complete preliminary code and comments review. 2006-01-16 16:43 mokhov * src/marf/nlp/Parsing/: SymTabEntry.java, SymbolTable.java, VarSymTabEntry.java: Complete code and comments review of SymTabEntry. Make relevant adjustments in SymbolTable and VarSymTabEntry so the code still compiles. 2006-01-16 16:25 susan_fan * src/marf/nlp/Parsing/SymTabEntry.java: change some comments and variable names accordint to name conventions. 2006-01-15 19:52 mokhov * src/marf/Classification/Stochastic/: MaxProbabilityClassifier.java, ZipfLaw.java: Commit preliminary code review for NLP apps prior release. 2006-01-15 15:51 mokhov * Makefile, doc/Makefile, doc/src/Makefile, doc/src/tex/Makefile, doc/src/tex/legal.tex, src/Makefile, src/marf/nlp/Parsing/Compiler.java, src/marf/nlp/Parsing/CompilerError.java, src/marf/nlp/Parsing/GenericLexicalAnalyzer.java, src/marf/nlp/Parsing/LexicalAnalyzer.java, src/marf/nlp/Parsing/LexicalError.java, src/marf/nlp/Parsing/Parser.java, src/marf/nlp/Parsing/SymDataType.java, src/marf/nlp/Parsing/SymTabEntry.java, src/marf/nlp/Parsing/SymbolTable.java, src/marf/nlp/Parsing/SyntaxError.java, src/marf/nlp/Parsing/Token.java, src/marf/nlp/Parsing/TokenSubType.java, src/marf/nlp/Parsing/TokenType.java, src/marf/nlp/Parsing/GrammarCompiler/GrammarAnalyzer.java: Consistently space out copyright years. 2006-01-15 15:37 mokhov * src/marf/nlp/Parsing/: CompilerError.java, LexicalError.java, Parser.java, SemanticError.java, SyntaxError.java: Complete preliminary code and comments updates for the error hiearchy of marf.nlp.Parsing. The code was cleaned up to remove a string error message member as we already have one up the hierarchy. Update references appropriately. 2006-01-15 13:24 mokhov * src/marf/nlp/Parsing/: SyntaxError.java, GrammarCompiler/GrammarCompiler.java: Begin detailed code clean up of SyntaxError. 2006-01-15 01:58 mokhov * src/marf/Stats/StatisticalEstimators/Smoothing/: AddDelta.java, AddOne.java, GoodTuring.java, ISmoothing.java, Smoothing.java, WittenBell.java: Complete preliminary code and comments review for the marf.Stats.StatisticalEstimators.Smoothing package. 2006-01-14 22:43 mokhov * src/marf/Stats/StatisticalEstimators/StatisticalEstimator.java: Comment out unused variable. 2006-01-14 20:50 mokhov * src/marf/Stats/StatisticalEstimators/: GLI.java, IStatisticalEstimator.java, KatzBackoff.java, MLE.java, SLI.java, StatisticalEstimator.java: Complete preliminary code and comments review for the marf.Stats.StatisticalEstimators package. The Smoothing sub-package is yet to do. 2006-01-14 17:30 mokhov * src/marf/Storage/Loaders/: AIFFCLoader.java, AIFFLoader.java, AULoader.java, MIDILoader.java, MP3Loader.java, SNDLoader.java, SineLoader.java, ULAWLoader.java, WAVLoader.java: Clear out javadoc warnings and make versioning more precise. 2006-01-14 14:06 mokhov * src/: test.java, marf/MARF.java, marf/Makefile, marf/Version.java: Extract Version class into its own file as this seems to be a cleaner implementation of versioning anyway. Update comments of the class an relevant places. Update corresponding references to it, inventory, and the Makefile. 2006-01-10 02:23 mokhov * src/marf/nlp/Parsing/SymDataType.java: Clean up the code and comments a bit and add a getter/setter pair for type. 2006-01-08 19:59 mokhov * src/marf/nlp/Parsing/SymbolTable.java: Complete preliminary review (mostly comments) of the SymbolTable class. 2006-01-08 17:42 mokhov * src/marf/nlp/Parsing/SemanticError.java: Fix a typo. 2006-01-07 20:16 mokhov * src/marf/nlp/Parsing/: SemanticAnalyzer.java, SemanticError.java, SymbolTable.java: Perform the usual clean up for the parsing code for SemanticAnalyzer and SemanticError and begin doing so for SymbolTable. This includes naming and comments and other things. 2006-01-07 19:10 mokhov * src/marf/MARF.java: Begin new concept of versioning of MARF with the new Version class. It is still experimental and being developped to provide more convenient and groupped version handling. For now this class is an inner static class of MARF. It should help with the smaller binary distros in the future that only contain subsets of MARF, but the version info is still needed for the applications. Need to finalize this new concept a bit more and document. 2006-01-06 17:20 mokhov * src/marf/: Stats/ProbabilityTable.java, Stats/StatsCollector.java, nlp/NLPException.java, nlp/Collocations/ChiSquareTest.java, nlp/Collocations/CollocationWindow.java, nlp/Collocations/TTest.java, nlp/Stemming/IStemming.java, nlp/Stemming/Stemming.java, nlp/Stemming/StemmingEN.java, nlp/util/NLPStreamTokenizer.java: Complete preliminary code review for the release for the NLP-related code ouside parsing. Mostly naming, coding conventions, and versioning. 2006-01-06 17:18 mokhov * src/marf/Storage/Cluster.java: Add missing @throws javadoc tags for StorageException. 2006-01-05 10:46 mokhov * src/marf/Storage/Loaders/WAVLoader.java: Complete implementation and some testing of the missing plugin modules for Preprocessing and SampleLoader -- RandomPreprocessing and UnrestrictedWAVLoader. Now need to complete option processing, versioning, and documentaion for the app to be ready for a dev release. This commit also does changes to the MARF's WAVLoader that has a new API of verifyAudioFormat(AudioFormat) that can be overridden (and is overridden by UnrestrictedWAVLoader). Eventually, we might even refactor it and place in the upper level of the loaders' hierarchy. 2006-01-03 09:47 mokhov * src/marf/nlp/Makefile: Add missing -f option in case *.class files aren't there. 2006-01-03 03:23 mokhov * doc/src/tex/legal.tex: Add 'Research'. 2006-01-03 03:16 mokhov * src/tools/: revision-check.sh, serialverupdate: Perform third round of bulk updates of the copyright year. 2006-01-03 02:57 mokhov * COPYRIGHT, marf.jpx, src/test.java: Perform second round of bulk copyright year update to 2006. 2006-01-03 02:53 mokhov * Makefile, doc/Makefile, doc/src/Makefile, doc/src/tex/Makefile, doc/src/tex/legal.tex, src/Makefile, src/marf/nlp/Parsing/Compiler.java, src/marf/nlp/Parsing/CompilerError.java, src/marf/nlp/Parsing/GenericLexicalAnalyzer.java, src/marf/nlp/Parsing/LexicalAnalyzer.java, src/marf/nlp/Parsing/LexicalError.java, src/marf/nlp/Parsing/Parser.java, src/marf/nlp/Parsing/SymDataType.java, src/marf/nlp/Parsing/SymTabEntry.java, src/marf/nlp/Parsing/SymbolTable.java, src/marf/nlp/Parsing/SyntaxError.java, src/marf/nlp/Parsing/Token.java, src/marf/nlp/Parsing/TokenSubType.java, src/marf/nlp/Parsing/TokenType.java, src/marf/nlp/Parsing/GrammarCompiler/GrammarAnalyzer.java: Perform first round of copyright year updates to bump to 2006. 2006-01-03 02:22 mokhov * src/tools/md5sumall.sh: Replace --binary with more portable -b. 2006-01-03 02:20 mokhov * src/marf/: Classification/Makefile, Classification/Distance/Makefile, Classification/Markov/Makefile, Classification/NeuralNetwork/Makefile, Classification/RandomClassification/Makefile, FeatureExtraction/Makefile, FeatureExtraction/Cepstral/Makefile, FeatureExtraction/F0/Makefile, FeatureExtraction/FFT/Makefile, FeatureExtraction/LPC/Makefile, FeatureExtraction/MinMaxAmplitudes/Makefile, FeatureExtraction/RandomFeatureExtraction/Makefile, FeatureExtraction/Segmentation/Makefile, Preprocessing/Makefile, Preprocessing/Dummy/Makefile, Preprocessing/Endpoint/Makefile, Preprocessing/FFTFilter/Makefile, Stats/Makefile, Stats/StatisticalEstimators/Makefile, Stats/StatisticalEstimators/Smoothing/Makefile, Storage/Makefile, Storage/Loaders/Makefile, gui/Makefile, math/Makefile, nlp/Makefile, nlp/Collocations/Makefile, nlp/Stemming/Makefile, nlp/util/Makefile, util/comparators/Makefile: Bulk-update the Makefile Build System to properly include COMMONJFLAGS everywhere. 2006-01-03 02:10 mokhov * src/marf/: gui/util/Makefile, nlp/Parsing/Makefile, nlp/Parsing/GrammarCompiler/Makefile, util/Makefile: Update a few Makefiles to use COMMONJFLAGS for consistent -source 1.4 builds on 1.5 JDKs. 2006-01-03 00:02 mokhov * src/marf/junit/CloneabilityTest.java: Add a first test for the MARF's JUnit testing infrastructure. Now it does very little and tests only the Database class for Cloneability and equality with the clone and is undocumented, but this is a start. Will need to extend that to test all Cloneable classes. 2006-01-02 23:59 mokhov * src/marf/nlp/Parsing/: LexicalError.java, Parser.java, ProbabilisticParser.java, SyntaxError.java: Complete preliminary code review for ProbabilisticParser, Parser, and LexicalError in terms of compliance with coding convention and documentation. Clean up a code a bit as well. Add a standard set of constructors to SyntaxError it was lacking and rename a few members in it -- it's still yet to be reviewed. 2006-01-02 17:24 mokhov * src/marf/: Classification/Classification.java, FeatureExtraction/FeatureExtraction.java, Preprocessing/Preprocessing.java, Stats/Ngram.java, Stats/Observation.java, Stats/StatisticalObject.java, Stats/WordStats.java, Storage/Cluster.java, Storage/Database.java, Storage/FeatureSet.java, Storage/ModuleParams.java, Storage/Result.java, Storage/ResultSet.java, Storage/Sample.java, Storage/StorageManager.java, Storage/TrainingSample.java, Storage/TrainingSet.java: Complete preliminalry implementation of the Cloneable interface for most major modules. The only unimplemented parts remain are descendants of Preprocessing, FeatureExtraction, and Classification classes. Some modules to not do complete clonning for all their members -- this is yet to look at and test. Clean up some code a bit more and apply more coding conventions in the places previously missed. Document the code more. Make more use of the StringBuffer class for likely hotspots and others. 2006-01-02 16:27 mokhov * .classpath: Adjust Eclipse project files to use JUnit. 2006-01-02 14:26 mokhov * src/marf/Classification/RandomClassification/RandomClassification.java: Fix bug #1395099. The duplicate IDs accumulated because the existence check was performed prior resotration of the IDs collection from disk. Swapping restore() and contains() order should fix the problem. 2005-12-31 20:28 mokhov * src/marf/: Classification/RandomClassification/RandomClassification.java, Classification/Stochastic/ZipfLaw.java, FeatureExtraction/MinMaxAmplitudes/MinMaxAmplitudes.java, Stats/WordStats.java, Storage/ModuleParams.java, Storage/Result.java, Storage/ResultSet.java, nlp/Parsing/GrammarCompiler/Rule.java, util/OptionProcessor.java: After being traumatized by the performance of the toString() of Sample, update most of the toString() implementations to use StringBuffer. Will have review other places with intensive string concatenations as well. 2005-12-31 18:17 mokhov * src/marf/Preprocessing/: Preprocessing.java, Dummy/Dummy.java, Dummy/Raw.java, Endpoint/Endpoint.java, FFTFilter/BandpassFilter.java, FFTFilter/FFTFilter.java, FFTFilter/HighFrequencyBoost.java, FFTFilter/HighPassFilter.java, FFTFilter/LowPassFilter.java: Bulk-replace a now slightly wrongly worded comment. 2005-12-31 18:09 mokhov * src/marf/math/Matrix.java: Don't hint explicitly the garbage collection too often with System.gc() as many calls to this may actually significantly slow down the whole thing during the garbage collection runs. 2005-12-31 17:38 mokhov * src/marf/math/Matrix.java: Fix the bug #1394533 in marf.math.Matrix's extend() for it not to set the member variables of dimensions right away and wait till completion as other methods were doing. Improve reporting in the assertion statement caused this. Enable assertion checks in MathTestApp so they get exposed sooner. Perform some addition code review of Matrix and fix a few incosisntencies and wrong comments. Add more garbage collector hints after potentially lots of tmp data allocations for matrix data arrays. Re-implement toString() more efficiently, using StringBuffer. Add a tad bit more comments. 2005-12-31 14:58 mokhov * src/marf/nlp/Parsing/LexicalAnalyzer.java: Add @see javadoc tags so older version (3.0) of Eclipse doesn't complain that the comment is incomplete. 2005-12-30 20:23 mokhov * src/marf/: FeatureExtraction/FeatureExtractionAggregator.java, nlp/Parsing/GrammarCompiler/Grammar.java: Reverse assertion checks as they were incorrectly set to assert the wrong thing. The assertions are to assert that certain condtion is true; and if it is not, then throw AssertionError. 2005-12-30 20:10 mokhov * src/marf/nlp/Parsing/Parser.java: Provide an intermediate fix to compilation problem due to unhandled exceptions. Somehow missed... 2005-12-30 13:36 mokhov * src/marf/nlp/Parsing/: ClassSymTabEntry.java, CodeGenerator.java, CompilerError.java, FuncSymTabEntry.java, GenericLexicalAnalyzer.java, LexicalAnalyzer.java, LexicalError.java, SemanticError.java, SyntaxError.java: Advance Parsing code review for style, comments, and naming conventions. 2005-12-30 02:18 mokhov * src/marf/FeatureExtraction/FeatureExtractionAggregator.java: Eliminate unused variable. 2005-12-30 00:54 mokhov * src/marf/: MARF.java, FeatureExtraction/FeatureExtractionAggregator.java, FeatureExtraction/FFT/FFT.java, FeatureExtraction/LPC/LPC.java, Preprocessing/Dummy/Dummy.java, Preprocessing/Dummy/Raw.java, Preprocessing/Endpoint/Endpoint.java, Preprocessing/FFTFilter/BandpassFilter.java, Preprocessing/FFTFilter/FFTFilter.java, Preprocessing/FFTFilter/HighFrequencyBoost.java, Preprocessing/FFTFilter/HighPassFilter.java, Preprocessing/FFTFilter/LowPassFilter.java, Storage/Sample.java, util/Debug.java, util/ExpandedThreadGroup.java: This mega commit includes a few large fixes and closes up a long standing bug #1273717. Specifically, SpeakerIdentApp has now the option "-aggr" to invoke the recently implemented FeatureExtractionAggregator for testing (for now as concatenation FFT and LPC until better alternatives are available). Debug FeatureExtractionAggregator so it actually works. This includes resetting the module parameters back to itself instead of just zeroing out because when MARF runs in the batch mode in the same JVM, we were able to run through only once successfully. Fix addition of the current thread to its group upon thread construction. Improve handling of the sub-module parameters with proper typechecks for the future. For all this to work, especially for cloning of the Preprocessing modules, the default constructors had to be made public. Did not entirely estimate consequences of this. The actual results of coupling FFT+LPC are rather pitiful at this point (need to implement F0 for more fruitful results). Re-synchronize MARF so that no deadlocks happen when the main thread calls its synchronized method and some other thread does the same (as in FeatureExtractionAggregator) causing both to hang. Instead make the synchronization a tad bit more granular in MARF in train(), recognize(), and startRecognitionPipeline() based on the objects being manipulated. Add a new method of checkSettings() and relax synchronization requirements on the version retrieval methos as there are no mutable data structures in there. This was deemed to be the source of the bug #1273717, but turned out to be unrelated and so is Debug's synchronization is fine. Now, the bug #1273717 is finally fixed, and the culprit turned out to be the Sample's class toString() method -- specifically inefficient implementation of String concatenation with "+". Replace all the operations in there with the StringBuffer instead to fix the problem. Clean up lots of code a long the way in various places along the way for names, error handling, and comments. 2005-12-29 13:21 mokhov * src/marf/nlp/Parsing/: Compiler.java, Parser.java: Complete first round of code review for the Compiler class. Reduce load on the Parser's constructor that was doing everything, and move some of it where it belongs in the Compiler. Mark a few TODO items in places to be done at a later time. Provide getters and setters for most members in the Parser class and rename most data members in accordance with the naming conventions. 2005-12-29 11:55 mokhov * src/marf/nlp/Parsing/: GenericLexicalAnalyzer.java, Parser.java, GrammarCompiler/Grammar.java, GrammarCompiler/GrammarCompiler.java: This concludes the first round of code review for the marf.nlp.Parsing.GrammarCompiler package of MARF. The Grammar class has been brought more-or-less to the style and comments with the rest of the package. Some public members were made protected and accessors were made for them and used where needed. In this commit, a few warnings and errors are eliminated due to a local variable hiding a member one and use of static members was corrected in places. Some more appropriate error handling is in place as well. Perform some tidy-ups and clean-ups along the way. 2005-12-28 23:43 mokhov * src/marf/nlp/Parsing/Parser.java: Catch uncaught StorageException properly. Got forgotten in the previous commit. 2005-12-28 22:03 mokhov * src/marf/: math/Matrix.java, nlp/Parsing/TransitionTable.java, nlp/Parsing/GrammarCompiler/GrammarAnalyzer.java, nlp/Parsing/GrammarCompiler/GrammarCompiler.java: Complete preliminary code and comments review for GrammarAnalyzer and GrammarCompiler classes in terms of more accurate exception handling, javadoc comments, and naming. Fix a javadoc warning in marf.math.Matrix and rename all variables in accordance with the coding conventions in TransitionTable along the way. 2005-12-27 22:21 mokhov * src/: test.java, marf/MARF.java, marf/Classification/ClassificationFactory.java, marf/Classification/Makefile, marf/FeatureExtraction/FeatureExtractionFactory.java, marf/Preprocessing/Makefile, marf/Preprocessing/PreprocessingException.java, marf/Preprocessing/PreprocessingFactory.java, marf/Storage/MARFAudioFileFormat.java, marf/Storage/Makefile, marf/Storage/SampleLoaderFactory.java, marf/Storage/Loaders/WAVLoader.java, marf/util/InvalidSampleFormatException.java: Implement factories ClassificationFactory, PreprocessingFactory, and SampleLoaderFactory a-la FeatureExtractionFactory. Make FeatureExtractionFactory's constructor private for now as it is pointless to instantiate it. This cleans up MARF's pipeline code and the set of imports and captures proper exceptions and the functionality is more groupped where it belongs. As a result, complete implementation of the plugin system for sample loaders. Add a CUSTOM sound file type to be able to load plugins we don't know the type about. Enhance InvalidSampleFormatException and PreprocessingException with the standard constructor set they were lacking. Force WAVLoader to throw InvalidSampleFormatException in its default constructor to be in line with others, like SineLoader, as it is more sensical exception than StorageException. Hopefully, this does not break many client apps. 2005-12-27 18:55 mokhov * src/: test.java, marf/MARF.java, marf/FeatureExtraction/FeatureExtractionAggregator.java, marf/FeatureExtraction/FeatureExtractionFactory.java, marf/FeatureExtraction/Makefile, marf/Preprocessing/IPreprocessing.java, marf/Preprocessing/Preprocessing.java, marf/Preprocessing/Dummy/Dummy.java, marf/Preprocessing/Dummy/Raw.java, marf/Preprocessing/Endpoint/Endpoint.java, marf/Preprocessing/FFTFilter/BandpassFilter.java, marf/Preprocessing/FFTFilter/FFTFilter.java, marf/Preprocessing/FFTFilter/HighFrequencyBoost.java, marf/Preprocessing/FFTFilter/HighPassFilter.java, marf/Preprocessing/FFTFilter/LowPassFilter.java, marf/Storage/IStorageManager.java, marf/Storage/Sample.java: Complete initial implementation of the FeatureExtractionAggregator. It requires now extensive testing. Implement some other goodies along the way: FeatureExtractionFactory now groups all FeatureExtration modules creation more-or-less according to the corresponding Factory design pattern. This simplifies MARF's and FeatureExtractionAggregator's code; implement clone() for Sample and Preprocessing triggered by the need in the aggregator. Since cloning in Preprocessing is rather tricky, we clone the concrete class that may have an instance. In order to be able to create such an instance there should be a default constructor, so all preprocessing modules got a default protected constructor as a result. Additionally, augment IPreprocessing interface with the public clone() method so implementors have to be cloneable and those parts of the code that only operate by the means of this interface, can also have a public handle to the method. Make sure all that implements Serializable also implements Cloenable through IStorageManager. Implement two new constructors for Sample: Sample(int, double[]) and Sample(Sample). Document the relevant code. All these infrastructural changes require now extensive testing. 2005-12-27 18:49 mokhov * src/marf/util/ExpandedThreadGroup.java: Perform minor cosmetic clean up. 2005-12-27 18:48 mokhov * src/marf/: Storage/MARFAudioFileFormat.java, util/OptionProcessor.java: Re-add ref. comment with a proper FQ name, so there are no more corresponding javadoc warnings. 2005-12-27 13:53 mokhov * src/marf/: MARF.java, FeatureExtraction/FeatureExtractionAggregator.java, FeatureExtraction/Makefile: Begin implementation of FeatureExtractionAggregator to be able to concatenate features from different feature extraction modules as one feature vector. 2005-12-27 13:52 mokhov * src/tools/serialverupdate: Document the script and make it query for available `make'. 2005-12-25 22:21 mokhov * src/tools/revision-check.sh: Implement checks for interfaces. Document. 2005-12-25 17:42 mokhov * src/tools/md5sumall.sh: Fix a bug of not returning to the previous directory upon completion. 2005-12-25 17:42 mokhov * src/marf/nlp/Parsing/GrammarCompiler/GrammarCompiler.java: Fix a typo in a comment. 2005-12-24 15:04 mokhov * TODO: Most notably, add MARF Language TODO item. Slightly update other items. 2005-12-24 14:47 mokhov * src/marf/: Classification/Classification.java, Classification/Distance/Distance.java, FeatureExtraction/FeatureExtraction.java, Preprocessing/Preprocessing.java, Preprocessing/FFTFilter/FFTFilter.java, Stats/StatisticalEstimators/StatisticalEstimator.java, Stats/StatisticalEstimators/Smoothing/Smoothing.java, Storage/IDatabase.java, Storage/IStorageManager.java, Storage/StorageManager.java, nlp/Parsing/GrammarCompiler/GrammarElement.java, util/SortComparator.java: Add serialVersionUID to abstract classes and interfaces that implemente/extend Serializable as their fields are inherited by the derivatives are also to be serialized with writeObject(), so versioning is a good idea. 2005-12-23 23:01 mokhov * src/marf/nlp/Parsing/: GenericLexicalAnalyzer.java, SemanticError.java, GrammarCompiler/GrammarCompiler.java, GrammarCompiler/GrammarTokenType.java, GrammarCompiler/NonTerminal.java, GrammarCompiler/ProbabilisticGrammarCompiler.java: Advance clean up of the parsing/compiler code further. Finish documentation and naming conventions for NonTerminal and GrammarTokenType. Largely advance GrammarCompiler and improve further its exception handling. Now SemanticError is in play and got its set of standard constructors. 2005-12-22 22:37 mokhov * src/marf/nlp/Parsing/: Compiler.java, LexicalAnalyzer.java, LexicalError.java, Parser.java, TokenSubType.java, GrammarCompiler/GrammarAnalyzer.java, GrammarCompiler/GrammarCompiler.java, GrammarCompiler/GrammarTokenType.java, GrammarCompiler/ProbabilisticGrammarCompiler.java: Replace all the occurences of "C+-" with "MARF". 2005-12-22 21:52 mokhov * src/marf/nlp/Parsing/: GenericLexicalAnalyzer.java, LexicalAnalyzer.java, LexicalError.java, Parser.java, ProbabilisticParser.java, SemanticError.java, SyntaxError.java, GrammarCompiler/GrammarAnalyzer.java, GrammarCompiler/GrammarCompiler.java, GrammarCompiler/ProbabilisticGrammarAnalyzer.java, GrammarCompiler/ProbabilisticGrammarCompiler.java: Perform code/comments review for ProbabilisticGrammarAnalyzer including more proper exception handling and application of coding conventions. These changes affected some other classes of the parsing code, so more LexicalError and CompilerError exceptions got used. More similar and related renames of the variables. Add more constructors to LexicalError that are usual part of the MARF Exceptions Framework. Add getLexicalErrors() to GenericLexicalAnalyzer and improve its scan() to account for LexicalErrors. Other changes are in the same ballpark. 2005-12-21 19:41 mokhov * src/marf/nlp/Parsing/: Compiler.java, Parser.java, ProbabilisticParser.java, GrammarCompiler/Grammar.java, GrammarCompiler/GrammarCompiler.java, GrammarCompiler/ProbabilisticGrammarCompiler.java, GrammarCompiler/ProbabilisticRule.java: Complete code review for comments and clean up in ProbabilisticRule and ProbabilisticGrammarCompiler. As a result tighten a bit more error handling with SyntaxError in the related places, the way it should have been years ago. More improvements to come. 2005-12-21 19:37 mokhov * src/marf/Storage/StorageException.java: Add remaining constructors of MARFException for convenience. Seemed to be useful in some of the NLP parsing exception handling. 2005-12-18 16:29 mokhov * src/marf/nlp/Parsing/GrammarCompiler/: Rule.java, SemanticToken.java: Eliminate javadoc warnings by documenting the classes and their members. Apply coding conventions. Clean up some dead code. 2005-12-18 16:27 mokhov * src/marf/nlp/Parsing/Parser.java: Fix a bug in the class name that did not get renamed when package name got renamed. 2005-12-17 14:05 mokhov * Makefile, src/Makefile, src/tools/md5sumall.sh: Improve the distro building process in the Makefile. Add .bz2 version of the tarballs. Add md5sum checks. Remove coding.html from the .jar file, which is not the right place for it. Add it instead to the tarballs. 2005-12-17 14:01 mokhov * src/marf/nlp/Parsing/GrammarCompiler/: GrammarElement.java, Terminal.java: Advance code review for NLP-stuff. Document better. Apply coding conventions. Fine-tune versioning. This also fixes a number of javadoc warnings. 2005-12-11 22:54 mokhov * .classpath, .project: Convert to UNIX format. 2005-12-10 23:49 mokhov * src/marf/Preprocessing/Endpoint/Endpoint.java: Make ninor comment update and move serialVersionID down. 2005-12-10 23:48 mokhov * Makefile, src/Makefile: MARF's distro target didn't have the coding conventions and HISTORY file in one case for the doc and sources tarball, where it ultimately belongs, so add them. 2005-12-08 10:35 mokhov * COPYRIGHT: Update group's name in the copyright file that got omitted in the previous commit. 2005-12-07 19:47 mokhov * manifest.mf, marf.spec, doc/Makefile, doc/src/Makefile, src/Makefile, src/test.java: Bulk-rename remaining entries of "The MARF Development Group" to "The MARF Research and Development Group". 2005-12-04 22:13 mokhov * src/marf/: Classification/Distance/Distance.java, Classification/NeuralNetwork/NeuralNetwork.java, Classification/Stochastic/MaxProbabilityClassifier.java, FeatureExtraction/FFT/FFT.java, Stats/StatisticalEstimators/GLI.java, math/Matrix.java, nlp/Parsing/CodeGenerator.java, nlp/Parsing/FuncSymTabEntry.java, nlp/Parsing/GenericLexicalAnalyzer.java, nlp/Parsing/LexicalAnalyzer.java, nlp/Parsing/SymbolTable.java, nlp/Parsing/Token.java, nlp/Parsing/GrammarCompiler/GrammarAnalyzer.java, nlp/util/NLPStreamTokenizer.java, util/Arrays.java, util/OptionProcessor.java: Begin code review for the upcoming release. This touches the coding conventions, javadoc comments, removal of unused variables, finer grain versionning, and the like. 2005-12-03 19:26 mokhov * src/marf/util/Arrays.java: Format. Apply slightly more correct coding conventions. 2005-12-02 17:50 susan_fan * src/marf/util/Arrays.java: Correct a logic error for arrayToDelimitedString() methods. 2005-12-01 16:39 susan_fan * src/marf/util/Arrays.java: Add Object[], int[], long[], float[], double[], byte[], boolean[], char[] array data type for arrayToDelimitedString(), arrayToString(), and arrayToCSV() methods. 2005-11-29 20:15 mokhov * src/tools/revision-check.sh: Fix a typo and formatting a bit. 2005-11-27 14:03 mokhov * src/marf/util/: Arrays.java, OptionProcessor.java: Begin the series of the new API calls in marf.util.Arrays: arrayToDelimitedVector(), arrayToString(), and arrayToCSV(). Fix naming of one param variable per convention. Add a new API call in OptionProcessor getArgumentString() to return a string of arguments instead of an array. Per my TODO. 2005-11-10 04:58 mokhov * src/marf/nlp/util/NLPStreamTokenizer.java: Apparently, in the overridden pushBack() it was not a good idea to call the version of the super class as nextToken() would return a duplicate trailing char. Per work on Cryptolysis. 2005-10-25 01:22 mokhov * src/marf/: Storage/MARFAudioFileFormat.java, util/OptionProcessor.java: Fix javadoc warnings. 2005-10-24 10:45 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Add dictionary size to the toString()-generated information. 2005-10-23 19:42 mokhov * src/marf/Stats/WordStats.java: Implement toString(). 2005-10-23 19:12 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Implement toString(). 2005-10-23 02:48 mokhov * src/marf/nlp/: Parsing/Token.java, util/NLPStreamTokenizer.java: Fix a few typing errors and thinkos in the last NLP patch. 2005-10-23 02:41 mokhov * src/marf/: Classification/Stochastic/ZipfLaw.java, nlp/Parsing/Token.java, nlp/Parsing/TokenSubType.java, nlp/Parsing/TokenType.java, nlp/util/NLPStreamTokenizer.java: The main focus of this patch is to enable NLPStreamTokenizer push effectively back arbitrary number of tokens back to the token stream by employing a stack and overriding the nextToken(), pushBack(), and lineno() methods of StreamTokenizer. The Token type was adjusted for this purpose to be able to retain the values contained in the tokenizer for the sval, ttype, nval, and line number fields. Clean up some code and comments along the way. 2005-10-23 00:46 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Fix method spelling. 2005-10-23 00:42 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Re-implement serialization of the data as an entire ZipfLaw object instead of just a stats hashtable. This will preserve some other data members of interest. Implement acquisition of minimum and maximum lengths of words in the dictionary. Extract a frequently used constant 100 into OUTPUT_PAGE_SIZE and use it consistenly. Apply more coding conventions. 2005-10-22 23:51 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Make sure the object-to-serialize is set to the stats hashtable, so no nulls are dumped. Correct a few comments. 2005-10-22 19:58 mokhov * Makefile.global, src/marf/Classification/Stochastic/Makefile: Add a notion of COMMONJFLAGS to being enforcement of the Java 1.4. As per example I've done in GIPSY. 2005-10-22 19:57 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Add import for StorageException. 2005-10-22 19:50 mokhov * src/marf/util/OptionProcessor.java: Perform minimal cosmetic adjustments to the code while reviewing. 2005-10-22 19:49 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Implement general StorageManager-dictated serialization facility. Prompted by the Cryptolysis application's need. 2005-10-22 19:47 mokhov * src/marf/Classification/Stochastic/Stochastic.java: Be more precise about when certain methods appeared. 2005-10-22 13:39 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Fix indentation. 2005-10-22 13:37 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Document the new methods properly. 2005-10-22 13:28 mokhov * src/marf/Classification/Stochastic/ZipfLaw.java: Add a new API allowing access to private data members of the class. Some is used in the new Cryptolysis application I am working on. 2005-10-22 13:27 mokhov * src/marf/nlp/Parsing/Token.java: Eliminate javadoc warnings and document class memebers more. Cosmetically move some code around. Make copy constructor to clone at least two members for now. 2005-10-15 23:11 mokhov * doc/src/tex/: Makefile, apps.tex, prob-app-sample-run.tex, probabilistic-parsing-app.tex, report.bib: Complete preliminary integration of the ProbabilisticParsingApp docs and related files. Update the Bibliography and Makefiles accordingly. What follows after is polishing of the app and the docs to be in the uniform format. 2005-10-15 20:57 mokhov * doc/src/tex/: best-score.tex, lang-ident-app.tex, report.bib, results.tex, second-best-score.tex, statistic-processing.tex, statitstic-processing.tex: Polish the manual in few areas: begin updating style of the LangIdentApp doc match the rest of MARF; fix a few glitches while at it, e.g. one of skewing font after NLP stats. Update best-score to what's actually in the table -- somehow missed during last update. Add second best as well. Fix appearance of the Satistics Processing chapter as it was not named properly. Bring some other information more up-to-date, e.g. options of the SpeakerIdentApp. Make the Bibliogrpahy yet more accurate and use the \url{} environment throughout. 2005-10-15 17:54 mokhov * doc/src/tex/: Makefile, apps.tex, lang-ident-app.tex: Complete preliminary integration of the LangIdentApp docs. All the .langs files are looked up where appropriate and the corresponding .tex files are made. 2005-10-14 20:42 mokhov * src/marf/Makefile: Remove redundant line. 2005-10-14 20:41 mokhov * doc/src/tex/report.bib: Sync Bibliography from other sources. Mostly Security-related. 2005-10-02 20:08 mokhov * Makefile: Make sure the Makefile.global is also added to the distro. Update copyright to add "Research and" to the group's name. 2005-10-01 23:58 mokhov * doc/src/tex/report.bib: Freshen Bibliography with more updated info from my thesis and other source. 2005-10-01 20:58 mokhov * TODO: Update TODO WRT things done in SpeakerIdentApp primarily for option processing. 2005-09-19 21:38 mokhov * src/marf/Storage/ModuleParams.java: Implement size() as a sum of all vector sizes. Tighten error checks with exception handling and disallow null collections to be assigned (but null elements in the param vectors are still allowed; not sure if this should be more strict or not yet). Clean up comments a bit. Apply more coding conventions and relax the variables and constants to be protected instead of private so one can possibly inherit from the class and have access to its members. 2005-09-17 18:57 mokhov * TODO: Update TODO throughout. 2005-08-27 13:03 mokhov * src/marf/: MARF.java, FeatureExtraction/FFT/FFT.java, Preprocessing/Preprocessing.java, Preprocessing/Dummy/Raw.java, Preprocessing/FFTFilter/FFTFilter.java, Preprocessing/FFTFilter/HighFrequencyBoost.java, Storage/StorageManager.java, util/Debug.java: Conduct preliminary invenstigation on the bug #1273717 of pieces of MARF being over sync'ed. Comment out Debug.debug() calls from the constructors for now. 2005-08-27 13:00 mokhov * src/marf/nlp/Parsing/: Compiler.java, FuncSymTabEntry.java: Begin clean up of the NLP code. Apply more coding conventions and document code more. In Compiler, extract major code from main() to a new compile() call and provide a constructor. 2005-08-26 16:57 mokhov * doc/src/tex/: report.tex, statitstic-processing.tex, stats-date.tex, stats.tex: Add a stub Statistic Processing chapter. Update actual stats and results from the recent run of SpeakerIdentApp. 2005-08-25 12:54 mokhov * doc/src/tex/apps.tex: Back out premature generation of the LangIdentApp for public. 2005-08-24 19:31 mokhov * doc/src/tex/: Makefile, apps.tex: Perform preliminary compilable integratin of the Zipf's Law app's docs. Make sure the graphs for it are symlinked upon the need instead of copying and also symlink the architecture diagrams. A lot more there is still to do, but this is a progress. 2005-08-24 18:55 mokhov * doc/src/tex/: apps.tex, lang-ident-app.tex, report.bib: Fix preliminary buildable documentation from LangIdentApp. More work to be done, but this is start for the integrated version. Update Biblioraphy from thesis. 2005-08-24 17:36 mokhov * src/marf/Preprocessing/FFTFilter/HighFrequencyBoost.java: Make high-frequency boost's parameters customizable via setters and ModuleParams. 2005-08-24 09:17 mokhov * doc/src/tex/experimentation.tex: Fix math appearance of F0. 2005-08-23 23:32 mokhov * doc/: pipeline.ppt, src/graphics/arch/pipeline-flow.png, src/tex/data.tex, src/tex/experimentation.tex, src/tex/preprocessing.tex: Update the pipeline flow diagram as Endpoint is implemented now. Add Shivani. Massage the rest. 2005-08-23 22:20 mokhov * TODO, doc/src/tex/experimentation.tex: Mark Endpoint as implemented. 2005-08-23 22:10 mokhov * doc/src/tex/preprocessing.tex: Provide initial documentation snipped on Endpointing just implemented. 2005-08-23 21:51 mokhov * src/marf/Storage/ModuleParams.java: Properly synchronize class. Implement toString(). 2005-08-23 21:48 mokhov * src/marf/: Preprocessing/Endpoint/Endpoint.java, FeatureExtraction/FFT/FFT.java: Tighten ModuleParam checks for the size of the module parameter vectors. 2005-08-23 21:12 mokhov * src/marf/MARF.java: Properly synchronize the class in case someone decides to use MARF in multiple application threads in the same JVM instance. Document three leftover undocumented private members. Adjust minor revision in places. 2005-08-23 20:19 mokhov * src/marf/Preprocessing/Preprocessing.java: Document parameter and mark it final. 2005-08-23 20:14 mokhov * src/marf/Preprocessing/Endpoint/Endpoint.java: Implement endpointing. Requires testing now. 2005-08-23 20:12 mokhov * src/marf/Preprocessing/Preprocessing.java: Introduce compress() API for elimination of duplicate values in a sample array. For now, this feature is primarily used in the Endpoint, but others might find it useful eventually as well, so put it in Preprocessing. 2005-08-19 11:52 mokhov * src/marf/Preprocessing/Dummy/Raw.java: Fix a copy-paste error in the debug message. Exposed when testing TestPlugin in the debug mode. 2005-08-19 11:50 mokhov * src/marf/MARF.java: Bump minor revision for the next release cycle. 2005-08-19 10:58 mokhov * doc/src/tex/lang-ident-app.tex: Prepare for integration with MARF docs. 2005-08-18 22:53 mokhov * doc/src/tex/zipf-law-app.tex: Perform a bulk update for integration with MARF's manual. 2005-08-18 09:07 mokhov * doc/src/tex/gui.tex: Fix GUI's diag width to properly fit the page. 2005-08-17 14:50 mokhov * src/Makefile: Remove the -J-version option as it causes problems in pure java 1.4 builds. 2005-08-17 14:42 mokhov * ChangeLog: Update ChangeLog for 0.3.0-devel-20050817. 2005-08-17 14:41 mokhov * doc/src/tex/: history.tex, report.tex: Brand 0.3.0-devel-20050817. 2005-08-17 14:31 mokhov * doc/: arch.mdl, src/graphics/arch/gui.png: Update the fact that the Spectroram and WaveGraphers are in fact storage managers. 2005-08-17 14:30 mokhov * doc/src/tex/: report.bib, report.tex: Update Bibliography from my recent GIPSY thesis changes. Use the 'url' package. 2005-08-13 21:15 mokhov * src/marf/: Classification/Distance/MinkowskiDistance.java, Classification/Markov/Markov.java, Classification/NeuralNetwork/NeuralNetwork.java, Classification/RandomClassification/RandomClassification.java, FeatureExtraction/F0/F0.java, FeatureExtraction/RandomFeatureExtraction/RandomFeatureExtraction.java, Preprocessing/PreprocessingException.java, Preprocessing/Endpoint/Endpoint.java, Preprocessing/FFTFilter/LowPassFilter.java, Stats/Ngram.java, Stats/ProbabilityTable.java, Stats/StatisticalObject.java, Stats/WordStats.java, Stats/StatisticalEstimators/GLI.java, Stats/StatisticalEstimators/KatzBackoff.java, Stats/StatisticalEstimators/MLE.java, Stats/StatisticalEstimators/SLI.java, Stats/StatisticalEstimators/Smoothing/AddOne.java, Stats/StatisticalEstimators/Smoothing/GoodTuring.java, Stats/StatisticalEstimators/Smoothing/WittenBell.java, gui/util/ColoredStatusPanel.java, util/comparators/FrequencyComparator.java, util/comparators/ResultComparator.java: Correct some indendation and formatting after a recent serialVersionUID patch. Add one more missing 'private' modifier. 2005-08-13 19:46 susan_fan * src/marf/FeatureExtraction/Cepstral/Cepstral.java: add missing private modifier 2005-08-13 19:09 susan_fan * src/marf/: Classification/Distance/MinkowskiDistance.java, Classification/Markov/Markov.java, Classification/NeuralNetwork/NeuralNetwork.java, Classification/RandomClassification/RandomClassification.java, Classification/Stochastic/MaxProbabilityClassifier.java, Classification/Stochastic/Stochastic.java, Classification/Stochastic/ZipfLaw.java, FeatureExtraction/FeatureExtractionException.java, FeatureExtraction/F0/F0.java, FeatureExtraction/FFT/FFT.java, FeatureExtraction/LPC/LPC.java, FeatureExtraction/MinMaxAmplitudes/MinMaxAmplitudes.java, FeatureExtraction/RandomFeatureExtraction/RandomFeatureExtraction.java, FeatureExtraction/Segmentation/Segmentation.java, Preprocessing/PreprocessingException.java, Preprocessing/Dummy/Dummy.java, Preprocessing/Dummy/Raw.java, Preprocessing/Endpoint/Endpoint.java, Preprocessing/FFTFilter/BandpassFilter.java, Preprocessing/FFTFilter/HighFrequencyBoost.java, Preprocessing/FFTFilter/HighPassFilter.java, Preprocessing/FFTFilter/LowPassFilter.java, Stats/Ngram.java, Stats/Observation.java, Stats/ProbabilityTable.java, Stats/StatisticalObject.java, Stats/WordStats.java, Stats/StatisticalEstimators/GLI.java, Stats/StatisticalEstimators/KatzBackoff.java, Stats/StatisticalEstimators/MLE.java, Stats/StatisticalEstimators/SLI.java, Stats/StatisticalEstimators/Smoothing/AddDelta.java, Stats/StatisticalEstimators/Smoothing/AddOne.java, Stats/StatisticalEstimators/Smoothing/GoodTuring.java, Stats/StatisticalEstimators/Smoothing/WittenBell.java, Storage/StorageException.java, gui/Spectrogram.java, gui/SpectrogramPanel.java, gui/WaveGrapher.java, gui/WaveGrapherPanel.java, gui/util/BorderPanel.java, gui/util/ColoredStatusPanel.java, gui/util/SmartSizablePanel.java, math/MathException.java, math/Matrix.java, math/Vector.java, nlp/NLPException.java, nlp/Parsing/CompilerError.java, nlp/Parsing/LexicalError.java, nlp/Parsing/ProbabilisticParser.java, nlp/Parsing/SemanticError.java, nlp/Parsing/SyntaxError.java, nlp/Parsing/Token.java, nlp/Parsing/TokenSubType.java, nlp/Parsing/TokenType.java, nlp/Parsing/TransitionTable.java, nlp/Parsing/GrammarCompiler/Grammar.java, nlp/Parsing/GrammarCompiler/GrammarCompiler.java, nlp/Parsing/GrammarCompiler/GrammarTokenType.java, nlp/Parsing/GrammarCompiler/NonTerminal.java, nlp/Parsing/GrammarCompiler/ProbabilisticGrammarCompiler.java, nlp/Parsing/GrammarCompiler/ProbabilisticGrammarTokenType.java, nlp/Parsing/GrammarCompiler/ProbabilisticRule.java, nlp/Parsing/GrammarCompiler/Rule.java, nlp/Parsing/GrammarCompiler/SemanticToken.java, nlp/Parsing/GrammarCompiler/Terminal.java, util/comparators/RankComparator.java, util/comparators/ResultComparator.java: add missing private modifier 2005-08-13 12:28 mokhov * src/marf/Storage/Result.java: Fix formatting. 2005-08-12 16:02 susan_fan * src/marf/Classification/Distance/MahalanobisDistance.java: remove redundant semicolon from the line of declaration of serialVersionUID in MahalanobisDistance.java 2005-08-12 07:53 susan_fan * src/marf/: Classification/Distance/MahalanobisDistance.java, Classification/Distance/MinkowskiDistance.java, Classification/Markov/Markov.java, Classification/NeuralNetwork/NeuralNetwork.java, Classification/RandomClassification/RandomClassification.java, Classification/Stochastic/MaxProbabilityClassifier.java, Classification/Stochastic/Stochastic.java, Classification/Stochastic/ZipfLaw.java, FeatureExtraction/FeatureExtractionException.java, FeatureExtraction/Cepstral/Cepstral.java, FeatureExtraction/F0/F0.java, FeatureExtraction/FFT/FFT.java, FeatureExtraction/LPC/LPC.java, FeatureExtraction/MinMaxAmplitudes/MinMaxAmplitudes.java, FeatureExtraction/RandomFeatureExtraction/RandomFeatureExtraction.java, FeatureExtraction/Segmentation/Segmentation.java, Preprocessing/PreprocessingException.java, Preprocessing/Dummy/Dummy.java, Preprocessing/Dummy/Raw.java, Preprocessing/Endpoint/Endpoint.java, Preprocessing/FFTFilter/BandpassFilter.java, Preprocessing/FFTFilter/HighFrequencyBoost.java, Preprocessing/FFTFilter/HighPassFilter.java, Preprocessing/FFTFilter/LowPassFilter.java, Stats/Ngram.java, Stats/Observation.java, Stats/ProbabilityTable.java, Stats/StatisticalObject.java, Stats/WordStats.java, Stats/StatisticalEstimators/GLI.java, Stats/StatisticalEstimators/KatzBackoff.java, Stats/StatisticalEstimators/MLE.java, Stats/StatisticalEstimators/SLI.java, Stats/StatisticalEstimators/Smoothing/AddDelta.java, Stats/StatisticalEstimators/Smoothing/AddOne.java, Stats/StatisticalEstimators/Smoothing/GoodTuring.java, Stats/StatisticalEstimators/Smoothing/WittenBell.java, Storage/Cluster.java, Storage/Database.java, Storage/FeatureSet.java, Storage/Result.java, Storage/ResultSet.java, Storage/Sample.java, Storage/StorageException.java, Storage/TrainingSample.java, Storage/TrainingSet.java, gui/Spectrogram.java, gui/SpectrogramPanel.java, gui/WaveGrapher.java, gui/WaveGrapherPanel.java, gui/util/BorderPanel.java, gui/util/ColoredStatusPanel.java, gui/util/SmartSizablePanel.java, math/MathException.java, math/Matrix.java, math/Vector.java, nlp/NLPException.java, nlp/Parsing/CompilerError.java, nlp/Parsing/LexicalError.java, nlp/Parsing/ProbabilisticParser.java, nlp/Parsing/SemanticError.java, nlp/Parsing/SyntaxError.java, nlp/Parsing/Token.java, nlp/Parsing/TokenSubType.java, nlp/Parsing/TokenType.java, nlp/Parsing/TransitionTable.java, nlp/Parsing/GrammarCompiler/Grammar.java, nlp/Parsing/GrammarCompiler/GrammarCompiler.java, nlp/Parsing/GrammarCompiler/GrammarTokenType.java, nlp/Parsing/GrammarCompiler/NonTerminal.java, nlp/Parsing/GrammarCompiler/ProbabilisticGrammarCompiler.java, nlp/Parsing/GrammarCompiler/ProbabilisticGrammarTokenType.java, nlp/Parsing/GrammarCompiler/ProbabilisticRule.java, nlp/Parsing/GrammarCompiler/Rule.java, nlp/Parsing/GrammarCompiler/SemanticToken.java, nlp/Parsing/GrammarCompiler/Terminal.java, util/comparators/FrequencyComparator.java, util/comparators/RankComparator.java, util/comparators/ResultComparator.java: continue to add serialVersionUID to the modules with serializable members 2005-08-10 20:44 mokhov * src/marf/: Classification/ClassificationException.java, Classification/Distance/ChebyshevDistance.java, Classification/Distance/DiffDistance.java, Classification/Distance/EuclideanDistance.java, Storage/Cluster.java, Storage/Database.java, Storage/FeatureSet.java, Storage/Result.java, Storage/ResultSet.java, Storage/Sample.java, Storage/StorageException.java, Storage/TrainingSample.java, Storage/TrainingSet.java, util/FreeVector.java, util/InvalidSampleFormatException.java, util/MARFException.java, util/Matrix.java, util/NotImplementedException.java, util/OptionProcessor.java: Fix a copy-paste mistake in a comment. 2005-08-10 11:51 mokhov * doc/src/tex/report.bib: Update Bibliography with proper names and links. 2005-08-07 23:21 mokhov * src/marf/util/MARFException.java: Initialize our own message container to an empty string to avoid annoying nulls in some error messages where this does not get initialized. Add more comments. 2005-08-07 19:49 mokhov * TODO: Update ModuleParams. 2005-08-07 18:46 mokhov * src/tools/serialverupdate: Add initial version of the tool to check for missing serialVersionUID members in Serializable classes. To be extended later to be able to update those automatically. 2005-08-07 17:19 mokhov * src/marf/MARF.java: Correct minor revision. 2005-08-07 17:03 mokhov * src/marf/util/OptionProcessor.java: Implement new API methods of size() and getArgumentVector(). The former estimates the size of the option processor by summing the sizes of the active and invalid options (that are more likely to come from the initial argv anyway). The latter allows to reproduce more-or-less the input argv based on the active and invalid options. Properly synchronize the class for the case of the concurrent access. 2005-08-07 16:57 mokhov * src/marf/util/OptionProcessor.java: Fix a bug in getOption(int, boolean) where the numeric key was never actually looked up as a key. Simplify the retrieval logic as we have now two hashtables. Exposed by the GIPC of GIPSY. This bug renders getOption(int, boolean) and getOption(int) pretty much unusable in the 0.3.0-devel-20050730 release :-(. It was not exposed earlier as none of our test apps used this form of the getOption() call. 2005-08-07 16:48 mokhov * src/marf/util/Debug.java: Extract the default debug-log filename into a constant and provide an atomic isDebugOn() method to examine the debug flag. 2005-08-07 16:46 mokhov * src/marf/util/Arrays.java: Fix a recurrent bug in the new series of the concatenate() call: the source and destination array parameters were misplaced to System.arraycopy(). Mea culpa. Also correct some formatting along the way. 2005-08-07 16:41 mokhov * src/marf/util/Arrays.java: Fix a copy-paste bug in arrayToVector(String[]) that was trying to use Byte instead of String in the for() loop. 2005-08-06 23:15 susan_fan * src/marf/util/Arrays.java: Add other data types for concatenate() 2005-08-06 17:11 mokhov * src/marf/: Classification/ClassificationException.java, Classification/Distance/ChebyshevDistance.java, Classification/Distance/DiffDistance.java, Classification/Distance/EuclideanDistance.java, Storage/Cluster.java, Storage/Database.java, Storage/FeatureSet.java, Storage/Result.java, Storage/ResultSet.java, Storage/Sample.java, Storage/StorageException.java, Storage/TrainingSample.java, Storage/TrainingSet.java, util/FreeVector.java, util/InvalidSampleFormatException.java, util/MARFException.java, util/Matrix.java, util/NotImplementedException.java, util/OptionProcessor.java: Add serialVersionUID for all Serializable classes in Storage and util as recommended by the Java spec. This clears out some 1.5-based Java compiler warnings. Add the field also in some other MARF modules; more to come. Update minor version @since tags along the way. 2005-08-05 18:19 mokhov * src/: test.java, marf/MARF.java, marf/Classification/Classification.java, marf/Classification/IClassification.java, marf/FeatureExtraction/FeatureExtraction.java, marf/FeatureExtraction/IFeatureExtraction.java, marf/Preprocessing/IFilter.java, marf/Preprocessing/IPreprocessing.java, marf/Preprocessing/Makefile, marf/Preprocessing/Preprocessing.java, marf/Preprocessing/Dummy/Dummy.java, marf/Preprocessing/Dummy/Raw.java, marf/Preprocessing/Endpoint/Endpoint.java, marf/Preprocessing/FFTFilter/BandpassFilter.java, marf/Preprocessing/FFTFilter/FFTFilter.java, marf/Preprocessing/FFTFilter/HighFrequencyBoost.java, marf/Preprocessing/FFTFilter/HighPassFilter.java, marf/Preprocessing/FFTFilter/LowPassFilter.java: Complete implementation of the Plugin Framework for Preprocessing, Feature Extraction, and Classification. Now developers can write their plugin classes for MARF without the necessity of altering any of MARF's code Add IFilter interface in Preprocessing as we may have different filter types, not just the FFT-based, so they will be a part of the same Filter Framework. Make FFTFilter implement the interface and account for it in the Revision Project. Update some revision comments to be more detailed when a given API appeared. Complete a mini-TODO item in the FFTFilter code of using Arrays.copy(). Apply more coding conventions to FFTFilter. 2005-08-05 13:49 mokhov * src/marf/FeatureExtraction/LPC/LPC.java: Provide getters and setters for the window length and number of poles for consistency and completeness. 2005-08-05 11:48 mokhov * src/marf/util/Arrays.java: Begin a series of new concatenate() calls that allow concatenation of arrays of the same type. Update more fine-grained versioning details. Clean up some odd spacing and formatting missed last time. 2005-08-03 19:37 mokhov * src/marf/nlp/Parsing/SyntaxError.java: Correct a couple of spelling mistakes in comments and add a couple more comments. 2005-08-03 19:26 mokhov * src/Makefile: Re-add accindetally removed '$'. 2005-08-03 19:23 mokhov * src/Makefile: Fix tabs. 2005-08-03 19:11 mokhov * src/Makefile: Implement SF.net logo display in the API docs for the website only. Should improve the stats a bit. 2005-08-02 21:07 mokhov * src/Makefile: MARF is still mostly Java 1.4-oriented, so tell the compiler that when compiling the code. This should have been added in the previous release, but got added only to javadoc. 2005-08-01 21:05 mokhov * src/Makefile: Make sure the marf/nlp directory is added for javadoc and other tools to pickup NLPException. 2005-08-01 21:04 mokhov * TODO, src/test.java, src/marf/nlp/Makefile, src/marf/nlp/NLPException.java, src/marf/nlp/Parsing/CompilerError.java: Add NLPException and make use of it inside marf.nlp. 2005-08-01 20:31 mokhov * src/marf/Storage/ResultSet.java: Avoid redundant sorting if the result set was already previously sorted. 2005-08-01 12:27 mokhov * src/marf/math/Algorithms.java: Apply some more coding conventions. 2005-08-01 12:26 mokhov * src/marf/FeatureExtraction/FFT/FFT.java: Add validation of the chunk size. 2005-08-01 11:41 mokhov * src/marf/FeatureExtraction/FFT/FFT.java: Implement customizable chunk size. It can be passed through the ModuleParams class or set directly via setters and getters. TODO: validation. Prompted by a comment from Hugh Lunnon and was on my TODO anyway. 2005-08-01 11:29 mokhov * src/marf/MARF.java: Bump minor revision for the next release. 2005-08-01 11:28 mokhov * TODO: Update TODO with the forgotten things done in 0.3.0-devel-20050730 or prior. Format a bit. 2005-07-30 18:56 mokhov * ChangeLog: Update ChangeLog for 0.3.0-devel-20050730. 2005-07-30 18:45 mokhov * doc/src/tex/: history.tex, report.tex: Bump to 0.3.0-devel-20050730. Change the group name to MARF Research and Development Group. 2005-07-30 17:38 mokhov * src/marf/Storage/Sample.java: Fix typos in comments. 2005-07-30 17:34 mokhov * src/marf/Storage/Sample.java: Implement toString(). 2005-07-30 17:10 mokhov * Makefile, README, marf.jpx, marf.oif: Update the JBuilder project files information. 2005-07-30 16:50 mokhov * src/marf/Storage/ResultSet.java: Fix getSecondClosestID() to account for whether the 2nd closest means 2nd minimum or 2nd maximum depending on the first closest. 2005-07-30 16:35 mokhov * src/marf/util/SortComparator.java: Allow getting the current sort mode. 2005-07-30 16:05 mokhov * src/marf/Stats/: Ngram.java, ProbabilityTable.java, StatisticalObject.java, StatsCollector.java, WordStats.java: Document the methods of the marf.Stats package's classes with proper javadocs. 2005-07-30 15:30 mokhov * src/marf/util/OptionProcessor.java: Add clear() method to remove all the options. 2005-07-29 19:09 mokhov * src/marf/MARF.java: Update author information. 2005-07-29 19:04 mokhov * doc/: arch.mdl, src/graphics/arch/storage.png, src/tex/apps.tex, src/tex/architecture.tex, src/tex/high-pass-boost.tex, src/tex/minmax.tex, src/tex/sources.tex, src/tex/storage.tex: Updated the Storage class diagram for most things. Spellcheck the manual. 2005-07-29 00:00 mokhov * doc/: arch.mdl, src/graphics/arch/classification.png, src/graphics/arch/feature-extraction.png, src/graphics/arch/gui.png, src/graphics/arch/preprocessing.png: Update Classification, Preprocessing, Feature Extraction, and GUI diagrams to a more actual state. 2005-07-24 21:26 mokhov * doc/: arch.mdl, src/graphics/arch/arch-general.png, src/graphics/arch/packages.png, src/tex/apps.tex, src/tex/architecture.tex, src/tex/history.tex, src/tex/intro.tex, src/tex/legal.tex, src/tex/notation.tex, src/tex/report.tex, src/tex/sources.tex: Update general MARF class diagram and main packages. Reverse-engineer the Rose model with the recent MARF sources. Refactor the Introduction chapter with proper flow and sectionning. Get rid of more PG stuff in MARF docs. Move COPYRIGHT under a section in Introduction instead of being a chapter on its own. Add more index and Revision entries. Perform some general style editorialization. 2005-07-24 20:52 mokhov * doc/src/tex/report.bib: Sync bibliography with my thesis for our recent conference proceedings in Las Vegas. 2005-07-22 15:32 mokhov * doc/: pipeline.ppt, src/graphics/arch/pipeline-flow.png, src/tex/architecture.tex: Complete preliminary pipeline data-flow diagram. 2005-07-22 14:55 mokhov * src/marf/nlp/Parsing/: SymbolTable.java, GrammarCompiler/Grammar.java: Remove deprecated code/entries. Document the code more (still more to do). Apply coding conventions in most places. 2005-07-18 23:30 mokhov * INSTALL: Add TOC and Upgrade section. 2005-07-18 23:10 mokhov * doc/src/tex/preprocessing.tex: Add high-pass high frequency boost to the Preprocessing section for it to appear in the manual. 2005-07-18 22:50 mokhov * doc/src/tex/: hamming.tex, high-frequency-boost.tex, high-pass-boost.tex, high-pass.tex: Add a first cut on documentation of the high-pass high-boost filter that escaped the previous release. Fix a few mistakes in Hamming Window, add revision, index entries, and implemenation place to the high-pass and high-boost filters alone. 2005-07-18 22:01 mokhov * Makefile, distro.exclude: Add a -bundle distro build of MARF. Make sure cvs2cl.pl and cvs2html.pl scripts are not included into the distro -- I thought I've done it, but apparently no so. 2005-07-18 21:48 mokhov * doc/src/tex/hamming.tex: Add index entries, revision, and mention where the implementation is. 2005-07-18 21:16 mokhov * doc/src/tex/: apps.tex, math-test-app.tex, test-fft.tex, test-filters.tex, test-loaders.tex, test-lpc.tex, test-wave-loader.tex: Group applications in sections by their purpose/location. Perform some minor editorializing along the way. 2005-07-18 19:44 mokhov * doc/src/tex/minmax.tex: Correct section label. 2005-07-18 19:36 mokhov * TODO: Preliminary TODO update for the things accomplish and a few new TODOs. Brush up the list a little. 2005-07-18 19:34 mokhov * doc/src/tex/apps.tex: Add ENCSAssetsCron. 2005-07-17 20:24 mokhov * src/marf/MARF.java: Expose MARF's version constants by making them public. Document them more. Account for MINOR_REVISION in getVersion() and getIntVersion(). Add a new API of getDoubleVersion() to provide 123.4 version format. 2005-07-17 13:04 mokhov * src/marf/util/OptionProcessor.java: Correct a couple of bugs related to the new feature of option=value type of handling exposed by the RIPE of GIPSY: enumerations need to be looked up now as keys, not values, in the reference option hashtables. This does not affect previous versions as this is a new feature. 2005-07-15 23:49 mokhov * src/marf/util/OptionProcessor.java: Provide first complete cut on implementation of the 'option=value' option processing feature. Make most of the new methods and classes protected for now for this upcoming release, but make nearly full use of them internally. The backward compatibility is still maintained except that the '=' sign now treated specially as the option-value separator. Add two-way hashing of Option objects by the option string or its number to simplify lookups; hence the new members of oValidOptionsNumbers and oActiveOptionsNumbers. I renamed the string ones to havs a suffix of "Strings". Add a new API of addValidOption(int, String, boolean) to allow the client code to add valid options that require arguments. Adjust parse() and getOption()-family calls to use Option and parse the '=' appropriately and parse() now checks for required arguments as well. Add getOptionArgument() family of calls to be able to query parsed option arguments. Add getter and setters calls in the Option class for its members. Document all the new members. 2005-07-15 23:31 mokhov * src/marf/MARF.java: Document exception. 2005-07-15 23:28 mokhov * src/test.java: Add a couple of debug lines when testing new features of OptionProcessor. 2005-07-15 21:01 mokhov * src/Makefile: Remove -version:1.4 from the compile flags as it turned out to be impractical if one doesn't have 1.4 JRE. 2005-07-15 19:45 mokhov * src/marf/math/: Matrix.java, Vector.java: Complete debugging of a few Matrix and Vector methods. Fix a major bug in Matrix.crop() that was "forgetting" the starting "top" index for the initial offset to copy the elements from. Fix Matrix.getDeterminant() to explicitly account for 0x0 and 1x1 matrix cases. Fix a few spelling mistakes in comments. Document the code more. Rename variables in crop() to avoid confusion between local and member variables. Remove dead commented-out code. Update Vector.getUnitVector() to use a safer normalize() call and remove code duplication. Add a new API of "Vector add(Vector)", and "Vector add(Vector, Vector)" that was logically missing in the Vector class. Add own Vector.clone() to avoid ClassCastExceptions with Matrix when cloning vectors. On this, I think the Matrix and Vector code is ready for the next release. 2005-07-13 21:00 mokhov * src/marf/util/Arrays.java: Document exception. 2005-07-13 20:59 mokhov * src/marf/util/Debug.java: Add a new debug(Object) method. 2005-07-13 20:57 mokhov * src/marf/math/: Matrix.java, Vector.java: Adjust Matrix class while testing its features. Make the Direction inner class 'public static' to be able to access it from outside; else the Direction-based methods of the class were pretty much useless for the external use. Fix some comments and add more javadoc tags. Add Shuxin as a co-author. Apply even more coding conventions. Add setAllRandom() method for testing matrices filled in with random values. Keep debugging getDeterminant() method, which was not handling special cases of 0x0 and 1x1 matrices. Something still remains broken in the general case I'd fix with the next commit. Perform some more code clean up along the way. Add a new divide(double) API to be consistent with the multiply(double) counterpart. In Vector, add a constructor Vector(double[], boolean) to be able to make transposed vectors directly. Make unit vectors i(), j(), and k() to be 'static'. 2005-07-13 15:53 mokhov * src/Makefile: Make sure the assertions are enabled and we explicitly set the source code to be 1.4-compliant. 2005-07-13 14:02 mokhov * src/Makefile: Require java 1.4 for javadocs, so that assert doesn't generate an error. 2005-07-11 09:15 mokhov * src/marf/math/Matrix.java: Format. 2005-07-09 22:44 susan_fan * src/marf/math/Matrix.java: add shear() 2005-07-09 14:00 mokhov * src/marf/math/Vector.java: Fix a comment and trim trailing blanks. 2005-07-09 13:17 mokhov * src/marf/math/Matrix.java: Cure the ClassCastException problem by providing multiply(Matrix, Vector) and multiply(Vector) calls. Trim trailing blanks and correct some odd formatting. 2005-07-08 19:22 mokhov * src/marf/util/OptionProcessor.java: Perform some minor documentary and cosmetic adjustments. 2005-07-08 16:32 mokhov * src/marf/nlp/util/NLPStreamTokenizer.java: Document the class thereby removing the javadoc warnings. 2005-07-08 16:28 mokhov * src/marf/MARF.java: Clean up a bit the main pipeline and let the exceptions propapate. Start numebring minor revisions of when certain members appeared. 2005-07-08 14:54 mokhov * src/marf/math/: Matrix.java, Vector.java: Brush up the Matrix and Vector code, make it more correct and robust and much better documented. Make the classes Serializable to they can be saved and restored if need be. Improve garbage collection of the temp copies of the arrays used. Add an assertion check for length and size. The API of the new translate()/rotate()/scale() calls is altered to return Vector instead, per my original spec; otherwise, there is no much change in the functionality. The functionality itself is yet to be extensively tested and shear() to be added. Correct a few small bugs in dimension settings and stuff. Apply more coding conventions properly. Fix some skewed formatting and spelling mistakes in comments. 2005-07-07 12:11 susan_fan * src/marf/math/: Matrix.java, Vector.java: add scale(), translate(), rotate() 2005-07-06 15:19 mokhov * src/marf/util/OptionProcessor.java: Relax private qualifier for data members and make it protected so derivatives, if there are any can make use of them. Document the new code even though it's not complete. Fix a spelling mistake in the name of a variable. 2005-07-06 14:53 mokhov * src/marf/util/comparators/: FrequencyComparator.java, RankComparator.java: Clear out javadoc warnings in comparators. 2005-07-03 22:17 mokhov * src/marf/util/OptionProcessor.java: Begin work on OptionProcessor allowing option=value type of options. For this declare OptionsHashtable and Option classes and make marginal use of them. As things stand, there is no change in functionality, except for detecting "dangling" "=" option. Replace if(debug)-print() chains with Debug.debug() calls making code cleaner. A lot more work is to be done to complete the task, but this this the necessary beginning. 2005-07-03 21:06 mokhov * doc/src/tex/installation.tex: Further massage install.tex and get rid of remnant SGML PG tags. Now will need to fill in our content entirely as well as sync with the INSTALL file. 2005-07-03 20:28 mokhov * doc/src/tex/: best-score.tex, stats-date.tex, stats.tex: Update the stats with Shuxin's samples. 2005-07-03 20:16 mokhov * doc/src/tex/data.tex: Add Shuxin and tab the source table nicely. 2005-07-03 20:00 mokhov * doc/src/tex/test-wave-loader.tex: Perform 2nd marginal editorialization, mostly merging paras. 2005-07-03 19:56 mokhov * doc/src/tex/: apps.tex, math-test-app.tex, test-loaders.tex: Perform marginal editorializing of TestLoaders and add it to the Apps chapter. Add somehow missed short description of MathTestApp. Add 3 short sections describing other usages of MARF outside the MARF realm. 2005-07-03 18:59 mokhov * doc/src/styles/styles.tex: Add a new abbreviation I happened to use in text. 2005-07-03 18:55 mokhov * doc/src/tex/report.bib: Sync with my main bib: correct spelling of MARF, add my "techreports" on GIPSY and refs to Tomcat, JSP, and Servlets. 2005-07-03 18:10 mokhov * manifest.mf: Remove DOS EOLs. 2005-07-03 05:18 susan_fan * doc/src/tex/test-loaders.tex: add test-loaders.tex 2005-06-22 17:44 mokhov * src/marf/util/: Arrays.java, Matrix.java: Perform some minor editorializing of the code and comments. Fix a few English/spelling mistakes of my own and not so. Minor corrections to javdocs and naming. 2005-06-22 16:13 susan_fan * src/marf/util/: Arrays.java, Matrix.java: Adjust class comment, which is missing a sentence. Fix of @return; fix indentation of /**. 2005-06-21 19:31 susan_fan * src/marf/util/Arrays.java: Add binarySearch() wrapper. 2005-06-21 14:49 mokhov * src/Makefile: Symlink automatically marf.jar to the recently built versionned jar. Per my recent trick in the GIPSY built. 2005-06-21 10:30 susan_fan * src/marf/util/Arrays.java: copy() between different types of arrays 2005-06-21 08:32 mokhov * Makefile, manifest.mf: Perform some minor clean ups while porting this part of the Build System to my thesis work on GIPSY. 2005-06-20 17:45 mokhov * src/marf/Storage/StorageManager.java: Invent new member variable bDumpOnNotFound -- to indicate whether we want an emty file to be created if it does not exist during restore. Practice proves, the uncoditional creation on-file-not-found event is not always desired or sensical, so provide this means for the client code to be able to turn it off. The feature is on by default and can be effected via a set three new constructors or the enableOnNotFound() method. While at it, make most of the methods synchronized. While I don't have a practical example at hand for the case when multiple threads use the same StorageManager instance to dump/restore stuff, there could be one one day, so as a preventive measure do it now. 2005-06-20 01:36 mokhov * src/marf/util/BaseThread.java: Implement new API of getTarget() that allows retrieval of the Runnable target set during construction. Proved to be usful to get a hold back on what was possibly anonymous created. 2005-06-20 01:34 mokhov * src/marf/util/ExpandedThreadGroup.java: Cosmetic. 2005-06-20 00:55 mokhov * src/marf/util/ExpandedThreadGroup.java: Prevent starting already started threads. Another bug exposed by the GIPSY's GIPC. 2005-06-20 00:28 mokhov * src/marf/util/BaseThread.java: Guard against null name of a thread. A bug was exposed and traced in the GIPSY. 2005-06-19 21:37 mokhov * src/marf/util/Arrays.java: Peform some editorializing of code and comments. Begin a new series for copy()-conversion methods between arrays of different types. 2005-06-19 21:35 mokhov * doc/: Makefile, src/Makefile: Correct copyright year. 2005-06-19 12:08 mokhov * src/marf/util/MARFException.java: Add our own toString() to make sure our own strMessage is returned. Minor clean up in the default constructor. 2005-06-18 22:02 susan_fan * src/marf/util/Arrays.java: Using wrapper call to give equals(), sort(), fill(),and arrayToVector methods different parameters. 2005-06-16 16:55 mokhov * src/marf/util/Arrays.java: Largely update the class comments and perform some minor editorializing within. 2005-06-16 16:24 susan_fan * src/marf/util/Arrays.java: Using wrapper call to give copy() methods different parameters; add comments according to Java Doc comments. 2005-06-16 15:58 mokhov * src/: test.java, marf/MARF.java, marf/Classification/Classification.java, marf/Classification/ClassificationException.java, marf/Classification/Distance/ChebyshevDistance.java, marf/Classification/Distance/DiffDistance.java, marf/Classification/Distance/Distance.java, marf/Classification/Distance/EuclideanDistance.java, marf/Classification/Distance/MahalanobisDistance.java, marf/Classification/Distance/MinkowskiDistance.java, marf/Classification/Markov/Markov.java, marf/Classification/NeuralNetwork/Layer.java, marf/Classification/NeuralNetwork/NeuralNetwork.java, marf/Classification/NeuralNetwork/Neuron.java, marf/Classification/RandomClassification/RandomClassification.java, marf/Classification/Stochastic/MaxProbabilityClassifier.java, marf/Classification/Stochastic/Stochastic.java, marf/Classification/Stochastic/ZipfLaw.java, marf/FeatureExtraction/FeatureExtraction.java, marf/FeatureExtraction/FeatureExtractionException.java, marf/FeatureExtraction/Cepstral/Cepstral.java, marf/FeatureExtraction/F0/F0.java, marf/FeatureExtraction/FFT/FFT.java, marf/FeatureExtraction/LPC/LPC.java, marf/FeatureExtraction/MinMaxAmplitudes/MinMaxAmplitudes.java, marf/FeatureExtraction/RandomFeatureExtraction/RandomFeatureExtraction.java, marf/FeatureExtraction/Segmentation/Segmentation.java, marf/Preprocessing/Preprocessing.java, marf/Preprocessing/PreprocessingException.java, marf/Preprocessing/Dummy/Dummy.java, marf/Preprocessing/Dummy/Raw.java, marf/Preprocessing/Endpoint/Endpoint.java, marf/Preprocessing/FFTFilter/BandpassFilter.java, marf/Preprocessing/FFTFilter/FFTFilter.java, marf/Preprocessing/FFTFilter/HighFrequencyBoost.java, marf/Preprocessing/FFTFilter/HighPassFilter.java, marf/Preprocessing/FFTFilter/LowPassFilter.java, marf/Stats/Ngram.java, marf/Stats/Observation.java, marf/Stats/ProbabilityTable.java, marf/Stats/StatisticalObject.java, marf/Stats/StatsCollector.java, marf/Stats/WordStats.java, marf/Stats/StatisticalEstimators/GLI.java, marf/Stats/StatisticalEstimators/KatzBackoff.java, marf/Stats/StatisticalEstimators/MLE.java, marf/Stats/StatisticalEstimators/SLI.java, marf/Stats/StatisticalEstimators/StatisticalEstimator.java, marf/Stats/StatisticalEstimators/Smoothing/AddDelta.java, marf/Stats/StatisticalEstimators/Smoothing/AddOne.java, marf/Stats/StatisticalEstimators/Smoothing/GoodTuring.java, marf/Stats/StatisticalEstimators/Smoothing/Smoothing.java, marf/Stats/StatisticalEstimators/Smoothing/WittenBell.java, marf/Storage/Cluster.java, marf/Storage/Database.java, marf/Storage/FeatureSet.java, marf/Storage/MARFAudioFileFormat.java, marf/Storage/ModuleParams.java, marf/Storage/Result.java, marf/Storage/ResultSet.java, marf/Storage/Sample.java, marf/Storage/SampleLoader.java, marf/Storage/StorageException.java, marf/Storage/StorageManager.java, marf/Storage/TrainingSample.java, marf/Storage/TrainingSet.java, marf/Storage/Loaders/AIFFCLoader.java, marf/Storage/Loaders/AIFFLoader.java, marf/Storage/Loaders/AULoader.java, marf/Storage/Loaders/MIDILoader.java, marf/Storage/Loaders/MP3Loader.java, marf/Storage/Loaders/SNDLoader.java, marf/Storage/Loaders/SineLoader.java, marf/Storage/Loaders/ULAWLoader.java, marf/Storage/Loaders/WAVLoader.java, marf/gui/Spectrogram.java, marf/gui/SpectrogramPanel.java, marf/gui/WaveGrapher.java, marf/gui/WaveGrapherPanel.java, marf/gui/util/BorderPanel.java, marf/gui/util/ColoredStatusPanel.java, marf/gui/util/SmartSizablePanel.java, marf/math/Algorithms.java, marf/math/MathException.java, marf/math/Matrix.java, marf/math/Vector.java, marf/nlp/Collocations/ChiSquareTest.java, marf/nlp/Collocations/CollocationWindow.java, marf/nlp/Collocations/TTest.java, marf/nlp/Parsing/ClassSymTabEntry.java, marf/nlp/Parsing/CodeGenerator.java, marf/nlp/Parsing/Compiler.java, marf/nlp/Parsing/CompilerError.java, marf/nlp/Parsing/FuncSymTabEntry.java, marf/nlp/Parsing/GenericLexicalAnalyzer.java, marf/nlp/Parsing/LexicalAnalyzer.java, marf/nlp/Parsing/LexicalError.java, marf/nlp/Parsing/Parser.java, marf/nlp/Parsing/ProbabilisticParser.java, marf/nlp/Parsing/SemanticAnalyzer.java, marf/nlp/Parsing/SemanticError.java, marf/nlp/Parsing/SymDataType.java, marf/nlp/Parsing/SymTabEntry.java, marf/nlp/Parsing/SymbolTable.java, marf/nlp/Parsing/SyntaxError.java, marf/nlp/Parsing/Token.java, marf/nlp/Parsing/TokenSubType.java, marf/nlp/Parsing/TokenType.java, marf/nlp/Parsing/TransitionTable.java, marf/nlp/Parsing/VarSymTabEntry.java, marf/nlp/Parsing/GrammarCompiler/Grammar.java, marf/nlp/Parsing/GrammarCompiler/GrammarAnalyzer.java, marf/nlp/Parsing/GrammarCompiler/GrammarCompiler.java, marf/nlp/Parsing/GrammarCompiler/GrammarElement.java, marf/nlp/Parsing/GrammarCompiler/GrammarTokenType.java, marf/nlp/Parsing/GrammarCompiler/NonTerminal.java, marf/nlp/Parsing/GrammarCompiler/ProbabilisticGrammarAnalyzer.java, marf/nlp/Parsing/GrammarCompiler/ProbabilisticGrammarCompiler.java, marf/nlp/Parsing/GrammarCompiler/ProbabilisticGrammarTokenType.java, marf/nlp/Parsing/GrammarCompiler/ProbabilisticRule.java, marf/nlp/Parsing/GrammarCompiler/Rule.java, marf/nlp/Parsing/GrammarCompiler/SemanticToken.java, marf/nlp/Parsing/GrammarCompiler/Terminal.java, marf/nlp/Stemming/Stemming.java, marf/nlp/Stemming/StemmingEN.java, marf/nlp/util/NLPStreamTokenizer.java, marf/util/Arrays.java, marf/util/BaseThread.java, marf/util/ByteUtils.java, marf/util/Debug.java, marf/util/ExpandedThreadGroup.java, marf/util/FreeVector.java, marf/util/InvalidSampleFormatException.java, marf/util/Logger.java, marf/util/MARFException.java, marf/util/Matrix.java, marf/util/NotImplementedException.java, marf/util/OptionProcessor.java, marf/util/SortComparator.java, marf/util/comparators/FrequencyComparator.java, marf/util/comparators/RankComparator.java, marf/util/comparators/ResultComparator.java, tools/revision-check.sh: The Revision Project Update: Perform a massive rename of the common, but not-too-well-thought-of getRevision() call to getMARFSourceCodeRevision(). The reason is the former is very likely to create conflicts in the user code that extends from one or more MARF classes as getRevision() can be quite a common name. I've been the first one bitten by this, so luckily we change it earlier than later. Thus, rename it to something more MARF-specific that nobody else is likely to use. 2005-06-16 14:25 mokhov * src/marf/util/Matrix.java: Properly document the class and apply coding conventions. 2005-06-15 21:55 mokhov * src/marf/util/Logger.java: Simplify our coding a bit by using the FileOutputStream(String) constructor. 2005-06-15 20:54 mokhov * src/marf/gui/: Spectrogram.java, SpectrogramPanel.java, WaveGrapher.java, WaveGrapherPanel.java, util/ColoredStatusPanel.java, util/SmartSizablePanel.java: Eliminate javadoc warnings by documenting more or less all public members. Apply coding conventions. 2005-06-15 20:51 mokhov * src/marf/util/Logger.java: Now that I use the Logger, complete some of its missing methods to enable/disable timestamps, log direction with validation, filenames, etc. Make the class properly synchronized should it be accessed by multiple threads. Document the class. Apply coding coventions. 2005-06-14 20:57 mokhov * src/marf/: MARF.java, Classification/Classification.java, Classification/Distance/ChebyshevDistance.java, Classification/Distance/DiffDistance.java, Classification/Distance/Distance.java, Classification/Distance/EuclideanDistance.java, Classification/Distance/MahalanobisDistance.java, Classification/Distance/MinkowskiDistance.java, Classification/Markov/Markov.java, Classification/NeuralNetwork/NeuralNetwork.java, Classification/RandomClassification/RandomClassification.java, Classification/Stochastic/MaxProbabilityClassifier.java, Classification/Stochastic/Stochastic.java, Classification/Stochastic/ZipfLaw.java, FeatureExtraction/FeatureExtraction.java, FeatureExtraction/Cepstral/Cepstral.java, FeatureExtraction/F0/F0.java, FeatureExtraction/FFT/FFT.java, FeatureExtraction/LPC/LPC.java, FeatureExtraction/MinMaxAmplitudes/MinMaxAmplitudes.java, FeatureExtraction/RandomFeatureExtraction/RandomFeatureExtraction.java, FeatureExtraction/Segmentation/Segmentation.java, Preprocessing/IPreprocessing.java: Advace Interface Plugin Framework for Classification, Feature Extraction, and Preprocessing. All class references of thereof were replaced by their respective interfaces and this time including MARF. Define constants in MARF for user-defined plugins. This is the next, but not at all last step in the plugin framework -- will need to be able to set and dynamically instantiate user-ser plugins via Class.forName() and Class.newInstance() methods. Adjust some code along the way to fit the need (e.g. IPreprocessing was lacking getSample() method), apply more of coding conventions and correct the remaining javadoc warnings in all these modules. 2005-06-14 18:41 mokhov * src/marf/util/OptionProcessor.java: Only count the option as invalid if it's not blank. This infrequent scenario is possible when argv is generated programmatically and not from a command line, and as such should simply be ignored. 2005-06-14 18:19 mokhov * src/marf/util/OptionProcessor.java: Introduce new API calls getOption(String, boolean) and getOption(int, boolean) to allow proceeding on missing option by either returning UNDEF or "" constants. Proved to be useful in the Regression app with default args in the GIPSY and will certainly be in MARF's. Remove unused iOption member variable and add logically required but previously missing convenince calls for completeness, such as getValidOptions(), isValidOption(), isInvalidOption(). Massage HTML of some javadocs a little. 2005-06-13 18:14 mokhov * src/marf/nlp/Parsing/GrammarCompiler/GrammarAnalyzer.java: Rename the contant in accordance with the coding standards. 2005-06-12 19:09 mokhov * src/: test.java, marf/Classification/IClassification.java, marf/Classification/Stochastic/MaxProbabilityClassifier.java, marf/FeatureExtraction/IFeatureExtraction.java, marf/Preprocessing/IPreprocessing.java, marf/Stats/StatisticalEstimators/IStatisticalEstimator.java, marf/Stats/StatisticalEstimators/Makefile, marf/Stats/StatisticalEstimators/StatisticalEstimator.java, marf/Stats/StatisticalEstimators/Smoothing/ISmoothing.java, marf/Stats/StatisticalEstimators/Smoothing/Makefile, marf/Stats/StatisticalEstimators/Smoothing/Smoothing.java, marf/Storage/IDatabase.java, marf/Storage/ISampleLoader.java, marf/Storage/IStorageManager.java, marf/nlp/Stemming/IStemming.java, marf/nlp/Stemming/Makefile, marf/nlp/Stemming/Stemming.java: Towards support for exentsions, add three more interfaces: IStatisticalEstimator, ISmoothing, IStemming and make corresponding modules implement them. For statistical estimators rename P(), get/setLang() methods to p() and get/setLanguage() at the same time, either more readable or coding conventions-compliant. Rename all INTERFACE_CODE_REVISION constants to MARF_INTERFACE_CODE_REVISION to avoid most conflicts with the deriving code. Add all interfaces to the Revision Project. 2005-06-11 18:21 mokhov * src/marf/FeatureExtraction/IFeatureExtraction.java: Add getFeaturesArray() as any plugin, if there will be any, will need to implement that. 2005-06-11 18:20 mokhov * src/marf/MARF.java: Bump minor revision. 2005-06-11 16:35 mokhov * src/marf/Storage/: IStorageManager.java, StorageManager.java: Since the extensions map array is really a constant, rename it according to the coding standards. 2005-06-11 15:35 mokhov * src/marf/util/BaseThread.java: Fix a major bug in BaseThread related to the assumption of constructor this() chooses as a target. Since this() was picking up always the BaseThread(ExpandedThreadGroup, Runnable, String) constructor (at least in Java 1.4), it was very easy to get a NullPointerException if the first parameter is null. The other candidate constructor BaseThread(ThreadGroup, Runnable, String) has never been chosen as a target for this() invocation. Dicovered while working on GIPSY's GEE. 2005-06-11 14:44 mokhov * src/marf/util/MARFException.java: Clean up code a little and add a default constructor. Enforce more coding conventions. 2005-06-11 14:20 mokhov * src/marf/util/BaseThread.java: Make sure the operations releted to the static counter are themselves thread-safe. 2005-06-11 14:12 mokhov * src/marf/math/Algorithms.java: Fix a typo in a comment. 2005-06-11 00:35 mokhov * src/marf/util/BaseThread.java: Correct a little bug of not setting TID properly in the BaseThread(ExpandedThreadGroup, Runnable, String) constructor. 2005-06-10 23:24 mokhov * src/marf/util/OptionProcessor.java: Provide a symmetric implementation of getOption(int) to that of getOption(String) to be able to retrieve the option keys (strings). On the way update/clarify some comments. 2005-06-10 22:45 mokhov * src/marf/util/Debug.java: Add a new method debug(Class, String) to do initial tracing source of messages. 2005-06-10 22:44 mokhov * src/marf/MARF.java: Add commans in the config output for better readability. 2005-06-10 21:53 mokhov * src/marf/util/Debug.java: Document the class and add two new argumentless convenience methods enableDebug() and debug(). 2005-06-10 21:36 mokhov * src/marf/util/Arrays.java: Update comments of the constructor and a couple of routines. 2005-06-10 21:25 mokhov * src/marf/Classification/: Markov/Markov.java, NeuralNetwork/Layer.java, NeuralNetwork/NeuralNetwork.java, NeuralNetwork/Neuron.java, Stochastic/MaxProbabilityClassifier.java, Stochastic/Stochastic.java, Stochastic/ZipfLaw.java: Clear all classification modules of missing javadoc warnings. 2005-06-10 20:48 mokhov * src/marf/MARF.java: Fix a small bug in the error message reporting wrong upper boundary of available preprocessing methods. This is related to the bug I developed the patch for from the previous release (0.3.0-devel-20040614) which unfortunatelly slipped through. Hopefully, this is not critical compared to the original bug. 2005-06-10 16:05 mokhov * src/marf/Classification/Makefile: Correctly escape EOL in the .class file list. 2005-06-10 16:03 mokhov * src/: test.java, marf/Preprocessing/IPreprocessing.java: Add newly created interfaces to the Revision Project. 2005-06-10 16:00 mokhov * src/marf/: Classification/IClassification.java, Classification/Makefile, FeatureExtraction/Makefile: Add interface to targets and correct some formatting. 2005-06-10 15:59 mokhov * src/marf/Preprocessing/: IPreprocessing.java, Makefile, Preprocessing.java: Introduce IPreprocessing for extensions. 2005-06-10 15:49 mokhov * src/marf/FeatureExtraction/: FeatureExtraction.java, IFeatureExtraction.java, Makefile: Introduce a notion of IFeatureExtraction for extensions. 2005-06-10 15:39 mokhov * src/marf/Classification/Makefile: Make Makefile be aware of IClassification. 2005-06-10 15:36 mokhov * src/marf/Storage/: IDatabase.java, ISampleLoader.java, IStorageManager.java: Strip out redundant public/static/final modifiers that are assumed in interfaces. 2005-06-10 15:34 mokhov * src/marf/Classification/: Classification.java, IClassification.java: Introduce a notion of IClassification interface in case there are some extensions of MARF out there wishing to exist and extend. Have the genereric Classification module implement it. 2005-06-09 17:32 mokhov * doc/pipeline.ppt: Add initial source of the MARF pipeline. 2005-06-06 19:26 mokhov * src/Makefile: Make sure COPYRIGHT is added in the distro build. 2005-06-06 17:42 mokhov * ChangeLog, src/tools/cvs2cl.sh: Make cvs2cl.sh to use MAIN and precede ./cvs2cl.pl with a "./". Update ChangeLog from all these commit logs -- will need to clean before the final. 2005-06-06 15:30 mokhov * src/tools/stats2latex.pl: Correct a spelling mistake. 2005-06-06 15:08 mokhov * doc/src/tex/: appendix.tex, architecture.tex, diff-distance.tex, experimentation.tex, f0.tex, gui.tex, history.tex, intro.tex, minmax.tex, nnet.tex, raw.tex, results.tex, sample-formats.tex, spectrogram.tex, stats.tex, test-fft.tex, test-filters.tex, test-lpc.tex, test-wave-loader.tex, training.tex, wave-grapher.tex: Primarily run a basic spellcheck. Add some Revision entries and \api and \tool commands. Update the option description of SpeakerIdenApp. Correct some results-related data. Add a few more index entries. 2005-06-06 14:18 mokhov * doc/src/tex/installation.tex: Clean up remnant PG stuff. 2005-06-06 14:02 mokhov * TODO: Add more marf.util stuff to complete for the next release. 2005-06-06 13:58 mokhov * doc/src/tex/report.tex: Reflect the true version in the title as well and keep the Group as the author. 2005-06-06 13:52 mokhov * doc/src/tex/sources.tex: Fix misspelled \index. 2005-06-06 13:51 mokhov * doc/src/tex/report.tex: Spell out full version of todays release. 2005-06-06 13:50 mokhov * doc/src/tex/sources.tex: Add a link to Coding Conventions. Use more of the new commands. 2005-06-06 13:38 mokhov * doc/src/tex/report.tex: Fix include. 2005-06-06 13:35 mokhov * README, HISTORY, INSTALL, TODO, doc/src/tex/installation.tex, doc/src/tex/report.tex: Perform update of the docs to more recent state of affairs. Mark a few TODO items in them. Account for dangling installation.tex file. All of these will require more work, but this will happen in the next release. 2005-06-06 13:06 mokhov * doc/src/tex/: build.tex, report.tex: Add Build System Chapter stub. 2005-06-06 12:43 mokhov * doc/src/tex/: output.tex, sampleloading.tex: Remove DOS EOLs. 2005-06-06 12:42 mokhov * doc/src/tex/history.tex: Massage history a bit. Will need to integrate with HISTORY file later. 2005-06-06 10:33 mokhov * src/tools/stats2latex.pl: Correct shebang and add introductory comments. 2005-06-06 07:32 mokhov * src/tools/cvs2cl.sh: Add wrapper script with default options for MARF. 2005-06-06 01:09 mokhov * TODO: Add a couple more items for SpeakerIdentApp. 2005-06-06 01:04 mokhov * doc/src/tex/: architecture.tex, conclusions.tex, data.tex, experimentation.tex: Update/correct a few things WRT to the upcoming release. Update counts and wording in Arch and Conlclusion. Update dir. structure to smth more resembling reality -- will need a script for that. Add a couple more $Revision: 1.5 $ and index entries. 2005-06-05 21:45 mokhov * doc/src/tex/: best-score.tex, stats-date.tex, stats.tex: Update the stats data from SpeakersIdentApp's run. 2005-06-05 21:18 mokhov * TODO, doc/src/tex/raw.tex, doc/src/tex/storage.tex, doc/src/tex/training.tex: Account for two more dangling .tex files. Cosmetic fixes elsewhere. 2005-06-05 20:03 mokhov * doc/src/tex/sample-formats.tex: Massage sample-formats.tex slightly. Will need more work on it later. 2005-06-05 20:02 mokhov * doc/src/tex/: sampleloading.tex, storage.tex: Add $Revision: 1.5 $, EOF, and account for sample-formats.tex. 2005-06-05 19:39 mokhov * src/marf/util/Logger.java: Add missing imports. 2005-06-05 19:36 mokhov * src/marf/util/Logger.java: Apparently, PrintSream(String) does not exist in Java 1.4, so create a workaround for it. 2005-06-04 21:16 mokhov * Makefile.global, src/Makefile, src/marf/Makefile, src/marf/Classification/Makefile, src/marf/Classification/Distance/Makefile, src/marf/Classification/Markov/Makefile, src/marf/Classification/NeuralNetwork/Makefile, src/marf/Classification/RandomClassification/Makefile, src/marf/Classification/Stochastic/Makefile, src/marf/FeatureExtraction/Makefile, src/marf/FeatureExtraction/Cepstral/Makefile, src/marf/FeatureExtraction/F0/Makefile, src/marf/FeatureExtraction/FFT/Makefile, src/marf/FeatureExtraction/LPC/Makefile, src/marf/FeatureExtraction/MinMaxAmplitudes/Makefile, src/marf/FeatureExtraction/RandomFeatureExtraction/Makefile, src/marf/FeatureExtraction/Segmentation/Makefile, src/marf/Preprocessing/Makefile, src/marf/Preprocessing/Dummy/Makefile, src/marf/Preprocessing/Endpoint/Makefile, src/marf/Preprocessing/FFTFilter/Makefile, src/marf/Stats/Makefile, src/marf/Stats/StatisticalEstimators/Makefile, src/marf/Stats/StatisticalEstimators/Smoothing/Makefile, src/marf/Storage/Makefile, src/marf/Storage/Loaders/Makefile, src/marf/gui/Makefile, src/marf/gui/util/Makefile, src/marf/math/Makefile, src/marf/nlp/Makefile, src/marf/nlp/Collocations/Makefile, src/marf/nlp/Parsing/Makefile, src/marf/nlp/Parsing/GrammarCompiler/Makefile, src/marf/nlp/Stemming/Makefile, src/marf/nlp/util/Makefile, src/marf/util/Makefile, src/marf/util/comparators/Makefile: Fully implement the Makefile Build System for all of MARF, finally. 2005-06-04 21:15 mokhov * TODO: Update TODO WRT to the stuff completed more. Add new items, such as Schema, DUMP_SQL, and DUMP_HTML. Add previously missing MathTestApp. Update GUI items: > - MathTestApp > - Add GUI > - Release. > * Make executable .jar > 124d128 < - Individually 125a130 > ++- Individually 141c146 < +--- A Makefile per directory --- > * A Makefile per directory 154c159 < - Apps jars --- > +++-- Apps jars 186d190 < - High-pass filter with high-frequency boost together {0.3.0} 191a196 > * High-pass filter with high-frequency boost together {0.3.0} 298a304 > - shear 305,306c311 < * Fix filename stuff (module_dirname to module_filename) < - Make it a BorderPanel --- > +----- Implement SpectrogramPanel 307a313 > * Fix filename stuff (module_dirname to module_filename) 309c315 < - Make it a BorderPanel --- > +----- Implement WaveGrapherPanel 337c343 < - Exceptions {0.3.0} --- > - MARF Exceptions Framework {0.3.0} 346,349c352 < * Add marf.util.Debug module. < * marf.util.Debug.debug() < * Replicate MARF.debug() --> marf.util.Debug.debug() < - OptionProcessor --- > +- OptionProcessor 352a356,358 > * Add marf.util.Debug module. > * marf.util.Debug.debug() > * Replicate MARF.debug() --> marf.util.Debug.debug() 361,363c367,380 < +++- DUMP_BINARY (w/o compression) {0.3.0} < - DUMP_XML {?.?.?} < - DUMP_CSV {?.?.?} --- > - Implement > - Schema (as in DB for exports) > - Common attribute names for > - SQL > - XML > - HTML > - CSV > - Metadata / DDL > - Dump/Restore Types > +++- DUMP_BINARY (w/o compression) {0.3.0} > - DUMP_XML {?.?.?} > - DUMP_CSV {?.?.?} > - DUMP_HTML {?.?.?} > - DUMP_SQL {?.?.?} 368c385 < - convertability: bin.gzip <-> bin <-> csv <-> xml --- > - convertability: gzbin <-> bin <-> csv <-> xml <-> html <-> sql 442c459 < - Add module --- > * Add module 446,448c463,465 < - stats2latex < - cvs2cl < - cvs2html --- > * stats2latex > * cvs2cl > * cvs2html 465,467d481 < +- fix javadoc 1.4/1.5 warnings < * fix Appendix < * split-out bibliography 472,473d485 < * ChangeLog < * report components [serge] 495d506 < * index 498a510,515 > * fix javadoc 1.4/1.5 warnings > * fix Appendix > * split-out bibliography > * index > * ChangeLog > * report components [serge] 503c520 < - ChanageLog --- > +- ChanageLog 2005-06-04 20:27 mokhov * src/marf/nlp/Stemming/: Stemming.java, StemmingEN.java: Document thereby removing javadoc warnings. 2005-06-04 20:23 mokhov * src/marf/nlp/util/NLPStreamTokenizer.java: Expand imports. 2005-06-04 20:13 mokhov * src/marf/Preprocessing/FFTFilter/BandpassFilter.java: Add missing javadocs and remove unused import. 2005-06-04 19:52 mokhov * src/marf/Preprocessing/Dummy/Dummy.java: Add missing javadocs. 2005-06-04 19:52 mokhov * src/marf/Preprocessing/Endpoint/Endpoint.java: Correct/add missing javadocs. Remove now-implemented leftover of StorageManager API. 2005-06-04 19:51 mokhov * src/marf/util/Arrays.java: Implement copy(int[], int[], int). Add/adjust comments elsewhere. 2005-06-04 13:54 mokhov * TODO: Update TODO to the more recent state of affairs WRT the five apps ready to be released and a few items in the framework. Move completed items down their hiearachies and uncompleted up. 2005-06-04 13:49 mokhov * .classpath: Add CVS exlusion filter. 2005-06-04 12:05 mokhov * src/tools/: cvs2cl.pl, cvs2html.pl, stats2latex.pl: Add CVS Log to ChangeLog and CVS Log to HTML tools. Add my tool to convert stats to LaTeX format. 2005-06-04 00:05 mokhov * Makefile: Do NOT remove distro dir on maintainer-clean for now, else the distro build erases it. 2005-06-03 23:54 mokhov * src/marf/: Preprocessing/Preprocessing.java, nlp/Parsing/LexicalAnalyzer.java, nlp/Parsing/Parser.java, nlp/Parsing/Token.java, nlp/Parsing/TransitionTable.java, nlp/Parsing/GrammarCompiler/Grammar.java, util/Arrays.java: Correct comments javadoc was complaining about. 2005-06-03 21:22 mokhov * src/marf/Storage/: Database.java, IDatabase.java: Add/correct some missing/incorrect javadoc comments. 2005-06-03 13:09 mokhov * src/marf/Storage/: ISampleLoader.java, MARFAudioFileFormat.java, Sample.java, SampleLoader.java, Loaders/SineLoader.java, Loaders/WAVLoader.java: Provide first complete implementaion of MARFAudioFileFormat with needed extensions of AudioFileFormat and AudioFileFormat.Type to support additional formats. Move the enumeration constants of formats and the getAudioFormat() and setAudioFormat() API from Sample. Renumber them to start with 700 for the the same reasons the MARF's constants were renumbered. Update setAudioFormat() to also uptdate internal Type instance. Re-implement the default constructor to have a meaning at least as far as our WAVE loading concerned. Add a few more logical constructors related to MARF and overriding the protected one of the parent. Add static instances of SINE, MP3, ULAW, and MIDI of Type. Document all class members. Reimplement get/setAudioFormat() API of Sample through MARFAudioFileFormat now. Move constants DEFAULT_SAMPLE_BIT_SIZE and DEFAULT_CHANNELS all the way up to ISampleLoader as intended to be used by most SampleLoader implementations. Move variables iRequiredBitSize and iRequiredChannels to SampleLoader as they seem to be pertinent not only to WAVLoader anymore. Apply coding conventions in places. Document the WAVLoader code a bit more. 2005-06-03 13:06 mokhov * src/marf/MARF.java: Renumber enumerations of modules so that they don't overlap and have well enough leeway for expansion. This change was prompted by a tendancy I noticed while reviewing TestFilters' option processing. While there was no immediate bug there, but it was just waiting to happen -- using different constants for different module types and subtypes that all have begun with 0 -- evetually this would confuse option processing as two different options would map to the same value causing one of them to be lost. There is a great potention of error in other areas due to this. Now all preprocessing methods begin with a 100, feature extraction with 300, and classification with 500. Make the UNSET constant public. In a semi-related change, update sample file format enumeration to be the same as of newly implemented MARFAudioFileFormat, so there are no discrepancies in the constant values. Add a few missing @since tags and correct erroneus comments along the way. Bump MINOR_REVISION to 2. Have to use it some day. 2005-06-03 12:37 mokhov * src/test.java: Printout the interface revision information the way it's done for classes. Add a few missing @since tags. 2005-06-02 20:59 mokhov * src/marf/Storage/Loaders/WAVLoader.java: Clean up exception handling. 2005-06-02 20:58 mokhov * src/marf/Storage/Sample.java: Add default chunk size constant to be used internally and by the apps to avoid harcoding. 2005-06-02 12:07 mokhov * src/marf/FeatureExtraction/MinMaxAmplitudes/MinMaxAmplitudes.java: Correct a typo in a comment. 2005-06-02 09:05 mokhov * src/Makefile: Remove obsolete comments and make the install target more sensical. 2005-06-01 23:51 mokhov * doc/src/tex/: nlp.tex, report.tex: Add stub NLP chapter. 2005-06-01 23:33 mokhov * src/marf/FeatureExtraction/MinMaxAmplitudes/MinMaxAmplitudes.java: Add a data debug message. Correct an off-by-one bug in copying of the maximums. 2005-06-01 22:44 mokhov * doc/src/tex/: feature-extraction.tex, minmax.tex: Add initial description of the Min/Max Amplitudes classifier. 2005-06-01 22:32 mokhov * doc/src/tex/f0.tex: Add Revision and an index entry. 2005-06-01 22:23 mokhov * doc/src/tex/: preprocessing.tex, raw.tex: Add a brief description of the Raw preprocessing module with Revisions. 2005-06-01 22:05 mokhov * doc/src/tex/: classification.tex, diff-distance.tex: Add a first cut of the Diff Distance section. Add Revision to Classification. 2005-06-01 22:04 mokhov * doc/src/tex/mahalanobis-distance.tex: Add subsections and Revision. Correct the last para about the state of the implementation. 2005-06-01 21:49 mokhov * src/marf/Classification/Distance/: ChebyshevDistance.java, DiffDistance.java: Clean up one import and incorrect javadoc params. 2005-06-01 21:12 mokhov * src/marf/MARF.java: Since MARF.debug() is gone, remove the DEBUG flag as well. All the uses of the two have been updated everywhere to use the marf.util.Debug class instead. 2005-06-01 15:42 mokhov * src/marf/util/Matrix.java: Just like for FreeVector, methods of Matrix must be synchronized. 2005-06-01 15:38 mokhov * src/marf/util/: Arrays.java, BaseThread.java, ByteUtils.java, Debug.java, ExpandedThreadGroup.java, FreeVector.java, InvalidSampleFormatException.java, Logger.java, MARFException.java, Matrix.java, NotImplementedException.java, OptionProcessor.java, SortComparator.java, comparators/FrequencyComparator.java, comparators/RankComparator.java, comparators/ResultComparator.java: Complete code review preparation for the upcoming 0.3.0-devel release with util. Specifically, add/correct some javadoc comments. Add missing author/version/since tags. Fix formatting a little. Make Debug a subclass of Logger. Make all methods of Debug synchronized to be thread-safe. Mark all methods of FreeVector synchronized as well, just like its parent's. Expand a few imports. 2005-06-01 15:30 mokhov * src/marf/Stats/: Ngram.java, Observation.java, ProbabilityTable.java, StatisticalObject.java, StatsCollector.java, WordStats.java, StatisticalEstimators/GLI.java, StatisticalEstimators/KatzBackoff.java, StatisticalEstimators/MLE.java, StatisticalEstimators/SLI.java, StatisticalEstimators/StatisticalEstimator.java, StatisticalEstimators/Smoothing/AddDelta.java, StatisticalEstimators/Smoothing/AddOne.java, StatisticalEstimators/Smoothing/GoodTuring.java, StatisticalEstimators/Smoothing/Smoothing.java, StatisticalEstimators/Smoothing/WittenBell.java: Prepare Stats for the upcoming 0.3.0-devel release. Specifically, Add/correct class javadoc comments. Add author/version/since tags. Fix formatting a little. Expand imports. Move Serializable up to Statistical object as all it derivatives need to be able to be serialized anyway. 2005-06-01 15:21 mokhov * src/marf/Storage/: Cluster.java, Database.java, ISampleLoader.java, ResultSet.java, TrainingSet.java: Correct some erroneous/missing javadoc comments, reported by Eclipse. Document a few things. Make Database to call super() in its constructor. 2005-06-01 01:35 mokhov * src/marf/nlp/: Parsing/ClassSymTabEntry.java, Parsing/CodeGenerator.java, Parsing/Compiler.java, Parsing/CompilerError.java, Parsing/FuncSymTabEntry.java, Parsing/GenericLexicalAnalyzer.java, Parsing/LexicalAnalyzer.java, Parsing/LexicalError.java, Parsing/Parser.java, Parsing/ProbabilisticParser.java, Parsing/SemanticAnalyzer.java, Parsing/SemanticError.java, Parsing/SymDataType.java, Parsing/SymTabEntry.java, Parsing/SymbolTable.java, Parsing/SyntaxError.java, Parsing/Token.java, Parsing/TokenSubType.java, Parsing/TokenType.java, Parsing/TransitionTable.java, Parsing/VarSymTabEntry.java, Parsing/GrammarCompiler/Grammar.java, Parsing/GrammarCompiler/GrammarAnalyzer.java, Parsing/GrammarCompiler/GrammarCompiler.java, Parsing/GrammarCompiler/GrammarElement.java, Parsing/GrammarCompiler/GrammarTokenType.java, Parsing/GrammarCompiler/NonTerminal.java, Parsing/GrammarCompiler/ProbabilisticGrammarAnalyzer.java, Parsing/GrammarCompiler/ProbabilisticGrammarCompiler.java, Parsing/GrammarCompiler/ProbabilisticGrammarTokenType.java, Parsing/GrammarCompiler/ProbabilisticRule.java, Parsing/GrammarCompiler/Rule.java, Parsing/GrammarCompiler/SemanticToken.java, Parsing/GrammarCompiler/Terminal.java, Stemming/Stemming.java, Stemming/StemmingEN.java, util/NLPStreamTokenizer.java: Prepare NLP stuff for the upcoming 0.3.0-devel release. Specifically, add author/version/since tags everywhere. Correct/adjust/add more comments. Correct some formatting and clean up code a bit. Expand/clean up imports in most places. 2005-05-31 21:57 mokhov * src/marf/math/: Algorithms.java, Matrix.java: In preparation to the next 0.3.0-devel release correct some erroenous comments and document more. Fix some formatting. 2005-05-31 21:55 mokhov * src/marf/gui/util/BorderPanel.java: Add missing @param javadoc tag. 2005-05-31 21:54 mokhov * src/marf/MARF.java: Correct all javadoc warnings and document at least all public members. 2005-05-31 11:44 mokhov * src/marf/Storage/Loaders/: SineLoader.java, WAVLoader.java: Update javadoc comments. In SineLoader make updateSample() to resetArrayMark() of Sample. In WAVLoader override reset() of SampleLoader and add oByteArrayOutputStream reset there. Document code a little more and fix a few formatting glitches. 2005-05-31 11:42 mokhov * src/marf/Storage/: Cluster.java, FeatureSet.java, ModuleParams.java, TrainingSet.java: Expand/clean up imports. 2005-05-31 11:39 mokhov * src/marf/Classification/Distance/: Distance.java, MahalanobisDistance.java: Remove redundant imports. 2005-05-31 08:54 mokhov * src/marf/Preprocessing/Preprocessing.java: Correct spelling of oObjectToSerialize and getAudioFormat(). 2005-05-31 08:50 mokhov * src/marf/Preprocessing/: Preprocessing.java, PreprocessingException.java, Dummy/Dummy.java, Endpoint/Endpoint.java, FFTFilter/BandpassFilter.java, FFTFilter/FFTFilter.java, FFTFilter/HighFrequencyBoost.java: Prepare for the upcoming 0.3.0-devel release. Specifically: Implement rudimentaty dump()/restore() semantics based on the base implementations of such in StorageManager with BINARY and GZIP_BINARY methods for enclosing Sample object. Remove previously unimplemented stubs of dump()/restore() calls. Implement backSynchronizeObject() and mark some other than oSample data members as transient in case we would want to dump the modules themselves. Generate the dump file name for now based on Sample's class name, sample's file format, and preprocessing method used, followed by the ".sample" extension. This has a downside of only having max such a file per format per preprocessing, but that's a start. Otherwise prepare the author/version/since javadoc comments, correct formatting, and document a little more. 2005-05-31 08:43 mokhov * src/marf/Storage/StorageManager.java: Implement a logically missing constructor that takes only the Object to serialize argument. 2005-05-31 02:10 mokhov * src/marf/Storage/SampleLoader.java: Remove useless cast and replace it with coding conventions instead. 2005-05-31 02:07 mokhov * src/marf/Storage/: SampleLoader.java, Loaders/SineLoader.java: In SampleLoader allow derivatives to override updateSample(), getSampleSize(), and reset(). Overide the former two in SineLoader so no bogus errors are thrown out due to inability to update or prompt for a size a fictious sample. Observed (I think) by Shuxin while implementing TestLoaders. 2005-05-31 00:29 mokhov * src/marf/math/Algorithms.java: Add $Id: ChangeLog,v 1.5 2006/02/26 23:42:30 mokhov Exp $ and a

tag. 2005-05-31 00:26 mokhov * src/marf/gui/: Spectrogram.java, SpectrogramPanel.java, WaveGrapher.java, WaveGrapherPanel.java, util/ColoredStatusPanel.java, util/SmartSizablePanel.java: Primarily, expand imports. Add $Id: ChangeLog,v 1.5 2006/02/26 23:42:30 mokhov Exp $ where it was missing. 2005-05-31 00:22 mokhov * src/marf/FeatureExtraction/: FFT/FFT.java, MinMaxAmplitudes/MinMaxAmplitudes.java: Prepare for the next 0.3.0-devel release. Specifically: In FFT replace too-specific reference to WAVLoader by more general SampleLoader given than the latter has the constant the former was referring to now. Implement toString() in MinMaxAmplitudes for further debugging. 2005-05-31 00:19 mokhov * src/marf/util/Arrays.java: Begin implementing new series of conversion methods from an array to a Vector -- arrayToVector(), which are not present in java.util.Arrays(). For now implement double[] -> Vector and int[] -> Vector. The implementation is not optimized. 2005-05-30 23:14 mokhov * src/: test.java, marf/Classification/NeuralNetwork/Layer.java: Add a stub for Neural Network Layer abtraction. Add it to the Revision Project. 2005-05-30 23:06 mokhov * src/test.java: Clean up unused/duplicate imports. 2005-05-30 15:25 mokhov * .classpath: Remove the extra output path for some reason set by Shuxin. 2005-05-30 09:53 mokhov * src/marf/Classification/Classification.java: Add missing import -- fell into the same pitfall again. 2005-05-30 09:51 mokhov * src/marf/: Storage/TrainingSet.java, util/MARFException.java, util/NotImplementedException.java: Correct formatting and some comments. 2005-05-30 09:25 susan_fan * .classpath, src/marf/Storage/SampleLoader.java, src/marf/Storage/TrainingSet.java, src/marf/util/InvalidSampleFormatException.java, src/marf/util/MARFException.java, src/marf/util/NotImplementedException.java: correct my mistake of getRevision(). 2005-05-30 07:59 mokhov * src/marf/Classification/: Classification.java, ClassificationException.java, Distance/ChebyshevDistance.java, Distance/Distance.java, Distance/EuclideanDistance.java, Distance/MahalanobisDistance.java, Distance/MinkowskiDistance.java, Markov/Markov.java, NeuralNetwork/NeuralNetwork.java, NeuralNetwork/Neuron.java, RandomClassification/RandomClassification.java, Stochastic/Stochastic.java, Stochastic/ZipfLaw.java: Prepare Classification gang for the next 0.3.0-devel release. Specifically, Add debug() calls in Classification in dump()/restore() where oTrainingSet can be null or not null -- better be warned. Update javadoc comments in many places. Complete author/version/since tags for all classes. Add trailing periods where they were missing. Add missing @since for getRevision() API in places. Correct formatting and spacing in many places. Expand a few more imports. Trim trailing blanks. In NeuralNetwork artifically classify 2nd ID as +1 from the 1st so they are not the same. This kludge will need be fixed at some point. In RandomClassification generate the filename based on preprocessing and feature extraction methods, so the training sets for it are clustered. Also, pick the minimum result from the two random results so that no two IDs are the same. Additionally, update toString() to display the filename. Apply more coding conventions in places. Remove redundant members present in the parent classes. 2005-05-29 20:20 mokhov * src/marf/Storage/TrainingSample.java: Should rethrow any IOException as StorageException. 2005-05-29 20:19 mokhov * src/marf/Classification/Classification.java: One more remnant setTrainingSetFile() call is gone. 2005-05-29 20:16 mokhov * src/marf/: Classification/Classification.java, Storage/TrainingSet.java: Get rid of setTrainingSetFile() API. 2005-05-29 20:10 mokhov * src/marf/Storage/TrainingSet.java: Get rid of remnant TrainingSetFile code and use what StorageManager provides. 2005-05-29 20:07 mokhov * src/marf/Storage/StorageException.java: Fix spelling of poException. 2005-05-29 20:05 mokhov * src/marf/Storage/ModuleParams.java: piModule should become piModuleType everywhere. 2005-05-29 20:03 mokhov * src/marf/Storage/StorageManager.java: Revert to the original coding of the default constructor and document why we do so -- 'this' has to exist before getClass() can be called. 2005-05-29 19:47 mokhov * src/marf/Storage/: Cluster.java, FeatureSet.java, IDatabase.java, ISampleLoader.java, IStorageManager.java, MARFAudioFileFormat.java, ModuleParams.java, Result.java, ResultSet.java, Sample.java, SampleLoader.java, StorageException.java, StorageManager.java, TrainingSample.java, TrainingSet.java, Loaders/SineLoader.java, Loaders/ULAWLoader.java: Prepare for the next 0.3.0-devel release. This includes: update of author/version/since javadoc comments, full documentation of StorageManager and IStorageManager, addition of the new API to IStorageManager/StorageManager of dump/restoreHTML/SQL() to fulfill the remaining constants enumeration. Code clean up in Cluster, TrainingSet, and TrainingSample of removing extra imports/implements/data members, such as dump file name which already present in the parent classes. Also make the private data members protected in case there will be someone inheriting from these classes. Mark a few code TODO items. Clean up overall javadoc comments and add some missing parts and trailing periods that javadoc requires. Add INTERFACE_CODE_REVISION constants to IStorageManager, IDatabase, and ISampleLoader to maintain accessible code revision information as it is done for classes. Fix code formatting in places and trim trailing whitespace. Change a few Debug.debug() calls to System.err.println() to be always reported to the user independently on the debug flag in ModuleParams and other places. Add missing @since tags for getRevision() API in a few older modules. Make sure ResultSet is also Serializable, like Result or TrainingSet. This commit makes some class structural changes (in particular to the TrainingSet class) that are likely to break previous training set dumps; retraining may be required. Apply some more coding conventions along the way. 2005-05-29 13:49 mokhov * src/marf/FeatureExtraction/LPC/LPC.java: Fix a bug in LPC I introduced when trying to optimze array updates replacing addition by simply copying. Revert that change. 2005-05-28 22:16 mokhov * src/marf/gui/: Spectrogram.java, WaveGrapher.java, util/ColoredStatusPanel.java, util/SmartSizablePanel.java: Update author/version/since tags and other javadoc comments. Add trailing periods where they were missing. Apply coding conventions in places. Clean up formatting. All this in preparation to the next devel release. 2005-05-28 21:11 mokhov * src/: test.java, marf/gui/SpectrogramPanel.java, marf/gui/WaveGrapherPanel.java: Add two new GUI stubs for future containment of WaveGrapher and Spectogram. Add them to the Revision project. 2005-05-28 20:26 susan_fan * src/test.java: add import class and print