Class: Google::Apis::BigqueryV2::TrainingOptions
- Inherits:
-
Object
- Object
- Google::Apis::BigqueryV2::TrainingOptions
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/bigquery_v2/classes.rb,
lib/google/apis/bigquery_v2/representations.rb,
lib/google/apis/bigquery_v2/representations.rb
Overview
Options used in model training.
Instance Attribute Summary collapse
-
#auto_arima ⇒ Boolean
(also: #auto_arima?)
Whether to enable auto ARIMA or not.
-
#auto_arima_max_order ⇒ Fixnum
The max value of non-seasonal p and q.
-
#batch_size ⇒ Fixnum
Batch size for dnn models.
-
#data_frequency ⇒ String
The data frequency of a time series.
-
#data_split_column ⇒ String
The column to split data with.
-
#data_split_eval_fraction ⇒ Float
The fraction of evaluation data over the whole input data.
-
#data_split_method ⇒ String
The data split type for training and evaluation, e.g.
-
#distance_type ⇒ String
Distance type for clustering models.
-
#dropout ⇒ Float
Dropout probability for dnn models.
-
#early_stop ⇒ Boolean
(also: #early_stop?)
Whether to stop early when the loss doesn't improve significantly any more ( compared to min_relative_progress).
-
#feedback_type ⇒ String
Feedback type that specifies which algorithm to run for matrix factorization.
-
#hidden_units ⇒ Array<Fixnum>
Hidden units for dnn models.
-
#holiday_region ⇒ String
The geographical region based on which the holidays are considered in time series modeling.
-
#horizon ⇒ Fixnum
The number of periods ahead that need to be forecasted.
-
#include_drift ⇒ Boolean
(also: #include_drift?)
Include drift when fitting an ARIMA model.
-
#initial_learn_rate ⇒ Float
Specifies the initial learning rate for the line search learn rate strategy.
-
#input_label_columns ⇒ Array<String>
Name of input label columns in training data.
-
#item_column ⇒ String
Item column specified for matrix factorization models.
-
#kmeans_initialization_column ⇒ String
The column used to provide the initial centroids for kmeans algorithm when kmeans_initialization_method is CUSTOM.
-
#kmeans_initialization_method ⇒ String
The method used to initialize the centroids for kmeans algorithm.
-
#l1_regularization ⇒ Float
L1 regularization coefficient.
-
#l2_regularization ⇒ Float
L2 regularization coefficient.
-
#label_class_weights ⇒ Hash<String,Float>
Weights associated with each label class, for rebalancing the training data.
-
#learn_rate ⇒ Float
Learning rate in training.
-
#learn_rate_strategy ⇒ String
The strategy to determine learn rate for the current iteration.
-
#loss_type ⇒ String
Type of loss function used during training run.
-
#max_iterations ⇒ Fixnum
The maximum number of iterations in training.
-
#max_tree_depth ⇒ Fixnum
Maximum depth of a tree for boosted tree models.
-
#min_relative_progress ⇒ Float
When early_stop is true, stops training when accuracy improvement is less than 'min_relative_progress'.
-
#min_split_loss ⇒ Float
Minimum split loss for boosted tree models.
-
#model_uri ⇒ String
Google Cloud Storage URI from which the model was imported.
-
#non_seasonal_order ⇒ Google::Apis::BigqueryV2::ArimaOrder
Arima order, can be used for both non-seasonal and seasonal parts.
-
#num_clusters ⇒ Fixnum
Number of clusters for clustering models.
-
#num_factors ⇒ Fixnum
Num factors specified for matrix factorization models.
-
#optimization_strategy ⇒ String
Optimization strategy for training linear regression models.
-
#preserve_input_structs ⇒ Boolean
(also: #preserve_input_structs?)
Whether to preserve the input structs in output feature names.
-
#subsample ⇒ Float
Subsample fraction of the training data to grow tree to prevent overfitting for boosted tree models.
-
#time_series_data_column ⇒ String
Column to be designated as time series data for ARIMA model.
-
#time_series_id_column ⇒ String
The id column that will be used to indicate different time series to forecast in parallel.
-
#time_series_timestamp_column ⇒ String
Column to be designated as time series timestamp for ARIMA model.
-
#user_column ⇒ String
User column specified for matrix factorization models.
-
#wals_alpha ⇒ Float
Hyperparameter for matrix factoration when implicit feedback type is specified.
-
#warm_start ⇒ Boolean
(also: #warm_start?)
Whether to train a model from the last checkpoint.
Instance Method Summary collapse
-
#initialize(**args) ⇒ TrainingOptions
constructor
A new instance of TrainingOptions.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ TrainingOptions
Returns a new instance of TrainingOptions.
6979 6980 6981 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6979 def initialize(**args) update!(**args) end |
Instance Attribute Details
#auto_arima ⇒ Boolean Also known as: auto_arima?
Whether to enable auto ARIMA or not.
Corresponds to the JSON property autoArima
6740 6741 6742 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6740 def auto_arima @auto_arima end |
#auto_arima_max_order ⇒ Fixnum
The max value of non-seasonal p and q.
Corresponds to the JSON property autoArimaMaxOrder
6746 6747 6748 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6746 def auto_arima_max_order @auto_arima_max_order end |
#batch_size ⇒ Fixnum
Batch size for dnn models.
Corresponds to the JSON property batchSize
6751 6752 6753 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6751 def batch_size @batch_size end |
#data_frequency ⇒ String
The data frequency of a time series.
Corresponds to the JSON property dataFrequency
6756 6757 6758 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6756 def data_frequency @data_frequency end |
#data_split_column ⇒ String
The column to split data with. This column won't be used as a feature. 1. When
data_split_method is CUSTOM, the corresponding column should be boolean. The
rows with true value tag are eval data, and the false are training data. 2.
When data_split_method is SEQ, the first DATA_SPLIT_EVAL_FRACTION rows (from
smallest to largest) in the corresponding column are used as training data,
and the rest are eval data. It respects the order in Orderable data types:
https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#data-
type-properties
Corresponds to the JSON property dataSplitColumn
6768 6769 6770 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6768 def data_split_column @data_split_column end |
#data_split_eval_fraction ⇒ Float
The fraction of evaluation data over the whole input data. The rest of data
will be used as training data. The format should be double. Accurate to two
decimal places. Default value is 0.2.
Corresponds to the JSON property dataSplitEvalFraction
6775 6776 6777 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6775 def data_split_eval_fraction @data_split_eval_fraction end |
#data_split_method ⇒ String
The data split type for training and evaluation, e.g. RANDOM.
Corresponds to the JSON property dataSplitMethod
6780 6781 6782 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6780 def data_split_method @data_split_method end |
#distance_type ⇒ String
Distance type for clustering models.
Corresponds to the JSON property distanceType
6785 6786 6787 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6785 def distance_type @distance_type end |
#dropout ⇒ Float
Dropout probability for dnn models.
Corresponds to the JSON property dropout
6790 6791 6792 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6790 def dropout @dropout end |
#early_stop ⇒ Boolean Also known as: early_stop?
Whether to stop early when the loss doesn't improve significantly any more (
compared to min_relative_progress). Used only for iterative training
algorithms.
Corresponds to the JSON property earlyStop
6797 6798 6799 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6797 def early_stop @early_stop end |
#feedback_type ⇒ String
Feedback type that specifies which algorithm to run for matrix factorization.
Corresponds to the JSON property feedbackType
6803 6804 6805 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6803 def feedback_type @feedback_type end |
#hidden_units ⇒ Array<Fixnum>
Hidden units for dnn models.
Corresponds to the JSON property hiddenUnits
6808 6809 6810 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6808 def hidden_units @hidden_units end |
#holiday_region ⇒ String
The geographical region based on which the holidays are considered in time
series modeling. If a valid value is specified, then holiday effects modeling
is enabled.
Corresponds to the JSON property holidayRegion
6815 6816 6817 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6815 def holiday_region @holiday_region end |
#horizon ⇒ Fixnum
The number of periods ahead that need to be forecasted.
Corresponds to the JSON property horizon
6820 6821 6822 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6820 def horizon @horizon end |
#include_drift ⇒ Boolean Also known as: include_drift?
Include drift when fitting an ARIMA model.
Corresponds to the JSON property includeDrift
6825 6826 6827 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6825 def include_drift @include_drift end |
#initial_learn_rate ⇒ Float
Specifies the initial learning rate for the line search learn rate strategy.
Corresponds to the JSON property initialLearnRate
6831 6832 6833 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6831 def initial_learn_rate @initial_learn_rate end |
#input_label_columns ⇒ Array<String>
Name of input label columns in training data.
Corresponds to the JSON property inputLabelColumns
6836 6837 6838 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6836 def input_label_columns @input_label_columns end |
#item_column ⇒ String
Item column specified for matrix factorization models.
Corresponds to the JSON property itemColumn
6841 6842 6843 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6841 def item_column @item_column end |
#kmeans_initialization_column ⇒ String
The column used to provide the initial centroids for kmeans algorithm when
kmeans_initialization_method is CUSTOM.
Corresponds to the JSON property kmeansInitializationColumn
6847 6848 6849 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6847 def kmeans_initialization_column @kmeans_initialization_column end |
#kmeans_initialization_method ⇒ String
The method used to initialize the centroids for kmeans algorithm.
Corresponds to the JSON property kmeansInitializationMethod
6852 6853 6854 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6852 def kmeans_initialization_method @kmeans_initialization_method end |
#l1_regularization ⇒ Float
L1 regularization coefficient.
Corresponds to the JSON property l1Regularization
6857 6858 6859 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6857 def l1_regularization @l1_regularization end |
#l2_regularization ⇒ Float
L2 regularization coefficient.
Corresponds to the JSON property l2Regularization
6862 6863 6864 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6862 def l2_regularization @l2_regularization end |
#label_class_weights ⇒ Hash<String,Float>
Weights associated with each label class, for rebalancing the training data.
Only applicable for classification models.
Corresponds to the JSON property labelClassWeights
6868 6869 6870 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6868 def label_class_weights @label_class_weights end |
#learn_rate ⇒ Float
Learning rate in training. Used only for iterative training algorithms.
Corresponds to the JSON property learnRate
6873 6874 6875 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6873 def learn_rate @learn_rate end |
#learn_rate_strategy ⇒ String
The strategy to determine learn rate for the current iteration.
Corresponds to the JSON property learnRateStrategy
6878 6879 6880 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6878 def learn_rate_strategy @learn_rate_strategy end |
#loss_type ⇒ String
Type of loss function used during training run.
Corresponds to the JSON property lossType
6883 6884 6885 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6883 def loss_type @loss_type end |
#max_iterations ⇒ Fixnum
The maximum number of iterations in training. Used only for iterative training
algorithms.
Corresponds to the JSON property maxIterations
6889 6890 6891 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6889 def max_iterations @max_iterations end |
#max_tree_depth ⇒ Fixnum
Maximum depth of a tree for boosted tree models.
Corresponds to the JSON property maxTreeDepth
6894 6895 6896 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6894 def max_tree_depth @max_tree_depth end |
#min_relative_progress ⇒ Float
When early_stop is true, stops training when accuracy improvement is less than
'min_relative_progress'. Used only for iterative training algorithms.
Corresponds to the JSON property minRelativeProgress
6900 6901 6902 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6900 def min_relative_progress @min_relative_progress end |
#min_split_loss ⇒ Float
Minimum split loss for boosted tree models.
Corresponds to the JSON property minSplitLoss
6905 6906 6907 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6905 def min_split_loss @min_split_loss end |
#model_uri ⇒ String
Google Cloud Storage URI from which the model was imported. Only applicable
for imported models.
Corresponds to the JSON property modelUri
6911 6912 6913 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6911 def model_uri @model_uri end |
#non_seasonal_order ⇒ Google::Apis::BigqueryV2::ArimaOrder
Arima order, can be used for both non-seasonal and seasonal parts.
Corresponds to the JSON property nonSeasonalOrder
6916 6917 6918 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6916 def non_seasonal_order @non_seasonal_order end |
#num_clusters ⇒ Fixnum
Number of clusters for clustering models.
Corresponds to the JSON property numClusters
6921 6922 6923 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6921 def num_clusters @num_clusters end |
#num_factors ⇒ Fixnum
Num factors specified for matrix factorization models.
Corresponds to the JSON property numFactors
6926 6927 6928 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6926 def num_factors @num_factors end |
#optimization_strategy ⇒ String
Optimization strategy for training linear regression models.
Corresponds to the JSON property optimizationStrategy
6931 6932 6933 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6931 def optimization_strategy @optimization_strategy end |
#preserve_input_structs ⇒ Boolean Also known as: preserve_input_structs?
Whether to preserve the input structs in output feature names. Suppose there
is a struct A with field b. When false (default), the output feature name is
A_b. When true, the output feature name is A.b.
Corresponds to the JSON property preserveInputStructs
6938 6939 6940 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6938 def preserve_input_structs @preserve_input_structs end |
#subsample ⇒ Float
Subsample fraction of the training data to grow tree to prevent overfitting
for boosted tree models.
Corresponds to the JSON property subsample
6945 6946 6947 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6945 def subsample @subsample end |
#time_series_data_column ⇒ String
Column to be designated as time series data for ARIMA model.
Corresponds to the JSON property timeSeriesDataColumn
6950 6951 6952 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6950 def time_series_data_column @time_series_data_column end |
#time_series_id_column ⇒ String
The id column that will be used to indicate different time series to forecast
in parallel.
Corresponds to the JSON property timeSeriesIdColumn
6956 6957 6958 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6956 def time_series_id_column @time_series_id_column end |
#time_series_timestamp_column ⇒ String
Column to be designated as time series timestamp for ARIMA model.
Corresponds to the JSON property timeSeriesTimestampColumn
6961 6962 6963 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6961 def @time_series_timestamp_column end |
#user_column ⇒ String
User column specified for matrix factorization models.
Corresponds to the JSON property userColumn
6966 6967 6968 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6966 def user_column @user_column end |
#wals_alpha ⇒ Float
Hyperparameter for matrix factoration when implicit feedback type is specified.
Corresponds to the JSON property walsAlpha
6971 6972 6973 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6971 def wals_alpha @wals_alpha end |
#warm_start ⇒ Boolean Also known as: warm_start?
Whether to train a model from the last checkpoint.
Corresponds to the JSON property warmStart
6976 6977 6978 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6976 def warm_start @warm_start end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025 7026 7027 7028 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6984 def update!(**args) @auto_arima = args[:auto_arima] if args.key?(:auto_arima) @auto_arima_max_order = args[:auto_arima_max_order] if args.key?(:auto_arima_max_order) @batch_size = args[:batch_size] if args.key?(:batch_size) @data_frequency = args[:data_frequency] if args.key?(:data_frequency) @data_split_column = args[:data_split_column] if args.key?(:data_split_column) @data_split_eval_fraction = args[:data_split_eval_fraction] if args.key?(:data_split_eval_fraction) @data_split_method = args[:data_split_method] if args.key?(:data_split_method) @distance_type = args[:distance_type] if args.key?(:distance_type) @dropout = args[:dropout] if args.key?(:dropout) @early_stop = args[:early_stop] if args.key?(:early_stop) @feedback_type = args[:feedback_type] if args.key?(:feedback_type) @hidden_units = args[:hidden_units] if args.key?(:hidden_units) @holiday_region = args[:holiday_region] if args.key?(:holiday_region) @horizon = args[:horizon] if args.key?(:horizon) @include_drift = args[:include_drift] if args.key?(:include_drift) @initial_learn_rate = args[:initial_learn_rate] if args.key?(:initial_learn_rate) @input_label_columns = args[:input_label_columns] if args.key?(:input_label_columns) @item_column = args[:item_column] if args.key?(:item_column) @kmeans_initialization_column = args[:kmeans_initialization_column] if args.key?(:kmeans_initialization_column) @kmeans_initialization_method = args[:kmeans_initialization_method] if args.key?(:kmeans_initialization_method) @l1_regularization = args[:l1_regularization] if args.key?(:l1_regularization) @l2_regularization = args[:l2_regularization] if args.key?(:l2_regularization) @label_class_weights = args[:label_class_weights] if args.key?(:label_class_weights) @learn_rate = args[:learn_rate] if args.key?(:learn_rate) @learn_rate_strategy = args[:learn_rate_strategy] if args.key?(:learn_rate_strategy) @loss_type = args[:loss_type] if args.key?(:loss_type) @max_iterations = args[:max_iterations] if args.key?(:max_iterations) @max_tree_depth = args[:max_tree_depth] if args.key?(:max_tree_depth) @min_relative_progress = args[:min_relative_progress] if args.key?(:min_relative_progress) @min_split_loss = args[:min_split_loss] if args.key?(:min_split_loss) @model_uri = args[:model_uri] if args.key?(:model_uri) @non_seasonal_order = args[:non_seasonal_order] if args.key?(:non_seasonal_order) @num_clusters = args[:num_clusters] if args.key?(:num_clusters) @num_factors = args[:num_factors] if args.key?(:num_factors) @optimization_strategy = args[:optimization_strategy] if args.key?(:optimization_strategy) @preserve_input_structs = args[:preserve_input_structs] if args.key?(:preserve_input_structs) @subsample = args[:subsample] if args.key?(:subsample) @time_series_data_column = args[:time_series_data_column] if args.key?(:time_series_data_column) @time_series_id_column = args[:time_series_id_column] if args.key?(:time_series_id_column) @time_series_timestamp_column = args[:time_series_timestamp_column] if args.key?(:time_series_timestamp_column) @user_column = args[:user_column] if args.key?(:user_column) @wals_alpha = args[:wals_alpha] if args.key?(:wals_alpha) @warm_start = args[:warm_start] if args.key?(:warm_start) end |