EMBEDDING_SIZE = 50
class RecommenderNet(keras.Model):
def init(self, num_users, num_movies, embedding_size, **kwargs):
super(RecommenderNet, self).init(**kwargs)
self.num_users = num_users
self.num_movies = num_movies
self.embedding_size = embedding_size
self.user_embedding = layers.Embedding(
num_users,
embedding_size,
embeddings_initializer=”he_normal”,
embeddings_regularizer=keras.regularizers.l2(1e-6),
)
self.user_bias = layers.Embedding(num_users, 1)
self.movie_embedding = layers.Embedding(
num_movies,
embedding_size,
embeddings_initializer=”he_normal”,
embeddings_regularizer=keras.regularizers.l2(1e-6)
)
self.movie_bias = layers.Embedding(num_movies, 1)
def call(self, inputs):
user_vector = self.user_embedding(inputs[:, 0])
user_bias = self.user_bias(inputs[:, 0])
movie_vector = self.movie_embedding(inputs[:, 1])
movie_bias = self.movie_bias(inputs[:, 1])
dot_user_movie = tf.tensordot(user_vector, movie_vector, 2)
# Add all the components (including bias)
x = dot_user_movie + user_bias + movie_bias
# The sigmoid activation forces the rating to be between 0 and 11
return tf.nn.sigmoid(x)
model = RecommenderNet(num_users, num_movies, EMBEDDING_SIZE)
model.compile(
loss=tf.keras.losses.BinaryCrossentropy(), optimizer=keras.optimizers.Adam(lr=0.001)
)
model.save_weight(‘model.h5’)
I try load model this for application but error 0 layer and 4 layer.
I hope anyone help me, use this model for building demo appliction
Cuong Pham Quoc is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.