Está en la página 1de 11

Suscríbete a DeepL Pro para poder traducir archivos de mayor tamaño.

Más información disponible en www.DeepL.com/pro.

Escuela Colombiana de Ingenieria


MSc en Data Science

Título: Aplicación de métodos de aprendizaje automático a datos del mundo real

Nombre del módulo: Aprendizaje automático


Código del módulo: MLEA_M
Nivel: MSc.
Programa: MSc Data
Science Tipo de evaluación: Trabajo
de curso Ponderación: 100%
Marca máxima disponible: 50

Conferenciante: Dr. Ivan Olier-Caparroso


Datos de contacto: ivan.olier@escuelaing.edu.co

Recursos necesarios: Ordenador de sobremesa/portátil, apuntes del módulo, Python, Microsoft Word, recursos de
biblioteca, Internet.

Fechas importantes:

Fecha de entrega: 28 de abril de 2023

Concurso InClass Kaggle

Fecha límite: 24 de mayo de 2023, 23:59 (UTC)

Entrega de trabajos

Fecha de entrega: 26 de mayo de 2023,

23:59 (UTC) Método de entrega: Microsoft

Teams

Fecha de feedback: 29 de mayo de

2023 Método de feedback: En

Microsoft Teams
1
Introducción
Este curso proporciona experiencia en el uso de los métodos desarrollados teóricamente en clase. En
particular, se le proporcionará un problema del mundo real y se le pedirá que proporcione una solución
utilizando el aprendizaje automático.

Formato del curso


Este curso requiere que trabajes en parejas. Debéis enviarme un correo electrónico
(ivan.olier@escuelaing.edu.co) indicando el nombre de vuestro compañero de equipo, copiando su nombre,
y un nombre de equipo. Por favor, hazlo lo antes posible, pero no más tarde del miércoles 3rd de mayo.
Después de esa fecha, los estudiantes que no tengan equipo serán asignados a uno al azar.

Deberá presentar un breve informe que resuma el trabajo realizado y las predicciones del modelo final que
desarrolle y que considere el mejor posible.

No se trata de un curso prescriptivo con un camino claro hacia la solución. En su lugar, requiere que conciba,
codifique y pruebe varios enfoques antes de llegar a una solución final. Además, el entrenamiento de
modelos de aprendizaje automático (ML) requiere cierto tiempo de computación que puede ralentizar aún
más su progreso. Por lo tanto, es muy poco aconsejable dejar el trabajo para el último momento. También
se espera que una parte importante del trabajo se lleve a cabo durante las sesiones posteriores del
laboratorio de informática.

Como parte de la evaluación del curso, se creará una tabla de clasificación. Para ello, deberá enviar sus
predicciones en un formato de archivo estándar. Consulte los detalles en la sección "Qué debe enviar".

Detalles del problema real


En la actualidad se utilizan más de 5.000 millones de dispositivos móviles con varios sensores (por ejemplo,
acelerómetro y GPS), que capturan mediciones detalladas, continuas y objetivas sobre distintos aspectos de
nuestra vida, incluida la actividad física. La adopción tan generalizada de los teléfonos inteligentes ofrece un
potencial sin parangón para la recopilación de datos con el fin de estudiar el comportamiento y la salud
humanos. Los teléfonos inteligentes, con el almacenamiento adecuado, procesadores potentes y
transmisión inalámbrica, pueden recopilar cantidades masivas de datos sobre enormes grupos de personas
durante largos periodos de tiempo sin necesidad de hardware o instrumentos adicionales.

Con este trabajo de curso, se le pide que proponga una solución utilizando ML para realizar el
reconocimiento de la actividad humana (HAR). HAR es un proceso dirigido a la clasificación de acciones
humanas en un periodo de tiempo determinado basado en mediciones discretas (aceleración, velocidad de
rotación, coordenadas geográficas, etc.) realizadas por dispositivos digitales personales. Con el fin de tomar
una decisión informada, deberá desarrollar y probar varios modelos ML antes de sugerir un enfoque final para
resolver la tarea. Se le proporcionará una base de datos que consta de datos recogidos de 36 usuarios diferentes
que realizan seis tipos de actividades humanas (subir y bajar escaleras, sentarse, caminar, correr y estar de
pie) durante periodos de tiempo específicos. Estos datos se adquirieron a partir de acelerómetros, que son
capaces de detectar la orientación del dispositivo midiendo la aceleración a lo largo de las tres dimensiones
diferentes. Se recogieron utilizando una frecuencia de muestreo de 20 Hz (1 muestra cada 50 milisegundos), lo
que equivale a 20 muestras por segundo.

La base de datos del curso consiste en datos sintéticos generados a partir de un extracto de datos recogidos por el
WISDM Lab (https://www.cis.fordham.edu/wisdm/). Tenga en cuenta que la base de datos del trabajo del
curso es única, por lo que no hay ninguna equivalente disponible en Internet. Por lo tanto, correrá el riesgo
de plagio si su trabajo de curso utiliza principalmente código ya publicado (consulte más detalles en la
2
sección de Faltas académicas de esta tarea). No obstante, puede navegar por Internet para encontrar ideas sobre
cómo resolver el trabajo del curso. Si tiene alguna duda, coménteme la situación lo antes posible, pero
siempre antes de la entrega.

3
Descripción de la base de datos
La base de datos del trabajo de curso se distribuirá a través de un concurso de la Comunidad Kaggle
(https://www.kaggle.com/competitions/mlea-challenge-2023i ) cuyo acceso está restringido a los alumnos
matriculados en este módulo. Es la base de datos oficial que se utilizará en este trabajo de curso, y no se
permite el uso de ninguna otra variante que pudiera estar disponible en otro lugar.

La base de datos contiene información sobre 36 usuarios que realizaron seis actividades humanas diferentes,
como subir y bajar escaleras, sentarse, caminar, correr y estar de pie. Los datos se recogieron con
acelerómetros, que miden la aceleración en tres dimensiones y determinan la orientación del dispositivo.
Los datos de las series temporales se dividieron en fragmentos de 10 segundos y de cada fragmento se
extrajeron características estadísticas o metadatos. Usted tendrá acceso a los metadatos y a las series
temporales, por lo que podrá optar por construir modelos ML basados en cualquiera de ellos. Además,
puede considerar extraer características adicionales de las series temporales.

Descripción de los archivos y carpetas


• Archivo "signals.csv": contiene los datos de series temporales organizados por usuarios y fragmentos.
• Fichero "signals_test": contiene los datos de las series temporales correspondientes al subconjunto
de prueba. Sigue la misma estructura que el archivo "signals.csv".
• metadata.csv -contiene características extraídas de las señales y la columna objetivo (actividad)
• metadata_test.csv - contiene las mismas columnas que 'metadata.csv' pero sin la columna de destino.
• predictions_example.csv - Una muestra del archivo de predicciones utilizando el formato correcto
para la competición Kaggle.

1. El archivo "signals.csv" tiene las siguientes columnas:

• user_snippet: Id de usuario + id de fragmento.


• timestamp: en milisegundos.
• eje x: La aceleración en la dirección x medida por el acelerómetro del teléfono. Los valores son de
punto flotante entre -20 y 20. Un valor de 10 = 1g = 9,81 m/s^2, y 0 = sin aceleración. La aceleración
registrada incluye la aceleración gravitatoria hacia el centro de la Tierra, de modo que cuando el
teléfono está en reposo sobre una superficie plana el eje vertical registrará +-10.
• eje y: igual que el eje x, pero a lo largo del eje y.
• eje z: igual que el eje x, pero a lo largo del eje z.

2. El archivo "signals_test.csv " tiene una estructura similar a la del archivo "signals.csv".

3. El archivo "metadata.csv" es un archivo CSV con las siguientes columnas:


• user_snippet - el identificador del usuario que adquirió los datos (entero) + el identificador del
snippet (entero).
• actividad - la actividad que el usuario realizó en el fragmento correspondiente. Se trata del objetivo,
que puede ser una de las siguientes etiquetas de clase:
o caminando
o jogging
o sentado
o de pie
4
o arriba
o abajo
• Características extraídas: las 30 columnas restantes corresponden a 10 características extraídas
de las series temporales de aceleración x, y y z. Cada nombre de columna tiene el formato EJE D
CARACTERÍSTICA, donde D es x, y o z; y CARACTERÍSTICA es una de las siguientes:
o suma_valores
o mediana
o media
o longitud
o desviación_estándar
o desviación
o raíz_media_cuadrada
o máximo
o máximo_absoluto
o mínimo
4. El archivo "metadata_test.csv" tiene todas las columnas que "metadata.csv" excepto la columna "activity".

Resultado
El principal resultado del curso es predecir la actividad del usuario en un fragmento de tiempo determinado.

Qué debe presentar


Los equipos tendrán dos tareas distintas: 1) presentar las predicciones del modelo y 2) presentar el informe
final:

Presentación de las predicciones del modelo


Debe ejecutar su(s) modelo(s) en los datos de prueba suministrados y enviar el resultado predicho utilizando
el formato de archivo del archivo predictions_example.csv, que está disponible en la misma carpeta de MS
Teams. El nombre del archivo debe ser "predictions_XXXX.csv", donde XXXX es el nombre de su equipo.
Importante: Tenga en cuenta que no obtendrá ninguna puntuación asociada al componente de evaluación
Predicciones del modelo si no envía este archivo o si lo envía utilizando un formato incorrecto.

Las predicciones finales que envíe se utilizarán para generar una clasificación basada en el rendimiento del
modelo en los datos de prueba, medido mediante la precisión del modelo. Para evitar el sobreajuste del
conjunto de datos de prueba, éste se divide aleatoriamente en dos subconjuntos de tamaño similar. La
puntuación de precisión se calcula en ambas divisiones. Ganará la competición el alumno que obtenga la
mayor precisión media en las divisiones de prueba.

Se utilizará un archivo de predicción para cada estudiante. Sin embargo, puede enviar tantos archivos de
predicción como desee a través de MS Teams. El único que se utilizará para la tabla de clasificación será el
envío más reciente después de que se cierre el sistema de envío.

Tenga en cuenta que también recibirá puntuaciones asociadas a su posición en el tablero.

Hay una competición comunitaria de Kaggle asociada a esta evaluación que podrías utilizar para poner a
prueba tus predicciones y ver cómo se comparan con las de tus compañeros de clase. Recomiendo
encarecidamente el uso de esta herramienta. Más información en la sección Community Kaggle Competition.

5
Presentación del informe final
Deberá elaborar un informe que resuma sus principales resultados. Aunque el contenido principal de su informe
debe ser la presentación y discusión de sus resultados, también debe describir cómo abordó la tarea,
soluciones alternativas, posibles razones de éxito/fracaso. También debe incluir una breve reflexión sobre su
trabajo. Debe incluir su código como apéndice.

Le sugiero que estructure su informe de la siguiente manera:

1. Enfoque metodológico: Descripción de los enfoques utilizados para resolver el problema (indicando
enfoques finales y alternativos, métodos, partes de los datos utilizados, etc.)
2. Análisis exploratorio de datos: Presente los resultados de cualquier paso de preprocesamiento para
obtener los datos adecuados para el modelado (por ejemplo, extracciones de características
adicionales, normalización de datos, selección de características, etc.), visualización de datos,
agrupación, etc.
3. Modelización: Presentar los resultados de los modelos ML. Se espera el uso de varios algoritmos de
ML. Deberá informar de los resultados del ajuste de hiperparámetros, el rendimiento del modelo y
otros resultados que puedan aportar más información sobre la calidad de los modelos
implementados.
4. Debate: Debe discutir los resultados del análisis exploratorio y la modelización. Debe explicar las
razones del éxito/fracaso de los enfoques considerados y las ideas para futuras mejoras.

Apéndice 1 - Listados de código como cuaderno Jupyter (archivo


IPYNB)

Sin contar los apéndices, se espera que el informe tenga entre 2000 y 3000 palabras. Deberá utilizar tablas y
figuras para enriquecer el contenido de su informe. Debe presentar un único archivo en formato
PDF/DOC/DOCX (preferiblemente PDF) que contenga el informe sin el código. No se aceptará ningún otro
archivo. Si presenta más de un archivo, sólo se puntuará el primero más reciente. Puede utilizar cualquier
procesador de textos, siempre que consiga exportar su informe a cualquiera de los formatos de archivo
aceptables.

Presentación de los cuadernos Jupyter (apéndice del


informe)
El apéndice contiene el código que ha utilizado para realizar el análisis. Consiste en uno o más Jupyter
Notebooks (archivos IPYNB). Se espera que puedan ejecutarse sin errores y que muestren que están
relacionados con el trabajo del curso. Si envía más de un archivo Notebook, indique claramente en la primera
celda del notebook la secuencia en la que deben ejecutarse.

Concurso comunitario Kaggle (https://www.kaggle.com/competitions/mlea-


challenge-2023i )
Esta tarea tiene asociada una competición de la Comunidad Kaggle. Puedes hacer uso de ella para probar
tantos archivos de predicción como desees. El concurso ya está abierto y se cerrará varios días antes de la
fecha límite de entrega del trabajo. Las invitaciones para participar en el concurso se enviarán a través de Teams.
Importante: Tenga en cuenta que el envío de predicciones a Kaggle no constituye un envío formal a ninguno
de los componentes de la evaluación. Debes enviar tu archivo de predicción a través de MS Teams. El
Concurso Kaggle de la Comunidad está disponible para ayudarte a decidir qué archivo de predicción envías
en función de cómo te clasifiques en comparación con tus compañeros de clase. Además, la única clasificación
válida será la generada a partir de los archivos de predicción enviados a MS Teams. Es posible que haya
6
pequeñas diferencias entre ambas tablas de clasificación, la generada por Kaggle y la generada a partir de
tus envíos. La competición de Kaggle también dividirá el conjunto de pruebas de modo que se generen dos
tablas de clasificación, una pública y otra privada. La clasificación pública será visible en todo momento a
través de Kaggle. Sin embargo, la clasificación privada sólo estará disponible durante las sesiones del
laboratorio de TI.

7
Criterios de evaluación
El trabajo del curso constituye el 100% de la evaluación de este módulo. Se calificará sobre 50 puntos. El
desglose de las notas disponibles es el siguiente:

• Informe - hasta el 40
• Predicciones de modelos: hasta el 10

En el apéndice encontrará la rúbrica que se utilizará para evaluar su trabajo. Cualquier

trabajo presentado fuera de plazo sin mi aprobación recibirá 0 puntos.

Mala conducta académica


La Universidad define la mala conducta académica como "cualquier caso de engaño deliberado y
premeditado, colusión, plagio o falsificación de información, en un intento de engañar y obtener una ventaja
injusta en la evaluación". Esto incluye el intento de ganar puntos como parte de un equipo sin contribuir. La
Facultad se toma muy en serio la mala conducta académica y cualquier caso sospechoso se investigará de
acuerdo con la política habitual de la Universidad. Si se le declara culpable, podrá ser expulsado de la
Universidad sin derecho a premio.

Es tu responsabilidad asegurarte de que entiendes lo que constituye una falta de ética académica y de que
no infringes las normas. Si no tiene claro qué es lo que debe hacer, pregunte.

8
Apéndice - Rúbrica de calificación
Rúbrica utilizada para evaluar las predicciones finales del modelo (puntos)
Criterios 10 sobre 10 9 sobre 10 8 sobre 10 6 sobre 10 4 sobre 10 2 sobre 10 0 sobre 10
Modelo Enviado Enviado Enviado Enviado Enviado Enviado No hay archivo de
predicción
rendimiento en archivo de archivo de archivo de archivo de archivo de archivo de se presentó, o
predicción predicción predicción predicción predicción predicción
el conjunto de correctamente correctamente correctamente correctamente correctamente correctamente no era utilizable
pruebas como
medido utilizando el formateado. formateado. formateado. formateado. formateado. formateado. (es decir,
erróneamente
precisión media Clasificación Clasificación Clasificación Clasificación Clasificación Clasificación formateado)
posición 1. posición 2. posición 3. posición 4 o 5. posición 6 a 8. posición 9 o
abajo.

Rúbrica utilizada para evaluar el informe (puntos)


