prediction.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. from sklearn.externals import joblib
  2. import numpy as np
  3. import pandas as pd
  4. from sklearn.metrics import accuracy_score
  5. import sys, os, getopt
  6. output_model_folder = './saved_models/'
  7. def main():
  8. if len(sys.argv) <= 1:
  9. print('Run with default parameters...')
  10. print('python smv_model_train.py --data xxxx.csv --model xxxx.joblib --output xxxx')
  11. sys.exit(2)
  12. try:
  13. opts, args = getopt.getopt(sys.argv[1:], "hd:o", ["help=", "data=", "model=", "output="])
  14. except getopt.GetoptError:
  15. # print help information and exit:
  16. print('python smv_model_train.py --data xxxx.csv --model xxxx.joblib --output xxxx')
  17. sys.exit(2)
  18. for o, a in opts:
  19. if o == "-h":
  20. print('python smv_model_train.py --data xxxx.csv --model xxxx.joblib --output xxxx')
  21. sys.exit()
  22. elif o in ("-d", "--data"):
  23. p_data_file = a
  24. elif o in ("-m", "--model"):
  25. p_model_file = a
  26. elif o in ("-o", "--output"):
  27. p_output = a
  28. else:
  29. assert False, "unhandled option"
  30. if not os.path.exists(output_model_folder):
  31. os.makedirs(output_model_folder)
  32. dataset = pd.read_csv(p_data_file, header=None, sep=";")
  33. y_dataset = dataset.ix[:,0]
  34. x_dataset = dataset.ix[:,1:]
  35. model = joblib.load(p_model_file)
  36. y_pred = model.predict(x_dataset)
  37. print("Accuracy found %s " % str(accuracy_score(y_dataset, y_pred)))
  38. if __name__== "__main__":
  39. main()