Infome y presentación del proyecto desarrollado en el curso.
El código fuente de los proyectos puede ser encontrado en los siguientes repositorios:
•Proyecto Jupyter para el procesamiento de los datos y creación de modelos: https://github.com/diegotrp/movie-recommender-jupyter
•Proyecto Flask usado como api para el consumo de los modelos como servicios: https://github.com/diegotrp/movie-recommender-api
•Proyecto Nuxt que contiene a la web con la que interactúan los usuarios: https://github.com/marcoantonioludenafa ... iculas.git
Dirección de la página:
Proximamente...
Integrantes:
- Ludeña Farje, Marco Antonio
- Trujillo Peceros, Diego Manuel
Se encontraron 7 coincidencias
- 23 Jun 2018, 22:44
- Foros: Proyectos en Inteligencia Artificial
- Tema: Sistema de Recomendación de Películas
- Respuestas: 1
- Vistas: 1334
- 08 Jun 2018, 00:29
- Foros: Inteligencia Artificial
- Tema: K-modes para el clustering de datos cualitativos
- Respuestas: 0
- Vistas: 1000
K-modes para el clustering de datos cualitativos
En el siguiente artículo el autor habla sobre la aplicación del algoritmo K-modes por un alumno de la Universida de Middlebury para entender los datos de usuarios en un sitio de citas y así mejorar su propio perfil. La data incluía preguntas de respuestas múltiples, muy similar a data cualitica (o categorical data en inglés).
Uno de los métodos usados para tratar data categórica es transformarla a vectores, segúnse ve en la imagen cada pregunta es dividida en el número de posibles valores, en este caso en 4 alternativas. Entonces tenemos que cada usuario representado por cada fila solo solo pudo haber respondido una de las 4 alternativas, este columna tendrá el valor de 1 y las demás el valor de 0. En el caso del primer usuario (fila 1) y la pregunta 1 (primeras 4 columnas) vemos que marcó la alternativa A.

Recordemos que K-means identifica centroides, que están en el espacio de datos, pero no son necesariamente son datos existentes. Si aplicamos esto a los datos que tenemos el algoritmo buscará promedios entre 0 y 1, y puede interpretarse
Por otro lado, K-modes en lugar de obtener promedios dividiendo por el número de usuarios, identifica la alternativa que tuvo más votos. Esta es la moda de las respuestas. A diferencia de K-means que calcula distancias de cada punto de data a cada centroide en base a la substracción de sus valores, K-modes calculará la cantidad de respuestas distintas, cuando concuerden en una pregunta disminuirá la distancia y viceversa.
Sin embargo el uso de K-means también tiene sus desventajas, ya que no considera que tan cerca estuvo la pregunta más concordada con la segunda más concordada.
Artículo original: https://shapeofdata.wordpress.com/2014/03/04/k-modes/
Uno de los métodos usados para tratar data categórica es transformarla a vectores, segúnse ve en la imagen cada pregunta es dividida en el número de posibles valores, en este caso en 4 alternativas. Entonces tenemos que cada usuario representado por cada fila solo solo pudo haber respondido una de las 4 alternativas, este columna tendrá el valor de 1 y las demás el valor de 0. En el caso del primer usuario (fila 1) y la pregunta 1 (primeras 4 columnas) vemos que marcó la alternativa A.

