def crossOne_point(padre, madre): """ “Apegandome al Codigo de Etica de los Estudiantes del Tecnologico de Monterrey, me comprometo a que mi actuacion en este examen este regida por la honestidad academica.” """ hijo = Ann( padre.size ) #iniciamos el hijo como una nueva red dado el tamaño del padre #igualamos los pesos y bias de la capa oculta del padre hijo.pesosOculta = padre.pesosOculta hijo.biasOculta = padre.biasOculta #igualamos los pesos y bias de la neurona final del la madre hijo.pesosFinal = madre.pesosFinal hijo.biasFinal = madre.biasFinal return hijo
def crossAritmetico(padre, madre): """ “Apegandome al Codigo de Etica de los Estudiantes del Tecnologico de Monterrey, me comprometo a que mi actuacion en este examen este regida por la honestidad academica.” """ alpha = .4 #proporcion de cruza de cada padre hijo = Ann( padre.size ) #iniciamos el hijo como una nueva red dado el tamaño del padre #asignamos cada atributo de la red hijo a la suma del porcentaje #de cada atributo que tiene el padre y la madre hijo.pesosOculta = padre.pesosOculta * alpha + madre.pesosOculta * (1 - alpha) hijo.biasOculta = padre.biasOculta * alpha + madre.biasOculta * (1 - alpha) hijo.pesosFinal = padre.pesosFinal * alpha + madre.pesosFinal * (1 - alpha) hijo.biasFinal = padre.biasFinal * alpha + madre.biasFinal * (1 - alpha) return hijo