pmml 2.3.1 Unreleased

Bug Fixes

  • pmml.xgb.Booster() no longer switches probabilities for “binary:logistic” objective function.
  • add_data_field_attributes() now throws appropriate errors instead of using print() statements.

pmml 2.3.0 2020-03-18

New Features

  • pmml.ARIMA() can now export models with StateSpaceModel representation. This is controlled by a new parameter, ts_type. The default option (ts_type = "arima") still exports an ARIMA representation as before. When ts_type = "statespace", the exported PMML uses a StateSpaceModel element.
  • The exact_least_squares parameter in pmml.ARIMA() is now deprecated. In a future release, all exports where ts_type = "arima" will be exported with the Exact Least Squares method.

Other Changes

  • Package is now compliant with the stringsAsFactors change in R 4.0.0.

pmml 2.2.0 2020-01-10

Breaking Changes

  • Deprecated parameters in the following functions have been removed, and replaced with equivalent in snake case.
    • pmml.iForest: anomalyThreshold -> anomaly_threshold
    • pmml.kmeans: algorithm.name -> algorithm_name
    • rename_wrap_var: wrap_data -> wrap_object
    • xform_norm_discrete: inputVar -> input_var

New Features

  • pmml.ARIMA() now exports prediction intervals for non-seasonal models.
  • pmml.ARIMA() can now export seasonal models with Exact Least Squares representation, and does so by default.

pmml 2.1.0 2019-09-13

Major Changes

  • Package now exports PMML with schema version 4.4.

  • pmml.ARIMA() function added - exports ARIMA time series models from the forecast package.

Breaking Changes

  • pmml.svm() now has a detect_anomaly argument, allowing the user to specify whether the PMML detects anomalies or inliers. The exported PMML now has two OutputField elements: anomalyScore and one of anomaly or inlier.

  • The following arguments are deprecated. They can still be used, but will produce a warning message and will be removed in a future release.
    • pmml.iForest: anomalyThreshold -> anomaly_threshold
    • pmml.kmeans: algorithm.name -> algorithm_name
    • rename_wrap_var: wrap_data -> wrap_object
    • xform_norm_discrete: inputVar -> input_var

Other Changes

  • Application version in PMML Header corresponds to pmml package version.

  • pmml.iForest now uses attribute sampleDataSize instead of element ParameterList to store the model$phi value.

  • pmml.gbm now adds modelName attribute to the final segment for multinomial gbm models.

  • testthat file names correspond to the functions being tested.

  • Edited make_output_nodes doc for clarity.

  • Updated formatting in vignettes.

  • Fixed spelling and added word list via spelling package.

pmml 2.0.0 2019-06-03

With this release, pmmlTransformations has been merged into pmml and package development has been moved to GitHub. This was also a good opportunity to apply a style and rename many functions and parameters to make the code more uniform and easier to understand.

Breaking Changes

We used the tidyverse style guide when renaming functions, parameters, and arguments. In addition, some parameters and arguments have been renamed for clarity, and several functions were removed.

