Spaces:
Build error
Build error
File size: 1,466 Bytes
6c06964 c83ef54 c647e79 61da52c 3d05645 6c06964 bbc37ba 6c06964 d74a713 6c06964 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
import gradio as gr
import pickle
from fastai.collab import *
from fastai.tabular.all import *
import pandas
import pandas.core.indexes.numeric
#__all__ = ['NumberClass', 'learn', 'classify_image', 'categories', 'image', 'label', 'examples', 'intf']
class DotProductBias(Module):
def __init__(self, n_users, n_animes, n_factors, y_range=(0,10.5)):
self.user_factors = Embedding(n_users, n_factors)
self.user_bias = Embedding(n_users, 1)
self.anime_factors = Embedding(n_animes, n_factors)
self.anime_bias = Embedding(n_animes, 1)
self.y_range = y_range
def forward(self, x):
users = self.user_factors(x[:,0])
animes = self.anime_factors(x[:,1])
res = (users * animes).sum(dim=1, keepdim=True)
res += self.user_bias(x[:,0]) + self.anime_bias(x[:,1])
return sigmoid_range(res, *self.y_range)
def get_y(r):
result = learn.forward(r)
return result[0][0]
class CustomUnpickler(pickle.Unpickler):
def persistent_load(self, persid):
return None
with open('CollaborativeFiltering.pkl', 'rb') as f:
custom_unpickler = CustomUnpickler(f)
learn = custom_unpickler.load()
label = gr.outputs.Label()
usr = gr.inputs.Number(label = 'Usuário')
anime = gr.inputs.Number(label = 'Anime')
r = tensor([[usr, anime]])
inputs = [r]
output = gr.outputs.Textbox()
intf = gr.Interface(fn=get_y, inputs="r", outputs=output)
intf.launch(inline=False) |