How do I create a custom model in pyspark?
In scikit-learn it is easy (see Rolling your own estimator).
However, in pyspark I cannot find any similar documentation.
I found out, from reading the source code, that there are three relevant base interfaces: Model, Estimator and Transformer
However, it is not clear to me if I should inherit from Model or Estimator or both. Especially the inheritance from Parameters is complicated.
I've seen a similar answer here but it is almost one year old and I guess things have changed since then. It also seems to refer to mllib and not ml version of spark.