Пример #1
0
        logger.error("Invalid number of parameters.")
        exit(-1)

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,
Пример #2
0
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
predictions['scores'] = score