1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import numpy as np
- from data.loader_ac import DataLoader
- import libsvm.svmutil as svm
- def train_save():
- loader = DataLoader()
- data = [{i + 1: line[i] for i in range(len(line))} for line in loader.have]
- tags = np.ones(len(data)).tolist()
- pro = svm.svm_problem(tags, data)
- pra = svm.svm_parameter("-s 2 -g 2.57e-6 -n 7.1e-3")
- model = svm.svm_train(pro, pra)
- svm.svm_save_model("m2c/real.model", model)
- # predict test
- data = [{i + 1: line[i] for i in range(len(line))} for line in loader.test]
- tags = np.ones(len(data)).tolist()
- svm.svm_predict(y=tags, x=data, m=model)
- # predict none
- data = [{i + 1: line[i] for i in range(len(line))} for line in loader.none]
- tags = (np.ones(len(data)) * -1).tolist()
- svm.svm_predict(y=tags, x=data, m=model)
- def load_test():
- np.random.seed(5)
- model = svm.svm_load_model("m2c/real.model")
- loader = DataLoader("data/csv/both") # "csv/test"
- data = [{i + 1: line[i] for i in range(len(line))} for line in loader.have]
- tags = np.ones(len(data)).tolist()
- svm.svm_predict(y=tags, x=data, m=model)
- data = [{i + 1: line[i] for i in range(len(line))} for line in loader.test]
- tags = np.ones(len(data)).tolist()
- svm.svm_predict(y=tags, x=data, m=model)
- data = [{i + 1: line[i] for i in range(len(line))} for line in loader.none]
- tags = (np.ones(len(data)) * -1).tolist()
- svm.svm_predict(y=tags, x=data, m=model)
- if __name__ == "__main__":
- load_test()
|