For functions that use a dots (...) parameter, the old parameters will still be accepted, even though these old parameters will not be used.

  • pmml() parameters and default arguments have been changed as follows:
    • model.name = "Rattle_Model" -> model_name = "R_Model"
    • app.name = "Rattle/PMML" -> app_name = "SoftwareAG PMML Generator"
    • unknownValue -> missing_value_replacement
  • Individual exporters had the following changes:
    • pmml.iForest()
      • parentInvalidValueTreatment -> parent_invalid_value_treatment
      • childInvalidValueTreatment -> child_invalid_value_treatment
    • pmml.lm()
      • The unused dataset argument has been removed.
    • pmml.naiveBayes()
      • predictedField - predicted_field
    • pmml.randomForest()
      • unknownValue -> missing_value_replacement
      • parentInvalidValueTreatment -> parent_invalid_value_treatment
      • childInvalidValueTreatment -> child_invalid_value_treatment
    • pmml.xgb.Booster()
      • inputFeatureNames -> input_feature_names
      • outputLabelName -> output_label_name
      • outputCategories -> output_categories
      • xgbDumpFile -> xgb_dump_file
      • parentInvalidValueTreatment -> parent_invalid_value_treatment
      • childInvalidValueTreatment -> child_invalid_value_treatment
  • The following additional functions had name and parameter changes:
  • Functions from pmmlTransformations have been merged into pmml and had the following name and parameter changes:
    • All functions had the following parameters renamed where present:
      • xformInfo -> xform_info
      • boxdata -> wrap_object (except in RenameVar)
      • mapMissingTo -> map_missing_to
    • DiscretizeXform() -> xform_discretize()
      • defaultValue -> default_value
      • mapMissingTo -> map_missing_to
    • FunctionXform() -> xform_function()
      • origFieldName -> orig_field_name
      • newFieldName -> new_field_name
      • newFieldDataType -> new_field_data_type
      • formulaText -> expression
    • MapXform() -> xform_map()
      • defaultValue -> default_value
    • MinMaxXform() -> xform_min_max()
    • NormDiscreteXform() -> xform_norm_discrete()
    • RenameVar() -> rename_wrap_var()
      • boxdata -> wrap_data
    • WrapData() -> xform_wrap()
      • indata -> data
      • useMatrix -> use_matrix
    • ZScoreXform() -> xform_z_score()

Deleted/moved functions

  • The following functions have been removed from the package:
    • pmmltoc() - empty function.
    • addLT() - unused function.
    • pmmlCanExport() - unused function.
    • pmml.survreg() - untested exporter that may be added in the future.
  • Initialize() has been made internal.

Other Changes

  • All documentation is created with roxygen.

  • Documentation is now uniform across different exporters.

pmml 1.5.7 2019-01-25

  • Add support for one-class svm (anomaly detection) models from e1071

  • Add support for iForest (anomaly detection) models from isofor

  • Add support for boolean values in functionToPMML

pmml 1.5.6 2018-10-08

  • Fix missing nodes issue in xgboost caused by deep trees

  • Update savePMML to output LF line endings, independent of OS

  • Update Description and pmml.R documentation

pmml 1.5.5 2018-07-06

  • Add dataType argument to every Output node

  • Fix the family check in pmml.cv.glmnet to only allow “gaussian” and “poisson”

  • Add note about supported family types in pmml.cv.glmnet documentation

  • Add note about sparse matrices in pmml.xgb.Booster documentation

  • Add vignette with list of supported packages and models

  • Fix bug in xgboost when using transformations

pmml 1.5.4 2018-01-08

  • Add invalidValueTreatment=“returnInvalid” in MiningSchema by default for all models

  • Add arguments for invalidValueTreatment attributes to pmml.xgboost() and pmml.randomForest()

pmml 1.5.3 2017-11-27

  • Fix bug due to 1- vs 0-based indexing in gbm converter

  • Change default pmml version to 4.3 in gbm converter

  • Fix comment added at top of XML doc by savePMML()

  • Fix bug in xgboost regression end element

  • Fix bug in xgboost when feature names are substrings of each other

  • Fix bug in xgboost binomial model

  • Add check for xgboost objectives

  • Add support for multi:softmax objective in xgboost

  • Update pmml.rfsrc.R doc to state dependency on version 2.5.0 or earlier

pmml 1.5.2 2017-02-27

  • Add converter for xgboost models

  • Add converter for gbm models

  • Add converter for neighbr model

  • Output error on detecting an unsupported kernel in kernlab::ksvm() models

  • Add examples and note to pmml.glm.Rd

  • Output error on detecting unsupported feature classes

  • Output error on detecting interaction terms in linear models

  • Fix error created when fitting random forest model with 1 tree

  • Update references to PMML spec 4.3

pmml 1.5.1 2016-09-28

  • Fix example in documentation for pmml.rfsrc.R after randomForestSRC was updated

pmml 1.5.0 2015-08-05

  • Add functionToPMML

  • Add addDDInfo

  • Add addOutputInfo

  • Edit to work with pmmlTransformations::FunctionXform: pmml, pmml.datadictionary and pmml.miningschema

  • Add warning message to addLT; will deprecate in next version

