LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE > Class Template Reference

#include <deeplima/eigen_wrp/word_seq_embd_vectorizer.h>

Inheritance diagram for deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >:
deeplima::vectorizers::WordSeqEmbdVectorizerWithCache< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE > deeplima::vectorizers::WordSeqEmbdVectorizer< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx >

Public Member Functions

 WordSeqEmbdVectorizerWithPrecomputing (size_t bucket_size=BUCKET_SIZE)
 
 WordSeqEmbdVectorizerWithPrecomputing (const std::vector< typename Parent::feature_descr_t > &features, size_t bucket_size=1024 *64)
 
bool is_precomputing () const
 
void set_model (Model *pModel)
 
size_t dim ()
 
void precompute (const DataSet &dataset)
 
Idx get_vector (const typename Parent::timepoint_features_t &key, eigen_wrp::EigenMatrixXf::matrix_t **matrix)
 
void vectorize_timepoint (MatrixFloat &target, uint64_t timepoint, const typename DataSet::token_t &token)
 
- Public Member Functions inherited from deeplima::vectorizers::WordSeqEmbdVectorizerWithCache< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >
 WordSeqEmbdVectorizerWithCache (size_t bucket_size=BUCKET_SIZE)
 
 WordSeqEmbdVectorizerWithCache (const std::vector< feature_descr_t > &features, size_t bucket_size=BUCKET_SIZE)
 
bool is_precomputing () const
 
void precompute (const DataSet &dataset)
 
virtual void init_features (const std::vector< feature_descr_t > &features)
 
void create_key (timepoint_features_t &timepoint_features, const typename DataSet::token_t &token)
 
void vectorize_timepoint (MatrixFloat &target, uint64_t timepoint, const typename DataSet::token_t &token)
 
- Public Member Functions inherited from deeplima::vectorizers::WordSeqEmbdVectorizer< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx >
void set_model (void *)
 
 WordSeqEmbdVectorizer ()
 
 WordSeqEmbdVectorizer (const std::vector< feature_descr_t > &features)
 
 WordSeqEmbdVectorizer (const std::vector< feature_descr_t > &features, const StrFeatExtractor &str_feat_extractor)
 
bool is_precomputing () const
 
void precompute (const DataSet &)
 
UIntFeatExtractor & get_uint_feat_extractor ()
 
void init_features (const std::vector< feature_descr_t > &features)
 
int dim () const
 
void vectorize_timepoint (MatrixFloat &target, uint64_t timepoint, const typename DataSet::token_t &token) const
 

Protected Types

typedef WordSeqEmbdVectorizerWithCache< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE > Parent
 
- Protected Types inherited from deeplima::vectorizers::WordSeqEmbdVectorizerWithCache< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >
typedef WordSeqEmbdVectorizer< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx > Parent
 
- Protected Types inherited from deeplima::vectorizers::WordSeqEmbdVectorizer< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx >
typedef FeatureVectorizerToMatrix< MatrixFloat, uint64_t, Idx > uint_vectorizer_t
 
typedef FeatureVectorizerToMatrix< MatrixFloat, const std::string &, Idx > str_vectorizer_t
 

Protected Member Functions

virtual void init_cache (size_t dim)
 
- Protected Member Functions inherited from deeplima::vectorizers::WordSeqEmbdVectorizerWithCache< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >
Idx get_vector (const timepoint_features_t &key, eigen_wrp::EigenMatrixXf::matrix_t **matrix)
 
void init_curr_bucket (size_t dim)
 
void compute_vector (const timepoint_features_t &key, eigen_wrp::EigenMatrixXf::matrix_t &matrix, Idx idx)
 

Protected Attributes

Model * m_pModel
 
size_t m_precomputed_dim
 
- Protected Attributes inherited from deeplima::vectorizers::WordSeqEmbdVectorizerWithCache< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >
std::unordered_map< timepoint_features_t, Idx, timepoint_features_hash > m_precomputed_index
 
std::vector< eigen_wrp::EigenMatrixXf::matrix_t > m_precomputed_vectors
 
Idx m_bucket_size
 
Idx m_next_free_idx
 
Idx m_curr_bucket_id
 
eigen_wrp::EigenMatrixXf::matrix_t m_temp_vectors
 
