Loading src/metrics.py +0 −35 Changes for src/metrics.py: 0 added lines, 35 removed lines. Original line number Diff line number Diff line Loading @@ -5,49 +5,14 @@ from sklearn.metrics import accuracy_score from sklearn.metrics import classification_report from sklearn.metrics import f1_score """ def predict(model,X): _, p_embedding,n_embedding,a_embedding = model.predict(X) #scores_p = np.dot(p_embedding,a_embedding.T) #scores_n = np.dot(p_embedding,a_embedding.T) scores_p = np.einsum("ij,ij -> i",p_embedding,a_embedding) scores_n = np.einsum("ij,ij -> i",n_embedding,a_embedding) return np.vstack((scores_p,scores_n)) """ def predict_nli(model, X): _, p_embedding, n_embedding= model.predict(X) scores_p = np.einsum("ij -> i", p_embedding) scores_n = np.einsum("ij -> i", n_embedding) return np.vstack((scores_p, scores_n)) """ def predict_nli_naive(model,X): scores = model.predict(X) s = [] for i in range(int(len(scores)/2)): s.append([scores[i],scores[i+int(len(scores)/2.00)]]) return np.array(s) def get_accuracy_naive(model,X,y): scores = predict_nli_naive(model,X) nodecision = [i for i in range(len(scores)) if abs(scores[i][0] - scores[i][1]) < 0.00001] correct = [i for i in range(len(scores)) if scores[i][0] > scores[i][1] and i not in nodecision] incorrect = [i for i in range(len(scores)) if scores[i][0] < scores[i][1] and i not in nodecision] n_c = len(correct)+len(nodecision)/2.00 n_i = len(incorrect) +len(nodecision)/2.00 return n_c/(n_c+n_i) def get_accuracy(model,X): scores = predict_nli(model,X).T nodecision = [i for i in range(len(scores)) if abs(scores[i][0] - scores[i][1]) < 0.00001] correct = [i for i in range(len(scores)) if scores[i][0] > scores[i][1] and i not in nodecision] incorrect = [i for i in range(len(scores)) if scores[i][0] < scores[i][1] and i not in nodecision] n_c = len(correct)+len(nodecision)/2.00 n_i = len(incorrect) +len(nodecision)/2.00 return n_c/(n_c+n_i) """ def get_classif_report(model,X,labels,bin_labels=["support","attack"]): if type(model) != list: scores = predict_nli(model,X).T Loading Loading
src/metrics.py +0 −35 Changes for src/metrics.py: 0 added lines, 35 removed lines. Original line number Diff line number Diff line Loading @@ -5,49 +5,14 @@ from sklearn.metrics import accuracy_score from sklearn.metrics import classification_report from sklearn.metrics import f1_score """ def predict(model,X): _, p_embedding,n_embedding,a_embedding = model.predict(X) #scores_p = np.dot(p_embedding,a_embedding.T) #scores_n = np.dot(p_embedding,a_embedding.T) scores_p = np.einsum("ij,ij -> i",p_embedding,a_embedding) scores_n = np.einsum("ij,ij -> i",n_embedding,a_embedding) return np.vstack((scores_p,scores_n)) """ def predict_nli(model, X): _, p_embedding, n_embedding= model.predict(X) scores_p = np.einsum("ij -> i", p_embedding) scores_n = np.einsum("ij -> i", n_embedding) return np.vstack((scores_p, scores_n)) """ def predict_nli_naive(model,X): scores = model.predict(X) s = [] for i in range(int(len(scores)/2)): s.append([scores[i],scores[i+int(len(scores)/2.00)]]) return np.array(s) def get_accuracy_naive(model,X,y): scores = predict_nli_naive(model,X) nodecision = [i for i in range(len(scores)) if abs(scores[i][0] - scores[i][1]) < 0.00001] correct = [i for i in range(len(scores)) if scores[i][0] > scores[i][1] and i not in nodecision] incorrect = [i for i in range(len(scores)) if scores[i][0] < scores[i][1] and i not in nodecision] n_c = len(correct)+len(nodecision)/2.00 n_i = len(incorrect) +len(nodecision)/2.00 return n_c/(n_c+n_i) def get_accuracy(model,X): scores = predict_nli(model,X).T nodecision = [i for i in range(len(scores)) if abs(scores[i][0] - scores[i][1]) < 0.00001] correct = [i for i in range(len(scores)) if scores[i][0] > scores[i][1] and i not in nodecision] incorrect = [i for i in range(len(scores)) if scores[i][0] < scores[i][1] and i not in nodecision] n_c = len(correct)+len(nodecision)/2.00 n_i = len(incorrect) +len(nodecision)/2.00 return n_c/(n_c+n_i) """ def get_classif_report(model,X,labels,bin_labels=["support","attack"]): if type(model) != list: scores = predict_nli(model,X).T Loading