|
template<class R , class S , void(*)(R &, float, S) T, bool audit, void(*)(R &, const audit_strings *) audit_func> |
void | generate_interactions (VW::workspace &all, example_predict &ec, R &dat, size_t &num_interacted_features) |
|
template<class R , class S , void(*)(R &, float, S) T> |
void | generate_interactions (VW::workspace &all, example_predict &ec, R &dat, size_t &num_interacted_features) |
|
VW::LEARNER::base_learner * | generate_interactions_setup (VW::config::options_i &options, VW::workspace &all) |
|
constexpr bool | is_interaction_ns (const unsigned char ns) |
|
bool | contains_wildcard (const std::vector< namespace_index > &interaction) |
|
bool | contains_wildcard (const std::vector< extent_term > &interaction) |
|
float | eval_sum_ft_squared_of_generated_ft (bool permutations, const std::vector< std::vector< namespace_index >> &interactions, const std::vector< std::vector< extent_term >> &extent_interactions, const std::array< features, NUM_NAMESPACES > &feature_spaces) |
|
template<typename T > |
std::vector< T > | indices_to_values_one_based (const std::vector< size_t > &indices, const std::set< T > &values) |
|
template<typename T > |
std::vector< T > | indices_to_values_ignore_last_index (const std::vector< size_t > &indices, const std::set< T > &values) |
|
template<typename T > |
bool | must_be_left_sorted (const std::vector< T > &oi) |
|
template<typename T > |
void | sort_and_filter_duplicate_interactions (std::vector< std::vector< T >> &vec, bool filter_duplicates, size_t &removed_cnt, size_t &sorted_cnt) |
|
template<typename T > |
std::vector< std::vector< T > > | generate_namespace_combinations_with_repetition (const std::set< T > &namespaces, size_t num_to_pick) |
|
template<typename T > |
std::vector< std::vector< T > > | generate_namespace_permutations_with_repetition (const std::set< T > &namespaces, size_t num_to_pick) |
|
std::vector< std::vector< namespace_index > > | expand_quadratics_wildcard_interactions (bool leave_duplicate_interactions, const std::set< namespace_index > &new_example_indices) |
|
bool | sort_interactions_comparator (const std::vector< namespace_index > &a, const std::vector< namespace_index > &b) |
|
template<generate_func_t< namespace_index > generate_func, bool leave_duplicate_interactions> |
std::vector< std::vector< namespace_index > > | compile_interaction (const std::vector< namespace_index > &interaction, const std::set< namespace_index > &indices) |
|
template<generate_func_t< extent_term > generate_func, bool leave_duplicate_interactions> |
std::vector< std::vector< extent_term > > | compile_extent_interaction (const std::vector< extent_term > &interaction, const std::set< extent_term > &all_seen_extents) |
|
template<generate_func_t< namespace_index > generate_func, bool leave_duplicate_interactions> |
std::vector< std::vector< namespace_index > > | compile_interactions (const std::vector< std::vector< namespace_index >> &interactions, const std::set< namespace_index > &indices) |
|
template<generate_func_t< extent_term > generate_func, bool leave_duplicate_interactions> |
std::vector< std::vector< extent_term > > | compile_extent_interactions (const std::vector< std::vector< extent_term >> &interactions, const std::set< extent_term > &indices) |
|
template<class DataT , void(*)(DataT &, const float, float &) FuncT, class WeightsT > |
void | call_FuncT (DataT &dat, WeightsT &weights, const float ft_value, const uint64_t ft_idx) |
|
template<class DataT , void(*)(DataT &, const float, float) FuncT, class WeightsT > |
void | call_FuncT (DataT &dat, const WeightsT &weights, const float ft_value, const uint64_t ft_idx) |
|
bool | term_is_empty (namespace_index term, const std::array< features, NUM_NAMESPACES > &feature_groups) |
|
bool | has_empty_interaction_quadratic (const std::array< features, NUM_NAMESPACES > &feature_groups, const std::vector< namespace_index > &namespace_indexes) |
|
bool | has_empty_interaction_cubic (const std::array< features, NUM_NAMESPACES > &feature_groups, const std::vector< namespace_index > &namespace_indexes) |
|
bool | has_empty_interaction (const std::array< features, NUM_NAMESPACES > &feature_groups, const std::vector< namespace_index > &namespace_indexes) |
|
bool | has_empty_interaction (const std::array< features, NUM_NAMESPACES > &feature_groups, const std::vector< extent_term > &namespace_indexes) |
|
float | INTERACTION_VALUE (float value1, float value2) |
|
std::tuple< features_range_t, features_range_t > | generate_quadratic_char_combination (const std::array< features, NUM_NAMESPACES > &feature_groups, namespace_index ns_idx1, namespace_index ns_idx2) |
|
template<typename DispatchCombinationFuncT > |
void | generate_generic_extent_combination_iterative (const std::array< features, NUM_NAMESPACES > &feature_groups, const std::vector< extent_term > &terms, const DispatchCombinationFuncT &dispatch_combination_func, std::stack< extent_interaction_expansion_stack_item > &in_process_frames, VW::moved_object_pool< extent_interaction_expansion_stack_item > &frame_pool) |
|
std::tuple< features_range_t, features_range_t, features_range_t > | generate_cubic_char_combination (const std::array< features, NUM_NAMESPACES > &feature_groups, namespace_index ns_idx1, namespace_index ns_idx2, namespace_index ns_idx3) |
|
std::vector< features_range_t > | generate_generic_char_combination (const std::array< features, NUM_NAMESPACES > &feature_groups, const std::vector< namespace_index > &terms) |
|
template<class DataT , class WeightOrIndexT , void(*)(DataT &, float, WeightOrIndexT) FuncT, bool audit, void(*)(DataT &, const audit_strings *) audit_func, class WeightsT > |
void | inner_kernel (DataT &dat, features::const_audit_iterator &begin, features::const_audit_iterator &end, const uint64_t offset, WeightsT &weights, feature_value ft_value, feature_index halfhash) |
|
template<bool Audit, typename KernelFuncT , typename AuditFuncT > |
size_t | process_quadratic_interaction (const std::tuple< features_range_t, features_range_t > &range, bool permutations, const KernelFuncT &kernel_func, const AuditFuncT &audit_func) |
|
template<bool Audit, typename KernelFuncT , typename AuditFuncT > |
size_t | process_cubic_interaction (const std::tuple< features_range_t, features_range_t, features_range_t > &range, bool permutations, const KernelFuncT &kernel_func, const AuditFuncT &audit_func) |
|
template<bool Audit, typename KernelFuncT , typename AuditFuncT > |
size_t | process_generic_interaction (const std::vector< features_range_t > &range, bool permutations, const KernelFuncT &kernel_func, const AuditFuncT &audit_func, std::vector< feature_gen_data > &state_data) |
|
template<class DataT , class WeightOrIndexT , void(*)(DataT &, float, WeightOrIndexT) FuncT, bool audit, void(*)(DataT &, const audit_strings *) audit_func, class WeightsT > |
void | generate_interactions (const std::vector< std::vector< namespace_index >> &interactions, const std::vector< std::vector< extent_term >> &extent_interactions, bool permutations, example_predict &ec, DataT &dat, WeightsT &weights, size_t &num_features, generate_interactions_object_cache &cache) |
|