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
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file core/data/format.hpp
|
|
3
|
-
* @author Ryan Curtin
|
|
4
|
-
*
|
|
5
|
-
* Define the formats that can be used by mlpack's Load() and Save() mechanisms
|
|
6
|
-
* via cereal.
|
|
7
|
-
*
|
|
8
|
-
* mlpack is free software; you may redistribute it and/or modify it under the
|
|
9
|
-
* terms of the 3-clause BSD license. You should have received a copy of the
|
|
10
|
-
* 3-clause BSD license along with mlpack. If not, see
|
|
11
|
-
* http://www.opensource.org/licenses/BSD-3-Clause for more information.
|
|
12
|
-
*/
|
|
13
|
-
#ifndef MLPACK_CORE_DATA_FORMATS_HPP
|
|
14
|
-
#define MLPACK_CORE_DATA_FORMATS_HPP
|
|
15
|
-
|
|
16
|
-
namespace mlpack {
|
|
17
|
-
namespace data {
|
|
18
|
-
|
|
19
|
-
//! Define the formats we can read through cereal.
|
|
20
|
-
enum format
|
|
21
|
-
{
|
|
22
|
-
autodetect,
|
|
23
|
-
json,
|
|
24
|
-
xml,
|
|
25
|
-
binary
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
} // namespace data
|
|
29
|
-
} // namespace mlpack
|
|
30
|
-
|
|
31
|
-
#endif
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file core/data/image_info.hpp
|
|
3
|
-
* @author Mehul Kumar Nirala
|
|
4
|
-
*
|
|
5
|
-
* An image information holder.
|
|
6
|
-
*
|
|
7
|
-
* mlpack is free software; you may redistribute it and/or modify it under the
|
|
8
|
-
* terms of the 3-clause BSD license. You should have received a copy of the
|
|
9
|
-
* 3-clause BSD license along with mlpack. If not, see
|
|
10
|
-
* http://www.opensource.org/licenses/BSD-3-Clause for more information.
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
#ifndef MLPACK_CORE_DATA_IMAGE_INFO_HPP
|
|
14
|
-
#define MLPACK_CORE_DATA_IMAGE_INFO_HPP
|
|
15
|
-
|
|
16
|
-
#include <mlpack/prereqs.hpp>
|
|
17
|
-
#include "extension.hpp"
|
|
18
|
-
|
|
19
|
-
namespace mlpack {
|
|
20
|
-
namespace data {
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Checks if the given image filename is supported.
|
|
24
|
-
*
|
|
25
|
-
* @param fileName Name of the image file.
|
|
26
|
-
* @param save Set to true to check if the file format can be saved, else loaded.
|
|
27
|
-
* @return Boolean value indicating success if it is an image.
|
|
28
|
-
*/
|
|
29
|
-
inline bool ImageFormatSupported(const std::string& fileName,
|
|
30
|
-
const bool save = false);
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Implements meta-data of images required by data::Load and
|
|
34
|
-
* data::Save for loading and saving images into arma::Mat.
|
|
35
|
-
*/
|
|
36
|
-
class ImageInfo
|
|
37
|
-
{
|
|
38
|
-
public:
|
|
39
|
-
/**
|
|
40
|
-
* Instantiate the ImageInfo object with the given image width, height,
|
|
41
|
-
* number of channels and quality parameter.
|
|
42
|
-
*
|
|
43
|
-
* @param width Image width.
|
|
44
|
-
* @param height Image height.
|
|
45
|
-
* @param channels Number of channels in the image.
|
|
46
|
-
* @param quality Compression of the image if saved as jpg (0 - 100).
|
|
47
|
-
*/
|
|
48
|
-
ImageInfo(const size_t width = 0,
|
|
49
|
-
const size_t height = 0,
|
|
50
|
-
const size_t channels = 3,
|
|
51
|
-
const size_t quality = 90);
|
|
52
|
-
|
|
53
|
-
//! Get the image width.
|
|
54
|
-
const size_t& Width() const { return width; }
|
|
55
|
-
//! Modify the image width.
|
|
56
|
-
size_t& Width() { return width; }
|
|
57
|
-
//! Get the image height.
|
|
58
|
-
|
|
59
|
-
const size_t& Height() const { return height; }
|
|
60
|
-
//! Modify the image height.
|
|
61
|
-
size_t& Height() { return height; }
|
|
62
|
-
|
|
63
|
-
//! Get the image channels.
|
|
64
|
-
const size_t& Channels() const { return channels; }
|
|
65
|
-
//! Modify the image channels.
|
|
66
|
-
size_t& Channels() { return channels; }
|
|
67
|
-
|
|
68
|
-
//! Get the image quality.
|
|
69
|
-
const size_t& Quality() const { return quality; }
|
|
70
|
-
//! Modify the image quality.
|
|
71
|
-
size_t& Quality() { return quality; }
|
|
72
|
-
|
|
73
|
-
template<typename Archive>
|
|
74
|
-
void serialize(Archive& ar, const uint32_t /* version */)
|
|
75
|
-
{
|
|
76
|
-
ar(CEREAL_NVP(width));
|
|
77
|
-
ar(CEREAL_NVP(channels));
|
|
78
|
-
ar(CEREAL_NVP(height));
|
|
79
|
-
ar(CEREAL_NVP(quality));
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
private:
|
|
83
|
-
// To store the image width.
|
|
84
|
-
size_t width;
|
|
85
|
-
|
|
86
|
-
// To store the image height.
|
|
87
|
-
size_t height;
|
|
88
|
-
|
|
89
|
-
// To store the number of channels in the image.
|
|
90
|
-
size_t channels;
|
|
91
|
-
|
|
92
|
-
// Compression of the image if saved as jpg (0 - 100).
|
|
93
|
-
size_t quality;
|
|
94
|
-
};
|
|
95
|
-
|
|
96
|
-
} // namespace data
|
|
97
|
-
} // namespace mlpack
|
|
98
|
-
|
|
99
|
-
// Include implementation of Image.
|
|
100
|
-
#include "image_info_impl.hpp"
|
|
101
|
-
|
|
102
|
-
#endif
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file core/data/image_info_impl.hpp
|
|
3
|
-
* @author Mehul Kumar Nirala
|
|
4
|
-
*
|
|
5
|
-
* An image information holder implementation.
|
|
6
|
-
*
|
|
7
|
-
* mlpack is free software; you may redistribute it and/or modify it under the
|
|
8
|
-
* terms of the 3-clause BSD license. You should have received a copy of the
|
|
9
|
-
* 3-clause BSD license along with mlpack. If not, see
|
|
10
|
-
* http://www.opensource.org/licenses/BSD-3-Clause for more information.
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
#ifndef MLPACK_CORE_DATA_IMAGE_INFO_IMPL_HPP
|
|
14
|
-
#define MLPACK_CORE_DATA_IMAGE_INFO_IMPL_HPP
|
|
15
|
-
|
|
16
|
-
namespace mlpack {
|
|
17
|
-
namespace data {
|
|
18
|
-
|
|
19
|
-
inline const std::vector<std::string> LoadFileTypes()
|
|
20
|
-
{
|
|
21
|
-
return std::vector<std::string>({"jpg", "png", "tga", "bmp", "psd", "gif",
|
|
22
|
-
"hdr", "pic", "pnm", "jpeg"});
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
inline const std::vector<std::string> SaveFileTypes()
|
|
26
|
-
{
|
|
27
|
-
return std::vector<std::string>({"jpg", "png", "tga", "bmp", "hdr"});
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
} // namespace data
|
|
31
|
-
} // namespace mlpack
|
|
32
|
-
|
|
33
|
-
// In case it hasn't been included yet.
|
|
34
|
-
#include "image_info.hpp"
|
|
35
|
-
|
|
36
|
-
namespace mlpack {
|
|
37
|
-
namespace data {
|
|
38
|
-
|
|
39
|
-
inline bool ImageFormatSupported(const std::string& fileName, const bool save)
|
|
40
|
-
{
|
|
41
|
-
if (save)
|
|
42
|
-
{
|
|
43
|
-
// Iterate over all supported file types that can be saved.
|
|
44
|
-
for (auto extension : SaveFileTypes())
|
|
45
|
-
{
|
|
46
|
-
if (extension == Extension(fileName))
|
|
47
|
-
return true;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
else
|
|
51
|
-
{
|
|
52
|
-
// Iterate over all supported file types that can be loaded.
|
|
53
|
-
for (auto extension : LoadFileTypes())
|
|
54
|
-
{
|
|
55
|
-
if (extension == Extension(fileName))
|
|
56
|
-
return true;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
} // namespace data
|
|
64
|
-
} // namespace mlpack
|
|
65
|
-
|
|
66
|
-
namespace mlpack {
|
|
67
|
-
namespace data {
|
|
68
|
-
|
|
69
|
-
inline ImageInfo::ImageInfo(const size_t width,
|
|
70
|
-
const size_t height,
|
|
71
|
-
const size_t channels,
|
|
72
|
-
const size_t quality) :
|
|
73
|
-
width(width),
|
|
74
|
-
height(height),
|
|
75
|
-
channels(channels),
|
|
76
|
-
quality(quality)
|
|
77
|
-
{
|
|
78
|
-
// Do nothing.
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
} // namespace data
|
|
82
|
-
} // namespace mlpack
|
|
83
|
-
|
|
84
|
-
#endif
|
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file core/data/load_image_impl.hpp
|
|
3
|
-
* @author Mehul Kumar Nirala
|
|
4
|
-
*
|
|
5
|
-
* An image loading utility implementation via STB.
|
|
6
|
-
*
|
|
7
|
-
* mlpack is free software; you may redistribute it and/or modify it under the
|
|
8
|
-
* terms of the 3-clause BSD license. You should have received a copy of the
|
|
9
|
-
* 3-clause BSD license along with mlpack. If not, see
|
|
10
|
-
* http://www.opensource.org/licenses/BSD-3-Clause for more information.
|
|
11
|
-
*/
|
|
12
|
-
#ifndef MLPACK_CORE_DATA_LOAD_IMAGE_IMPL_HPP
|
|
13
|
-
#define MLPACK_CORE_DATA_LOAD_IMAGE_IMPL_HPP
|
|
14
|
-
|
|
15
|
-
// In case it hasn't been included yet.
|
|
16
|
-
#include "load_image.hpp"
|
|
17
|
-
#include "image_info.hpp"
|
|
18
|
-
|
|
19
|
-
namespace mlpack {
|
|
20
|
-
namespace data {
|
|
21
|
-
|
|
22
|
-
// Image loading API.
|
|
23
|
-
template<typename eT>
|
|
24
|
-
bool Load(const std::string& filename,
|
|
25
|
-
arma::Mat<eT>& matrix,
|
|
26
|
-
ImageInfo& info,
|
|
27
|
-
const bool fatal)
|
|
28
|
-
{
|
|
29
|
-
Timer::Start("loading_image");
|
|
30
|
-
|
|
31
|
-
// STB loads into unsigned char matrices, so we may have to convert once
|
|
32
|
-
// loaded.
|
|
33
|
-
arma::Mat<unsigned char> tempMatrix;
|
|
34
|
-
const bool result = LoadImage(filename, tempMatrix, info, fatal);
|
|
35
|
-
|
|
36
|
-
// If fatal is true, then the program will have already thrown an exception.
|
|
37
|
-
if (!result)
|
|
38
|
-
{
|
|
39
|
-
Timer::Stop("loading_image");
|
|
40
|
-
return false;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
matrix = arma::conv_to<arma::Mat<eT>>::from(tempMatrix);
|
|
44
|
-
Timer::Stop("loading_image");
|
|
45
|
-
return true;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
// Image loading API for multiple files.
|
|
49
|
-
template<typename eT>
|
|
50
|
-
bool Load(const std::vector<std::string>& files,
|
|
51
|
-
arma::Mat<eT>& matrix,
|
|
52
|
-
ImageInfo& info,
|
|
53
|
-
const bool fatal)
|
|
54
|
-
{
|
|
55
|
-
if (files.size() == 0)
|
|
56
|
-
{
|
|
57
|
-
std::ostringstream oss;
|
|
58
|
-
oss << "Load(): vector of image files is empty." << std::endl;
|
|
59
|
-
|
|
60
|
-
if (fatal)
|
|
61
|
-
Log::Fatal << oss.str();
|
|
62
|
-
else
|
|
63
|
-
Log::Warn << oss.str();
|
|
64
|
-
|
|
65
|
-
return false;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
arma::Mat<unsigned char> img;
|
|
69
|
-
bool status = LoadImage(files[0], img, info, fatal);
|
|
70
|
-
|
|
71
|
-
if (!status)
|
|
72
|
-
return false;
|
|
73
|
-
|
|
74
|
-
// Decide matrix dimension using the image height and width.
|
|
75
|
-
arma::Mat<unsigned char> tmpMatrix(
|
|
76
|
-
info.Width() * info.Height() * info.Channels(), files.size());
|
|
77
|
-
tmpMatrix.col(0) = img;
|
|
78
|
-
|
|
79
|
-
for (size_t i = 1; i < files.size() ; ++i)
|
|
80
|
-
{
|
|
81
|
-
arma::Mat<unsigned char> colImg(tmpMatrix.colptr(i), tmpMatrix.n_rows, 1,
|
|
82
|
-
false, true);
|
|
83
|
-
status = LoadImage(files[i], colImg, info, fatal);
|
|
84
|
-
|
|
85
|
-
if (!status)
|
|
86
|
-
return false;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
matrix = arma::conv_to<arma::Mat<eT>>::from(tmpMatrix);
|
|
90
|
-
return true;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
inline bool LoadImage(const std::string& filename,
|
|
94
|
-
arma::Mat<unsigned char>& matrix,
|
|
95
|
-
ImageInfo& info,
|
|
96
|
-
const bool fatal)
|
|
97
|
-
{
|
|
98
|
-
unsigned char* image;
|
|
99
|
-
|
|
100
|
-
if (!ImageFormatSupported(filename))
|
|
101
|
-
{
|
|
102
|
-
std::ostringstream oss;
|
|
103
|
-
oss << "Load(): file type " << Extension(filename) << " not supported. ";
|
|
104
|
-
oss << "Currently it supports:";
|
|
105
|
-
auto x = LoadFileTypes();
|
|
106
|
-
for (auto extension : x)
|
|
107
|
-
oss << " " << extension;
|
|
108
|
-
oss << "." << std::endl;
|
|
109
|
-
|
|
110
|
-
if (fatal)
|
|
111
|
-
{
|
|
112
|
-
Log::Fatal << oss.str();
|
|
113
|
-
}
|
|
114
|
-
else
|
|
115
|
-
{
|
|
116
|
-
Log::Warn << oss.str();
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
return false;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
// Temporary variables needed as stb_image.h supports int parameters.
|
|
123
|
-
int tempWidth, tempHeight, tempChannels;
|
|
124
|
-
|
|
125
|
-
// For grayscale images.
|
|
126
|
-
if (info.Channels() == 1)
|
|
127
|
-
{
|
|
128
|
-
image = stbi_load(filename.c_str(), &tempWidth, &tempHeight, &tempChannels,
|
|
129
|
-
STBI_grey);
|
|
130
|
-
}
|
|
131
|
-
else
|
|
132
|
-
{
|
|
133
|
-
image = stbi_load(filename.c_str(), &tempWidth, &tempHeight, &tempChannels,
|
|
134
|
-
STBI_rgb);
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
if (!image)
|
|
138
|
-
{
|
|
139
|
-
if (fatal)
|
|
140
|
-
{
|
|
141
|
-
Log::Fatal << "Load(): failed to load image '" << filename << "': "
|
|
142
|
-
<< stbi_failure_reason() << std::endl;
|
|
143
|
-
}
|
|
144
|
-
else
|
|
145
|
-
{
|
|
146
|
-
Log::Warn << "Load(): failed to load image '" << filename << "': "
|
|
147
|
-
<< stbi_failure_reason() << std::endl;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
return false;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
info.Width() = tempWidth;
|
|
154
|
-
info.Height() = tempHeight;
|
|
155
|
-
// Only set the new number of channels if we didn't force grayscale loading.
|
|
156
|
-
if (info.Channels() != 1)
|
|
157
|
-
info.Channels() = tempChannels;
|
|
158
|
-
|
|
159
|
-
// Copy image into armadillo Mat.
|
|
160
|
-
matrix = arma::Mat<unsigned char>(image, info.Width() * info.Height() *
|
|
161
|
-
info.Channels(), 1, true, true);
|
|
162
|
-
|
|
163
|
-
// Free the image pointer.
|
|
164
|
-
stbi_image_free(image);
|
|
165
|
-
return true;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
} // namespace data
|
|
169
|
-
} // namespace mlpack
|
|
170
|
-
|
|
171
|
-
#endif
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file core/data/load_model_impl.hpp
|
|
3
|
-
* @author Ryan Curtin
|
|
4
|
-
*
|
|
5
|
-
* Implementation of model-specific Load() function.
|
|
6
|
-
*
|
|
7
|
-
* mlpack is free software; you may redistribute it and/or modify it under the
|
|
8
|
-
* terms of the 3-clause BSD license. You should have received a copy of the
|
|
9
|
-
* 3-clause BSD license along with mlpack. If not, see
|
|
10
|
-
* http://www.opensource.org/licenses/BSD-3-Clause for more information.
|
|
11
|
-
*/
|
|
12
|
-
#ifndef MLPACK_CORE_DATA_LOAD_MODEL_IMPL_HPP
|
|
13
|
-
#define MLPACK_CORE_DATA_LOAD_MODEL_IMPL_HPP
|
|
14
|
-
|
|
15
|
-
// In case it hasn't already been included.
|
|
16
|
-
#include "load.hpp"
|
|
17
|
-
|
|
18
|
-
#include "extension.hpp"
|
|
19
|
-
|
|
20
|
-
#include <cereal/archives/xml.hpp>
|
|
21
|
-
#include <cereal/archives/binary.hpp>
|
|
22
|
-
#include <cereal/archives/json.hpp>
|
|
23
|
-
|
|
24
|
-
namespace mlpack {
|
|
25
|
-
namespace data {
|
|
26
|
-
|
|
27
|
-
// Load a model from file.
|
|
28
|
-
template<typename T>
|
|
29
|
-
bool Load(const std::string& filename,
|
|
30
|
-
const std::string& name,
|
|
31
|
-
T& t,
|
|
32
|
-
const bool fatal,
|
|
33
|
-
format f,
|
|
34
|
-
std::enable_if_t<HasSerialize<T>::value>*)
|
|
35
|
-
{
|
|
36
|
-
if (f == format::autodetect)
|
|
37
|
-
{
|
|
38
|
-
std::string extension = Extension(filename);
|
|
39
|
-
|
|
40
|
-
if (extension == "xml")
|
|
41
|
-
f = format::xml;
|
|
42
|
-
else if (extension == "bin")
|
|
43
|
-
f = format::binary;
|
|
44
|
-
else if (extension == "json")
|
|
45
|
-
f = format::json;
|
|
46
|
-
else
|
|
47
|
-
{
|
|
48
|
-
if (fatal)
|
|
49
|
-
Log::Fatal << "Unable to detect type of '" << filename << "'; incorrect"
|
|
50
|
-
<< " extension?" << std::endl;
|
|
51
|
-
else
|
|
52
|
-
Log::Warn << "Unable to detect type of '" << filename << "'; load "
|
|
53
|
-
<< "failed. Incorrect extension?" << std::endl;
|
|
54
|
-
|
|
55
|
-
return false;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// Now load the given format.
|
|
60
|
-
std::ifstream ifs;
|
|
61
|
-
#ifdef _WIN32 // Open non-text in binary mode on Windows.
|
|
62
|
-
if (f == format::binary)
|
|
63
|
-
ifs.open(filename, std::ifstream::in | std::ifstream::binary);
|
|
64
|
-
else
|
|
65
|
-
ifs.open(filename, std::ifstream::in);
|
|
66
|
-
#else
|
|
67
|
-
ifs.open(filename, std::ifstream::in);
|
|
68
|
-
#endif
|
|
69
|
-
|
|
70
|
-
if (!ifs.is_open())
|
|
71
|
-
{
|
|
72
|
-
if (fatal)
|
|
73
|
-
Log::Fatal << "Unable to open file '" << filename << "' to load object '"
|
|
74
|
-
<< name << "'." << std::endl;
|
|
75
|
-
else
|
|
76
|
-
Log::Warn << "Unable to open file '" << filename << "' to load object '"
|
|
77
|
-
<< name << "'." << std::endl;
|
|
78
|
-
|
|
79
|
-
return false;
|
|
80
|
-
}
|
|
81
|
-
try
|
|
82
|
-
{
|
|
83
|
-
if (f == format::xml)
|
|
84
|
-
{
|
|
85
|
-
cereal::XMLInputArchive ar(ifs);
|
|
86
|
-
ar(cereal::make_nvp(name.c_str(), t));
|
|
87
|
-
}
|
|
88
|
-
else if (f == format::json)
|
|
89
|
-
{
|
|
90
|
-
cereal::JSONInputArchive ar(ifs);
|
|
91
|
-
ar(cereal::make_nvp(name.c_str(), t));
|
|
92
|
-
}
|
|
93
|
-
else if (f == format::binary)
|
|
94
|
-
{
|
|
95
|
-
cereal::BinaryInputArchive ar(ifs);
|
|
96
|
-
ar(cereal::make_nvp(name.c_str(), t));
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
return true;
|
|
100
|
-
}
|
|
101
|
-
catch (cereal::Exception& e)
|
|
102
|
-
{
|
|
103
|
-
if (fatal)
|
|
104
|
-
Log::Fatal << e.what() << std::endl;
|
|
105
|
-
else
|
|
106
|
-
Log::Warn << e.what() << std::endl;
|
|
107
|
-
|
|
108
|
-
return false;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
} // namespace data
|
|
113
|
-
} // namespace mlpack
|
|
114
|
-
|
|
115
|
-
#endif
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file core/data/load_vec_impl.hpp
|
|
3
|
-
* @author Ryan Curtin
|
|
4
|
-
*
|
|
5
|
-
* Implementation of templatized load() function defined in load.hpp for
|
|
6
|
-
* vectors.
|
|
7
|
-
*
|
|
8
|
-
* mlpack is free software; you may redistribute it and/or modify it under the
|
|
9
|
-
* terms of the 3-clause BSD license. You should have received a copy of the
|
|
10
|
-
* 3-clause BSD license along with mlpack. If not, see
|
|
11
|
-
* http://www.opensource.org/licenses/BSD-3-Clause for more information.
|
|
12
|
-
*/
|
|
13
|
-
#ifndef MLPACK_CORE_DATA_LOAD_VEC_IMPL_HPP
|
|
14
|
-
#define MLPACK_CORE_DATA_LOAD_VEC_IMPL_HPP
|
|
15
|
-
|
|
16
|
-
// In case it hasn't already been included.
|
|
17
|
-
#include "load.hpp"
|
|
18
|
-
|
|
19
|
-
namespace mlpack {
|
|
20
|
-
namespace data {
|
|
21
|
-
|
|
22
|
-
// Load column vector.
|
|
23
|
-
template<typename eT>
|
|
24
|
-
bool LoadCol(const std::string& filename,
|
|
25
|
-
arma::Col<eT>& vec,
|
|
26
|
-
TextOptions& opts,
|
|
27
|
-
std::fstream& stream)
|
|
28
|
-
{
|
|
29
|
-
// First load into auxiliary matrix.
|
|
30
|
-
arma::Mat<eT> tmp;
|
|
31
|
-
opts.NoTranspose() = true; // false Transpose
|
|
32
|
-
bool success = LoadDense(filename, tmp, opts, stream);
|
|
33
|
-
if (!success)
|
|
34
|
-
{
|
|
35
|
-
vec.clear();
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
// Now check the size to see that it is a vector, and return a vector.
|
|
40
|
-
if (tmp.n_cols > 1)
|
|
41
|
-
{
|
|
42
|
-
if (tmp.n_rows > 1)
|
|
43
|
-
{
|
|
44
|
-
// Problem: invalid size!
|
|
45
|
-
if (opts.Fatal())
|
|
46
|
-
{
|
|
47
|
-
Log::Fatal << "Matrix in file '" << filename << "' is not a vector, but"
|
|
48
|
-
<< " instead has size " << tmp.n_rows << "x" << tmp.n_cols << "!"
|
|
49
|
-
<< std::endl;
|
|
50
|
-
}
|
|
51
|
-
else
|
|
52
|
-
{
|
|
53
|
-
Log::Warn << "Matrix in file '" << filename << "' is not a vector, but "
|
|
54
|
-
<< "instead has size " << tmp.n_rows << "x" << tmp.n_cols << "!"
|
|
55
|
-
<< std::endl;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
vec.clear();
|
|
59
|
-
return false;
|
|
60
|
-
}
|
|
61
|
-
else
|
|
62
|
-
{
|
|
63
|
-
/**
|
|
64
|
-
* It's loaded as a row vector (more than one column). So we need to
|
|
65
|
-
* manually modify the shape of the matrix. We can do this without
|
|
66
|
-
* damaging the data since it is only a vector.
|
|
67
|
-
*/
|
|
68
|
-
arma::access::rw(tmp.n_rows) = tmp.n_cols;
|
|
69
|
-
arma::access::rw(tmp.n_cols) = 1;
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Now we can call the move operator, but it has to be the move operator
|
|
73
|
-
* for Mat, not for Col. This will avoid copying the data.
|
|
74
|
-
*/
|
|
75
|
-
*((arma::Mat<eT>*) &vec) = std::move(tmp);
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
else
|
|
80
|
-
{
|
|
81
|
-
// It's loaded as a column vector. We can call the move constructor
|
|
82
|
-
// directly.
|
|
83
|
-
*((arma::Mat<eT>*) &vec) = std::move(tmp);
|
|
84
|
-
return true;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
// Load row vector.
|
|
89
|
-
template<typename eT>
|
|
90
|
-
bool LoadRow(const std::string& filename,
|
|
91
|
-
arma::Row<eT>& rowvec,
|
|
92
|
-
TextOptions& opts,
|
|
93
|
-
std::fstream& stream)
|
|
94
|
-
{
|
|
95
|
-
arma::Mat<eT> tmp;
|
|
96
|
-
opts.NoTranspose() = true; // false Transpose
|
|
97
|
-
bool success = LoadDense(filename, tmp, opts, stream);
|
|
98
|
-
if (!success)
|
|
99
|
-
{
|
|
100
|
-
rowvec.clear();
|
|
101
|
-
return false;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
if (tmp.n_rows > 1)
|
|
105
|
-
{
|
|
106
|
-
if (tmp.n_cols > 1)
|
|
107
|
-
{
|
|
108
|
-
// Problem: invalid size!
|
|
109
|
-
if (opts.Fatal())
|
|
110
|
-
{
|
|
111
|
-
Log::Fatal << "Matrix in file '" << filename << "' is not a vector, but"
|
|
112
|
-
<< " instead has size " << tmp.n_rows << "x" << tmp.n_cols << "!"
|
|
113
|
-
<< std::endl;
|
|
114
|
-
}
|
|
115
|
-
else
|
|
116
|
-
{
|
|
117
|
-
Log::Warn << "Matrix in file '" << filename << "' is not a vector, but "
|
|
118
|
-
<< "instead has size " << tmp.n_rows << "x" << tmp.n_cols << "!"
|
|
119
|
-
<< std::endl;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
rowvec.clear();
|
|
123
|
-
return false;
|
|
124
|
-
}
|
|
125
|
-
else
|
|
126
|
-
{
|
|
127
|
-
/**
|
|
128
|
-
* It's loaded as a column vector (more than one row). So we need to
|
|
129
|
-
* manually modify the shape of the matrix. We can do this without
|
|
130
|
-
* damaging the data since it is only a vector.
|
|
131
|
-
*/
|
|
132
|
-
arma::access::rw(tmp.n_cols) = tmp.n_rows;
|
|
133
|
-
arma::access::rw(tmp.n_rows) = 1;
|
|
134
|
-
|
|
135
|
-
/**
|
|
136
|
-
* Now we can call the move operator, but it has to be the move operator
|
|
137
|
-
* for Mat, not for Col. This will avoid copying the data.
|
|
138
|
-
*/
|
|
139
|
-
*((arma::Mat<eT>*) &rowvec) = std::move(tmp);
|
|
140
|
-
return true;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
else
|
|
144
|
-
{
|
|
145
|
-
// It's loaded as a row vector. We can call the move constructor directly.
|
|
146
|
-
*((arma::Mat<eT>*) &rowvec) = std::move(tmp);
|
|
147
|
-
return true;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
} // namespace data
|
|
152
|
-
} // namespace mlpack
|
|
153
|
-
|
|
154
|
-
#endif
|