teradataml 17.20.0.7__py3-none-any.whl → 20.0.0.0__py3-none-any.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.
Potentially problematic release.
This version of teradataml might be problematic. Click here for more details.
- teradataml/LICENSE-3RD-PARTY.pdf +0 -0
- teradataml/LICENSE.pdf +0 -0
- teradataml/README.md +1864 -1640
- teradataml/__init__.py +70 -60
- teradataml/_version.py +11 -11
- teradataml/analytics/Transformations.py +2995 -2995
- teradataml/analytics/__init__.py +81 -83
- teradataml/analytics/analytic_function_executor.py +2013 -2010
- teradataml/analytics/analytic_query_generator.py +958 -958
- teradataml/analytics/byom/H2OPredict.py +514 -514
- teradataml/analytics/byom/PMMLPredict.py +437 -437
- teradataml/analytics/byom/__init__.py +14 -14
- teradataml/analytics/json_parser/__init__.py +130 -130
- teradataml/analytics/json_parser/analytic_functions_argument.py +1707 -1707
- teradataml/analytics/json_parser/json_store.py +191 -191
- teradataml/analytics/json_parser/metadata.py +1637 -1637
- teradataml/analytics/json_parser/utils.py +804 -803
- teradataml/analytics/meta_class.py +196 -196
- teradataml/analytics/sqle/DecisionTreePredict.py +455 -470
- teradataml/analytics/sqle/NaiveBayesPredict.py +419 -428
- teradataml/analytics/sqle/__init__.py +97 -110
- teradataml/analytics/sqle/json/decisiontreepredict_sqle.json +78 -78
- teradataml/analytics/sqle/json/naivebayespredict_sqle.json +62 -62
- teradataml/analytics/table_operator/__init__.py +10 -10
- teradataml/analytics/uaf/__init__.py +63 -63
- teradataml/analytics/utils.py +693 -692
- teradataml/analytics/valib.py +1603 -1600
- teradataml/automl/__init__.py +1628 -0
- teradataml/automl/custom_json_utils.py +1270 -0
- teradataml/automl/data_preparation.py +993 -0
- teradataml/automl/data_transformation.py +727 -0
- teradataml/automl/feature_engineering.py +1648 -0
- teradataml/automl/feature_exploration.py +547 -0
- teradataml/automl/model_evaluation.py +163 -0
- teradataml/automl/model_training.py +887 -0
- teradataml/catalog/__init__.py +1 -3
- teradataml/catalog/byom.py +1759 -1716
- teradataml/catalog/function_argument_mapper.py +859 -861
- teradataml/catalog/model_cataloging_utils.py +491 -1510
- teradataml/clients/pkce_client.py +481 -481
- teradataml/common/aed_utils.py +6 -2
- teradataml/common/bulk_exposed_utils.py +111 -111
- teradataml/common/constants.py +1433 -1441
- teradataml/common/deprecations.py +160 -0
- teradataml/common/exceptions.py +73 -73
- teradataml/common/formula.py +742 -742
- teradataml/common/garbagecollector.py +592 -635
- teradataml/common/messagecodes.py +422 -431
- teradataml/common/messages.py +227 -231
- teradataml/common/sqlbundle.py +693 -693
- teradataml/common/td_coltype_code_to_tdtype.py +48 -48
- teradataml/common/utils.py +2418 -2500
- teradataml/common/warnings.py +25 -25
- teradataml/common/wrapper_utils.py +1 -110
- teradataml/config/dummy_file1.cfg +4 -4
- teradataml/config/dummy_file2.cfg +2 -2
- teradataml/config/sqlengine_alias_definitions_v1.0 +13 -13
- teradataml/config/sqlengine_alias_definitions_v1.1 +19 -19
- teradataml/config/sqlengine_alias_definitions_v1.3 +18 -18
- teradataml/context/aed_context.py +217 -217
- teradataml/context/context.py +1071 -999
- teradataml/data/A_loan.csv +19 -19
- teradataml/data/BINARY_REALS_LEFT.csv +11 -11
- teradataml/data/BINARY_REALS_RIGHT.csv +11 -11
- teradataml/data/B_loan.csv +49 -49
- teradataml/data/BuoyData2.csv +17 -17
- teradataml/data/CONVOLVE2_COMPLEX_LEFT.csv +5 -5
- teradataml/data/CONVOLVE2_COMPLEX_RIGHT.csv +5 -5
- teradataml/data/Convolve2RealsLeft.csv +5 -5
- teradataml/data/Convolve2RealsRight.csv +5 -5
- teradataml/data/Convolve2ValidLeft.csv +11 -11
- teradataml/data/Convolve2ValidRight.csv +11 -11
- teradataml/data/DFFTConv_Real_8_8.csv +65 -65
- teradataml/data/Orders1_12mf.csv +24 -24
- teradataml/data/Pi_loan.csv +7 -7
- teradataml/data/SMOOTHED_DATA.csv +7 -7
- teradataml/data/TestDFFT8.csv +9 -9
- teradataml/data/TestRiver.csv +109 -109
- teradataml/data/Traindata.csv +28 -28
- teradataml/data/acf.csv +17 -17
- teradataml/data/adaboost_example.json +34 -34
- teradataml/data/adaboostpredict_example.json +24 -24
- teradataml/data/additional_table.csv +10 -10
- teradataml/data/admissions_test.csv +21 -21
- teradataml/data/admissions_train.csv +41 -41
- teradataml/data/admissions_train_nulls.csv +41 -41
- teradataml/data/ageandheight.csv +13 -13
- teradataml/data/ageandpressure.csv +31 -31
- teradataml/data/antiselect_example.json +36 -36
- teradataml/data/antiselect_input.csv +8 -8
- teradataml/data/antiselect_input_mixed_case.csv +8 -8
- teradataml/data/applicant_external.csv +6 -6
- teradataml/data/applicant_reference.csv +6 -6
- teradataml/data/arima_example.json +9 -9
- teradataml/data/assortedtext_input.csv +8 -8
- teradataml/data/attribution_example.json +33 -33
- teradataml/data/attribution_sample_table.csv +27 -27
- teradataml/data/attribution_sample_table1.csv +6 -6
- teradataml/data/attribution_sample_table2.csv +11 -11
- teradataml/data/bank_churn.csv +10001 -0
- teradataml/data/bank_web_clicks1.csv +42 -42
- teradataml/data/bank_web_clicks2.csv +91 -91
- teradataml/data/bank_web_url.csv +85 -85
- teradataml/data/barrier.csv +2 -2
- teradataml/data/barrier_new.csv +3 -3
- teradataml/data/betweenness_example.json +13 -13
- teradataml/data/bin_breaks.csv +8 -8
- teradataml/data/bin_fit_ip.csv +3 -3
- teradataml/data/binary_complex_left.csv +11 -11
- teradataml/data/binary_complex_right.csv +11 -11
- teradataml/data/binary_matrix_complex_left.csv +21 -21
- teradataml/data/binary_matrix_complex_right.csv +21 -21
- teradataml/data/binary_matrix_real_left.csv +21 -21
- teradataml/data/binary_matrix_real_right.csv +21 -21
- teradataml/data/blood2ageandweight.csv +26 -26
- teradataml/data/bmi.csv +501 -0
- teradataml/data/boston.csv +507 -507
- teradataml/data/buoydata_mix.csv +11 -11
- teradataml/data/burst_data.csv +5 -5
- teradataml/data/burst_example.json +20 -20
- teradataml/data/byom_example.json +17 -17
- teradataml/data/bytes_table.csv +3 -3
- teradataml/data/cal_housing_ex_raw.csv +70 -70
- teradataml/data/callers.csv +7 -7
- teradataml/data/calls.csv +10 -10
- teradataml/data/cars_hist.csv +33 -33
- teradataml/data/cat_table.csv +24 -24
- teradataml/data/ccm_example.json +31 -31
- teradataml/data/ccm_input.csv +91 -91
- teradataml/data/ccm_input2.csv +13 -13
- teradataml/data/ccmexample.csv +101 -101
- teradataml/data/ccmprepare_example.json +8 -8
- teradataml/data/ccmprepare_input.csv +91 -91
- teradataml/data/cfilter_example.json +12 -12
- teradataml/data/changepointdetection_example.json +18 -18
- teradataml/data/changepointdetectionrt_example.json +8 -8
- teradataml/data/chi_sq.csv +2 -2
- teradataml/data/churn_data.csv +14 -14
- teradataml/data/churn_emission.csv +35 -35
- teradataml/data/churn_initial.csv +3 -3
- teradataml/data/churn_state_transition.csv +5 -5
- teradataml/data/citedges_2.csv +745 -745
- teradataml/data/citvertices_2.csv +1210 -1210
- teradataml/data/clicks2.csv +16 -16
- teradataml/data/clickstream.csv +12 -12
- teradataml/data/clickstream1.csv +11 -11
- teradataml/data/closeness_example.json +15 -15
- teradataml/data/complaints.csv +21 -21
- teradataml/data/complaints_mini.csv +3 -3
- teradataml/data/complaints_testtoken.csv +224 -224
- teradataml/data/complaints_tokens_test.csv +353 -353
- teradataml/data/complaints_traintoken.csv +472 -472
- teradataml/data/computers_category.csv +1001 -1001
- teradataml/data/computers_test1.csv +1252 -1252
- teradataml/data/computers_train1.csv +5009 -5009
- teradataml/data/computers_train1_clustered.csv +5009 -5009
- teradataml/data/confusionmatrix_example.json +9 -9
- teradataml/data/conversion_event_table.csv +3 -3
- teradataml/data/corr_input.csv +17 -17
- teradataml/data/correlation_example.json +11 -11
- teradataml/data/coxhazardratio_example.json +39 -39
- teradataml/data/coxph_example.json +15 -15
- teradataml/data/coxsurvival_example.json +28 -28
- teradataml/data/cpt.csv +41 -41
- teradataml/data/credit_ex_merged.csv +45 -45
- teradataml/data/customer_loyalty.csv +301 -301
- teradataml/data/customer_loyalty_newseq.csv +31 -31
- teradataml/data/dataframe_example.json +146 -146
- teradataml/data/decisionforest_example.json +37 -37
- teradataml/data/decisionforestpredict_example.json +38 -38
- teradataml/data/decisiontree_example.json +21 -21
- teradataml/data/decisiontreepredict_example.json +45 -45
- teradataml/data/dfft2_size4_real.csv +17 -17
- teradataml/data/dfft2_test_matrix16.csv +17 -17
- teradataml/data/dfft2conv_real_4_4.csv +65 -65
- teradataml/data/diabetes.csv +443 -443
- teradataml/data/diabetes_test.csv +89 -89
- teradataml/data/dict_table.csv +5 -5
- teradataml/data/docperterm_table.csv +4 -4
- teradataml/data/docs/__init__.py +1 -1
- teradataml/data/docs/byom/docs/DataRobotPredict.py +180 -180
- teradataml/data/docs/byom/docs/DataikuPredict.py +177 -177
- teradataml/data/docs/byom/docs/H2OPredict.py +324 -324
- teradataml/data/docs/byom/docs/ONNXPredict.py +283 -283
- teradataml/data/docs/byom/docs/PMMLPredict.py +277 -277
- teradataml/data/docs/sqle/docs_17_10/Antiselect.py +82 -82
- teradataml/data/docs/sqle/docs_17_10/Attribution.py +199 -199
- teradataml/data/docs/sqle/docs_17_10/BincodeFit.py +171 -171
- teradataml/data/docs/sqle/docs_17_10/BincodeTransform.py +131 -130
- teradataml/data/docs/sqle/docs_17_10/CategoricalSummary.py +86 -86
- teradataml/data/docs/sqle/docs_17_10/ChiSq.py +90 -90
- teradataml/data/docs/sqle/docs_17_10/ColumnSummary.py +85 -85
- teradataml/data/docs/sqle/docs_17_10/ConvertTo.py +95 -95
- teradataml/data/docs/sqle/docs_17_10/DecisionForestPredict.py +139 -139
- teradataml/data/docs/sqle/docs_17_10/DecisionTreePredict.py +151 -151
- teradataml/data/docs/sqle/docs_17_10/FTest.py +160 -160
- teradataml/data/docs/sqle/docs_17_10/FillRowId.py +82 -82
- teradataml/data/docs/sqle/docs_17_10/Fit.py +87 -87
- teradataml/data/docs/sqle/docs_17_10/GLMPredict.py +144 -144
- teradataml/data/docs/sqle/docs_17_10/GetRowsWithMissingValues.py +84 -84
- teradataml/data/docs/sqle/docs_17_10/GetRowsWithoutMissingValues.py +81 -81
- teradataml/data/docs/sqle/docs_17_10/Histogram.py +164 -164
- teradataml/data/docs/sqle/docs_17_10/MovingAverage.py +134 -134
- teradataml/data/docs/sqle/docs_17_10/NGramSplitter.py +208 -208
- teradataml/data/docs/sqle/docs_17_10/NPath.py +265 -265
- teradataml/data/docs/sqle/docs_17_10/NaiveBayesPredict.py +116 -116
- teradataml/data/docs/sqle/docs_17_10/NaiveBayesTextClassifierPredict.py +176 -176
- teradataml/data/docs/sqle/docs_17_10/NumApply.py +147 -147
- teradataml/data/docs/sqle/docs_17_10/OneHotEncodingFit.py +132 -132
- teradataml/data/docs/sqle/docs_17_10/OneHotEncodingTransform.py +103 -103
- teradataml/data/docs/sqle/docs_17_10/OutlierFilterFit.py +165 -165
- teradataml/data/docs/sqle/docs_17_10/OutlierFilterTransform.py +101 -101
- teradataml/data/docs/sqle/docs_17_10/Pack.py +128 -128
- teradataml/data/docs/sqle/docs_17_10/PolynomialFeaturesFit.py +111 -111
- teradataml/data/docs/sqle/docs_17_10/PolynomialFeaturesTransform.py +102 -102
- teradataml/data/docs/sqle/docs_17_10/QQNorm.py +104 -104
- teradataml/data/docs/sqle/docs_17_10/RoundColumns.py +109 -109
- teradataml/data/docs/sqle/docs_17_10/RowNormalizeFit.py +117 -117
- teradataml/data/docs/sqle/docs_17_10/RowNormalizeTransform.py +99 -98
- teradataml/data/docs/sqle/docs_17_10/SVMSparsePredict.py +152 -152
- teradataml/data/docs/sqle/docs_17_10/ScaleFit.py +197 -197
- teradataml/data/docs/sqle/docs_17_10/ScaleTransform.py +99 -98
- teradataml/data/docs/sqle/docs_17_10/Sessionize.py +113 -113
- teradataml/data/docs/sqle/docs_17_10/SimpleImputeFit.py +116 -116
- teradataml/data/docs/sqle/docs_17_10/SimpleImputeTransform.py +98 -98
- teradataml/data/docs/sqle/docs_17_10/StrApply.py +187 -187
- teradataml/data/docs/sqle/docs_17_10/StringSimilarity.py +145 -145
- teradataml/data/docs/sqle/docs_17_10/Transform.py +105 -104
- teradataml/data/docs/sqle/docs_17_10/UnivariateStatistics.py +141 -141
- teradataml/data/docs/sqle/docs_17_10/Unpack.py +214 -214
- teradataml/data/docs/sqle/docs_17_10/WhichMax.py +83 -83
- teradataml/data/docs/sqle/docs_17_10/WhichMin.py +83 -83
- teradataml/data/docs/sqle/docs_17_10/ZTest.py +155 -155
- teradataml/data/docs/sqle/docs_17_20/ANOVA.py +126 -126
- teradataml/data/docs/sqle/docs_17_20/Antiselect.py +82 -82
- teradataml/data/docs/sqle/docs_17_20/Attribution.py +200 -200
- teradataml/data/docs/sqle/docs_17_20/BincodeFit.py +171 -171
- teradataml/data/docs/sqle/docs_17_20/BincodeTransform.py +139 -138
- teradataml/data/docs/sqle/docs_17_20/CategoricalSummary.py +86 -86
- teradataml/data/docs/sqle/docs_17_20/ChiSq.py +90 -90
- teradataml/data/docs/sqle/docs_17_20/ClassificationEvaluator.py +166 -166
- teradataml/data/docs/sqle/docs_17_20/ColumnSummary.py +85 -85
- teradataml/data/docs/sqle/docs_17_20/ColumnTransformer.py +243 -243
- teradataml/data/docs/sqle/docs_17_20/ConvertTo.py +113 -113
- teradataml/data/docs/sqle/docs_17_20/DecisionForest.py +279 -279
- teradataml/data/docs/sqle/docs_17_20/DecisionForestPredict.py +144 -144
- teradataml/data/docs/sqle/docs_17_20/DecisionTreePredict.py +135 -135
- teradataml/data/docs/sqle/docs_17_20/FTest.py +160 -160
- teradataml/data/docs/sqle/docs_17_20/FillRowId.py +82 -82
- teradataml/data/docs/sqle/docs_17_20/Fit.py +87 -87
- teradataml/data/docs/sqle/docs_17_20/GLM.py +380 -380
- teradataml/data/docs/sqle/docs_17_20/GLMPerSegment.py +414 -414
- teradataml/data/docs/sqle/docs_17_20/GLMPredict.py +144 -144
- teradataml/data/docs/sqle/docs_17_20/GLMPredictPerSegment.py +233 -234
- teradataml/data/docs/sqle/docs_17_20/GetFutileColumns.py +123 -123
- teradataml/data/docs/sqle/docs_17_20/GetRowsWithMissingValues.py +108 -108
- teradataml/data/docs/sqle/docs_17_20/GetRowsWithoutMissingValues.py +105 -105
- teradataml/data/docs/sqle/docs_17_20/Histogram.py +223 -223
- teradataml/data/docs/sqle/docs_17_20/KMeans.py +204 -204
- teradataml/data/docs/sqle/docs_17_20/KMeansPredict.py +144 -143
- teradataml/data/docs/sqle/docs_17_20/KNN.py +214 -214
- teradataml/data/docs/sqle/docs_17_20/MovingAverage.py +134 -134
- teradataml/data/docs/sqle/docs_17_20/NGramSplitter.py +208 -208
- teradataml/data/docs/sqle/docs_17_20/NPath.py +265 -265
- teradataml/data/docs/sqle/docs_17_20/NaiveBayesPredict.py +116 -116
- teradataml/data/docs/sqle/docs_17_20/NaiveBayesTextClassifierPredict.py +177 -176
- teradataml/data/docs/sqle/docs_17_20/NaiveBayesTextClassifierTrainer.py +126 -126
- teradataml/data/docs/sqle/docs_17_20/NonLinearCombineFit.py +117 -117
- teradataml/data/docs/sqle/docs_17_20/NonLinearCombineTransform.py +112 -112
- teradataml/data/docs/sqle/docs_17_20/NumApply.py +147 -147
- teradataml/data/docs/sqle/docs_17_20/OneClassSVM.py +307 -307
- teradataml/data/docs/sqle/docs_17_20/OneClassSVMPredict.py +185 -184
- teradataml/data/docs/sqle/docs_17_20/OneHotEncodingFit.py +225 -225
- teradataml/data/docs/sqle/docs_17_20/OneHotEncodingTransform.py +115 -115
- teradataml/data/docs/sqle/docs_17_20/OrdinalEncodingFit.py +219 -219
- teradataml/data/docs/sqle/docs_17_20/OrdinalEncodingTransform.py +127 -127
- teradataml/data/docs/sqle/docs_17_20/OutlierFilterFit.py +189 -189
- teradataml/data/docs/sqle/docs_17_20/OutlierFilterTransform.py +117 -112
- teradataml/data/docs/sqle/docs_17_20/Pack.py +128 -128
- teradataml/data/docs/sqle/docs_17_20/PolynomialFeaturesFit.py +111 -111
- teradataml/data/docs/sqle/docs_17_20/PolynomialFeaturesTransform.py +112 -111
- teradataml/data/docs/sqle/docs_17_20/QQNorm.py +104 -104
- teradataml/data/docs/sqle/docs_17_20/ROC.py +163 -163
- teradataml/data/docs/sqle/docs_17_20/RandomProjectionFit.py +154 -154
- teradataml/data/docs/sqle/docs_17_20/RandomProjectionMinComponents.py +106 -106
- teradataml/data/docs/sqle/docs_17_20/RandomProjectionTransform.py +120 -120
- teradataml/data/docs/sqle/docs_17_20/RegressionEvaluator.py +211 -211
- teradataml/data/docs/sqle/docs_17_20/RoundColumns.py +108 -108
- teradataml/data/docs/sqle/docs_17_20/RowNormalizeFit.py +117 -117
- teradataml/data/docs/sqle/docs_17_20/RowNormalizeTransform.py +111 -110
- teradataml/data/docs/sqle/docs_17_20/SVM.py +413 -413
- teradataml/data/docs/sqle/docs_17_20/SVMPredict.py +202 -202
- teradataml/data/docs/sqle/docs_17_20/SVMSparsePredict.py +152 -152
- teradataml/data/docs/sqle/docs_17_20/ScaleFit.py +197 -197
- teradataml/data/docs/sqle/docs_17_20/ScaleTransform.py +110 -109
- teradataml/data/docs/sqle/docs_17_20/SentimentExtractor.py +206 -206
- teradataml/data/docs/sqle/docs_17_20/Sessionize.py +113 -113
- teradataml/data/docs/sqle/docs_17_20/Silhouette.py +152 -152
- teradataml/data/docs/sqle/docs_17_20/SimpleImputeFit.py +116 -116
- teradataml/data/docs/sqle/docs_17_20/SimpleImputeTransform.py +109 -108
- teradataml/data/docs/sqle/docs_17_20/StrApply.py +187 -187
- teradataml/data/docs/sqle/docs_17_20/StringSimilarity.py +145 -145
- teradataml/data/docs/sqle/docs_17_20/TDDecisionForestPredict.py +207 -207
- teradataml/data/docs/sqle/docs_17_20/TDGLMPredict.py +171 -171
- teradataml/data/docs/sqle/docs_17_20/TargetEncodingFit.py +266 -266
- teradataml/data/docs/sqle/docs_17_20/TargetEncodingTransform.py +141 -140
- teradataml/data/docs/sqle/docs_17_20/TextParser.py +172 -172
- teradataml/data/docs/sqle/docs_17_20/TrainTestSplit.py +159 -159
- teradataml/data/docs/sqle/docs_17_20/Transform.py +123 -123
- teradataml/data/docs/sqle/docs_17_20/UnivariateStatistics.py +141 -141
- teradataml/data/docs/sqle/docs_17_20/Unpack.py +214 -214
- teradataml/data/docs/sqle/docs_17_20/VectorDistance.py +168 -168
- teradataml/data/docs/sqle/docs_17_20/WhichMax.py +83 -83
- teradataml/data/docs/sqle/docs_17_20/WhichMin.py +83 -83
- teradataml/data/docs/sqle/docs_17_20/WordEmbeddings.py +236 -236
- teradataml/data/docs/sqle/docs_17_20/XGBoost.py +353 -353
- teradataml/data/docs/sqle/docs_17_20/XGBoostPredict.py +275 -275
- teradataml/data/docs/sqle/docs_17_20/ZTest.py +155 -155
- teradataml/data/docs/tableoperator/docs_17_00/ReadNOS.py +429 -429
- teradataml/data/docs/tableoperator/docs_17_05/ReadNOS.py +429 -429
- teradataml/data/docs/tableoperator/docs_17_05/WriteNOS.py +347 -347
- teradataml/data/docs/tableoperator/docs_17_10/ReadNOS.py +428 -428
- teradataml/data/docs/tableoperator/docs_17_10/WriteNOS.py +347 -347
- teradataml/data/docs/tableoperator/docs_17_20/ReadNOS.py +439 -439
- teradataml/data/docs/tableoperator/docs_17_20/WriteNOS.py +386 -386
- teradataml/data/docs/uaf/docs_17_20/ACF.py +195 -195
- teradataml/data/docs/uaf/docs_17_20/ArimaEstimate.py +369 -369
- teradataml/data/docs/uaf/docs_17_20/ArimaForecast.py +142 -142
- teradataml/data/docs/uaf/docs_17_20/ArimaValidate.py +159 -159
- teradataml/data/docs/uaf/docs_17_20/BinaryMatrixOp.py +247 -247
- teradataml/data/docs/uaf/docs_17_20/BinarySeriesOp.py +252 -252
- teradataml/data/docs/uaf/docs_17_20/BreuschGodfrey.py +177 -177
- teradataml/data/docs/uaf/docs_17_20/BreuschPaganGodfrey.py +174 -174
- teradataml/data/docs/uaf/docs_17_20/Convolve.py +226 -226
- teradataml/data/docs/uaf/docs_17_20/Convolve2.py +214 -214
- teradataml/data/docs/uaf/docs_17_20/CumulPeriodogram.py +183 -183
- teradataml/data/docs/uaf/docs_17_20/DFFT.py +203 -203
- teradataml/data/docs/uaf/docs_17_20/DFFT2.py +216 -216
- teradataml/data/docs/uaf/docs_17_20/DFFT2Conv.py +215 -215
- teradataml/data/docs/uaf/docs_17_20/DFFTConv.py +191 -191
- teradataml/data/docs/uaf/docs_17_20/DTW.py +179 -179
- teradataml/data/docs/uaf/docs_17_20/DickeyFuller.py +144 -144
- teradataml/data/docs/uaf/docs_17_20/DurbinWatson.py +183 -183
- teradataml/data/docs/uaf/docs_17_20/ExtractResults.py +184 -184
- teradataml/data/docs/uaf/docs_17_20/FitMetrics.py +172 -172
- teradataml/data/docs/uaf/docs_17_20/GenseriesFormula.py +205 -205
- teradataml/data/docs/uaf/docs_17_20/GenseriesSinusoids.py +142 -142
- teradataml/data/docs/uaf/docs_17_20/HoltWintersForecaster.py +258 -258
- teradataml/data/docs/uaf/docs_17_20/IDFFT.py +164 -164
- teradataml/data/docs/uaf/docs_17_20/IDFFT2.py +198 -198
- teradataml/data/docs/uaf/docs_17_20/InputValidator.py +120 -120
- teradataml/data/docs/uaf/docs_17_20/LineSpec.py +155 -155
- teradataml/data/docs/uaf/docs_17_20/LinearRegr.py +214 -214
- teradataml/data/docs/uaf/docs_17_20/MAMean.py +173 -173
- teradataml/data/docs/uaf/docs_17_20/MInfo.py +133 -133
- teradataml/data/docs/uaf/docs_17_20/MatrixMultiply.py +135 -135
- teradataml/data/docs/uaf/docs_17_20/MultivarRegr.py +190 -190
- teradataml/data/docs/uaf/docs_17_20/PACF.py +158 -158
- teradataml/data/docs/uaf/docs_17_20/Portman.py +216 -216
- teradataml/data/docs/uaf/docs_17_20/PowerTransform.py +154 -154
- teradataml/data/docs/uaf/docs_17_20/Resample.py +228 -228
- teradataml/data/docs/uaf/docs_17_20/SInfo.py +122 -122
- teradataml/data/docs/uaf/docs_17_20/SeasonalNormalize.py +165 -165
- teradataml/data/docs/uaf/docs_17_20/SelectionCriteria.py +173 -173
- teradataml/data/docs/uaf/docs_17_20/SignifPeriodicities.py +170 -170
- teradataml/data/docs/uaf/docs_17_20/SignifResidmean.py +163 -163
- teradataml/data/docs/uaf/docs_17_20/SimpleExp.py +179 -179
- teradataml/data/docs/uaf/docs_17_20/Smoothma.py +207 -207
- teradataml/data/docs/uaf/docs_17_20/TrackingOp.py +150 -150
- teradataml/data/docs/uaf/docs_17_20/UNDIFF.py +171 -171
- teradataml/data/docs/uaf/docs_17_20/Unnormalize.py +201 -201
- teradataml/data/docs/uaf/docs_17_20/WhitesGeneral.py +169 -169
- teradataml/data/dtw_example.json +17 -17
- teradataml/data/dtw_t1.csv +11 -11
- teradataml/data/dtw_t2.csv +4 -4
- teradataml/data/dwt2d_example.json +15 -15
- teradataml/data/dwt_example.json +14 -14
- teradataml/data/dwt_filter_dim.csv +5 -5
- teradataml/data/emission.csv +9 -9
- teradataml/data/emp_table_by_dept.csv +19 -19
- teradataml/data/employee_info.csv +4 -4
- teradataml/data/employee_table.csv +6 -6
- teradataml/data/excluding_event_table.csv +2 -2
- teradataml/data/finance_data.csv +6 -6
- teradataml/data/finance_data2.csv +61 -61
- teradataml/data/finance_data3.csv +93 -93
- teradataml/data/fish.csv +160 -0
- teradataml/data/fm_blood2ageandweight.csv +26 -26
- teradataml/data/fmeasure_example.json +11 -11
- teradataml/data/followers_leaders.csv +10 -10
- teradataml/data/fpgrowth_example.json +12 -12
- teradataml/data/frequentpaths_example.json +29 -29
- teradataml/data/friends.csv +9 -9
- teradataml/data/fs_input.csv +33 -33
- teradataml/data/fs_input1.csv +33 -33
- teradataml/data/genData.csv +513 -513
- teradataml/data/geodataframe_example.json +39 -39
- teradataml/data/glass_types.csv +215 -0
- teradataml/data/glm_admissions_model.csv +12 -12
- teradataml/data/glm_example.json +29 -29
- teradataml/data/glml1l2_example.json +28 -28
- teradataml/data/glml1l2predict_example.json +54 -54
- teradataml/data/glmpredict_example.json +54 -54
- teradataml/data/gq_t1.csv +21 -21
- teradataml/data/hconvolve_complex_right.csv +5 -5
- teradataml/data/hconvolve_complex_rightmulti.csv +5 -5
- teradataml/data/histogram_example.json +11 -11
- teradataml/data/hmmdecoder_example.json +78 -78
- teradataml/data/hmmevaluator_example.json +24 -24
- teradataml/data/hmmsupervised_example.json +10 -10
- teradataml/data/hmmunsupervised_example.json +7 -7
- teradataml/data/house_values.csv +12 -12
- teradataml/data/house_values2.csv +13 -13
- teradataml/data/housing_cat.csv +7 -7
- teradataml/data/housing_data.csv +9 -9
- teradataml/data/housing_test.csv +47 -47
- teradataml/data/housing_test_binary.csv +47 -47
- teradataml/data/housing_train.csv +493 -493
- teradataml/data/housing_train_attribute.csv +4 -4
- teradataml/data/housing_train_binary.csv +437 -437
- teradataml/data/housing_train_parameter.csv +2 -2
- teradataml/data/housing_train_response.csv +493 -493
- teradataml/data/ibm_stock.csv +370 -370
- teradataml/data/ibm_stock1.csv +370 -370
- teradataml/data/identitymatch_example.json +21 -21
- teradataml/data/idf_table.csv +4 -4
- teradataml/data/impressions.csv +101 -101
- teradataml/data/inflation.csv +21 -21
- teradataml/data/initial.csv +3 -3
- teradataml/data/insect_sprays.csv +12 -12
- teradataml/data/insurance.csv +1339 -1339
- teradataml/data/interpolator_example.json +12 -12
- teradataml/data/iris_altinput.csv +481 -481
- teradataml/data/iris_attribute_output.csv +8 -8
- teradataml/data/iris_attribute_test.csv +121 -121
- teradataml/data/iris_attribute_train.csv +481 -481
- teradataml/data/iris_category_expect_predict.csv +31 -31
- teradataml/data/iris_data.csv +151 -0
- teradataml/data/iris_input.csv +151 -151
- teradataml/data/iris_response_train.csv +121 -121
- teradataml/data/iris_test.csv +31 -31
- teradataml/data/iris_train.csv +121 -121
- teradataml/data/join_table1.csv +4 -4
- teradataml/data/join_table2.csv +4 -4
- teradataml/data/jsons/anly_function_name.json +6 -6
- teradataml/data/jsons/byom/dataikupredict.json +147 -147
- teradataml/data/jsons/byom/datarobotpredict.json +146 -146
- teradataml/data/jsons/byom/h2opredict.json +194 -194
- teradataml/data/jsons/byom/onnxpredict.json +186 -186
- teradataml/data/jsons/byom/pmmlpredict.json +146 -146
- teradataml/data/jsons/paired_functions.json +435 -435
- teradataml/data/jsons/sqle/16.20/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/16.20/Attribution.json +249 -249
- teradataml/data/jsons/sqle/16.20/DecisionForestPredict.json +156 -156
- teradataml/data/jsons/sqle/16.20/DecisionTreePredict.json +170 -170
- teradataml/data/jsons/sqle/16.20/GLMPredict.json +122 -122
- teradataml/data/jsons/sqle/16.20/MovingAverage.json +367 -367
- teradataml/data/jsons/sqle/16.20/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/16.20/NaiveBayesPredict.json +136 -136
- teradataml/data/jsons/sqle/16.20/NaiveBayesTextClassifierPredict.json +235 -235
- teradataml/data/jsons/sqle/16.20/Pack.json +98 -98
- teradataml/data/jsons/sqle/16.20/SVMSparsePredict.json +162 -162
- teradataml/data/jsons/sqle/16.20/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/16.20/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/16.20/Unpack.json +166 -166
- teradataml/data/jsons/sqle/16.20/nPath.json +269 -269
- teradataml/data/jsons/sqle/17.00/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/17.00/Attribution.json +249 -249
- teradataml/data/jsons/sqle/17.00/DecisionForestPredict.json +156 -156
- teradataml/data/jsons/sqle/17.00/DecisionTreePredict.json +170 -170
- teradataml/data/jsons/sqle/17.00/GLMPredict.json +122 -122
- teradataml/data/jsons/sqle/17.00/MovingAverage.json +367 -367
- teradataml/data/jsons/sqle/17.00/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/17.00/NaiveBayesPredict.json +136 -136
- teradataml/data/jsons/sqle/17.00/NaiveBayesTextClassifierPredict.json +235 -235
- teradataml/data/jsons/sqle/17.00/Pack.json +98 -98
- teradataml/data/jsons/sqle/17.00/SVMSparsePredict.json +162 -162
- teradataml/data/jsons/sqle/17.00/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/17.00/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/17.00/Unpack.json +166 -166
- teradataml/data/jsons/sqle/17.00/nPath.json +269 -269
- teradataml/data/jsons/sqle/17.05/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/17.05/Attribution.json +249 -249
- teradataml/data/jsons/sqle/17.05/DecisionForestPredict.json +156 -156
- teradataml/data/jsons/sqle/17.05/DecisionTreePredict.json +170 -170
- teradataml/data/jsons/sqle/17.05/GLMPredict.json +122 -122
- teradataml/data/jsons/sqle/17.05/MovingAverage.json +367 -367
- teradataml/data/jsons/sqle/17.05/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/17.05/NaiveBayesPredict.json +136 -136
- teradataml/data/jsons/sqle/17.05/NaiveBayesTextClassifierPredict.json +235 -235
- teradataml/data/jsons/sqle/17.05/Pack.json +98 -98
- teradataml/data/jsons/sqle/17.05/SVMSparsePredict.json +162 -162
- teradataml/data/jsons/sqle/17.05/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/17.05/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/17.05/Unpack.json +166 -166
- teradataml/data/jsons/sqle/17.05/nPath.json +269 -269
- teradataml/data/jsons/sqle/17.10/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/17.10/Attribution.json +249 -249
- teradataml/data/jsons/sqle/17.10/DecisionForestPredict.json +185 -185
- teradataml/data/jsons/sqle/17.10/DecisionTreePredict.json +171 -171
- teradataml/data/jsons/sqle/17.10/GLMPredict.json +151 -151
- teradataml/data/jsons/sqle/17.10/MovingAverage.json +368 -368
- teradataml/data/jsons/sqle/17.10/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/17.10/NaiveBayesPredict.json +149 -149
- teradataml/data/jsons/sqle/17.10/NaiveBayesTextClassifierPredict.json +288 -288
- teradataml/data/jsons/sqle/17.10/Pack.json +133 -133
- teradataml/data/jsons/sqle/17.10/SVMSparsePredict.json +193 -193
- teradataml/data/jsons/sqle/17.10/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/17.10/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/17.10/TD_BinCodeFit.json +239 -239
- teradataml/data/jsons/sqle/17.10/TD_BinCodeTransform.json +70 -70
- teradataml/data/jsons/sqle/17.10/TD_CategoricalSummary.json +53 -53
- teradataml/data/jsons/sqle/17.10/TD_Chisq.json +67 -67
- teradataml/data/jsons/sqle/17.10/TD_ColumnSummary.json +53 -53
- teradataml/data/jsons/sqle/17.10/TD_ConvertTo.json +68 -68
- teradataml/data/jsons/sqle/17.10/TD_FTest.json +187 -187
- teradataml/data/jsons/sqle/17.10/TD_FillRowID.json +51 -51
- teradataml/data/jsons/sqle/17.10/TD_FunctionFit.json +46 -46
- teradataml/data/jsons/sqle/17.10/TD_FunctionTransform.json +72 -71
- teradataml/data/jsons/sqle/17.10/TD_GetRowsWithMissingValues.json +52 -52
- teradataml/data/jsons/sqle/17.10/TD_GetRowsWithoutMissingValues.json +52 -52
- teradataml/data/jsons/sqle/17.10/TD_Histogram.json +132 -132
- teradataml/data/jsons/sqle/17.10/TD_NumApply.json +147 -147
- teradataml/data/jsons/sqle/17.10/TD_OneHotEncodingFit.json +182 -182
- teradataml/data/jsons/sqle/17.10/TD_OneHotEncodingTransform.json +65 -64
- teradataml/data/jsons/sqle/17.10/TD_OutlierFilterFit.json +196 -196
- teradataml/data/jsons/sqle/17.10/TD_OutlierFilterTransform.json +48 -47
- teradataml/data/jsons/sqle/17.10/TD_PolynomialFeaturesFit.json +114 -114
- teradataml/data/jsons/sqle/17.10/TD_PolynomialFeaturesTransform.json +72 -71
- teradataml/data/jsons/sqle/17.10/TD_QQNorm.json +111 -111
- teradataml/data/jsons/sqle/17.10/TD_RoundColumns.json +93 -93
- teradataml/data/jsons/sqle/17.10/TD_RowNormalizeFit.json +127 -127
- teradataml/data/jsons/sqle/17.10/TD_RowNormalizeTransform.json +70 -69
- teradataml/data/jsons/sqle/17.10/TD_ScaleFit.json +156 -156
- teradataml/data/jsons/sqle/17.10/TD_ScaleTransform.json +70 -69
- teradataml/data/jsons/sqle/17.10/TD_SimpleImputeFit.json +147 -147
- teradataml/data/jsons/sqle/17.10/TD_SimpleImputeTransform.json +48 -47
- teradataml/data/jsons/sqle/17.10/TD_StrApply.json +240 -240
- teradataml/data/jsons/sqle/17.10/TD_UnivariateStatistics.json +118 -118
- teradataml/data/jsons/sqle/17.10/TD_WhichMax.json +52 -52
- teradataml/data/jsons/sqle/17.10/TD_WhichMin.json +52 -52
- teradataml/data/jsons/sqle/17.10/TD_ZTest.json +171 -171
- teradataml/data/jsons/sqle/17.10/Unpack.json +188 -188
- teradataml/data/jsons/sqle/17.10/nPath.json +269 -269
- teradataml/data/jsons/sqle/17.20/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/17.20/Attribution.json +249 -249
- teradataml/data/jsons/sqle/17.20/DecisionForestPredict.json +185 -185
- teradataml/data/jsons/sqle/17.20/DecisionTreePredict.json +172 -172
- teradataml/data/jsons/sqle/17.20/GLMPredict.json +151 -151
- teradataml/data/jsons/sqle/17.20/MovingAverage.json +367 -367
- teradataml/data/jsons/sqle/17.20/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/17.20/NaiveBayesPredict.json +149 -149
- teradataml/data/jsons/sqle/17.20/NaiveBayesTextClassifierPredict.json +287 -287
- teradataml/data/jsons/sqle/17.20/Pack.json +133 -133
- teradataml/data/jsons/sqle/17.20/SVMSparsePredict.json +192 -192
- teradataml/data/jsons/sqle/17.20/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/17.20/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/17.20/TD_ANOVA.json +76 -76
- teradataml/data/jsons/sqle/17.20/TD_BinCodeFit.json +239 -239
- teradataml/data/jsons/sqle/17.20/TD_BinCodeTransform.json +71 -71
- teradataml/data/jsons/sqle/17.20/TD_CategoricalSummary.json +53 -53
- teradataml/data/jsons/sqle/17.20/TD_Chisq.json +67 -67
- teradataml/data/jsons/sqle/17.20/TD_ClassificationEvaluator.json +145 -145
- teradataml/data/jsons/sqle/17.20/TD_ColumnSummary.json +53 -53
- teradataml/data/jsons/sqle/17.20/TD_ColumnTransformer.json +218 -218
- teradataml/data/jsons/sqle/17.20/TD_ConvertTo.json +92 -92
- teradataml/data/jsons/sqle/17.20/TD_DecisionForest.json +259 -259
- teradataml/data/jsons/sqle/17.20/TD_DecisionForestPredict.json +139 -139
- teradataml/data/jsons/sqle/17.20/TD_FTest.json +186 -186
- teradataml/data/jsons/sqle/17.20/TD_FillRowID.json +52 -52
- teradataml/data/jsons/sqle/17.20/TD_FunctionFit.json +46 -46
- teradataml/data/jsons/sqle/17.20/TD_FunctionTransform.json +72 -72
- teradataml/data/jsons/sqle/17.20/TD_GLM.json +431 -431
- teradataml/data/jsons/sqle/17.20/TD_GLMPREDICT.json +125 -125
- teradataml/data/jsons/sqle/17.20/TD_GLMPerSegment.json +411 -411
- teradataml/data/jsons/sqle/17.20/TD_GLMPredictPerSegment.json +146 -146
- teradataml/data/jsons/sqle/17.20/TD_GetFutileColumns.json +91 -91
- teradataml/data/jsons/sqle/17.20/TD_GetRowsWithMissingValues.json +76 -76
- teradataml/data/jsons/sqle/17.20/TD_GetRowsWithoutMissingValues.json +76 -76
- teradataml/data/jsons/sqle/17.20/TD_Histogram.json +152 -152
- teradataml/data/jsons/sqle/17.20/TD_KMeans.json +211 -211
- teradataml/data/jsons/sqle/17.20/TD_KMeansPredict.json +86 -86
- teradataml/data/jsons/sqle/17.20/TD_KNN.json +262 -262
- teradataml/data/jsons/sqle/17.20/TD_NaiveBayesTextClassifierTrainer.json +137 -137
- teradataml/data/jsons/sqle/17.20/TD_NonLinearCombineFit.json +101 -101
- teradataml/data/jsons/sqle/17.20/TD_NonLinearCombineTransform.json +71 -71
- teradataml/data/jsons/sqle/17.20/TD_NumApply.json +147 -147
- teradataml/data/jsons/sqle/17.20/TD_OneClassSVM.json +315 -315
- teradataml/data/jsons/sqle/17.20/TD_OneClassSVMPredict.json +123 -123
- teradataml/data/jsons/sqle/17.20/TD_OneHotEncodingFit.json +271 -271
- teradataml/data/jsons/sqle/17.20/TD_OneHotEncodingTransform.json +65 -65
- teradataml/data/jsons/sqle/17.20/TD_OrdinalEncodingFit.json +229 -229
- teradataml/data/jsons/sqle/17.20/TD_OrdinalEncodingTransform.json +75 -75
- teradataml/data/jsons/sqle/17.20/TD_OutlierFilterFit.json +217 -217
- teradataml/data/jsons/sqle/17.20/TD_OutlierFilterTransform.json +48 -48
- teradataml/data/jsons/sqle/17.20/TD_PolynomialFeaturesFit.json +114 -114
- teradataml/data/jsons/sqle/17.20/TD_PolynomialFeaturesTransform.json +72 -72
- teradataml/data/jsons/sqle/17.20/TD_QQNorm.json +111 -111
- teradataml/data/jsons/sqle/17.20/TD_ROC.json +177 -177
- teradataml/data/jsons/sqle/17.20/TD_RandomProjectionFit.json +178 -178
- teradataml/data/jsons/sqle/17.20/TD_RandomProjectionMinComponents.json +73 -73
- teradataml/data/jsons/sqle/17.20/TD_RandomProjectionTransform.json +74 -74
- teradataml/data/jsons/sqle/17.20/TD_RegressionEvaluator.json +137 -137
- teradataml/data/jsons/sqle/17.20/TD_RoundColumns.json +93 -93
- teradataml/data/jsons/sqle/17.20/TD_RowNormalizeFit.json +127 -127
- teradataml/data/jsons/sqle/17.20/TD_RowNormalizeTransform.json +70 -70
- teradataml/data/jsons/sqle/17.20/TD_SVM.json +389 -389
- teradataml/data/jsons/sqle/17.20/TD_SVMPredict.json +124 -124
- teradataml/data/jsons/sqle/17.20/TD_ScaleFit.json +156 -156
- teradataml/data/jsons/sqle/17.20/TD_ScaleTransform.json +70 -70
- teradataml/data/jsons/sqle/17.20/TD_SentimentExtractor.json +193 -193
- teradataml/data/jsons/sqle/17.20/TD_Silhouette.json +142 -142
- teradataml/data/jsons/sqle/17.20/TD_SimpleImputeFit.json +147 -147
- teradataml/data/jsons/sqle/17.20/TD_SimpleImputeTransform.json +48 -48
- teradataml/data/jsons/sqle/17.20/TD_StrApply.json +240 -240
- teradataml/data/jsons/sqle/17.20/TD_TargetEncodingFit.json +248 -248
- teradataml/data/jsons/sqle/17.20/TD_TargetEncodingTransform.json +75 -75
- teradataml/data/jsons/sqle/17.20/TD_TextParser.json +192 -192
- teradataml/data/jsons/sqle/17.20/TD_TrainTestSplit.json +142 -142
- teradataml/data/jsons/sqle/17.20/TD_UnivariateStatistics.json +117 -117
- teradataml/data/jsons/sqle/17.20/TD_VectorDistance.json +182 -182
- teradataml/data/jsons/sqle/17.20/TD_WhichMax.json +52 -52
- teradataml/data/jsons/sqle/17.20/TD_WhichMin.json +52 -52
- teradataml/data/jsons/sqle/17.20/TD_WordEmbeddings.json +241 -241
- teradataml/data/jsons/sqle/17.20/TD_XGBoost.json +312 -312
- teradataml/data/jsons/sqle/17.20/TD_XGBoostPredict.json +182 -182
- teradataml/data/jsons/sqle/17.20/TD_ZTest.json +170 -170
- teradataml/data/jsons/sqle/17.20/Unpack.json +188 -188
- teradataml/data/jsons/sqle/17.20/nPath.json +269 -269
- teradataml/data/jsons/tableoperator/17.00/read_nos.json +197 -197
- teradataml/data/jsons/tableoperator/17.05/read_nos.json +197 -197
- teradataml/data/jsons/tableoperator/17.05/write_nos.json +194 -194
- teradataml/data/jsons/tableoperator/17.10/read_nos.json +183 -183
- teradataml/data/jsons/tableoperator/17.10/write_nos.json +194 -194
- teradataml/data/jsons/tableoperator/17.20/read_nos.json +182 -182
- teradataml/data/jsons/tableoperator/17.20/write_nos.json +223 -223
- teradataml/data/jsons/uaf/17.20/TD_ACF.json +149 -149
- teradataml/data/jsons/uaf/17.20/TD_ARIMAESTIMATE.json +409 -409
- teradataml/data/jsons/uaf/17.20/TD_ARIMAFORECAST.json +79 -79
- teradataml/data/jsons/uaf/17.20/TD_ARIMAVALIDATE.json +151 -151
- teradataml/data/jsons/uaf/17.20/TD_BINARYMATRIXOP.json +109 -109
- teradataml/data/jsons/uaf/17.20/TD_BINARYSERIESOP.json +107 -107
- teradataml/data/jsons/uaf/17.20/TD_BREUSCH_GODFREY.json +87 -87
- teradataml/data/jsons/uaf/17.20/TD_BREUSCH_PAGAN_GODFREY.json +106 -106
- teradataml/data/jsons/uaf/17.20/TD_CONVOLVE.json +80 -80
- teradataml/data/jsons/uaf/17.20/TD_CONVOLVE2.json +67 -67
- teradataml/data/jsons/uaf/17.20/TD_CUMUL_PERIODOGRAM.json +91 -91
- teradataml/data/jsons/uaf/17.20/TD_DFFT.json +136 -136
- teradataml/data/jsons/uaf/17.20/TD_DFFT2.json +148 -148
- teradataml/data/jsons/uaf/17.20/TD_DFFT2CONV.json +108 -108
- teradataml/data/jsons/uaf/17.20/TD_DFFTCONV.json +109 -109
- teradataml/data/jsons/uaf/17.20/TD_DICKEY_FULLER.json +86 -86
- teradataml/data/jsons/uaf/17.20/TD_DIFF.json +91 -91
- teradataml/data/jsons/uaf/17.20/TD_DTW.json +116 -116
- teradataml/data/jsons/uaf/17.20/TD_DURBIN_WATSON.json +100 -100
- teradataml/data/jsons/uaf/17.20/TD_EXTRACT_RESULTS.json +38 -38
- teradataml/data/jsons/uaf/17.20/TD_FITMETRICS.json +100 -100
- teradataml/data/jsons/uaf/17.20/TD_GENSERIES4FORMULA.json +84 -84
- teradataml/data/jsons/uaf/17.20/TD_GENSERIES4SINUSOIDS.json +70 -70
- teradataml/data/jsons/uaf/17.20/TD_GOLDFELD_QUANDT.json +152 -152
- teradataml/data/jsons/uaf/17.20/TD_HOLT_WINTERS_FORECAST.json +313 -313
- teradataml/data/jsons/uaf/17.20/TD_IDFFT.json +57 -57
- teradataml/data/jsons/uaf/17.20/TD_IDFFT2.json +94 -94
- teradataml/data/jsons/uaf/17.20/TD_INPUTVALIDATOR.json +63 -63
- teradataml/data/jsons/uaf/17.20/TD_LINEAR_REGR.json +181 -181
- teradataml/data/jsons/uaf/17.20/TD_LINESPEC.json +102 -102
- teradataml/data/jsons/uaf/17.20/TD_MAMEAN.json +182 -182
- teradataml/data/jsons/uaf/17.20/TD_MATRIXMULTIPLY.json +67 -67
- teradataml/data/jsons/uaf/17.20/TD_MINFO.json +66 -66
- teradataml/data/jsons/uaf/17.20/TD_MULTIVAR_REGR.json +178 -178
- teradataml/data/jsons/uaf/17.20/TD_PACF.json +114 -114
- teradataml/data/jsons/uaf/17.20/TD_PORTMAN.json +118 -118
- teradataml/data/jsons/uaf/17.20/TD_POWERSPEC.json +175 -175
- teradataml/data/jsons/uaf/17.20/TD_POWERTRANSFORM.json +97 -97
- teradataml/data/jsons/uaf/17.20/TD_RESAMPLE.json +173 -173
- teradataml/data/jsons/uaf/17.20/TD_SEASONALNORMALIZE.json +136 -136
- teradataml/data/jsons/uaf/17.20/TD_SELECTION_CRITERIA.json +89 -89
- teradataml/data/jsons/uaf/17.20/TD_SIGNIF_PERIODICITIES.json +79 -79
- teradataml/data/jsons/uaf/17.20/TD_SIGNIF_RESIDMEAN.json +67 -67
- teradataml/data/jsons/uaf/17.20/TD_SIMPLEEXP.json +184 -184
- teradataml/data/jsons/uaf/17.20/TD_SINFO.json +57 -57
- teradataml/data/jsons/uaf/17.20/TD_SMOOTHMA.json +162 -162
- teradataml/data/jsons/uaf/17.20/TD_TRACKINGOP.json +100 -100
- teradataml/data/jsons/uaf/17.20/TD_UNDIFF.json +111 -111
- teradataml/data/jsons/uaf/17.20/TD_UNNORMALIZE.json +95 -95
- teradataml/data/jsons/uaf/17.20/TD_WHITES_GENERAL.json +77 -77
- teradataml/data/kmeans_example.json +17 -17
- teradataml/data/kmeans_us_arrests_data.csv +0 -0
- teradataml/data/knn_example.json +18 -18
- teradataml/data/knnrecommender_example.json +6 -6
- teradataml/data/knnrecommenderpredict_example.json +12 -12
- teradataml/data/lar_example.json +17 -17
- teradataml/data/larpredict_example.json +30 -30
- teradataml/data/lc_new_predictors.csv +5 -5
- teradataml/data/lc_new_reference.csv +9 -9
- teradataml/data/lda_example.json +8 -8
- teradataml/data/ldainference_example.json +14 -14
- teradataml/data/ldatopicsummary_example.json +8 -8
- teradataml/data/levendist_input.csv +13 -13
- teradataml/data/levenshteindistance_example.json +10 -10
- teradataml/data/linreg_example.json +9 -9
- teradataml/data/load_example_data.py +326 -323
- teradataml/data/loan_prediction.csv +295 -295
- teradataml/data/lungcancer.csv +138 -138
- teradataml/data/mappingdata.csv +12 -12
- teradataml/data/milk_timeseries.csv +157 -157
- teradataml/data/min_max_titanic.csv +4 -4
- teradataml/data/minhash_example.json +6 -6
- teradataml/data/ml_ratings.csv +7547 -7547
- teradataml/data/ml_ratings_10.csv +2445 -2445
- teradataml/data/model1_table.csv +5 -5
- teradataml/data/model2_table.csv +5 -5
- teradataml/data/models/iris_db_glm_model.pmml +56 -56
- teradataml/data/models/iris_db_xgb_model.pmml +4471 -4471
- teradataml/data/modularity_example.json +12 -12
- teradataml/data/movavg_example.json +7 -7
- teradataml/data/mtx1.csv +7 -7
- teradataml/data/mtx2.csv +13 -13
- teradataml/data/multi_model_classification.csv +401 -0
- teradataml/data/multi_model_regression.csv +401 -0
- teradataml/data/mvdfft8.csv +9 -9
- teradataml/data/naivebayes_example.json +9 -9
- teradataml/data/naivebayespredict_example.json +19 -19
- teradataml/data/naivebayestextclassifier2_example.json +6 -6
- teradataml/data/naivebayestextclassifier_example.json +8 -8
- teradataml/data/naivebayestextclassifierpredict_example.json +20 -20
- teradataml/data/name_Find_configure.csv +10 -10
- teradataml/data/namedentityfinder_example.json +14 -14
- teradataml/data/namedentityfinderevaluator_example.json +10 -10
- teradataml/data/namedentityfindertrainer_example.json +6 -6
- teradataml/data/nb_iris_input_test.csv +31 -31
- teradataml/data/nb_iris_input_train.csv +121 -121
- teradataml/data/nbp_iris_model.csv +13 -13
- teradataml/data/ner_extractor_text.csv +2 -2
- teradataml/data/ner_sports_test2.csv +29 -29
- teradataml/data/ner_sports_train.csv +501 -501
- teradataml/data/nerevaluator_example.json +5 -5
- teradataml/data/nerextractor_example.json +18 -18
- teradataml/data/nermem_sports_test.csv +17 -17
- teradataml/data/nermem_sports_train.csv +50 -50
- teradataml/data/nertrainer_example.json +6 -6
- teradataml/data/ngrams_example.json +6 -6
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Aggregate Functions using SQLAlchemy.ipynb +1455 -1455
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Arithmetic Functions Using SQLAlchemy.ipynb +1993 -1993
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Bit-Byte Manipulation Functions using SQLAlchemy.ipynb +1492 -1492
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Built-in functions using SQLAlchemy.ipynb +536 -536
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Regular Expressions Using SQLAlchemy.ipynb +570 -570
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage String Functions Using SQLAlchemy.ipynb +2559 -2559
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Window Aggregate Functions using SQLAlchemy.ipynb +2911 -2911
- teradataml/data/notebooks/sqlalchemy/Using Generic SQLAlchemy ClauseElements teradataml DataFrame assign method.ipynb +698 -698
- teradataml/data/notebooks/sqlalchemy/teradataml filtering using SQLAlchemy ClauseElements.ipynb +784 -784
- teradataml/data/npath_example.json +23 -23
- teradataml/data/ntree_example.json +14 -14
- teradataml/data/numeric_strings.csv +4 -4
- teradataml/data/numerics.csv +4 -4
- teradataml/data/ocean_buoy.csv +17 -17
- teradataml/data/ocean_buoy2.csv +17 -17
- teradataml/data/ocean_buoys.csv +27 -27
- teradataml/data/ocean_buoys2.csv +10 -10
- teradataml/data/ocean_buoys_nonpti.csv +28 -28
- teradataml/data/ocean_buoys_seq.csv +29 -29
- teradataml/data/openml_example.json +63 -0
- teradataml/data/optional_event_table.csv +4 -4
- teradataml/data/orders1.csv +11 -11
- teradataml/data/orders1_12.csv +12 -12
- teradataml/data/orders_ex.csv +4 -4
- teradataml/data/pack_example.json +8 -8
- teradataml/data/package_tracking.csv +19 -19
- teradataml/data/package_tracking_pti.csv +18 -18
- teradataml/data/pagerank_example.json +13 -13
- teradataml/data/paragraphs_input.csv +6 -6
- teradataml/data/pathanalyzer_example.json +7 -7
- teradataml/data/pathgenerator_example.json +7 -7
- teradataml/data/phrases.csv +7 -7
- teradataml/data/pivot_example.json +8 -8
- teradataml/data/pivot_input.csv +22 -22
- teradataml/data/playerRating.csv +31 -31
- teradataml/data/postagger_example.json +6 -6
- teradataml/data/posttagger_output.csv +44 -44
- teradataml/data/production_data.csv +16 -16
- teradataml/data/production_data2.csv +7 -7
- teradataml/data/randomsample_example.json +31 -31
- teradataml/data/randomwalksample_example.json +8 -8
- teradataml/data/rank_table.csv +6 -6
- teradataml/data/ref_mobile_data.csv +4 -4
- teradataml/data/ref_mobile_data_dense.csv +2 -2
- teradataml/data/ref_url.csv +17 -17
- teradataml/data/restaurant_reviews.csv +7 -7
- teradataml/data/river_data.csv +145 -145
- teradataml/data/roc_example.json +7 -7
- teradataml/data/roc_input.csv +101 -101
- teradataml/data/rule_inputs.csv +6 -6
- teradataml/data/rule_table.csv +2 -2
- teradataml/data/sales.csv +7 -7
- teradataml/data/sales_transaction.csv +501 -501
- teradataml/data/salesdata.csv +342 -342
- teradataml/data/sample_cities.csv +2 -2
- teradataml/data/sample_shapes.csv +10 -10
- teradataml/data/sample_streets.csv +2 -2
- teradataml/data/sampling_example.json +15 -15
- teradataml/data/sax_example.json +8 -8
- teradataml/data/scale_example.json +23 -23
- teradataml/data/scale_housing.csv +11 -11
- teradataml/data/scale_housing_test.csv +6 -6
- teradataml/data/scale_stat.csv +11 -11
- teradataml/data/scalebypartition_example.json +13 -13
- teradataml/data/scalemap_example.json +13 -13
- teradataml/data/scalesummary_example.json +12 -12
- teradataml/data/score_category.csv +101 -101
- teradataml/data/score_summary.csv +4 -4
- teradataml/data/script_example.json +9 -9
- teradataml/data/scripts/deploy_script.py +65 -0
- teradataml/data/scripts/mapper.R +20 -0
- teradataml/data/scripts/mapper.py +15 -15
- teradataml/data/scripts/mapper_replace.py +15 -15
- teradataml/data/scripts/sklearn/__init__.py +0 -0
- teradataml/data/scripts/sklearn/sklearn_fit.py +175 -0
- teradataml/data/scripts/sklearn/sklearn_fit_predict.py +135 -0
- teradataml/data/scripts/sklearn/sklearn_function.template +113 -0
- teradataml/data/scripts/sklearn/sklearn_model_selection_split.py +158 -0
- teradataml/data/scripts/sklearn/sklearn_neighbors.py +152 -0
- teradataml/data/scripts/sklearn/sklearn_score.py +128 -0
- teradataml/data/scripts/sklearn/sklearn_transform.py +179 -0
- teradataml/data/seeds.csv +10 -10
- teradataml/data/sentenceextractor_example.json +6 -6
- teradataml/data/sentiment_extract_input.csv +11 -11
- teradataml/data/sentiment_train.csv +16 -16
- teradataml/data/sentiment_word.csv +20 -20
- teradataml/data/sentiment_word_input.csv +19 -19
- teradataml/data/sentimentextractor_example.json +24 -24
- teradataml/data/sentimenttrainer_example.json +8 -8
- teradataml/data/sequence_table.csv +10 -10
- teradataml/data/seriessplitter_example.json +7 -7
- teradataml/data/sessionize_example.json +17 -17
- teradataml/data/sessionize_table.csv +116 -116
- teradataml/data/setop_test1.csv +24 -24
- teradataml/data/setop_test2.csv +22 -22
- teradataml/data/soc_nw_edges.csv +10 -10
- teradataml/data/soc_nw_vertices.csv +7 -7
- teradataml/data/souvenir_timeseries.csv +167 -167
- teradataml/data/sparse_iris_attribute.csv +5 -5
- teradataml/data/sparse_iris_test.csv +121 -121
- teradataml/data/sparse_iris_train.csv +601 -601
- teradataml/data/star1.csv +6 -6
- teradataml/data/state_transition.csv +5 -5
- teradataml/data/stock_data.csv +53 -53
- teradataml/data/stock_movement.csv +11 -11
- teradataml/data/stock_vol.csv +76 -76
- teradataml/data/stop_words.csv +8 -8
- teradataml/data/store_sales.csv +37 -37
- teradataml/data/stringsimilarity_example.json +7 -7
- teradataml/data/strsimilarity_input.csv +13 -13
- teradataml/data/students.csv +101 -101
- teradataml/data/svm_iris_input_test.csv +121 -121
- teradataml/data/svm_iris_input_train.csv +481 -481
- teradataml/data/svm_iris_model.csv +7 -7
- teradataml/data/svmdense_example.json +9 -9
- teradataml/data/svmdensepredict_example.json +18 -18
- teradataml/data/svmsparse_example.json +7 -7
- teradataml/data/svmsparsepredict_example.json +13 -13
- teradataml/data/svmsparsesummary_example.json +7 -7
- teradataml/data/target_mobile_data.csv +13 -13
- teradataml/data/target_mobile_data_dense.csv +5 -5
- teradataml/data/templatedata.csv +1201 -1201
- teradataml/data/templates/open_source_ml.json +9 -0
- teradataml/data/teradataml_example.json +73 -1
- teradataml/data/test_classification.csv +101 -0
- teradataml/data/test_loan_prediction.csv +53 -53
- teradataml/data/test_pacf_12.csv +37 -37
- teradataml/data/test_prediction.csv +101 -0
- teradataml/data/test_regression.csv +101 -0
- teradataml/data/test_river2.csv +109 -109
- teradataml/data/text_inputs.csv +6 -6
- teradataml/data/textchunker_example.json +7 -7
- teradataml/data/textclassifier_example.json +6 -6
- teradataml/data/textclassifier_input.csv +7 -7
- teradataml/data/textclassifiertrainer_example.json +6 -6
- teradataml/data/textmorph_example.json +5 -5
- teradataml/data/textparser_example.json +15 -15
- teradataml/data/texttagger_example.json +11 -11
- teradataml/data/texttokenizer_example.json +6 -6
- teradataml/data/texttrainer_input.csv +11 -11
- teradataml/data/tf_example.json +6 -6
- teradataml/data/tfidf_example.json +13 -13
- teradataml/data/tfidf_input1.csv +201 -201
- teradataml/data/tfidf_train.csv +6 -6
- teradataml/data/time_table1.csv +535 -535
- teradataml/data/time_table2.csv +14 -14
- teradataml/data/timeseriesdata.csv +1601 -1601
- teradataml/data/timeseriesdatasetsd4.csv +105 -105
- teradataml/data/titanic.csv +892 -892
- teradataml/data/token_table.csv +696 -696
- teradataml/data/train_multiclass.csv +101 -0
- teradataml/data/train_regression.csv +101 -0
- teradataml/data/train_regression_multiple_labels.csv +101 -0
- teradataml/data/train_tracking.csv +27 -27
- teradataml/data/transformation_table.csv +5 -5
- teradataml/data/transformation_table_new.csv +1 -1
- teradataml/data/tv_spots.csv +16 -16
- teradataml/data/twod_climate_data.csv +117 -117
- teradataml/data/uaf_example.json +475 -475
- teradataml/data/univariatestatistics_example.json +8 -8
- teradataml/data/unpack_example.json +9 -9
- teradataml/data/unpivot_example.json +9 -9
- teradataml/data/unpivot_input.csv +8 -8
- teradataml/data/us_air_pass.csv +36 -36
- teradataml/data/us_population.csv +624 -624
- teradataml/data/us_states_shapes.csv +52 -52
- teradataml/data/varmax_example.json +17 -17
- teradataml/data/vectordistance_example.json +25 -25
- teradataml/data/ville_climatedata.csv +121 -121
- teradataml/data/ville_tempdata.csv +12 -12
- teradataml/data/ville_tempdata1.csv +12 -12
- teradataml/data/ville_temperature.csv +11 -11
- teradataml/data/waveletTable.csv +1605 -1605
- teradataml/data/waveletTable2.csv +1605 -1605
- teradataml/data/weightedmovavg_example.json +8 -8
- teradataml/data/wft_testing.csv +5 -5
- teradataml/data/wine_data.csv +1600 -0
- teradataml/data/word_embed_input_table1.csv +5 -5
- teradataml/data/word_embed_input_table2.csv +4 -4
- teradataml/data/word_embed_model.csv +22 -22
- teradataml/data/words_input.csv +13 -13
- teradataml/data/xconvolve_complex_left.csv +6 -6
- teradataml/data/xconvolve_complex_leftmulti.csv +6 -6
- teradataml/data/xgboost_example.json +35 -35
- teradataml/data/xgboostpredict_example.json +31 -31
- teradataml/dataframe/copy_to.py +1764 -1698
- teradataml/dataframe/data_transfer.py +2753 -2745
- teradataml/dataframe/dataframe.py +17545 -16946
- teradataml/dataframe/dataframe_utils.py +1837 -1740
- teradataml/dataframe/fastload.py +611 -603
- teradataml/dataframe/indexer.py +424 -424
- teradataml/dataframe/setop.py +1179 -1166
- teradataml/dataframe/sql.py +10090 -6432
- teradataml/dataframe/sql_function_parameters.py +439 -388
- teradataml/dataframe/sql_functions.py +652 -652
- teradataml/dataframe/sql_interfaces.py +220 -220
- teradataml/dataframe/vantage_function_types.py +674 -630
- teradataml/dataframe/window.py +693 -692
- teradataml/dbutils/__init__.py +3 -3
- teradataml/dbutils/dbutils.py +1167 -1150
- teradataml/dbutils/filemgr.py +267 -267
- teradataml/gen_ai/__init__.py +2 -2
- teradataml/gen_ai/convAI.py +472 -472
- teradataml/geospatial/__init__.py +3 -3
- teradataml/geospatial/geodataframe.py +1105 -1094
- teradataml/geospatial/geodataframecolumn.py +392 -387
- teradataml/geospatial/geometry_types.py +925 -925
- teradataml/hyperparameter_tuner/__init__.py +1 -1
- teradataml/hyperparameter_tuner/optimizer.py +3783 -2993
- teradataml/hyperparameter_tuner/utils.py +281 -187
- teradataml/lib/aed_0_1.dll +0 -0
- teradataml/lib/libaed_0_1.dylib +0 -0
- teradataml/lib/libaed_0_1.so +0 -0
- teradataml/libaed_0_1.dylib +0 -0
- teradataml/libaed_0_1.so +0 -0
- teradataml/opensource/__init__.py +1 -0
- teradataml/opensource/sklearn/__init__.py +1 -0
- teradataml/opensource/sklearn/_class.py +255 -0
- teradataml/opensource/sklearn/_sklearn_wrapper.py +1668 -0
- teradataml/opensource/sklearn/_wrapper_utils.py +268 -0
- teradataml/opensource/sklearn/constants.py +54 -0
- teradataml/options/__init__.py +121 -124
- teradataml/options/configure.py +337 -336
- teradataml/options/display.py +176 -176
- teradataml/plot/__init__.py +2 -2
- teradataml/plot/axis.py +1388 -1388
- teradataml/plot/constants.py +15 -15
- teradataml/plot/figure.py +398 -398
- teradataml/plot/plot.py +760 -760
- teradataml/plot/query_generator.py +83 -83
- teradataml/plot/subplot.py +216 -216
- teradataml/scriptmgmt/UserEnv.py +3788 -3761
- teradataml/scriptmgmt/__init__.py +3 -3
- teradataml/scriptmgmt/lls_utils.py +1616 -1604
- teradataml/series/series.py +532 -532
- teradataml/series/series_utils.py +71 -71
- teradataml/table_operators/Apply.py +949 -917
- teradataml/table_operators/Script.py +1719 -1982
- teradataml/table_operators/TableOperator.py +1207 -1616
- teradataml/table_operators/__init__.py +2 -3
- teradataml/table_operators/apply_query_generator.py +262 -262
- teradataml/table_operators/query_generator.py +507 -507
- teradataml/table_operators/table_operator_query_generator.py +460 -460
- teradataml/table_operators/table_operator_util.py +631 -639
- teradataml/table_operators/templates/dataframe_apply.template +184 -184
- teradataml/table_operators/templates/dataframe_map.template +176 -176
- teradataml/table_operators/templates/script_executor.template +170 -170
- teradataml/utils/dtypes.py +684 -684
- teradataml/utils/internal_buffer.py +84 -84
- teradataml/utils/print_versions.py +205 -205
- teradataml/utils/utils.py +410 -410
- teradataml/utils/validators.py +2239 -2115
- {teradataml-17.20.0.7.dist-info → teradataml-20.0.0.0.dist-info}/METADATA +270 -41
- teradataml-20.0.0.0.dist-info/RECORD +1038 -0
- {teradataml-17.20.0.7.dist-info → teradataml-20.0.0.0.dist-info}/WHEEL +1 -1
- {teradataml-17.20.0.7.dist-info → teradataml-20.0.0.0.dist-info}/zip-safe +1 -1
- teradataml/analytics/mle/AdaBoost.py +0 -651
- teradataml/analytics/mle/AdaBoostPredict.py +0 -564
- teradataml/analytics/mle/Antiselect.py +0 -342
- teradataml/analytics/mle/Arima.py +0 -641
- teradataml/analytics/mle/ArimaPredict.py +0 -477
- teradataml/analytics/mle/Attribution.py +0 -1070
- teradataml/analytics/mle/Betweenness.py +0 -658
- teradataml/analytics/mle/Burst.py +0 -711
- teradataml/analytics/mle/CCM.py +0 -600
- teradataml/analytics/mle/CCMPrepare.py +0 -324
- teradataml/analytics/mle/CFilter.py +0 -460
- teradataml/analytics/mle/ChangePointDetection.py +0 -572
- teradataml/analytics/mle/ChangePointDetectionRT.py +0 -477
- teradataml/analytics/mle/Closeness.py +0 -737
- teradataml/analytics/mle/ConfusionMatrix.py +0 -420
- teradataml/analytics/mle/Correlation.py +0 -477
- teradataml/analytics/mle/Correlation2.py +0 -573
- teradataml/analytics/mle/CoxHazardRatio.py +0 -679
- teradataml/analytics/mle/CoxPH.py +0 -556
- teradataml/analytics/mle/CoxSurvival.py +0 -478
- teradataml/analytics/mle/CumulativeMovAvg.py +0 -363
- teradataml/analytics/mle/DTW.py +0 -623
- teradataml/analytics/mle/DWT.py +0 -564
- teradataml/analytics/mle/DWT2D.py +0 -599
- teradataml/analytics/mle/DecisionForest.py +0 -716
- teradataml/analytics/mle/DecisionForestEvaluator.py +0 -363
- teradataml/analytics/mle/DecisionForestPredict.py +0 -561
- teradataml/analytics/mle/DecisionTree.py +0 -830
- teradataml/analytics/mle/DecisionTreePredict.py +0 -528
- teradataml/analytics/mle/ExponentialMovAvg.py +0 -418
- teradataml/analytics/mle/FMeasure.py +0 -402
- teradataml/analytics/mle/FPGrowth.py +0 -734
- teradataml/analytics/mle/FrequentPaths.py +0 -695
- teradataml/analytics/mle/GLM.py +0 -558
- teradataml/analytics/mle/GLML1L2.py +0 -547
- teradataml/analytics/mle/GLML1L2Predict.py +0 -519
- teradataml/analytics/mle/GLMPredict.py +0 -529
- teradataml/analytics/mle/HMMDecoder.py +0 -945
- teradataml/analytics/mle/HMMEvaluator.py +0 -901
- teradataml/analytics/mle/HMMSupervised.py +0 -521
- teradataml/analytics/mle/HMMUnsupervised.py +0 -572
- teradataml/analytics/mle/Histogram.py +0 -561
- teradataml/analytics/mle/IDWT.py +0 -476
- teradataml/analytics/mle/IDWT2D.py +0 -493
- teradataml/analytics/mle/IdentityMatch.py +0 -763
- teradataml/analytics/mle/Interpolator.py +0 -918
- teradataml/analytics/mle/KMeans.py +0 -485
- teradataml/analytics/mle/KNN.py +0 -627
- teradataml/analytics/mle/KNNRecommender.py +0 -488
- teradataml/analytics/mle/KNNRecommenderPredict.py +0 -581
- teradataml/analytics/mle/LAR.py +0 -439
- teradataml/analytics/mle/LARPredict.py +0 -478
- teradataml/analytics/mle/LDA.py +0 -548
- teradataml/analytics/mle/LDAInference.py +0 -492
- teradataml/analytics/mle/LDATopicSummary.py +0 -464
- teradataml/analytics/mle/LevenshteinDistance.py +0 -450
- teradataml/analytics/mle/LinReg.py +0 -433
- teradataml/analytics/mle/LinRegPredict.py +0 -438
- teradataml/analytics/mle/MinHash.py +0 -544
- teradataml/analytics/mle/Modularity.py +0 -587
- teradataml/analytics/mle/NEREvaluator.py +0 -410
- teradataml/analytics/mle/NERExtractor.py +0 -595
- teradataml/analytics/mle/NERTrainer.py +0 -458
- teradataml/analytics/mle/NGrams.py +0 -570
- teradataml/analytics/mle/NPath.py +0 -634
- teradataml/analytics/mle/NTree.py +0 -549
- teradataml/analytics/mle/NaiveBayes.py +0 -462
- teradataml/analytics/mle/NaiveBayesPredict.py +0 -513
- teradataml/analytics/mle/NaiveBayesTextClassifier.py +0 -607
- teradataml/analytics/mle/NaiveBayesTextClassifier2.py +0 -531
- teradataml/analytics/mle/NaiveBayesTextClassifierPredict.py +0 -799
- teradataml/analytics/mle/NamedEntityFinder.py +0 -529
- teradataml/analytics/mle/NamedEntityFinderEvaluator.py +0 -414
- teradataml/analytics/mle/NamedEntityFinderTrainer.py +0 -396
- teradataml/analytics/mle/POSTagger.py +0 -417
- teradataml/analytics/mle/Pack.py +0 -411
- teradataml/analytics/mle/PageRank.py +0 -535
- teradataml/analytics/mle/PathAnalyzer.py +0 -426
- teradataml/analytics/mle/PathGenerator.py +0 -367
- teradataml/analytics/mle/PathStart.py +0 -464
- teradataml/analytics/mle/PathSummarizer.py +0 -470
- teradataml/analytics/mle/Pivot.py +0 -471
- teradataml/analytics/mle/ROC.py +0 -425
- teradataml/analytics/mle/RandomSample.py +0 -637
- teradataml/analytics/mle/RandomWalkSample.py +0 -490
- teradataml/analytics/mle/SAX.py +0 -779
- teradataml/analytics/mle/SVMDense.py +0 -677
- teradataml/analytics/mle/SVMDensePredict.py +0 -536
- teradataml/analytics/mle/SVMDenseSummary.py +0 -437
- teradataml/analytics/mle/SVMSparse.py +0 -557
- teradataml/analytics/mle/SVMSparsePredict.py +0 -553
- teradataml/analytics/mle/SVMSparseSummary.py +0 -435
- teradataml/analytics/mle/Sampling.py +0 -549
- teradataml/analytics/mle/Scale.py +0 -565
- teradataml/analytics/mle/ScaleByPartition.py +0 -496
- teradataml/analytics/mle/ScaleMap.py +0 -378
- teradataml/analytics/mle/ScaleSummary.py +0 -320
- teradataml/analytics/mle/SentenceExtractor.py +0 -363
- teradataml/analytics/mle/SentimentEvaluator.py +0 -432
- teradataml/analytics/mle/SentimentExtractor.py +0 -578
- teradataml/analytics/mle/SentimentTrainer.py +0 -405
- teradataml/analytics/mle/SeriesSplitter.py +0 -641
- teradataml/analytics/mle/Sessionize.py +0 -475
- teradataml/analytics/mle/SimpleMovAvg.py +0 -397
- teradataml/analytics/mle/StringSimilarity.py +0 -425
- teradataml/analytics/mle/TF.py +0 -389
- teradataml/analytics/mle/TFIDF.py +0 -504
- teradataml/analytics/mle/TextChunker.py +0 -414
- teradataml/analytics/mle/TextClassifier.py +0 -399
- teradataml/analytics/mle/TextClassifierEvaluator.py +0 -413
- teradataml/analytics/mle/TextClassifierTrainer.py +0 -565
- teradataml/analytics/mle/TextMorph.py +0 -494
- teradataml/analytics/mle/TextParser.py +0 -623
- teradataml/analytics/mle/TextTagger.py +0 -530
- teradataml/analytics/mle/TextTokenizer.py +0 -502
- teradataml/analytics/mle/UnivariateStatistics.py +0 -488
- teradataml/analytics/mle/Unpack.py +0 -526
- teradataml/analytics/mle/Unpivot.py +0 -438
- teradataml/analytics/mle/VarMax.py +0 -776
- teradataml/analytics/mle/VectorDistance.py +0 -762
- teradataml/analytics/mle/WeightedMovAvg.py +0 -400
- teradataml/analytics/mle/XGBoost.py +0 -842
- teradataml/analytics/mle/XGBoostPredict.py +0 -627
- teradataml/analytics/mle/__init__.py +0 -123
- teradataml/analytics/mle/json/adaboost_mle.json +0 -135
- teradataml/analytics/mle/json/adaboostpredict_mle.json +0 -85
- teradataml/analytics/mle/json/antiselect_mle.json +0 -34
- teradataml/analytics/mle/json/antiselect_mle_mle.json +0 -34
- teradataml/analytics/mle/json/arima_mle.json +0 -172
- teradataml/analytics/mle/json/arimapredict_mle.json +0 -52
- teradataml/analytics/mle/json/attribution_mle_mle.json +0 -143
- teradataml/analytics/mle/json/betweenness_mle.json +0 -97
- teradataml/analytics/mle/json/burst_mle.json +0 -140
- teradataml/analytics/mle/json/ccm_mle.json +0 -124
- teradataml/analytics/mle/json/ccmprepare_mle.json +0 -14
- teradataml/analytics/mle/json/cfilter_mle.json +0 -93
- teradataml/analytics/mle/json/changepointdetection_mle.json +0 -92
- teradataml/analytics/mle/json/changepointdetectionrt_mle.json +0 -78
- teradataml/analytics/mle/json/closeness_mle.json +0 -104
- teradataml/analytics/mle/json/confusionmatrix_mle.json +0 -79
- teradataml/analytics/mle/json/correlation_mle.json +0 -86
- teradataml/analytics/mle/json/correlationreduce_mle.json +0 -49
- teradataml/analytics/mle/json/coxhazardratio_mle.json +0 -89
- teradataml/analytics/mle/json/coxph_mle.json +0 -98
- teradataml/analytics/mle/json/coxsurvival_mle.json +0 -79
- teradataml/analytics/mle/json/cumulativemovavg_mle.json +0 -34
- teradataml/analytics/mle/json/decisionforest_mle.json +0 -167
- teradataml/analytics/mle/json/decisionforestevaluator_mle.json +0 -33
- teradataml/analytics/mle/json/decisionforestpredict_mle_mle.json +0 -74
- teradataml/analytics/mle/json/decisiontree_mle.json +0 -194
- teradataml/analytics/mle/json/decisiontreepredict_mle_mle.json +0 -86
- teradataml/analytics/mle/json/dtw_mle.json +0 -97
- teradataml/analytics/mle/json/dwt2d_mle.json +0 -116
- teradataml/analytics/mle/json/dwt_mle.json +0 -101
- teradataml/analytics/mle/json/exponentialmovavg_mle.json +0 -55
- teradataml/analytics/mle/json/fmeasure_mle.json +0 -58
- teradataml/analytics/mle/json/fpgrowth_mle.json +0 -159
- teradataml/analytics/mle/json/frequentpaths_mle.json +0 -129
- teradataml/analytics/mle/json/glm_mle.json +0 -111
- teradataml/analytics/mle/json/glml1l2_mle.json +0 -106
- teradataml/analytics/mle/json/glml1l2predict_mle.json +0 -57
- teradataml/analytics/mle/json/glmpredict_mle_mle.json +0 -74
- teradataml/analytics/mle/json/histogram_mle.json +0 -100
- teradataml/analytics/mle/json/hmmdecoder_mle.json +0 -192
- teradataml/analytics/mle/json/hmmevaluator_mle.json +0 -206
- teradataml/analytics/mle/json/hmmsupervised_mle.json +0 -91
- teradataml/analytics/mle/json/hmmunsupervised_mle.json +0 -114
- teradataml/analytics/mle/json/identitymatch_mle.json +0 -88
- teradataml/analytics/mle/json/idwt2d_mle.json +0 -73
- teradataml/analytics/mle/json/idwt_mle.json +0 -66
- teradataml/analytics/mle/json/interpolator_mle.json +0 -151
- teradataml/analytics/mle/json/kmeans_mle.json +0 -97
- teradataml/analytics/mle/json/knn_mle.json +0 -141
- teradataml/analytics/mle/json/knnrecommender_mle.json +0 -111
- teradataml/analytics/mle/json/knnrecommenderpredict_mle.json +0 -75
- teradataml/analytics/mle/json/lar_mle.json +0 -78
- teradataml/analytics/mle/json/larpredict_mle.json +0 -69
- teradataml/analytics/mle/json/lda_mle.json +0 -130
- teradataml/analytics/mle/json/ldainference_mle.json +0 -78
- teradataml/analytics/mle/json/ldatopicsummary_mle.json +0 -64
- teradataml/analytics/mle/json/levenshteindistance_mle.json +0 -92
- teradataml/analytics/mle/json/linreg_mle.json +0 -42
- teradataml/analytics/mle/json/linregpredict_mle.json +0 -56
- teradataml/analytics/mle/json/minhash_mle.json +0 -113
- teradataml/analytics/mle/json/modularity_mle.json +0 -91
- teradataml/analytics/mle/json/naivebayespredict_mle_mle.json +0 -85
- teradataml/analytics/mle/json/naivebayesreduce_mle.json +0 -52
- teradataml/analytics/mle/json/naivebayestextclassifierpredict_mle_mle.json +0 -147
- teradataml/analytics/mle/json/naivebayestextclassifiertrainer2_mle.json +0 -108
- teradataml/analytics/mle/json/naivebayestextclassifiertrainer_mle.json +0 -102
- teradataml/analytics/mle/json/namedentityfinder_mle.json +0 -84
- teradataml/analytics/mle/json/namedentityfinderevaluatorreduce_mle.json +0 -43
- teradataml/analytics/mle/json/namedentityfindertrainer_mle.json +0 -64
- teradataml/analytics/mle/json/nerevaluator_mle.json +0 -54
- teradataml/analytics/mle/json/nerextractor_mle.json +0 -87
- teradataml/analytics/mle/json/nertrainer_mle.json +0 -89
- teradataml/analytics/mle/json/ngrams_mle.json +0 -137
- teradataml/analytics/mle/json/ngramsplitter_mle_mle.json +0 -137
- teradataml/analytics/mle/json/npath@coprocessor_mle.json +0 -73
- teradataml/analytics/mle/json/ntree@coprocessor_mle.json +0 -123
- teradataml/analytics/mle/json/pack_mle.json +0 -58
- teradataml/analytics/mle/json/pack_mle_mle.json +0 -58
- teradataml/analytics/mle/json/pagerank_mle.json +0 -81
- teradataml/analytics/mle/json/pathanalyzer_mle.json +0 -63
- teradataml/analytics/mle/json/pathgenerator_mle.json +0 -40
- teradataml/analytics/mle/json/pathstart_mle.json +0 -62
- teradataml/analytics/mle/json/pathsummarizer_mle.json +0 -72
- teradataml/analytics/mle/json/pivoting_mle.json +0 -71
- teradataml/analytics/mle/json/postagger_mle.json +0 -51
- teradataml/analytics/mle/json/randomsample_mle.json +0 -131
- teradataml/analytics/mle/json/randomwalksample_mle.json +0 -85
- teradataml/analytics/mle/json/roc_mle.json +0 -73
- teradataml/analytics/mle/json/sampling_mle.json +0 -75
- teradataml/analytics/mle/json/sax_mle.json +0 -154
- teradataml/analytics/mle/json/scale_mle.json +0 -93
- teradataml/analytics/mle/json/scalebypartition_mle.json +0 -89
- teradataml/analytics/mle/json/scalemap_mle.json +0 -44
- teradataml/analytics/mle/json/scalesummary_mle.json +0 -14
- teradataml/analytics/mle/json/sentenceextractor_mle.json +0 -41
- teradataml/analytics/mle/json/sentimentevaluator_mle.json +0 -43
- teradataml/analytics/mle/json/sentimentextractor_mle.json +0 -100
- teradataml/analytics/mle/json/sentimenttrainer_mle.json +0 -68
- teradataml/analytics/mle/json/seriessplitter_mle.json +0 -133
- teradataml/analytics/mle/json/sessionize_mle_mle.json +0 -62
- teradataml/analytics/mle/json/simplemovavg_mle.json +0 -48
- teradataml/analytics/mle/json/stringsimilarity_mle.json +0 -50
- teradataml/analytics/mle/json/stringsimilarity_mle_mle.json +0 -50
- teradataml/analytics/mle/json/svmdense_mle.json +0 -165
- teradataml/analytics/mle/json/svmdensepredict_mle.json +0 -95
- teradataml/analytics/mle/json/svmdensesummary_mle.json +0 -58
- teradataml/analytics/mle/json/svmsparse_mle.json +0 -148
- teradataml/analytics/mle/json/svmsparsepredict_mle_mle.json +0 -103
- teradataml/analytics/mle/json/svmsparsesummary_mle.json +0 -57
- teradataml/analytics/mle/json/textchunker_mle.json +0 -40
- teradataml/analytics/mle/json/textclassifier_mle.json +0 -51
- teradataml/analytics/mle/json/textclassifierevaluator_mle.json +0 -43
- teradataml/analytics/mle/json/textclassifiertrainer_mle.json +0 -103
- teradataml/analytics/mle/json/textmorph_mle.json +0 -63
- teradataml/analytics/mle/json/textparser_mle.json +0 -166
- teradataml/analytics/mle/json/texttagger_mle.json +0 -81
- teradataml/analytics/mle/json/texttokenizer_mle.json +0 -91
- teradataml/analytics/mle/json/tf_mle.json +0 -33
- teradataml/analytics/mle/json/tfidf_mle.json +0 -34
- teradataml/analytics/mle/json/univariatestatistics_mle.json +0 -81
- teradataml/analytics/mle/json/unpack_mle.json +0 -91
- teradataml/analytics/mle/json/unpack_mle_mle.json +0 -91
- teradataml/analytics/mle/json/unpivoting_mle.json +0 -63
- teradataml/analytics/mle/json/varmax_mle.json +0 -176
- teradataml/analytics/mle/json/vectordistance_mle.json +0 -179
- teradataml/analytics/mle/json/weightedmovavg_mle.json +0 -48
- teradataml/analytics/mle/json/xgboost_mle.json +0 -178
- teradataml/analytics/mle/json/xgboostpredict_mle.json +0 -104
- teradataml/analytics/sqle/Antiselect.py +0 -321
- teradataml/analytics/sqle/Attribution.py +0 -603
- teradataml/analytics/sqle/DecisionForestPredict.py +0 -408
- teradataml/analytics/sqle/GLMPredict.py +0 -430
- teradataml/analytics/sqle/MovingAverage.py +0 -543
- teradataml/analytics/sqle/NGramSplitter.py +0 -548
- teradataml/analytics/sqle/NPath.py +0 -632
- teradataml/analytics/sqle/NaiveBayesTextClassifierPredict.py +0 -515
- teradataml/analytics/sqle/Pack.py +0 -388
- teradataml/analytics/sqle/SVMSparsePredict.py +0 -464
- teradataml/analytics/sqle/Sessionize.py +0 -390
- teradataml/analytics/sqle/StringSimilarity.py +0 -400
- teradataml/analytics/sqle/Unpack.py +0 -503
- teradataml/analytics/sqle/json/antiselect_sqle.json +0 -21
- teradataml/analytics/sqle/json/attribution_sqle.json +0 -92
- teradataml/analytics/sqle/json/decisionforestpredict_sqle.json +0 -48
- teradataml/analytics/sqle/json/glmpredict_sqle.json +0 -48
- teradataml/analytics/sqle/json/h2opredict_sqle.json +0 -63
- teradataml/analytics/sqle/json/movingaverage_sqle.json +0 -58
- teradataml/analytics/sqle/json/naivebayestextclassifierpredict_sqle.json +0 -76
- teradataml/analytics/sqle/json/ngramsplitter_sqle.json +0 -126
- teradataml/analytics/sqle/json/npath_sqle.json +0 -67
- teradataml/analytics/sqle/json/pack_sqle.json +0 -47
- teradataml/analytics/sqle/json/pmmlpredict_sqle.json +0 -55
- teradataml/analytics/sqle/json/sessionize_sqle.json +0 -43
- teradataml/analytics/sqle/json/stringsimilarity_sqle.json +0 -39
- teradataml/analytics/sqle/json/svmsparsepredict_sqle.json +0 -74
- teradataml/analytics/sqle/json/unpack_sqle.json +0 -80
- teradataml/catalog/model_cataloging.py +0 -980
- teradataml/config/mlengine_alias_definitions_v1.0 +0 -118
- teradataml/config/mlengine_alias_definitions_v1.1 +0 -127
- teradataml/config/mlengine_alias_definitions_v1.3 +0 -129
- teradataml/table_operators/sandbox_container_util.py +0 -643
- teradataml-17.20.0.7.dist-info/RECORD +0 -1280
- {teradataml-17.20.0.7.dist-info → teradataml-20.0.0.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,887 @@
|
|
|
1
|
+
# ##################################################################
|
|
2
|
+
#
|
|
3
|
+
# Copyright 2024 Teradata. All rights reserved.
|
|
4
|
+
# TERADATA CONFIDENTIAL AND TRADE SECRET
|
|
5
|
+
#
|
|
6
|
+
# Primary Owner: Sweta Shaw
|
|
7
|
+
# Email Id: Sweta.Shaw@Teradata.com
|
|
8
|
+
#
|
|
9
|
+
# Secondary Owner: Akhil Bisht
|
|
10
|
+
# Email Id: AKHIL.BISHT@Teradata.com
|
|
11
|
+
#
|
|
12
|
+
# Version: 1.1
|
|
13
|
+
# Function Version: 1.0
|
|
14
|
+
# ##################################################################
|
|
15
|
+
|
|
16
|
+
# Python libraries
|
|
17
|
+
import concurrent.futures
|
|
18
|
+
from concurrent.futures import ThreadPoolExecutor
|
|
19
|
+
import pandas as pd
|
|
20
|
+
from itertools import product
|
|
21
|
+
|
|
22
|
+
# Teradata libraries
|
|
23
|
+
from teradataml.context import context as tdmlctx
|
|
24
|
+
from teradataml.dataframe.copy_to import copy_to_sql
|
|
25
|
+
from teradataml.dataframe.dataframe import DataFrame
|
|
26
|
+
from teradataml import execute_sql, get_connection
|
|
27
|
+
from teradataml import SVM, GLM, DecisionForest, XGBoost, GridSearch, KNN
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class _ModelTraining:
|
|
31
|
+
|
|
32
|
+
def __init__(self,
|
|
33
|
+
data,
|
|
34
|
+
target_column,
|
|
35
|
+
model_list,
|
|
36
|
+
verbose=0,
|
|
37
|
+
features=None,
|
|
38
|
+
task_type="Regression",
|
|
39
|
+
custom_data = None):
|
|
40
|
+
"""
|
|
41
|
+
DESCRIPTION:
|
|
42
|
+
Function initializes the data, target column, features and models
|
|
43
|
+
for model training.
|
|
44
|
+
|
|
45
|
+
PARAMETERS:
|
|
46
|
+
data:
|
|
47
|
+
Required Argument.
|
|
48
|
+
Specifies the dataset for model training phase.
|
|
49
|
+
Types: teradataml Dataframe
|
|
50
|
+
|
|
51
|
+
target_column:
|
|
52
|
+
Required Arugment.
|
|
53
|
+
Specifies the target column present inside the dataset.
|
|
54
|
+
Types: str
|
|
55
|
+
|
|
56
|
+
model_list:
|
|
57
|
+
Required Arugment.
|
|
58
|
+
Specifies the list of models to be used for model training.
|
|
59
|
+
Types: list
|
|
60
|
+
|
|
61
|
+
verbose:
|
|
62
|
+
Optional Argument.
|
|
63
|
+
Specifies the detailed execution steps based on verbose level.
|
|
64
|
+
Default Value: 0
|
|
65
|
+
Permitted Values:
|
|
66
|
+
* 0: prints the progress bar and leaderboard
|
|
67
|
+
* 1: prints the execution steps of AutoML.
|
|
68
|
+
* 2: prints the intermediate data between the
|
|
69
|
+
execution of each step of AutoML.
|
|
70
|
+
Types: int
|
|
71
|
+
|
|
72
|
+
features:
|
|
73
|
+
Required Arugment.
|
|
74
|
+
Specifies the list of selected feature by rfe, lasso and pca
|
|
75
|
+
respectively in this order.
|
|
76
|
+
Types: list of list of strings (str)
|
|
77
|
+
|
|
78
|
+
task_type:
|
|
79
|
+
Required Arugment.
|
|
80
|
+
Specifies the task type for AutoML, whether to apply regresion
|
|
81
|
+
or classification on the provived dataset.
|
|
82
|
+
Default Value: "Regression"
|
|
83
|
+
Permitted Values: "Regression", "Classification"
|
|
84
|
+
Types: str
|
|
85
|
+
|
|
86
|
+
custom_data:
|
|
87
|
+
Optional Arugment.
|
|
88
|
+
Specifies json object containing user customized input.
|
|
89
|
+
Types: json object
|
|
90
|
+
"""
|
|
91
|
+
self.data = data
|
|
92
|
+
self.target_column = target_column
|
|
93
|
+
self.model_list = model_list
|
|
94
|
+
self.verbose = verbose
|
|
95
|
+
self.features = (features[1], features[0], features[2])
|
|
96
|
+
self.task_type = task_type
|
|
97
|
+
self.custom_data = custom_data
|
|
98
|
+
self.labels = self.data.drop_duplicate(self.target_column).size
|
|
99
|
+
|
|
100
|
+
def model_training(self,
|
|
101
|
+
auto=True,
|
|
102
|
+
max_runtime_secs=None,
|
|
103
|
+
stopping_metric=None,
|
|
104
|
+
stopping_tolerance=0
|
|
105
|
+
):
|
|
106
|
+
"""
|
|
107
|
+
DESCRIPTION:
|
|
108
|
+
Function to perform following tasks:-
|
|
109
|
+
1. Generates the hyperparameters for different ML models.
|
|
110
|
+
2. Performs hyperparameter tunning for different ML models in parallel.
|
|
111
|
+
3. Displays the leaderboard of trained ML models.
|
|
112
|
+
|
|
113
|
+
PARAMETERS:
|
|
114
|
+
auto:
|
|
115
|
+
Optional Arugment.
|
|
116
|
+
Specifies whether to run data preparation in auto mode or custom mode.
|
|
117
|
+
When set to True, runs automtically otherwise, it take user inputs.
|
|
118
|
+
Default Value: True
|
|
119
|
+
Types: boolean
|
|
120
|
+
|
|
121
|
+
max_runtime_secs:
|
|
122
|
+
Optional Arugment.
|
|
123
|
+
Specifies the time limit in seconds for model training.
|
|
124
|
+
Types: int
|
|
125
|
+
|
|
126
|
+
stopping_metric:
|
|
127
|
+
Required, when "stopping_tolerance" is set, otherwise optional.
|
|
128
|
+
Specifies the stopping mertics for stopping tolerance in model training.
|
|
129
|
+
Types: str
|
|
130
|
+
|
|
131
|
+
stopping_tolerance:
|
|
132
|
+
Required, when "stopping_metric" is set, otherwise optional.
|
|
133
|
+
Specifies the stopping tolerance for stopping metrics in model training.
|
|
134
|
+
Types: float
|
|
135
|
+
|
|
136
|
+
RETURNS:
|
|
137
|
+
pandas dataframes containing model information, leaderboard and target
|
|
138
|
+
column distinct count.
|
|
139
|
+
"""
|
|
140
|
+
self.stopping_metric = stopping_metric
|
|
141
|
+
self.stopping_tolerance = stopping_tolerance
|
|
142
|
+
self.max_runtime_secs = max_runtime_secs
|
|
143
|
+
|
|
144
|
+
self._display_heading(phase=3, progress_bar=self.progress_bar)
|
|
145
|
+
self._display_msg(msg='Model Training started ...',
|
|
146
|
+
progress_bar=self.progress_bar,
|
|
147
|
+
show_data=True)
|
|
148
|
+
# Generates the hyperparameters for different ML models
|
|
149
|
+
parameters = self._generate_parameter()
|
|
150
|
+
|
|
151
|
+
# handles customized hyperparameters
|
|
152
|
+
if not auto:
|
|
153
|
+
parameters = self._custom_hyperparameters(parameters)
|
|
154
|
+
|
|
155
|
+
if self.verbose == 2:
|
|
156
|
+
self._display_hyperparameters(parameters)
|
|
157
|
+
|
|
158
|
+
# Parallel execution of hpt
|
|
159
|
+
trained_models_info = self._parallel_training(parameters)
|
|
160
|
+
|
|
161
|
+
# Displaying leaderboard
|
|
162
|
+
leader_board, models = self._display_leaderboard(trained_models_info)
|
|
163
|
+
|
|
164
|
+
self._display_heading(phase=4,
|
|
165
|
+
progress_bar=self.progress_bar)
|
|
166
|
+
self.progress_bar.update()
|
|
167
|
+
|
|
168
|
+
return models, leader_board, self.labels
|
|
169
|
+
|
|
170
|
+
def _display_hyperparameters(self,
|
|
171
|
+
hyperparameters_list):
|
|
172
|
+
"""
|
|
173
|
+
DESCRIPTION:
|
|
174
|
+
Internal function to display the hyperparameters for different ML models.
|
|
175
|
+
|
|
176
|
+
PARAMETERS:
|
|
177
|
+
hyperparameters_list:
|
|
178
|
+
Required Arugment.
|
|
179
|
+
Specifies the hyperparameters for different ML models.
|
|
180
|
+
Types: list of dict
|
|
181
|
+
|
|
182
|
+
RETURNS:
|
|
183
|
+
None
|
|
184
|
+
"""
|
|
185
|
+
self._display_msg(msg="\nHyperparameters used for model training: ",
|
|
186
|
+
progress_bar = self.progress_bar,
|
|
187
|
+
show_data=True)
|
|
188
|
+
print(" " *150, end='\r', flush=True)
|
|
189
|
+
|
|
190
|
+
# Iterating over hyperparameters_list
|
|
191
|
+
for hyperparameter_dct in hyperparameters_list:
|
|
192
|
+
# Extracting hyperparameter and thier value from hyperparameters dictionary
|
|
193
|
+
for key, val in hyperparameter_dct.items():
|
|
194
|
+
# Displaying hyperparameters
|
|
195
|
+
print(f"{key} : {str(val)}")
|
|
196
|
+
|
|
197
|
+
# Creating all possible combinations of hyperparameters
|
|
198
|
+
all_combinations = list(product(*[v if isinstance(v, tuple) else [v] for v in hyperparameter_dct.values()]))
|
|
199
|
+
|
|
200
|
+
# Displaying total number of models for each model
|
|
201
|
+
total_models = len(all_combinations)
|
|
202
|
+
print(f"Total number of models for {hyperparameter_dct['name']} : {total_models}")
|
|
203
|
+
print(f"--"*100+'\n')
|
|
204
|
+
|
|
205
|
+
def _display_leaderboard(self,
|
|
206
|
+
trained_models_info):
|
|
207
|
+
"""
|
|
208
|
+
DESCRIPTION:
|
|
209
|
+
Internal function to display the trainined ML models.
|
|
210
|
+
|
|
211
|
+
PARAMETERS:
|
|
212
|
+
trained_models_info:
|
|
213
|
+
Required Arugment.
|
|
214
|
+
Specifies the trained models inforamtion to display.
|
|
215
|
+
Types: pandas Dataframe
|
|
216
|
+
|
|
217
|
+
RETURNS:
|
|
218
|
+
pandas Dataframe.
|
|
219
|
+
"""
|
|
220
|
+
# Creating a copy to avoid use of same reference of memory
|
|
221
|
+
if self.task_type != "Regression":
|
|
222
|
+
sorted_model_df = trained_models_info.sort_values(by=['Micro-F1', 'Weighted-F1'],
|
|
223
|
+
ascending=[False, False]).reset_index(drop=True)
|
|
224
|
+
else:
|
|
225
|
+
sorted_model_df = trained_models_info.sort_values(by='R2-score',
|
|
226
|
+
ascending=False).reset_index(drop=True)
|
|
227
|
+
|
|
228
|
+
# Adding rank to leaderboard
|
|
229
|
+
sorted_model_df.insert(0, 'Rank', sorted_model_df.index + 1)
|
|
230
|
+
|
|
231
|
+
# Assuming 'sorted_df' is your DataFrame
|
|
232
|
+
# Excluding the "last_col"
|
|
233
|
+
leaderboard = sorted_model_df.drop("model-obj", axis=1)
|
|
234
|
+
|
|
235
|
+
self._display_msg(msg="Leaderboard",
|
|
236
|
+
progress_bar=self.progress_bar,
|
|
237
|
+
data=leaderboard,
|
|
238
|
+
show_data=True)
|
|
239
|
+
|
|
240
|
+
return leaderboard, sorted_model_df
|
|
241
|
+
|
|
242
|
+
def _update_hyperparameters(self,
|
|
243
|
+
existing_params,
|
|
244
|
+
new_params):
|
|
245
|
+
"""
|
|
246
|
+
DESCRIPTION:
|
|
247
|
+
Function to update customized hyperparameters by performing addition or replacement
|
|
248
|
+
based on user input.
|
|
249
|
+
|
|
250
|
+
PARAMETERS:
|
|
251
|
+
existing_params:
|
|
252
|
+
Required Argument.
|
|
253
|
+
Specifies the existing generated hyperparameters for specific model.
|
|
254
|
+
Types: dict
|
|
255
|
+
|
|
256
|
+
new_params:
|
|
257
|
+
Required Argument.
|
|
258
|
+
Specifies the newly passed hyperparameters from user input.
|
|
259
|
+
Types: dict
|
|
260
|
+
|
|
261
|
+
RETURNS:
|
|
262
|
+
Updated dictionary containing hyperparameters for specific model.
|
|
263
|
+
"""
|
|
264
|
+
# Iterating over new hyperparameters and performing required operation
|
|
265
|
+
# based on passed method ADD or REPLACE
|
|
266
|
+
for feature, param_list in new_params.items():
|
|
267
|
+
if feature in existing_params.keys():
|
|
268
|
+
if param_list["Method"] == "ADD":
|
|
269
|
+
# Extending existing list
|
|
270
|
+
existing_params[feature] = list(existing_params[feature])
|
|
271
|
+
existing_params[feature].extend(param_list["Value"])
|
|
272
|
+
# Updating list with unique values.
|
|
273
|
+
existing_params[feature]=tuple(set(existing_params[feature]))
|
|
274
|
+
elif param_list["Method"] == "REPLACE":
|
|
275
|
+
# Replacing with entirely new value
|
|
276
|
+
existing_params[feature] = tuple(param_list["Value"])
|
|
277
|
+
else:
|
|
278
|
+
self._display_msg(inline_msg="Passed method is not valid.")
|
|
279
|
+
else:
|
|
280
|
+
self._display_msg(inline_msg="\nPassed model argument {} is not"
|
|
281
|
+
"available for model {}. Skipping it."
|
|
282
|
+
.format(feature,existing_params['name']))
|
|
283
|
+
continue
|
|
284
|
+
# Returning updated hyperparamter
|
|
285
|
+
return existing_params
|
|
286
|
+
|
|
287
|
+
def _custom_hyperparameters(self,
|
|
288
|
+
hyperparameters):
|
|
289
|
+
"""
|
|
290
|
+
DESCRIPTION:
|
|
291
|
+
Function to extract and update hyperaparameters from user input for model training.
|
|
292
|
+
|
|
293
|
+
PARAMETERS:
|
|
294
|
+
hyperparameters:
|
|
295
|
+
Required Argument.
|
|
296
|
+
Specifies the existing generated hyperparameters for all models.
|
|
297
|
+
Types: list
|
|
298
|
+
|
|
299
|
+
RETURNS:
|
|
300
|
+
Updated list of dictionaries containing hyperparameterd for all models.
|
|
301
|
+
"""
|
|
302
|
+
self._display_msg(msg="\nStarting customized hyperparameter update ...",
|
|
303
|
+
progress_bar=self.progress_bar,
|
|
304
|
+
show_data=True)
|
|
305
|
+
|
|
306
|
+
# Fetching user input for performing hyperparameter tuning
|
|
307
|
+
hyperparameter_tuning_input = self.custom_data.get("HyperparameterTuningIndicator", False)
|
|
308
|
+
if hyperparameter_tuning_input:
|
|
309
|
+
# Extracting models and its corresponding hyperparameters details
|
|
310
|
+
model_hyperparameters = self.custom_data.get("HyperparameterTuningParam", None)
|
|
311
|
+
# Getting model index for mapping
|
|
312
|
+
model_index_param = self.model_mapping
|
|
313
|
+
# Checking hyperparameters passed by user and mapping them according to model
|
|
314
|
+
if model_hyperparameters:
|
|
315
|
+
for model_name, hyp_list in model_hyperparameters.items():
|
|
316
|
+
if model_name in list(model_index_param.keys()):
|
|
317
|
+
model_index = model_index_param[model_name]
|
|
318
|
+
else:
|
|
319
|
+
self._display_msg(inline_msg="\nPassed model {} is not available for training.".format(model_name))
|
|
320
|
+
continue
|
|
321
|
+
# Updating existing hyperparameters with customized hyperparameters as per user input
|
|
322
|
+
hyperparameters[model_index]=self._update_hyperparameters(hyperparameters[model_index],hyp_list)
|
|
323
|
+
# Displaying it after update
|
|
324
|
+
self._display_msg(inline_msg="\nCompleted customized hyperparameter update.",
|
|
325
|
+
progress_bar=self.progress_bar)
|
|
326
|
+
else:
|
|
327
|
+
self._display_msg(inline_msg="No information provided for custom hyperparameters. AutoML will proceed with default values.",
|
|
328
|
+
progress_bar=self.progress_bar)
|
|
329
|
+
else:
|
|
330
|
+
self._display_msg(inline_msg="\nSkipping customized hyperparameter tuning",
|
|
331
|
+
progress_bar=self.progress_bar)
|
|
332
|
+
# Retunring updated hyperparameters for all models
|
|
333
|
+
return hyperparameters
|
|
334
|
+
|
|
335
|
+
# Hyperparameter generation for XGBoost or Decision Forest
|
|
336
|
+
def _get_tree_model_hyperparameters(self,
|
|
337
|
+
num_rows,
|
|
338
|
+
num_cols,
|
|
339
|
+
model_name):
|
|
340
|
+
"""
|
|
341
|
+
DESCRIPTION:
|
|
342
|
+
Internal function to generate hyperparameters for tree based model i.e., XGBoost or Decision Forest.
|
|
343
|
+
|
|
344
|
+
PARAMETERS:
|
|
345
|
+
num_rows:
|
|
346
|
+
Required Arugment.
|
|
347
|
+
Specifies the number of rows in dataset.
|
|
348
|
+
Types: int
|
|
349
|
+
|
|
350
|
+
num_cols:
|
|
351
|
+
Required Arugment.
|
|
352
|
+
Specifies the number of columns in dataset.
|
|
353
|
+
Types: int
|
|
354
|
+
|
|
355
|
+
model_name:
|
|
356
|
+
Required Argument.
|
|
357
|
+
Specifies which linear model is getting used for generating hyperparameters.
|
|
358
|
+
Types: Str
|
|
359
|
+
|
|
360
|
+
RETURNS:
|
|
361
|
+
dict containing, hyperparameters for XGBoost or Decision Forest.
|
|
362
|
+
"""
|
|
363
|
+
# Initializing hyperparameters based on default value
|
|
364
|
+
min_impurity = [0.0]
|
|
365
|
+
shrinkage_factor = [0.5]
|
|
366
|
+
max_depth = [5]
|
|
367
|
+
min_node_size = [1]
|
|
368
|
+
iter_num = [10]
|
|
369
|
+
num_trees = [-1]
|
|
370
|
+
|
|
371
|
+
# Extending values for hyperparameters based on dataset size, i.e., number of rows and columns
|
|
372
|
+
if num_rows < 1000 and num_cols < 10:
|
|
373
|
+
min_impurity.extend([0.1])
|
|
374
|
+
shrinkage_factor.extend([0.1, 0.2])
|
|
375
|
+
max_depth.extend([6, 7, 8])
|
|
376
|
+
min_node_size.extend([2])
|
|
377
|
+
iter_num.extend([20])
|
|
378
|
+
num_trees.extend([10, 20])
|
|
379
|
+
elif num_rows < 10000 and num_cols < 15:
|
|
380
|
+
min_impurity.extend([0.1, 0.2])
|
|
381
|
+
shrinkage_factor.extend([0.1, 0.3])
|
|
382
|
+
max_depth.extend([6, 8, 10])
|
|
383
|
+
min_node_size.extend([2, 3])
|
|
384
|
+
iter_num.extend([20, 30])
|
|
385
|
+
num_trees.extend([20, 30])
|
|
386
|
+
elif num_rows < 100000 and num_cols < 20:
|
|
387
|
+
min_impurity.extend([0.2, 0.3])
|
|
388
|
+
shrinkage_factor.extend([0.01, 0.1, 0.2])
|
|
389
|
+
max_depth.extend([4, 6, 7])
|
|
390
|
+
min_node_size.extend([3, 4])
|
|
391
|
+
iter_num.extend([30, 40])
|
|
392
|
+
num_trees.extend([30, 40])
|
|
393
|
+
else:
|
|
394
|
+
min_impurity.extend([0.1, 0.2, 0.3])
|
|
395
|
+
shrinkage_factor.extend([0.01, 0.05, 0.1])
|
|
396
|
+
max_depth.extend([3, 4, 7, 8])
|
|
397
|
+
min_node_size.extend([2, 3, 4])
|
|
398
|
+
iter_num.extend([20, 30, 40])
|
|
399
|
+
num_trees.extend([20, 30, 40])
|
|
400
|
+
|
|
401
|
+
# Hyperparameters for XGBoost model
|
|
402
|
+
xgb_params = {
|
|
403
|
+
'response_column': self.target_column,
|
|
404
|
+
'name':'xgboost',
|
|
405
|
+
'model_type': 'Regression',
|
|
406
|
+
'column_sampling': (1, .6),
|
|
407
|
+
'min_impurity': tuple(min_impurity),
|
|
408
|
+
'lambda1': (0.01, 0.1, 1, 10),
|
|
409
|
+
'shrinkage_factor': tuple(shrinkage_factor),
|
|
410
|
+
'max_depth': tuple(max_depth),
|
|
411
|
+
'min_node_size': tuple(min_node_size),
|
|
412
|
+
'iter_num': tuple(iter_num)
|
|
413
|
+
}
|
|
414
|
+
# Hyperparameters for Decision Forest model
|
|
415
|
+
df_params = {
|
|
416
|
+
'response_column': self.target_column,
|
|
417
|
+
'name': 'decision_forest',
|
|
418
|
+
'tree_type': 'Regression',
|
|
419
|
+
'min_impurity': tuple(min_impurity),
|
|
420
|
+
'max_depth': tuple(max_depth),
|
|
421
|
+
'min_node_size': tuple(min_node_size),
|
|
422
|
+
'num_trees': tuple(num_trees)
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
# Updating model type in case of classification
|
|
426
|
+
if self.task_type == "Classification":
|
|
427
|
+
xgb_params['model_type'] = 'Classification'
|
|
428
|
+
df_params['tree_type'] = 'Classification'
|
|
429
|
+
|
|
430
|
+
# Returning hyperparameters based on passed model
|
|
431
|
+
if model_name == 'xgboost':
|
|
432
|
+
return xgb_params
|
|
433
|
+
elif model_name == 'decision_forest':
|
|
434
|
+
return df_params
|
|
435
|
+
else:
|
|
436
|
+
return None
|
|
437
|
+
|
|
438
|
+
# Hyperparameter generation for KNN
|
|
439
|
+
def _get_knn_hyperparameters(self,
|
|
440
|
+
num_rows=None,
|
|
441
|
+
num_cols=None):
|
|
442
|
+
"""
|
|
443
|
+
DESCRIPTION:
|
|
444
|
+
Internal function to generate hyperparameters for KNN.
|
|
445
|
+
|
|
446
|
+
PARAMETERS:
|
|
447
|
+
num_rows
|
|
448
|
+
Required Arugment.
|
|
449
|
+
Specifies the number of rows in dataset.
|
|
450
|
+
Types: int
|
|
451
|
+
|
|
452
|
+
num_cols:
|
|
453
|
+
Required Arugment.
|
|
454
|
+
Specifies the number of columns in dataset.
|
|
455
|
+
Types: int
|
|
456
|
+
|
|
457
|
+
RETURNS:
|
|
458
|
+
dict containing, hyperparameters for KNN.
|
|
459
|
+
"""
|
|
460
|
+
params = {
|
|
461
|
+
'response_column': self.target_column,
|
|
462
|
+
'name': 'knn',
|
|
463
|
+
'model_type': 'Regression',
|
|
464
|
+
'k': (3, 5, 6, 8, 10, 12),
|
|
465
|
+
"id_column":"id",
|
|
466
|
+
"voting_weight": 1.0
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
if self.task_type == "Classification":
|
|
470
|
+
params['model_type'] = 'Classification'
|
|
471
|
+
|
|
472
|
+
return params
|
|
473
|
+
|
|
474
|
+
# Hyperparameter generation for SVM/GLM
|
|
475
|
+
def _get_linear_model_hyperparameters(self,
|
|
476
|
+
num_rows,
|
|
477
|
+
num_cols,
|
|
478
|
+
model_name):
|
|
479
|
+
"""
|
|
480
|
+
DESCRIPTION:
|
|
481
|
+
Internal function to generate hyperparameters for linear models i.e., SVM or GLM.
|
|
482
|
+
|
|
483
|
+
PARAMETERS:
|
|
484
|
+
num_rows:
|
|
485
|
+
Required Arugment.
|
|
486
|
+
Specifies the number of rows in dataset.
|
|
487
|
+
Types: int
|
|
488
|
+
|
|
489
|
+
num_cols:
|
|
490
|
+
Required Arugment.
|
|
491
|
+
Specifies the number of columns in dataset.
|
|
492
|
+
Types: int
|
|
493
|
+
|
|
494
|
+
model_name:
|
|
495
|
+
Required Argument.
|
|
496
|
+
Specifies which tree model is getting used for generating hyperparameters.
|
|
497
|
+
Types: Str
|
|
498
|
+
|
|
499
|
+
RETURNS:
|
|
500
|
+
dict containing, hyperparameters for SVM or GLM.
|
|
501
|
+
"""
|
|
502
|
+
# Initializing hyperparameters based on default value
|
|
503
|
+
iter_max = [300]
|
|
504
|
+
batch_size = [10]
|
|
505
|
+
|
|
506
|
+
# Extending values for hyperparameters based on dataset size i.e., number of rows and columns
|
|
507
|
+
if num_rows < 1000 and num_cols < 10:
|
|
508
|
+
iter_max.extend([100, 200])
|
|
509
|
+
batch_size.extend([20, 40, 50])
|
|
510
|
+
elif num_rows < 10000 and num_cols < 15:
|
|
511
|
+
iter_max.extend([200, 400])
|
|
512
|
+
batch_size.extend([50, 60, 80])
|
|
513
|
+
elif num_rows < 100000 and num_cols < 20:
|
|
514
|
+
iter_max.extend([400])
|
|
515
|
+
batch_size.extend([100, 150])
|
|
516
|
+
else:
|
|
517
|
+
iter_max.extend([200, 400, 500])
|
|
518
|
+
batch_size.extend([80, 100, 150])
|
|
519
|
+
|
|
520
|
+
# Hyperparameters for SVM model
|
|
521
|
+
svm_params = {
|
|
522
|
+
'response_column': self.target_column,
|
|
523
|
+
'name':'svm',
|
|
524
|
+
'model_type':'regression',
|
|
525
|
+
'lambda1':(0.001, 0.02, 0.1),
|
|
526
|
+
'alpha':(.15, .85),
|
|
527
|
+
'tolerance':(0.001, 0.01),
|
|
528
|
+
'learning_rate':('Invtime','Adaptive','constant'),
|
|
529
|
+
'initial_eta' : (0.05, 0.1),
|
|
530
|
+
'momentum':(0.65, 0.8, 0.95),
|
|
531
|
+
'nesterov': True,
|
|
532
|
+
'intercept': True,
|
|
533
|
+
'iter_num_no_change':(5, 10, 50),
|
|
534
|
+
'local_sgd_iterations ': (10, 20),
|
|
535
|
+
'iter_max' : tuple(iter_max),
|
|
536
|
+
'batch_size' : tuple(batch_size)
|
|
537
|
+
}
|
|
538
|
+
# Hyperparameters for GLM model
|
|
539
|
+
glm_params={
|
|
540
|
+
'response_column': self.target_column,
|
|
541
|
+
'name': 'glm',
|
|
542
|
+
'family': 'GAUSSIAN',
|
|
543
|
+
'lambda1':(0.001, 0.02, 0.1),
|
|
544
|
+
'alpha': (0.15, 0.85),
|
|
545
|
+
'learning_rate': ('invtime', 'constant', 'adaptive'),
|
|
546
|
+
'initial_eta': (0.05, 0.1),
|
|
547
|
+
'momentum': (0.65, 0.8, 0.95),
|
|
548
|
+
'iter_num_no_change':(5, 10, 50),
|
|
549
|
+
'iter_max' : tuple(iter_max),
|
|
550
|
+
'batch_size' : tuple(batch_size)
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
# Updating model type in case of classification
|
|
554
|
+
if self.task_type == "Classification":
|
|
555
|
+
svm_params['model_type'] = 'Classification'
|
|
556
|
+
svm_params['learning_rate'] = 'OPTIMAL'
|
|
557
|
+
glm_params['family'] = 'BINOMIAL'
|
|
558
|
+
glm_params['learning_rate'] = 'OPTIMAL'
|
|
559
|
+
|
|
560
|
+
# Returning hyperparameters based on passed model
|
|
561
|
+
if model_name == 'svm':
|
|
562
|
+
return svm_params
|
|
563
|
+
elif model_name == 'glm':
|
|
564
|
+
return glm_params
|
|
565
|
+
else:
|
|
566
|
+
return None
|
|
567
|
+
|
|
568
|
+
def _generate_parameter(self):
|
|
569
|
+
"""
|
|
570
|
+
DESCRIPTION:
|
|
571
|
+
Internal function to generate hyperparameters for ML models.
|
|
572
|
+
|
|
573
|
+
RETURNS:
|
|
574
|
+
list containing, dict of hyperparameters for different ML models.
|
|
575
|
+
"""
|
|
576
|
+
# list for storing hyperparameters
|
|
577
|
+
parameters=[]
|
|
578
|
+
# Index for model mapping
|
|
579
|
+
model_index=0
|
|
580
|
+
# Dictionary for mapping model with index
|
|
581
|
+
self.model_mapping={}
|
|
582
|
+
|
|
583
|
+
# Getting number of rows and columns
|
|
584
|
+
num_rows = self.data.shape[0]
|
|
585
|
+
num_cols = self.data.shape[1]
|
|
586
|
+
|
|
587
|
+
# Updating model list for multi-class classification
|
|
588
|
+
if self.task_type.casefold() == "classification" and self.labels > 2:
|
|
589
|
+
for model in ['glm','svm']:
|
|
590
|
+
if model in self.model_list:
|
|
591
|
+
self._display_msg(inline_msg="\nMulti-class classification is "
|
|
592
|
+
"not supported by {} model. Skipping {} model."
|
|
593
|
+
.format(model, model),
|
|
594
|
+
progress_bar=self.progress_bar)
|
|
595
|
+
self.model_list.remove(model)
|
|
596
|
+
|
|
597
|
+
# Model functions mapping for hyperparameter generation
|
|
598
|
+
model_functions = {
|
|
599
|
+
'decision_forest': self._get_tree_model_hyperparameters,
|
|
600
|
+
'xgboost': self._get_tree_model_hyperparameters,
|
|
601
|
+
'knn': self._get_knn_hyperparameters,
|
|
602
|
+
'glm': self._get_linear_model_hyperparameters,
|
|
603
|
+
'svm': self._get_linear_model_hyperparameters,
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
# Generating hyperparameters for each model
|
|
607
|
+
if self.model_list:
|
|
608
|
+
for model in self.model_list:
|
|
609
|
+
self.model_mapping[model] = model_index
|
|
610
|
+
if model == 'knn':
|
|
611
|
+
parameters.append(model_functions[model](num_rows, num_cols))
|
|
612
|
+
else:
|
|
613
|
+
parameters.append(model_functions[model](num_rows, num_cols, model))
|
|
614
|
+
model_index += 1
|
|
615
|
+
else:
|
|
616
|
+
raise ValueError("No model is selected for training.")
|
|
617
|
+
|
|
618
|
+
return parameters
|
|
619
|
+
|
|
620
|
+
def _parallel_training(self, parameters):
|
|
621
|
+
"""
|
|
622
|
+
DESCRIPTION:
|
|
623
|
+
Internal function initiates the threadpool executor
|
|
624
|
+
for hyperparameter tunning of ML models.
|
|
625
|
+
|
|
626
|
+
PARAMETERS:
|
|
627
|
+
parameters:
|
|
628
|
+
Required Argument.
|
|
629
|
+
Specifies the hyperparamters for ML models.
|
|
630
|
+
Types: list of dict
|
|
631
|
+
|
|
632
|
+
RETURNS:
|
|
633
|
+
Pandas DataFrame containing, trained models information.
|
|
634
|
+
"""
|
|
635
|
+
|
|
636
|
+
# Hyperparameters for each model
|
|
637
|
+
model_params = parameters[:min(len(parameters), 5)]
|
|
638
|
+
self._display_msg(msg="\nPerforming hyperParameter tuning ...", progress_bar=self.progress_bar)
|
|
639
|
+
|
|
640
|
+
# Defining training and testing data
|
|
641
|
+
data_types = ['lasso', 'rfe', 'pca']
|
|
642
|
+
trainng_datas = tuple(DataFrame(self.table_name_mapping[f'{data_type}_train']) for data_type in data_types)
|
|
643
|
+
testing_datas = tuple(DataFrame(self.table_name_mapping[f'{data_type}_test']) for data_type in data_types)
|
|
644
|
+
|
|
645
|
+
if self.stopping_metric is None:
|
|
646
|
+
self.stopping_tolerance, self.stopping_metric = 1.0, 'MICRO-F1' \
|
|
647
|
+
if self.is_classification_type() else 'R2'
|
|
648
|
+
|
|
649
|
+
self.max_runtime_secs = self.max_runtime_secs/len(model_params) \
|
|
650
|
+
if self.max_runtime_secs is not None else None
|
|
651
|
+
|
|
652
|
+
trained_models = []
|
|
653
|
+
for param in model_params:
|
|
654
|
+
result = self._hyperparameter_tunning(param, trainng_datas, testing_datas)
|
|
655
|
+
trained_models.append(result)
|
|
656
|
+
|
|
657
|
+
models_df = pd.concat(trained_models, ignore_index=True)
|
|
658
|
+
|
|
659
|
+
# Score the model and combine the results into a single DataFrame
|
|
660
|
+
trained_models_info = self._model_scoring(testing_datas, models_df)
|
|
661
|
+
trained_models_info = trained_models_info.reset_index(drop=True)
|
|
662
|
+
|
|
663
|
+
return trained_models_info
|
|
664
|
+
|
|
665
|
+
def _model_scoring(self,
|
|
666
|
+
test_data,
|
|
667
|
+
model_info):
|
|
668
|
+
"""
|
|
669
|
+
DESCRIPTION:
|
|
670
|
+
Internal function generates the performance metrics for
|
|
671
|
+
trained ML models using testing dataset.
|
|
672
|
+
|
|
673
|
+
PARAMETERS:
|
|
674
|
+
test_data
|
|
675
|
+
Required Argument.
|
|
676
|
+
Specifies the testing datasets
|
|
677
|
+
Types: tuple of Teradataml DataFrame
|
|
678
|
+
|
|
679
|
+
model_info
|
|
680
|
+
Required Arugment.
|
|
681
|
+
Specifies the trained models information.
|
|
682
|
+
Types: Pandas DataFrame
|
|
683
|
+
|
|
684
|
+
RETURNS:
|
|
685
|
+
Pandas DataFrame containing, trained models with thier performance metrics.
|
|
686
|
+
"""
|
|
687
|
+
self._display_msg(msg="Evaluating models performance ...",
|
|
688
|
+
progress_bar = self.progress_bar,
|
|
689
|
+
show_data=True)
|
|
690
|
+
# Empty list for storing model performance metrics
|
|
691
|
+
model_performance_data = []
|
|
692
|
+
|
|
693
|
+
# Mapping feature selection methods to corresponding test data
|
|
694
|
+
feature_selection_to_test_data = {"lasso": test_data[0],
|
|
695
|
+
"rfe": test_data[1],
|
|
696
|
+
"pca": test_data[2]}
|
|
697
|
+
|
|
698
|
+
# Iterating over models
|
|
699
|
+
for index, model_row in model_info.iterrows():
|
|
700
|
+
# Extracting model name, feature selection method, and model object
|
|
701
|
+
model_name, feature_selection, model_object = model_row['Name'], \
|
|
702
|
+
model_row['Feature selection'], model_row['obj']
|
|
703
|
+
|
|
704
|
+
# Selecting test data based on feature selection method
|
|
705
|
+
test_set = feature_selection_to_test_data[feature_selection]
|
|
706
|
+
|
|
707
|
+
# Model evaluation
|
|
708
|
+
if model_name == 'knn':
|
|
709
|
+
performance_metrics = model_object.evaluate(test_data=test_set)
|
|
710
|
+
else:
|
|
711
|
+
eval_params = self._eval_params_generation(model_name)
|
|
712
|
+
performance_metrics = model_object.evaluate(newdata=test_set, **eval_params)
|
|
713
|
+
|
|
714
|
+
# Extracting performance metrics
|
|
715
|
+
if self.is_classification_type():
|
|
716
|
+
# Classification
|
|
717
|
+
# Extract performance metrics from the output data
|
|
718
|
+
performance_metrics_list = [metric[2] for metric in performance_metrics.output_data.itertuples()]
|
|
719
|
+
|
|
720
|
+
# Combine all the elements to form a new row
|
|
721
|
+
new_row = [model_name, feature_selection] + performance_metrics_list + [model_object]
|
|
722
|
+
else:
|
|
723
|
+
# Regression
|
|
724
|
+
regression_metrics = next(performance_metrics.result.itertuples())
|
|
725
|
+
sample_size = test_set.select('id').size
|
|
726
|
+
feature_count = len(test_set.columns) - 2
|
|
727
|
+
r2_score = regression_metrics[8]
|
|
728
|
+
adjusted_r2_score = 1 - ((1 - r2_score) * (sample_size - 1) / (sample_size - feature_count - 1))
|
|
729
|
+
new_row = [model_name, feature_selection, regression_metrics[0], regression_metrics[1], regression_metrics[2],
|
|
730
|
+
regression_metrics[5], regression_metrics[6], r2_score, adjusted_r2_score, model_object]
|
|
731
|
+
|
|
732
|
+
model_performance_data.append(new_row)
|
|
733
|
+
|
|
734
|
+
if self.is_classification_type():
|
|
735
|
+
model_metrics_df = pd.DataFrame(model_performance_data, columns=['Name','Feature selection',
|
|
736
|
+
'Accuracy','Micro-Precision',
|
|
737
|
+
'Micro-Recall','Micro-F1',
|
|
738
|
+
'Macro-Precision','Macro-Recall',
|
|
739
|
+
'Macro-F1','Weighted-Precision',
|
|
740
|
+
'Weighted-Recall','Weighted-F1',
|
|
741
|
+
'model-obj'])
|
|
742
|
+
else:
|
|
743
|
+
model_metrics_df = pd.DataFrame(model_performance_data, columns=['Name',
|
|
744
|
+
'Feature selection',
|
|
745
|
+
'MAE', 'MSE', 'MSLE',
|
|
746
|
+
'RMSE', 'RMSLE',
|
|
747
|
+
'R2-score',
|
|
748
|
+
'Adjusted R2-score',
|
|
749
|
+
'model-obj'])
|
|
750
|
+
self._display_msg(msg="Evaluation completed.",
|
|
751
|
+
progress_bar = self.progress_bar,
|
|
752
|
+
show_data=True)
|
|
753
|
+
|
|
754
|
+
return model_metrics_df
|
|
755
|
+
|
|
756
|
+
def _hyperparameter_tunning(self,
|
|
757
|
+
model_param,
|
|
758
|
+
train_data,
|
|
759
|
+
test_data):
|
|
760
|
+
"""
|
|
761
|
+
DESCRIPTION:
|
|
762
|
+
Internal function performs hyperparameter tuning on
|
|
763
|
+
ML models for regression/classification problems.
|
|
764
|
+
|
|
765
|
+
PARAMETERS:
|
|
766
|
+
model_param
|
|
767
|
+
Required Arugment.
|
|
768
|
+
Specifies the eval_params argument for GridSearch.
|
|
769
|
+
Types: dict
|
|
770
|
+
|
|
771
|
+
train_data:
|
|
772
|
+
Required Arugment.
|
|
773
|
+
Specifies the training datasets.
|
|
774
|
+
Types: tuple of Teradataml DataFrame
|
|
775
|
+
|
|
776
|
+
test_data
|
|
777
|
+
Required Argument.
|
|
778
|
+
Specifies the testing datasets
|
|
779
|
+
Types: tuple of Teradataml DataFrame
|
|
780
|
+
|
|
781
|
+
RETURNS:
|
|
782
|
+
pandas DataFrame containing, trained models information.
|
|
783
|
+
"""
|
|
784
|
+
# Mapping model names to functions
|
|
785
|
+
model_to_func = {"glm": GLM, "svm": SVM,
|
|
786
|
+
"xgboost": XGBoost, "decision_forest": DecisionForest, "knn": KNN}
|
|
787
|
+
|
|
788
|
+
# Setting eval_params for hpt.
|
|
789
|
+
eval_params = self._eval_params_generation(model_param['name'])
|
|
790
|
+
|
|
791
|
+
# Input columns for model
|
|
792
|
+
model_param['input_columns'] = self.features
|
|
793
|
+
|
|
794
|
+
self._display_msg(msg=model_param['name'],
|
|
795
|
+
progress_bar=self.progress_bar,
|
|
796
|
+
show_data=True)
|
|
797
|
+
|
|
798
|
+
# Defining test data for KNN
|
|
799
|
+
if model_param['name'] == 'knn':
|
|
800
|
+
model_param['test_data'] = test_data
|
|
801
|
+
|
|
802
|
+
# Defining Gridsearch with ML model based on Name
|
|
803
|
+
_obj = GridSearch(func=model_to_func[model_param['name']], params=model_param)
|
|
804
|
+
|
|
805
|
+
if self.verbose > 0:
|
|
806
|
+
print(" " *200, end='\r', flush=True)
|
|
807
|
+
verbose = 1
|
|
808
|
+
else:
|
|
809
|
+
verbose = 0
|
|
810
|
+
|
|
811
|
+
# Hyperparameter tunning
|
|
812
|
+
if model_param['name'] == 'knn':
|
|
813
|
+
_obj.fit(data=train_data, evaluation_metric=self.stopping_metric,
|
|
814
|
+
early_stop=self.stopping_tolerance, run_parallel=True,
|
|
815
|
+
sample_seed=42, sample_id_column='id', discard_invalid_column_params=True,
|
|
816
|
+
verbose=verbose, max_time=self.max_runtime_secs)
|
|
817
|
+
else:
|
|
818
|
+
_obj.fit(data=train_data, evaluation_metric=self.stopping_metric,
|
|
819
|
+
early_stop=self.stopping_tolerance, **eval_params,
|
|
820
|
+
run_parallel=True, discard_invalid_column_params=True, sample_seed=42,
|
|
821
|
+
sample_id_column='id', verbose=verbose, max_time=self.max_runtime_secs)
|
|
822
|
+
|
|
823
|
+
# Getting all passed models
|
|
824
|
+
_df = _obj.model_stats.merge(_obj.models[_obj.models['STATUS']=='PASS'][['MODEL_ID', 'DATA_ID']], on='MODEL_ID', how='inner')
|
|
825
|
+
|
|
826
|
+
# Mapping data ID to DataFrame
|
|
827
|
+
data_id_to_df = {"DF_0": _df[_df['DATA_ID']=='DF_0'],
|
|
828
|
+
"DF_1": _df[_df['DATA_ID']=='DF_1'],
|
|
829
|
+
"DF_2": _df[_df['DATA_ID']=='DF_2']}
|
|
830
|
+
|
|
831
|
+
# Returns best model within a Data_ID group
|
|
832
|
+
# get_best_model = lambda df: df.sort_values(by=['MICRO-F1', 'WEIGHTED-F1'], ascending=[False, False]).iloc[0]['MODEL_ID']\
|
|
833
|
+
# if self.task_type != 'Regression' else df.sort_values(by=['R2', 'MAE'], ascending=[False, False]).iloc[0]['MODEL_ID']
|
|
834
|
+
get_best_model = lambda df, stats: df.sort_values(by=stats, ascending=[False, False]).iloc[0]['MODEL_ID']
|
|
835
|
+
|
|
836
|
+
# best_model = get_best_model(data_id_to_df[data_id], stats)
|
|
837
|
+
stats = ['MICRO-F1', 'WEIGHTED-F1'] if self.task_type != 'Regression' else ['R2', 'MAE']
|
|
838
|
+
model_info_data = []
|
|
839
|
+
# Extracting best model
|
|
840
|
+
for data_id, df_name in zip(["DF_0", "DF_1", "DF_2"], ["lasso", "rfe", "pca"]):
|
|
841
|
+
if not data_id_to_df[data_id].empty:
|
|
842
|
+
best_model = get_best_model(data_id_to_df[data_id], stats)
|
|
843
|
+
model_info_data.append([model_param['name'], df_name, _obj.get_model(best_model)])
|
|
844
|
+
self._display_msg(inline_msg=best_model, progress_bar=self.progress_bar)
|
|
845
|
+
|
|
846
|
+
model_info = pd.DataFrame(data=model_info_data, columns=["Name",'Feature selection', "obj"])
|
|
847
|
+
self._display_msg(msg="-"*100,
|
|
848
|
+
progress_bar=self.progress_bar,
|
|
849
|
+
show_data=True)
|
|
850
|
+
self.progress_bar.update()
|
|
851
|
+
|
|
852
|
+
return model_info
|
|
853
|
+
|
|
854
|
+
def _eval_params_generation(self,
|
|
855
|
+
ml_name):
|
|
856
|
+
"""
|
|
857
|
+
DESCRIPTION:
|
|
858
|
+
Internal function generates the eval_params for
|
|
859
|
+
different ML models.
|
|
860
|
+
|
|
861
|
+
PARAMETERS:
|
|
862
|
+
ml_name
|
|
863
|
+
Required Arugment.
|
|
864
|
+
Specifies the ML name for eval_params generation.
|
|
865
|
+
Types: str
|
|
866
|
+
|
|
867
|
+
RETURNS:
|
|
868
|
+
dict containing, eval_params for ML model.
|
|
869
|
+
"""
|
|
870
|
+
# Setting the eval_params
|
|
871
|
+
eval_params = {"id_column": "id",
|
|
872
|
+
"accumulate": self.target_column}
|
|
873
|
+
|
|
874
|
+
# For Classification
|
|
875
|
+
if self.task_type != "Regression":
|
|
876
|
+
if ml_name == 'xgboost':
|
|
877
|
+
eval_params['model_type'] = 'Classification'
|
|
878
|
+
eval_params['object_order_column'] = ['task_index', 'tree_num', 'iter','class_num', 'tree_order']
|
|
879
|
+
else:
|
|
880
|
+
eval_params['output_prob'] = True
|
|
881
|
+
else:
|
|
882
|
+
# For Regression
|
|
883
|
+
if ml_name == 'xgboost':
|
|
884
|
+
eval_params['model_type'] = 'Regression'
|
|
885
|
+
eval_params['object_order_column'] = ['task_index', 'tree_num', 'iter', 'tree_order']
|
|
886
|
+
|
|
887
|
+
return eval_params
|