Diccionario tecnológico

DICCIONARIO TECNOLÓGICO

Datapedia

Tu glosario esencial de términos
de Big Data e Inteligencia Artificial.

A

Es una rama de las matemáticas que trabaja sobre espacios vectoriales y operaciones sobre ellos, tales como suma y multiplicación, El álgebra lineal está diseñado para representar sistemas de ecuaciones lineales. Las ecuaciones lineales representan relaciones lineales, donde una entidad puede expresarse como suma de múltiplos de otras entidades. En la nomenclatura del álgebra lineal, esta relación lineal se representa como un operado: una matriz.

Consiste en una serie definida de pasos para realizar determinada tarea con los datos. Al igual que ocurre con las estructuras de datos, las personas que estudian ciencias de la computación, estudian diferentes algoritmos para ver cuáles son más apropiados para realizar determinadas tareas.

Es uno de los algoritmos de selección de características más habituales. Consiste en una técnica de selección de características concreta que utiliza una transformación ortogonal para convertir un conjunto de observaciones de variables, posiblemente correlacionadas, en un conjunto más reducido de variables que ya no guardan correlación y que se conocen como componentes principales. Ver "característica".

La fase de análisis exploratorio, dentro del proceso de trabajo en ciencia de datos, tiene como objetivo extraer Insights (resultados) de los datos a través de técnicas de visualización y análisis estadístico.

Los pasos implicados en este proceso son: identificación de variables: en esta fase, se identifican el tipo de variable, tipo de dato y categoría de la variable, análisis univariable y análisis multivariable

Consiste en el análisis de los datos históricos y datos recogidos en tiempo real para generar Insights sobre cómo han funcionado estrategias de negocio en el pasado, por ejemplo, una campaña de marketing.

Leer más

Consiste en la metodología práctica que usa una organización para extraer conocimiento (Insights) de la exploración de sus datos. Esta metodología se basa en el análisis estadístico de los datos.

Post relacionados en nuestro blog:
Analíticas Big Data: Sí, pero ¿cuáles?

Consiste en el análisis de datos históricos del negocio con el objeto de predecir comportamientos futuros que ayuden a una mejor planificación. Para ello se usan técnicas de modelado predictivo, entre otras. Estas técnicas se basan en algoritmos estadísticos y de aprendizaje automático.

Leer más

Consiste en el análisis de datos históricos del negocio con el objetivo, no sólo de predecir comportamientos futuros, sino de valorar sus causas, permitiendo recomendar o "prescribir" qué acciones de deben llevar a cabo para aprovechar una oportunidad o mitigar un riesgo.

Leer más

Es un conjunto de técnicas que trabajan con grandes cantidades de datos de forma inteligente (desarrollando algoritmos), para obtener valiosos Insights en que basar iniciativas o estrategias de negocio. En estas técnicas, los algoritmos aprenden por sí mismos, sin ser programados de forma explícita.

Leer más

El aprendizaje no supervisado tiene lugar cuando no se dispone de datos "etiquetados" para el entrenamiento. Sólo conocemos los datos de entrada, pero no existen datos de salida que correspondan a un determinado input. Por tanto, sólo podemos describir la estructura de los datos, para intentar encontrar algún tipo de organización que simplifique el análisis. Por ello, tienen un carácter exploratorio.

Post relacionados en nuestro blog:
Los 2 tipos de aprendizaje en Machine Learning: supervisado y no supervisado

Se basan en los estudios sobre cómo fomentar el aprendizaje en humanos y ratas basándose en recompensas y castigos. El algoritmo aprende observando el mundo que le rodea. Su información de entrada es el feedback o retroalimentación que obtiene del mundo exterior como respuesta a sus acciones. Por lo tanto, el sistema aprende a base de ensayo-error.

Normalmente, se trata de un algoritmo multicapa que va identificando detalles en sucesivos niveles de abstracción. Por ejemplo, el primer nivel puede identificar algunas líneas, el siguiente nivel identifica formas como combinaciones de líneas, y el siguiente identifica objetos como combinaciones de formas. Como puede imaginarse con este ejemplo, el aprendizaje profundo se usa mucho para clasificación de imágenes. El Aprendizaje Profundo se asocia con un algoritmo de machine-Learning, las redes roothumano (de ahí la identificación gradual por capas). Este tipo de algoritmos son muy flexibles y permiten modelar muchas respuestas simultaneas, pero también requieren una ingente cantidad de datos.

Post relacionados en nuestro blog:
Artificial Intelligence, Machine Learning y Deep Learning: ¿Conoces las diferencias?

En el aprendizaje supervisado, los algoritmos trabajan con datos “etiquetados” (labeled data), intentado encontrar una función que, dadas las variables de entrada (input data), les asigne la etiqueta de salida adecuada. El algoritmo se entrena con un "histórico" de datos y así "aprende" a asignar la etiqueta de salida adecuada a un nuevo valor, es decir, predice el valor da salida. El aprendizaje supervisado se suele usar en problemas de clasificación, como identificación de dígitos, diagnósticos, o detección de fraude de identidad.

Post relacionados en nuestro blog:
Los 2 tipos de aprendizaje en Machine Learning: supervisado y no supervisado

Un árbol de decisión es un tipo de algoritmo de aprendizaje supervisado (aquellos que tienen una variable objetivo predefinida) que se suele usar en problemas de clasificación. Funciona tanto para variables de entrada/salida continuas y categóricas. En esta técnica, se divide la población (o muestra) en dos conjuntos homogéneos (o subpoblaciones) basados en el criterio diferenciador de las variables de entrada que resulte más significativo.

Post relacionados en nuestro blog:
Tu primer experimento en Azure ML Studio: El caso del Titanic (III): Entrenando el modelo

Se trata de una métrica de evaluación que considera todos los umbrales de clasificación posibles. El gráfico ROC también es conocido como la representación de sensibilidad frente a (1-especificidad). La diagonal divide el espacio ROC. Los puntos por encima de la diagonal representan los buenos resultados de clasificación (mejor que el azar), puntos por debajo de la línea de los resultados pobres (peor que al azar).

