Goal: Test if we have an edge with law training / testing ratios, i.e. when there is not much training data. Without graph.
Conclusion: Same trend as 13g_ratio_small_graph
.
Observations:
Pname = 'test_size'
Pvalues = [.90, .91, .92, .93, .94, .95, .96, .97, .98, .99]
# Regenerate the graph or the features at each iteration.
regen_graph = False
regen_features = False
regen_baseline = True
p = {}
# Preprocessing.
# Graph.
p['data_scaling_graph'] = 'features'
p['K'] = 10 + 1 # 5 to 10 + 1 for self-reference
p['dm'] = 'euclidean'
p['Csigma'] = 1
p['diag'] = True
p['laplacian'] = 'normalized'
# Feature extraction.
p['m'] = 128 # 64, 128, 512
p['ls'] = 1
p['ld'] = 10
p['le'] = None
p['lg'] = 100
# Classification.
p['scale'] = None
p['Nvectors'] = 6
p['svm_type'] = 'C'
p['kernel'] = 'linear'
p['C'] = 1
p['nu'] = 0.5
p['majority_voting'] = False
# HDF5 data stores.
p['folder'] = 'data'
p['filename_gtzan'] = 'gtzan.hdf5'
p['filename_audio'] = 'audio.hdf5'
p['filename_graph'] = 'graph.hdf5'
p['filename_features'] = 'features.hdf5'
# Dataset (10,100,644 | 5,100,149 | 2,10,644).
p['Ngenres'] = 5
p['Nclips'] = 100
p['Nframes'] = 149
# Added white noise.
p['noise_std'] = 0
# Graph.
p['tol'] = 1e-5
# Feature extraction.
p['rtol'] = 1e-5 # 1e-3, 1e-5, 1e-7
p['N_inner'] = 500
p['N_outer'] = 50
# Classification.
p['test_size'] = 0.1
p['Ncv'] = 20
p['dataset_classification'] = 'Z'
import numpy as np
import time
texperiment = time.time()
# Result dictionary.
res = ['accuracy', 'accuracy_std']
res += ['sparsity', 'atoms']
res += ['objective_g', 'objective_h', 'objective_i', 'objective_j']
res += ['time_features', 'iterations_inner', 'iterations_outer']
res = dict.fromkeys(res)
for key in res.keys():
res[key] = []
def separator(name, parameter=False):
if parameter:
name += ', {} = {}'.format(Pname, p[Pname])
dashes = 20 * '-'
print('\n {} {} {} \n'.format(dashes, name, dashes))
# Fair comparison when tuning parameters.
# Randomnesses: dictionary initialization, training and testing sets.
np.random.seed(1)
#%run gtzan.ipynb
#%run audio_preprocessing.ipynb
if not regen_graph:
separator('Graph')
%run audio_graph.ipynb
if not regen_features:
separator('Features')
%run audio_features.ipynb
# Hyper-parameter under test.
for p[Pname] in Pvalues:
if regen_graph:
separator('Graph', True)
%run audio_graph.ipynb
if regen_features:
separator('Features', True)
p['filename_features'] = 'features_{}_{}.hdf5'.format(Pname, p[Pname])
%run audio_features.ipynb
separator('Classification', True)
%run audio_classification.ipynb
# Collect results.
for key in res:
res[key].append(globals()[key])
# Baseline, i.e. classification with spectrograms.
p['dataset_classification'] = 'X'
p['scale'] = 'minmax' # Todo: should be done in pre-processing.
if regen_baseline:
res['baseline'] = []
res['baseline_std'] = []
for p[Pname] in Pvalues:
separator('Baseline', True)
%run audio_classification.ipynb
res['baseline'].append(accuracy)
res['baseline_std'].append(accuracy_std)
else:
separator('Baseline')
%run audio_classification.ipynb
res['baseline'] = len(Pvalues) * [accuracy]
res['baseline_std'] = accuracy_std
-------------------- Graph -------------------- Data: (149000, 96), float32 Elapsed time: 166.05 seconds All self-referenced in the first column: True dist in [0.0, 1.49501895905] w in [0.00475493026897, 1.0] Ones on the diagonal: 149000 (over 149000) assert: True W in [0.0, 1.0] Datasets: L_data : (2394744,), float32 L_indices : (2394744,), int32 L_indptr : (149001,) , int32 L_shape : (2,) , int64 W_data : (2394744,), float32 W_indices : (2394744,), int32 W_indptr : (149001,) , int32 W_shape : (2,) , int64 Attributes: K = 11 dm = euclidean Csigma = 1 diag = True laplacian = normalized Overall time: 175.25 seconds -------------------- Features -------------------- Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: Xa: (10, 100, 644, 2, 1024) , float32 Xs: (10, 100, 644, 2, 96) , float32 Full dataset: size: N=1,288,000 x n=96 -> 123,648,000 floats dim: 123,648 features per clip shape: (10, 100, 644, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Data: (149000, 96), float32 Attributes: K = 11 dm = euclidean Csigma = 1 diag = True laplacian = normalized Datasets: L_data : (2394744,), float32 L_indices : (2394744,), int32 L_indptr : (149001,) , int32 L_shape : (2,) , int64 W_data : (2394744,), float32 W_indices : (2394744,), int32 W_indptr : (149001,) , int32 W_shape : (2,) , int64 Size X: 13.6 M --> 54.6 MiB Size Z: 18.2 M --> 72.8 MiB Size D: 12.0 k --> 48.0 kiB Size E: 12.0 k --> 48.0 kiB Elapsed time: 3211 seconds
Inner loop: 1509 iterations g(Z) = ||X-DZ||_2^2 = 6.973121e+04 rdiff: 0.000128632890065 i(Z) = ||Z||_1 = 5.742300e+04 j(Z) = tr(Z^TLZ) = 8.560659e+03
Global objective: 1.357149e+05
Outer loop: 8 iterations Z in [-0.147658959031, 1.06963002682] Sparsity of Z: 3,528,618 non-zero entries out of 19,072,000 entries, i.e. 18.5%.
D in [-0.0353719033301, 0.907830774784] d in [0.999999582767, 1.00000035763] Constraints on D: True
Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Overall time: 3218 seconds -------------------- Classification, test_size = 0.9 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 600.0 training, 5400.0 testing 66 (+/- 0.6) <- [66 66 65 65 66 65 66 65 66 66] 67 (+/- 0.7) <- [65 67 66 67 66 67 67 66 66 66] 67 (+/- 0.8) <- [67 65 66 65 66 66 67 66 66 66] 67 (+/- 0.5) <- [66 66 67 67 68 66 66 67 66 66] 67 (+/- 0.6) <- [66 66 67 66 66 68 67 66 66 66] 67 (+/- 0.9) <- [66 65 66 65 68 67 65 65 67 67] 67 (+/- 0.7) <- [67 66 67 67 66 67 66 68 66 66] 66 (+/- 0.8) <- [65 65 65 65 66 65 67 65 67 66] 67 (+/- 0.7) <- [67 65 66 67 65 66 66 66 67 66] 66 (+/- 1.0) <- [65 65 67 66 67 67 68 65 64 66] 67 (+/- 0.8) <- [67 68 67 66 66 66 66 65 67 66] 67 (+/- 0.9) <- [65 68 67 66 66 68 67 66 67 68] 66 (+/- 1.1) <- [65 66 68 66 67 66 66 66 65 63] 66 (+/- 0.9) <- [66 67 66 67 65 66 67 68 64 65] 67 (+/- 0.8) <- [66 66 66 66 66 67 67 65 67 67] 67 (+/- 1.0) <- [64 66 66 66 68 66 67 68 67 65] 66 (+/- 1.0) <- [66 65 66 67 66 66 63 66 67 67] 67 (+/- 0.6) <- [67 66 67 66 66 67 67 66 66 66] 66 (+/- 1.2) <- [63 66 66 66 66 67 65 66 65 67] 66 (+/- 0.9) <- [66 66 66 66 64 67 66 67 67 65] Accuracy: 66.6 (+/- 0.90) Mean time (20 cv): 2.35 seconds Overall time: 51.01 seconds -------------------- Classification, test_size = 0.91 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 540.0 training, 5460.0 testing 65 (+/- 0.8) <- [65 66 64 64 66 65 66 64 66 65] 66 (+/- 0.9) <- [64 66 66 66 65 66 65 64 66 66] 66 (+/- 0.8) <- [67 64 65 65 66 66 66 65 64 66] 66 (+/- 0.6) <- [65 66 65 66 66 65 65 66 65 65] 66 (+/- 1.0) <- [64 66 66 65 64 67 66 67 65 66] 66 (+/- 0.9) <- [66 64 66 65 67 66 65 65 66 65] 66 (+/- 0.6) <- [65 66 66 66 66 66 65 67 65 65] 66 (+/- 0.8) <- [65 65 65 64 66 65 67 65 66 67] 66 (+/- 0.8) <- [66 65 66 64 64 65 66 67 65 66] 66 (+/- 1.0) <- [65 65 66 65 66 66 66 64 63 66] 66 (+/- 1.0) <- [65 67 67 65 65 65 64 64 67 65] 66 (+/- 0.9) <- [64 67 66 64 65 66 65 65 66 66] 65 (+/- 1.1) <- [64 65 66 64 66 64 64 66 64 62] 66 (+/- 0.7) <- [65 66 65 66 65 65 66 67 65 65] 66 (+/- 1.1) <- [66 65 63 65 66 66 66 64 66 67] 66 (+/- 1.0) <- [63 66 66 65 65 64 66 66 66 65] 66 (+/- 1.3) <- [66 65 65 67 65 64 62 65 66 66] 66 (+/- 0.8) <- [66 65 65 65 63 65 66 64 65 65] 66 (+/- 1.1) <- [64 66 66 66 65 67 64 66 65 65] 66 (+/- 1.0) <- [65 65 65 65 63 65 66 66 68 66] Accuracy: 65.8 (+/- 0.96) Mean time (20 cv): 2.14 seconds Overall time: 46.87 seconds -------------------- Classification, test_size = 0.92 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 480.0 training, 5520.0 testing 65 (+/- 0.6) <- [63 64 64 65 63 65 65 63 65 64] 65 (+/- 0.9) <- [63 66 66 64 63 64 64 64 65 65] 65 (+/- 0.9) <- [66 63 64 63 65 63 64 64 63 65] 65 (+/- 0.7) <- [65 66 65 65 65 63 64 65 64 64] 65 (+/- 1.1) <- [62 64 64 64 64 66 64 65 65 67] 65 (+/- 0.9) <- [66 63 66 64 65 64 64 63 65 64] 65 (+/- 0.7) <- [65 64 65 64 64 65 65 66 64 64] 65 (+/- 0.7) <- [64 64 64 63 64 65 65 65 65 65] 65 (+/- 0.3) <- [65 64 64 64 64 65 64 64 64 65] 65 (+/- 1.5) <- [64 64 65 65 64 65 67 63 61 65] 64 (+/- 0.7) <- [63 64 64 63 63 64 62 63 65 64] 65 (+/- 0.9) <- [63 66 65 63 65 64 65 63 65 65] 64 (+/- 1.3) <- [64 64 66 64 64 63 63 64 62 61] 65 (+/- 0.6) <- [64 65 64 65 64 64 64 66 64 64] 65 (+/- 0.9) <- [64 64 64 64 64 64 63 64 66 66] 65 (+/- 1.1) <- [61 64 65 64 65 63 64 65 65 64] 65 (+/- 1.0) <- [65 64 64 65 64 63 62 64 65 65] 65 (+/- 1.2) <- [65 64 63 64 63 64 67 63 63 65] 65 (+/- 1.4) <- [62 65 66 64 63 67 62 66 64 64] 65 (+/- 0.9) <- [64 65 65 63 63 65 66 64 65 65] Accuracy: 64.8 (+/- 1.00) Mean time (20 cv): 1.94 seconds Overall time: 42.87 seconds -------------------- Classification, test_size = 0.93 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 420.0 training, 5580.0 testing 63 (+/- 0.7) <- [62 64 63 62 62 64 63 63 63 63] 64 (+/- 0.9) <- [62 64 65 63 63 63 62 63 64 63] 63 (+/- 1.0) <- [65 63 64 63 63 62 63 62 61 64] 64 (+/- 0.9) <- [64 65 64 65 63 63 62 64 64 63] 64 (+/- 0.9) <- [62 63 64 64 62 65 62 63 64 65] 64 (+/- 0.7) <- [64 63 65 63 65 63 64 63 64 64] 64 (+/- 0.8) <- [63 63 64 63 63 65 63 64 63 63] 64 (+/- 0.8) <- [62 63 62 63 64 64 64 64 64 64] 64 (+/- 0.9) <- [65 63 63 62 63 63 63 62 63 64] 64 (+/- 1.7) <- [62 64 63 64 63 64 64 61 59 64] 63 (+/- 0.6) <- [62 62 63 63 62 63 62 62 64 63] 64 (+/- 1.2) <- [61 64 64 62 65 65 63 63 64 64] 63 (+/- 1.2) <- [63 63 64 62 64 60 62 63 62 61] 64 (+/- 1.0) <- [62 64 63 64 62 62 62 65 63 63] 64 (+/- 1.1) <- [62 63 63 64 64 63 62 63 63 66] 64 (+/- 1.1) <- [62 63 63 63 63 61 63 65 64 63] 63 (+/- 0.8) <- [63 63 63 63 63 62 61 63 63 64] 64 (+/- 1.2) <- [65 63 63 62 63 63 66 62 62 64] 64 (+/- 1.2) <- [62 64 62 63 64 65 62 65 64 63] 63 (+/- 1.2) <- [62 64 64 61 62 64 64 62 64 63] Accuracy: 63.7 (+/- 1.08) Mean time (20 cv): 1.73 seconds Overall time: 38.62 seconds -------------------- Classification, test_size = 0.94 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 360.0 training, 5640.0 testing 61 (+/- 0.9) <- [61 61 61 60 59 62 61 62 61 61] 63 (+/- 1.4) <- [61 64 65 63 62 64 60 63 61 63] 62 (+/- 1.2) <- [63 62 60 62 62 61 62 63 59 63] 63 (+/- 1.4) <- [61 65 64 63 61 61 61 62 64 61] 63 (+/- 1.3) <- [61 62 62 62 61 64 61 61 62 65] 63 (+/- 1.4) <- [63 61 64 61 63 61 60 62 63 64] 63 (+/- 1.3) <- [62 61 62 61 62 64 61 65 62 63] 62 (+/- 0.9) <- [62 60 61 62 62 62 63 62 63 63] 62 (+/- 1.2) <- [64 61 64 62 61 62 61 60 62 63] 62 (+/- 1.6) <- [62 63 61 64 63 63 63 61 58 62] 62 (+/- 1.1) <- [61 60 61 62 60 63 62 60 63 61] 62 (+/- 1.5) <- [58 63 63 61 63 62 61 62 64 61] 62 (+/- 1.3) <- [62 60 62 60 64 61 61 62 60 60] 62 (+/- 1.2) <- [61 63 61 63 59 61 63 63 61 62] 63 (+/- 1.3) <- [62 62 60 62 62 60 62 63 62 65] 62 (+/- 1.4) <- [59 62 62 62 62 60 63 64 63 62] 62 (+/- 1.2) <- [61 61 64 62 62 61 60 62 63 64] 62 (+/- 1.1) <- [63 62 62 61 63 60 64 61 62 62] 62 (+/- 1.4) <- [60 62 61 61 64 64 60 64 62 61] 62 (+/- 1.3) <- [61 63 63 60 60 63 62 61 63 61] Accuracy: 62.4 (+/- 1.33) Mean time (20 cv): 1.53 seconds Overall time: 34.59 seconds -------------------- Classification, test_size = 0.95 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 300.0 training, 5700.0 testing 60 (+/- 1.0) <- [60 61 59 58 59 61 61 60 60 60] 62 (+/- 1.5) <- [61 63 63 62 60 62 59 61 59 61] 60 (+/- 1.1) <- [61 58 58 59 60 59 59 60 59 61] 61 (+/- 1.3) <- [58 62 62 61 60 61 60 59 62 61] 61 (+/- 0.9) <- [60 61 60 61 60 62 62 61 60 62] 61 (+/- 1.3) <- [61 60 61 60 62 59 59 59 60 63] 61 (+/- 0.9) <- [61 59 61 60 59 62 60 62 60 61] 61 (+/- 0.9) <- [61 59 60 61 60 60 62 61 62 61] 61 (+/- 1.0) <- [62 59 61 61 61 59 61 59 61 60] 61 (+/- 1.4) <- [61 62 60 62 61 61 62 59 57 61] 60 (+/- 1.0) <- [59 58 60 60 59 62 60 60 61 59] 61 (+/- 1.5) <- [58 61 61 61 62 60 57 60 62 60] 60 (+/- 1.1) <- [61 60 61 58 61 58 60 62 60 59] 60 (+/- 1.2) <- [60 60 60 61 58 58 61 61 58 59] 62 (+/- 1.1) <- [60 60 60 62 61 60 60 61 62 63] 61 (+/- 1.5) <- [59 60 59 61 61 59 62 64 61 61] 60 (+/- 1.4) <- [62 59 60 61 59 59 57 61 62 59] 61 (+/- 1.0) <- [60 59 62 59 60 58 61 60 60 61] 60 (+/- 1.0) <- [58 61 59 60 61 61 58 61 60 59] 60 (+/- 1.0) <- [59 60 61 58 60 60 59 58 61 59] Accuracy: 60.8 (+/- 1.27) Mean time (20 cv): 1.30 seconds Overall time: 30.08 seconds -------------------- Classification, test_size = 0.96 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 240.0 training, 5760.0 testing 59 (+/- 1.4) <- [57 59 59 56 56 60 59 59 59 59] 60 (+/- 1.1) <- [59 59 61 58 59 60 57 60 58 59] 59 (+/- 1.3) <- [58 58 56 60 58 58 59 58 58 60] 59 (+/- 1.6) <- [57 59 60 58 59 57 60 56 61 56] 59 (+/- 1.1) <- [58 58 57 58 59 60 59 59 56 58] 59 (+/- 1.7) <- [60 57 57 57 61 57 58 59 56 61] 59 (+/- 1.3) <- [58 56 59 59 57 60 58 61 59 60] 59 (+/- 1.0) <- [60 57 59 58 59 57 60 58 58 59] 59 (+/- 0.7) <- [59 58 58 58 60 58 59 58 58 57] 59 (+/- 1.0) <- [59 58 58 60 58 60 59 57 57 60] 58 (+/- 0.9) <- [57 57 58 57 57 59 58 58 58 59] 60 (+/- 1.7) <- [57 62 59 59 61 59 57 58 61 59] 58 (+/- 1.0) <- [57 58 59 57 60 57 58 59 58 57] 58 (+/- 1.3) <- [58 59 57 60 57 59 58 58 55 57] 59 (+/- 1.6) <- [57 58 59 59 58 56 57 60 60 62] 59 (+/- 1.8) <- [55 58 58 60 61 58 60 61 58 60] 59 (+/- 1.5) <- [60 59 59 60 59 56 55 59 59 58] 59 (+/- 0.9) <- [59 58 59 57 57 58 60 57 59 58] 59 (+/- 1.7) <- [57 59 55 59 60 60 57 60 58 58] 58 (+/- 1.1) <- [58 58 59 56 59 60 59 56 58 57] Accuracy: 58.9 (+/- 1.38) Mean time (20 cv): 1.08 seconds Overall time: 25.76 seconds -------------------- Classification, test_size = 0.97 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 180.0 training, 5820.0 testing 56 (+/- 1.0) <- [55 57 56 55 54 57 57 57 57 55] 57 (+/- 1.1) <- [55 57 57 59 57 56 56 57 56 56] 56 (+/- 1.5) <- [57 53 53 56 55 56 56 54 55 58] 56 (+/- 1.5) <- [56 58 56 56 57 55 58 54 56 53] 56 (+/- 1.1) <- [56 57 56 55 55 56 56 55 53 54] 56 (+/- 1.9) <- [56 54 55 55 59 53 56 57 52 57] 57 (+/- 1.3) <- [56 54 57 57 55 57 57 57 58 59] 57 (+/- 0.9) <- [57 56 56 57 57 55 57 57 58 55] 57 (+/- 1.7) <- [59 53 56 57 57 56 58 55 57 55] 56 (+/- 1.7) <- [55 55 56 59 54 58 57 54 55 57] 55 (+/- 1.0) <- [55 54 54 53 54 55 56 56 55 56] 57 (+/- 1.2) <- [54 58 56 55 59 56 56 57 56 56] 56 (+/- 1.4) <- [57 56 56 56 57 53 54 57 54 58] 57 (+/- 1.5) <- [56 57 55 58 53 57 57 58 55 55] 56 (+/- 2.3) <- [55 57 55 56 56 52 52 55 58 60] 56 (+/- 1.7) <- [51 57 55 57 57 55 56 56 57 56] 56 (+/- 1.4) <- [56 54 55 55 58 56 55 57 58 54] 57 (+/- 1.7) <- [56 55 56 55 54 59 59 57 56 56] 56 (+/- 0.9) <- [55 57 54 56 55 56 55 57 55 54] 56 (+/- 1.3) <- [55 58 56 55 58 57 56 54 56 55] Accuracy: 56.4 (+/- 1.51) Mean time (20 cv): 0.86 seconds Overall time: 21.27 seconds -------------------- Classification, test_size = 0.98 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 120.0 training, 5880.0 testing 53 (+/- 1.2) <- [51 54 51 53 53 55 53 51 53 53] 54 (+/- 1.5) <- [53 54 54 53 54 56 52 53 51 51] 52 (+/- 1.7) <- [53 49 49 54 53 52 51 53 51 53] 54 (+/- 1.5) <- [52 55 52 53 53 54 55 53 54 50] 52 (+/- 1.3) <- [50 52 52 54 51 52 52 51 50 53] 53 (+/- 1.9) <- [52 50 53 51 55 52 51 53 50 56] 54 (+/- 2.0) <- [54 50 55 52 50 55 54 54 54 57] 52 (+/- 1.9) <- [52 51 52 54 50 47 53 54 53 52] 53 (+/- 1.6) <- [54 51 53 54 56 52 55 53 52 50] 53 (+/- 1.3) <- [51 51 54 53 51 53 53 52 54 54] 52 (+/- 1.4) <- [51 51 52 53 50 52 51 52 55 53] 53 (+/- 1.6) <- [52 55 53 51 56 52 52 53 51 51] 53 (+/- 1.7) <- [56 54 52 53 53 49 52 51 53 54] 53 (+/- 1.4) <- [54 54 53 54 51 55 52 52 52 51] 53 (+/- 2.3) <- [54 53 53 52 53 47 49 51 55 54] 54 (+/- 1.9) <- [50 55 52 53 55 52 52 56 51 55] 52 (+/- 1.3) <- [54 50 51 52 51 51 51 53 55 52] 53 (+/- 1.6) <- [51 53 54 52 51 53 56 52 50 53] 53 (+/- 1.7) <- [52 51 53 54 52 52 52 55 50 49] 53 (+/- 1.9) <- [51 54 52 52 54 53 54 48 55 51] Accuracy: 53.0 (+/- 1.74) Mean time (20 cv): 0.63 seconds Overall time: 16.59 seconds -------------------- Classification, test_size = 0.99 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 149, 2, 128) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=128 -> 19,072,000 floats dim: 38,144 features per clip shape: (5, 100, 298, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Truncated and grouped: size: N=135,000 x n=128 -> 17,280,000 floats dim: 34,560 features per clip shape: (5, 100, 6, 45, 128) Feature vectors: size: N=6,000 x n=128 -> 768,000 floats dim: 1,536 features per clip shape: (5, 100, 6, 2, 128)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 128), float64 Testing data: (2400, 128), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 76.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1536), float64 Testing data: (200, 1536), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 63.6 % Clips accuracy: 71.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 128), float64 Labels: (6000,), uint8 Ratio: 60.0 training, 5940.0 testing 47 (+/- 2.4) <- [47 50 44 44 46 47 45 45 49 51] 48 (+/- 1.2) <- [47 48 48 45 49 49 49 47 47 47] 48 (+/- 2.8) <- [45 44 49 52 49 46 50 48 43 50] 49 (+/- 1.6) <- [47 49 48 46 50 48 51 46 47 48] 47 (+/- 2.4) <- [42 48 45 47 46 45 46 48 44 51] 47 (+/- 1.8) <- [45 46 47 46 50 48 45 45 46 50] 48 (+/- 1.7) <- [47 46 52 49 46 49 47 47 45 49] 48 (+/- 1.3) <- [48 45 46 47 46 48 48 46 48 50] 48 (+/- 1.9) <- [50 44 48 47 47 47 51 46 45 47] 49 (+/- 2.1) <- [46 45 48 51 46 49 49 46 50 52] 47 (+/- 1.4) <- [45 50 46 47 46 45 48 48 48 47] 48 (+/- 1.2) <- [46 50 46 47 49 47 47 46 47 47] 48 (+/- 2.0) <- [51 49 48 49 46 44 48 48 45 46] 48 (+/- 1.5) <- [49 48 45 46 47 50 47 49 47 47] 48 (+/- 2.8) <- [49 48 50 49 45 41 48 48 50 52] 48 (+/- 2.1) <- [48 46 46 45 49 48 46 50 45 51] 47 (+/- 1.8) <- [50 44 45 47 45 47 46 48 47 49] 49 (+/- 1.5) <- [46 47 49 47 48 48 50 49 46 51] 48 (+/- 1.6) <- [50 46 46 46 50 49 47 47 47 47] 48 (+/- 2.5) <- [47 47 51 44 44 48 45 45 51 48] Accuracy: 47.9 (+/- 2.00) Mean time (20 cv): 0.38 seconds Overall time: 11.61 seconds -------------------- Baseline, test_size = 0.9 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 600.0 training, 5400.0 testing 61 (+/- 1.2) <- [60 61 60 58 62 61 62 60 61 62] 61 (+/- 0.8) <- [59 60 59 60 61 61 61 61 59 60] 61 (+/- 0.6) <- [61 59 60 60 61 60 61 60 60 61] 61 (+/- 0.8) <- [62 61 60 61 60 62 61 60 62 60] 61 (+/- 1.0) <- [60 60 61 62 62 60 59 63 60 60] 61 (+/- 0.7) <- [60 61 59 59 61 61 60 61 61 61] 61 (+/- 1.0) <- [61 61 59 60 60 60 61 61 59 62] 61 (+/- 1.0) <- [60 62 60 61 59 59 62 62 62 60] 61 (+/- 0.9) <- [61 58 60 60 60 62 61 60 60 59] 61 (+/- 1.0) <- [61 62 60 62 62 61 61 60 59 59] 61 (+/- 0.7) <- [61 61 61 60 59 59 61 60 61 61] 61 (+/- 0.7) <- [60 61 61 60 60 60 60 60 61 62] 61 (+/- 0.6) <- [61 60 60 60 61 61 60 60 61 59] 61 (+/- 0.8) <- [60 61 61 60 60 59 61 61 60 60] 61 (+/- 0.9) <- [62 60 61 60 61 59 60 60 61 61] 62 (+/- 0.6) <- [61 61 60 62 61 62 62 61 60 62] 61 (+/- 0.6) <- [61 60 61 61 62 60 60 61 61 60] 61 (+/- 0.6) <- [60 60 61 59 59 60 61 60 61 60] 61 (+/- 0.7) <- [60 60 60 61 60 62 59 60 60 61] 61 (+/- 0.6) <- [60 60 61 60 61 61 61 61 62 61] Accuracy: 61.0 (+/- 0.86) Mean time (20 cv): 2.10 seconds Overall time: 45.73 seconds -------------------- Baseline, test_size = 0.91 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 540.0 training, 5460.0 testing 60 (+/- 1.1) <- [58 61 59 58 61 59 62 60 60 61] 60 (+/- 0.9) <- [58 60 59 60 61 61 59 60 59 59] 60 (+/- 0.7) <- [60 59 59 59 61 60 60 59 59 61] 61 (+/- 0.9) <- [61 60 59 60 60 61 62 59 61 59] 60 (+/- 1.0) <- [59 59 60 61 62 60 59 61 59 60] 60 (+/- 0.5) <- [60 61 60 59 60 60 60 60 60 60] 60 (+/- 1.2) <- [60 60 58 60 58 60 61 60 58 62] 60 (+/- 0.9) <- [61 61 60 60 58 58 60 60 61 60] 60 (+/- 0.8) <- [60 58 60 60 60 60 61 59 60 60] 61 (+/- 0.8) <- [59 61 60 61 61 61 60 60 59 59] 60 (+/- 0.9) <- [60 61 60 60 59 58 60 59 61 61] 60 (+/- 0.6) <- [60 61 60 59 59 60 60 60 60 61] 60 (+/- 0.8) <- [60 60 59 60 60 59 59 58 59 58] 60 (+/- 0.8) <- [59 60 61 60 59 58 60 60 60 60] 60 (+/- 0.7) <- [61 60 60 59 60 59 59 60 60 61] 61 (+/- 0.7) <- [60 61 60 61 60 62 60 60 59 61] 61 (+/- 0.6) <- [61 60 61 59 61 59 60 61 61 59] 60 (+/- 0.7) <- [59 60 59 59 60 60 61 59 60 60] 60 (+/- 0.8) <- [58 59 59 61 60 61 58 60 59 60] 61 (+/- 0.6) <- [61 60 60 60 60 61 60 61 61 61] Accuracy: 60.4 (+/- 0.87) Mean time (20 cv): 1.89 seconds Overall time: 41.65 seconds -------------------- Baseline, test_size = 0.92 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 480.0 training, 5520.0 testing 60 (+/- 1.0) <- [58 59 59 57 58 60 60 59 59 60] 60 (+/- 0.9) <- [58 59 59 59 61 60 59 60 59 59] 60 (+/- 0.9) <- [60 58 59 58 60 58 60 59 59 60] 60 (+/- 0.9) <- [61 60 58 59 59 60 59 58 61 58] 60 (+/- 1.3) <- [58 58 60 61 60 59 58 62 59 60] 60 (+/- 0.5) <- [59 60 60 59 58 60 59 60 60 60] 60 (+/- 1.0) <- [59 59 59 59 58 59 60 59 57 61] 60 (+/- 0.9) <- [60 61 59 59 58 58 60 61 60 59] 60 (+/- 0.9) <- [60 57 59 59 59 60 60 59 59 58] 60 (+/- 0.8) <- [59 60 59 60 61 61 59 59 58 59] 60 (+/- 1.0) <- [60 60 60 59 58 57 59 59 60 60] 60 (+/- 0.9) <- [60 60 59 58 57 59 60 59 60 60] 59 (+/- 0.8) <- [60 59 59 60 59 57 59 59 59 58] 60 (+/- 0.8) <- [58 60 59 59 60 58 59 60 60 59] 60 (+/- 0.8) <- [60 60 59 59 59 59 58 60 61 61] 60 (+/- 0.7) <- [60 61 59 60 59 61 60 60 59 60] 60 (+/- 0.6) <- [60 59 60 59 61 59 58 60 60 60] 60 (+/- 0.7) <- [59 59 58 59 60 59 61 58 60 59] 60 (+/- 0.9) <- [57 60 59 60 59 61 58 59 59 59] 60 (+/- 0.7) <- [59 59 59 59 58 60 60 59 59 60] Accuracy: 59.8 (+/- 0.90) Mean time (20 cv): 1.69 seconds Overall time: 37.62 seconds -------------------- Baseline, test_size = 0.93 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 420.0 training, 5580.0 testing 59 (+/- 1.0) <- [58 59 60 56 58 60 58 58 58 60] 59 (+/- 1.2) <- [56 57 59 58 59 60 58 59 57 59] 59 (+/- 0.9) <- [59 57 57 58 60 58 58 58 58 59] 59 (+/- 1.1) <- [59 59 57 58 58 60 60 57 60 58] 59 (+/- 1.4) <- [57 57 59 61 60 58 57 60 59 58] 59 (+/- 0.6) <- [58 59 59 58 58 58 58 58 59 59] 59 (+/- 1.1) <- [59 58 58 58 56 60 58 58 56 60] 59 (+/- 0.6) <- [59 59 58 59 57 58 60 60 59 59] 59 (+/- 0.9) <- [60 57 59 57 58 59 58 57 59 57] 59 (+/- 1.1) <- [57 60 59 60 59 60 58 57 58 58] 59 (+/- 0.8) <- [59 60 58 58 58 57 58 58 59 58] 59 (+/- 0.8) <- [60 59 58 58 57 58 58 59 59 59] 58 (+/- 1.0) <- [59 59 57 58 59 56 57 58 58 58] 59 (+/- 1.3) <- [56 59 59 58 59 56 60 59 59 59] 59 (+/- 0.8) <- [59 58 58 58 59 57 57 59 60 59] 59 (+/- 0.6) <- [59 60 58 59 59 59 58 60 58 60] 59 (+/- 0.9) <- [59 57 59 58 60 58 58 59 59 59] 59 (+/- 0.8) <- [58 58 58 58 60 58 60 58 59 59] 59 (+/- 0.8) <- [57 59 58 59 58 60 57 59 58 58] 59 (+/- 0.6) <- [58 59 59 58 58 60 58 58 59 58] Accuracy: 58.9 (+/- 0.97) Mean time (20 cv): 1.50 seconds Overall time: 33.81 seconds -------------------- Baseline, test_size = 0.94 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 360.0 training, 5640.0 testing 58 (+/- 1.1) <- [57 58 58 55 56 59 57 57 58 58] 58 (+/- 1.4) <- [55 58 58 58 58 59 56 59 55 58] 58 (+/- 1.0) <- [58 56 57 57 58 56 58 58 57 60] 58 (+/- 0.7) <- [59 58 57 57 57 58 58 57 59 57] 58 (+/- 1.1) <- [56 56 57 59 57 58 56 58 57 57] 58 (+/- 1.0) <- [57 57 57 55 57 57 57 58 59 59] 58 (+/- 1.3) <- [59 56 57 56 56 58 58 58 56 59] 58 (+/- 0.8) <- [57 59 57 58 58 57 59 59 57 58] 58 (+/- 0.8) <- [59 56 59 57 58 58 58 57 57 58] 58 (+/- 1.0) <- [57 59 56 59 59 59 57 56 57 58] 58 (+/- 0.8) <- [58 57 57 57 57 56 59 57 58 59] 58 (+/- 0.8) <- [59 57 58 57 56 57 58 57 59 59] 58 (+/- 1.2) <- [59 58 57 57 59 56 56 56 58 56] 58 (+/- 1.5) <- [55 59 58 58 58 54 59 58 57 59] 58 (+/- 0.9) <- [58 57 58 58 59 55 57 58 57 58] 59 (+/- 1.0) <- [58 59 57 56 59 59 59 58 58 59] 58 (+/- 1.3) <- [59 55 58 56 59 57 56 59 57 59] 58 (+/- 1.1) <- [58 57 56 58 59 57 59 58 58 60] 58 (+/- 1.1) <- [56 59 57 59 58 59 56 58 58 58] 58 (+/- 0.6) <- [58 58 58 57 57 59 57 58 58 57] Accuracy: 58.1 (+/- 1.08) Mean time (20 cv): 1.31 seconds Overall time: 29.95 seconds -------------------- Baseline, test_size = 0.95 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 300.0 training, 5700.0 testing 57 (+/- 1.2) <- [56 57 56 54 56 59 56 56 55 56] 57 (+/- 1.4) <- [54 57 56 57 57 57 55 58 53 56] 57 (+/- 1.2) <- [55 55 56 56 56 54 56 58 56 59] 57 (+/- 0.8) <- [57 57 56 57 56 57 58 55 58 57] 56 (+/- 1.2) <- [54 54 56 57 55 57 54 57 56 57] 57 (+/- 0.9) <- [57 57 56 56 57 56 56 56 57 59] 57 (+/- 1.2) <- [57 56 56 56 55 58 56 56 54 57] 58 (+/- 0.9) <- [57 58 55 58 56 57 58 58 56 57] 57 (+/- 0.8) <- [57 55 57 57 57 57 56 56 55 56] 57 (+/- 1.0) <- [55 57 56 58 56 57 56 55 55 57] 57 (+/- 0.7) <- [56 55 56 56 56 56 57 57 57 56] 57 (+/- 1.2) <- [58 56 57 56 55 56 56 55 59 57] 57 (+/- 1.2) <- [58 58 56 56 57 54 56 56 56 55] 56 (+/- 1.8) <- [55 57 57 57 57 52 56 56 53 58] 57 (+/- 1.2) <- [57 56 56 57 58 54 56 57 57 57] 58 (+/- 1.1) <- [58 59 55 55 58 57 58 58 57 58] 57 (+/- 1.2) <- [57 54 56 56 58 56 55 58 57 57] 58 (+/- 1.0) <- [56 57 57 57 58 55 58 57 57 59] 56 (+/- 0.9) <- [55 57 54 56 56 57 56 57 56 55] 57 (+/- 1.0) <- [57 55 57 55 57 57 55 56 57 56] Accuracy: 56.9 (+/- 1.20) Mean time (20 cv): 1.11 seconds Overall time: 25.91 seconds -------------------- Baseline, test_size = 0.96 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 240.0 training, 5760.0 testing 55 (+/- 1.4) <- [56 56 52 53 53 57 55 53 54 55] 55 (+/- 1.5) <- [54 56 55 56 55 55 53 56 51 56] 56 (+/- 1.1) <- [54 53 55 55 56 55 55 56 55 57] 56 (+/- 1.0) <- [56 55 55 55 57 57 57 54 57 55] 54 (+/- 1.4) <- [53 52 54 56 53 55 53 55 52 54] 56 (+/- 1.5) <- [56 55 53 53 57 53 56 56 55 57] 55 (+/- 1.2) <- [55 53 55 56 53 57 55 55 54 56] 56 (+/- 1.2) <- [56 55 54 58 55 54 57 56 55 58] 55 (+/- 1.0) <- [56 53 55 56 56 56 55 54 55 54] 56 (+/- 1.1) <- [55 56 54 57 54 57 54 56 54 56] 55 (+/- 1.0) <- [56 52 55 55 55 55 55 55 56 55] 56 (+/- 1.1) <- [57 56 55 54 54 55 55 54 57 55] 55 (+/- 1.2) <- [54 57 55 54 56 52 54 53 56 54] 56 (+/- 1.9) <- [55 56 56 57 56 52 55 56 51 56] 56 (+/- 1.3) <- [54 56 56 57 56 53 54 54 54 56] 56 (+/- 1.2) <- [57 58 54 55 56 55 56 57 56 56] 56 (+/- 1.5) <- [55 52 55 55 56 53 55 57 56 57] 56 (+/- 1.1) <- [54 56 54 56 57 54 54 54 55 56] 55 (+/- 1.2) <- [53 56 52 55 55 56 54 55 54 54] 55 (+/- 0.8) <- [55 54 55 54 56 56 55 54 56 55] Accuracy: 55.5 (+/- 1.37) Mean time (20 cv): 0.91 seconds Overall time: 21.99 seconds -------------------- Baseline, test_size = 0.97 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 180.0 training, 5820.0 testing 53 (+/- 2.0) <- [53 52 50 49 52 54 56 53 54 52] 54 (+/- 2.2) <- [50 54 54 56 56 53 53 54 49 55] 54 (+/- 1.3) <- [53 50 53 53 54 53 52 54 54 54] 55 (+/- 0.8) <- [54 55 53 55 54 53 54 53 55 53] 52 (+/- 1.6) <- [51 51 52 55 49 52 52 54 51 52] 54 (+/- 1.0) <- [54 52 52 53 55 52 54 54 53 54] 54 (+/- 1.4) <- [54 50 54 54 52 54 54 54 53 55] 54 (+/- 1.3) <- [54 54 51 55 54 53 54 54 52 55] 54 (+/- 1.2) <- [55 51 54 53 55 55 54 53 53 52] 53 (+/- 1.4) <- [52 54 53 54 50 55 51 53 53 53] 53 (+/- 1.2) <- [53 50 53 54 51 53 53 52 54 53] 54 (+/- 1.8) <- [56 56 54 54 53 53 52 50 56 53] 54 (+/- 1.5) <- [52 55 54 54 54 52 51 51 55 53] 54 (+/- 1.1) <- [52 54 53 55 54 52 54 54 52 54] 54 (+/- 1.5) <- [53 55 54 54 54 50 52 53 55 54] 54 (+/- 1.0) <- [54 56 54 54 55 52 53 54 54 54] 54 (+/- 1.8) <- [52 50 52 53 54 53 53 57 54 55] 55 (+/- 1.3) <- [53 54 55 54 56 53 53 54 52 55] 53 (+/- 1.7) <- [51 54 52 53 52 51 52 56 51 51] 54 (+/- 1.0) <- [54 53 55 53 56 54 54 53 54 53] Accuracy: 53.7 (+/- 1.55) Mean time (20 cv): 0.71 seconds Overall time: 18.00 seconds -------------------- Baseline, test_size = 0.98 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 120.0 training, 5880.0 testing 49 (+/- 4.5) <- [50 52 50 47 49 51 53 36 52 50] 51 (+/- 2.3) <- [49 51 49 52 53 52 52 51 46 52] 50 (+/- 2.1) <- [52 45 50 50 50 49 47 51 52 51] 51 (+/- 1.6) <- [51 53 49 52 50 49 50 49 53 52] 50 (+/- 1.8) <- [47 51 48 52 48 47 51 51 49 52] 52 (+/- 1.5) <- [51 50 49 53 54 52 51 49 52 52] 51 (+/- 1.8) <- [51 47 52 52 51 53 52 50 49 52] 51 (+/- 1.5) <- [49 51 47 51 50 49 52 52 52 49] 51 (+/- 1.5) <- [53 47 49 51 52 50 50 51 52 49] 51 (+/- 1.2) <- [50 50 52 51 48 51 49 52 52 52] 51 (+/- 1.8) <- [53 47 51 52 48 51 52 51 51 50] 51 (+/- 2.5) <- [54 55 52 51 51 51 47 47 51 47] 51 (+/- 1.5) <- [49 54 50 52 51 50 50 50 50 52] 51 (+/- 2.0) <- [51 51 51 54 53 50 48 49 48 53] 51 (+/- 2.0) <- [50 51 52 51 50 45 49 51 53 50] 52 (+/- 1.6) <- [51 53 49 52 53 50 51 55 50 50] 51 (+/- 2.2) <- [49 46 48 54 51 49 51 53 52 52] 52 (+/- 1.7) <- [50 53 53 53 53 52 51 53 48 50] 51 (+/- 1.9) <- [50 52 50 53 50 46 51 51 48 48] 52 (+/- 1.6) <- [51 53 53 52 54 51 53 49 53 49] Accuracy: 51.1 (+/- 2.15) Mean time (20 cv): 0.50 seconds Overall time: 13.85 seconds -------------------- Baseline, test_size = 0.99 -------------------- Software versions: numpy: 1.8.2 sklearn: 0.14.1 Attributes: sr = 22050 labels = ['blues' 'classical' 'country' 'disco' 'hiphop' 'jazz' 'metal' 'pop' 'reggae' 'rock'] Datasets: D : (128, 96) , float32 X : (5, 100, 149, 2, 96) , float32 Z : (5, 100, 149, 2, 128) , float32 Full dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <class 'h5py._hl.dataset.Dataset'> Reduced dataset: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 149, 2, 96) <type 'numpy.ndarray'> Flattened frames: size: N=149,000 x n=96 -> 14,304,000 floats dim: 28,608 features per clip shape: (5, 100, 298, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Truncated and grouped: size: N=135,000 x n=96 -> 12,960,000 floats dim: 25,920 features per clip shape: (5, 100, 6, 45, 96) Feature vectors: size: N=6,000 x n=96 -> 576,000 floats dim: 1,152 features per clip shape: (5, 100, 6, 2, 96)
5 genres: blues, classical, country, disco, hiphop Training data: (3600, 96), float64 Testing data: (2400, 96), float64 Training labels: (3600,), uint8 Testing labels: (2400,), uint8 Accuracy: 68.8 % 5 genres: blues, classical, country, disco, hiphop Training data: (300, 1152), float64 Testing data: (200, 1152), float64 Training labels: (300,), uint8 Testing labels: (200,), uint8 Feature vectors accuracy: 62.1 % Clips accuracy: 68.5 % 5 genres: blues, classical, country, disco, hiphop Data: (6000, 96), float64 Labels: (6000,), uint8 Ratio: 60.0 training, 5940.0 testing 46 (+/- 2.6) <- [46 49 46 41 46 47 45 40 47 45] 46 (+/- 2.0) <- [46 47 43 42 49 47 48 47 44 46] 46 (+/- 2.4) <- [44 40 46 49 48 44 45 46 47 46] 47 (+/- 2.5) <- [45 49 42 46 51 45 45 43 48 46] 46 (+/- 2.9) <- [41 46 44 48 44 41 46 50 44 48] 47 (+/- 1.4) <- [48 45 44 47 48 47 46 45 47 48] 47 (+/- 2.8) <- [48 39 50 45 44 50 46 46 46 46] 45 (+/- 3.7) <- [49 44 35 44 48 44 48 46 44 47] 46 (+/- 1.6) <- [44 42 48 45 45 46 48 45 46 46] 45 (+/- 4.8) <- [47 42 46 46 45 46 46 46 47 30] 46 (+/- 2.0) <- [49 42 46 47 47 42 46 45 45 47] 45 (+/- 4.6) <- [49 48 48 48 35 49 39 43 48 43] 47 (+/- 2.4) <- [44 50 48 48 49 47 50 45 42 47] 49 (+/- 1.5) <- [48 48 46 47 51 48 51 48 46 49] 46 (+/- 3.8) <- [42 47 47 49 42 37 45 48 49 48] 48 (+/- 2.5) <- [48 48 44 44 50 46 50 51 44 48] 47 (+/- 2.9) <- [51 41 44 49 45 44 46 49 45 50] 48 (+/- 1.8) <- [44 47 48 47 49 49 46 50 45 49] 46 (+/- 2.4) <- [47 47 42 45 45 41 48 49 45 44] 47 (+/- 2.1) <- [46 49 48 46 46 47 46 42 50 47] Accuracy: 46.5 (+/- 2.95) Mean time (20 cv): 0.30 seconds Overall time: 9.70 seconds
print('{} = {}'.format(Pname, Pvalues))
for key, value in res.items():
if key is not 'atoms':
print('res[\'{}\'] = {}'.format(key, value))
def plot(*args, **kwargs):
plt.figure(figsize=(8,5))
x = range(len(Pvalues))
log = 'log' in kwargs and kwargs['log'] is True
pltfunc = plt.semilogy if log else plt.plot
params = {}
params['linestyle'] = '-'
params['marker'] = '.'
params['markersize'] = 10
for i, var in enumerate(args):
if 'err' in kwargs:
pltfunc = plt.errorbar
params['yerr'] = res[kwargs['err'][i]]
params['capsize'] = 5
pltfunc(x, res[var], label=var, **params)
for i,j in zip(x, res[var]):
plt.annotate('{:.2f}'.format(j), xy=(i,j), xytext=(5,5), textcoords='offset points')
margin = 0.25
params['markersize'] = 10
plt.xlim(-margin, len(Pvalues)-1+margin)
if 'ylim' in kwargs:
plt.ylim(kwargs['ylim'])
plt.title('{} vs {}'.format(', '.join(args), Pname))
plt.xlabel(Pname)
plt.ylabel(' ,'.join(args))
plt.xticks(x, Pvalues)
plt.grid(True); plt.legend(loc='best'); plt.show()
def div(l):
div = Pvalues if Pname is l else [p[l]]
return np.array([1 if v is None else v for v in div])
# Classification results.
res['chance'] = len(Pvalues) * [100./p['Ngenres']]
res['chance_std'] = 0
err=['accuracy_std', 'baseline_std', 'chance_std']
plot('accuracy', 'baseline', 'chance', err=err, ylim=[0,100])
# Features extraction results.
if regen_features:
plot('objective_g', 'objective_i', 'objective_j', log=True)
# Unweighted objectives.
print('g(Z) = ||X-DZ||_2^2, h(Z) = ||Z-EX||_2^2, i(Z) = ||Z||_1, j(Z) = tr(Z^TLZ)')
res['objective_g_un'] = res['objective_g'] / div('ld')
res['objective_i_un'] = res['objective_i'] / div('ls')
res['objective_j_un'] = res['objective_j'] / div('lg')
plot('objective_g_un', 'objective_i_un', 'objective_j_un', log=True)
plot('sparsity', ylim=[0,100])
plot('time_features')
plot('iterations_inner')
plot('iterations_outer')
for i, fig in enumerate(res['atoms']):
print('Dictionary atoms for {} = {}'.format(Pname, Pvalues[i]))
fig.show()
print('Experiment time: {:.0f} seconds'.format(time.time() - texperiment))
test_size = [0.9, 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98, 0.99] res['accuracy_std'] = [0.89946272162093188, 0.96349062253624251, 1.0005239410287108, 1.081777311775366, 1.3306792959424767, 1.2705582320346731, 1.375911701353818, 1.5073369040208526, 1.7400646961076727, 2.0046395811039637] res['objective_j'] = [8560.6590270996094, 8560.6590270996094, 8560.6590270996094, 8560.6590270996094, 8560.6590270996094, 8560.6590270996094, 8560.6590270996094, 8560.6590270996094, 8560.6590270996094, 8560.6590270996094] res['objective_i'] = [57423.0, 57423.0, 57423.0, 57423.0, 57423.0, 57423.0, 57423.0, 57423.0, 57423.0, 57423.0] res['objective_h'] = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] res['objective_g'] = [69731.2060546875, 69731.2060546875, 69731.2060546875, 69731.2060546875, 69731.2060546875, 69731.2060546875, 69731.2060546875, 69731.2060546875, 69731.2060546875, 69731.2060546875] res['baseline'] = [60.973703703703706, 60.376190476190459, 59.755344202898506, 58.929480286738354, 58.062677304964552, 56.86350877192983, 55.507986111111116, 53.744501718213066, 51.096088435374142, 46.473737373737357] res['time_features'] = [3211.0755138397217, 3211.0755138397217, 3211.0755138397217, 3211.0755138397217, 3211.0755138397217, 3211.0755138397217, 3211.0755138397217, 3211.0755138397217, 3211.0755138397217, 3211.0755138397217] res['baseline_std'] = [0.85954329596629586, 0.86612385814216353, 0.89706844615576686, 0.97087716860715956, 1.0826780027089868, 1.1987016675987279, 1.3656555460323629, 1.5531957132032486, 2.1520828759669808, 2.9536838364939091] res['sparsity'] = [18.5015625, 18.5015625, 18.5015625, 18.5015625, 18.5015625, 18.5015625, 18.5015625, 18.5015625, 18.5015625, 18.5015625] res['iterations_inner'] = [1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509] res['iterations_outer'] = [8, 8, 8, 8, 8, 8, 8, 8, 8, 8] res['accuracy'] = [66.614537037037067, 65.79908424908426, 64.781974637681188, 63.661917562724, 62.39583333333335, 60.7629824561403, 58.903559027777774, 56.402233676975968, 53.009608843537428, 47.852525252525304]
Experiment time: 3998 seconds