Skip to content

Commit

Permalink
Merge pull request #124 from BlancaCC/backpropagation
Browse files Browse the repository at this point in the history
Proyecto en su estadio final
  • Loading branch information
BlancaCC authored Jun 20, 2022
2 parents 300ca73 + 5a16eb0 commit a6daac9
Show file tree
Hide file tree
Showing 116 changed files with 7,751 additions and 673 deletions.
38 changes: 37 additions & 1 deletion .github/workflows/personal-dictionary.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
personal_ws-1.1 es 0 utf-8
ActivationFunctions
Amat
Approximators
Aristóteles
Backpropagation
Backpropagations
Bernstein
Expand All @@ -18,6 +20,7 @@ Factorizando
Feedforward
Fn
ForwardPropagation
FromMatrixNN
Funtores
GN
GPUs
Expand All @@ -28,17 +31,19 @@ HUxx
Halber
HardTanh
Hardtanh
Hardtanh
Hornik
IndicatorFunction
IntervaloCentral
Isoperimetry
Iésima
JJ
Julián
Jupyter
KNN
LReLU
LaTeX
Liang
LinRange
Liskov
Lusin
López
Expand All @@ -50,14 +55,21 @@ Merí
Mesejo
Multilayer
NN
Nagaraj
Nótese
Ockham
OneLayerNeuralNetwork
OptimizedNeuralNetwork
OptimizedNeuronalNetwork
Palett
Perceptrón
Pérez
RampFunction
RandomWeightsNN
ReLU
Readme
Rosenblatt
STL
Sebastien
Sellke
Sigmoid
Expand All @@ -66,7 +78,9 @@ Sigmoidea
Stinchcombe
TFG
TeoremaStoneWeiertrass
ThresholdFunction
Tietze
UCI
UMVUE
Wilcoxon
Wortman
Expand All @@ -78,14 +92,20 @@ aproximadores
autres
auxiliarDiferenciaPorDerivada
backpropagation
baselinestretch
bgcolor
ceil
cienciadedatos
codominio
codominios
contutor
covariate
covariates
csv
cte
darkRed
dat
derivativeRampFunction
diferenciabilidad
diferenciable
diferenciables
Expand All @@ -101,6 +121,7 @@ feedforward
fg
fj
fjk
framesep
gj
gjk
hiperplanos
Expand All @@ -110,11 +131,15 @@ ij
ik
inasumible
inecuación
initializer
insesgado
insesgados
ipynb
isoperimetry
jejejeje
jk
jl
lRelu
lcc
linenos
lineos
Expand All @@ -125,6 +150,7 @@ modus
muestral
multicapa
multicapas
nn
nx
nótese
operandi
Expand All @@ -134,14 +160,18 @@ pag
parametrized
paramétrico
paramétricos
pdf
perceptron
perceptrones
perceptrón
png
posteriori
precompilados
preimágenes
primeraCapa
println
qB
redimensionando
reenfocar
reescalados
referenciada
Expand All @@ -156,15 +186,21 @@ rrnng
separabilidad
sigmoide
sigmoidea
sobreajustado
sobreajuste
sobreentrenado
sobreescribir
solventable
squasher
stl
struct
subespacio
subespacios
subrecubrimiento
subsección
sumatoria
sumatorias
sutilBackground
sutilGreen
tanh
teo
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,4 @@ Notas/
Experimentos/comparativas-funciones-activacion/pruebas-linter.jl
Experimentos/comparativas-funciones-activacion/boxplot.jl
Experimentos/comparativas-funciones-activacion/img/boxplot-whiskers-activation-function.png
Memoria/capitulos/.ipynb_checkpoints/Ejemplo-uso-biblioteca-checkpoint.ipynb
59 changes: 0 additions & 59 deletions Biblioteca-Redes-Neuronales/src/one_layer_neuronal_network.jl

This file was deleted.

29 changes: 0 additions & 29 deletions Biblioteca-Redes-Neuronales/test/one_layer_neural_network.test.jl

This file was deleted.

27 changes: 27 additions & 0 deletions Experimentos/.config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,30 @@ FACTOR = +1000000 # Parámetro implicado con la cardinalidad del conjunt
#DIRECTORIO_IMAGENES = "./Experimentos/comparativas-funciones-activacion/img/" #carpeta que contendrá las imágenes
# Descomentar: Para mostrar en la carpeta de la memoria
DIRECTORIO_IMAGENES = "./Memoria/img/funciones-activacion/" #carpeta que contendrá las imágenes

