{"push_id":856423999,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"c447c9d54603890db7399fb80adc9fae40b71f64","before":"3a652f691b220fada0286f8d0a562c5657973d4d","commits":[{"sha":"c447c9d54603890db7399fb80adc9fae40b71f64","author":{"email":"9616cf314f60cbadfd3d5d51110130ad7923defb@databricks.com","name":"Xiangrui Meng"},"message":"[SPARK-11217][ML] save/load for non-meta estimators and transformers\n\nThis PR implements the default save/load for non-meta estimators and transformers using the JSON serialization of param values. The saved metadata includes:\n\n* class name\n* uid\n* timestamp\n* paramMap\n\nThe save/load interface is similar to DataFrames. We use the current active context by default, which should be sufficient for most use cases.\n\n~~~scala\ninstance.save(\"path\")\ninstance.write.context(sqlContext).overwrite().save(\"path\")\n\nInstance.load(\"path\")\n~~~\n\nThe param handling is different from the design doc. We didn't save default and user-set params separately, and when we load it back, all parameters are user-set. This does cause issues. But it also cause other issues if we modify the default params.\n\nTODOs:\n\n* [x] Java test\n* [ ] a follow-up PR to implement default save/load for all non-meta estimators and transformers\n\ncc jkbradley\n\nAuthor: Xiangrui Meng <meng@databricks.com>\n\nCloses #9454 from mengxr/SPARK-11217.","distinct":true,"url":"https://api.github.com/repos/apache/spark/commits/c447c9d54603890db7399fb80adc9fae40b71f64"}]}