Post relacionados en nuestro blog:
Tu primer experimento en Azure ML Studio: El caso del Titanic (III): Entrenando el modelo

B

Se trata de un grupo de algoritmos de clasificación basados en el Teorema de Bayes. No es un único algoritmo, sino una familia de ellos que comparten el principio común de que cualquier variable que clasifiquemos es independiente del valor de las otras variables. Por ejemplo, podemos considerar que una fruta es una manzana si es roja, redonda y de un tamaño determinado. Un clasificador Naive Bayes considera que cada una de estas características (roja, redonda, diámetro aproximado) contribuye de forma independiente a la probabilidad de que la fruta sea una manzana, independientemente de las correlaciones entre características. Sin embargo, las características no siempre son independientes, y por eso estos métodos se llaman “naive”. Sin embargo, esta simplificación permite desarrollar implementaciones de estos algoritmos fácilmente escalables.

Es un procedimiento matemático que aplica probabilidad a problemas estadísticos. Proporciona herramientas que permiten actualizar las predicciones con la evidencia de datos nuevos. Se diferencia de la aproximación clásica, basada en la frecuencia, y en su lugar usa probabilidad bayesiana para resumir la evidencia.

También conocido como Regla de Bayes, en honor del matemático y ministro presbiteriano del siglo XVIII Thomas Bayes. El teorema de Bayes se usa para calcular probabilidad condicionada. La probabilidad condicionada consiste en la probabilidad de que ocurra el evento “B” cuando un evento relacionado “A” ha ocurrido (P(B|A)). Por ejemplo, si una clínida quiere calcular la proporción de fumadores entre sus pacientes diagnosticados de cáncer y: A representa el evento "Persona tiene cáncer" y B representa el evento "Persona fumadora". Si la clínica quiere calcular la proporción de fumadores entre sus pacientes diagnosticados de cáncer, aplicaría la regla de Bayes: P(A|B) = (P(B|A)P(A)) / P(B). La proporción de enfermos diagnosticados de cáncer que son fumadores P(A|B), es igual al producto de la proporción de personas diagnosticadas P(A), por la de fumadores diagnosticados P(B|A), dividido por la proporción de fumadores P(B).

