- Fixed:
- Improved:
- Fixed:
- Aligning comparison operator output for data classes (#331)
- Improved:
- Added:
- Fixed:
- Fixed timings and output formatting in
gcp_opt
(#314)
- Fixed timings and output formatting in
- Improved:
- Improved performance of
ktensor.full
(#300)
- Improved performance of
- Deprecated:
- Breaking Changes:
- API Change: Constructors (
__init__
) and helper functions have been combined for all data classes, leading to breaking changes; if you usefrom_*
methods in your existingpyttb
usage to create instances of data classes this will require changes. see the updated documentation and tutorials for examples of using the update APIs. (#213, #293) - API Change: Changed constructors of main data classes to allow use by external packages that wrap existing data in memory. This allows for use of
pyttb
data classes by external packages without making copies of the data. (#182) - API Change:
params
output ofcp_als
changed fromtuple
todict
(#238) - Deprecation: Removed unused
end
methods from data classes (#195)
- API Change: Constructors (
- New:
- Changed support of
numpy
to < version 2 for backwards compatibility; will update in future release (#307) - Added
gcp_opt
algorithm for Generalized CP decompositions (#206) - Added
sptenmat
data class (#290) - Added
sumtensor
data class (#282) - Added
sptensor.squash
method (#175) - Improved in
cp_apr
performance fortensor
s (#176) - Added
tensor.scale
, providing support forttensor
input incp_als
(#221) - Added
teneye
(#222) - Added support for different index bases in
import_data
(#144)
- Changed support of
- Documentation:
- Fixes/Completed:
- Fixed indexing/slicing in
tensor
(#150) - Fixed
sptensor.innerproduct
output (#217) - Fixed
export_data
to writetensor
s using the correct ordering (#143) - Fixed ZeroDivisionError in
cp_als
(#242) - Fixed how initial guesses are generated in
tucker_als
(#283) - Fixed output formatting in
tucker_als
(#265) - Fixed
sptensor.mask
problem with invalid indices (#259) - Fixed
sptensor.logical_*
methods to generate correct output types (#269)
- Fixed indexing/slicing in
- Development:
- Completed typing of all data classes and algorithms
- Adding pre-commit hooks
- Added ruff usage to replace isort, pylint usage
- Updated GitHub Actiob versions, pypi.org upload action
- Documentation:
- Fixes/Completed:
- New:
- Documentation:
- API Change (PR #91)
- Not backwards compatible
pyttb_utils.tt_dimscheck
- Addresses ambiguity of -0 by using
exclude_dims
(numpy.ndarray
) parameter
- Addresses ambiguity of -0 by using
ktensor.ttv
,sptensor.ttv
,tensor.ttv
,ttensor.ttv
- Use
exlude_dims
parameter instead of-dims
- Explicit naming of dimensions to exclude
- Use
tensor.ttsv
- Use
skip_dim
(int
) parameter instead of-dims
- Exclude all dimensions up to and including
skip_dim
- Use
- Fixes/Completed:
- Code cleaning: minor changes associated with replacing
-dims
withexclude_dims
/skip_dim
- Authorship: PyPI only allows one author, changing to current POC
- Code cleaning: minor changes associated with replacing
- New:
- Fixed/Completed:
- New:
- Added
hosvd
Tuecker decomposition (Issue #56, PR #67) - Added
tucker_als
Tuecker decomposition (PR #66) - Autoformatting using
black
andisort
(Issue #59, PR #60)
- Added
- Updated/Ongoing:
- Included more testing for improved coverage (Issue #78, PR #79)
- New:
- Added
ttensor
class and associated tests (Issue #10, PR #51)
- Added
- Fixed/Completed:
- Tensor slicing now passes through to
numpy
array slicing (Issue #41, PR #50)
- Tensor slicing now passes through to
- Updated/Ongoing:
- Included more testing for improved coverage (Issue #14, PR #52)
- Remove deprecated
numpy
code associated with aliases to built-in types and ragged arrays (Issue #48, PR #49)
- Fixed
pyttb_utils.tt_ind2sub
(Issue #45, PR #47) - Implemented
ktensor.score
(Issue #46, PR #47)
- Fixed
tenmat
to accept empty arrays forrdims
orcdims
(Issue #42, PR #43) - Implemented
tensor.ttt
(Issue #28, PR #44) - Adding GitHub action to publish releases to PyPi
- Implemented
tensor.ttm
(Issue #27, PR #40)
- Fixing
np.reshape
intensor.ttv
(Issue #37, PR #38) - Fixing
np.reshape
in remainder oftensor
(Issue #30, PR #39)
- Fixing issues with PyPi uploads
- Fixed indexing bug in
tensor.mttkrp
(Issue #35, PR #36) - Updated LICENSE to compliant format (Issue #33 , PR #34)
- Now using coveralls.io for coverage reporting
- Now using readthedocs.io for documentation
- Update
tensor.nvecs
to usetenmat
(Issue #25, PR #31) - Full implementation of
tensor.collapse
(Issue #2, PR #32) - Added
CHANGELOG.md
- Using
pyttb.__version__
for specifying package version in code and docs - Implemented
tenmat.__setitem__
and tests (#23) - Fix warnings in
cp_apr
associated with divide by zero (#13) - Several documentation fixes.
- Changed package name to
pyttb
(#24)
- Added
tenmat
class and associated tests (#8) - Added
tensor.__rmul__
for preadding scalars (#18) - Fixed error in
sptensor.__lt__
that led to creation of large boolean tensors when comparing with 0 (#15) - Matched output of
cp_als
to Matlab (#17)
- Fixed
tensor/mttkrp
use ofnp.reshape
(#16) - Now updating version numbers in
setup.py
- Fixed
import_data
method - New
export_data
method - More testing
- Initial release of Python Tensor Toolbox