- Protected Attributes inherited from deeplima::vectorizers::WordSeqEmbdVectorizer< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx >
std::vector< feature_descr_t > m_features
 
int m_features_size
 
std::vector< uint32_t > m_features_pos
 
const StrFeatExtractor m_str_feat_extractor
 
UIntFeatExtractor m_uint_feat_extractor
 
std::vector< std::pair< std::shared_ptr< uint_vectorizer_t >, size_t > > m_uint_vectorizers
 
std::vector< std::pair< std::shared_ptr< str_vectorizer_t >, size_t > > m_str_vectorizers
 

Additional Inherited Members

- Public Types inherited from deeplima::vectorizers::WordSeqEmbdVectorizerWithCache< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >
typedef Parent::feature_descr_t feature_descr_t
 
- Public Types inherited from deeplima::vectorizers::WordSeqEmbdVectorizer< DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx >
enum  feature_type_t : unsigned char { int_feature = 0 , str_feature = 1 , float_feature = 2 , max_feature }
 
typedef DataSet dataset_t
 
typedef DataSet::token_t token_t
 
typedef UIntFeatExtractor uint_feat_extractor_t
 

Detailed Description

template<class Model, class DataSet, class StrFeatExtractor, class UIntFeatExtractor, class MatrixFloat, class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
class deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >

Definition at line 443 of file word_seq_embd_vectorizer.h.

Member Typedef Documentation

◆ Parent

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
typedef WordSeqEmbdVectorizerWithCache<DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE> deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::Parent
protected

Definition at line 459 of file word_seq_embd_vectorizer.h.

Constructor & Destructor Documentation

◆ WordSeqEmbdVectorizerWithPrecomputing() [1/2]

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::WordSeqEmbdVectorizerWithPrecomputing ( size_t  bucket_size = BUCKET_SIZE)
inline

Definition at line 474 of file word_seq_embd_vectorizer.h.

◆ WordSeqEmbdVectorizerWithPrecomputing() [2/2]

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::WordSeqEmbdVectorizerWithPrecomputing ( const std::vector< typename Parent::feature_descr_t > &  features,
size_t  bucket_size = 1024*64 
)
inline

Definition at line 481 of file word_seq_embd_vectorizer.h.

Member Function Documentation

◆ dim()

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
size_t deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::dim ( )
inline

Definition at line 500 of file word_seq_embd_vectorizer.h.

◆ get_vector()

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
Idx deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::get_vector ( const typename Parent::timepoint_features_t &  key,
eigen_wrp::EigenMatrixXf::matrix_t **  matrix 
)
inline

Definition at line 544 of file word_seq_embd_vectorizer.h.

◆ init_cache()

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
virtual void deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::init_cache ( size_t  dim)
inlineprotectedvirtual

◆ is_precomputing()

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
bool deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::is_precomputing ( ) const
inline

Definition at line 488 of file word_seq_embd_vectorizer.h.

◆ precompute()

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
void deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::precompute ( const DataSet &  dataset)
inline

Definition at line 505 of file word_seq_embd_vectorizer.h.

◆ set_model()

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
void deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::set_model ( Model *  pModel)
inline

Definition at line 493 of file word_seq_embd_vectorizer.h.

◆ vectorize_timepoint()

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
void deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::vectorize_timepoint ( MatrixFloat &  target,
uint64_t  timepoint,
const typename DataSet::token_t &  token 
)
inline

Definition at line 591 of file word_seq_embd_vectorizer.h.

Member Data Documentation

◆ m_pModel

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
Model* deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::m_pModel
protected

Definition at line 461 of file word_seq_embd_vectorizer.h.

◆ m_precomputed_dim

template<class Model , class DataSet , class StrFeatExtractor , class UIntFeatExtractor , class MatrixFloat , class Idx = uint64_t, size_t NUM_BUCKETS = 32, size_t BUCKET_SIZE = 1024*64>
size_t deeplima::vectorizers::WordSeqEmbdVectorizerWithPrecomputing< Model, DataSet, StrFeatExtractor, UIntFeatExtractor, MatrixFloat, Idx, NUM_BUCKETS, BUCKET_SIZE >::m_precomputed_dim
protected

Definition at line 462 of file word_seq_embd_vectorizer.h.


The documentation for this class was generated from the following file: