Exemplo n.º 1
0
	############################################## 2d
    data, target = read_file()
    data = preprocessing.scale(data)

    pca = Pca()
    cov = pca.cov_matrix(data[:, 0], data[:, 1], data[:, 2], data[:, 3])

    values, vectors = pca.eigen_values_vectors(cov)
    values, vectors = pca.sort_eigen(values, vectors)

    vectors = pca.eigen_strip_vectors(values, vectors, 0.90)

    print(vectors)
    values = values[:len(vectors[0])]

    result = np.matrix.transpose(pca.pca_result(data,
                                 vectors)).reshape(len(data), len(data[0])-2)
    result[:, 1] = -result[:, 1]
    points = result
    count = 0
    class_points = []
    fig = plt.figure()
    for label in range(3):
        for i in range(len(target)):
            if(label == target[i]):
                class_points.append(points[i])
        class_points = np.array(class_points)
        x = class_points[:, 0]
        y = class_points[:, 1]
        plt.plot(x, y, colors[label], label=str(count))
        count += 1
        class_points = []
Exemplo n.º 2
0
    labels = np.array(labels)

    # # without pca
    batch_size = 2
    # print(inputs[0])
    # leng = [len(inp) for inp in inputs]
    # print(max(leng), min(leng))
    # print(inputs.shape[1:])
    # mlp.create_network(inputs.shape[1:], 0.001)
    # mlp.train(inputs, labels, num_epochs, batch_size)
    # with pca
    pca = Pca()
    data = preprocessing.scale(inputs)
    cov = np.cov(data, rowvar=False)

    values, vectors = pca.eigen_values_vectors(cov)
    values, vectors = pca.sort_eigen(values, vectors)

    vectors = pca.eigen_strip_vectors(values, vectors, 0.98)

    print(vectors.shape)
    values = values[:len(vectors[0])]

    result = np.matrix.transpose(pca.pca_result(data, vectors)).reshape(
        len(data), 8)
    print(result.shape)
    points = result
    inputs = points
    mlp.create_network(inputs.shape[1:], 0.001)
    mlp.train(inputs, labels, num_epochs, batch_size)