mlpack 4.6.2__cp313-cp313-win_amd64.whl → 4.7.0__cp313-cp313-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mlpack/__init__.py +4 -4
- mlpack/adaboost_classify.cp313-win_amd64.pyd +0 -0
- mlpack/adaboost_probabilities.cp313-win_amd64.pyd +0 -0
- mlpack/adaboost_train.cp313-win_amd64.pyd +0 -0
- mlpack/approx_kfn.cp313-win_amd64.pyd +0 -0
- mlpack/arma_numpy.cp313-win_amd64.pyd +0 -0
- mlpack/bayesian_linear_regression.cp313-win_amd64.pyd +0 -0
- mlpack/cf.cp313-win_amd64.pyd +0 -0
- mlpack/dbscan.cp313-win_amd64.pyd +0 -0
- mlpack/decision_tree.cp313-win_amd64.pyd +0 -0
- mlpack/det.cp313-win_amd64.pyd +0 -0
- mlpack/emst.cp313-win_amd64.pyd +0 -0
- mlpack/fastmks.cp313-win_amd64.pyd +0 -0
- mlpack/gmm_generate.cp313-win_amd64.pyd +0 -0
- mlpack/gmm_probability.cp313-win_amd64.pyd +0 -0
- mlpack/gmm_train.cp313-win_amd64.pyd +0 -0
- mlpack/hmm_generate.cp313-win_amd64.pyd +0 -0
- mlpack/hmm_loglik.cp313-win_amd64.pyd +0 -0
- mlpack/hmm_train.cp313-win_amd64.pyd +0 -0
- mlpack/hmm_viterbi.cp313-win_amd64.pyd +0 -0
- mlpack/hoeffding_tree.cp313-win_amd64.pyd +0 -0
- mlpack/image_converter.cp313-win_amd64.pyd +0 -0
- mlpack/include/mlpack/base.hpp +1 -0
- mlpack/include/mlpack/core/arma_extend/find_nan.hpp +63 -0
- mlpack/include/mlpack/core/cereal/low_precision.hpp +48 -0
- mlpack/include/mlpack/core/cv/cv_base.hpp +11 -11
- mlpack/include/mlpack/core/cv/cv_base_impl.hpp +7 -7
- mlpack/include/mlpack/core/cv/k_fold_cv.hpp +4 -4
- mlpack/include/mlpack/core/cv/k_fold_cv_impl.hpp +4 -4
- mlpack/include/mlpack/core/cv/meta_info_extractor.hpp +10 -10
- mlpack/include/mlpack/core/cv/metrics/f1_impl.hpp +1 -1
- mlpack/include/mlpack/core/cv/metrics/facilities.hpp +2 -1
- mlpack/include/mlpack/core/cv/metrics/precision_impl.hpp +1 -1
- mlpack/include/mlpack/core/cv/metrics/r2_score_impl.hpp +1 -1
- mlpack/include/mlpack/core/cv/metrics/silhouette_score_impl.hpp +1 -1
- mlpack/include/mlpack/core/cv/simple_cv.hpp +4 -4
- mlpack/include/mlpack/core/cv/simple_cv_impl.hpp +2 -2
- mlpack/include/mlpack/core/data/binarize.hpp +0 -2
- mlpack/include/mlpack/core/data/check_categorical_param.hpp +0 -2
- mlpack/include/mlpack/core/data/combine_options.hpp +151 -0
- mlpack/include/mlpack/core/data/confusion_matrix.hpp +0 -2
- mlpack/include/mlpack/core/data/confusion_matrix_impl.hpp +0 -2
- mlpack/include/mlpack/core/data/data.hpp +6 -4
- mlpack/include/mlpack/core/data/data_options.hpp +341 -18
- mlpack/include/mlpack/core/data/dataset_mapper.hpp +3 -5
- mlpack/include/mlpack/core/data/dataset_mapper_impl.hpp +0 -2
- mlpack/include/mlpack/core/data/detect_file_type.hpp +34 -5
- mlpack/include/mlpack/core/data/detect_file_type_impl.hpp +185 -11
- mlpack/include/mlpack/core/data/extension.hpp +2 -4
- mlpack/include/mlpack/core/data/font8x8_basic.h +152 -0
- mlpack/include/mlpack/core/data/has_serialize.hpp +0 -2
- mlpack/include/mlpack/core/data/image_bounding_box.hpp +36 -0
- mlpack/include/mlpack/core/data/image_bounding_box_impl.hpp +155 -0
- mlpack/include/mlpack/core/data/image_layout.hpp +63 -0
- mlpack/include/mlpack/core/data/image_layout_impl.hpp +75 -0
- mlpack/include/mlpack/core/data/image_letterbox.hpp +116 -0
- mlpack/include/mlpack/core/data/image_options.hpp +257 -0
- mlpack/include/mlpack/core/data/image_resize_crop.hpp +113 -48
- mlpack/include/mlpack/core/data/imputation_methods/custom_imputation.hpp +16 -32
- mlpack/include/mlpack/core/data/imputation_methods/listwise_deletion.hpp +19 -29
- mlpack/include/mlpack/core/data/imputation_methods/mean_imputation.hpp +113 -44
- mlpack/include/mlpack/core/data/imputation_methods/median_imputation.hpp +44 -43
- mlpack/include/mlpack/core/data/imputer.hpp +41 -49
- mlpack/include/mlpack/core/data/is_naninf.hpp +0 -2
- mlpack/include/mlpack/core/data/load.hpp +49 -233
- mlpack/include/mlpack/core/data/load_arff.hpp +0 -2
- mlpack/include/mlpack/core/data/load_arff_impl.hpp +2 -4
- mlpack/include/mlpack/core/data/load_categorical.hpp +1 -4
- mlpack/include/mlpack/core/data/load_categorical_impl.hpp +10 -26
- mlpack/include/mlpack/core/data/load_dense.hpp +279 -0
- mlpack/include/mlpack/core/data/load_deprecated.hpp +466 -0
- mlpack/include/mlpack/core/data/load_image.hpp +71 -43
- mlpack/include/mlpack/core/data/load_impl.hpp +95 -274
- mlpack/include/mlpack/core/data/load_model.hpp +62 -0
- mlpack/include/mlpack/core/data/load_numeric.hpp +124 -87
- mlpack/include/mlpack/core/data/load_sparse.hpp +91 -0
- mlpack/include/mlpack/core/data/map_policies/datatype.hpp +0 -2
- mlpack/include/mlpack/core/data/map_policies/increment_policy.hpp +0 -2
- mlpack/include/mlpack/core/data/map_policies/map_policies.hpp +0 -1
- mlpack/include/mlpack/core/data/matrix_options.hpp +152 -20
- mlpack/include/mlpack/core/data/normalize_labels.hpp +0 -2
- mlpack/include/mlpack/core/data/normalize_labels_impl.hpp +0 -2
- mlpack/include/mlpack/core/data/one_hot_encoding.hpp +2 -4
- mlpack/include/mlpack/core/data/one_hot_encoding_impl.hpp +3 -5
- mlpack/include/mlpack/core/data/save.hpp +26 -120
- mlpack/include/mlpack/core/data/save_dense.hpp +42 -0
- mlpack/include/mlpack/core/data/save_deprecated.hpp +308 -0
- mlpack/include/mlpack/core/data/save_image.hpp +82 -42
- mlpack/include/mlpack/core/data/save_impl.hpp +60 -245
- mlpack/include/mlpack/core/data/save_matrix.hpp +45 -0
- mlpack/include/mlpack/core/data/save_model.hpp +61 -0
- mlpack/include/mlpack/core/data/save_numeric.hpp +60 -0
- mlpack/include/mlpack/core/data/save_sparse.hpp +44 -0
- mlpack/include/mlpack/core/data/scaler_methods/max_abs_scaler.hpp +0 -2
- mlpack/include/mlpack/core/data/scaler_methods/mean_normalization.hpp +2 -4
- mlpack/include/mlpack/core/data/scaler_methods/min_max_scaler.hpp +0 -2
- mlpack/include/mlpack/core/data/scaler_methods/pca_whitening.hpp +1 -3
- mlpack/include/mlpack/core/data/scaler_methods/standard_scaler.hpp +2 -4
- mlpack/include/mlpack/core/data/scaler_methods/zca_whitening.hpp +0 -2
- mlpack/include/mlpack/core/data/split_data.hpp +6 -8
- mlpack/include/mlpack/core/data/string_algorithms.hpp +0 -2
- mlpack/include/mlpack/core/data/string_encoding.hpp +0 -2
- mlpack/include/mlpack/core/data/string_encoding_dictionary.hpp +0 -2
- mlpack/include/mlpack/core/data/string_encoding_impl.hpp +0 -2
- mlpack/include/mlpack/core/data/string_encoding_policies/bag_of_words_encoding_policy.hpp +0 -2
- mlpack/include/mlpack/core/data/string_encoding_policies/dictionary_encoding_policy.hpp +0 -2
- mlpack/include/mlpack/core/data/string_encoding_policies/policy_traits.hpp +0 -2
- mlpack/include/mlpack/core/data/string_encoding_policies/tf_idf_encoding_policy.hpp +0 -2
- mlpack/include/mlpack/core/data/text_options.hpp +91 -53
- mlpack/include/mlpack/core/data/tokenizers/char_extract.hpp +0 -2
- mlpack/include/mlpack/core/data/tokenizers/split_by_any_of.hpp +0 -2
- mlpack/include/mlpack/core/distributions/gamma_distribution_impl.hpp +4 -4
- mlpack/include/mlpack/core/distributions/laplace_distribution.hpp +9 -9
- mlpack/include/mlpack/core/distributions/laplace_distribution_impl.hpp +7 -7
- mlpack/include/mlpack/core/hpt/cv_function.hpp +2 -2
- mlpack/include/mlpack/core/hpt/cv_function_impl.hpp +2 -2
- mlpack/include/mlpack/core/hpt/hpt.hpp +4 -4
- mlpack/include/mlpack/core/hpt/hpt_impl.hpp +9 -9
- mlpack/include/mlpack/core/math/make_alias.hpp +7 -5
- mlpack/include/mlpack/core/math/random.hpp +19 -5
- mlpack/include/mlpack/core/math/shuffle_data.hpp +79 -245
- mlpack/include/mlpack/core/metrics/non_maximal_suppression_impl.hpp +9 -10
- mlpack/include/mlpack/core/stb/bundled/stb_image_resize2.h +291 -239
- mlpack/include/mlpack/core/tree/binary_space_tree/rp_tree_mean_split_impl.hpp +7 -7
- mlpack/include/mlpack/core/tree/cellbound.hpp +2 -2
- mlpack/include/mlpack/core/tree/cosine_tree/cosine_tree_impl.hpp +10 -10
- mlpack/include/mlpack/core/tree/octree/octree.hpp +10 -0
- mlpack/include/mlpack/core/tree/octree/octree_impl.hpp +14 -4
- mlpack/include/mlpack/core/util/arma_traits.hpp +25 -38
- mlpack/include/mlpack/core/util/coot_traits.hpp +97 -0
- mlpack/include/mlpack/core/util/forward.hpp +0 -2
- mlpack/include/mlpack/core/util/param.hpp +4 -4
- mlpack/include/mlpack/core/util/params_impl.hpp +2 -2
- mlpack/include/mlpack/core/util/using.hpp +29 -2
- mlpack/include/mlpack/core/util/version.hpp +5 -3
- mlpack/include/mlpack/core/util/version_impl.hpp +3 -6
- mlpack/include/mlpack/methods/adaboost/adaboost_classify_main.cpp +1 -1
- mlpack/include/mlpack/methods/adaboost/adaboost_main.cpp +3 -3
- mlpack/include/mlpack/methods/adaboost/adaboost_train_main.cpp +2 -2
- mlpack/include/mlpack/methods/ann/activation_functions/activation_functions.hpp +1 -0
- mlpack/include/mlpack/methods/ann/activation_functions/bipolar_sigmoid_function.hpp +6 -4
- mlpack/include/mlpack/methods/ann/activation_functions/elish_function.hpp +17 -12
- mlpack/include/mlpack/methods/ann/activation_functions/elliot_function.hpp +9 -7
- mlpack/include/mlpack/methods/ann/activation_functions/gaussian_function.hpp +7 -6
- mlpack/include/mlpack/methods/ann/activation_functions/gelu_exact_function.hpp +73 -0
- mlpack/include/mlpack/methods/ann/activation_functions/gelu_function.hpp +27 -16
- mlpack/include/mlpack/methods/ann/activation_functions/hard_sigmoid_function.hpp +8 -6
- mlpack/include/mlpack/methods/ann/activation_functions/hard_swish_function.hpp +6 -4
- mlpack/include/mlpack/methods/ann/activation_functions/hyper_sinh_function.hpp +13 -8
- mlpack/include/mlpack/methods/ann/activation_functions/identity_function.hpp +6 -4
- mlpack/include/mlpack/methods/ann/activation_functions/inverse_quadratic_function.hpp +8 -6
- mlpack/include/mlpack/methods/ann/activation_functions/lisht_function.hpp +7 -5
- mlpack/include/mlpack/methods/ann/activation_functions/logistic_function.hpp +14 -12
- mlpack/include/mlpack/methods/ann/activation_functions/mish_function.hpp +7 -5
- mlpack/include/mlpack/methods/ann/activation_functions/multi_quadratic_function.hpp +6 -4
- mlpack/include/mlpack/methods/ann/activation_functions/poisson1_function.hpp +4 -2
- mlpack/include/mlpack/methods/ann/activation_functions/quadratic_function.hpp +6 -4
- mlpack/include/mlpack/methods/ann/activation_functions/rectifier_function.hpp +10 -10
- mlpack/include/mlpack/methods/ann/activation_functions/silu_function.hpp +10 -8
- mlpack/include/mlpack/methods/ann/activation_functions/softplus_function.hpp +12 -9
- mlpack/include/mlpack/methods/ann/activation_functions/softsign_function.hpp +15 -23
- mlpack/include/mlpack/methods/ann/activation_functions/spline_function.hpp +9 -7
- mlpack/include/mlpack/methods/ann/activation_functions/swish_function.hpp +11 -9
- mlpack/include/mlpack/methods/ann/activation_functions/tanh_exponential_function.hpp +9 -7
- mlpack/include/mlpack/methods/ann/activation_functions/tanh_function.hpp +10 -7
- mlpack/include/mlpack/methods/ann/ann.hpp +3 -0
- mlpack/include/mlpack/methods/ann/convolution_rules/base_convolution.hpp +197 -0
- mlpack/include/mlpack/methods/ann/convolution_rules/convolution_rules.hpp +1 -2
- mlpack/include/mlpack/methods/ann/convolution_rules/im2col_convolution.hpp +215 -0
- mlpack/include/mlpack/methods/ann/convolution_rules/naive_convolution.hpp +109 -154
- mlpack/include/mlpack/methods/ann/dag_network.hpp +728 -0
- mlpack/include/mlpack/methods/ann/dag_network_impl.hpp +1640 -0
- mlpack/include/mlpack/methods/ann/dists/bernoulli_distribution_impl.hpp +1 -1
- mlpack/include/mlpack/methods/ann/dists/normal_distribution_impl.hpp +7 -2
- mlpack/include/mlpack/methods/ann/ffn.hpp +39 -3
- mlpack/include/mlpack/methods/ann/ffn_impl.hpp +14 -32
- mlpack/include/mlpack/methods/ann/init_rules/const_init.hpp +4 -4
- mlpack/include/mlpack/methods/ann/init_rules/gaussian_init.hpp +6 -2
- mlpack/include/mlpack/methods/ann/init_rules/he_init.hpp +4 -2
- mlpack/include/mlpack/methods/ann/init_rules/kathirvalavakumar_subavathi_init.hpp +3 -3
- mlpack/include/mlpack/methods/ann/init_rules/lecun_normal_init.hpp +4 -2
- mlpack/include/mlpack/methods/ann/init_rules/nguyen_widrow_init.hpp +2 -2
- mlpack/include/mlpack/methods/ann/init_rules/oivs_init.hpp +2 -2
- mlpack/include/mlpack/methods/ann/init_rules/orthogonal_init.hpp +2 -2
- mlpack/include/mlpack/methods/ann/init_rules/random_init.hpp +8 -4
- mlpack/include/mlpack/methods/ann/layer/adaptive_max_pooling.hpp +21 -23
- mlpack/include/mlpack/methods/ann/layer/adaptive_max_pooling_impl.hpp +15 -15
- mlpack/include/mlpack/methods/ann/layer/adaptive_mean_pooling.hpp +21 -23
- mlpack/include/mlpack/methods/ann/layer/adaptive_mean_pooling_impl.hpp +16 -16
- mlpack/include/mlpack/methods/ann/layer/add.hpp +18 -18
- mlpack/include/mlpack/methods/ann/layer/add_impl.hpp +13 -13
- mlpack/include/mlpack/methods/ann/layer/add_merge.hpp +19 -18
- mlpack/include/mlpack/methods/ann/layer/add_merge_impl.hpp +13 -13
- mlpack/include/mlpack/methods/ann/layer/alpha_dropout.hpp +17 -16
- mlpack/include/mlpack/methods/ann/layer/alpha_dropout_impl.hpp +14 -13
- mlpack/include/mlpack/methods/ann/layer/base_layer.hpp +28 -51
- mlpack/include/mlpack/methods/ann/layer/batch_norm.hpp +16 -18
- mlpack/include/mlpack/methods/ann/layer/batch_norm_impl.hpp +55 -54
- mlpack/include/mlpack/methods/ann/layer/c_relu.hpp +18 -20
- mlpack/include/mlpack/methods/ann/layer/c_relu_impl.hpp +20 -25
- mlpack/include/mlpack/methods/ann/layer/celu.hpp +14 -19
- mlpack/include/mlpack/methods/ann/layer/celu_impl.hpp +25 -34
- mlpack/include/mlpack/methods/ann/layer/concat.hpp +18 -18
- mlpack/include/mlpack/methods/ann/layer/concat_impl.hpp +13 -13
- mlpack/include/mlpack/methods/ann/layer/concatenate.hpp +18 -18
- mlpack/include/mlpack/methods/ann/layer/concatenate_impl.hpp +14 -14
- mlpack/include/mlpack/methods/ann/layer/convolution.hpp +42 -47
- mlpack/include/mlpack/methods/ann/layer/convolution_impl.hpp +170 -159
- mlpack/include/mlpack/methods/ann/layer/dropconnect.hpp +18 -20
- mlpack/include/mlpack/methods/ann/layer/dropconnect_impl.hpp +20 -20
- mlpack/include/mlpack/methods/ann/layer/dropout.hpp +17 -19
- mlpack/include/mlpack/methods/ann/layer/dropout_impl.hpp +14 -21
- mlpack/include/mlpack/methods/ann/layer/elu.hpp +23 -25
- mlpack/include/mlpack/methods/ann/layer/elu_impl.hpp +20 -27
- mlpack/include/mlpack/methods/ann/layer/embedding.hpp +160 -0
- mlpack/include/mlpack/methods/ann/layer/embedding_impl.hpp +189 -0
- mlpack/include/mlpack/methods/ann/layer/flexible_relu.hpp +17 -19
- mlpack/include/mlpack/methods/ann/layer/flexible_relu_impl.hpp +20 -20
- mlpack/include/mlpack/methods/ann/layer/ftswish.hpp +17 -18
- mlpack/include/mlpack/methods/ann/layer/ftswish_impl.hpp +17 -35
- mlpack/include/mlpack/methods/ann/layer/grouped_convolution.hpp +27 -33
- mlpack/include/mlpack/methods/ann/layer/grouped_convolution_impl.hpp +170 -163
- mlpack/include/mlpack/methods/ann/layer/gru.hpp +195 -0
- mlpack/include/mlpack/methods/ann/layer/gru_impl.hpp +325 -0
- mlpack/include/mlpack/methods/ann/layer/hard_tanh.hpp +13 -15
- mlpack/include/mlpack/methods/ann/layer/hard_tanh_impl.hpp +12 -12
- mlpack/include/mlpack/methods/ann/layer/identity.hpp +19 -20
- mlpack/include/mlpack/methods/ann/layer/identity_impl.hpp +12 -12
- mlpack/include/mlpack/methods/ann/layer/layer.hpp +37 -33
- mlpack/include/mlpack/methods/ann/layer/layer_norm.hpp +11 -13
- mlpack/include/mlpack/methods/ann/layer/layer_norm_impl.hpp +16 -16
- mlpack/include/mlpack/methods/ann/layer/layer_types.hpp +4 -1
- mlpack/include/mlpack/methods/ann/layer/leaky_relu.hpp +20 -23
- mlpack/include/mlpack/methods/ann/layer/leaky_relu_impl.hpp +12 -13
- mlpack/include/mlpack/methods/ann/layer/linear.hpp +16 -18
- mlpack/include/mlpack/methods/ann/layer/linear3d.hpp +18 -18
- mlpack/include/mlpack/methods/ann/layer/linear3d_impl.hpp +18 -18
- mlpack/include/mlpack/methods/ann/layer/linear_impl.hpp +15 -15
- mlpack/include/mlpack/methods/ann/layer/linear_no_bias.hpp +15 -17
- mlpack/include/mlpack/methods/ann/layer/linear_no_bias_impl.hpp +20 -20
- mlpack/include/mlpack/methods/ann/layer/linear_recurrent.hpp +25 -14
- mlpack/include/mlpack/methods/ann/layer/linear_recurrent_impl.hpp +60 -31
- mlpack/include/mlpack/methods/ann/layer/log_softmax.hpp +17 -36
- mlpack/include/mlpack/methods/ann/layer/log_softmax_impl.hpp +58 -74
- mlpack/include/mlpack/methods/ann/layer/lstm.hpp +26 -29
- mlpack/include/mlpack/methods/ann/layer/lstm_impl.hpp +128 -124
- mlpack/include/mlpack/methods/ann/layer/max_pooling.hpp +19 -19
- mlpack/include/mlpack/methods/ann/layer/max_pooling_impl.hpp +14 -14
- mlpack/include/mlpack/methods/ann/layer/mean_pooling.hpp +24 -24
- mlpack/include/mlpack/methods/ann/layer/mean_pooling_impl.hpp +16 -16
- mlpack/include/mlpack/methods/ann/layer/multi_layer.hpp +36 -6
- mlpack/include/mlpack/methods/ann/layer/multi_layer_impl.hpp +6 -2
- mlpack/include/mlpack/methods/ann/layer/multihead_attention.hpp +26 -22
- mlpack/include/mlpack/methods/ann/layer/multihead_attention_impl.hpp +161 -64
- mlpack/include/mlpack/methods/ann/layer/nearest_interpolation.hpp +28 -25
- mlpack/include/mlpack/methods/ann/layer/nearest_interpolation_impl.hpp +36 -37
- mlpack/include/mlpack/methods/ann/layer/noisylinear.hpp +39 -42
- mlpack/include/mlpack/methods/ann/layer/noisylinear_impl.hpp +18 -18
- mlpack/include/mlpack/methods/ann/layer/padding.hpp +21 -17
- mlpack/include/mlpack/methods/ann/layer/padding_impl.hpp +33 -19
- mlpack/include/mlpack/methods/ann/layer/parametric_relu.hpp +26 -28
- mlpack/include/mlpack/methods/ann/layer/parametric_relu_impl.hpp +18 -18
- mlpack/include/mlpack/methods/ann/layer/radial_basis_function.hpp +41 -28
- mlpack/include/mlpack/methods/ann/layer/radial_basis_function_impl.hpp +42 -17
- mlpack/include/mlpack/methods/ann/layer/recurrent_layer.hpp +13 -0
- mlpack/include/mlpack/methods/ann/layer/relu6.hpp +19 -21
- mlpack/include/mlpack/methods/ann/layer/relu6_impl.hpp +14 -14
- mlpack/include/mlpack/methods/ann/layer/repeat.hpp +24 -25
- mlpack/include/mlpack/methods/ann/layer/repeat_impl.hpp +10 -10
- mlpack/include/mlpack/methods/ann/layer/serialization.hpp +64 -54
- mlpack/include/mlpack/methods/ann/layer/softmax.hpp +20 -20
- mlpack/include/mlpack/methods/ann/layer/softmax_impl.hpp +10 -10
- mlpack/include/mlpack/methods/ann/layer/softmin.hpp +20 -23
- mlpack/include/mlpack/methods/ann/layer/softmin_impl.hpp +10 -10
- mlpack/include/mlpack/methods/ann/layer/sum_reduce.hpp +103 -0
- mlpack/include/mlpack/methods/ann/layer/sum_reduce_impl.hpp +143 -0
- mlpack/include/mlpack/methods/ann/loss_functions/cosine_embedding_loss_impl.hpp +3 -3
- mlpack/include/mlpack/methods/ann/loss_functions/mean_bias_error_impl.hpp +1 -1
- mlpack/include/mlpack/methods/ann/loss_functions/multilabel_softmargin_loss_impl.hpp +1 -1
- mlpack/include/mlpack/methods/ann/loss_functions/negative_log_likelihood.hpp +2 -2
- mlpack/include/mlpack/methods/ann/loss_functions/negative_log_likelihood_impl.hpp +29 -15
- mlpack/include/mlpack/methods/ann/loss_functions/poisson_nll_loss_impl.hpp +1 -1
- mlpack/include/mlpack/methods/ann/models/models.hpp +17 -0
- mlpack/include/mlpack/methods/ann/models/yolov3/yolov3_layer.hpp +151 -0
- mlpack/include/mlpack/methods/ann/models/yolov3/yolov3_layer_impl.hpp +265 -0
- mlpack/include/mlpack/methods/ann/models/yolov3/yolov3_tiny.hpp +187 -0
- mlpack/include/mlpack/methods/ann/models/yolov3/yolov3_tiny_impl.hpp +206 -0
- mlpack/include/mlpack/methods/ann/regularizer/orthogonal_regularizer_impl.hpp +5 -3
- mlpack/include/mlpack/methods/ann/rnn.hpp +136 -42
- mlpack/include/mlpack/methods/ann/rnn_impl.hpp +230 -38
- mlpack/include/mlpack/methods/approx_kfn/drusilla_select_impl.hpp +1 -1
- mlpack/include/mlpack/methods/bayesian_linear_regression/bayesian_linear_regression_main.cpp +1 -1
- mlpack/include/mlpack/methods/bias_svd/bias_svd_function_impl.hpp +1 -1
- mlpack/include/mlpack/methods/cf/cf_model.hpp +1 -1
- mlpack/include/mlpack/methods/decision_tree/decision_tree.hpp +6 -6
- mlpack/include/mlpack/methods/decision_tree/decision_tree_impl.hpp +12 -12
- mlpack/include/mlpack/methods/decision_tree/decision_tree_main.cpp +0 -1
- mlpack/include/mlpack/methods/decision_tree/decision_tree_regressor.hpp +6 -6
- mlpack/include/mlpack/methods/decision_tree/decision_tree_regressor_impl.hpp +12 -12
- mlpack/include/mlpack/methods/det/det_main.cpp +1 -1
- mlpack/include/mlpack/methods/hmm/hmm_train_main.cpp +4 -4
- mlpack/include/mlpack/methods/hmm/hmm_util_impl.hpp +2 -2
- mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree.hpp +6 -6
- mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree_impl.hpp +31 -31
- mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree_main.cpp +1 -2
- mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree_model.hpp +2 -2
- mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree_model_impl.hpp +1 -1
- mlpack/include/mlpack/methods/kde/kde_rules_impl.hpp +6 -6
- mlpack/include/mlpack/methods/lars/lars_impl.hpp +3 -3
- mlpack/include/mlpack/methods/linear_svm/linear_svm_function_impl.hpp +4 -4
- mlpack/include/mlpack/methods/linear_svm/linear_svm_main.cpp +3 -3
- mlpack/include/mlpack/methods/lmnn/lmnn_main.cpp +1 -1
- mlpack/include/mlpack/methods/lsh/lsh_main.cpp +1 -1
- mlpack/include/mlpack/methods/matrix_completion/matrix_completion_impl.hpp +1 -1
- mlpack/include/mlpack/methods/naive_bayes/naive_bayes_classifier_impl.hpp +1 -1
- mlpack/include/mlpack/methods/naive_bayes/nbc_main.cpp +3 -3
- mlpack/include/mlpack/methods/nca/nca_main.cpp +1 -1
- mlpack/include/mlpack/methods/neighbor_search/kfn_main.cpp +8 -8
- mlpack/include/mlpack/methods/neighbor_search/knn_main.cpp +8 -8
- mlpack/include/mlpack/methods/neighbor_search/neighbor_search.hpp +154 -34
- mlpack/include/mlpack/methods/neighbor_search/neighbor_search_impl.hpp +190 -51
- mlpack/include/mlpack/methods/neighbor_search/neighbor_search_stat.hpp +10 -0
- mlpack/include/mlpack/methods/neighbor_search/ns_model.hpp +15 -15
- mlpack/include/mlpack/methods/neighbor_search/ns_model_impl.hpp +55 -46
- mlpack/include/mlpack/methods/neighbor_search/typedef.hpp +42 -2
- mlpack/include/mlpack/methods/pca/pca_impl.hpp +2 -2
- mlpack/include/mlpack/methods/perceptron/perceptron.hpp +2 -2
- mlpack/include/mlpack/methods/perceptron/perceptron_impl.hpp +1 -1
- mlpack/include/mlpack/methods/perceptron/perceptron_main.cpp +2 -2
- mlpack/include/mlpack/methods/preprocess/image_converter_main.cpp +2 -3
- mlpack/include/mlpack/methods/preprocess/preprocess_binarize_main.cpp +2 -2
- mlpack/include/mlpack/methods/preprocess/preprocess_describe_main.cpp +0 -1
- mlpack/include/mlpack/methods/preprocess/preprocess_imputer_main.cpp +50 -129
- mlpack/include/mlpack/methods/preprocess/preprocess_one_hot_encoding_main.cpp +6 -6
- mlpack/include/mlpack/methods/preprocess/preprocess_scale_main.cpp +2 -3
- mlpack/include/mlpack/methods/preprocess/preprocess_split_main.cpp +3 -4
- mlpack/include/mlpack/methods/preprocess/scaling_model.hpp +6 -8
- mlpack/include/mlpack/methods/preprocess/scaling_model_impl.hpp +18 -20
- mlpack/include/mlpack/methods/random_forest/random_forest.hpp +5 -5
- mlpack/include/mlpack/methods/random_forest/random_forest_impl.hpp +9 -9
- mlpack/include/mlpack/methods/range_search/range_search_main.cpp +1 -1
- mlpack/include/mlpack/methods/rann/krann_main.cpp +1 -1
- mlpack/include/mlpack/methods/regularized_svd/regularized_svd_function_impl.hpp +1 -1
- mlpack/include/mlpack/methods/reinforcement_learning/async_learning_impl.hpp +8 -8
- mlpack/include/mlpack/methods/reinforcement_learning/ddpg_impl.hpp +16 -16
- mlpack/include/mlpack/methods/reinforcement_learning/environment/acrobot.hpp +4 -4
- mlpack/include/mlpack/methods/reinforcement_learning/environment/cart_pole.hpp +3 -3
- mlpack/include/mlpack/methods/reinforcement_learning/environment/cont_double_pole_cart.hpp +6 -5
- mlpack/include/mlpack/methods/reinforcement_learning/environment/pendulum.hpp +6 -5
- mlpack/include/mlpack/methods/reinforcement_learning/policy/aggregated_policy.hpp +2 -2
- mlpack/include/mlpack/methods/reinforcement_learning/q_learning_impl.hpp +10 -10
- mlpack/include/mlpack/methods/reinforcement_learning/q_networks/categorical_dqn.hpp +21 -17
- mlpack/include/mlpack/methods/reinforcement_learning/q_networks/dueling_dqn.hpp +69 -77
- mlpack/include/mlpack/methods/reinforcement_learning/q_networks/simple_dqn.hpp +9 -9
- mlpack/include/mlpack/methods/reinforcement_learning/sac_impl.hpp +14 -14
- mlpack/include/mlpack/methods/reinforcement_learning/td3_impl.hpp +14 -14
- mlpack/include/mlpack/methods/softmax_regression/softmax_regression_function_impl.hpp +1 -1
- mlpack/include/mlpack/methods/svdplusplus/svdplusplus_function_impl.hpp +1 -1
- mlpack/include/mlpack/namespace_compat.hpp +1 -0
- mlpack/include/mlpack/prereqs.hpp +1 -0
- mlpack/kde.cp313-win_amd64.pyd +0 -0
- mlpack/kernel_pca.cp313-win_amd64.pyd +0 -0
- mlpack/kfn.cp313-win_amd64.pyd +0 -0
- mlpack/kmeans.cp313-win_amd64.pyd +0 -0
- mlpack/knn.cp313-win_amd64.pyd +0 -0
- mlpack/krann.cp313-win_amd64.pyd +0 -0
- mlpack/lars.cp313-win_amd64.pyd +0 -0
- mlpack/linear_regression_predict.cp313-win_amd64.pyd +0 -0
- mlpack/linear_regression_train.cp313-win_amd64.pyd +0 -0
- mlpack/linear_svm.cp313-win_amd64.pyd +0 -0
- mlpack/lmnn.cp313-win_amd64.pyd +0 -0
- mlpack/local_coordinate_coding.cp313-win_amd64.pyd +0 -0
- mlpack/logistic_regression.cp313-win_amd64.pyd +0 -0
- mlpack/lsh.cp313-win_amd64.pyd +0 -0
- mlpack/mean_shift.cp313-win_amd64.pyd +0 -0
- mlpack/nbc.cp313-win_amd64.pyd +0 -0
- mlpack/nca.cp313-win_amd64.pyd +0 -0
- mlpack/nmf.cp313-win_amd64.pyd +0 -0
- mlpack/pca.cp313-win_amd64.pyd +0 -0
- mlpack/perceptron.cp313-win_amd64.pyd +0 -0
- mlpack/preprocess_binarize.cp313-win_amd64.pyd +0 -0
- mlpack/preprocess_describe.cp313-win_amd64.pyd +0 -0
- mlpack/preprocess_one_hot_encoding.cp313-win_amd64.pyd +0 -0
- mlpack/preprocess_scale.cp313-win_amd64.pyd +0 -0
- mlpack/preprocess_split.cp313-win_amd64.pyd +0 -0
- mlpack/radical.cp313-win_amd64.pyd +0 -0
- mlpack/random_forest.cp313-win_amd64.pyd +0 -0
- mlpack/softmax_regression.cp313-win_amd64.pyd +0 -0
- mlpack/sparse_coding.cp313-win_amd64.pyd +0 -0
- mlpack-4.7.0.dist-info/DELVEWHEEL +2 -0
- {mlpack-4.6.2.dist-info → mlpack-4.7.0.dist-info}/METADATA +2 -2
- {mlpack-4.6.2.dist-info → mlpack-4.7.0.dist-info}/RECORD +396 -377
- {mlpack-4.6.2.dist-info → mlpack-4.7.0.dist-info}/WHEEL +1 -1
- mlpack/include/mlpack/core/data/format.hpp +0 -31
- mlpack/include/mlpack/core/data/image_info.hpp +0 -102
- mlpack/include/mlpack/core/data/image_info_impl.hpp +0 -84
- mlpack/include/mlpack/core/data/load_image_impl.hpp +0 -171
- mlpack/include/mlpack/core/data/load_model_impl.hpp +0 -115
- mlpack/include/mlpack/core/data/load_vec_impl.hpp +0 -154
- mlpack/include/mlpack/core/data/map_policies/missing_policy.hpp +0 -148
- mlpack/include/mlpack/core/data/save_image_impl.hpp +0 -170
- mlpack/include/mlpack/core/data/types.hpp +0 -61
- mlpack/include/mlpack/core/data/types_impl.hpp +0 -83
- mlpack/include/mlpack/core/data/utilities.hpp +0 -158
- mlpack/include/mlpack/core/util/gitversion.hpp +0 -1
- mlpack/include/mlpack/methods/ann/convolution_rules/fft_convolution.hpp +0 -213
- mlpack/include/mlpack/methods/ann/convolution_rules/svd_convolution.hpp +0 -201
- mlpack/include/mlpack/methods/ann/layer/not_adapted/gru.hpp +0 -226
- mlpack/include/mlpack/methods/ann/layer/not_adapted/gru_impl.hpp +0 -367
- mlpack/include/mlpack/methods/ann/layer/not_adapted/lookup.hpp +0 -139
- mlpack/include/mlpack/methods/ann/layer/not_adapted/lookup_impl.hpp +0 -98
- mlpack-4.6.2.dist-info/DELVEWHEEL +0 -2
- {mlpack-4.6.2.dist-info → mlpack-4.7.0.dist-info}/top_level.txt +0 -0
- /mlpack.libs/{libopenblas-9e6d070f769e6580e8c55c0cf83b80a5.dll → libopenblas-c7f521b507686ddc25bee7538a80c374.dll} +0 -0
- /mlpack.libs/{msvcp140-50208655e42969b9a5ab8a4e0186bbb9.dll → msvcp140-a4c2229bdc2a2a630acdc095b4d86008.dll} +0 -0
|
@@ -0,0 +1,466 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file core/data/load_deprecated.hpp
|
|
3
|
+
* @author Omar Shrit
|
|
4
|
+
* @author Ryan Curtin
|
|
5
|
+
*
|
|
6
|
+
* Shim to the old deprecated load() functions defined in load.hpp.
|
|
7
|
+
*
|
|
8
|
+
* This file should be removed when releasing mlpack 5.0.0
|
|
9
|
+
*
|
|
10
|
+
* mlpack is free software; you may redistribute it and/or modify it under the
|
|
11
|
+
* terms of the 3-clause BSD license. You should have received a copy of the
|
|
12
|
+
* 3-clause BSD license along with mlpack. If not, see
|
|
13
|
+
* http://www.opensource.org/licenses/BSD-3-Clause for more information.
|
|
14
|
+
*/
|
|
15
|
+
#ifndef MLPACK_CORE_DATA_LOAD_DEPCRECATED_HPP
|
|
16
|
+
#define MLPACK_CORE_DATA_LOAD_DEPCRECATED_HPP
|
|
17
|
+
|
|
18
|
+
// In case it hasn't already been included.
|
|
19
|
+
#include "load.hpp"
|
|
20
|
+
|
|
21
|
+
#include "image_options.hpp"
|
|
22
|
+
|
|
23
|
+
namespace mlpack {
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Loads a matrix from file, guessing the filetype from the extension. This
|
|
27
|
+
* will transpose the matrix at load time (unless the transpose parameter is set
|
|
28
|
+
* to false).
|
|
29
|
+
*
|
|
30
|
+
* The supported types of files are the same as found in Armadillo:
|
|
31
|
+
*
|
|
32
|
+
* - CSV (arma::csv_ascii), denoted by .csv, or optionally .txt
|
|
33
|
+
* - TSV (arma::raw_ascii), denoted by .tsv, .csv, or .txt
|
|
34
|
+
* - ASCII (arma::raw_ascii), denoted by .txt
|
|
35
|
+
* - Armadillo ASCII (arma::arma_ascii), also denoted by .txt
|
|
36
|
+
* - PGM (arma::pgm_binary), denoted by .pgm
|
|
37
|
+
* - PPM (arma::ppm_binary), denoted by .ppm
|
|
38
|
+
* - Raw binary (arma::raw_binary), denoted by .bin
|
|
39
|
+
* - Armadillo binary (arma::arma_binary), denoted by .bin
|
|
40
|
+
* - HDF5 (arma::hdf5_binary), denoted by .hdf, .hdf5, .h5, or .he5
|
|
41
|
+
*
|
|
42
|
+
* By default, this function will try to automatically determine the type of
|
|
43
|
+
* file to load based on its extension and by inspecting the file. If you know
|
|
44
|
+
* the file type and want to specify it manually, override the default
|
|
45
|
+
* `inputLoadType` parameter with the correct type above (e.g.
|
|
46
|
+
* `arma::csv_ascii`.)
|
|
47
|
+
*
|
|
48
|
+
* If the detected file type is CSV (`arma::csv_ascii`), the first row will be
|
|
49
|
+
* checked for a CSV header. If a CSV header is not detected, the first row
|
|
50
|
+
* will be treated as data; otherwise, the first row will be skipped.
|
|
51
|
+
*
|
|
52
|
+
* If the parameter 'fatal' is set to true, a std::runtime_error exception will
|
|
53
|
+
* be thrown if the matrix does not load successfully. The parameter
|
|
54
|
+
* 'transpose' controls whether or not the matrix is transposed after loading.
|
|
55
|
+
* In most cases, because data is generally stored in a row-major format and
|
|
56
|
+
* mlpack requires column-major matrices, this should be left at its default
|
|
57
|
+
* value of 'true'.
|
|
58
|
+
*
|
|
59
|
+
* @param filename Name of file to load.
|
|
60
|
+
* @param matrix Matrix to load contents of file into.
|
|
61
|
+
* @param fatal If an error should be reported as fatal (default false).
|
|
62
|
+
* @param transpose If true, transpose the matrix after loading (default true).
|
|
63
|
+
* @param inputLoadType Used to determine the type of file to load (default arma::auto_detect).
|
|
64
|
+
* @return Boolean value indicating success or failure of load.
|
|
65
|
+
*/
|
|
66
|
+
template<typename eT>
|
|
67
|
+
[[deprecated("Will be removed in mlpack 5.0.0; use other overloads instead")]]
|
|
68
|
+
bool Load(const std::string& filename,
|
|
69
|
+
arma::Mat<eT>& matrix,
|
|
70
|
+
const bool fatal,
|
|
71
|
+
const bool transpose = true,
|
|
72
|
+
const FileType inputLoadType = FileType::AutoDetect);
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Loads a sparse matrix from file, using arma::coord_ascii format. This
|
|
76
|
+
* will transpose the matrix at load time (unless the transpose parameter is set
|
|
77
|
+
* to false). If the filetype cannot be determined, an error will be given.
|
|
78
|
+
*
|
|
79
|
+
* The supported types of files are the same as found in Armadillo:
|
|
80
|
+
*
|
|
81
|
+
* - CSV (coord_ascii), denoted by .csv or .txt
|
|
82
|
+
* - TSV (coord_ascii), denoted by .tsv or .txt
|
|
83
|
+
* - TXT (coord_ascii), denoted by .txt
|
|
84
|
+
* - Raw binary (raw_binary), denoted by .bin
|
|
85
|
+
* - Armadillo binary (arma_binary), denoted by .bin
|
|
86
|
+
*
|
|
87
|
+
* If the file extension is not one of those types, an error will be given.
|
|
88
|
+
* This is preferable to Armadillo's default behavior of loading an unknown
|
|
89
|
+
* filetype as raw_binary, which can have very confusing effects.
|
|
90
|
+
*
|
|
91
|
+
* If the parameter 'fatal' is set to true, a std::runtime_error exception will
|
|
92
|
+
* be thrown if the matrix does not load successfully. The parameter
|
|
93
|
+
* 'transpose' controls whether or not the matrix is transposed after loading.
|
|
94
|
+
* In most cases, because data is generally stored in a row-major format and
|
|
95
|
+
* mlpack requires column-major matrices, this should be left at its default
|
|
96
|
+
* value of 'true'.
|
|
97
|
+
*
|
|
98
|
+
* @param filename Name of file to load.
|
|
99
|
+
* @param matrix Sparse matrix to load contents of file into.
|
|
100
|
+
* @param fatal If an error should be reported as fatal (default false).
|
|
101
|
+
* @param transpose If true, transpose the matrix after loading (default true).
|
|
102
|
+
* @return Boolean value indicating success or failure of load.
|
|
103
|
+
*/
|
|
104
|
+
template<typename eT>
|
|
105
|
+
[[deprecated("Will be removed in mlpack 5.0.0; use other overloads instead")]]
|
|
106
|
+
bool Load(const std::string& filename,
|
|
107
|
+
arma::SpMat<eT>& matrix,
|
|
108
|
+
const bool fatal,
|
|
109
|
+
const bool transpose = true,
|
|
110
|
+
const FileType inputLoadType = FileType::AutoDetect);
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Load a column vector from a file, guessing the filetype from the extension.
|
|
114
|
+
*
|
|
115
|
+
* The supported types of files are the same as found in Armadillo:
|
|
116
|
+
*
|
|
117
|
+
* - CSV (csv_ascii), denoted by .csv, or optionally .txt
|
|
118
|
+
* - TSV (raw_ascii), denoted by .tsv, .csv, or .txt
|
|
119
|
+
* - ASCII (raw_ascii), denoted by .txt
|
|
120
|
+
* - Armadillo ASCII (arma_ascii), also denoted by .txt
|
|
121
|
+
* - PGM (pgm_binary), denoted by .pgm
|
|
122
|
+
* - PPM (ppm_binary), denoted by .ppm
|
|
123
|
+
* - Raw binary (raw_binary), denoted by .bin
|
|
124
|
+
* - Armadillo binary (arma_binary), denoted by .bin
|
|
125
|
+
* - HDF5, denoted by .hdf, .hdf5, .h5, or .he5
|
|
126
|
+
*
|
|
127
|
+
* If the file extension is not one of those types, an error will be given.
|
|
128
|
+
* This is preferable to Armadillo's default behavior of loading an unknown
|
|
129
|
+
* filetype as raw_binary, which can have very confusing effects.
|
|
130
|
+
*
|
|
131
|
+
* If the parameter 'fatal' is set to true, a std::runtime_error exception will
|
|
132
|
+
* be thrown if the matrix does not load successfully.
|
|
133
|
+
*
|
|
134
|
+
* @param filename Name of file to load.
|
|
135
|
+
* @param vec Column vector to load contents of file into.
|
|
136
|
+
* @param fatal If an error should be reported as fatal (default false).
|
|
137
|
+
* @return Boolean value indicating success or failure of load.
|
|
138
|
+
*/
|
|
139
|
+
template<typename eT>
|
|
140
|
+
[[deprecated("Will be removed in mlpack 5.0.0; use other overloads instead")]]
|
|
141
|
+
bool Load(const std::string& filename,
|
|
142
|
+
arma::Col<eT>& vec,
|
|
143
|
+
const bool fatal);
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Load a row vector from a file, guessing the filetype from the extension.
|
|
147
|
+
*
|
|
148
|
+
* The supported types of files are the same as found in Armadillo:
|
|
149
|
+
*
|
|
150
|
+
* - CSV (csv_ascii), denoted by .csv, or optionally .txt
|
|
151
|
+
* - TSV (raw_ascii), denoted by .tsv, .csv, or .txt
|
|
152
|
+
* - ASCII (raw_ascii), denoted by .txt
|
|
153
|
+
* - Armadillo ASCII (arma_ascii), also denoted by .txt
|
|
154
|
+
* - PGM (pgm_binary), denoted by .pgm
|
|
155
|
+
* - PPM (ppm_binary), denoted by .ppm
|
|
156
|
+
* - Raw binary (raw_binary), denoted by .bin
|
|
157
|
+
* - Armadillo binary (arma_binary), denoted by .bin
|
|
158
|
+
* - HDF5, denoted by .hdf, .hdf5, .h5, or .he5
|
|
159
|
+
*
|
|
160
|
+
* If the file extension is not one of those types, an error will be given.
|
|
161
|
+
* This is preferable to Armadillo's default behavior of loading an unknown
|
|
162
|
+
* filetype as raw_binary, which can have very confusing effects.
|
|
163
|
+
*
|
|
164
|
+
* If the parameter 'fatal' is set to true, a std::runtime_error exception will
|
|
165
|
+
* be thrown if the matrix does not load successfully.
|
|
166
|
+
*
|
|
167
|
+
* @param filename Name of file to load.
|
|
168
|
+
* @param rowvec Row vector to load contents of file into.
|
|
169
|
+
* @param fatal If an error should be reported as fatal (default false).
|
|
170
|
+
* @return Boolean value indicating success or failure of load.
|
|
171
|
+
*/
|
|
172
|
+
template<typename eT>
|
|
173
|
+
[[deprecated("Will be removed in mlpack 5.0.0; use other overloads instead")]]
|
|
174
|
+
bool Load(const std::string& filename,
|
|
175
|
+
arma::Row<eT>& rowvec,
|
|
176
|
+
const bool fatal);
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* Loads a matrix from a file, guessing the filetype from the extension and
|
|
180
|
+
* mapping categorical features with a DatasetMapper object. This will
|
|
181
|
+
* transpose the matrix (unless the transpose parameter is set to false).
|
|
182
|
+
* This particular overload of Load() can only load text-based formats, such as
|
|
183
|
+
* those given below:
|
|
184
|
+
*
|
|
185
|
+
* - CSV (csv_ascii), denoted by .csv, or optionally .txt
|
|
186
|
+
* - TSV (raw_ascii), denoted by .tsv, .csv, or .txt
|
|
187
|
+
* - ASCII (raw_ascii), denoted by .txt
|
|
188
|
+
*
|
|
189
|
+
* If the file extension is not one of those types, an error will be given.
|
|
190
|
+
* This is preferable to Armadillo's default behavior of loading an unknown
|
|
191
|
+
* filetype as raw_binary, which can have very confusing effects.
|
|
192
|
+
*
|
|
193
|
+
* If the parameter 'fatal' is set to true, a std::runtime_error exception will
|
|
194
|
+
* be thrown if the matrix does not load successfully. The parameter
|
|
195
|
+
* 'transpose' controls whether or not the matrix is transposed after loading.
|
|
196
|
+
* In most cases, because data is generally stored in a row-major format and
|
|
197
|
+
* mlpack requires column-major matrices, this should be left at its default
|
|
198
|
+
* value of 'true'.
|
|
199
|
+
*
|
|
200
|
+
* If the given `info` has already been used with a different `Load()`
|
|
201
|
+
* call where the dataset has the same dimensionality, then the mappings and
|
|
202
|
+
* dimension types inside of `info` will be *re-used*. If the given `info` is a
|
|
203
|
+
* new `DatasetMapper` object (e.g. its dimensionality is 0), then new mappings
|
|
204
|
+
* will be created. If the given `info` has a different dimensionality of data
|
|
205
|
+
* than what is present in `filename`, an exception will be thrown.
|
|
206
|
+
*
|
|
207
|
+
* @param filename Name of file to load.
|
|
208
|
+
* @param matrix Matrix to load contents of file into.
|
|
209
|
+
* @param info DatasetMapper object to populate with mappings and data types.
|
|
210
|
+
* @param fatal If an error should be reported as fatal (default false).
|
|
211
|
+
* @param transpose If true, transpose the matrix after loading.
|
|
212
|
+
* @return Boolean value indicating success or failure of load.
|
|
213
|
+
*/
|
|
214
|
+
template<typename eT>
|
|
215
|
+
[[deprecated("Will be removed in mlpack 5.0.0; use other overloads instead")]]
|
|
216
|
+
bool Load(const std::string& filename,
|
|
217
|
+
arma::Mat<eT>& matrix,
|
|
218
|
+
DatasetInfo& info,
|
|
219
|
+
const bool fatal = false,
|
|
220
|
+
const bool transpose = true);
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Load a model from a file, guessing the filetype from the extension, or,
|
|
224
|
+
* optionally, loading the specified format. If automatic extension detection
|
|
225
|
+
* is used and the filetype cannot be determined, an error will be given.
|
|
226
|
+
*
|
|
227
|
+
* The supported types of files are the same as what is supported by the
|
|
228
|
+
* cereal library:
|
|
229
|
+
*
|
|
230
|
+
* - json, denoted by .json
|
|
231
|
+
* - xml, denoted by .xml
|
|
232
|
+
* - binary, denoted by .bin
|
|
233
|
+
*
|
|
234
|
+
* The format parameter can take any of the values in the 'format' enum:
|
|
235
|
+
* 'format::autodetect', 'format::json', 'format::xml', and 'format::binary'.
|
|
236
|
+
* The autodetect functionality operates on the file extension (so, "file.txt"
|
|
237
|
+
* would be autodetected as text).
|
|
238
|
+
*
|
|
239
|
+
* The name parameter should be specified to indicate the name of the structure
|
|
240
|
+
* to be loaded. This should be the same as the name that was used to save the
|
|
241
|
+
* structure (otherwise, the loading procedure will fail).
|
|
242
|
+
*
|
|
243
|
+
* If the parameter 'fatal' is set to true, then an exception will be thrown in
|
|
244
|
+
* the event of load failure. Otherwise, the method will return false and the
|
|
245
|
+
* relevant error information will be printed to Log::Warn.
|
|
246
|
+
*/
|
|
247
|
+
|
|
248
|
+
template<typename T>
|
|
249
|
+
[[deprecated("Will be removed in mlpack 5.0.0; use other overloads instead")]]
|
|
250
|
+
bool Load(const std::string& filename,
|
|
251
|
+
const std::string& name,
|
|
252
|
+
T& t,
|
|
253
|
+
const bool fatal = false,
|
|
254
|
+
format f = format::autodetect,
|
|
255
|
+
std::enable_if_t<HasSerialize<T>::value>* = 0);
|
|
256
|
+
|
|
257
|
+
template<typename eT>
|
|
258
|
+
bool Load(const std::string& filename,
|
|
259
|
+
arma::Mat<eT>& matrix,
|
|
260
|
+
const bool fatal,
|
|
261
|
+
const bool transpose,
|
|
262
|
+
const FileType inputLoadType)
|
|
263
|
+
{
|
|
264
|
+
MatrixOptions opts;
|
|
265
|
+
opts.Fatal() = fatal;
|
|
266
|
+
opts.NoTranspose() = !transpose;
|
|
267
|
+
opts.Format() = inputLoadType;
|
|
268
|
+
|
|
269
|
+
return Load(filename, matrix, opts, false);
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
// For loading data into sparse matrix
|
|
273
|
+
template <typename eT>
|
|
274
|
+
bool Load(const std::string& filename,
|
|
275
|
+
arma::SpMat<eT>& matrix,
|
|
276
|
+
const bool fatal,
|
|
277
|
+
const bool transpose,
|
|
278
|
+
const FileType inputLoadType)
|
|
279
|
+
{
|
|
280
|
+
MatrixOptions opts;
|
|
281
|
+
opts.Fatal() = fatal;
|
|
282
|
+
opts.NoTranspose() = !transpose;
|
|
283
|
+
opts.Format() = inputLoadType;
|
|
284
|
+
|
|
285
|
+
return Load(filename, matrix, opts, false);
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
// For loading data into a column vector
|
|
289
|
+
template <typename eT>
|
|
290
|
+
bool Load(const std::string& filename,
|
|
291
|
+
arma::Col<eT>& vec,
|
|
292
|
+
const bool fatal)
|
|
293
|
+
{
|
|
294
|
+
DataOptions opts;
|
|
295
|
+
opts.Fatal() = fatal;
|
|
296
|
+
return Load(filename, vec, opts, false);
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
// For loading data into a raw vector
|
|
300
|
+
template <typename eT>
|
|
301
|
+
bool Load(const std::string& filename,
|
|
302
|
+
arma::Row<eT>& rowvec,
|
|
303
|
+
const bool fatal)
|
|
304
|
+
{
|
|
305
|
+
DataOptions opts;
|
|
306
|
+
opts.Fatal() = fatal;
|
|
307
|
+
return Load(filename, rowvec, opts, false);
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
// Load with mappings. Unfortunately we have to implement this ourselves.
|
|
311
|
+
template<typename eT>
|
|
312
|
+
bool Load(const std::string& filename,
|
|
313
|
+
arma::Mat<eT>& matrix,
|
|
314
|
+
DatasetInfo& info,
|
|
315
|
+
const bool fatal,
|
|
316
|
+
const bool transpose)
|
|
317
|
+
{
|
|
318
|
+
TextOptions opts;
|
|
319
|
+
opts.Fatal() = fatal;
|
|
320
|
+
opts.NoTranspose() = !transpose;
|
|
321
|
+
opts.Categorical() = true;
|
|
322
|
+
opts.DatasetInfo() = info;
|
|
323
|
+
|
|
324
|
+
bool success = Load(filename, matrix, opts);
|
|
325
|
+
|
|
326
|
+
info = opts.DatasetInfo();
|
|
327
|
+
|
|
328
|
+
return success;
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
/**
|
|
332
|
+
* Image load/save interfaces.
|
|
333
|
+
*/
|
|
334
|
+
|
|
335
|
+
//
|
|
336
|
+
// Old Image loading interface, to be removed in mlpack 5.0.0
|
|
337
|
+
//
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Load the image file into the given matrix.
|
|
341
|
+
*
|
|
342
|
+
* @param filename Name of the image file.
|
|
343
|
+
* @param matrix Matrix to load the image into.
|
|
344
|
+
* @param info An object of ImageInfo class.
|
|
345
|
+
* @param fatal If an error should be reported as fatal (default false).
|
|
346
|
+
* @return Boolean value indicating success or failure of load.
|
|
347
|
+
*/
|
|
348
|
+
template<typename eT>
|
|
349
|
+
bool Load(const std::string& filename,
|
|
350
|
+
arma::Mat<eT>& matrix,
|
|
351
|
+
ImageInfo& opts,
|
|
352
|
+
const bool fatal)
|
|
353
|
+
{
|
|
354
|
+
// Use the new implementation.
|
|
355
|
+
opts.Fatal() = fatal;
|
|
356
|
+
opts.Format() = FileType::ImageType;
|
|
357
|
+
std::vector<std::string> files;
|
|
358
|
+
files.push_back(filename);
|
|
359
|
+
return LoadImage(files, matrix, opts);
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
/**
|
|
363
|
+
* Load the image file into the given matrix.
|
|
364
|
+
*
|
|
365
|
+
* @param files A vector consisting of filenames.
|
|
366
|
+
* @param matrix Matrix to save the image from.
|
|
367
|
+
* @param info An object of ImageInfo class.
|
|
368
|
+
* @param fatal If an error should be reported as fatal (default false).
|
|
369
|
+
* @return Boolean value indicating success or failure of load.
|
|
370
|
+
*/
|
|
371
|
+
template<typename eT>
|
|
372
|
+
bool Load(const std::vector<std::string>& files,
|
|
373
|
+
arma::Mat<eT>& matrix,
|
|
374
|
+
ImageInfo& opts,
|
|
375
|
+
const bool fatal)
|
|
376
|
+
{
|
|
377
|
+
// Use the new implementation.
|
|
378
|
+
opts.Fatal() = fatal;
|
|
379
|
+
opts.Format() = FileType::ImageType;
|
|
380
|
+
return LoadImage(files, matrix, opts);
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
// Load a model from file.
|
|
384
|
+
template<typename T>
|
|
385
|
+
bool Load(const std::string& filename,
|
|
386
|
+
const std::string& name,
|
|
387
|
+
T& t,
|
|
388
|
+
const bool fatal,
|
|
389
|
+
format f,
|
|
390
|
+
std::enable_if_t<HasSerialize<T>::value>*)
|
|
391
|
+
{
|
|
392
|
+
if (f == format::autodetect)
|
|
393
|
+
{
|
|
394
|
+
std::string extension = Extension(filename);
|
|
395
|
+
|
|
396
|
+
if (extension == "xml")
|
|
397
|
+
f = format::xml;
|
|
398
|
+
else if (extension == "bin")
|
|
399
|
+
f = format::binary;
|
|
400
|
+
else if (extension == "json")
|
|
401
|
+
f = format::json;
|
|
402
|
+
else
|
|
403
|
+
{
|
|
404
|
+
if (fatal)
|
|
405
|
+
Log::Fatal << "Unable to detect type of '" << filename << "'; incorrect"
|
|
406
|
+
<< " extension?" << std::endl;
|
|
407
|
+
else
|
|
408
|
+
Log::Warn << "Unable to detect type of '" << filename << "'; load "
|
|
409
|
+
<< "failed. Incorrect extension?" << std::endl;
|
|
410
|
+
|
|
411
|
+
return false;
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
// Now load the given format.
|
|
416
|
+
std::ifstream ifs;
|
|
417
|
+
#ifdef _WIN32 // Open non-text in binary mode on Windows.
|
|
418
|
+
if (f == format::binary)
|
|
419
|
+
ifs.open(filename, std::ifstream::in | std::ifstream::binary);
|
|
420
|
+
else
|
|
421
|
+
ifs.open(filename, std::ifstream::in);
|
|
422
|
+
#else
|
|
423
|
+
ifs.open(filename, std::ifstream::in);
|
|
424
|
+
#endif
|
|
425
|
+
|
|
426
|
+
if (!ifs.is_open())
|
|
427
|
+
{
|
|
428
|
+
std::stringstream oss;
|
|
429
|
+
oss << "Unable to open file '" << filename << "' to load object '"
|
|
430
|
+
<< name << "'.";
|
|
431
|
+
return HandleError(oss, fatal);
|
|
432
|
+
}
|
|
433
|
+
try
|
|
434
|
+
{
|
|
435
|
+
if (f == format::xml)
|
|
436
|
+
{
|
|
437
|
+
cereal::XMLInputArchive ar(ifs);
|
|
438
|
+
ar(cereal::make_nvp(name.c_str(), t));
|
|
439
|
+
}
|
|
440
|
+
else if (f == format::json)
|
|
441
|
+
{
|
|
442
|
+
cereal::JSONInputArchive ar(ifs);
|
|
443
|
+
ar(cereal::make_nvp(name.c_str(), t));
|
|
444
|
+
}
|
|
445
|
+
else if (f == format::binary)
|
|
446
|
+
{
|
|
447
|
+
cereal::BinaryInputArchive ar(ifs);
|
|
448
|
+
ar(cereal::make_nvp(name.c_str(), t));
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
return true;
|
|
452
|
+
}
|
|
453
|
+
catch (cereal::Exception& e)
|
|
454
|
+
{
|
|
455
|
+
if (fatal)
|
|
456
|
+
Log::Fatal << e.what() << std::endl;
|
|
457
|
+
else
|
|
458
|
+
Log::Warn << e.what() << std::endl;
|
|
459
|
+
|
|
460
|
+
return false;
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
} // namespace mlpack
|
|
465
|
+
|
|
466
|
+
#endif
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @file core/data/load_image.hpp
|
|
3
3
|
* @author Mehul Kumar Nirala
|
|
4
|
+
* @author Omar Shrit
|
|
4
5
|
*
|
|
5
6
|
* Implementation of image loading functionality via STB.
|
|
6
7
|
*
|
|
@@ -15,55 +16,82 @@
|
|
|
15
16
|
|
|
16
17
|
#include <mlpack/core/stb/stb.hpp>
|
|
17
18
|
|
|
18
|
-
#include "image_info.hpp"
|
|
19
|
-
|
|
20
19
|
namespace mlpack {
|
|
21
|
-
namespace data {
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Image load/save interfaces.
|
|
25
|
-
*/
|
|
26
20
|
|
|
27
|
-
/**
|
|
28
|
-
* Load the image file into the given matrix.
|
|
29
|
-
*
|
|
30
|
-
* @param filename Name of the image file.
|
|
31
|
-
* @param matrix Matrix to load the image into.
|
|
32
|
-
* @param info An object of ImageInfo class.
|
|
33
|
-
* @param fatal If an error should be reported as fatal (default false).
|
|
34
|
-
* @return Boolean value indicating success or failure of load.
|
|
35
|
-
*/
|
|
36
21
|
template<typename eT>
|
|
37
|
-
bool
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
22
|
+
bool LoadImage(const std::vector<std::string>& files,
|
|
23
|
+
arma::Mat<eT>& matrix,
|
|
24
|
+
ImageOptions& opts)
|
|
25
|
+
{
|
|
26
|
+
size_t dimension = 0;
|
|
27
|
+
if (files.empty())
|
|
28
|
+
{
|
|
29
|
+
std::stringstream oss;
|
|
30
|
+
oss << "Load(): list of images is empty, please specify the files names.";
|
|
31
|
+
return HandleError(oss, opts);
|
|
32
|
+
}
|
|
41
33
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
34
|
+
if (opts.Format() == FileType::ImageType ||
|
|
35
|
+
opts.Format() == FileType::AutoDetect)
|
|
36
|
+
{
|
|
37
|
+
DetectFromExtension<arma::Mat<eT>, ImageOptions>(files.back(), opts);
|
|
38
|
+
if (!opts.loadType.count(Extension(files.back())))
|
|
39
|
+
{
|
|
40
|
+
std::stringstream oss;
|
|
41
|
+
oss << "Load(): image type " << opts.FileTypeToString()
|
|
42
|
+
<< " not supported. Supported formats: ";
|
|
43
|
+
for (const auto& x : opts.loadType)
|
|
44
|
+
oss << " " << x;
|
|
45
|
+
return HandleError(oss, opts);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
56
48
|
|
|
57
|
-
//
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
49
|
+
// Temporary variables needed as stb_image.h supports int parameters.
|
|
50
|
+
int tempWidth, tempHeight, tempChannels;
|
|
51
|
+
arma::Mat<unsigned char> images;
|
|
52
|
+
unsigned char* imageBuf = nullptr;
|
|
53
|
+
size_t i = 0;
|
|
62
54
|
|
|
63
|
-
|
|
64
|
-
|
|
55
|
+
while (i < files.size())
|
|
56
|
+
{
|
|
57
|
+
imageBuf = stbi_load(files.at(i).c_str(), &tempWidth, &tempHeight,
|
|
58
|
+
&tempChannels, opts.Channels());
|
|
59
|
+
if (!imageBuf)
|
|
60
|
+
{
|
|
61
|
+
std::stringstream oss;
|
|
62
|
+
oss << "Load(): failed to load image '" << files.at(i) << "': "
|
|
63
|
+
<< stbi_failure_reason();
|
|
64
|
+
return HandleError(oss, opts);
|
|
65
|
+
}
|
|
66
|
+
if (opts.Width() == 0 || opts.Height() == 0)
|
|
67
|
+
{
|
|
68
|
+
opts.Width() = tempWidth;
|
|
69
|
+
opts.Height() = tempHeight;
|
|
70
|
+
opts.Channels() = tempChannels;
|
|
71
|
+
}
|
|
72
|
+
dimension = opts.Width() * opts.Height() * opts.Channels();
|
|
73
|
+
images.set_size(dimension, files.size());
|
|
74
|
+
|
|
75
|
+
if ((size_t) tempWidth != opts.Width() ||
|
|
76
|
+
(size_t) tempHeight != opts.Height() ||
|
|
77
|
+
(size_t) tempChannels != opts.Channels())
|
|
78
|
+
{
|
|
79
|
+
std::stringstream oss;
|
|
80
|
+
oss << "Load(): dimension mismatch: in the case of "
|
|
81
|
+
<< "several images, please check that all the images have the same "
|
|
82
|
+
<< "dimensions; if not, load each image in one column and call this"
|
|
83
|
+
<< " function iteratively." << std::endl;
|
|
84
|
+
return HandleError(oss, opts);
|
|
85
|
+
}
|
|
86
|
+
images.col(i) = arma::Mat<unsigned char>(imageBuf, dimension, 1,
|
|
87
|
+
false, true);
|
|
88
|
+
stbi_image_free(imageBuf);
|
|
89
|
+
i++;
|
|
90
|
+
}
|
|
91
|
+
matrix = arma::conv_to<arma::Mat<eT>>::from(std::move(images));
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
65
94
|
|
|
66
|
-
//
|
|
67
|
-
#include "load_image_impl.hpp"
|
|
95
|
+
} // namespace mlpack
|
|
68
96
|
|
|
69
97
|
#endif
|