-  3.41.0
pyfaust.proj.spcol Class Reference

Functor for the SPCOL projector. More...

Public Member Functions

def __init__ (self, shape, k, normalized=True, pos=False)
 
- Public Member Functions inherited from pyfaust.proj.proj_gen
def __init__ (self, shape)
 
def __call__ (self, M)
 

Public Attributes

 constraint
 
- Public Attributes inherited from pyfaust.proj.proj_gen
 shape
 

Detailed Description

Functor for the SPCOL projector.

A, the image matrix, is defined by \(\forall j \in \{0,...,shape[1]-1\}\) the j-th column \(A_{\star,j}\) is such that \(\| A_{\star,j}\|_0 = k, \| A\|_F = 1\) (if normalized == True)

Examples

>>> from numpy.random import rand, seed
>>> from pyfaust.proj import spcol
>>> import numpy as np
>>> seed(42) # just for reproducibility
>>> M = np.round(rand(5,5), decimals=2)
>>> M
array([[0.37, 0.95, 0.73, 0.6 , 0.16],
[0.16, 0.06, 0.87, 0.6 , 0.71],
[0.02, 0.97, 0.83, 0.21, 0.18],
[0.18, 0.3 , 0.52, 0.43, 0.29],
[0.61, 0.14, 0.29, 0.37, 0.46]])
>>> p = spcol(M.shape, 3, normalized=False)
>>> p(M)
array([[0.37, 0.95, 0.73, 0.6 , 0. ],
[0. , 0. , 0.87, 0.6 , 0.71],
[0. , 0.97, 0.83, 0. , 0. ],
[0.18, 0.3 , 0. , 0.43, 0.29],
[0.61, 0. , 0. , 0. , 0.46]])

Constructor & Destructor Documentation

◆ __init__()

def pyfaust.proj.spcol.__init__ (   self,
  shape,
  k,
  normalized = True,
  pos = False 
)
Parameters
shape(tuple(int, int)) shape of the input array.
S(np.ndarray) the support matrix.
normalized(bool) True to normalize the projection image according to its Frobenius norm.
pos(bool) True to skip negative values (replaced by zero) of the matrix to project.

Member Data Documentation

◆ constraint

pyfaust.proj.spcol.constraint

The documentation for this class was generated from the following file:
pyfaust.seed
def seed(s)
(Re)Initializes the pyfaust pseudo-random generator.
Definition: __init__.py:5334
pyfaust.rand
def rand(num_rows, num_cols, num_factors=None, dim_sizes=None, density=None, fac_type='sparse', per_row=True, dev='cpu', dtype='float64', field=None, seed=0)
Generates a random Faust.
Definition: __init__.py:5016
pyfaust.proj
This module provides matrix projectors.
Definition: proj.py:1