Ejemplo n.º 1
0
    if len(sys.argv) != 6:
        logger.error("Invalid number of parameters.")
        exit(-1)

user_source = sys.argv[1]
item_source = sys.argv[2]
dest = sys.argv[3]
prediction_dest = sys.argv[4]
isUserGraph = int(sys.argv[5])

model = tf.keras.models.load_model(dest + 'model.h5')
user, item, rating = read_ratings('datasets/movielens/test2id.tsv')

if isUserGraph == 1:
    print("User is encoded with graph embedding")
    user_embeddings = read_graph_embeddings(user_source)
    item_embeddings = read_bert_embedding(item_source)
    X, y, dim_embeddings = matching_userGraph_itemBert(user, item, rating,
                                                       user_embeddings,
                                                       item_embeddings)
else:
    print("User is encoded with bert embedding")
    item_embeddings = read_graph_embeddings(item_source)
    user_embeddings = read_bert_embedding(user_source)
    X, y, dim_embeddings = matching_userBert_itemGraph(user, item, rating,
                                                       user_embeddings,
                                                       item_embeddings)

score = model.predict([X[:, 0], X[:, 1]])

print("Computing predictions...")
Ejemplo n.º 2
0
bert_user_source = sys.argv[1]
bert_item_source = sys.argv[2]
graph_source = sys.argv[3]
dest = sys.argv[4]
prediction_dest = sys.argv[5]

print(bert_user_source)
print(bert_item_source)
print(graph_source)
print(dest)
print(prediction_dest)

user, item, rating = read_ratings('datasets/movielens/train2id.tsv')

graph_embeddings = read_graph_embeddings(graph_source)
user_bert_embeddings = read_bert_embedding(bert_user_source)
item_bert_embeddings = read_bert_embedding(bert_item_source)

X_graph, X_bert, dim_graph, dim_bert, y = matching_Bert_Graph(
    user, item, rating, graph_embeddings, user_bert_embeddings,
    item_bert_embeddings)

model = run_model(X_graph,
                  X_bert,
                  dim_graph,
                  dim_bert,
                  y,
                  epochs=25,
                  batch_size=1536)
Ejemplo n.º 3
0
import pandas as pd
import csv
import numpy as np
import json
import tensorflow as tf
from tensorflow import keras
from numpy import loadtxt
from keras.models import Sequential
from keras.layers import Dense
from utilities.utils import read_ratings, read_graph_embeddings, read_bert_embedding, top_scores, matching_Bert_Graph_conf

graph_embeddings = read_graph_embeddings("embeddings/TRANSDembedding_768.json")
user_bert_embeddings = read_bert_embedding(
    "embeddings/UserProfiles_lastLayer.json")
item_bert_embeddings = read_bert_embedding(
    "embeddings/ITEM_embeddingslastlayer.json")

user, item, rating = read_ratings('datasets/dbbook/test2id.tsv')
X, y, dim_embeddings = matching_Bert_Graph_conf(user, item, rating,
                                                graph_embeddings,
                                                user_bert_embeddings,
                                                item_bert_embeddings)

model = tf.keras.models.load_model('results/model.h5')
score = model.predict([X[:, 0], X[:, 1], X[:, 2], X[:, 3]])

print("Computing predictions...")
score = score.reshape(1, -1)[0, :]
predictions = pd.DataFrame()
predictions['users'] = np.array(user) + 1
predictions['items'] = np.array(item) + 1
import pandas as pd
import csv
import numpy as np
import json
import tensorflow as tf
from tensorflow import keras
from numpy import loadtxt
from keras.models import Sequential
from keras.layers import Dense
from utilities.utils import read_ratings, read_graph_embeddings, read_bert_embedding, top_scores, matching_Bert_Graph_conf

graph_embeddings = read_graph_embeddings(
    "embeddings/DISTMULTembedding_768.json")
user_bert_embeddings = read_bert_embedding(
    "embeddings/UserProfiles_lastLayer.json")
item_bert_embeddings = read_bert_embedding(
    "embeddings/ITEM_embeddingslastlayer.json")

user, item, rating = read_ratings('datasets/dbbook/test2id.tsv')
X, y, dim_embeddings = matching_Bert_Graph_conf(user, item, rating,
                                                graph_embeddings,
                                                user_bert_embeddings,
                                                item_bert_embeddings)

model = tf.keras.models.load_model('results/model.h5')
score = model.predict([X[:, 0], X[:, 1], X[:, 2], X[:, 3]])

print("Computing predictions...")
score = score.reshape(1, -1)[0, :]
predictions = pd.DataFrame()
predictions['users'] = np.array(user) + 1
Ejemplo n.º 5
0
import tensorflow as tf
from tensorflow import keras
from numpy import loadtxt
from keras.models import Sequential
from keras.layers import Dense
import os
from utilities.utils import read_ratings, read_graph_embeddings, read_bert_embedding, matching_Bert_Graph
from models.model1Strategy import run_model

graph_embeddings = read_graph_embeddings("embeddings/HolEembedding_768.json")
user_bert_embeddings = read_bert_embedding(
    "embeddings/elmo_user_embeddings_nostopw_1024.json")
item_bert_embeddings = read_bert_embedding(
    "embeddings/elmo_embeddings_nostopw_1024.json")

user, item, rating = read_ratings('datasets/movielens/train2id.tsv')
X_graph, X_bert, dim_graph, dim_bert, y = matching_Bert_Graph(
    user, item, rating, graph_embeddings, user_bert_embeddings,
    item_bert_embeddings)
model = run_model(X_graph,
                  X_bert,
                  dim_graph,
                  dim_bert,
                  y,
                  epochs=25,
                  batch_size=1536)

#creates a HDF5 file 'model.h5'
model.save('results/model.h5')
Ejemplo n.º 6
0
import tensorflow as tf
from tensorflow import keras
from numpy import loadtxt
from keras.models import Sequential
from keras.layers import Dense
import os
from utilities.utils import read_graph_embeddings, read_ratings, matching_graph_emb_id
from models.model1 import run_model

ent_embeddings = read_graph_embeddings('embeddings/TRANSEembedding_768.json')
user, item, rating = read_ratings('datasets/dbbook/train2id.tsv')
X, y, dim_embeddings = matching_graph_emb_id(user, item, rating,
                                             ent_embeddings)

print("Embedding dimension: ", dim_embeddings)
model = run_model(X, y, dim_embeddings, epochs=25, batch_size=512)

# creates a HDF5 file 'model.h5'
model.save('results/model.h5')
import sys

if __name__ == "__main__":
    logging.basicConfig(format="%(message)s", level=logging.INFO)
    logger = logging.getLogger(__name__)
    if len(sys.argv) != 4:
        logger.error("Invalid number of parameters.")
        exit(-1)

source = sys.argv[1]
dest = sys.argv[2]
prediction_dest = sys.argv[3]

model = tf.keras.models.load_model(dest + 'model.h5')

ent_embeddings = read_graph_embeddings(source)
user, item, rating = read_ratings('datasets/movielens/test2id.tsv')
X, y, dim_embeddings = matching_graph_emb_id(user, item, rating,
                                             ent_embeddings)

score = model.predict([X[:, 0], X[:, 1]])

print("Computing predictions...")
score = score.reshape(1, -1)[0, :]
predictions = pd.DataFrame()
predictions['users'] = np.array(user) + 1
predictions['items'] = np.array(item) + 1
predictions['scores'] = score

predictions = predictions.sort_values(by=['users', 'scores'],
                                      ascending=[True, False])