Metadata-Version: 2.1
Name: hNMF
Version: 0.1.1
Summary: Hierarchical NMF
Home-page: https://github.com/estasney/hNMF
Author: Eric Stasney
Author-email: estasney@users.noreply.github.com
License: MIT
Description: 
        # hierarchical-nmf-python
        * fork of https://github.com/rudvlf0413/hierarchical-nmf-python
        * with familiar SKLearn interface
        
        ## Installation
        ```bash
        pip install hnmf
        ```
        
        ## Usage
        ### 20 Newsgroups
        ```python
        from sklearn.datasets import fetch_20newsgroups
        from sklearn.feature_extraction.text import TfidfVectorizer
        from hnmf.model import HierarchicalNMF
        
        n_features = 1000
        n_leaves = 20
        
        data, _ = fetch_20newsgroups(shuffle=True, random_state=1,
                                     remove=('headers', 'footers', 'quotes'),
                                     return_X_y=True)
        
        
        # Use tf-idf features for NMF.
        tfidf = TfidfVectorizer(max_df=0.95, min_df=2,
                                           max_features=n_features,
                                           stop_words='english')
        
        X = tfidf.fit_transform(data)
        id2feature = {i: token for i, token in enumerate(tfidf.get_feature_names())}
        
        # hNMF
        model = HierarchicalNMF(k=n_leaves)
        model.fit(X)
        model.cluster_features(id2feature=id2feature)
        ```
        
        ## Reference
        - Papers: [Fast rank-2 nonnegative matrix factorization for hierarchical document clustering](https://smallk.github.io/papers/hierNMF2.pdf)
        
        - Original version of codes (matlab): https://github.com/dakuang/hiernmf2
        
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.7.0
Description-Content-Type: text/markdown
