Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import tensorflow as tf
- keras = tf.keras
- embed_size = 50
- user_inp = keras.layers.Input(name="user", shape=(1,))
- news_inp = keras.layers.Input(name="news", shape=(1,))
- user_embed = keras.layers.Embedding(name="user_embed",
- input_dim=len(user_id_to_num),
- output_dim=embed_size)(user_inp)
- news_embed = keras.layers.Embedding(name="news_embed",
- input_dim=len(news_id_to_num),
- output_dim=embed_size)(news_inp)
- # Merge the layers with a dot product along the second axis
- merged = keras.layers.Dot(name="merged", normalize=True,
- axes=2)([user_embed, news_embed])
- merged = keras.layers.Reshape(target_shape=(1,))(merged)
- out = keras.layers.Dense(1, activation="sigmoid")(merged)
- model = keras.Model(inputs=[user_inp, news_inp], outputs=out)
- model.compile(optimizer=keras.optimizers.Adam(), loss=keras.losses.mean_squared_error,
- metrics=["accuracy"])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement