コード例 #1
0
def main():
    seasons = 100  # int(input("Seasons: "))
    n = 1000000  # int(input("Points: "))
    lr = 0.1  # float(input("Learning rate: "))

    myPerceptron = Perceptron(2)
    print("Creating Points")
    data = createPoints(n)
    print("\tDONE")
    points = data[0]
    desired = data[1]
    # line = data[2]
    results = []

    initialValues = (myPerceptron.getBias(), myPerceptron.getWeights())

    print("----------Starting----------")
    for i in range(0, seasons + 1):
        print("Season {}".format(i))
        experiment = []
        if i > 0:
            print("\tTrainig")
            for j in range(len(points)):
                myPerceptron.learn(points[j], desired[j], lr)
            print("\t\tDONE")
        print("\tCalculating")
        for j in range(len(points)):
            experiment.append(myPerceptron.calculate(points[j]))
        print("\t\tDONE")
        results.append(experiment)
        print("\tPrecision: {}%".format(
            calculatePrecision(desired, experiment) * 100))

    print("----------Finished----------")
    print("\n----------Results-----------")
    '''for i in range(len(results)):
        print("Season {}".format(i))
        print("\t precision: {}%".format(calculatePrecision(desired, results[i])*100))
    '''
    print("\n-----------Extras-----------")
    print("Initial values")
    print("    Bias:   ", initialValues[0])
    print("    Weights:", initialValues[1])
    print("Final values")
    print("    Bias:   ", myPerceptron.getBias())
    print("    Weights:", myPerceptron.getWeights())