import numpy as np import funs from scipy import sparse from sklearn.svm import LinearSVC from sklearn.metrics import hinge_loss np.random.seed(21) P2P_data = funs.P_data() d = 1000 P2P_data.y, P2P_data.weight = np.sign(np.random.randn(d)), np.abs( np.random.randn(d, d)), P2P_data.id = np.array(range(len(P2P_data.y))) p, d = 10, P2P_data.weight.shape[0] ## construct weight matrix echo = funs.GEC(p=p) P = sparse.eye(d) - P2P_data.weight P = np.dot(P.T, P) ## compute max eigen-value to determine the step size sigma = np.max(np.linalg.eigvals(P)) ## tensorflow import tensorflow.compat.v1 as tf tf.disable_v2_behavior() train, valid, test = P2P_data.split_data() ## tunning parameters lam1, lam2, delta = .1, .1, .1
from sklearn.preprocessing import normalize from scipy import sparse import random from sklearn import preprocessing from main_EL2_genX import EL_genX from gen_weight import load_weight p, d = 300, 2000 # weight = sparse.load_npz('weight_matrix.npz') embedding_method = 'googlenews' y = np.load('googlenew_y.npy') input_data = sparse.load_npz('input_X.npz') input_data = normalize(input_data, axis=1, norm='l1') # d = len(dict_emb) senti_data = funs.P_data() senti_data.data = input_data senti_data.id = np.arange(len(y)) senti_data.y = y senti_data.weight = load_weight(a=6, b=14, c=7, d=23) senti_data.weight = normalize(senti_data.weight, axis=1, norm='l1') P = sparse.eye(d) - senti_data.weight P = P.T.dot(P) echo_perf = [] for j in range(20): train, valid, test = senti_data.split_data() echo_cv = [] word_base_mat, acc_valid_orig, acc_test_orig = EL_genX(train, valid,