# Configuración de
[visualizacion-inicializacion-pesos-R]
# Descomentar: Para mostrar en la carpeta del experimento
DIRECTORIO_IMAGENES = "./Experimentos/inicializacion-pesos-red-neuronal/img/0_sintetico_homogeneo/" #carpeta que contendrá las imágenes
# Descomentar: Para mostrar en la carpeta de la memoria
#DIRECTORIO_IMAGENES = "./Memoria/img/7-algoritmo-inicializar-pesos/"

# Configuración de
[visualizacion-inicializacion-pesos-R-aleatorio]
# Descomentar: Para mostrar en la carpeta del experimento
DIRECTORIO_IMAGENES = "./Experimentos/inicializacion-pesos-red-neuronal/img/0_1_aleatorio/" #carpeta que contendrá las imágenes
# Descomentar: Para mostrar en la carpeta de la memoria
#DIRECTORIO_IMAGENES = "./Memoria/img/7-algoritmo-inicializar-pesos/"
DIRECTORIO_RESULTADOS = "Experimentos/inicializacion-pesos-red-neuronal/resultados/1_sinteticos_heterogeneo/"
NOMBRE_FICHERO_RESULTADOS = "resultados.csv"
NUMERO_PARTICIONES = +15 # Veces que se tomarán medidas
LIMITE_INFERIOR = -10 # Cota inferior de los valores posibles
LIMITE_SUPERIOR = +10 # Cota superior de los valores posibles
FACTOR = +4 # Por cada neurona cuantos datos hay

# Configuración de
[air-self-noise]
# Descomentar: Para mostrar en la carpeta de la memoria
FICHERO_DATOS = "Experimentos/inicializacion-pesos-red-neuronal/data/airfoil_self_noise.csv"
DIRECTORIO_RESULTADOS = "Experimentos/inicializacion-pesos-red-neuronal/resultados/2_air_self_noise/"
NUMERO_EJECUCIONES = +15 # Veces que se tomarán medidas
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
# El directorio donde se guarda los ficheros es: DIRECTORIO_RESULTADOS
###################################################################################

include("../../Biblioteca-Redes-Neuronales/src/activation_functions.jl")
include("../../OptimizedNeuralNetwork.jl/src/activation_functions.jl")
using .ActivationFunctions
# Bibliotecas para tiempos y estadísticas
using TimerOutputs
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# Paquetes
using Plots
using TOML
include("../../Biblioteca-Redes-Neuronales/src/activation_functions.jl")
include("../../OptimizedNeuralNetwork.jl/src/activation_functions.jl")
using .ActivationFunctions

FICHERO_CONFIGURACION = "Experimentos/.config.toml"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
########################################################
# EXPERIMENTO SINTÉTICO DE NUESTRO algoritmo
# Visualiza para ciertos tamaños de muestra el error obtenido
########################################################
using Random
using Plots
using TOML
FICHERO_CONFIGURACION = "Experimentos/.config.toml"
config = TOML.parsefile(FICHERO_CONFIGURACION)["visualizacion-inicializacion-pesos-R"]
img_path = config["DIRECTORIO_IMAGENES"]

Random.seed!(1)
include("../../OptimizedNeuralNetwork.jl/src/OptimizedNeuralNetwork.jl")
using .OptimizedNeuralNetwork

M = 1
K_range = 3
f_regression(x)=(x<1) ? exp(-x)-4 : log(x)
for (data_set_size,n) in zip([3,4,5, 8,15,23,51,73,100, 103],[2,3,5,7,10,20,51,72,90, 100])

println("EXPERIMENTO SINTÉTICO")
println("n=$n y tamaño conjunto $data_set_size")
# Partición del conjunto de muestra
X_train= Vector(LinRange(-K_range, K_range, n))
Y_train = map(f_regression, X_train)
# Cálculo de la red neuronal con pesos inicializados
h = nn_from_data(X_train, Y_train, n, M)
# Función de evaluación por forward propagation
evaluate(x)=forward_propagation(h,
RampFunction,x)
# Visualización
interval = [-K_range,K_range]
file_name = "f_ideal_y_rn_con_$(n)_neuronas"
plot(x->evaluate([x])[1],
-K_range,K_range,
label="red neuronal n=$n"
)
plot!(f_regression,
label="f ideal",
title="Comparativa función ideal y red neuronal n=$n"
)
png(img_path*file_name)
end
Loading

0 comments on commit a6daac9

Please sign in to comment.