- Improvements
- Suppress warnings at compile (#400, 401)
- Improvements
- Use double instead of float (#397, 399)
- New Features
- Clustering: Add distance metrics option (#339, #396)
- Improvements
- Anomaly: Use reference in add_bulk (#394)
- New Features
- Anomaly: Add bulk API (#360, #391)
- Bug fixes
- Unlearner does not be saved (#389, 392)
- Some unittests do not run on Python 3 (#390, #393)
- New Features
- Recommender: Add filtering API (#387)
- Bug fixes
- Failed to build on MacOS High Sierra (#388)
- Improvements
- bandit: add
epsilon-decreasing
method (#354, #381) - Improve compatibility with gcc-6.x (#368, #369)
- Improve compatibility with FreeBSD (#376, #384)
- Improve compatibility with environment missing ld.gold (#371)
- Implement equality comparator for json objects (#380)
- Improve string to number conversion (#377)
- bandit: add
- Bug fixes
- nearest_neighbor: fix crash when search neighbors for empty model (#382, #383)
- Fix FMV not working (#378, #379)
- Improvements
- bandit: add
seed
option (#363, #365) - anomaly: imporve
get_status
to return additional metrics (#372)
- bandit: add
- Bug fixes
- Fix build issues on some platforms (#349, #373)
- Fix
--disable-eigen
build option not working (#361, #362, #370)
- Improvements
- regression: add distance-based weighting option (#351, #352)
- anomaly: improve to avoid causing
inf
(#348, #358) - recommender: improve to avoid causing scores larger than 1.0 in
inverted_index
(#355, #356) - Improve
local_storage
model serialization format be compatible withlocal_storage_mixture
(#359)
- Improvements
- Support building on Ubuntu 16.04 (#282, #345, #346, #347)
- Bug fixes
- Fix double acquision of read locks (#342)
- Improvements
- fv_converter plugin loading code moved from Jubatus server (#338)
- Add rwmutex sanity check assertion (#312)
- Upgrade waf to support build with Python 3.5 (#277, #308)
- Bug fixes
- anomaly: fix
"ignore_kth_same_point": false
treated astrue
(#340) - classifier: fix euclidean distance classifier name (#341)
- classifier: fix unlearner not protected by mutex (#311, #343)
- anomaly: fix
- New Machine Learning Algorithms
- clustering: add DBSCAN algorithm (#330, #332)
- regression: add
perceptron
,PA
,PA2
,CW
,AROW
,NHERD
,NN
,cosine
andeuclidean
(#327, #328)
- Improvements
- clustering: improve APIs to make each Datum distinguishable by user-specified ID (#317, #326)
- clustering: improve config format and parameter range checking (#314, #316, #325, #334, #335)
- graph: add method to return the largest ID (#333)
- classifier and regression: Rename
diff_size
tonum_features_diff
status key (#336) - Improve binary feature key names to include the rule name (#329)
- regression: remove unused argument from driver constructor (#319, #320)
- Remove unused revert function (#315, #331)
- Bug fixes
- recommender: fix rows not cleared occasionally in
inverted_index
andinverted_index_euclid
(#318)
- recommender: fix rows not cleared occasionally in
- Improvements
- recommender: add
ignore_orthogonal
option to inverted_index_euclid (#305, #309) - Exception error messages are now displayed in clean format (#313)
- Remove Glibc C++ debug flag in debug mode (#306)
- recommender: add
- Bug fixes
- classifier: fix deadlock in nearest_neighbor-based classifier (#303)
- Fix out-of-bound index access while MIXing column table (#307, #310)
- Improvements
- Support UTF-8 strings in char_splitter (#299, #304)
- Implement IDF-1 global weighting to fv_converter (#209, #300)
- Bug fixes
- nearest_neighbor: fix deadlock issue (#302)
- Improvements
- Implement Okapi BM25 global weighting to fv_converter (#284, #295)
- Implement split string feature extractor to fv_converter (#255, #294)
- Update README.rst (#297)
- Bug fixes
- clustering: fix clear RPC to reset revision number (#164, #296)
- New feature
- weight: driver that returns raw results of fv_converter (#288)
- Improvements
- nearest_neighbor: improve performance by using LRU caching (#247)
- nearest_neighbor: improve distance calculation precision in euclid_lsh (#253, #289)
- recommender: support multi-threaded nearest neighbor search (#265)
- recommender: improve distance calculation precision in inverted_index and inverted_index_euclid (#251, #290)
- anomaly: support unlearning in lof algorithm (#231, #292)
- Improve performance of LRU library (#266)
- Improve compatibility with FreeBSD 10 (#280)
- Bug fixes
- nearest_neighbor: fix thread safetiness issue in euclid_lsh (#283, #285)
- Improvements
- nearest_neighbor: support multi-threaded nearest neighbor search (#260)
- nearest_neighbor: improve random projection hash calculation performance (#246)
- nearest_neighbor and recommender: improve bit_vector hamming distance calculation performance (#250)
- classifier: add new recommender method (cosine/euclidean) (#234, #276)
- bandit: add new bandit method (Thompson sampling) (#238)
- classifier: improve get_labels API to return number of trained instances (#204, #272)
- recommender: support unlearning in euclid_lsh algorithm (#189, #264)
- Improve Travis CI test matrix (#263, #269)
- Improve compatibility with FreeBSD 9 (#259)
- Bug fixes
- recommender: remove unnecessary hash calculation in LSH/MinHash algorithm (#249, #273)
- classifier: fix get_labels API does not return mixed labels in NN algorithm (#210, #271)
- classifier: fix rows added via MIX does not trigger unlearner (#270)
- Improvements
- Expose fv_converter APIs (#256)
- Bug fixes
- Fix bit_vector memory allocation size (#240)
- Fix combination_rules to support except_{left,right} (#232, #258)
- Improvements
- recommender: support unlearning in inverted_index_euclid algorithm (#237)
- Bug fixes
- classifier: fix updating the same weight column for two times (#233, #236)
- Code cleanup (#229)
- Improvements
- recommender: add new recommender method (inverted_index_euclid) (#127)
- recommender: support unlearning in MinHash algorithm (#220)
- anomaly: support ignore_kth_same_option in LOF algorithm (#222, #223)
- Bug fixes
- classifier: NN-based classifier does not take lock on label manipulation (#213, #221)
- Fix key manager to swap next_id (#224, #226)
- Improvements
- bandit: improve performance of select_arm API in ucb1 (#186, #214)
- Bug fixes
- recommender: fix bit_index_storage (used by lsh/minhash) to ignore 0-bit vectors when analyzing (#211, #215)
- fix typo in exception messages (#212)
- Improvements
- recommender: support unlearning in LSH algorithm (#190)
- recommender: fix typo of calc_similarity function name (#206, #208)
- clustering: return error on calling get_k_center / get_core_members when clustering is not yet performed (#185, #207)
- graph: improve error message (#203)
- code cleanup (#205)
- Bug fixes
- anomaly: fix crash when ignore_kth_same_point is not specified (#201)
- nearest_neighbor: fix deadlock when running update/analyze simultaneously (#199, #200)
- Improvements
- nearest_neighbor: improve performance of bit_vector based methods (#188, #191, #192, #193, #194, #196)
- nearest_neighbor: improve get_all_row_ids performance by eliminating unnecessary lock (#188, #196)
- classifier: improve performance by using read/write lock instead of exclusive lock (#184, #197)
- Bug fixes
- nearest_neighbor: fix bit_vector bounds checking (#198)
- nearest_neighbor: fix bit_vector to use GCC built-in popcount only when performance improvements are expected (#188, #196)
- nearest_neighbor: fix missing lock in pack/unpack (#188, #196)
- Improvements
- anomaly: add ignore_kth_same_point configuration option to avoid score to become inf (#130, #134)
- clustering: add seed configuration option (#176, #180)
- Improve unlearner overflow error message (#178, #187)
- Code cleanup (#179)
- Bug fixes
- classifier: fix missing lock in local_storage_mixture::inp (#182, #183)
- Improvements
- clustering: improved so that consistent results are returned across runs (#167, #172)
- clusteirng: add utility tests (#173)
- Bug fixes
- clustering: fix test conditions (#129, #174)
- clustering: fix MIX not working as expected (#70, #175)
- bandit: fix gamma parameter validation (#163, #169)
- fix bit_vector parameter assertion (#170)
- Improvements
- recommender: support unlearner in inverted_index algorithm (#51, #120)
- classifier: expose more status values (#166)
- Support building with Python 3.x (#30, #162)
- Code cleanup (#161)
- Bug fixes
- bandit: fix exp3 algorithm calculations (#157, #158)
- bandit: fix ucb1 algorithm calculations (#159, #160)
- Improvements
- Support non-commutative functions in combination feature (#152, #156)
- anomaly: lof algorithm now supports overwrite method (#154)
- classifier: driver is now thread-safe (#144)
- Improved compatibility with GCC-5 (#155)
- Code cleanup (#140)
- Bug fixes
- clustering: fix k-means segmentation fault when get_nearest_center is called before clustering is performed (#150, #151)
- Column tables now touches unlearner on MIX (#100, #113)
- Improvements
- bandit: add assume_unrewarded option (#125, #133)
- Improved performance of bit_vector calculations (#137)
- Codes cleanup (#132, #141, #143)
- Bug fixes
- bandit: reject specifying unknown arm ID in register_reward API (#138, #148)
- bandit: fix clear API to reset arm IDs (#142, #149)
- recommender: fix retain_projection option not working in euclid_lsh (#98, #116)
- Fix fv_converter become unresponsive when empty datum is given (#146, #147)
- plugin.hpp is missing from installation (#139, #145)
- Improvements
- Move column storage directory (#118, #123)
- classifier: install algorithm headers (#117)
- fv_converter reports error precisely (#119)
- Codes / comments cleanup (#96, #97, #107, #109, #114, #115, #122, #135, #136)
- Add language declarations to wscript (#108)
- Update to the latest waf-unittest (#128)
- Bug fixes
- clustering: avoid clusteirng score to become NaN (#78)
- New machine learning service
- Distributed Multi-Armed Bandit (#111)
- Improvements
- Add combination feature (#104)
- classifier: Add NN-based method (#83)
- clustering: Add test for gmm-based clustering algorithm (#66)
- nearest_neighbor: implement get_all_rows API (#58, #101)
- Update copyright (#103, #105)
- Bug fixes
- weight_manager now MIX correctly in recommender, nearest_neighbor, anomaly and clustering (#61, #64)
- weight_manager is now saved in nearest_neighbor and clustering (#62, #64)
- nearest_neighbor: weight_manager is now updated when calling set_row API (#99, #64)
- nearest_neighbor: overwriting rows now correctly updates the specified row (#84)
- anomaly: neighbor of updated ID is not touched when using unlearner (#92, #94)
- Improvements
- Remove error-prone default constructor (#72, #80)
- clustering: Add test for gmm-based clustering algorithm (#66)
- Bug fixes
- random_unlearner now take care of entries deleted by user (#60, #79)
- Fix error message in gaussian_normalization_filter (#85, #86)
- Improvements
- Add normalization feature (num_filter) to fv_converter (#67, #68)
- recommender: Improve performance of inverted_index (#44, #45)
- This work was supported by New Energy and Industrial Technology Development Organization (NEDO).
- clustering: Support clear RPC method (#69)
- burst: Improved parameter validation (#75, #77)
- burst: Remove unused debug code (#71, #74)
- Enable libstdc++ debug mode when configured using --enable-debug (#73)
- Bug fixes
- recommender: Fix unlearner leaks rows when using NN-based method (fix #76)
- New machine learning service
- Distributed Burst Detection
- Improvements
- Removed an unnecessary typedef (#37)
- Improvements
- Support string replacement with capture group in oniguruma-based regexp string_filter (#53)
- Improve varidation of replacement string in re2-based regexp string_filter (#54)
- classifier: Improve error message when invalid configuration is given (#52)
- Improvements
- Improved speed of clustering test (#48)
- anomaly: Exposed is_updatable interface in driver (#41)
- Bug fixes
- classifier: Fix NHERD equations (#47)
- stat: Fix wrong error message (#42)
- Improvements
- Support for OS X Mavericks (#20, #23)
- Make parameter name consistent with config (#38)
- Add ABI version number to object file (#39)
- #34, #35, #36, #40
- Bug fixes
- classifier, regression: Fix a misused iterator (#21)
- Remove out-of-bound access to vectors (#25)
- Make bit_vector safer (#33)
- Fix test for x86 machine (#31)
- First release of jubatus_core; algorithm component of Jubatus.
- jubatus_core was separated from Jubatus 0.5.4. Changes since 0.5.4 are as follows:
- Add unlearning feature with sticky ID handling (#4)
- Users can now disable regexp libraries at compile time (#8)
- Renamed methods in Nearest Neighbor module: {similar,neighbor}_row_from_data is now called {similar,neighbor}_row_from_datum (#6)
- Message improvements (#12)
- Support for OS X Mavericks (#11)