Recordemos que K-means identifica centroides, que están en el espacio de datos, pero no son necesariamente son datos existentes. Si aplicamos esto a los datos que tenemos el algoritmo buscará promedios entre 0 y 1, y puede interpretarse
Por otro lado, K-modes en lugar de obtener promedios dividiendo por el número de usuarios, identifica la alternativa que tuvo más votos. Esta es la moda de las respuestas. A diferencia de K-means que calcula distancias de cada punto de data a cada centroide en base a la substracción de sus valores, K-modes calculará la cantidad de respuestas distintas, cuando concuerden en una pregunta disminuirá la distancia y viceversa.
Sin embargo el uso de K-means también tiene sus desventajas, ya que no considera que tan cerca estuvo la pregunta más concordada con la segunda más concordada.
Artículo original: https://shapeofdata.wordpress.com/2014/03/04/k-modes/
- 07 Jun 2018, 23:11
- Foros: Inteligencia Artificial
- Tema: Creación de un Web API para Machine Learning con Flash
- Respuestas: 0
- Vistas: 631
Creación de un Web API para Machine Learning con Flash
En el campo de python aplicado a machine learning una de las herramientas más usadas para el desarollo y mejora de modelos es Jupyter Notebook, sin embargo dificulta la demostración de su funcionamiento a otros (especialmente personas sin conocimiento técnico), por lo que muchos proceden a crear APIs para ser consumidas por aplicaciones web o móviles.
En el siguiente artículo se presenta una guía sencilla para la creación de un API usando la librería scikit-learn para desplegar un modelo de regresión lineal de prueba. El artículo muestra demás el uso de la librería pickle para serializar objetos o datos en archivos que pueden ser cargados posteriormente, especialmente útil en el caso de modelos ya entrenados.
Ver más: https://www.wintellect.com/creating-mac ... api-flask/
En el siguiente artículo se presenta una guía sencilla para la creación de un API usando la librería scikit-learn para desplegar un modelo de regresión lineal de prueba. El artículo muestra demás el uso de la librería pickle para serializar objetos o datos en archivos que pueden ser cargados posteriormente, especialmente útil en el caso de modelos ya entrenados.
Ver más: https://www.wintellect.com/creating-mac ... api-flask/
- 25 May 2018, 11:53
- Foros: Libros
- Tema: Manual Weka
- Respuestas: 3
- Vistas: 3537
Manual Weka
Weka es una colección de algortimos de machine learning para tareas relacionadas a data mining. Estos algoritmos pueden ser aplicados directamente a un dataset o ejecutados a través de código Java. Weka contiene herramientas para el pre-procesamiento, clasificación, regresión, clustering, reglas de asociación y visualización de data.
El presente es un manual de Weka con información acerca de como usar la herramienta, ya sea por línea de comandos o por la interfaz gráfica, y como usar cada una de las funcionalidades que ofrece.
El presente es un manual de Weka con información acerca de como usar la herramienta, ya sea por línea de comandos o por la interfaz gráfica, y como usar cada una de las funcionalidades que ofrece.
- 19 May 2018, 02:49
- Foros: Inteligencia Artificial
- Tema: A hybrid approach for movie recommendation
- Respuestas: 0
- Vistas: 579
A hybrid approach for movie recommendation
Los metodos más usados para sistemas de recomendación son los filtrados colaborativoss y los basados en contenido, cada uno tiene sus ventajas y desventajas. Sin embargo el enfoque hibrido toma elementos de ambos enfoques para mejorar el rendimiento de la predicción.
* El filtrado colaborativo busca perfiles similares al usuario al que se busca recomendar una película, luego de la agrupación se toma un promedio de los "vecinos" más cercanos y se da una recomendación.
* El filtrado basado en contenido consiste en recomendar items con contenido similar, para esta relación debe contarse con información acerca de propiedades de los items.
Para el desarrollo del sistema de recomendación se uso MoRe, un sistema basado en web que colecta puntuaciones de usuarios.
* El filtrado colaborativo busca perfiles similares al usuario al que se busca recomendar una película, luego de la agrupación se toma un promedio de los "vecinos" más cercanos y se da una recomendación.
* El filtrado basado en contenido consiste en recomendar items con contenido similar, para esta relación debe contarse con información acerca de propiedades de los items.
Para el desarrollo del sistema de recomendación se uso MoRe, un sistema basado en web que colecta puntuaciones de usuarios.
- 19 May 2018, 02:05
- Foros: Inteligencia Artificial
- Tema: Standardized Architecture for Conversational Agents
- Respuestas: 0
- Vistas: 468
Standardized Architecture for Conversational Agents
En el siguiente paper se plantea una arquitectura estandarizada para el desarrollo de agentes conversacionales, tambien conocidos como chatbots. Esta necesidad surge de la gran popularidad que están obteniendo estos debido a su uso en distintos canales y plataformas, y costo reducido en comparación con aplicaciones nativas.
La arquitectura planteada consiste de 5 capas:
* Capa de presentación:
Comprende los componentes que implementan y muestran la interfaz para la interaccion con el usuario. Incluye el soporte de distintos canales (web, voz, email, etc.) y de distintas plataformas (facebook, skype, etc.).
* Capa de negocio:
Comprende la lógica del negocio, como el manejo del dialogo con el usuario, y el procesamiento y formato que se le da a la data obtenida de bases de datos para que sea adecuada para los usuarios.
* Cada de servicio:
Incluye los servicios de procesamiento de lenguaje natural, el mas imporante para entender al usuario, interfaces para acceder a los datos e interfaces para acceder a servicios externos.
* Capa de data:
Contiene las distintas fuentes de datos que se pueden tener. Debe proveer un acceso seguro y rápido a la data de la que depende el chatbot.
* Capa de utilidad:
Comprende componentes genéricos que son usados por las demás capas, incluye componentes de seguridad, configuración entre otros.
La arquitectura planteada consiste de 5 capas:
* Capa de presentación:
Comprende los componentes que implementan y muestran la interfaz para la interaccion con el usuario. Incluye el soporte de distintos canales (web, voz, email, etc.) y de distintas plataformas (facebook, skype, etc.).
* Capa de negocio:
Comprende la lógica del negocio, como el manejo del dialogo con el usuario, y el procesamiento y formato que se le da a la data obtenida de bases de datos para que sea adecuada para los usuarios.
* Cada de servicio:
Incluye los servicios de procesamiento de lenguaje natural, el mas imporante para entender al usuario, interfaces para acceder a los datos e interfaces para acceder a servicios externos.
* Capa de data:
Contiene las distintas fuentes de datos que se pueden tener. Debe proveer un acceso seguro y rápido a la data de la que depende el chatbot.
* Capa de utilidad:
Comprende componentes genéricos que son usados por las demás capas, incluye componentes de seguridad, configuración entre otros.
- 19 May 2018, 01:50
- Foros: Inteligencia Artificial
- Tema: Sistema de Recomendación de Youtube
- Respuestas: 0
- Vistas: 460
Sistema de Recomendación de Youtube
En este artículo se debate el sistema de recomendacion usado por YouTube, una de las comunidades de videos online mas populares. El sistema recomienda un conjunto de videos a las personas en base a sus actividades en el sitio.
El sistma busca que las recomendaciones sean recientes, diversas y relevantes a acciones recientes del usuario, además de indicar porque se le recomienda determinado video. La actividad de un usuario consiste de videos vistos, añadidos a favoritos, videos gustados.
Las recomendaciones priorizan videos que el usuario es más probable a ver en el periodo actual (normalmente 24 horas), y cuenta para un par de videos, cuantas veces estos han sido vistos en un mismo periodo (contador de co-visitas).
Las evaluaciones del modelo se realizaron en la misma interfaz de la pagina, las cantidades de clicks y los clicks que llevaron a ver una gran cantidad del video. Se comprobó que las redirecciones provenientes de recomendaciones eran mucho mayores que las provenientes de videos más vistos o videos mejor calificados.
El sistma busca que las recomendaciones sean recientes, diversas y relevantes a acciones recientes del usuario, además de indicar porque se le recomienda determinado video. La actividad de un usuario consiste de videos vistos, añadidos a favoritos, videos gustados.
Las recomendaciones priorizan videos que el usuario es más probable a ver en el periodo actual (normalmente 24 horas), y cuenta para un par de videos, cuantas veces estos han sido vistos en un mismo periodo (contador de co-visitas).
Las evaluaciones del modelo se realizaron en la misma interfaz de la pagina, las cantidades de clicks y los clicks que llevaron a ver una gran cantidad del video. Se comprobó que las redirecciones provenientes de recomendaciones eran mucho mayores que las provenientes de videos más vistos o videos mejor calificados.