Sunteți pe pagina 1din 7

MINERÍA DE DATOS

ACTIVIDAD #4 Y 5

ALUMNO:

JORGE LUIS PAYARES GARCIA

ENTREGADO A:

FABIO MENDOZA

CUC

BARRANQUILLA

03/15/2019
Procesos en weka
Proceso de balanceo de datos: Balancear el conjunto de datos, quitar instancias consideradas
como ruido, eliminar traslape entre clases o buscar prototipos que representen el conjunto de datos
de una manera que sea fácil de procesar por métodos de clasificación o agrupamiento, para ello
hay una serie de algoritmos que nos permiten llevar a cabo dicho procedimiento, entre las cuales
podemos encontrar:

 SMOTE: Synthetic Minority Oversampling Technique es un método que genera patrones


mientras que evita el sobre entrenamiento. Para ello busca los k vecinos más cercanos
para cada una de las clases minoritarias y genera un nuevo patrón a partir de esos k
vecinos. La posición de dicho patrón varía aleatoriamente para evitar el sobre
entrenamiento para el caso en que se generan muchas muestras determinadas por los
mismos vecinos. Según la distribución de las clases puede ser contraproducente, no
recomendándose para conjuntos cóncavos.

 Algoritmo de Balanceo Oversampling: Oversampling es una técnica que balancea las


cargas por el simple expediente de incrementar el número de patrones de la(s) clase(s)
minoritaria(s) duplicándolos. Al igual que todas las técnicas descriptas para el
balanceado, se deben conocer sus limitaciones para evitar un deterioro del resultado. En
este caso el principal riesgo proviene del sobre entrenamiento debido a la duplicación de
patrones.

 Algoritmo de Balanceo Undersampling: Undersampling, al contrario de Oversampling


esta técnica directamente desecha patrones de la(s) clase(s) mayoritaria(s) hasta que todas
las clases tengan la misma cantidad de datos. Aunque el desechado se realiza en forma
aleatoria, no hay garantías de que se pierda información.

Discretizar los datos: En Weka podemos utilizar la opción “Discretize”, la cual discretiza un
conjunto de valores numéricos en rangos de datos. Como parámetros toma los índices de los
atributos discretizar (attribute índices) y el número de particiones en que queremos que divida los
datos (bins). Si queremos que las particiones las realice por la frecuencia de los datos y no por el
tamaño de estas tenemos la opción useEqualFrecuency. Si tenemos activa esta última opción
podemos variar el peso de las instancias para la definición de los intervalos con la opción
DesiredWeightOfInstancesPerInterval. Si, al contrario tenemos en cuenta el número de instancias
para la creación de intervalos podemos usar findNumBins que optimiza el procedimiento de
confección de los mismos.
Medidas de evaluación
VP (Verdaderos positivos): instancias correctamente reconocidas por el sistema.

FN (Falsos negativos): instancias que son positivas y que el sistema dice que no lo son.

FP (Falsos positivos): instancias que son negativas pero el sistema dice que no lo es.

VN (Verdaderos negativos): instancias que son negativas y correctamente reconocidas como


tales.

Suponiendo que N es el número del conjunto de datos de entrenamiento, N=VP+FN+FP+VN. El


número de instancias clasificadas correctamente es la suma de la diagonal de la matriz y el resto
están clasificadas de forma incorrecta.Otra de las maneras de validar más frecuente es basarnos
en la tasa de error y la tasa de acierto de un clasificador. Estas tasas se calculan de la siguiente
manera:

 Tasa de error: FP+FN/N


 Tasa de acierto: VP+VN/N

Precisión: es la probabilidad de que una predicción efectivamente corresponda con su valor real.
La precisión, en cambio, mide el número de términos correctamente reconocidos respecto al total
de términos predichos, sean estos verdaderos o falsos términos. En este caso, la precisión está
midiendo la pureza o el grado en que son todos los que están.

precisión = VP/VP+FP

Cobertura (Recall): La cobertura mide la proporción de términos correctamente reconocidos


respecto al total de términos reales, dicho de otro modo, mide en qué grado están todos los que
son.
cobertura = VP/VP+VN

Podríamos definir la cobertura de otra manera distinta como, cobertura= |A| / |D|. Donde: |A|: es
la cantidad de instancias de un conjunto de entrenamiento D, que satisface la precondición |D|:
representa el número total del conjunto de entrenamiento.

La cobertura y la precisión mantienen una relación inversa, es decir cuando aumenta la cobertura
del modelo generado disminuye la precisión y viceversa cuando disminuye la cobertura aumenta
la precisión. De manera tal que se obtiene una cobertura total, a costo de una precisión nula.

Exactitud: Es un clasificador que generaliza mejor Resultado.

exactitud(r)= |A Ω y| / |A|

Donde: |A|: es la cantidad de instancias de un conjunto de entrenamiento D, que satisface la


precondición. |A Ω y|: cantidad de instancias del conjunto de entrenamiento que satisface la
precondición y el consecuente. |D|: representa el número total del conjunto de
entrenamiento.

Curva ROC: Se basa en dibujar el “true-positive rate” en el eje y y el “false positive rate” en el
eje x. Por ejemplo, dada la siguiente matriz de confusión:

