Advertisement
neo01124

Train.py

Jun 7th, 2013
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.06 KB | None | 0 0
  1. #!/usr/bin/python
  2. #import cgitb
  3. import numpy as np
  4. import scipy
  5. #import arff
  6. import os
  7. #from matplotlib import pyplot as plt
  8. from sklearn.svm import NuSVR
  9. from sklearn.preprocessing import StandardScaler
  10. from scipy import sparse
  11. from sklearn.cross_validation import train_test_split
  12. from sklearn.grid_search import GridSearchCV
  13. from time import time,clock
  14. from time import gmtime, strftime
  15. import shlex
  16.  
  17. barr = ''
  18. fname = './bruno/2_mid_pitch/TestFeatures/Vowels_To_UnvoicedFricatives.arff'
  19. f = open(fname,'r')
  20. lines = f.readlines()[42:]
  21. f.close()      
  22. floats = []
  23. for line in lines:    
  24.     floats.append(shlex.split(line))
  25. array = np.asarray(floats)
  26. for (x,y), value in np.ndenumerate(array):
  27.     if value == 'NaN':
  28.         array[x][y] = 0;
  29. array = array.astype(np.float)
  30. print 'Data size'
  31. print np.shape(array)
  32. scale = StandardScaler()
  33. array = scale.fit_transform(array)
  34. traiY = array[:,38]
  35. traiX = np.delete(array, [36,37,38,39],1)
  36. trainY, realY, trainX, testX = train_test_split(traiY,traiX,test_size=0.8,random_state=42)
  37. Cost = np.power(2,np.arange(1,12));
  38. g = [0.5,0.25,0.125,0.0625,0.03125,0.015625,0.0078125,0.00390625,0.001953125,0.0009765625,0.00048828125,0.00048828125]
  39. print '\nCost values'
  40. print Cost
  41. print '\ngamma values'
  42. print g
  43. scorebest = 0
  44. Cbest = 0
  45. gammabest = 0
  46. model_to_set = NuSVR(C=128, cache_size=6144, coef0=0.0, degree=3, gamma=0.0625, kernel='rbf',
  47.    max_iter=-1, nu=0.5, probability=False, shrinking=True, tol=0.001,
  48.    verbose=True)
  49. parameters = {'C':Cost,'gamma':g}#,'nu':[0.5],'kernel':['rbf'],'verbose':[True]}
  50. #k =[0.5,1]#2,5,7,8];
  51.  
  52. trainY, realY, trainX, testX = train_test_split(traiY,traiX,test_size=(1-(0.1*33)),random_state=42)
  53.  
  54. start = time()
  55. print '\n training start time'
  56. print strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime())
  57. model_to_set.fit(trainX,trainY)
  58. print '\n training end time'
  59. print strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime())
  60. elapsed = (time() - start)
  61. print elapsed/60
  62.  
  63. score1 = model_to_set.score(trainX,trainY)
  64. print score1
  65. score2 = model_to_set.score(testX,realY)
  66. print score2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement