Example #1
0
def modelSubmission():
    debug('In model submission method')
    if request.method == 'POST':

        n = network.get_network(networks, request.form['network'])
        if n == None:
            debug("Error, can't find the network")
            return

        if request.form['btn'] == 'Train':
            debug("Training network")
            method = request.form['method']
            number_of_epochs_logistic = int(request.form['epochsLogistic'])
            number_of_epochs_multilayer = int(request.form['epochsMultilayer'])
            k = int(request.form['k'])
            learning_rate_deep = float(request.form['learningRate'])
            layers = int(request.form['layers'])
            stop_at_100_accuracy = request.form.getlist('100')
            if not n.initialized or method != n.method_initialized:
                n.initialize(method, learning_rate_deep, layers)
            n.train(method,
                    number_of_epochs_logistic,
                    number_of_epochs_multilayer,
                    stop_at_100_accuracy=stop_at_100_accuracy)

            #todo : update progress
            #t = threading.Thread(target=train_and_redirect, args=(n,))
            #t.start()
        elif request.form['btn'] == 'Reset':
            n.initialized = False
            n.best_accuracy = 0
            n.accuracy = 0
            n.epochs_for_best_accuracy = 0
            n.epochs_for_accuracy = 0
            n.method_initialized = None
            n.trained = False
        elif request.form['btn'] == 'Delete':
            n.deleteModel()
            networks.remove(n)

        global summary_initialization, summary_training, summary_output
        summary_initialization = False
        summary_training = True
        summary_output = False

    return redirect('/')
Example #2
0
def output(path):
    debug('In output method')
    if request.method == 'POST':
        n = network.get_network(networks, path)
        debug('network = ' + str(n))
        inputs = []
        for i in range(n.number_of_inputs):
            inputs.append(request.form[str(i)])
            debug('input ' + str(i) + ' = ' + request.form[str(i)])
        global result
        result = n.get_output(map(int, inputs))

    global summary_initialization, summary_training, summary_output
    summary_initialization = False
    summary_training = False
    summary_output = True
    return redirect('/')
Example #3
0
def output(path):
    debug('In output method')
    if request.method == 'POST':
        n = network.get_network(networks, path)
        debug('network = ' + str(n))
        inputs = []
        for i in range(n.number_of_inputs):
            inputs.append(request.form[str(i)])
            debug('input ' + str(i) + ' = ' + request.form[str(i)])
        global result
        result = n.get_output(map(int, inputs))
        
    global summary_initialization, summary_training, summary_output 
    summary_initialization = False
    summary_training = False
    summary_output = True
    return redirect('/')
Example #4
0
def modelSubmission():
    debug('In model submission method')
    if request.method == 'POST':
    
        n = network.get_network(networks, request.form['network'])
        if n == None:
            debug("Error, can't find the network")
            return
            
        if request.form['btn'] == 'Train':
            debug("Training network")
            method = request.form['method']
            number_of_epochs_logistic = int(request.form['epochsLogistic'])
            number_of_epochs_multilayer = int(request.form['epochsMultilayer'])
            k = int(request.form['k'])
            learning_rate_deep = float(request.form['learningRate'])
            layers = int(request.form['layers'])
            stop_at_100_accuracy = request.form.getlist('100')
            if not n.initialized or method != n.method_initialized:
                n.initialize(method, learning_rate_deep, layers)
            n.train(method, number_of_epochs_logistic, number_of_epochs_multilayer, stop_at_100_accuracy=stop_at_100_accuracy)
             
            #todo : update progress
            #t = threading.Thread(target=train_and_redirect, args=(n,))
            #t.start()
        elif request.form['btn'] == 'Reset':
            n.initialized = False
            n.best_accuracy = 0
            n.accuracy = 0
            n.epochs_for_best_accuracy = 0
            n.epochs_for_accuracy = 0
            n.method_initialized = None
            n.trained = False
        elif request.form['btn'] == 'Delete':
            n.deleteModel()
            networks.remove(n)
                
        global summary_initialization, summary_training, summary_output 
        summary_initialization = False
        summary_training = True
        summary_output = False
        
    return redirect('/')