mlpack 4.6.2__cp38-cp38-win_amd64.whl → 4.7.0__cp38-cp38-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.
Files changed (414) hide show
  1. mlpack/__init__.py +3 -3
  2. mlpack/adaboost_classify.cp38-win_amd64.pyd +0 -0
  3. mlpack/adaboost_probabilities.cp38-win_amd64.pyd +0 -0
  4. mlpack/adaboost_train.cp38-win_amd64.pyd +0 -0
  5. mlpack/approx_kfn.cp38-win_amd64.pyd +0 -0
  6. mlpack/arma_numpy.cp38-win_amd64.pyd +0 -0
  7. mlpack/bayesian_linear_regression.cp38-win_amd64.pyd +0 -0
  8. mlpack/cf.cp38-win_amd64.pyd +0 -0
  9. mlpack/dbscan.cp38-win_amd64.pyd +0 -0
  10. mlpack/decision_tree.cp38-win_amd64.pyd +0 -0
  11. mlpack/det.cp38-win_amd64.pyd +0 -0
  12. mlpack/emst.cp38-win_amd64.pyd +0 -0
  13. mlpack/fastmks.cp38-win_amd64.pyd +0 -0
  14. mlpack/gmm_generate.cp38-win_amd64.pyd +0 -0
  15. mlpack/gmm_probability.cp38-win_amd64.pyd +0 -0
  16. mlpack/gmm_train.cp38-win_amd64.pyd +0 -0
  17. mlpack/hmm_generate.cp38-win_amd64.pyd +0 -0
  18. mlpack/hmm_loglik.cp38-win_amd64.pyd +0 -0
  19. mlpack/hmm_train.cp38-win_amd64.pyd +0 -0
  20. mlpack/hmm_viterbi.cp38-win_amd64.pyd +0 -0
  21. mlpack/hoeffding_tree.cp38-win_amd64.pyd +0 -0
  22. mlpack/image_converter.cp38-win_amd64.pyd +0 -0
  23. mlpack/include/mlpack/base.hpp +1 -0
  24. mlpack/include/mlpack/core/arma_extend/find_nan.hpp +63 -0
  25. mlpack/include/mlpack/core/cereal/low_precision.hpp +48 -0
  26. mlpack/include/mlpack/core/cv/cv_base.hpp +11 -11
  27. mlpack/include/mlpack/core/cv/cv_base_impl.hpp +7 -7
  28. mlpack/include/mlpack/core/cv/k_fold_cv.hpp +4 -4
  29. mlpack/include/mlpack/core/cv/k_fold_cv_impl.hpp +4 -4
  30. mlpack/include/mlpack/core/cv/meta_info_extractor.hpp +10 -10
  31. mlpack/include/mlpack/core/cv/metrics/f1_impl.hpp +1 -1
  32. mlpack/include/mlpack/core/cv/metrics/facilities.hpp +2 -1
  33. mlpack/include/mlpack/core/cv/metrics/precision_impl.hpp +1 -1
  34. mlpack/include/mlpack/core/cv/metrics/r2_score_impl.hpp +1 -1
  35. mlpack/include/mlpack/core/cv/metrics/silhouette_score_impl.hpp +1 -1
  36. mlpack/include/mlpack/core/cv/simple_cv.hpp +4 -4
  37. mlpack/include/mlpack/core/cv/simple_cv_impl.hpp +2 -2
  38. mlpack/include/mlpack/core/data/binarize.hpp +0 -2
  39. mlpack/include/mlpack/core/data/check_categorical_param.hpp +0 -2
  40. mlpack/include/mlpack/core/data/combine_options.hpp +151 -0
  41. mlpack/include/mlpack/core/data/confusion_matrix.hpp +0 -2
  42. mlpack/include/mlpack/core/data/confusion_matrix_impl.hpp +0 -2
  43. mlpack/include/mlpack/core/data/data.hpp +6 -4
  44. mlpack/include/mlpack/core/data/data_options.hpp +341 -18
  45. mlpack/include/mlpack/core/data/dataset_mapper.hpp +3 -5
  46. mlpack/include/mlpack/core/data/dataset_mapper_impl.hpp +0 -2
  47. mlpack/include/mlpack/core/data/detect_file_type.hpp +34 -5
  48. mlpack/include/mlpack/core/data/detect_file_type_impl.hpp +185 -11
  49. mlpack/include/mlpack/core/data/extension.hpp +2 -4
  50. mlpack/include/mlpack/core/data/font8x8_basic.h +152 -0
  51. mlpack/include/mlpack/core/data/has_serialize.hpp +0 -2
  52. mlpack/include/mlpack/core/data/image_bounding_box.hpp +36 -0
  53. mlpack/include/mlpack/core/data/image_bounding_box_impl.hpp +155 -0
  54. mlpack/include/mlpack/core/data/image_layout.hpp +63 -0
  55. mlpack/include/mlpack/core/data/image_layout_impl.hpp +75 -0
  56. mlpack/include/mlpack/core/data/image_letterbox.hpp +116 -0
  57. mlpack/include/mlpack/core/data/image_options.hpp +257 -0
  58. mlpack/include/mlpack/core/data/image_resize_crop.hpp +113 -48
  59. mlpack/include/mlpack/core/data/imputation_methods/custom_imputation.hpp +16 -32
  60. mlpack/include/mlpack/core/data/imputation_methods/listwise_deletion.hpp +19 -29
  61. mlpack/include/mlpack/core/data/imputation_methods/mean_imputation.hpp +113 -44
  62. mlpack/include/mlpack/core/data/imputation_methods/median_imputation.hpp +44 -43
  63. mlpack/include/mlpack/core/data/imputer.hpp +41 -49
  64. mlpack/include/mlpack/core/data/is_naninf.hpp +0 -2
  65. mlpack/include/mlpack/core/data/load.hpp +49 -233
  66. mlpack/include/mlpack/core/data/load_arff.hpp +0 -2
  67. mlpack/include/mlpack/core/data/load_arff_impl.hpp +2 -4
  68. mlpack/include/mlpack/core/data/load_categorical.hpp +1 -4
  69. mlpack/include/mlpack/core/data/load_categorical_impl.hpp +10 -26
  70. mlpack/include/mlpack/core/data/load_dense.hpp +279 -0
  71. mlpack/include/mlpack/core/data/load_deprecated.hpp +466 -0
  72. mlpack/include/mlpack/core/data/load_image.hpp +71 -43
  73. mlpack/include/mlpack/core/data/load_impl.hpp +95 -274
  74. mlpack/include/mlpack/core/data/load_model.hpp +62 -0
  75. mlpack/include/mlpack/core/data/load_numeric.hpp +124 -87
  76. mlpack/include/mlpack/core/data/load_sparse.hpp +91 -0
  77. mlpack/include/mlpack/core/data/map_policies/datatype.hpp +0 -2
  78. mlpack/include/mlpack/core/data/map_policies/increment_policy.hpp +0 -2
  79. mlpack/include/mlpack/core/data/map_policies/map_policies.hpp +0 -1
  80. mlpack/include/mlpack/core/data/matrix_options.hpp +152 -20
  81. mlpack/include/mlpack/core/data/normalize_labels.hpp +0 -2
  82. mlpack/include/mlpack/core/data/normalize_labels_impl.hpp +0 -2
  83. mlpack/include/mlpack/core/data/one_hot_encoding.hpp +2 -4
  84. mlpack/include/mlpack/core/data/one_hot_encoding_impl.hpp +3 -5
  85. mlpack/include/mlpack/core/data/save.hpp +26 -120
  86. mlpack/include/mlpack/core/data/save_dense.hpp +42 -0
  87. mlpack/include/mlpack/core/data/save_deprecated.hpp +308 -0
  88. mlpack/include/mlpack/core/data/save_image.hpp +82 -42
  89. mlpack/include/mlpack/core/data/save_impl.hpp +60 -245
  90. mlpack/include/mlpack/core/data/save_matrix.hpp +45 -0
  91. mlpack/include/mlpack/core/data/save_model.hpp +61 -0
  92. mlpack/include/mlpack/core/data/save_numeric.hpp +60 -0
  93. mlpack/include/mlpack/core/data/save_sparse.hpp +44 -0
  94. mlpack/include/mlpack/core/data/scaler_methods/max_abs_scaler.hpp +0 -2
  95. mlpack/include/mlpack/core/data/scaler_methods/mean_normalization.hpp +2 -4
  96. mlpack/include/mlpack/core/data/scaler_methods/min_max_scaler.hpp +0 -2
  97. mlpack/include/mlpack/core/data/scaler_methods/pca_whitening.hpp +1 -3
  98. mlpack/include/mlpack/core/data/scaler_methods/standard_scaler.hpp +2 -4
  99. mlpack/include/mlpack/core/data/scaler_methods/zca_whitening.hpp +0 -2
  100. mlpack/include/mlpack/core/data/split_data.hpp +6 -8
  101. mlpack/include/mlpack/core/data/string_algorithms.hpp +0 -2
  102. mlpack/include/mlpack/core/data/string_encoding.hpp +0 -2
  103. mlpack/include/mlpack/core/data/string_encoding_dictionary.hpp +0 -2
  104. mlpack/include/mlpack/core/data/string_encoding_impl.hpp +0 -2
  105. mlpack/include/mlpack/core/data/string_encoding_policies/bag_of_words_encoding_policy.hpp +0 -2
  106. mlpack/include/mlpack/core/data/string_encoding_policies/dictionary_encoding_policy.hpp +0 -2
  107. mlpack/include/mlpack/core/data/string_encoding_policies/policy_traits.hpp +0 -2
  108. mlpack/include/mlpack/core/data/string_encoding_policies/tf_idf_encoding_policy.hpp +0 -2
  109. mlpack/include/mlpack/core/data/text_options.hpp +91 -53
  110. mlpack/include/mlpack/core/data/tokenizers/char_extract.hpp +0 -2
  111. mlpack/include/mlpack/core/data/tokenizers/split_by_any_of.hpp +0 -2
  112. mlpack/include/mlpack/core/distributions/gamma_distribution_impl.hpp +4 -4
  113. mlpack/include/mlpack/core/distributions/laplace_distribution.hpp +9 -9
  114. mlpack/include/mlpack/core/distributions/laplace_distribution_impl.hpp +7 -7
  115. mlpack/include/mlpack/core/hpt/cv_function.hpp +2 -2
  116. mlpack/include/mlpack/core/hpt/cv_function_impl.hpp +2 -2
  117. mlpack/include/mlpack/core/hpt/hpt.hpp +4 -4
  118. mlpack/include/mlpack/core/hpt/hpt_impl.hpp +9 -9
  119. mlpack/include/mlpack/core/math/make_alias.hpp +7 -5
  120. mlpack/include/mlpack/core/math/random.hpp +19 -5
  121. mlpack/include/mlpack/core/math/shuffle_data.hpp +79 -245
  122. mlpack/include/mlpack/core/metrics/non_maximal_suppression_impl.hpp +9 -10
  123. mlpack/include/mlpack/core/stb/bundled/stb_image_resize2.h +291 -239
  124. mlpack/include/mlpack/core/tree/binary_space_tree/rp_tree_mean_split_impl.hpp +7 -7
  125. mlpack/include/mlpack/core/tree/cellbound.hpp +2 -2
  126. mlpack/include/mlpack/core/tree/cosine_tree/cosine_tree_impl.hpp +10 -10
  127. mlpack/include/mlpack/core/tree/octree/octree.hpp +10 -0
  128. mlpack/include/mlpack/core/tree/octree/octree_impl.hpp +14 -4
  129. mlpack/include/mlpack/core/util/arma_traits.hpp +25 -38
  130. mlpack/include/mlpack/core/util/coot_traits.hpp +97 -0
  131. mlpack/include/mlpack/core/util/forward.hpp +0 -2
  132. mlpack/include/mlpack/core/util/param.hpp +4 -4
  133. mlpack/include/mlpack/core/util/params_impl.hpp +2 -2
  134. mlpack/include/mlpack/core/util/using.hpp +29 -2
  135. mlpack/include/mlpack/core/util/version.hpp +5 -3
  136. mlpack/include/mlpack/core/util/version_impl.hpp +3 -6
  137. mlpack/include/mlpack/methods/adaboost/adaboost_classify_main.cpp +1 -1
  138. mlpack/include/mlpack/methods/adaboost/adaboost_main.cpp +3 -3
  139. mlpack/include/mlpack/methods/adaboost/adaboost_train_main.cpp +2 -2
  140. mlpack/include/mlpack/methods/ann/activation_functions/activation_functions.hpp +1 -0
  141. mlpack/include/mlpack/methods/ann/activation_functions/bipolar_sigmoid_function.hpp +6 -4
  142. mlpack/include/mlpack/methods/ann/activation_functions/elish_function.hpp +17 -12
  143. mlpack/include/mlpack/methods/ann/activation_functions/elliot_function.hpp +9 -7
  144. mlpack/include/mlpack/methods/ann/activation_functions/gaussian_function.hpp +7 -6
  145. mlpack/include/mlpack/methods/ann/activation_functions/gelu_exact_function.hpp +73 -0
  146. mlpack/include/mlpack/methods/ann/activation_functions/gelu_function.hpp +27 -16
  147. mlpack/include/mlpack/methods/ann/activation_functions/hard_sigmoid_function.hpp +8 -6
  148. mlpack/include/mlpack/methods/ann/activation_functions/hard_swish_function.hpp +6 -4
  149. mlpack/include/mlpack/methods/ann/activation_functions/hyper_sinh_function.hpp +13 -8
  150. mlpack/include/mlpack/methods/ann/activation_functions/identity_function.hpp +6 -4
  151. mlpack/include/mlpack/methods/ann/activation_functions/inverse_quadratic_function.hpp +8 -6
  152. mlpack/include/mlpack/methods/ann/activation_functions/lisht_function.hpp +7 -5
  153. mlpack/include/mlpack/methods/ann/activation_functions/logistic_function.hpp +14 -12
  154. mlpack/include/mlpack/methods/ann/activation_functions/mish_function.hpp +7 -5
  155. mlpack/include/mlpack/methods/ann/activation_functions/multi_quadratic_function.hpp +6 -4
  156. mlpack/include/mlpack/methods/ann/activation_functions/poisson1_function.hpp +4 -2
  157. mlpack/include/mlpack/methods/ann/activation_functions/quadratic_function.hpp +6 -4
  158. mlpack/include/mlpack/methods/ann/activation_functions/rectifier_function.hpp +10 -10
  159. mlpack/include/mlpack/methods/ann/activation_functions/silu_function.hpp +10 -8
  160. mlpack/include/mlpack/methods/ann/activation_functions/softplus_function.hpp +12 -9
  161. mlpack/include/mlpack/methods/ann/activation_functions/softsign_function.hpp +15 -23
  162. mlpack/include/mlpack/methods/ann/activation_functions/spline_function.hpp +9 -7
  163. mlpack/include/mlpack/methods/ann/activation_functions/swish_function.hpp +11 -9
  164. mlpack/include/mlpack/methods/ann/activation_functions/tanh_exponential_function.hpp +9 -7
  165. mlpack/include/mlpack/methods/ann/activation_functions/tanh_function.hpp +10 -7
  166. mlpack/include/mlpack/methods/ann/ann.hpp +3 -0
  167. mlpack/include/mlpack/methods/ann/convolution_rules/base_convolution.hpp +197 -0
  168. mlpack/include/mlpack/methods/ann/convolution_rules/convolution_rules.hpp +1 -2
  169. mlpack/include/mlpack/methods/ann/convolution_rules/im2col_convolution.hpp +215 -0
  170. mlpack/include/mlpack/methods/ann/convolution_rules/naive_convolution.hpp +109 -154
  171. mlpack/include/mlpack/methods/ann/dag_network.hpp +728 -0
  172. mlpack/include/mlpack/methods/ann/dag_network_impl.hpp +1640 -0
  173. mlpack/include/mlpack/methods/ann/dists/bernoulli_distribution_impl.hpp +1 -1
  174. mlpack/include/mlpack/methods/ann/dists/normal_distribution_impl.hpp +7 -2
  175. mlpack/include/mlpack/methods/ann/ffn.hpp +39 -3
  176. mlpack/include/mlpack/methods/ann/ffn_impl.hpp +14 -32
  177. mlpack/include/mlpack/methods/ann/init_rules/const_init.hpp +4 -4
  178. mlpack/include/mlpack/methods/ann/init_rules/gaussian_init.hpp +6 -2
  179. mlpack/include/mlpack/methods/ann/init_rules/he_init.hpp +4 -2
  180. mlpack/include/mlpack/methods/ann/init_rules/kathirvalavakumar_subavathi_init.hpp +3 -3
  181. mlpack/include/mlpack/methods/ann/init_rules/lecun_normal_init.hpp +4 -2
  182. mlpack/include/mlpack/methods/ann/init_rules/nguyen_widrow_init.hpp +2 -2
  183. mlpack/include/mlpack/methods/ann/init_rules/oivs_init.hpp +2 -2
  184. mlpack/include/mlpack/methods/ann/init_rules/orthogonal_init.hpp +2 -2
  185. mlpack/include/mlpack/methods/ann/init_rules/random_init.hpp +8 -4
  186. mlpack/include/mlpack/methods/ann/layer/adaptive_max_pooling.hpp +21 -23
  187. mlpack/include/mlpack/methods/ann/layer/adaptive_max_pooling_impl.hpp +15 -15
  188. mlpack/include/mlpack/methods/ann/layer/adaptive_mean_pooling.hpp +21 -23
  189. mlpack/include/mlpack/methods/ann/layer/adaptive_mean_pooling_impl.hpp +16 -16
  190. mlpack/include/mlpack/methods/ann/layer/add.hpp +18 -18
  191. mlpack/include/mlpack/methods/ann/layer/add_impl.hpp +13 -13
  192. mlpack/include/mlpack/methods/ann/layer/add_merge.hpp +19 -18
  193. mlpack/include/mlpack/methods/ann/layer/add_merge_impl.hpp +13 -13
  194. mlpack/include/mlpack/methods/ann/layer/alpha_dropout.hpp +17 -16
  195. mlpack/include/mlpack/methods/ann/layer/alpha_dropout_impl.hpp +14 -13
  196. mlpack/include/mlpack/methods/ann/layer/base_layer.hpp +28 -51
  197. mlpack/include/mlpack/methods/ann/layer/batch_norm.hpp +16 -18
  198. mlpack/include/mlpack/methods/ann/layer/batch_norm_impl.hpp +55 -54
  199. mlpack/include/mlpack/methods/ann/layer/c_relu.hpp +18 -20
  200. mlpack/include/mlpack/methods/ann/layer/c_relu_impl.hpp +20 -25
  201. mlpack/include/mlpack/methods/ann/layer/celu.hpp +14 -19
  202. mlpack/include/mlpack/methods/ann/layer/celu_impl.hpp +25 -34
  203. mlpack/include/mlpack/methods/ann/layer/concat.hpp +18 -18
  204. mlpack/include/mlpack/methods/ann/layer/concat_impl.hpp +13 -13
  205. mlpack/include/mlpack/methods/ann/layer/concatenate.hpp +18 -18
  206. mlpack/include/mlpack/methods/ann/layer/concatenate_impl.hpp +14 -14
  207. mlpack/include/mlpack/methods/ann/layer/convolution.hpp +42 -47
  208. mlpack/include/mlpack/methods/ann/layer/convolution_impl.hpp +170 -159
  209. mlpack/include/mlpack/methods/ann/layer/dropconnect.hpp +18 -20
  210. mlpack/include/mlpack/methods/ann/layer/dropconnect_impl.hpp +20 -20
  211. mlpack/include/mlpack/methods/ann/layer/dropout.hpp +17 -19
  212. mlpack/include/mlpack/methods/ann/layer/dropout_impl.hpp +14 -21
  213. mlpack/include/mlpack/methods/ann/layer/elu.hpp +23 -25
  214. mlpack/include/mlpack/methods/ann/layer/elu_impl.hpp +20 -27
  215. mlpack/include/mlpack/methods/ann/layer/embedding.hpp +160 -0
  216. mlpack/include/mlpack/methods/ann/layer/embedding_impl.hpp +189 -0
  217. mlpack/include/mlpack/methods/ann/layer/flexible_relu.hpp +17 -19
  218. mlpack/include/mlpack/methods/ann/layer/flexible_relu_impl.hpp +20 -20
  219. mlpack/include/mlpack/methods/ann/layer/ftswish.hpp +17 -18
  220. mlpack/include/mlpack/methods/ann/layer/ftswish_impl.hpp +17 -35
  221. mlpack/include/mlpack/methods/ann/layer/grouped_convolution.hpp +27 -33
  222. mlpack/include/mlpack/methods/ann/layer/grouped_convolution_impl.hpp +170 -163
  223. mlpack/include/mlpack/methods/ann/layer/gru.hpp +195 -0
  224. mlpack/include/mlpack/methods/ann/layer/gru_impl.hpp +325 -0
  225. mlpack/include/mlpack/methods/ann/layer/hard_tanh.hpp +13 -15
  226. mlpack/include/mlpack/methods/ann/layer/hard_tanh_impl.hpp +12 -12
  227. mlpack/include/mlpack/methods/ann/layer/identity.hpp +19 -20
  228. mlpack/include/mlpack/methods/ann/layer/identity_impl.hpp +12 -12
  229. mlpack/include/mlpack/methods/ann/layer/layer.hpp +37 -33
  230. mlpack/include/mlpack/methods/ann/layer/layer_norm.hpp +11 -13
  231. mlpack/include/mlpack/methods/ann/layer/layer_norm_impl.hpp +16 -16
  232. mlpack/include/mlpack/methods/ann/layer/layer_types.hpp +4 -1
  233. mlpack/include/mlpack/methods/ann/layer/leaky_relu.hpp +20 -23
  234. mlpack/include/mlpack/methods/ann/layer/leaky_relu_impl.hpp +12 -13
  235. mlpack/include/mlpack/methods/ann/layer/linear.hpp +16 -18
  236. mlpack/include/mlpack/methods/ann/layer/linear3d.hpp +18 -18
  237. mlpack/include/mlpack/methods/ann/layer/linear3d_impl.hpp +18 -18
  238. mlpack/include/mlpack/methods/ann/layer/linear_impl.hpp +15 -15
  239. mlpack/include/mlpack/methods/ann/layer/linear_no_bias.hpp +15 -17
  240. mlpack/include/mlpack/methods/ann/layer/linear_no_bias_impl.hpp +20 -20
  241. mlpack/include/mlpack/methods/ann/layer/linear_recurrent.hpp +25 -14
  242. mlpack/include/mlpack/methods/ann/layer/linear_recurrent_impl.hpp +60 -31
  243. mlpack/include/mlpack/methods/ann/layer/log_softmax.hpp +17 -36
  244. mlpack/include/mlpack/methods/ann/layer/log_softmax_impl.hpp +58 -74
  245. mlpack/include/mlpack/methods/ann/layer/lstm.hpp +26 -29
  246. mlpack/include/mlpack/methods/ann/layer/lstm_impl.hpp +128 -124
  247. mlpack/include/mlpack/methods/ann/layer/max_pooling.hpp +19 -19
  248. mlpack/include/mlpack/methods/ann/layer/max_pooling_impl.hpp +14 -14
  249. mlpack/include/mlpack/methods/ann/layer/mean_pooling.hpp +24 -24
  250. mlpack/include/mlpack/methods/ann/layer/mean_pooling_impl.hpp +16 -16
  251. mlpack/include/mlpack/methods/ann/layer/multi_layer.hpp +36 -6
  252. mlpack/include/mlpack/methods/ann/layer/multi_layer_impl.hpp +6 -2
  253. mlpack/include/mlpack/methods/ann/layer/multihead_attention.hpp +26 -22
  254. mlpack/include/mlpack/methods/ann/layer/multihead_attention_impl.hpp +161 -64
  255. mlpack/include/mlpack/methods/ann/layer/nearest_interpolation.hpp +28 -25
  256. mlpack/include/mlpack/methods/ann/layer/nearest_interpolation_impl.hpp +36 -37
  257. mlpack/include/mlpack/methods/ann/layer/noisylinear.hpp +39 -42
  258. mlpack/include/mlpack/methods/ann/layer/noisylinear_impl.hpp +18 -18
  259. mlpack/include/mlpack/methods/ann/layer/padding.hpp +21 -17
  260. mlpack/include/mlpack/methods/ann/layer/padding_impl.hpp +33 -19
  261. mlpack/include/mlpack/methods/ann/layer/parametric_relu.hpp +26 -28
  262. mlpack/include/mlpack/methods/ann/layer/parametric_relu_impl.hpp +18 -18
  263. mlpack/include/mlpack/methods/ann/layer/radial_basis_function.hpp +41 -28
  264. mlpack/include/mlpack/methods/ann/layer/radial_basis_function_impl.hpp +42 -17
  265. mlpack/include/mlpack/methods/ann/layer/recurrent_layer.hpp +13 -0
  266. mlpack/include/mlpack/methods/ann/layer/relu6.hpp +19 -21
  267. mlpack/include/mlpack/methods/ann/layer/relu6_impl.hpp +14 -14
  268. mlpack/include/mlpack/methods/ann/layer/repeat.hpp +24 -25
  269. mlpack/include/mlpack/methods/ann/layer/repeat_impl.hpp +10 -10
  270. mlpack/include/mlpack/methods/ann/layer/serialization.hpp +64 -54
  271. mlpack/include/mlpack/methods/ann/layer/softmax.hpp +20 -20
  272. mlpack/include/mlpack/methods/ann/layer/softmax_impl.hpp +10 -10
  273. mlpack/include/mlpack/methods/ann/layer/softmin.hpp +20 -23
  274. mlpack/include/mlpack/methods/ann/layer/softmin_impl.hpp +10 -10
  275. mlpack/include/mlpack/methods/ann/layer/sum_reduce.hpp +103 -0
  276. mlpack/include/mlpack/methods/ann/layer/sum_reduce_impl.hpp +143 -0
  277. mlpack/include/mlpack/methods/ann/loss_functions/cosine_embedding_loss_impl.hpp +3 -3
  278. mlpack/include/mlpack/methods/ann/loss_functions/mean_bias_error_impl.hpp +1 -1
  279. mlpack/include/mlpack/methods/ann/loss_functions/multilabel_softmargin_loss_impl.hpp +1 -1
  280. mlpack/include/mlpack/methods/ann/loss_functions/negative_log_likelihood.hpp +2 -2
  281. mlpack/include/mlpack/methods/ann/loss_functions/negative_log_likelihood_impl.hpp +29 -15
  282. mlpack/include/mlpack/methods/ann/loss_functions/poisson_nll_loss_impl.hpp +1 -1
  283. mlpack/include/mlpack/methods/ann/models/models.hpp +17 -0
  284. mlpack/include/mlpack/methods/ann/models/yolov3/yolov3_layer.hpp +151 -0
  285. mlpack/include/mlpack/methods/ann/models/yolov3/yolov3_layer_impl.hpp +265 -0
  286. mlpack/include/mlpack/methods/ann/models/yolov3/yolov3_tiny.hpp +187 -0
  287. mlpack/include/mlpack/methods/ann/models/yolov3/yolov3_tiny_impl.hpp +206 -0
  288. mlpack/include/mlpack/methods/ann/regularizer/orthogonal_regularizer_impl.hpp +5 -3
  289. mlpack/include/mlpack/methods/ann/rnn.hpp +136 -42
  290. mlpack/include/mlpack/methods/ann/rnn_impl.hpp +230 -38
  291. mlpack/include/mlpack/methods/approx_kfn/drusilla_select_impl.hpp +1 -1
  292. mlpack/include/mlpack/methods/bayesian_linear_regression/bayesian_linear_regression_main.cpp +1 -1
  293. mlpack/include/mlpack/methods/bias_svd/bias_svd_function_impl.hpp +1 -1
  294. mlpack/include/mlpack/methods/cf/cf_model.hpp +1 -1
  295. mlpack/include/mlpack/methods/decision_tree/decision_tree.hpp +6 -6
  296. mlpack/include/mlpack/methods/decision_tree/decision_tree_impl.hpp +12 -12
  297. mlpack/include/mlpack/methods/decision_tree/decision_tree_main.cpp +0 -1
  298. mlpack/include/mlpack/methods/decision_tree/decision_tree_regressor.hpp +6 -6
  299. mlpack/include/mlpack/methods/decision_tree/decision_tree_regressor_impl.hpp +12 -12
  300. mlpack/include/mlpack/methods/det/det_main.cpp +1 -1
  301. mlpack/include/mlpack/methods/hmm/hmm_train_main.cpp +4 -4
  302. mlpack/include/mlpack/methods/hmm/hmm_util_impl.hpp +2 -2
  303. mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree.hpp +6 -6
  304. mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree_impl.hpp +31 -31
  305. mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree_main.cpp +1 -2
  306. mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree_model.hpp +2 -2
  307. mlpack/include/mlpack/methods/hoeffding_trees/hoeffding_tree_model_impl.hpp +1 -1
  308. mlpack/include/mlpack/methods/kde/kde_rules_impl.hpp +6 -6
  309. mlpack/include/mlpack/methods/lars/lars_impl.hpp +3 -3
  310. mlpack/include/mlpack/methods/linear_svm/linear_svm_function_impl.hpp +4 -4
  311. mlpack/include/mlpack/methods/linear_svm/linear_svm_main.cpp +3 -3
  312. mlpack/include/mlpack/methods/lmnn/lmnn_main.cpp +1 -1
  313. mlpack/include/mlpack/methods/lsh/lsh_main.cpp +1 -1
  314. mlpack/include/mlpack/methods/matrix_completion/matrix_completion_impl.hpp +1 -1
  315. mlpack/include/mlpack/methods/naive_bayes/naive_bayes_classifier_impl.hpp +1 -1
  316. mlpack/include/mlpack/methods/naive_bayes/nbc_main.cpp +3 -3
  317. mlpack/include/mlpack/methods/nca/nca_main.cpp +1 -1
  318. mlpack/include/mlpack/methods/neighbor_search/kfn_main.cpp +8 -8
  319. mlpack/include/mlpack/methods/neighbor_search/knn_main.cpp +8 -8
  320. mlpack/include/mlpack/methods/neighbor_search/neighbor_search.hpp +154 -34
  321. mlpack/include/mlpack/methods/neighbor_search/neighbor_search_impl.hpp +190 -51
  322. mlpack/include/mlpack/methods/neighbor_search/neighbor_search_stat.hpp +10 -0
  323. mlpack/include/mlpack/methods/neighbor_search/ns_model.hpp +15 -15
  324. mlpack/include/mlpack/methods/neighbor_search/ns_model_impl.hpp +55 -46
  325. mlpack/include/mlpack/methods/neighbor_search/typedef.hpp +42 -2
  326. mlpack/include/mlpack/methods/pca/pca_impl.hpp +2 -2
  327. mlpack/include/mlpack/methods/perceptron/perceptron.hpp +2 -2
  328. mlpack/include/mlpack/methods/perceptron/perceptron_impl.hpp +1 -1
  329. mlpack/include/mlpack/methods/perceptron/perceptron_main.cpp +2 -2
  330. mlpack/include/mlpack/methods/preprocess/image_converter_main.cpp +2 -3
  331. mlpack/include/mlpack/methods/preprocess/preprocess_binarize_main.cpp +2 -2
  332. mlpack/include/mlpack/methods/preprocess/preprocess_describe_main.cpp +0 -1
  333. mlpack/include/mlpack/methods/preprocess/preprocess_imputer_main.cpp +50 -129
  334. mlpack/include/mlpack/methods/preprocess/preprocess_one_hot_encoding_main.cpp +6 -6
  335. mlpack/include/mlpack/methods/preprocess/preprocess_scale_main.cpp +2 -3
  336. mlpack/include/mlpack/methods/preprocess/preprocess_split_main.cpp +3 -4
  337. mlpack/include/mlpack/methods/preprocess/scaling_model.hpp +6 -8
  338. mlpack/include/mlpack/methods/preprocess/scaling_model_impl.hpp +18 -20
  339. mlpack/include/mlpack/methods/random_forest/random_forest.hpp +5 -5
  340. mlpack/include/mlpack/methods/random_forest/random_forest_impl.hpp +9 -9
  341. mlpack/include/mlpack/methods/range_search/range_search_main.cpp +1 -1
  342. mlpack/include/mlpack/methods/rann/krann_main.cpp +1 -1
  343. mlpack/include/mlpack/methods/regularized_svd/regularized_svd_function_impl.hpp +1 -1
  344. mlpack/include/mlpack/methods/reinforcement_learning/async_learning_impl.hpp +8 -8
  345. mlpack/include/mlpack/methods/reinforcement_learning/ddpg_impl.hpp +16 -16
  346. mlpack/include/mlpack/methods/reinforcement_learning/environment/acrobot.hpp +4 -4
  347. mlpack/include/mlpack/methods/reinforcement_learning/environment/cart_pole.hpp +3 -3
  348. mlpack/include/mlpack/methods/reinforcement_learning/environment/cont_double_pole_cart.hpp +6 -5
  349. mlpack/include/mlpack/methods/reinforcement_learning/environment/pendulum.hpp +6 -5
  350. mlpack/include/mlpack/methods/reinforcement_learning/policy/aggregated_policy.hpp +2 -2
  351. mlpack/include/mlpack/methods/reinforcement_learning/q_learning_impl.hpp +10 -10
  352. mlpack/include/mlpack/methods/reinforcement_learning/q_networks/categorical_dqn.hpp +21 -17
  353. mlpack/include/mlpack/methods/reinforcement_learning/q_networks/dueling_dqn.hpp +69 -77
  354. mlpack/include/mlpack/methods/reinforcement_learning/q_networks/simple_dqn.hpp +9 -9
  355. mlpack/include/mlpack/methods/reinforcement_learning/sac_impl.hpp +14 -14
  356. mlpack/include/mlpack/methods/reinforcement_learning/td3_impl.hpp +14 -14
  357. mlpack/include/mlpack/methods/softmax_regression/softmax_regression_function_impl.hpp +1 -1
  358. mlpack/include/mlpack/methods/svdplusplus/svdplusplus_function_impl.hpp +1 -1
  359. mlpack/include/mlpack/namespace_compat.hpp +1 -0
  360. mlpack/include/mlpack/prereqs.hpp +1 -0
  361. mlpack/kde.cp38-win_amd64.pyd +0 -0
  362. mlpack/kernel_pca.cp38-win_amd64.pyd +0 -0
  363. mlpack/kfn.cp38-win_amd64.pyd +0 -0
  364. mlpack/kmeans.cp38-win_amd64.pyd +0 -0
  365. mlpack/knn.cp38-win_amd64.pyd +0 -0
  366. mlpack/krann.cp38-win_amd64.pyd +0 -0
  367. mlpack/lars.cp38-win_amd64.pyd +0 -0
  368. mlpack/linear_regression_predict.cp38-win_amd64.pyd +0 -0
  369. mlpack/linear_regression_train.cp38-win_amd64.pyd +0 -0
  370. mlpack/linear_svm.cp38-win_amd64.pyd +0 -0
  371. mlpack/lmnn.cp38-win_amd64.pyd +0 -0
  372. mlpack/local_coordinate_coding.cp38-win_amd64.pyd +0 -0
  373. mlpack/logistic_regression.cp38-win_amd64.pyd +0 -0
  374. mlpack/lsh.cp38-win_amd64.pyd +0 -0
  375. mlpack/mean_shift.cp38-win_amd64.pyd +0 -0
  376. mlpack/nbc.cp38-win_amd64.pyd +0 -0
  377. mlpack/nca.cp38-win_amd64.pyd +0 -0
  378. mlpack/nmf.cp38-win_amd64.pyd +0 -0
  379. mlpack/pca.cp38-win_amd64.pyd +0 -0
  380. mlpack/perceptron.cp38-win_amd64.pyd +0 -0
  381. mlpack/preprocess_binarize.cp38-win_amd64.pyd +0 -0
  382. mlpack/preprocess_describe.cp38-win_amd64.pyd +0 -0
  383. mlpack/preprocess_one_hot_encoding.cp38-win_amd64.pyd +0 -0
  384. mlpack/preprocess_scale.cp38-win_amd64.pyd +0 -0
  385. mlpack/preprocess_split.cp38-win_amd64.pyd +0 -0
  386. mlpack/radical.cp38-win_amd64.pyd +0 -0
  387. mlpack/random_forest.cp38-win_amd64.pyd +0 -0
  388. mlpack/softmax_regression.cp38-win_amd64.pyd +0 -0
  389. mlpack/sparse_coding.cp38-win_amd64.pyd +0 -0
  390. mlpack-4.7.0.dist-info/DELVEWHEEL +2 -0
  391. {mlpack-4.6.2.dist-info → mlpack-4.7.0.dist-info}/METADATA +5 -5
  392. {mlpack-4.6.2.dist-info → mlpack-4.7.0.dist-info}/RECORD +395 -376
  393. {mlpack-4.6.2.dist-info → mlpack-4.7.0.dist-info}/WHEEL +1 -1
  394. mlpack/include/mlpack/core/data/format.hpp +0 -31
  395. mlpack/include/mlpack/core/data/image_info.hpp +0 -102
  396. mlpack/include/mlpack/core/data/image_info_impl.hpp +0 -84
  397. mlpack/include/mlpack/core/data/load_image_impl.hpp +0 -171
  398. mlpack/include/mlpack/core/data/load_model_impl.hpp +0 -115
  399. mlpack/include/mlpack/core/data/load_vec_impl.hpp +0 -154
  400. mlpack/include/mlpack/core/data/map_policies/missing_policy.hpp +0 -148
  401. mlpack/include/mlpack/core/data/save_image_impl.hpp +0 -170
  402. mlpack/include/mlpack/core/data/types.hpp +0 -61
  403. mlpack/include/mlpack/core/data/types_impl.hpp +0 -83
  404. mlpack/include/mlpack/core/data/utilities.hpp +0 -158
  405. mlpack/include/mlpack/core/util/gitversion.hpp +0 -1
  406. mlpack/include/mlpack/methods/ann/convolution_rules/fft_convolution.hpp +0 -213
  407. mlpack/include/mlpack/methods/ann/convolution_rules/svd_convolution.hpp +0 -201
  408. mlpack/include/mlpack/methods/ann/layer/not_adapted/gru.hpp +0 -226
  409. mlpack/include/mlpack/methods/ann/layer/not_adapted/gru_impl.hpp +0 -367
  410. mlpack/include/mlpack/methods/ann/layer/not_adapted/lookup.hpp +0 -139
  411. mlpack/include/mlpack/methods/ann/layer/not_adapted/lookup_impl.hpp +0 -98
  412. mlpack-4.6.2.dist-info/DELVEWHEEL +0 -2
  413. {mlpack-4.6.2.dist-info → mlpack-4.7.0.dist-info}/top_level.txt +0 -0
  414. /mlpack.libs/{.load-order-mlpack-4.6.2 → .load-order-mlpack-4.7.0} +0 -0
