Skylark (Sketching Library)
0.1
|
#include <MMT.hpp>
Public Types | |
typedef hash_transform_t < InputMatrixType, OutputMatrixType, boost::random::uniform_int_distribution, boost::random::cauchy_distribution > | transform_t |
typedef MMT_data_t | data_type |
typedef data_type::params_t | params_t |
Public Member Functions | |
MMT_t (int N, int S, base::context_t &context) | |
MMT_t (int N, int S, const params_t ¶ms, base::context_t &context) | |
MMT_t (const boost::property_tree::ptree &pt) | |
template<typename OtherInputMatrixType , typename OtherOutputMatrixType > | |
MMT_t (const MMT_t< OtherInputMatrixType, OtherOutputMatrixType > &other) | |
MMT_t (const data_type &other) | |
void | apply (const typename transform_t::matrix_type &A, typename transform_t::output_matrix_type &sketch_of_A, columnwise_tag dimension) const |
void | apply (const typename transform_t::matrix_type &A, typename transform_t::output_matrix_type &sketch_of_A, rowwise_tag dimension) const |
int | get_N () const |
int | get_S () const |
const sketch_transform_data_t * | get_data () const |
Meng-Mahoney Transform
Meng-Mahoney Transform is very similar to the Clarkson-Woodruff Transform: it replaces the +1/-1 diagonal with Cauchy random enteries. Thus, it provides a low-distortion of l1-norm subspace embedding.
See Meng and Mahoney's STOC'13 paper.
typedef MMT_data_t skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::data_type |
typedef data_type::params_t skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::params_t |
typedef hash_transform_t< InputMatrixType, OutputMatrixType, boost::random::uniform_int_distribution, boost::random::cauchy_distribution> skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::transform_t |
skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::MMT_t | ( | int | N, |
int | S, | ||
base::context_t & | context | ||
) | [inline] |
skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::MMT_t | ( | int | N, |
int | S, | ||
const params_t & | params, | ||
base::context_t & | context | ||
) | [inline] |
skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::MMT_t | ( | const boost::property_tree::ptree & | pt | ) | [inline] |
skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::MMT_t | ( | const MMT_t< OtherInputMatrixType, OtherOutputMatrixType > & | other | ) | [inline] |
skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::MMT_t | ( | const data_type & | other | ) | [inline] |
void skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::apply | ( | const typename transform_t::matrix_type & | A, |
typename transform_t::output_matrix_type & | sketch_of_A, | ||
columnwise_tag | dimension | ||
) | const [inline] |
void skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::apply | ( | const typename transform_t::matrix_type & | A, |
typename transform_t::output_matrix_type & | sketch_of_A, | ||
rowwise_tag | dimension | ||
) | const [inline] |
const sketch_transform_data_t* skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::get_data | ( | ) | const [inline, virtual] |
int skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::get_N | ( | ) | const [inline, virtual] |
Get input dimesion.
Implements skylark::sketch::sketch_transform_t< InputMatrixType, OutputMatrixType >.
Definition at line 86 of file MMT.hpp.
References skylark::sketch::sketch_transform_data_t::_N.
int skylark::sketch::MMT_t< InputMatrixType, OutputMatrixType >::get_S | ( | ) | const [inline, virtual] |
Get output dimesion.
Implements skylark::sketch::sketch_transform_t< InputMatrixType, OutputMatrixType >.
Definition at line 87 of file MMT.hpp.
References skylark::sketch::sketch_transform_data_t::_S.