SMQTK v0.2.2 Release Nodes¶
This minor release primarily adds classifier algorithm and classification representation support, a new service web application for nearest-neighbors algorithms, as well as additional documentation.
Also, this release adds a few more command line tools, especially of note is
iqrTrainClassifier.py that can train a classifier based on the saved state
of the IQR demonstration application (also a new feature).
Updates / New Features since v0.2.1¶
- Added generic Classifier algorithm interface.
- Added SupervisedClassifier intermediate interface.
- Added classification result encapsulation interface.
- Added in-memory implementation
- Added PostgreSQL implementation
- Added file-based implementation
- Added ClassificationElementFactory implementation.
- Added DataFileElement implementation the optional use of the tika module for file content type extraction. Falls back to previous method when tika module not found or fails.
- Moved additional implementation specific documentation into
- Moved additional implementation specific configuration and example files into
PostgresDescriptorElementimplementation out of nested sub-module into a single module in implementations directory.
PARALLELclass variable (parameterized in pertinent implementation constructors).
CaffeDescriptorGeneratorimplementation, which is more generalized and model agnostic, using the Caffe python interface.
- Added web-service documentation directory and moved applicable documentation files there.
- Added more/better documentation on IQR demonstration application.
- Added documentation on saving IQR state and training/using a supervised classifier based on it.
Tools / Scripts
- Added descriptor compute script that reads from a file-list text file specifying input data file paths, and asynchronously computes descriptors. Uses JSON configuration file for algorithm and element backend specification.
- Added tool for training a supervised classifier based on an IQR session state.
- Added tool for classifying a sequence of input file paths, outputting paths that classified as the input label (highest confidence).
iqr_app_model_generation.pyto run as a command line tool with arguments, rather than an example script.
Web / Services
NearestNeighborServiceServer, which provides web-service that returns the nearest N neighbors to the given descriptor element.
- Added ability to save IQR state via a new button in web interface. This file is used with the IQR classifier training script.
Fixes since v0.2.1¶
- Fixed an issue where
svm_save_modelwould crash when saving a 2-class SVM model.
- Fixed an issue where
svm_save_modelwould save an extra, unexpected file when saving a 2-class SVM model.
- Fix threading joining in
elements_to_matrix(when using non-multiprocessing mode).
- Fixed configuration use in
is_usableabstract method. Redundant with
- Fixed whitespacing issue with
docs/algorithms.rstthat prevented display of ToC sections.
- Updated/Fixed various class/function doc-strings.
smqtk.utils.plugin.get_pluginsto handle skipping intermediate interfaces between the base class and implementation classes, as well as to skip implementation classes that do not fully implement abstract methods.