Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -1,6 +1,7 @@
|
|
1 |
import streamlit as st
|
2 |
import spacy
|
3 |
import torch
|
|
|
4 |
from transformers import BertTokenizer, BertModel
|
5 |
from transformers.models.bert.modeling_bert import BertForMaskedLM
|
6 |
|
@@ -142,16 +143,38 @@ def processSpatialEntities(review, nlp):
|
|
142 |
return processed_embedding
|
143 |
|
144 |
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
155 |
|
156 |
|
157 |
# Function to read reviews from a text file
|
|
|
1 |
import streamlit as st
|
2 |
import spacy
|
3 |
import torch
|
4 |
+
import torch.nn as nn
|
5 |
from transformers import BertTokenizer, BertModel
|
6 |
from transformers.models.bert.modeling_bert import BertForMaskedLM
|
7 |
|
|
|
143 |
return processed_embedding
|
144 |
|
145 |
|
146 |
+
#Initialize discriminator module
|
147 |
+
class Discriminator(nn.Module):
|
148 |
+
def __init__(self, input_size=512, hidden_sizes=[512], num_labels=2, dropout_rate=0.1):
|
149 |
+
super(Discriminator, self).__init__()
|
150 |
+
self.input_dropout = nn.Dropout(p=dropout_rate)
|
151 |
+
layers = []
|
152 |
+
hidden_sizes = [input_size] + hidden_sizes
|
153 |
+
for i in range(len(hidden_sizes)-1):
|
154 |
+
layers.extend([nn.Linear(hidden_sizes[i], hidden_sizes[i+1]), nn.LeakyReLU(0.2, inplace=True), nn.Dropout(dropout_rate)])
|
155 |
+
|
156 |
+
self.layers = nn.Sequential(*layers) #per il flatten
|
157 |
+
self.logit = nn.Linear(hidden_sizes[-1],num_labels+1) # +1 for the probability of this sample being fake/real.
|
158 |
+
self.softmax = nn.Softmax(dim=-1)
|
159 |
+
|
160 |
+
def forward(self, input_rep):
|
161 |
+
input_rep = self.input_dropout(input_rep)
|
162 |
+
last_rep = self.layers(input_rep)
|
163 |
+
logits = self.logit(last_rep)
|
164 |
+
probs = self.softmax(logits)
|
165 |
+
return last_rep, logits, probs
|
166 |
+
|
167 |
+
dConfig = AutoConfig.from_pretrained("bert-base-uncased")
|
168 |
+
hidden_size = int(dConfig.hidden_size)
|
169 |
+
num_hidden_layers_d = 2;
|
170 |
+
hidden_levels_d = [hidden_size for i in range(0, num_hidden_layers_d)]
|
171 |
+
label_list = ["1", "0"]
|
172 |
+
label_list.append('UNL')
|
173 |
+
|
174 |
+
discriminator = Discriminator(input_size=hidden_size*2, hidden_sizes=hidden_levels_d, num_labels=len(label_list), dropout_rate=out_dropout_rate).to(device)
|
175 |
+
discriminator_weights = ('data/datasets/discriminator_weights.pth')
|
176 |
+
discriminator.load_state_dict(torch.load(discriminator_weights))
|
177 |
+
discriminator.eval()
|
178 |
|
179 |
|
180 |
# Function to read reviews from a text file
|