Criterios 40 37 35 30 27 23 15 9 0
Problema Extraordinaria, con varios caminos hacia una Bien con caminos congruentes Descriptivo con caminos poco Descripción Falta o no
(hasta 4 solución innovadora y que va más allá del estado y consistentes hacia una sofisticados hacia una solución. errónea, tiene
puntos) actual de la técnica. solución. [3 puntos] [2 puntos] insuficiente relación
[4 puntos] y/o con el
inadecuada. problema.
[1 punto] [0
puntos]

9
Análisis Los detalles Se Falta el
El análisis El análisis El análisis El análisis El análisis El análisis del análisis proporcionan análisis
exploratorio
exploratorio es exploratorio es exploratorio es exploratorio es exploratorio exploratorio es exploratorio y apoyan exploratori
de datos (8 extraordinario. excepcional. excelente. fluido. es bueno. adecuado.
puntos) son detalles o o se
El análisis se insuficientes. erróneos proporcion
realiza El análisis se El análisis El análisis se El análisis El análisis
realiza se realiza realiza se realiza se realiza El análisis se sobre el an muy
utilizando una limita a un análisis pocos
amplia gama utilizando utilizando utilizando un utilizando utilizando
una amplia un puñado puñado de un puñado algunos modelo. exploratorio. detalles.
de modelos. [2 puntos] El análisis se Pruebas
[8 puntos] gama de de modelos. de modelos.
modelos. modelos. modelos. [3 puntos] limita a un muy
[5 puntos]
modelo. [1 limitadas
[7 puntos] [6 puntos] [4 puntos]
punto] de que se
realizó el
análisis.
[0 puntos]
Modelización Descripción de Descripción de Descripción de Descripción de Descripción de Descripción de Detalles Detalles Los
(hasta 14 la modelización la modelización la modelización la modelización la modelización la modelización inadecuados erróneos resultados
puntos) de la sobre la de la
modelización modelización modelizació
n son
desaparecid
a.

1
0
resultados es resultados es resultados resultados es resultad resultados es Se facilitan y Se facilitan y Pruebas
extraordinaria. excepcional. es fluida. El os es adecuada. El apoyan los apoyan los muy
El análisis se El análisis se Excelente. análisis se bueno. análisis se resultados. El resultados. El limitadas
realiza realiza El análisis realiza El análisis realiza análisis se análisis se de que se
utilizando una utilizando se realiza utilizando un se realiza utilizando limita a un limita a un realizó el
amplia gama una amplia utilizando puñado de utilizando algunos modelo. modelo. Los análisis. [0
de modelos. gama de un puñado modelos. un puñado modelos. Los modelos modelos no puntos]
Los modelos se modelos. de Los modelos de Validación y no se validan se validan y
validan y Los modelos modelos. se validan y modelos. comparación y comparan comparan
comparan de se validan y Los modelos comparan de Los modelos limitadas del adecuadame adecuadame
muchas comparan de se validan y varias se validan y modelo. [7 nte. nte.
maneras. muchas comparan de maneras. comparan de puntos] [4 puntos] [2 puntos]
[14 puntos] maneras. varias [11 puntos] varias
[13 puntos] maneras. maneras.
[12 puntos] [9 puntos]
Discusión de La discusión La discusión La discusión La discusión La discusión La discusión La discusión La discusión No se
los resultados de los de los de los de los de los de los de los de los discuten
(hasta 12 resultados resultados es resultados resultados resultados resultados resultados resultados los
puntos) es sobresaliente es una es creíble y es precisa y es adecuada. es imprecisa, es ambigua, resultados
excepcional y y perspicaz. excelente precisa. coherente. [7 puntos] limitada y/o incoherente, o no
claramente [11 puntos] crítica. [9 puntos] [8 puntos] inadecuada. irrelevante guardan
distintiva. [10 puntos] [4 puntos] y/o errónea. relación
[12 puntos] [2 puntos] con los
resultados
o el
problema.
[0 puntos]
Listados de El código se adjunta y parece proporcionar un camino claro hacia una solución al problema. Falta
códigos (hasta [2 puntos] código o
2 puntos) éste es tan
limitado
que no
ofrece una
solución
clara al
problema.
[0 puntos]

1
1

También podría gustarte