Advertisement
Guest User

Untitled

a guest
Nov 21st, 2018
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.07 KB | None | 0 0
  1. #4a
  2. from sklearn import datasets
  3. from sklearn.linear_model import LogisticRegression
  4. from sklearn.model_selection import train_test_split
  5. iris=datasets.load_iris()
  6. X=iris.data
  7. y=iris.target
  8. #4b
  9. X_train,X_test,y_train,y_test=train_test_split(X,y, random_state=1000)
  10. #4c
  11. ovr0Classifier=np.ones_like(y)
  12. for i in range(len(y)):
  13.     if(y[i]==1 or y[i]==2): ovr0Classifier[i]=-1
  14. #4d    
  15. ovr1Classifier=np.ones_like(y)
  16. for i in range(len(y)):
  17.     if(y[i]==0 or y[i]==2): ovr1Classifier[i]=-1
  18.  
  19. ovr2Classifier=np.ones_like(y)
  20. for i in range(len(y)):
  21.     if(y[i]==0 or y[i]==1): ovr2Classifier[i]=-1
  22. #4e
  23. import pandas as pd
  24. y_train0Fixed=np.array(y_train, copy=True)
  25. y_train0Fixed=pd.DataFrame(ovr0Classifier)
  26. y_train1Fixed=np.array(y_train,copy=True)
  27. y_train1Fixed=pd.DataFrame(ovr1Classifier)
  28. y_train2Fixed=np.array(y_train,copy=True)
  29. y_train2Fixed=pd.DataFrame(ovr2Classifier)
  30.  
  31. lr0Classifier=LogisticRegression(solver='lbfgs')
  32. lr0Classifier.fit(X_train,y_train0Fixed.values.ravel())
  33. lr1Classifier=LogisticRegression(solver='lbfgs')
  34. lr1Classifier.fit(X_train,ovr1Classifier)
  35. lr2Classifier=LogisticRegression(solver='lbfgs')
  36. lr2Classifier.fit(X_train,ovr2Classifier)
  37. def ovrRes(ovr0Classifier, ovr1Classifier, ovr2Classifier,testArr):
  38.     ovr0ClassifierProba=lr0Classifier.predict_proba(testArr)[:,1]
  39.     ovr1ClassifierProba=lr1Classifier.predict_proba(testArr)[:,1]
  40.     ovr2ClassifierProba=lr2Classifier.predict_proba(testArr)[:,1]
  41.    
  42.     finRes=[]
  43.     for i in range(len(testArr)):
  44.         maxOfClassifiers=max(ovr0ClassifierProba,ovr1ClassifierProba,ovr2ClassifierProba)
  45.         if(maxOfClassifiers==ovr0ClassifierProba):
  46.             rightClassifier=0;
  47.         elif(maxOfClassifiers==ovr1ClassifierProba):
  48.             rightClassifier=1;
  49.         elif(maxOfClassifiers==ovr2ClassifierProba):
  50.             rightClassifier=2;
  51.         finRes.insert(i,rightClassifier)
  52.     return finRes
  53. #4f
  54.  
  55. from sklearn.metrics import confusion_matrix
  56. y_pred=ovrRes(ovr0Classifier, ovr1Classifier, ovr2Classifier,X_test)
  57. confusionMatrix=confusion_matrix(y_test,y_pred)
  58. confusionMatrix
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement