示例#1
0
文件: main.py 项目: gsiriani/MAA
    for v in valoresPosibles["G3"]:
        cant[v] = len([e for e in estudiantesEntrenamiento if e["G3"] == v])
    masProbable = max(cant.iteritems(), key=lambda (k, v): v)[0]
    correctos = 0
    for e in estudiantesTest:
        if e["G3"] == masProbable:
            correctos += 1
    validacionMasProbable += float(correctos)/len(estudiantesTest)

    resultados = []

    for i in range(CANT_BLOQUES):
        pos = i*largoBloque
        estTest = estudiantesEntrenamiento[pos:pos+largoBloque]
        estEntr = estudiantesEntrenamiento[:pos] + estudiantesEntrenamiento[pos+largoBloque:]
        (p, pc) = bayes.entrenar(ejemplos= estEntr)
        resultados.append(bayes.validarLista(estTest, p, pc))

    validacionCruzada += sum([r/CANT_BLOQUES for r in resultados])


    # Entreno el algoritmo con estudiantesEntrenamiento y lo valido con estudiantesTest
    (p, pc) = bayes.entrenar(ejemplos= estudiantesEntrenamiento)
    validacionFinal += bayes.validarLista(estudiantesTest, p, pc)

    for i in range(0, MAX_AJUSTE):
        (p, pc) = bayes.entrenar(ejemplos= estudiantesEntrenamiento, ajuste= i)
        validacionAjuste[i] += bayes.validarLista(estudiantesTest, p, pc)


print 'Porcentaje de aciertos:'