In [1]:
%matplotlib inline

In [2]:
%run ~/git/cc/tools/dsp/notebooks/notebook_setup_dsp.py

In [3]:
from extractFeatures import *

In [4]:
cd /Users/billpierce/audio/


/Users/billpierce/audio

In [5]:
plt.rcParams['figure.figsize'] = (24.0, 16.0)

In [6]:
label_features_map = get_label_features_map('dataset3', upper_frequency=150, number_bins=12)

In [7]:
features_train, labels_train, features_test, labels_test = partition_dataset(label_features_map, train_fraction=0.8)


Samples: 200, train: 160/160, test: 40/40

In [8]:
plot_features_3d(features_train, labels_train)



In [9]:
plot_features_3d(features_test, labels_test)



In [10]:
from sklearn.tree import DecisionTreeClassifier
clf = DecisionTreeClassifier()
run_classifier(clf, features_train, labels_train, features_test, labels_test)


Actual: gear_53_25, Predicted: ['gear_53_23']
Actual: gear_53_25, Predicted: ['gear_53_15']
Actual: gear_53_25, Predicted: ['gear_53_23']
Actual: gear_53_25, Predicted: ['gear_53_21']
Actual: gear_53_23, Predicted: ['gear_53_23']
Actual: gear_53_23, Predicted: ['gear_53_23']
Actual: gear_53_23, Predicted: ['gear_53_23']
Actual: gear_53_23, Predicted: ['gear_53_25']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_23']
Actual: gear_53_17, Predicted: ['gear_53_17']
Actual: gear_53_17, Predicted: ['gear_53_17']
Actual: gear_53_17, Predicted: ['gear_53_21']
Actual: gear_53_14, Predicted: ['gear_53_13']
Actual: gear_53_14, Predicted: ['gear_53_14']
Actual: gear_53_14, Predicted: ['gear_53_13']
Actual: gear_53_14, Predicted: ['gear_53_14']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_12, Predicted: ['gear_53_13']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_14']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_13']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_13']
Success rate: 0.675

In [11]:
from sklearn import svm
clf = svm.SVC(kernel='linear')
run_classifier(clf, features_train, labels_train, features_test, labels_test)


Actual: gear_53_25, Predicted: ['gear_53_19']
Actual: gear_53_25, Predicted: ['gear_53_11']
Actual: gear_53_25, Predicted: ['gear_53_19']
Actual: gear_53_25, Predicted: ['gear_53_19']
Actual: gear_53_23, Predicted: ['gear_53_19']
Actual: gear_53_23, Predicted: ['gear_53_19']
Actual: gear_53_23, Predicted: ['gear_53_19']
Actual: gear_53_23, Predicted: ['gear_53_19']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_21']
Actual: gear_53_14, Predicted: ['gear_53_11']
Actual: gear_53_14, Predicted: ['gear_53_12']
Actual: gear_53_14, Predicted: ['gear_53_12']
Actual: gear_53_14, Predicted: ['gear_53_12']
Actual: gear_53_15, Predicted: ['gear_53_11']
Actual: gear_53_15, Predicted: ['gear_53_12']
Actual: gear_53_15, Predicted: ['gear_53_11']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_13, Predicted: ['gear_53_12']
Actual: gear_53_13, Predicted: ['gear_53_12']
Actual: gear_53_13, Predicted: ['gear_53_12']
Actual: gear_53_13, Predicted: ['gear_53_12']
Actual: gear_53_11, Predicted: ['gear_53_12']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_12']
Success rate: 0.375

In [12]:
from sklearn.neighbors import KNeighborsClassifier
knn = KNeighborsClassifier(n_neighbors=10)
run_classifier(knn, features_train, labels_train, features_test, labels_test)


Actual: gear_53_25, Predicted: ['gear_53_25']
Actual: gear_53_25, Predicted: ['gear_53_13']
Actual: gear_53_25, Predicted: ['gear_53_19']
Actual: gear_53_25, Predicted: ['gear_53_19']
Actual: gear_53_23, Predicted: ['gear_53_23']
Actual: gear_53_23, Predicted: ['gear_53_25']
Actual: gear_53_23, Predicted: ['gear_53_17']
Actual: gear_53_23, Predicted: ['gear_53_23']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_17']
Actual: gear_53_17, Predicted: ['gear_53_23']
Actual: gear_53_17, Predicted: ['gear_53_21']
Actual: gear_53_14, Predicted: ['gear_53_13']
Actual: gear_53_14, Predicted: ['gear_53_14']
Actual: gear_53_14, Predicted: ['gear_53_13']
Actual: gear_53_14, Predicted: ['gear_53_14']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_15, Predicted: ['gear_53_14']
Actual: gear_53_15, Predicted: ['gear_53_14']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_13, Predicted: ['gear_53_14']
Actual: gear_53_13, Predicted: ['gear_53_12']
Actual: gear_53_11, Predicted: ['gear_53_12']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_14']
Success rate: 0.6

In [13]:
from sklearn.neighbors.nearest_centroid import NearestCentroid
nc = NearestCentroid()
run_classifier(nc, features_train, labels_train, features_test, labels_test)


Actual: gear_53_25, Predicted: ['gear_53_25']
Actual: gear_53_25, Predicted: ['gear_53_11']
Actual: gear_53_25, Predicted: ['gear_53_19']
Actual: gear_53_25, Predicted: ['gear_53_19']
Actual: gear_53_23, Predicted: ['gear_53_23']
Actual: gear_53_23, Predicted: ['gear_53_23']
Actual: gear_53_23, Predicted: ['gear_53_25']
Actual: gear_53_23, Predicted: ['gear_53_25']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_21, Predicted: ['gear_53_21']
Actual: gear_53_19, Predicted: ['gear_53_23']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_19, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_19']
Actual: gear_53_17, Predicted: ['gear_53_17']
Actual: gear_53_17, Predicted: ['gear_53_23']
Actual: gear_53_17, Predicted: ['gear_53_21']
Actual: gear_53_14, Predicted: ['gear_53_11']
Actual: gear_53_14, Predicted: ['gear_53_14']
Actual: gear_53_14, Predicted: ['gear_53_13']
Actual: gear_53_14, Predicted: ['gear_53_14']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_15, Predicted: ['gear_53_14']
Actual: gear_53_15, Predicted: ['gear_53_14']
Actual: gear_53_15, Predicted: ['gear_53_15']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_12, Predicted: ['gear_53_12']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_13, Predicted: ['gear_53_12']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_13, Predicted: ['gear_53_13']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_11']
Actual: gear_53_11, Predicted: ['gear_53_15']
Success rate: 0.625

In [ ]: