Beispiel #1
0
    def instantiate(self, rank, version, userFeatures, productFeatures):
        """
        Instantiate an ALS `Model` from the model store data

        :param rank: ALS rank
        :param version: `Model` version
        :param userFeatures: A list of user features
        :param productFeatures: A list of product features
        :return: A `Model` instance
        """

        jvm = self._sc._gateway.jvm
        als_model = jvm.io.radanalytics.als.ALSSerializer.instantiateModel(
            rank, userFeatures, productFeatures)
        wrapper = jvm.org.apache.spark.mllib.api.python.MatrixFactorizationModelWrapper(
            als_model)
        model = Model(sc=self._sc,
                      als_model=MatrixFactorizationModel(wrapper),
                      version=version,
                      data_version=1)

        return model