Turi Create
4.0
|
#include <toolkits/feature_engineering/dimension_reduction.hpp>
Public Member Functions | |
void | init_options (const std::map< std::string, flexible_type > &user_opts) override |
size_t | get_version () const override |
void | save_impl (oarchive &iarc) const override |
void | load_version (iarchive &iarc, size_t version) override |
void | init_transformer (const std::map< std::string, flexible_type > &user_opts) override |
void | fit (gl_sframe data) override |
gl_sframe | transform (gl_sframe data) override |
gl_sframe | fit_transform (gl_sframe data) |
std::vector< std::string > | list_fields () |
const variant_type & | get_value_from_state (std::string key) |
const std::map< std::string, flexible_type > & | get_current_options () const |
std::map< std::string, flexible_type > | get_default_options () const |
const flexible_type & | get_option_value (const std::string &name) const |
const std::map< std::string, variant_type > & | get_state () const |
bool | is_trained () const |
void | set_options (const std::map< std::string, flexible_type > &_options) |
void | add_or_update_state (const std::map< std::string, variant_type > &dict) |
const std::vector< option_handling::option_info > & | get_option_info () const |
virtual const char * | name ()=0 |
virtual const std::string & | uid ()=0 |
void | save_to_url (const std::string &url, const variant_map_type &side_data={}) |
void | save_model_to_data (std::ostream &out) |
const std::map< std::string, std::vector< std::string > > & | list_functions () |
const std::vector< std::string > & | list_get_properties () |
const std::vector< std::string > & | list_set_properties () |
variant_type | call_function (const std::string &function, variant_map_type argument) |
variant_type | get_property (const std::string &property) |
variant_type | set_property (const std::string &property, variant_map_type argument) |
const std::string & | get_docstring (const std::string &symbol) |
virtual void | perform_registration () |
Protected Member Functions | |
void | register_function (std::string fnname, const std::vector< std::string > &arguments, impl_fn fn) |
void | register_defaults (const std::string &fnname, const variant_map_type &arguments) |
void | register_setter (const std::string &propname, impl_fn setfn) |
void | register_getter (const std::string &propname, impl_fn getfn) |
void | register_docstring (const std::pair< std::string, std::string > &fnname_docstring) |
Protected Attributes | |
std::map< std::string, variant_type > | state |
Create a random projection matrix if the dimenions were already set in the constructor, in which case no data is needed.
The Gaussian random projection is Y = (1 / (k)) X * R, where:
embedding_dim
.See Achlioptas (2003) and Li, Hastie, and Church (2006) for details. Our naming convention is to call d the "ambient dimension" and k the "embedded <h2>dimension".
The private members of a random_projection instance are:
unprocessed_features: Column names before feature validation and preprocessing, particularly whether the names are to be included or excluded.
feature_columns: Feature column names after validation and pre-processing. These are the actual columns that we will work with.
original_dimension Dimension of the data input to the transform
function, as determined by data passed to the fit
function.
projection_matrix: Where the rubber meets the road. This is post-multiplied by the data to produce the output data.
fitted: Indicates if the model has been fitted yet.
exclude:
unprocessed_features
should be included or excluded. Several items are added to the model's state (in addition to the options defined in init_options
) so they will be visible to the Python user. More information about these can be found in the Python documentation. The items are:
Definition at line 71 of file dimension_reduction.hpp.
|
inherited |
Append the key value store of the model.
[in] | dict | Options (Key-Value pairs) to set |
|
inherited |
Calls a user defined function.
|
overridevirtual |
Fit the random projection. There is no real logic to write here, right?
Implements turi::sdk_model::feature_engineering::transformer_base.
|
inline |
Fit and transform the given data. Intended as an optimization because fit and transform are usually always called together. The default implementaiton calls fit and then transform.
data |
Definition at line 131 of file dimension_reduction.hpp.
|
inherited |
Get current options.
Interfaces with the get_current_options function in the Python side.
|
inherited |
Get default options.
Interfaces with the get_default_options function in the Python side.
|
inherited |
Returns the toolkit documentation for a function or property.
|
inherited |
Returns the option information struct for each of the set parameters.
|
inherited |
Returns the value of an option. Throws an error if the option does not exist.
[in] | name | Name of the option to get. |
|
inherited |
Reads a property.
|
inherited |
Get model.
|
inherited |
Returns the value of a particular key from the state.
From the python side, this is interfaced with the get() function or the [] operator in python.
|
overridevirtual |
Get the version number for a random_projection
object.
Implements turi::sdk_model::feature_engineering::transformer_base.
|
overridevirtual |
Define the options manager and set the initial options.
Implements turi::sdk_model::feature_engineering::transformer_base.
|
overridevirtual |
Initialize the transformer. This is the primary entry points for C++ users.
Implements turi::sdk_model::feature_engineering::transformer_base.
|
inherited |
Is this model trained.
|
inherited |
Lists all the keys accessible in the "model" map.
This is the function that the list_fields should call in python.
|
inherited |
Lists all the registered functions. Returns a map of function name to array of argument names for the function.
|
inherited |
Lists all the get-table properties of the class.
|
inherited |
Lists all the set-table properties of the class.
|
overridevirtual |
Load a random_projection
object using Turi's iarc.
Implements turi::sdk_model::feature_engineering::transformer_base.
|
pure virtualinherited |
Returns the name of the toolkit class, as exposed to client code. For example, the Python proxy for this instance will have a type with this name.
Note: this function is typically overridden using the BEGIN_CLASS_MEMBER_REGISTRATION macro.
|
virtualinherited |
Declare the base registration function. This class has to be handled specially; the macros don't work here due to the override declarations.
Reimplemented in turi::model_proxy.
|
protectedinherited |
Registers default argument values
|
protectedinherited |
Adds a docstring for the specified function or property name.
|
protectedinherited |
Adds a function with the specified name, and argument list.
|
protectedinherited |
Adds a property getter with the specified name.
|
protectedinherited |
Adds a property setter with the specified name.
|
overridevirtual |
Save a random_projection
object using Turi's oarc.
Implements turi::sdk_model::feature_engineering::transformer_base.
|
inherited |
Save a toolkit class to a data stream.
|
inherited |
Save a toolkit class to disk.
url | The destination url to store the class. |
sidedata | Any additional side information |
|
inherited |
Set one of the options in the algorithm.
The value are checked with the requirements given by the option instance.
[in] | name | Name of the option. |
[in] | value | Value for the option. |
|
inherited |
Sets a property. The new value of the property should appear in the argument map under the key "value".
|
overridevirtual |
Transform data into a low-dimensional space.
Implements turi::sdk_model::feature_engineering::transformer_base.
|
pure virtualinherited |
Returns a unique identifier for the toolkit class. It can be any unique ID. The UID is only used at runtime (to determine the concrete type of an arbitrary model_base instance) and is never stored.
Note: this function is typically overridden using the BEGIN_CLASS_MEMBER_REGISTRATION macro.
Implemented in turi::model_proxy.
|
protectedinherited |
All things python
Definition at line 206 of file ml_model.hpp.