En general, se refiere a la capacidad de trabajar con volúmenes de datos que anteriormente eran inmanejables, tanto por su tamaño, velocidad y variedad ("Las 3 "V"s). Uno de los factores que ha permitido esta evolución ha sido la facilidad de distribución del almacenamiento y procesamiento de los datos a través de redes basadas en hardware básico ("commodity"), usando tecnologías Hadoop, en lugar de necesitar grandes y potentes computadoras dedicadas. Pero no es el volumen de datos lo importante. Es cómo las empresas usan estos datos para generar conocimiento ("insights"). Las empresas usan distintas técnicas, herramientas y recursos para dar sentido a estos datos y basar en ellos estrategias de negocio más eficientes.

Leer más

Es una librería de Python que extiende las capacidades de Numpy y Pandas a datos distribuidos y en streaming. Se puede usar para acceder a datos de un gran número de fuentes como Bcolz, MongoDB, SQLAlchemy, Apache Spark, PyTables, etc.

Es una librería de Python que permite generar atractivos gráficos interactivos en 3D, y aplicaciones web. Se usa para aplicaciones de rendimiento con datos en streaming.

Se trata de un algoritmo usado para tareas de regresión o clasificación que se basa en una combinación de árboles predictores. "Para clasificar un nuevo objeto a partir de un vector de entrada, se alimenta cada uno de los árboles del bosque con ese vector. Cada árbol ofrece como resultado una clasificación, y decimos que "vota" por ese resultado. El bosque elige la clasificación que tiene más votos entre todos los árboles del bosque. El término "random forest" es una marca registrada por sus autores.

C

En las redes neuronales, una capa oculta es una capa sintética entre la capa de entrada (la capa de características) y la capa de salida (la capa de predicción). En una red neuronal puede haber una o más capas ocultas.

Es el término con el que se denomina en el área del aprendizaje automático, una unidad de información sobre algo. Si almacenas la edad, los ingresos anuales, y el peso de un conjunto de personas, estás guardando tres características sobre ellos. En el mundo IT, en lugar de característica, se suelen llamar propiedad, atributo o campo. El proceso de selección de características consiste en elegir cuáles de ellas tienen mayor relevancia sobre la capacidad predictiva del modelo estadístico, descartando las que tengan menor influencia. Esto puede hacerse filtrando las características menos útiles, o combinando varias para crear una característica nueva.

Es un método estadístico que se usa para probar si una clasificación de datos puede ser debida al azar o a alguna ley subyacente (Wordpanda). El test chi-cuadrado es una técnica de análisis que se usa para estimar si dos variables están correlacionadas en una tabulación cruzada.

Es una combinación de análisis de datos, desarrollo de algoritmos, estadística e ingeniería de software para resolver problemas analíticos. Su principal objetivo es usar los datos para obtener valor de negocio.

Leer más

Las variables binarias son aquellas que pueden tener únicamente dos valores. Por ejemplo, una variable "¿Fumador?" puede tener el valor "Si" o "No".

Es un método de aprendizaje supervisado donde la variable de salida es categórica, como "Masculino", "Femenino", o "Si", "No". Por ejemplo, decidir si un mensaje de correo es no deseado (spam), o analizar películas para clasificarlas por género, son tareas típicas que resuelve un algoritmo de clasificación. Algunos de estos algoritmos son: regresión logística, árbol de decisión, Support Vector Machine etc.

Post relacionados en nuestro blog:
Las 9 tareas en las que se basa el Machine Learning

Se trata de un número o símbolo algebraico prefijado como multiplicador de una variable o cantidad desconocida. Al representar gráficamente una ecuación como y=3X+4, el coeficiente de "x", en este caso, "3", determina la pendiente de la recta. En estadística se suelen mencionar determinados coeficientes como el coeficiente de correlación, el coeficiente de Cramer, o el coeficiente de Gini.

Cuando se accede al Sistema operativo desde la línea de comandos estamos usando la consola. Además de los lenguajes de script como Perl y Python, es habitual el uso de herramientas basadas en Linux como grep, diff, splitt, comm, head and tail para realizar tareas de preparación-depuración de datos desde la consola.

Consiste en la correspondencia relativa entre dos conjuntos de datos. Si las ventas suben al incrementarse el presupuesto de publicidad, significa que ambos hechos están correlacionados. El coeficiente de correlación mide hasta qué punto se correlacionan dos conjuntos de datos. Un coeficiente de valor "1" implica una correlación perfecta, 0,9 es una correlación fuerte y 0,2 una correlación débil. Este valor también puede ser negativo, como por ejemplo cuando se reduce la incidencia de una enfermedad al aumentar el índice de vacunación contra esta. Un coeficiente "-1" es una correlación negativa perfecta. Sin embargo, nunca hay que olvidar que correlación no implica causalidad.

Consiste en la relación entre dos variables cuyos valores se observan al mismo tiempo, en particular, el valor medio de las dos variables dividido por el producto de sus valores promedio. Al igual que la varianza mide la desviación de una variable respecto a su media, la covarianza mide la desviación conjunta de dos variables respecto a sus medias.

Al dividir un conjunto de valores ordenados en grupos que tienen el mismo número de valores, cada uno de esos grupos se conoce como cuantil. Normalmente, a efectos de análisis de datos, se suelen organizar en cuatro grupos. En este caso particular, los cuantiles se llaman cuartiles, quintiles cuando son cinco grupos y así.

La curtosis es una medida que sirve para analizar el grado de concentración que presentan los valores de una variable analizada alrededor de la zona central de la distribución de frecuencias. Una mayor curtosis implica una mayor concentración de datos muy cerca de la media de la distribución (pico) coexistiendo al mismo tiempo con una relativamente elevada frecuencia de datos muy alejados de la misma.

Es un lenguaje enfocado principalmente a software a bajo nivel como el de componentes de un sistema operativo o protocolos de red. Se utiliza con frecuencia en sistemas integrados e infraestructuras que funcionan con sensores. Aunque puede resultar un lenguaje complicado para principiantes, goza de un gran potencial. Tiene librerías muy útiles para machine Learning como LibSVM, Shark y MLPack.

D

No es difícil explicar el concepto, lo complicado es dar con un término en español que lo resuma. El concepto "data insight" significa el conocimiento o comprensión profunda de los datos de forma que pueda orientar acciones de negocio correctas y productivas. Las empresas "Data – driven" son aquellas que toman decisiones basadas en datos, en particular, en los Insights de datos (decisiones basadas en datos). Las soluciones de LUCA ayudan a las empresas a convertirse en empresas Data Driven.

Post relacionados en nuestro blog:
Machine Learning para todos: ¿Qué son los Insights?

Se trata de ejemplos que, de forma intencionada, (son “retenidos”) no se usan durante el entrenamiento. Los conjuntos de datos de validación y datos de test, son ejemplos de datos de prueba. Estos datos ayudan a evaluar la bondad de un modelo para generalizar sobre datos distintos de los usados para entrenarlo. La función de pérdida en los datos de prueba da una mejor estimación del valor sobre datos nuevos que la que da esta función sobre los datos de entrenamiento.

Post relacionados en nuestro blog:
Titanic: Tu primer experimento en Azure ML Studio (I)

Es una librería dedicada al Deep learning, escrita para Java y Scala. Ofrece un entorno para que los desarrolladores entrenen y elaboren modelos de IA.

Es la raíz cuadrada de la varianza y se usa habitualmente para indicar cuánto se aleja de la media una medida determinada. Por ejemplo, si una observación se aleja de la media más de tres veces la desviación estándar, podemos decir en la mayoría de las aplicaciones que nos encontramos ante un caso anómalo. Los paquetes de software estadístico calculan de forma automática la desviación estándar.

Consiste en una distribución de acontecimientos independientes, normalmente a lo largo de un periodo de tiempo o en un espacio determinado, y se usa para predecir la probabilidad de que un evento ocurra.Esta distribución es un modelo apropiado cuando los eventos ocurren de forma independientes, el ratio de su ocurrencia es constante, no pueden tener lugar en el mismo instante, y la probabilidad de ocurrencia de un evento en un pequeño subintervalo es proporcional a su longitud, o bien está dada por una distribución binomial y el número de ensayos es lo suficientemente mayor que el de los sucesos a predecir.

La distribución de probabilidad de una variable aleatoria discreta es el conjunto de todos los posibles valores que puede tener esa variable, junto con sus probabilidades de ocurrencia.Para variables discretas, las principales distribuciones de probabilidad son la binonial, la de Poisson y la hipergeométrica (esta última para eventos dependientes). Para variable continua, la distribución que se genera es la normal o gaussiana.

También se conoce como distribución gaussiana. Es una distribución de probabilidad cuya representación gráfica es una curva simétrica en forma de campana con el valor medio en el centro. La altura y anchura de la curva vienen dadas por la desviación estándar. Una característica importante de esta curva con forma de campana es que permite modelar numerosos fenómenos naturales, sociales y psicológicos. Aunque estos fenómenos están influidos por muchas variables aleatorias, el comportamiento de la suma de estos fenómenos individuales, sí que sigue el patrón de una distribución normal. Esto se debe al teorema del límite central. Por ejemplo, cuando hablamos de variables aleatorias, como pueden ser la altura, el peso o los ingresos de una persona, la distribución de probabilidad de esas variables seguirá una distribución normal y, por tanto, los valores más frecuentes estarán en el centro, mientras que los menos habituales se situarán en los extremos

Son una variación de las distribuciones normales. Fueron descubiertas por William Gosset en 1908 y publicadas con el pseudónimo "Student". Necesitaba una distribución que pudiera usar cuando el tamaño de la muestra fuera pequeño y la varianza desconocida y tenía que ser estimada a partir de los datos. Las distribuciones t se usan para tener en cuenta la incertidumbre añadida que resulta por esta estimación.

E

Una variable es de tipo escalar (por oposición a vectorial), cuando tiene un valor de magnitud pero no dirección en el espacio, como por ejemplo, el volumen o la temperatura.

Consiste en dividir las muestras de población en grupos homegéneos o estratos y tomar una muestra aleatoria de cada uno de ellos. Strata es también una conferencia de O'Reilly sobre Big Data, Data Science y tecnologías relacionadas.

La exactitud (en inglés "Precision") es una métrica para modelos de clasificación que responde a la siguiente pregunta: ¿De todos los resultados que el modelo da como positivos, cuántos son positivos de verdad? Se representa por la fórmula: Exactitud= Total Positivos / (Verdaderos Positivos + Falsos Positivos). Representa lo cerca que está del valor verdadero el resultado del modelo o medición. También se conoce como Verdadero Positivo (o "True positive rate").

La Sensibilidad indica cuántas de las predicciones positivas son correctas. Se representa por: Sensibilidad = Verdaderos Positivos / (Verdaderos Positivos+ Falsos Negativos). La exactitud y la sensibilidad nos están indicando la relevancia de los resultados. Por ejemplo, un algoritmo muy exacto, (P alto) nos dará muchos más resultados relevantes que irrelevantes, mientras que un algoritmo muy específico, (TP alto), será el que detecte la mayoría de resultados de interés (los primeros).

Post relacionados en nuestro blog:
Machine Learning a tu alcance: La matriz de confusión

F

G

"General Architecture for Text Engineering", es un entorno de arquitectura general para ingeniería de texto. Este entorno es de código abierto, basado en Java y está pensado para el procesamiento de tareas de lenguaje natural. Permite la integración con otras herramientas diseñadas para interactuar con él, Es un proyecto de la universidad de Sheffield, en Reino Unido.

H

Hadoop es un proyecto opensource de la Apache Foundation, introducido en 2006, y desarrollado en Java cuyo objetivo es ofrecer un entorno de trabajo acorde con las necesidades del Big Data. Hadoop, por tanto, está diseñado para trabajar con volúmenes de datos masivos (Volumen), estructurados o no (Variedad), y procesarlos de forma segura y eficiente (Veracidad/Velocidad), tanto en costes como en tiempo.

Para ello, distribuye, tanto el almacenamiento de la información, como su procesamiento, entre muchos equipos trabajando de forma coordinada en "clusters", con uno o varios nodos maestros encargados de gestionar, por una parte, el sistema de ficheros distribuido donde los datos se almacenan en diferentes bloques redundados; y por otra, la coordinación y ejecución de los distintos jobs o tareas entre los miembros del cluster. Por ello es un sistema altamente escalable que además ofrece redundancia por software.

Leer más

Un método heurístico consiste en buscar una solución práctica a un problema, aunque no sea óptima, pero suficiente para seguir avanzando o aprender de ello."En algunas ciencias, manera de buscar la solución de un problema mediante métodos no rigurosos, como por tanteo, reglas empíricas, etc." (RAE)

Es un límite que separa el espacio en dos subespacios. Por ejemplo, una línea es un hiperplano en dos dimensiones, y un plano es un hiperplano en tres. En aprendizaje automático, un hiperplano es el límite que separa un espacio de muchas dimensiones. Los algoritmos Kernel Support Vector Machine usan hiperplanos para separar las clases positivas de las negativas en espacios multidimensionales.

Es una representación gráfica de un conjunto de datos numéricos, normalmente, en forma de gráfico de barras verticales.

I

Imputación es una técnica que se usa cuando hay valores que faltan en el conjunto de datos. Se realiza por medio de técnicas estadísticas, como sustituir por la mediana o la moda, o por técnicas de aprendizaje automático, como la imputación kNN.

Post relacionados en nuestro blog:
Tu primer experimento en Azure ML Studio: El caso del Titanic (II): Preparando los datos.

En minería de datos, el indicador de confianza ("lift") compara la frecuencia de un patrón observado con la frecuencia en que podríamos ver ese mismo patrón por casualidad. Si el valor de "Lift" es próximo a 1, es muy posible que el patrón que hemos observado sea mera casualidad. Cuanto mayor sea este valor, más posibilidades hay de que el patrón sea real.

Una inferencia estadística (estadística deductiva) es cuando tratamos de sacar hipótesis sobre una población completa, analizando únicamente una muestra de ella. Por ejemplo, antes de sacar un medicamento al mercado, se hacen pruebas para ver su viabilidad. Pero es imposible hacer las pruebas sobre el conjunto de la población, así que se hacen sobre la muestra que la represente mejor.

Son especialistas en tratamiento de datos. Los ingenieros de datos son aquellos que, a partir de un conjunto de datos confusos, crean la infraestructura que permite analizarlos de forma real y tangible. Para ello, utilizan programas ETL (Extract, Transform and Load—Extracción, Transformación y Carga de datos), combina conjuntos de datos y depura y enriquece los datos que algunas empresas llevan años almacenando.

También IA. En los orígenes de las IA, en los años 60, los investigadores implementaban principios generales de "inteligencia", normalmente automatizando razonamientos basados en lógica simbólica. Según se fueron reduciendo los costes en recursos hardware y software, cambió el enfoque desde los razonamientos basados en reglas, a la toma de decisiones "inteligentes" basadas en el análisis estadístico de grandes cantidades de datos.

Leer más

La Inteligencia Cognitiva es una parte, si bien una parte importante de la Inteligencia Artificial, que abarca principalmente las tecnologías y herramientas que permiten a nuestras apps, websites y bots ver, oír, hablar, comprender e interpretar las necesidades del usuario por medio del lenguaje natural. Es decir, son las aplicaciones de la IA que permiten a las máquinas aprender el lenguaje de los usuarios para que éstos no tengan que aprender el lenguaje de las máquinas.

Post relacionados en nuestro blog:
¿Inteligencia Artificial o Cognitiva?

Es el conjunto de estrategias, aplicaciones, datos y tecnologías usados por una organización para almacenar datos, analizarlos y extraer conclusiones (Insights) de las que derivar oportunidades de negocio estratégicas.

Indica el grado en el que las predicciones de un modelo pueden ser interpretables. Los modelos basados en Aprendizaje Profundo (Deep Learning) muchas veces no lo son, esto es, puede ser muy difícil descifrar lo que hace un modelo con distintas capas. Por el contrario, los modelos de regresión lineal sí resultan fácilmente interpretables.

Rango definido en torno a un valor estimado para indicar el margen de error, combinado con la probabilidad de que un valor caiga en ese rango. La Estadística ofrece fórmulas matemáticas específicas para calcular los intervalos de confianza.

J

Es uno lenguajes de programación más usados en Machine Learning por su gran consistencia, claridad y fiabilidad. Es un lenguaje open-source, compatible con cualquier plataforma, con el que se puede prácticamente cualquier aplicación. Cuenta con una gran cantidad de librerías, algunas enfocadas al mundo del Machine Learning como Spark+MLlib, Mahout y Deeplearning4j.

K

Es una API de aprendizaje automático (machine Learning) basada en Python muy popular. Keras corre sobre diversos entornos de aprendizaje profundo (deep learning) incluido TensorFlow, donde se encuentra como tf.keras

Es un tipo de Algoritmo supervisado que se usa para tareas de clustering. Es un proceso que de forma sencilla clasifica un conjunto de datos en cierto número de clusters o agrupaciones (digamos "k" clusters). Los datos son homogéneos dentro de cada cluster y heterogéneos respecto a los datos de clusters vecinos.

El Algoritmo K nearest neighbors es un sencillo algoritmo de clasificación que clasifica la probabilidad de que un elemento x pertenezca a una determinada clase, basándose en información sobre sus "k" vecinos. Al nuevo elemento se le asigna la clase más común entre sus vecinos más próximos, según una función distancia. Estas funciones distancia pueden ser de varios tipos: Euclídea, Manhattan, Minkowski o Hamming. Las tres primeras se usan para funciones continuas, y la cuarta, para variables categóricas.

L

Los lenguajes de programación de script pueden ejecutarse directamente sin necesidad de compilarlos antes en código binario, como ocurre con lenguajes como Java y C. La sintaxis de los lenguajes de script es mucho más sencilla que la de los lenguajes compilados, lo facilita en gran medida las tareas de programación y ejecución. Algunos ejemplos de este tipo de lenguajes son Python, Perl, Rubi etc.

Una librería no es más que un conjunto de módulos (ver módulos). La librería estándar de Python es muy amplia y ofrece una gran variedad de módulos que realizan funciones de todo tipo, desde módulos escritos en C que ofrecen acceso a funcionalidades del sistema como el acceso a ficheros (file I/O). En la web de Python se puede encontrar una referencia a todos los módulos en "The Python Standard Library". Los instaladores de Python para plataformas Windows, normalmente incluyen la librería estándar completa, incluso algunos componentes adicionales. Sin embargo, en las instalaciones Python mediante paquetes harán falta instaladores específicos.

Es una librería de C++ que resulta muy útil para trabajar con máquinas de vectores de soporte (SVM). Sirve para resolver problemas de clasificación y regresión.

Conocido también como procesamiento de lenguaje natural PLN. Es una rama de las ciencias de la computación que analiza el lenguaje hablado (por ejemplo, en chino o inglés) y lo convierte en datos estructurados que se pueden usar como comandos lógicos en un programa. En un principio, el foco estaba en traducir de un lenguaje a otro, o aceptar frases completas como consultas a bases de datos. En la actualidad, los esfuerzos se centran en analizar documentos y otros datos (por ejemplo, tweets), para extraer información potencialmente valiosa.

Acrónimo de List Procesor, es un lenguaje creado por John McCarthy, hoy considerado por muchos como el padre de la Inteligencia Artificial. Su idea era optimizar el funcionamiento y el uso de recursos en los ordenadores de la época. Este nuevo lenguaje, basado en parte en el ya existente Fortran, utilizaba algunas técnicas innovadoras como las estructuras de datos de árbol o el uso de la computación simbólica de la cual nacería posteriormente la programación simbólica. Lisp no tardó en convertirse en el lenguaje favorito en el mundo de la Inteligencia Artificial.

En análisis matemático, usualmente, el logaritmo de un número real positivo - en una base de logaritmo determinada - es el exponente al cual hay que elevar la base para obtener dicho número. Los logaritmos permiten transformar las multiplicaciones en sumas y las divisiones en restas. Por tanto, simplifican mucho los cálculos numéricos. Trabajar con el logaritmo de una o más variables de un modelo resulta más sencillo que hacerlo con los valores originales, ya que permite construir modelos basados en funciones lineales en lugar de no lineales.

M

Es una librería de Java muy similar a NumPy en Python. Está enfocada a las expresiones matemáticas, algebraicas y estadísticas.

Una máquina de vectores de soporte es un algoritmo de aprendizaje automático supervisado que se emplea tanto para tareas de clasificación como de regresión. Se basan en la idea de encontrar el hiperplano que mejor divida el conjunto de datos en dos clases diferenciadas. De forma intuitiva, cuando más lejos del hiperplano estén nuestros valores, más seguros estamos de que estén correctamente clasificados. Sin embargo, en ocasiones no es fácil encontrar el hiperplano que mejor clasifica los datos y es necesario saltar a una dimensión mayor (del plano a 3 dimensiones o incluso n dimensiones). Las SVM se usan para tareas de clasificación de textos, detección de spam, análisis de sentimientos etc. También se usan para reconocimiento de imágenes.

Se trata de un lenguaje y entorno de visualización y desarrollo de algoritmos comercial muy popular.

Es una librería de Python que permite realizar todo tipo de gráficos: desde histogramas, hasta gráficos de líneas o mapas de calor. También permite el uso de comandos de LaTeX para agregar expresiones matemáticas a una gráfica.

Es una tabla que se suele usar para describir el rendimiento de un modelo de clasificación. Consiste en una matriz N*N, donde N es el número de clases. La matriz se completa con los valores predichos por el modelo, versus los valores reales. El segundo cuadrante se llama error Tipo II o "falsos negativos", mientras que el tercer cuadrante es error Tipo I o "falsos positivos".

Post relacionados en nuestro blog:
Machine Learning a tu alcance: la matriz de confusión

Media: El valor medio o media aritmética es la suma de todos los datos dividida por el número total de ellos.

Mediana: La mediana es el valor que ocupa el lugar central entre todos los valores del conjunto de datos, cuando estos están ordenados en forma creciente o decreciente.

Moda: La moda de un conjunto de datos es el dato que más veces se repite, es decir, aquel que tiene mayor frecuencia absoluta. En caso de existir dos valores de la variable que tengan la mayor frecuencia absoluta, habría dos modas. Si no se repite ningún valor, no existe moda.

El objetivo de las métricas de evaluación es medir la calidad del modelo estadístico/de machine Learning. Algunos ejemplos de métricas de evaluación son las siguientes: Curva ROC y Valor F.

Post relacionados en nuestro blog:
Tu primer experimento en Azure ML Studio: El caso del Titanic (III): Entrenando el modelo

Esta librería de C++ tiene la finalidad de ofrecer una rápida puesta en marcha de los algoritmos de machine Learning. Facilita la integración de los algoritmos en soluciones de mayor escala mediante línea de código.

Consiste en el uso de ordenadores para analizar grandes conjuntos de datos (estructurados o no estructurados), de diversas fuentes en búsqueda de patrones que permitan tomar decisiones de negocio. Es un término que data de los años 90. La minería de datos se usa para análisis de mercados, definir patrones de compra, planificación financiera, detección de fraude etc.

Consiste en el desarrollo de modelos estadísticos y de aprendizaje automático que permitan predecir comportamientos futuros, basándose en datos históricos.

Los módulos son la forma que tiene Python de almacenar definiciones (instrucciones o variables) en un archivo, de forma que se puedan usar después en un script o en una instancia interactiva del intérprete. Así no es necesario volver a definirlas cada vez. La ventaja principal de que Python permita separar un programa en módulos es, evidentemente, que podremos reutilizarlos en otros programas o módulos. Para ello, como será necesario importar los módulos que se quieran utilizar en cada situación. Python viene con una colección de módulos estándar que se puede usar como base para un nuevo programa o como ejemplos para empezar a aprender.

N

Los sistemas de bases de datos tradicionales, conocidos como sistemas relacionales (RDBMS) depende en gran medida de filas, columnas, esquemas y tablas, para recuperar y organizar los datos almacenados en las bases de datos. Para ello, utilizan un lenguaje de consulta estructurado SQL. Estos sistemas presentan ciertos problemas para trabajar con Big Data como son: la no escalabilidad, la falta de flexibilidad y los problemas de rendimiento.

Las bases de datos no relacionales NoSQL son mucho más flexibles. Permiten trabajar con datos no estructurados como, por ejemplo, datos de chat, mensajería, datos de registro, datos de usuario y sesión, datos de gran tamaño como videos e imágenes, así como también Internet de cosas y datos de dispositivos. También, están concebidas para obtener una altísima capacidad de volumen de almacenamiento, gracias al almacenamiento distribuido de los datos, y velocidad de proceso de la información. Por ello, son muy escalables. También son independientes del lenguaje de programación.

Las bases NoSQL son de código abierto, gracias a lo cual su coste es asequible, pero como contrapartida, genera problemas de falta de estandarización e interoperabilidad. Algunas bases datos NoSQL disponibles en el mercado son Couchbase, Dynamo Db de Amazon, MongoDB y MarkLogic etc.

Palabra compuesta de Numerical Python, es la principal librería de Python para computación científica. Una de sus características más potentes es que puede trabajar con matrices (array) de n dimensiones. También ofrece funciones básicas de algebra lineal, transformada de Fourier, capacidades avanzadas con números aleatorios, y herramientas de integración con otros lenguajes de bajo nivel como Fortran, C y C++.

O

P

Es una de las librerías de tratamiento de datos de Python más populares entre los científicos de datos. Consiste en una API de análisis de datos orientada a columnas. Muchos entornos de Aprendizaje Automático, incluido TensorFlow, trabajan con estructuras de datos pandas. Consulta la documentación de pandas para mayor información (en inglés).

El algoritmo perceptrón fue creado a finales de los años 50. Su primera implementación fue como hardware, de hecho, fue la primera red neuronal que se creó. El perceptrón es un algoritmo de aprendizaje supervisado para clasificadores binarios. Es un clasificador lineal, es decir, un algoritmo de clasificación basado en una función linear que aplica una serie de funciones peso a los valores de entrada, y pasa los valores de esta suma ponderada a una función cuyo resultado de salida es "o". El perceptrón es la red neuronal más sencilla, ya que simula el funcionamiento de una única neurona con n valores de entrada binarios. Calcula una suma ponderada de los valores de entrada y se dispara si esa suma es cero o mayor.

Es un antiguo lenguaje de scripting enraizado en sistemas anteriores a UNIX. Perl se ha usado mucho para tareas de procesamiento de texto y de limpieza y depuración de datos

Gradient boosting o Potenciación del gradiente, es una técnica de aprendizaje automático utilizado para el análisis de la regresión y para problemas de clasificación estadística, el cual produce un modelo predictivo en forma de un conjunto de modelos de predicción débil, normalmente, árboles de decisión. Construye el modelo de forma iterativa y lo generaliza permitiendo la optimización de una función pérdida diferenciable arbitraria. (Wikipedia).

La fracción de predicciones correctas hechas por un modelo de clasificación. En un modelo multiclase, la precisión se define de la siguiente forma: Precisión=Predicciones correctas/Número total de ejemplos. En el caso de clasificación binaria, la definición es: Precisión= (Verdaderos Positivos + Verdaderos Negativos) /Número total de ejemplos

Post relacionados en nuestro blog:
Machine Learning a tu alcance: la matriz de confusiónTipos de error en ML

Es un lenguaje de programación creado en 1994 y que es muy usado en ciencia de datos. Para los principiantes, resulta muy sencillo de aprender, pero al mismo tiempo es un lenguaje muy potente para usuarios avanzados, ya que dispone de librerías especializadas para aprendizaje automático y generación de gráficos.

Leer más

Q

R

Lenguaje de programación de código abierto y entorno de cálculo estadístico y generación de gráficos disponible para entornos Linux, Windows y Mac.

Se trata de un modelo que, inspirado en el funcionamiento del cerebro, se compone de distintas capas (al menos una de ellas oculta) que consisten en unidades sencillas conectadas entre sí (neuronas). Las redes neuronales se usan en aprendizaje profundo para tratamiento de imágenes (asociadas a características) y muchas cosas más. Lo que hace especial a este tipo de redes es el uso de la capa oculta de funciones "peso", las neuronas, con la cual se pueden construir una red que reproduzca muchas otras funciones. Sin esa capa oculta, las redes neuronales no serían más que simples funciones ponderadas.

Consiste en usar una técnica llamada análisis de componentes principales para extraer una o más dimensiones que capturan la mayor variación posible de los datos. Para ello se usa álgebra lineal, que, en pocas palabras, es la rama de las matemáticas que permite trasladar algo que ocurre en un espacio de m dimensiones, a otro espacio con un número de dimensiones menor.

Es un método de aprendizaje supervisado donde la variable de salida es un valor real y continuo, como la "estatura" o el "peso". La regresión consiste en ajustar cualquier conjunto de datos a un modelo determinado. Dentro de los algoritmos de regresión podemos encontrar la regresión lineal, no lineal, por mínimos cuadrados, Lasso, etc.

Es una técnica que busca una relación lineal (esto es, una donde la relación entre dos cantidades variables, como pueden ser precios y ventas, se pueden expresar con una ecuación cuya representación gráfica es una recta) comenzando con un conjunto de puntos que, en un principio, no están bien alienados. Este proceso ser realiza calculando la aproximación pormínimos cuadrados. Es aquella que, en un gráfico de coordenadas cartesianas x-y, ofrece un mejor ajuste a los datos de acuerdo con un criterio de mínimos cuadrados (minimiza la suma de cuadrados de las diferencias en las ordenadas entre los puntos generados por la función elegida y los correspondientes valores en los datos).

Es un modelo similar a la regresión lineal, pero los resultados que se obtienen son categóricos, en lugar de ser valores continuos.

Es un lenguaje de script que surgió en 1996. Es muy usando entre los científicos de datos, pero no es tan popular como Python, ya que éste que ofrece más librerías especializadas para las distintas tareas de Data Science.

S

Es un paquete de software estadístico que incluye un lenguaje de programación que también se conoce como SAS.

Es una librería de Python construida sobre NumPy, SciPy y matplotlib. Esta librería contiene un gran número de eficientes herramientas para machine learning y modelado estadístico, como, por ejemplo, algoritmos de clasificación, regresión, clustering y reducción de dimensionalidad.

Palabra compuesta de Scientific Python. SciPy es una librería de Python que está construida sobre la librería para computación científica NumPy. Es una de las más útiles por la gran variedad que tiene de módulos de alto nivel sobre ciencia e ingeniería, como transformada discreta de Fourier, álgebra lineal, y matrices de optimización.

Es una librería de Python que se usa para rastrear la web. Es un entorno muy útil para obtener determinados patrones de datos. Desde la url de la home de una web, puede rastrear las distintas páginas del sitio para recopilar información.

Es una librería de Python basada en matplotlib, se usa para hacer más atractivos los gráficos e información estadística en Python. Su objetivo es darle una mayor relevancia a las visualizaciones, dentro de las tareas de exploración e interpretación de los datos.

Es un método de aprendizaje no supervisado que se usa para descubrir agrupamientos inherentes a los datos. Por ejemplo, agrupamiento de clientes según sus hábitos de compra para de esta forma segmentarlos. De esta forma, las empresas pueden definir las estrategias de marketing más apropiadas para incrementar sus beneficios. Ejemplos de algoritmos de clustering son: K-Means, clustering jerárquico etc.

Son métricas estadísticas que se usan para medir el rendimiento de un clasificador binario. La Sensibilidad (También llamada tasa de verdadero positivo, o probabilidad de detección en algunos campos) mide la proporción de casos positivos correctamente identificados por el algoritmo clasificador. Por ejemplo, el porcentaje de personas que padecen una enfermedad y que son correctamente detectadas. Su fórmula es: Sensibilidad=Verdaderos Positivos/ (Verdaderos Positivos + Falsos Negativos).

La Especificidad (también llamada tasa de verdaderos negativos) mide la proporción de casos negativos correctamente identificados como tales por el algoritmo clasificador. Por ejemplo, se usa para indicar el número de personas sanas que han sido correctamente identificadas como tales por el algoritmo. Especificidad=Verdaderos Negativos/ (Verdaderos Negativos + Falsos Positivos).

Post relacionados en nuestro blog:
Machine Learning a tu alcance: la matriz de confusión

Son series temporales de datos que también incluyen identificadores geográficos, como pares de coordenadas de latitud-longitud.

Una serie temporal es una secuencia de medidas espaciadas en el tiempo intervalos no necesariamente iguales. Así las series temporales constan de una medida (por ejemplo, presión atmosférica o precio de una acción) acompañada de un sello temporal.

Es el término independiente en el origen. En los modelos de machine learning (aprendizaje automático) suele denominarse b o w0. En la siguiente fórmula sería el término b. y'=b+w1x1+w2x2+...+wnxn. En machine learning se llama sesgo a la tendencia del que aprende a repetir el mismo error de forma consistente. La Varianza es la tendencia a aprender hechos aleatorios sin tener en cuenta la señal. En ocasiones, por evitar la varianza (overfitting) se cae en el error opuesto, el sesgo (underfitting).

Esta librería de C++ ofrece métodos de optimización lineal y no lineal. Está basada en métodos kernel, redes neurales y otras técnicas avanzadas de machine learning. Es compatible con la mayoría de sistemas operativos.

Es un sistema que emplea conocimiento humano capturado en un ordenador para resolver problemas que normalmente resolverían humanos expertos. Los sistemas bien diseñados imitan el proceso de razonamiento que los expertos utilizan para resolver problemas específicos. Estos sistemas pueden funcionar mejor que cualquier humano experto tomando decisiones individualmente en determinados dominios y pueden ser utilizados por humanos no expertos para mejorar sus habilidades en la resolución de problemas.

Un modelo está "sobreajustado" cuando se han tenido en cuenta tantas peculiaridades y valores anónimos que el modelo se ha vuelto excesivamente complicado y no es aplicable a ningún conjunto de datos, salvo para el que se ha usado para entrenarlo.

Es una librería de Java que encaja a la perfección con las APIs de Spark y trabaja conjuntamente con NumPy. Spark acelera el funcionamiento de MLlib, cuyo objetivo es realizar un aprendizaje escalable y más sencillo.

SQL (Structured Query Language) es un lenguaje estándar e interactivo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas. El SQL se basa en el uso del álgebra y cálculos relacionales para realizar consultas a las bases de datos de manera sencilla. Las consultas se realizan mediante un lenguaje de comandos que permite seleccionar, insertar, actualizar, averiguar la ubicación de los datos, y más.

Es un módulo de Python para modelado estadístico. Permite a los usuarios explorar datos, hacer estimaciones de modelos estadísticos y realizar test estadísticos. Ofrece una extensa lista de estadísticas descriptivas, test, funciones gráficas etc para diferentes tipos de datos y estimadores.

Es una librería de Python que se usa para cálculo simbólico, desde aritmética, a cálculo, álgebra, matemáticas discretas y física cuántica. También permite formatear los resultados en código LaTeX.

T

Las tablas dinámicas resumen de forma ágil y rápida largas listas de datos, sin necesidad de escribir fórmulas o copiar celdas. Pero su característica más importante es que se pueden reorganizar de forma dinámica. Con tan sólo mover el ratón, se puede reorganizar la tabla pivot de forma que resuma los datos agrupándolos, por ejemplo, por género, por edad o por localización geográfica. El proceso de reorganizar la tabla se conoce como "pivotar los datos". Consiste en distribuir la información de forma que se puede examinar desde distintos ángulos. El término tabla pivot es una frase genérica utilizada por múltiples proveedores. Sin embargo, Microsoft Corporation ha registrado la marca específica de "PivotTable".

Consiste en convertir los datos, normalmente por medio de lenguajes de script, en un formato en el que resulte más fácil trabajar con ellos. Es una tarea que consume mucho tiempo.

Post relacionados en nuestro blog (Serie herramientas de depuración de datos):
Tus datos más limpios, casi sin frotar

U

La "Arquitectura de Gestión de Información Desestructurada" fue desarrollada por IBM como entorno de análisis de datos no estructurados, especialmente, lenguaje natural. OASIS UIMA es una especificación que estandariza este entorno y Apache UIMA es una implementación de código abierto de ésta. Este entorno permite trabajar con distintas herramientas diseñadas para conectarse con él.

V

Se usa en la aplicación de algoritmos a conjuntos de datos. Consiste en un conjunto de técnicas que dividen los datos en datos de entrenamiento y datos de test. Los datos de entrenamiento se introducen en el algoritmo, junto con las respuestas correctas, y así "aprende" de los datos. Una vez entrenado, el algoritmo es capaz de predecir las respuestas correctas para cada uno de los datos de entrada del conjunto de datos de test. Las respuestas que da el algoritmo se comparan con los valores reales y así se puede estimar si el algoritmo lo hizo bien.

Son valores extremos que pueden ser debidos a errores de medición o registro de los datos, o bien reflejo de eventos reales, pero poco frecuentes.

Las variables categóricas (o variables nominales) son aquellas que tienen valores cualitativos discretos. Por ejemplo, los nombres de ciudades como Madrid, Valencia, Bilbao, son categóricos.

Se trata de variables cuyo valor puede ser cualquiera que se pueda expresar con un número decimal. La edad, o el tamaño, pueden ser variables continuas. Tiene 2,5 años. Su representación gráfica es una función continua. Las variables discretas, por el contrario, se expresan por números enteros, o valores concretos como por ejemplo "hombre", "mujer", "sí" o "no".

Se llama variable dependiente porque su valor tiene que ver ("depende") con el de la variable dependiente. Si estamos midiendo el efecto que tiene el volumen del presupuesto de publicidad sobre las ventas totales, el presupuesto de publicidad sería la variable independiente y las ventas totales, sería la dependiente.

Se trata de una variable cuyos valores potenciales pertenecen a un conjunto específico de valores. Por ejemplo, si alguien califica una película entre una y cinco estrellas y no están permitidos valores fracción de estrella (por ejemplo, cuatro estrellas y media), la variable calificación es una variable discreta. En una representación gráfica, las variables discretas se expresan en forma de histogramas.

La definición matemática de un vector es “una cantidad que tiene una magnitud y una dirección, representada por una flecha cuya longitud representa la magnitud y cuya orientación en el espacio representa la dirección”. Sin embargo, los científicos de datos utilizan el término en este sentido: “conjunto ordenado de números reales que denotan una distancia sobre un eje de coordenadas. Estos números pueden representar características de una persona, película, producto o lo que queramos modelar. Esta representación matemática de las variables permite trabajar con librerías de software que aplican operaciones de matemáticas avanzadas a los datos. Un espacio vectorial es un conjunto de vectores, por ejemplo, una matriz.

W

Weka es un conjunto de algoritmos de aprendizaje automático para realizar tareas de analítica de datos. Los algoritmos se pueden aplicar de forma directa a un conjunto de datos o bien ser llamados desde tu propio código Java. Weka ofrece herramientas de pre-procesamiento de datos, clasificación, regresión, clustering, reglas de asociación y visualización. También es apropiada para el desarrollo de nuevos modelos de aprendizaje automático. Weka es un software de código abierto desarrollado por la Universidad de Waikato en Nueva Zelanda.

X

Y

Z