Published January 7, 2025
| Version v0.0.34
Software
Open
Tensor Extraction of Latent Features (T-ELF)
Description
Fast-tracking to v0.0.34 from v0.0.20
New Features
Core Enhancements
- Pruning Support:
- Enabled pruning in
bnmf,wnmf, andnmf_recommender. - Added pruning of additional matrices, e.g.,
MASK, based onX. - Included
pruned_colsandpruned_rowsin saved outputs.
- Enabled pruning in
- Matrix Factorization:
- Introduced new submodule
BNMFkunderNMFkwithnmf_method='bnmf'. - Added
WEIGHTandMASKkeys forWNMFkandBNMFk. - Implemented matrix deletion in subroutines to reduce memory consumption.
- Added
factor_thresholdingparameter to perform thresholding overNMFkfactors, making them boolean. Options include:coord_desc_threshWH_thresh
- Introduced
factor_thresholding_obj_paramsfor configuring thresholding subroutines. - Added
clustering_methodparameter with options:kmeansboolorboolean(both are equivalent).
- Introduced
clustering_obj_paramsto configure clustering subroutines. - Added new perturbation type for boolean matrices:
perturb_type='boolean'orperturb_type='bool'. - Updated examples to reflect new boolean-specific features.
- Path compatibility using
os.path.join.
- Introduced new submodule
Thresholding and Clustering
- Added
factor_thresholding_H_regressionwith options:otsu_threshcoord_desc_threshkmeans_thresh
- Default
factor_thresholding_H_regressionset tokmeans_thresh. - Default
factor_thresholdingset tootsu_thresh. - Introduced
factor_thresholding_H_regression_obj_paramsto configure parameters. - Added K-means-based boolean thresholding for
WandHmatrices:- Clusters values in each row of
WandHinto two groups; then the boolean threshold is the midpoint of cluster centroids.
- Clusters values in each row of
Hardware and Device Management
- Added
deviceparameter toNMFkfor GPU management:device=-1: Use all GPUs.device=0: Use the GPU with ID 0.device=[0,1,...]: Use a specific list of GPUs.- Negative values other than
-1: Use(number of GPUs + device + 1).
Hierarchical NMFk (HNMFk) Improvements
- Added new variables for nodes:
parent_node_factors_pathparent_node_kfactors_path
- Enabled dynamic renaming of paths when loading HNMFk models from different directories.
- Improved decomposition behavior:
- Nodes with fewer samples than the sample threshold no longer decompose unnecessarily.
- Added signature, centroid, and probabilities from parent nodes to child nodes.
- Introduced graph iterator methods for navigating to specific nodes by name.
- Updated node naming conventions to use ancestor-based indexing.
- Corrected HNMFk behavior to return total data indices instead of indices of indices.
Result Storage
- Added
W_allto saved outputs ofNMFk.
Installation and Documentation
- Migrated to a new installation system using pip and Poetry.
- Added a post-installation script for simplifying setup on different systems.
- Updated documentation for:
- New installation methods on Chicoma and Darwin.
Bug Fixes
- Corrected naming inconsistencies in pruning variables in
NMFk. - Fixed error calculation to consider only known locations when masking is applied.
- Resolved GPU transfer conflicts when using
MASK. - Fixed default
deviceparameter inNMFkto be-1(use all devices). - Addressed issues in
WNMFkandBNMFkexamples. - Fixed checkpointing bugs:
- Made saving checkpoints true by default.
- Resolved issues when loading an HNMFk model during an ongoing process.
- Fixed scalar addition error with sparse matrices in
kl_mu. - Resolved dependency conflicts with
numpyandnumba. - Updated HPC documentation for T-ELF installation.
Notes
Files
lanl/T-ELF-v0.0.34.zip
Files
(26.1 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:58184dc09b8e67dd464f636ef4fb532a
|
26.1 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/lanl/T-ELF/tree/v0.0.34 (URL)
Software
- Repository URL
- https://github.com/lanl/T-ELF