diff options
| author | Mitsuo Tokumori <[email protected]> | 2023-06-07 13:34:45 -0500 |
|---|---|---|
| committer | Mitsuo Tokumori <[email protected]> | 2023-06-07 13:34:45 -0500 |
| commit | 796609fde3238e632d3bc08fcb186134b661fe49 (patch) | |
| tree | dd58722516ff4c687bb051b05b455d0e8920c743 | |
| parent | f734026991f16f90a5a436e3d1c159d91f80afc1 (diff) | |
| download | thesis-796609fde3238e632d3bc08fcb186134b661fe49.tar.gz thesis-796609fde3238e632d3bc08fcb186134b661fe49.tar.bz2 thesis-796609fde3238e632d3bc08fcb186134b661fe49.zip | |
Add tools explanation for section 1.3
| -rw-r--r-- | chapter/10-generalidades.tex | 242 | ||||
| -rw-r--r-- | thesis.bib | 118 |
2 files changed, 354 insertions, 6 deletions
diff --git a/chapter/10-generalidades.tex b/chapter/10-generalidades.tex index 40af41b..73f1a37 100644 --- a/chapter/10-generalidades.tex +++ b/chapter/10-generalidades.tex @@ -608,11 +608,110 @@ verificación de cada resultado. En esta sección se listan las herramientas, métodos, y procedimientos relevantes para cumplir los resultados esperados planteados en la sección anterior. Algunas herramientas son específicas para ciertos resultados esperados, mientras -que otras son transversales a varios resultados esperados. Se busca -ser coherente en la selección de herramientas y métodos -utilizados para la problemática, en este caso la deserción estudiantil -universitaria detectada de forma tardía desaprovechando los datos disponibles -de los estudiantes. +que otras son transversales a varios resultados esperados. En la +\autoref{tab:herramientas-metodos-procedimientos} se aprecian los métodos, +procedimientos, y herramientas asociados a cada resultado esperado. + +En general, se busca ser coherente en la selección de herramientas y métodos +utilizados para enfrentar la problemática, en este caso la deserción estudiantil +universitaria detectada de forma tardía desaprovechando los datos de +los estudiantes disponible para las universidades. + +\begin{table} [H] % htbp + \centering + \small + \caption{Herramientas, métodos, y procedimientos por resultado esperado} + \label{tab:herramientas-metodos-procedimientos} + \begin{tabular} {*{3}{|p{0.30\linewidth}}|} + \hline + + \textbf{Resultado esperado} & + \textbf{Métodos y Procedimientos} & + \textbf{Herramienta} \\ + \hline + \hline + + \textbf{R1.1} Recolección de datos. & + Solicitar conjunto de datos a universidades del país. Revisión de la literatura. & + Email. Bases de datos bibliográficos \\ + \hline + + \textbf{R1.2} Análisis descriptivo y limpieza de datos. & + Estadística descriptiva, histogramas & + Python, matplotlib \\ + \hline + + \textbf{R1.3} Transformación de datos. & + Metolodogía KDD & + Python, pandas \\ + \hline + + \textbf{R1.4} Análisis de relación. & + Regresión logística & + Python, matplotlib \\ + \hline + + \textbf{R1.5} Análisis de correlación. & + Mapas de calor & + Python, matplotlib \\ + \hline + + \textbf{R2.1} Identificación de los algoritmos aprendizaje automático de predicción con ayuda de la literatura & + Revisión de la literatura & + Base de datos bibliográficos \\ + \hline + + \textbf{R2.2} Implementación de los algoritmos de ML seleccionados que mejor se ajusten a la problemática. & + Modelo incremental, KDD & + Python, poetry-python, scikit-learn, jupyter notebooks \\ + \hline + + \textbf{R2.3} Comparación de los algoritmos de ML implementados y selección del mejor modelo según su presición en la predicción & + Modelo incremental, KDD & + Python, matplotlib \\ + \hline + + \textbf{R3.1} Catálogo de requisitos. & + Metolodogía ágil, User Story Mapping & + Google Sheets, draw.io \\ + \hline + + \textbf{R3.2} Prototipo del sistema. & + UI Design & + Figma \\ + \hline + + \textbf{R3.3} Especificación de requisitos. & + Metolodogía ágil, User Stories & + Google Sheets \\ + \hline + + \textbf{R3.4} Modelo de base de datos. & + Modelo relacional, tercera forma normal & + draw.io \\ + \hline + + \textbf{R3.5} Arquitectura de la solución. & + Modelo 4+1 & + draw.io \\ + \hline + + \textbf{R3.6} Implementación del sistema. & + Modelo incremental & + Git, Github, AWS, Visual Studio Code, PostgreSQL. Backend y Frontend tech stack \\ + \hline + + \textbf{R3.7} Integración del sistema con los modelos de ML. & + Modelo incremental & + Git, Github, AWS \\ + \hline + + \textbf{R3.8} Instalación y configuración del software. & + Modelo incremental & + Apache Web Server. Markdown, diagramas mermaid \\ + \hline + \end{tabular} +\end{table} \subsection{Aprendizaje Automático} @@ -691,4 +790,135 @@ extremadamente precisos, no son infalibles y siempre existe un margen de error \autocite{Latif20221051}. Por lo tanto, la interpretación cuidadosa de los resultados del modelo es fundamental para tomar decisiones informadas y diseñar estrategias efectivas para prevenir la deserción estudiantil -\autocite{Alwarthan2022107649, Latif20221051}.
\ No newline at end of file +\autocite{Alwarthan2022107649, Latif20221051}. + +\subsection{Bases de datos bibliográficas} + +Son bases de datos que contienen información bibliográfica, como referencias y +citas de libros, artículos, revistas, conferencias, entre otros. Estas bases de +datos permiten buscar y acceder a la información académica +\autocite{bases-de-datos-bibliograficas}. Algunos ejemplos incluyen SCOPUS, +IEEE Xplore, y ACM Digital Library. + +\subsection{Python} + +Python es un lenguaje de programación popular y de propósito general. En la +actualidad, es muy popular debido a su sintaxis legible y su enfoque en la +simplicidad y la eficiencia. Python es utilizado ampliamente en el desarrollo +de software, análisis de datos, inteligencia artificial, entre otras áreas +\autocite{python}. + +La utilidad de Python se le puede atribuir en gran medida gracias a la +diversidad de paquetes \textit{open source} disponibles. Para +desarrollar los resultados esperados relacionados al objetivo \textit{O2}, +se utilizarán las librerías Pandas, NumPy, Matplotlib, y scikit-learn. Es un +problema común que un proyecto grande, que utiliza muchas librerías, se +encuentre con conflictos de dependencias. Es decir, que una librería +necesita una versión más antigua de otra, pero una tercera librería necesita +la versión más nueva. Para resolver este tipo de conflictos, se utilizará +el gestor de librerias Poetry. +% citation needed + +\subsection{Matplotlib} + +Matplotlib es una biblioteca de visualización en Python. Proporciona +herramientas para crear gráficos estáticos, gráficos interactivos y +visualizaciones 3D. Es ampliamente utilizada en el análisis y visualización de +datos \autocite{matplotlib}. + +\subsection{Pandas} + +Pandas es una biblioteca de Python utilizada para el análisis y manipulación de +datos. Proporciona estructuras de datos y funciones que facilitan la limpieza, +transformación y exploración de datos \autocite{pandas}. + +\subsection{Poetry-python} + +Poetry es una herramienta de administración de dependencias para proyectos de +Python. Simplifica la gestión de paquetes y entornos virtuales, permitiendo una +fácil instalación y distribución de proyectos \autocite{poetry-python}. + +\subsection{Scikit-learn} + +Scikit-learn es una biblioteca de aprendizaje automático (machine learning) en +Python. Proporciona una amplia gama de algoritmos y herramientas para la +construcción y evaluación de modelos de aprendizaje automático \autocite{scikit-learn}. + +Existen muchas librarías que facilitan el uso de algorítmos de aprendizaje +automático. Sin embargo, se eligió scikit-learn por su popularidad, +diversidad de algoritmos disponibles, y muy buena documentación que facilitan +el aprendizaje de la librería. + +\subsection{Jupyter Notebooks} + +Jupyter Notebooks es un entorno interactivo de programación que permite combinar +código, texto y elementos gráficos en un solo documento. Es ampliamente +utilizado en el análisis de datos y la experimentación rápida debido a su +capacidad para ejecutar código en bloques \autocite{jupyter-notebooks}. + +\subsection{Google Sheets} + +Google Sheets es una aplicación de hojas de cálculo en línea proporcionada por +Google. Permite crear, editar y colaborar en hojas de cálculo en tiempo real, +similar a Microsoft Excel \autocite{google-sheets}. + +\subsection{Draw.io} + +Draw.io es una herramienta en línea para crear diagramas y gráficos. Proporciona +una interfaz intuitiva y una amplia gama de elementos gráficos para crear +diagramas de flujo, organigramas, diagramas de red y más \autocite{draw-io}. + +\subsection{Figma} + +Figma es una herramienta de diseño de interfaces de usuario (UI) y experiencia +de usuario (UX) basada en la nube. Permite a los diseñadores crear, colaborar y +prototipar diseños de forma eficiente \autocite{figma}. + +\subsection{Git} + +Git es un sistema de control de versiones ampliamente utilizado para el +seguimiento de cambios en archivos y proyectos de software. Permite a los +desarrolladores colaborar en proyectos y realizar un seguimiento de las +modificaciones realizadas \autocite{git}. + +\subsection{GitHub} + +GitHub es una plataforma de alojamiento de código basada en Git. Permite a los +desarrolladores almacenar, gestionar y colaborar en proyectos de software, y +proporciona herramientas adicionales como seguimiento de problemas, solicitudes +de extracción y gestión de versiones \autocite{github}. + +\subsection{Visual Studio Code} + +Visual Studio Code es un editor de código fuente desarrollado por Microsoft. Es +altamente personalizable y admite una amplia gama de lenguajes de programación. +Proporciona características avanzadas como resaltado de sintaxis, depuración y +control de versiones integrado \autocite{visual-studio-code}. + +\subsection{PostgreSQL} + +PostgreSQL es un sistema de gestión de bases de datos relacional de código +abierto. Es conocido por su confiabilidad, robustez y capacidad para manejar +grandes volúmenes de datos. PostgreSQL es ampliamente utilizado en aplicaciones +web y empresariales \autocite{postgresql}. + +\subsection{Nginx} + +Nginx es un servidor web de alto rendimiento y un proxy inverso. Es conocido por +su capacidad para manejar múltiples solicitudes simultáneas y su eficiencia en +el manejo del tráfico web. Nginx se utiliza comúnmente como servidor web en +aplicaciones de producción \autocite{nginx}. + +\subsection{Markdown} + +Markdown es un lenguaje de etiquetas ligero utilizado para dar formato al texto +"plano". Es fácil de leer y escribir, y se utiliza comúnmente para crear +documentación, páginas web y notas de forma rápida y sencilla +\autocite{markdown}. + +\subsection{Diagramas de Mermaid} + +Mermaid es una herramienta que permite crear diagramas de flujo, diagramas de +secuencia y otros tipos de diagramas utilizando una sintaxis de texto sencilla. +Estos diagramas pueden ser incorporados en documentos o presentaciones para una +mejor visualización de la información \autocite{mermaid-diagrams}.
\ No newline at end of file @@ -630,3 +630,121 @@ URL = {https://doi.org/10.1007/BF02214313} file = {Chitti et al. - 2020 - Need for Interpretable Student Performance Predict.pdf:/home/mitsuo/.local/share/Zotero/storage/JJGSFRMJ/Chitti et al. - 2020 - Need for Interpretable Student Performance Predict.pdf:application/pdf}, } +# 10-generalidades +# Metodos, Procedimientos, Herramientas + +@online{github, + author = {{GitHub}}, + title = {{GitHub's Frequently Asked Questions}}, + url = {https://resources.github.com/faq/}, + urldate = {2023-06-07}, +} + +@online{bases-de-datos-bibliograficas, + title = {SCOPUS}, + url = {https://www.elsevier.com/es-es/solutions/scopus}, + urldate = {2023-06-05} +} + +@online{python, + title = {Python}, + url = {https://www.python.org}, + urldate = {2023-06-05} +} + +@online{matplotlib, + title = {Matplotlib}, + url = {https://matplotlib.org}, + urldate = {2023-06-05} +} + +@online{pandas, + title = {Pandas}, + url = {https://pandas.pydata.org}, + urldate = {2023-06-05} +} + +@online{poetry-python, + title = {Poetry-python}, + url = {https://python-poetry.org}, + urldate = {2023-06-05} +} + +@online{scikit-learn, + title = {Scikit-learn}, + url = {https://scikit-learn.org}, + urldate = {2023-06-05} +} + +@online{jupyter-notebooks, + title = {Jupyter Notebooks}, + url = {https://jupyter.org}, + urldate = {2023-06-05} +} + +@online{google-sheets, + title = {Google Sheets}, + url = {https://www.google.com/sheets/about/}, + urldate = {2023-06-05} +} + +@online{draw-io, + title = {Draw.io}, + url = {https://www.draw.io}, + urldate = {2023-06-05} +} + +@online{figma, + title = {Figma}, + url = {https://www.figma.com}, + urldate = {2023-06-05} +} + +@online{git, + title = {Git}, + url = {https://git-scm.com}, + urldate = {2023-06-05} +} + +@online{github, + title = {GitHub}, + url = {https://github.com}, + urldate = {2023-06-05} +} + +@online{aws, + title = {AWS}, + url = {https://aws.amazon.com}, + urldate = {2023-06-05} +} + +@online{visual-studio-code, + title = {Visual Studio Code}, + url = {https://code.visualstudio.com}, + urldate = {2023-06-05} +} + +@online{postgresql, + title = {PostgreSQL}, + url = {https://www.postgresql.org}, + urldate = {2023-06-05} +} + +@online{nginx, + title = {Nginx}, + url = {https://nginx.org}, + urldate = {2023-06-05} +} + +@online{markdown, + title = {Markdown}, + url = {https://daringfireball.net/projects/markdown/}, + urldate = {2023-06-05} +} + +@online{mermaid-diagrams, + title = {Mermaid diagrams}, + url = {https://mermaid.js.org/}, + urldate = {2023-06-05} +} + |
