-  3.39.22
Public Member Functions | Public Attributes | List of all members
pyfaust.proj.sp Class Reference

Functor for the SP 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 SP projector.

A, the image matrix, is such that \( \| A \|_0 = k, \| A\|_F = 1 \) (if normalized == True).

Examples

>>> from pyfaust.proj import sp
>>> from numpy.random import rand, seed
>>> 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 = sp(M.shape, 3, normalized=False)
>>> p(M)
array([[0. , 0.95, 0. , 0. , 0. ],
[0. , 0. , 0.87, 0. , 0. ],
[0. , 0.97, 0. , 0. , 0. ],
[0. , 0. , 0. , 0. , 0. ],
[0. , 0. , 0. , 0. , 0. ]])

Constructor & Destructor Documentation

◆ __init__()

def pyfaust.proj.sp.__init__ (   self,
  shape,
  k,
  normalized = True,
  pos = False 
)
Parameters
shape(tuple(int,int)) the size of the input matrix.
k(int) the number of nonzeros of the projection image.
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.sp.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:5277
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:4966
pyfaust.proj
This module provides matrix projectors.
Definition: proj.py:1