Пример #1
0
    def test_only_1_categorical(self, net):
        # Note: afm_nets needs embedding array, and at least 2 elements
        # Note: opnn_nets,ipnn_nets,pnn_nets, needs at least 2 embedding to build `layers.InnerProduct`
        # Note: dnn_nets,cross_dnn_nets,cross_nets,dcn_nets, does not using embedding
        # Note: fibi_nets,fibi_dnn_nets  needs at least 2 embedding because of `BilinearInteraction`
        df = dsutils.load_movielens()
        y = df['rating'].values.astype('float32')
        X = df[['movie_id']]

        conf = deeptable.ModelConfig(nets=[net],
                                     task=consts.TASK_REGRESSION,
                                     categorical_columns=["movie_id"],
                                     metrics=['mse'],
                                     fixed_embedding_dim=True,
                                     embeddings_output_dim=4,
                                     apply_gbm_features=False,
                                     apply_class_weight=True,
                                     earlystopping_patience=5)

        dt = deeptable.DeepTable(config=conf)

        model, history = dt.fit(X,
                                y,
                                validation_split=0.2,
                                epochs=10,
                                batch_size=32)
        assert model
Пример #2
0
    def test_var_len_encoder(self):
        df = dd.from_pandas(dsutils.load_movielens(), npartitions=2)

        config = deeptable.ModelConfig(nets=['dnn_nets'],
                                       task=consts.TASK_REGRESSION,
                                       categorical_columns=["movie_id", "user_id", "gender", "occupation", "zip",
                                                            "title", "age"],
                                       metrics=['mse'],
                                       fixed_embedding_dim=True,
                                       embeddings_output_dim=4,
                                       apply_gbm_features=False,
                                       apply_class_weight=True,
                                       earlystopping_patience=5,
                                       var_len_categorical_columns=[('genres', "|", "max")])

        self.run_dt(config, df=df, target='rating')
Пример #3
0
 def setup_class(cls):
     cls.df = dsutils.load_movielens().drop(['timestamp', "title"], axis=1)
Пример #4
0
 def setup_class(cls):
     cls.df_bank = dsutils.load_bank().sample(frac=0.01)
     cls.df_movielens = dsutils.load_movielens()