tabla 1. matriz de confusión

 Tendríamos TPR= 0.6 y FPR= 0.3:

Media Armónica: La media armónica resulta poco influida por la existencia de determinados
valores mucho más grandes que el conjunto de los otros, siendo en cambio sensible a valores
mucho más pequeños que el conjunto. La media armónica no está definida en el caso de que exista
algún valor nulo.

Algoritmo de árbol de decisión


Los árboles de decisión son un modelo predictivo, que construye diagramas de construcciones
lógicas a partir de una base de datos. Esta una técnica utilizada por la minería de datos para el
análisis de datos con el fin de tomar decisiones convenientes.

Los árboles de decisión, son representaciones gráficas y analíticas de datos introducidos por
medio de una base de datos ya establecida. Estos ayudan en la toma de decisiones, desde un punto
de vista probabilístico con el fin de elegir la opción más conveniente. Los árboles de decisión se
caracterizan por ser una técnica utilizada por la minería de datos, en donde se busca solucionar
problemas de predicción, clasificación y segmentación, una vez analizados todos los datos.

 Representación de los árboles de decisión:

o Cada nodo se puede definir como el momento en el que se ha de tomar una


decisión de entre varias posibles, lo que va haciendo que a medida que aumenta
el número de nodos aumenta el número de posibles finales a los que puede llegar
el individuo. Esto hace que un árbol con muchos nodos sea complicado de dibujar
a mano y de analizar debido a la existencia de numerosos caminos que se pueden
seguir.
o Los vectores de números serían la solución final a la que se llega en función de
las diversas posibilidades que se tienen, dan las utilidades en esa solución.
o Las flechas son las uniones entre un nodo y otro y representan cada acción
distinta.

o Las etiquetas se encuentran en cada nodo y cada flecha y dan nombre a cada
acción.

 Funcionamiento: En este árbol de decisión de la figura 1 podemos observar como hay cuatro
posibles soluciones finales. En él se cumplen las normas antes descritas (nodo inicial, una
única flecha por nodo y un único camino para llegar a cada nodo final) y tiene todos los
elementos antes descritos (nodos, vectores de números, flechas y etiquetas). La imagen
representa un árbol de decisión conformado por dos jugadores, en él se pueden observar las
opciones que El juego cuenta con dos jugadoras. La primera decisión la ha de tomar la
jugadora 1, quien debe decidir entre O1 y O2, en este punto será la jugadora 2 quien decida.
Si la Jugadora 1 ha elegido O1, tendrá que decidir entre A1 y R1, A1 le producirá una utilidad
de 2, y R1 de 0, a su vez A1 le reportará una utilidad de 8 a la jugadora 1 y R1 de 0. En
cambio, si la jugadora 1 elige O2, la jugadora 2 deberá elegir entre A2 y R2, la primera opción
le reportará una utilidad de 5 a ella y a la otra jugadora, R2 reportará una utilidad de 0 a las
dos. Con los adecuados métodos de inducción existentes se podría resolver este árbol de
decisión sin mucha complicación.

Árbol de decisión.

Máquina de soporte vectorial


Son una moderna y efectiva técnica de Inteligencia Artificial aplicada fundamentalmente al
procesamiento de grandes cantidades de información. Esta, construye un hiperplano o conjunto
de hiperplanos en un espacio de dimensionalidad muy alta (o incluso infinita) que puede ser
utilizado en problemas de clasificación o regresión. Una buena separación entre las clases
permitirá una clasificación correcta. Las funciones kernel son funciones matemáticas que se
emplean en las Máquinas de Soporte Vectorial. Estas funciones son las que le permiten
convertir lo que sería un problema de clasificación no-lineal en el espacio dimensional original,
a un sencillo problema de clasificación lineal en un espacio dimensional mayor.
Representación de una máquina de soporte vectorial

Redes Neuronales
Estas redes neuronales son modelos computacionales que se basan en un gran conjunto de
unidades simples interconectadas entre sí, de forma aproximada al comportamiento observado en
el funcionamiento de las neuronas de los cerebros biológicos como el de los seres humanos.

Las redes neuronales funcionan analizando uno o varios problemas de entrada por unidades
intercomunicadas, donde la información es evaluada contra informaciones anteriores; el resultado
positivo o negativo será la salida, que igualmente será almacenada para futuras evaluaciones. La
unidad fundamental de una red neuronal es el perceptrón, que es un elemento con varias entradas
de un determinado peso cada una. Si la suma de los pesos de esas entradas es mayor que un
determinado número, la salida del perceptrón es uno; caso contrario, la salida es cero. Estos
sistemas aprenden y se conforman a sí mismos en lugar de ser programados de forma explícita.
Asimismo, prevalecen en áreas donde la detección de soluciones son difíciles de expresar con la
programación convencional.

representación de redes neuronales


BIBLIOGRAFIA.

http://perso.wanadoo.es/alimanya/funcion.htm
https://www.uv.mx/aguerra/documents/2009-mpi-12.pdf
https://yorobot.co/que-son-y-como-funcionan-las-redes-neuronales-artificiales/
https://ml4a.github.io/ml4a/es/neural_networks/

S-ar putea să vă placă și