Exemple #1
0
############################
## Rohini Pandhi          ##          
## Homework Assignment 1  ##
## Run File               ##
## 01/09/2014             ##
############################


# Imports
import argparse
from hw1 import load_iris_data, cross_validate, knn, nb

# Load Iris dataset
(features, species, species_names) = load_iris_data()

# Argument parse
parser = argparse.ArgumentParser(description='Select KNN or Naive Bayes Classifier')
parser.add_argument('-c', '--classifier', help='a classifier type: KNN or NB (if none selected, default will run both', required=False)
args = parser.parse_args()

try: 
  if (args.classifier.upper() == "KNN"): 
    classifier_list = [("KNN",knn)]
  elif (args.classifier.upper() == "NB"):
    classifier_list = [("Naive Bayes",nb)]
except:
  classifier_list = [("KNN",knn), ("Naive Bayes",nb)] #using imported functions above

# Loop through each tuple of the classifier list
for (classifier_string, classifier_function) in classifier_list:
  
Exemple #2
0
from hw1 import load_iris_data, cross_validate, knn, nb
# Imports functions and opject definitions from hw1.py

(iris_petal_measurements, iris_classes, iris_classnames) = load_iris_data()

classfiers_to_cv = [("kNN", knn), ("Naive Bayes", nb)]

for (c_label, classifer) in classfiers_to_cv:

    print
    print "---> %s <---" % c_label

    best_k = 0
    best_cv_a = 0
    foldsizes = [2, 3, 5, 10, 15, 30, 50, 75, 150]
    #These fold sizes are evenly divisible into the dataset intentionally

    for k_f in foldsizes:
        cv_a = cross_validate(iris_petal_measurements,
                              iris_classes,
                              classifer,
                              k_fold=k_f)
        if cv_a > best_cv_a:
            best_cv_a = cv_a
            best_k = k_f

        print "foldsize <<%s>> :: test accuracy <<%s>>" % (k_f, cv_a)

    print "Highest Accuracy: fold <<%s>> :: <<%s>>" % (best_k, best_cv_a)
Exemple #3
0
############################
## Rohini Pandhi          ##
## Homework Assignment 1  ##
## Run File               ##
## 01/09/2014             ##
############################

# Imports
import argparse
from hw1 import load_iris_data, cross_validate, knn, nb

# Load Iris dataset
(features, species, species_names) = load_iris_data()

# Argument parse
parser = argparse.ArgumentParser(
    description='Select KNN or Naive Bayes Classifier')
parser.add_argument(
    '-c',
    '--classifier',
    help=
    'a classifier type: KNN or NB (if none selected, default will run both',
    required=False)
args = parser.parse_args()

try:
    if (args.classifier.upper() == "KNN"):
        classifier_list = [("KNN", knn)]
    elif (args.classifier.upper() == "NB"):
        classifier_list = [("Naive Bayes", nb)]
except:
Exemple #4
0
from hw1 import load_iris_data, cross_validate, knn, nb

(XX,yy,y)=load_iris_data()

classfiers_to_cv=[("kNN",knn),("Naive Bayes",nb)]

for (c_label, classifer) in classfiers_to_cv :

    print
    print "---> %s <---" % c_label

    best_k=0
    best_cv_a=0
    for k_f in [2,3,5,10,15,30,50,75,150] :
       cv_a = cross_validate(XX, yy, classifer, k_fold=k_f)
       if cv_a >  best_cv_a :
            best_cv_a=cv_a
            best_k=k_f

       print "fold <<%s>> :: acc <<%s>>" % (k_f, cv_a)


    print "Highest Accuracy: fold <<%s>> :: <<%s>>" % (best_k, best_cv_a)

Exemple #5
0
from hw1 import load_iris_data, cross_validate, knn, nb
# Imports functions and opject definitions from hw1.py

(iris_petal_measurements,iris_classes,iris_classnames)=load_iris_data()

classfiers_to_cv=[("kNN",knn),("Naive Bayes",nb)]

for (c_label, classifer) in classfiers_to_cv :

    print
    print "---> %s <---" % c_label

    best_k=0
    best_cv_a=0
    foldsizes=[2,3,5,10,15,30,50,75,150] 
    #These fold sizes are evenly divisible into the dataset intentionally

    for k_f in foldsizes :
       cv_a = cross_validate(iris_petal_measurements, iris_classes, classifer, k_fold=k_f)
       if cv_a >  best_cv_a :
            best_cv_a=cv_a
            best_k=k_f

       print "foldsize <<%s>> :: test accuracy <<%s>>" % (k_f, cv_a)


    print "Highest Accuracy: fold <<%s>> :: <<%s>>" % (best_k, best_cv_a)