Exemplo n.º 1
0
'''
A script to plot a bunch of points
'''
from mayavi import mlab
from LogReader import LogReader
import numpy as np

def plot_points(points):
    print '[plot_points] Plotting points!'
    xs = np.array([int(point._x) for point in points])
    ys = np.array([int(point._y) for point in points])
    zs = np.array([int(point._z) for point in points])
    labels = np.array([int(point._label) for point in points])
    mlab.points3d(xs, ys, zs, labels, scale_factor = 0.4, mode='cube')
    mlab.show()
    
def plot_predicted_labels(points, labels):
    print '[plot_points] Plotting points!'
    xs = np.array([int(point._x) for point in points])
    ys = np.array([int(point._y) for point in points])
    zs = np.array([int(point._z) for point in points])
    mlab.points3d(xs, ys, zs, labels, scale_factor = .4, mode='cube')
    mlab.show()

if __name__ == "__main__":
    
    #Load a log
    log_object = LogReader('../data/oakland_part3_an_rf.node_features')
    points = log_object.read()
    
    plot_points(points)

def rand_perm(n):
    p = range(0, n)
    for i in range(0, n):
        r = random.randint(i, n - 1)
        x = p[i]
        p[i] = p[r]
        p[r] = x
    return p


if __name__ == "__main__":

    train_log_object = LogReader('../data/oakland_part3_an_rf.node_features')
    train_points = train_log_object.read()
    test_log_object = LogReader('../data/oakland_part3_am_rf.node_features')
    test_points = test_log_object.read()

    X = np.array([point._feature for point in train_points])
    Y = np.array([point._label for point in train_points])

    perm_idx = np.random.permutation(X.shape[0]) #range(X.shape[0])
    ds_train = Dataset(X[perm_idx,:],Y[perm_idx])
    cv_fold = 5
    param_num = 9
    cm = np.zeros([cv_fold,cv_fold,5,5])
    acc = np.zeros([cv_fold,cv_fold])
    params = [[5,0.01],[10,0.01],[15,0.01],[5,0.001],[10,0.001],[15,0.001],[5,0.1],[10,0.1],[15,0.1]]
    cum_cm = np.zeros([cv_fold,5,5])
    mean_confusion_matrix = np.zeros([param_num,5,5])