You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<ahref="#download-and-installation">Download and Installation</a> •
35
+
<ahref="#dependencies">Dependencies</a> •
36
+
<ahref="#support">Support</a>
42
37
</p>
43
38
44
39
40
+
---
41
+
## Description
42
+
This project has an implementation of common algorithms in the literature, both instance selection algorithms and semi-supervised learning algorithms.
45
43
46
-
## Key Features
47
-
48
-
* TBD
49
-
50
-
## Setup
51
-
52
-
TBD
44
+
Among the objectives of the project is that the implemented algorithms are correct and complete with their respective original papers in which they were presented.
53
45
54
-
## Usage guide
46
+
Likewise, there are multiple experiment configuration files for the aforementioned verification, and for the realization of a research process on the behavior of semi-supervised learning algorithms when noise filtering is performed.
55
47
56
-
TBD
48
+
---
49
+
## Download and installation
50
+
IS-SSL is distributed under two libraries, both are available in their last
Los principales objetivos del proyecto son cuatro:
2
3
3
-
Este apartado explica de forma precisa y concisa cuales son los objetivos que se persiguen con la realización del proyecto. Se puede distinguir entre los objetivos marcados por los requisitos del software a construir y los objetivos de carácter técnico que plantea a la hora de llevar a la práctica el proyecto.
4
+
\begin{enumerate}
5
+
\item Diseño e implementación de una biblioteca con los algoritmos de selección de instancias más comunes en la literatura.
6
+
\item Diseño e implementación de una biblioteca con una serie de algoritmos de aprendizaje semi-supervisado.
7
+
\item Integración de las bibliotecas con la plataforma de \texttt{MLaaS} de la Universidad de Burgos (\texttt{UBUMLaaS}).
8
+
\item Diseño y puesta en producción de la parte de administración de \texttt{UBUMLaaS}.
9
+
\end{enumerate}
10
+
11
+
12
+
El enfoque que se le debe dar a las bibliotecas, en adelante \texttt{IS-SSL}\footnote{\textit{Instance Selection - Semi-Supervised Learning.}}, tanto de selección de instancias como de aprendizaje semi-supervisado, deberá permitir de manera sencilla la inclusión o añadido de nuevos algoritmos en un futuro, no siendo necesaria realizar grandes refactorizaciones para ello. Mediante ello se obtendrá un producto escalable y con un mantenimiento relativamente sencillo.
13
+
14
+
\texttt{UBULMLaaS} fue un proyecto desarrollado por ADMIRABLE y se paralizó en 2019, por lo que necesitará una actualización de librerías, interfaz gráfica, seguridad y actualización de la base de datos; entre otras cosas. Independientemente de los cambios, debe primar la sencillez de uso que la aplicación, de forma que la curva de aprendizaje sea mínima.
15
+
16
+
\subsection{Objetivos técnicos}
17
+
Además de lo anteriormente mencionado, el proyecto cuenta con una serie de objetivos técnicos que se pueden resumir en:
18
+
\begin{itemize}
19
+
\item Los algoritmos imeplementados en \texttt{IS-SSL} deberán seguir la guía de estilo de \textit{Scikit-Learn}~\cite{SKLEARNGUIDELINES}, permitiendo a la comunidad científica acostumbrada al uso de la mencionada biblioteca en \texttt{Python}, hacer uso de \texttt{IS-SSL} de igual manera.
20
+
\item Los algoritmos deberán de ser validados de alguna manera, ya sea con la literatura o mediante pares, para asegurar un correcto funcionamiento.
21
+
\item\texttt{UBUMLaaS} procederá a tener distintos tipos o categorías de usuarios, debiendo dejar <<la puerta abierta>> a nuevos tipos de usuarios en el futuro.
22
+
\item\texttt{UBUMLaaS} podrá ser portado y desplegado sobre \textit{bare metal} o mediante contenedores de Docker en cualquier sistema compatible.
23
+
\item\texttt{UBUMLaaS} debe mantener todas sus funcionalidades previas a este proyecto.
24
+
\item\texttt{UBUMLaaS} mostrará estadísticas generadas en tiempo real, se deberá de sortear la problemática de la concurrencia de acceso a registros de la base de datos, así como ficheros temporales.
25
+
\item\texttt{UBUMLaaS} posee su propia API REST escrita en Python y emplea el \textit{framework web} Flask. No se deberá sobrecargar su uso, la carga de trabajo deberá estar balanceada entre cliente y servidor.
En~\cite{sanchez_2020} se define el aprendizaje automático (\textit{machine learning}) como una rama dentro del campo de la Inteligencia Artificial que proporciona a los sistemas la capacidad de aprender y mejorar de manera automática, a partir de la experiencia. Estos sistemas transforman los datos en información, y con esta información pueden tomar decisiones. Este tipo de modelos se crean a base del uso masivo de datos. Cuando se dispone de los datos suficientes para entrenar un modelo comienza el proceso de aprendizaje. El objetivo de este aprendizaje es descubrir patrones ocultos en los datos. En muchas ocasiones el resultado del aprendizaje, el modelo, es una función que dadas unos datos de entrada clasifica o predice correctamente una salida. Como se puede ver en la Figura~\ref{fig:../img/memoria/Machine-learning-overview.pdf} el aprendizaje automático, \textit{machine learning}, posee diferentes aproximaciones, siendo la interfaz diferenciadora entre ellas la forma de uso de las instancias.
En~\cite{sanchez_2020} se define el aprendizaje automático (\textit{machine learning}) como una rama dentro del campo de la Inteligencia Artificial que proporciona a los sistemas la capacidad de aprender y mejorar de manera automática, a partir de la experiencia. Estos sistemas transforman los datos en información, y con esta información pueden tomar decisiones. Este tipo de modelos se crean a base del uso masivo de datos. Cuando se dispone de los datos suficientes para entrenar un modelo comienza el proceso de aprendizaje. El objetivo de este aprendizaje es descubrir patrones ocultos en los datos. En muchas ocasiones el resultado del aprendizaje, el modelo, es una función que dadas unos datos de entrada clasifica o predice correctamente una salida. Como se puede ver en la Figura~\ref{fig:Machine-learning-overview} el aprendizaje automático, \textit{machine learning}, posee diferentes aproximaciones, siendo la interfaz diferenciadora entre ellas la forma de uso de las instancias.
El aprendizaje automático puede ser resumido como <<aprender de ejemplos>>. Al programa se le proporcionan dos conjuntos de datos, uno de entrenamiento y otro de validación~\cite{learned2014introduction}. El objetivo es simple, debe de <<aprender>> en función del conjunto de datos etiquetado proporcionado como entrenamiento para posteriormente identificar las correspondientes etiqueta/s de cada instancia del conjunto de validación con la mayor precisión posible.
@@ -406,8 +406,8 @@ \section{Técnicas de selección de instancias}\label{sec:tecnicas-seleccion-ins
406
406
\toprule
407
407
Edición de Wilson (ENN) & $O(n^2)$ &~\cite{wilson1972asymptotic}\\
408
408
\rowcolor[HTML]{EFEFEF}
409
-
Condensado de Hart (CNN) & $O(n^2)$ &~\cite{hart1968condensed}\\
0 commit comments