pmml 1.4 2013-10-19

  • Add support for the svm model in e1071 package
  • Add support for ada package

  • Add classificationMethod attribute for ksvm model (kernlab) for information purpose

  • Add usageType for AssociationModel MiningField elements

  • Fix bug for combining algorithm PMML and transformation XML fragment

  • Remove obsolete codes

pmml 1.2.32 2012-12-09

  • Updates to pmml.arules from Michael Hahsler.

  • Begin using a ChangeLog (this) file and simply dump previous changes below.

  • Begin support for PMML 4.0.

  • Small changes to pmml.lm to support UTF-8/Japanese.

  • Fix spelling error in DESCRIPTION - CRAN check found it.

  • Various updates from Zementis to the randomForest schema. All the mining schemas in each segment of the random forest now also output the attribute invalidValueTreatment as asis.

  • Change standard to have an R file per exported function, and all internal functions begin with .

– Graham Williams Sun, 09 Dec 2012 22:28:00 +1100

rattle 1.2.27 2011-01-03

  • Bug fixes to ksvm model from Zementis and Graham

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.26 2010-10-09

  • Bug fix glm models with weights

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.25 2010-10-07

  • Fix MapValues compliance

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.24 2010-09-15

  • Bug fix glm regression - note as classification

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.23 2010-08-05

  • Ensure pmml.ksvm at least runs

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.22 2010-05-19

  • Header extension must be first element. lm NA coeff now 0

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.21 2009-12-07

  • Fix bug in pmml export of TNM transform.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.20 2009-11-04

  • Support coxph as regression.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.19) 2009-10-26

  • Several fixes for PMML conformance.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.18 Unreleased

  • Fix export of pmml for hclust with transforms.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.17 2009-08-08

  • Zementis: add Output node.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.16 Unreleased

  • Support TJN (joincat).

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.15 2009-06-22

  • Update documentation

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.14 Unreleased

  • Support mult transforms for rpart

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.13 Unreleased

  • Change structure used to record transforms.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.12 Unreleased

  • Fix pmml.lm handling of singularities -> inactive

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.11 Unreleased

  • Fix categorics with one singularity in lm were marked inactive.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.10 2009-03-09

  • Fix typo in pmml.lm

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.9 2009-03-07

  • Further fix a pmml.lm bug.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.8 2009-03-03

  • Fix a pmml.lm bug.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.7 Unreleased

  • Export logistic classes

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.6 Unreleased

  • Support RMA transforms.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.5 Unreleased

  • Include .TRANSFORM constants within pmml package.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.4 Unreleased

  • Include collection of utility transform functions.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.3 Unreleased

  • Bug fixes

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.2 Unreleased

  • Add test for transform support.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.1 Unreleased

  • Streamline conditional handling of transforms.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.2.0 2009-01-05

  • Fix documentation and packaging and release to CRAN

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.20 Unreleased

  • Bug - fix rpart var names with transforms

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.19 Unreleased

  • Tidy up and update ClusterField

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.18 Unreleased

  • Include pmml.hclust in NAMESPACE

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.17 Unreleased

  • Export hclust as kmeans.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.16 Unreleased

  • export pmml.multinom

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.15 Unreleased

  • Handle multinomial model.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.14 Unreleased

  • Handle singularities in lm/glm better.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.13 Unreleased

  • Support export of poisson(log)

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.12 Unreleased

  • Tree Array have quoted values. 0 for base in regression

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.11 Unreleased

  • Bug fix for pmml.lm - continuing to fix below problem

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.10 Unreleased

  • Bug fix for pmml.lm with categorical logistic target

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.9 2008-07-05

  • Update rpart/nnet/ksvm from Zementis + many improvements

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.8 Unreleased

  • Increase number of digits extracted for rpart tests.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.7 2008-04-22

  • Add arules.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.5 2008-03-10

  • Add pmml.nnet.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.4 Unreleased

  • Add pmml.ksvm. Fix extensions.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.3 2007-09-29

  • Fixes for new version of randomSurvivalForest.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.2 2007-06-10

  • Expose pmml.lm in NAMESPACE - whoops.

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100

rattle 1.1.1 2007-06-05

  • Add pmml.lm

– Graham Williams Thu, 06 Jan 2011 06:43:50 +1100