@@ -1,148 +0,0 @@
1
- /**
2
- * @file core/data/map_policies/missing_policy.hpp
3
- * @author Keon Kim
4
- *
5
- * Missing map policy for dataset info.
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_MAP_POLICIES_MISSING_POLICY_HPP
13
- #define MLPACK_CORE_DATA_MAP_POLICIES_MISSING_POLICY_HPP
14
-
15
- #include <mlpack/prereqs.hpp>
16
- #include <unordered_map>
17
- #include <mlpack/core/data/map_policies/datatype.hpp>
18
- #include <limits>
19
- #include <set>
20
-
21
- namespace mlpack {
22
- namespace data {
23
-
24
- /**
25
- * MissingPolicy is used as a helper class for DatasetMapper. It tells how the
26
- * strings should be mapped. Purpose of this policy is to map all user-defined
27
- * missing variables into maps so that users can decide what to do with the
28
- * corrupted data. User-defined missing variables are given by the missingSet.
29
- * Note that MissingPolicy does not change type of features.
30
- */
31
- class MissingPolicy
32
- {
33
- public:
34
- // typedef of MappedType
35
- using MappedType = double;
36
-
37
- MissingPolicy()
38
- {
39
- // Nothing to initialize here.
40
- }
41
-
42
- /**
43
- * Create the MissingPolicy object with the given missingSet. Note that the
44
- * missingSet cannot be changed later; you will have to create a new
45
- * MissingPolicy object.
46
- *
47
- * @param missingSet Set of strings that should be mapped.
48
- */
49
- explicit MissingPolicy(std::set<std::string> missingSet) :
50
- missingSet(std::move(missingSet))
51
- {
52
- // Nothing to initialize here.
53
- }
54
-
55
- //! This doesn't need a first pass over the data to set up.
56
- static const bool NeedsFirstPass = false;
57
-
58
- /**
59
- * There is nothing for us to do here, but this is required by the MapPolicy
60
- * type.
61
- */
62
- template<typename T>
63
- void MapFirstPass(const std::string& /* string */, const size_t /* dim */)
64
- {
65
- // Nothing to do.
66
- }
67
-
68
- /**
69
- * Given the string and the dimension to which it belongs by the user, and
70
- * the maps and types given by the DatasetMapper class, returns its numeric
71
- * mapping. If no mapping yet exists and the string is included in the
72
- * missingSet, the string is added to the list of mappings for the given
73
- * dimension. This function is used as a helper function for DatasetMapper
74
- * class.
75
- *
76
- * @tparam MapType Type of unordered_map that contains mapped value pairs
77
- * @param string String to find/create mapping for.
78
- * @param dimension Index of the dimension of the string.
79
- * @param maps Unordered map given by the DatasetMapper.
80
- * @param * (types) Vector containing the type information about each
81
- * dimensions.
82
- */
83
- template<typename MapType, typename T>
84
- T MapString(const std::string& string,
85
- const size_t dimension,
86
- MapType& maps,
87
- std::vector<Datatype>& /* types */)
88
- {
89
- // commented out as @rcurting is going to remove the entire policy
90
- //static_assert(std::numeric_limits<T>::has_quiet_NaN == true,
91
- //"Cannot use MissingPolicy with types where has_quiet_NaN() is false!");
92
-
93
- // If we can load the string then there is no need for mapping.
94
- std::stringstream token;
95
- token.str(string);
96
- T t;
97
- token >> t; // Could be sped up by only doing this if we need to.
98
-
99
- MappedType value = std::numeric_limits<MappedType>::quiet_NaN();
100
- // But we can't use that for the map, so we need some other thing that will
101
- // represent quiet_NaN().
102
- const MappedType mapValue = std::nexttoward(
103
- std::numeric_limits<MappedType>::max(), MappedType(0));
104
-
105
- // If extraction of the value fails, or if it is a value that is supposed to
106
- // be mapped, then do mapping.
107
- if (token.fail() || !token.eof() ||
108
- missingSet.find(string) != std::end(missingSet))
109
- {
110
- // Everything is mapped to NaN. However we must still keep track of
111
- // everything that we have mapped, so we add it to the maps if needed.
112
- if (maps.count(dimension) == 0 ||
113
- maps[dimension].first.count(string) == 0)
114
- {
115
- // This string does not exist yet.
116
- using PairType = std::pair<std::string, MappedType>;
117
- maps[dimension].first.insert(PairType(string, value));
118
-
119
- // Insert right mapping too.
120
- if (maps[dimension].second.count(mapValue) == 0)
121
- {
122
- // Create new element in reverse map.
123
- maps[dimension].second.insert(std::make_pair(mapValue,
124
- std::vector<std::string>()));
125
- }
126
- maps[dimension].second[mapValue].push_back(string);
127
- }
128
-
129
- return value;
130
- }
131
- else
132
- {
133
- // We can just return the value that we read.
134
- return t;
135
- }
136
- }
137
-
138
- private:
139
- // Note that missingSet and maps are different.
140
- // missingSet specifies which value/string should be mapped and may be a
141
- // superset of 'maps'.
142
- std::set<std::string> missingSet;
143
- }; // class MissingPolicy
144
-
145
- } // namespace data
146
- } // namespace mlpack
147
-
148
- #endif
@@ -1,170 +0,0 @@
1
- /**
2
- * @file core/data/save_image_impl.hpp
3
- * @author Mehul Kumar Nirala
4
- *
5
- * Implementation of image saving functionality 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_SAVE_IMAGE_IMPL_HPP
13
- #define MLPACK_CORE_DATA_SAVE_IMAGE_IMPL_HPP
14
-
15
- // In case it hasn't been included yet.
16
- #include "save_image.hpp"
17
- #include "image_info.hpp"
18
-
19
- namespace mlpack {
20
- namespace data {
21
-
22
- /**
23
- * Save the given image to the given filename.
24
- *
25
- * @param filename Filename to save to.
26
- * @param matrix Matrix containing image to be saved.
27
- * @param info Information about the image (width/height/channels/etc.).
28
- * @param fatal Whether an exception should be thrown on save failure.
29
- */
30
- template<typename eT>
31
- bool Save(const std::string& filename,
32
- arma::Mat<eT>& matrix,
33
- ImageInfo& info,
34
- const bool fatal)
35
- {
36
- arma::Mat<unsigned char> tmpMatrix =
37
- arma::conv_to<arma::Mat<unsigned char>>::from(matrix);
38
-
39
- return SaveImage(filename, tmpMatrix, info, fatal);
40
- }
41
-
42
- // Image saving API for multiple files.
43
- template<typename eT>
44
- bool Save(const std::vector<std::string>& files,
45
- arma::Mat<eT>& matrix,
46
- ImageInfo& info,
47
- const bool fatal)
48
- {
49
- if (files.size() == 0)
50
- {
51
- if (fatal)
52
- {
53
- Log::Fatal << "Save(): vector of image files is empty; nothing to save."
54
- << std::endl;
55
- }
56
- else
57
- {
58
- Log::Warn << "Save(): vector of image files is empty; nothing to save."
59
- << std::endl;
60
- }
61
-
62
- return false;
63
- }
64
-
65
- arma::Mat<unsigned char> img;
66
- bool status = true;
67
-
68
- for (size_t i = 0; i < files.size() ; ++i)
69
- {
70
- arma::Mat<eT> colImg(matrix.colptr(i), matrix.n_rows, 1,
71
- false, true);
72
- status &= Save(files[i], colImg, info, fatal);
73
- }
74
-
75
- return status;
76
- }
77
-
78
- inline bool SaveImage(const std::string& filename,
79
- arma::Mat<unsigned char>& image,
80
- ImageInfo& info,
81
- const bool fatal)
82
- {
83
- // Check to see if the file type is supported.
84
- if (!ImageFormatSupported(filename, true))
85
- {
86
- std::ostringstream oss;
87
- oss << "Save(): file type " << Extension(filename) << " not supported.\n";
88
- oss << "Currently image saving supports ";
89
- for (auto extension : SaveFileTypes())
90
- oss << " " << extension;
91
- oss << "." << std::endl;
92
-
93
- if (fatal)
94
- {
95
- Log::Fatal << oss.str();
96
- }
97
- else
98
- {
99
- Log::Warn << oss.str();
100
- }
101
-
102
- return false;
103
- }
104
-
105
- // Ensure the shape of the matrix is correct.
106
- if (image.n_cols > 1)
107
- {
108
- Log::Warn << "Save(): given input image matrix contains more than 1 image."
109
- << std::endl;
110
- Log::Warn << "Only the first image will be saved!" << std::endl;
111
- }
112
-
113
- if (info.Width() * info.Height() * info.Channels() != image.n_elem)
114
- {
115
- Log::Fatal << "data::Save(): The given image dimensions do not match the "
116
- << "dimensions of the matrix to be saved!" << std::endl;
117
- }
118
-
119
- bool status = false;
120
- unsigned char* imageMem = image.memptr();
121
-
122
- if ("png" == Extension(filename))
123
- {
124
- status = stbi_write_png(filename.c_str(), info.Width(), info.Height(),
125
- info.Channels(), imageMem, info.Width() * info.Channels());
126
- }
127
- else if ("bmp" == Extension(filename))
128
- {
129
- status = stbi_write_bmp(filename.c_str(), info.Width(), info.Height(),
130
- info.Channels(), imageMem);
131
- }
132
- else if ("tga" == Extension(filename))
133
- {
134
- status = stbi_write_tga(filename.c_str(), info.Width(), info.Height(),
135
- info.Channels(), imageMem);
136
- }
137
- else if ("hdr" == Extension(filename))
138
- {
139
- // We'll have to convert to float...
140
- arma::fmat tmpImage = arma::conv_to<arma::fmat>::from(image);
141
- status = stbi_write_hdr(filename.c_str(), info.Width(), info.Height(),
142
- info.Channels(), tmpImage.memptr());
143
- }
144
- else if ("jpg" == Extension(filename))
145
- {
146
- status = stbi_write_jpg(filename.c_str(), info.Width(), info.Height(),
147
- info.Channels(), imageMem, info.Quality());
148
- }
149
-
150
- if (!status)
151
- {
152
- if (fatal)
153
- {
154
- Log::Fatal << "Save(): error saving image to '" << filename << "'."
155
- << std::endl;
156
- }
157
- else
158
- {
159
- Log::Warn << "Save(): error saving image to '" << filename << "'."
160
- << std::endl;
161
- }
162
- }
163
-
164
- return status;
165
- }
166
-
167
- } // namespace data
168
- } // namespace mlpack
169
-
170
- #endif
@@ -1,61 +0,0 @@
1
- /**
2
- * @file core/data/types.hpp
3
- * @author Gopi M. Tatiraju
4
- *
5
- * This file contains utilitiy functions related to types of data.
6
- * We have adapted all the standard types which are available in armadillo.
7
- *
8
- * This file also contains functions to convery external file types to mlpack
9
- * file types. In future if we the user of mlpack needs support of an external
10
- * linear algebra library like armadillo, all functions related to handling the
11
- * types goes here.
12
- *
13
- * mlpack is free software; you may redistribute it and/or modify it under the
14
- * terms of the 3-clause BSD license. You should have received a copy of the
15
- * 3-clause BSD license along with mlpack. If not, see
16
- * http://www.opensource.org/licenses/BSD-3-Clause for more information.
17
- */
18
-
19
- #ifndef MLPACK_CORE_DATA_TYPES_HPP
20
- #define MLPACK_CORE_DATA_TYPES_HPP
21
-
22
- namespace mlpack {
23
- namespace data {
24
-
25
- enum struct FileType
26
- {
27
- FileTypeUnknown,
28
- AutoDetect, // attempt to automatically detect the file type
29
- RawASCII, // raw text (ASCII), without a header
30
- ArmaASCII, // Armadillo text format, with a header specifying matrix type and
31
- // size
32
- CSVASCII, // comma separated values (CSV), without a header
33
- RawBinary, // raw binary format (machine dependent), without a header
34
- ArmaBinary, // Armadillo binary format (machine dependent), with a header
35
- // specifying matrix type and size
36
- PGMBinary, // Portable Grey Map (greyscale image)
37
- PPMBinary, // Portable Pixel Map (colour image), used by the field and cube
38
- // classes
39
- HDF5Binary, // HDF5: open binary format, not specific to Armadillo, which can
40
- // store arbitrary data
41
- CoordASCII, // simple co-ordinate format for sparse matrices (indices start at
42
- // zero)
43
- ARFFASCII // ARFF data format, with a header specifying information about
44
- // categories of the data.
45
- };
46
-
47
- /**
48
- * This function is used to convert mlpack file types to
49
- * their respective Armadillo file types.
50
- *
51
- * @param type mlpack::FileType.
52
- */
53
- inline arma::file_type ToArmaFileType(const FileType& type);
54
-
55
- } // namespace data
56
- } // namespace mlpack
57
-
58
- #include "types_impl.hpp"
59
-
60
- #endif
61
-
@@ -1,83 +0,0 @@
1
- /**
2
- * @file core/data/types.hpp
3
- * @author Gopi M. Tatiraju
4
- *
5
- * This file contains utilitiy functions related to types of data.
6
- * We have adapted all the standard types which are available in armadillo.
7
- *
8
- * This file also contains functions to convery external file types to mlpack
9
- * file types. In future if we the user of mlpack needs support of an external
10
- * linear algebra library like armadillo, all functions related to handling the
11
- * types goes here.
12
- *
13
- * mlpack is free software; you may redistribute it and/or modify it under the
14
- * terms of the 3-clause BSD license. You should have received a copy of the
15
- * 3-clause BSD license along with mlpack. If not, see
16
- * http://www.opensource.org/licenses/BSD-3-Clause for more information.
17
- */
18
-
19
- #ifndef MLPACK_CORE_DATA_TYPES_IMPL_HPP
20
- #define MLPACK_CORE_DATA_TYPES_IMPL_HPP
21
-
22
- #include "types.hpp"
23
-
24
- namespace mlpack{
25
- namespace data{
26
-
27
- inline arma::file_type ToArmaFileType(const FileType& type)
28
- {
29
- switch (type)
30
- {
31
- case FileType::FileTypeUnknown:
32
- return arma::file_type_unknown;
33
- break;
34
-
35
- case FileType::AutoDetect:
36
- return arma::auto_detect;
37
- break;
38
-
39
- case FileType::RawASCII:
40
- return arma::raw_ascii;
41
- break;
42
-
43
- case FileType::ArmaASCII:
44
- return arma::arma_ascii;
45
- break;
46
-
47
- case FileType::CSVASCII:
48
- return arma::csv_ascii;
49
- break;
50
-
51
- case FileType::RawBinary:
52
- return arma::raw_binary;
53
- break;
54
-
55
- case FileType::ArmaBinary:
56
- return arma::arma_binary;
57
- break;
58
-
59
- case FileType::PGMBinary:
60
- return arma::pgm_binary;
61
- break;
62
-
63
- case FileType::PPMBinary:
64
- return arma::ppm_binary;
65
- break;
66
-
67
- case FileType::HDF5Binary:
68
- return arma::hdf5_binary;
69
- break;
70
-
71
- case FileType::CoordASCII:
72
- return arma::coord_ascii;
73
- break;
74
-
75
- default:
76
- return arma::file_type_unknown;
77
- break;
78
- }
79
- }
80
-
81
- } // namespace data
82
- } // namespace mlpack
83
- #endif
@@ -1,158 +0,0 @@
1
- /**
2
- * @file core/data/utilities.hpp
3
- * @author Ryan Curtin
4
- * @author Omar Shrit
5
- * @author Gopi Tatiraju
6
- *
7
- * Utilities functions that can be used during loading and saving the data..
8
- *
9
- * mlpack is free software; you may redistribute it and/or modify it under the
10
- * terms of the 3-clause BSD license. You should have received a copy of the
11
- * 3-clause BSD license along with mlpack. If not, see
12
- * http://www.opensource.org/licenses/BSD-3-Clause for more information.
13
- */
14
- #ifndef MLPACK_CORE_DATA_UTILITIES_HPP
15
- #define MLPACK_CORE_DATA_UTILITIES_HPP
16
-
17
- #include <mlpack/prereqs.hpp>
18
-
19
- #include "detect_file_type.hpp"
20
-
21
- namespace mlpack {
22
- namespace data {
23
-
24
- namespace details {
25
-
26
- template<typename Tokenizer>
27
- std::vector<std::string> ToTokens(Tokenizer& lineTok)
28
- {
29
- std::vector<std::string> tokens;
30
- std::transform(std::begin(lineTok), std::end(lineTok),
31
- std::back_inserter(tokens),
32
- [&tokens](std::string const &str)
33
- {
34
- std::string trimmedToken(str);
35
- Trim(trimmedToken);
36
- return std::move(trimmedToken);
37
- });
38
-
39
- return tokens;
40
- }
41
-
42
- inline
43
- void TransposeTokens(std::vector<std::vector<std::string>> const &input,
44
- std::vector<std::string>& output,
45
- size_t index)
46
- {
47
- output.clear();
48
- for (size_t i = 0; i != input.size(); ++i)
49
- {
50
- output.emplace_back(input[i][index]);
51
- }
52
- }
53
- } // namespace details
54
-
55
- template<typename DataOptionsType>
56
- bool OpenFile(const std::string& filename,
57
- DataOptionsType& opts,
58
- bool isLoading,
59
- std::fstream& stream)
60
- {
61
- if (isLoading)
62
- {
63
- #ifdef _WIN32 // Always open in binary mode on Windows.
64
- stream.open(filename.c_str(), std::fstream::in
65
- | std::fstream::binary);
66
- #else
67
- stream.open(filename.c_str(), std::fstream::in);
68
- #endif
69
- }
70
- // Add here and else if for ModelOptions in a couple of stages.
71
- else
72
- {
73
- #ifdef _WIN32 // Always open in binary mode on Windows.
74
- stream.open(filename.c_str(), std::fstream::out
75
- | std::fstream::binary);
76
- #else
77
- stream.open(filename.c_str(), std::fstream::out);
78
- #endif
79
- }
80
-
81
- if (!stream.is_open())
82
- {
83
- if (opts.Fatal() && isLoading)
84
- Log::Fatal << "Cannot open file '" << filename << "' for loading. "
85
- << "Please check if the file exists." << std::endl;
86
-
87
- else if (!opts.Fatal() && isLoading)
88
- Log::Warn << "Cannot open file '" << filename << "' for loading. "
89
- << "Please check if the file exists." << std::endl;
90
-
91
- else if (opts.Fatal() && !isLoading)
92
- Log::Fatal << "Cannot open file '" << filename << "' for saving. "
93
- << "Please check if you have permissions for writing." << std::endl;
94
-
95
- else if (!opts.Fatal() && !isLoading)
96
- Log::Warn << "Cannot open file '" << filename << "' for saving. "
97
- << "Please check if you have permissions for writing." << std::endl;
98
-
99
- return false;
100
- }
101
- return true;
102
- }
103
-
104
- template<typename MatType, typename DataOptionsType>
105
- bool DetectFileType(const std::string& filename,
106
- DataOptionsType& opts,
107
- bool isLoading,
108
- std::fstream* stream = nullptr)
109
- {
110
- // Add if for ModelOptions in a couple of stages
111
- if (opts.Format() == FileType::AutoDetect)
112
- {
113
- if (isLoading)
114
- // Attempt to auto-detect the type from the given file.
115
- opts.Format() = AutoDetect(*stream, filename);
116
- else
117
- DetectFromExtension<MatType>(filename, opts);
118
- // Provide error if we don't know the type.
119
- if (opts.Format() == FileType::FileTypeUnknown)
120
- {
121
- if (opts.Fatal())
122
- Log::Fatal << "Unable to detect type of '" << filename << "'; "
123
- << "Incorrect extension?" << std::endl;
124
- else
125
- Log::Warn << "Unable to detect type of '" << filename << "'; "
126
- << "Incorrect extension?" << std::endl;
127
-
128
- return false;
129
- }
130
- }
131
- return true;
132
- }
133
-
134
- template<typename MatType, typename DataOptionsType>
135
- bool SaveMatrix(const MatType& matrix,
136
- const DataOptionsType& opts,
137
- const std::string& filename,
138
- std::fstream& stream)
139
- {
140
- bool success = false;
141
- if (opts.Format() == FileType::HDF5Binary)
142
- {
143
- #ifdef ARMA_USE_HDF5
144
- // We can't save with streams for HDF5.
145
- success = matrix.save(filename, ToArmaFileType(opts.Format()));
146
- #endif
147
- }
148
- else
149
- {
150
- success = matrix.save(stream, ToArmaFileType(opts.Format()));
151
- }
152
- return success;
153
- }
154
-
155
- } //namespace data
156
- } //namespace mlpack
157
-
158
- #endif
@@ -1 +0,0 @@
1
- return "mlpack git-0fdccbfb21";