Galería de mapas mentales Herramienta de minería de datos——WEKA
WEKA es una herramienta integral de minería de datos que integra preprocesamiento de datos, algoritmos de aprendizaje (clasificación, regresión, agrupamiento, análisis de correlación) y métodos de evaluación. Este mapa mental presenta cómo usar WEKA. ¡Espero que sea útil para todos!
Editado a las 2023-07-07 16:09:18,Este es un mapa mental sobre una breve historia del tiempo. "Una breve historia del tiempo" es una obra de divulgación científica con una influencia de gran alcance. No sólo presenta los conceptos básicos de cosmología y relatividad, sino que también analiza los agujeros negros y la expansión. del universo. temas científicos de vanguardia como la inflación y la teoría de cuerdas.
¿Cuáles son los métodos de fijación de precios para los subcontratos de proyectos bajo el modelo de contratación general EPC? EPC (Ingeniería, Adquisiciones, Construcción) significa que el contratista general es responsable de todo el proceso de diseño, adquisición, construcción e instalación del proyecto, y es responsable de los servicios de operación de prueba.
Los puntos de conocimiento que los ingenieros de Java deben dominar en cada etapa se presentan en detalle y el conocimiento es completo, espero que pueda ser útil para todos.
Este es un mapa mental sobre una breve historia del tiempo. "Una breve historia del tiempo" es una obra de divulgación científica con una influencia de gran alcance. No sólo presenta los conceptos básicos de cosmología y relatividad, sino que también analiza los agujeros negros y la expansión. del universo. temas científicos de vanguardia como la inflación y la teoría de cuerdas.
¿Cuáles son los métodos de fijación de precios para los subcontratos de proyectos bajo el modelo de contratación general EPC? EPC (Ingeniería, Adquisiciones, Construcción) significa que el contratista general es responsable de todo el proceso de diseño, adquisición, construcción e instalación del proyecto, y es responsable de los servicios de operación de prueba.
Los puntos de conocimiento que los ingenieros de Java deben dominar en cada etapa se presentan en detalle y el conocimiento es completo, espero que pueda ser útil para todos.
Herramienta de minería de datos——WEKA
Introducción a WEKA
El nombre completo de WEKA es Entorno Waikato para el Análisis del Conocimiento.
WEKA es también el nombre de un pájaro en Nueva Zelanda. Es un software de código abierto de aprendizaje automático/minería de datos desarrollado en Java por el equipo WEKA de la Universidad de Waikato en Nueva Zelanda.
Obtener su código fuente
http://www.cs.waikato.ac.nz/ml/weka/
http://prdownloads.sourceforge.net/weka/weka-3-6-6jre.exe
En agosto de 2005, en la 11ª Conferencia Internacional ACM SIGKDD, el grupo WEKA de la Universidad de Waikato ganó el premio al servicio más alto en el campo de la minería de datos y la exploración del conocimiento. El sistema WEKA fue ampliamente reconocido y aclamado como líder en minería de datos. y el aprendizaje automático. Los hitos del aprendizaje en la historia son una de las herramientas de minería de datos más completas disponibles en la actualidad. WEKA se ha descargado más de 10.000 veces al mes.
caracteristica principal
Es una herramienta integral de minería de datos que integra preprocesamiento de datos, algoritmos de aprendizaje (clasificación, regresión, agrupamiento, análisis de correlación) y métodos de evaluación.
Tiene una interfaz visual interactiva.
Proporcionar un entorno de comparación y aprendizaje de algoritmos.
A través de su interfaz podrás implementar tus propios algoritmos de minería de datos.
Entorno del explorador
Se utilizan varias pestañas en el área 1 para cambiar entre diferentes paneles de tareas de minería.
Preproceso (preprocesamiento de datos): Seleccionar y modificar los datos a procesar.
Clasificar: entrene y pruebe modelos de clasificación o regresión.
Clúster: agrupación a partir de datos.
Asociado: aprenda reglas de asociación a partir de datos.
Seleccionar atributos: seleccione los atributos más relevantes de los datos.
Visualizar: vea un diagrama de dispersión bidimensional de los datos.
El área 2 son algunos botones de uso común. Incluyendo funciones como abrir, editar, guardar datos y convertir datos. Por ejemplo, podemos guardar el archivo "bank-data.csv" como "bank-data.arff".
En el área 3, puede elegir un filtro para filtrar los datos o realizar alguna transformación en los datos. El preprocesamiento de datos se implementa principalmente con él.
El área 4 muestra la información básica del conjunto de datos, como el nombre de la relación, la cantidad de atributos y la cantidad de instancias.
Todas las propiedades del conjunto de datos se enumeran en el área 5.
Puede eliminar algunos atributos marcándolos y "Eliminar". Después de eliminarlos, también puede utilizar el botón "Deshacer" en el área 2 para recuperarlos.
La fila de botones encima del área 5 se utiliza para realizar comprobaciones rápidas.
El área 6 muestra un resumen del atributo actual seleccionado en el área 5.
El resumen incluye nombre de atributo (Name), tipo de atributo (Type), número y proporción de valores faltantes (Missing), número de valores diferentes (Distinct), número y proporción de valores únicos (Unique)
El método de resumen es diferente para atributos numéricos y atributos nominales. La figura muestra un resumen del atributo numérico "ingresos".
Los atributos numéricos muestran el valor mínimo (Mínimo), el valor máximo (Máximo), la media (Media) y la desviación estándar (StdDev)
Las propiedades nominales muestran el recuento de cada valor distinto.
El Área 7 es el histograma del atributo seleccionado en el Área 5.
Si el último atributo del conjunto de datos (que es la variable objetivo predeterminada para tareas de clasificación o regresión) es una variable de etiqueta de clase (por ejemplo, "pep"), cada rectángulo en el histograma se divide en segmentos de diferentes colores proporcionales a esa variable.
Si desea cambiar la base de segmentación, simplemente seleccione un atributo de clasificación diferente en el cuadro desplegable sobre el área 7.
Al seleccionar "Sin clase" o un atributo numérico en el cuadro desplegable se convertirá en un histograma en blanco y negro.
Área 8 El área inferior de la ventana, incluida la barra de estado, el botón de registro y Weka Bird.
La barra de estado (Estado) muestra información que le permite saber lo que se está haciendo. Por ejemplo, si Explorer está ocupado cargando un archivo, aparecerá una notificación en la barra de estado.
Al hacer clic con el botón derecho del mouse en cualquier lugar de la barra de estado, aparecerá un pequeño menú. Este menú le ofrece dos opciones:
Información de memoria: muestra la cantidad de memoria disponible para WEKA.
Ejecute el recolector de basura: fuerce al recolector de basura de Java a buscar espacio de memoria que ya no es necesario y lo libere, de modo que se pueda asignar más memoria para nuevas tareas.
El botón Registro le permite ver los registros de operaciones de weka.
Si el pájaro weka de la derecha se mueve, significa que WEKA está realizando una tarea de excavación.
Entorno de flujo de conocimiento
Conjunto de datos WEKA
El conjunto de datos procesado por WEKA es una tabla bidimensional de archivo .arff
Una fila de la tabla se denomina instancia, lo que equivale a una muestra en estadística o un registro en la base de datos.
Una fila vertical se denomina atributo, que equivale a una variable en estadísticas o un campo en una base de datos.
Tal tabla, o conjunto de datos, desde el punto de vista de WEKA, presenta una relación (Relación) entre atributos.
En la imagen de arriba, hay 14 instancias, 5 atributos y el nombre de la relación es "clima".
El formato en el que WEKA almacena los datos es un archivo ARFF (Formato de archivo de relación de atributos), que es un archivo de texto ASCII.
La tabla bidimensional que se muestra arriba se almacena en el siguiente archivo ARFF. Este es el archivo "weather.arff" que viene con WEKA, que se puede encontrar en el subdirectorio "data" del directorio de instalación de WEKA.
El formato en el que WEKA almacena los datos es el archivo ARFF (Formato de archivo de relación de atributos).
Este es un archivo de texto ASCII (ASCII ((Código estándar americano para el intercambio de información): Código estándar americano para el intercambio de información))
La extensión del archivo es .arff
Puede utilizar WordPad para abrir y editar archivos ARFF
Las líneas que comienzan con "%" en el archivo son comentarios y WEKA ignorará estas líneas.
Después de eliminar los comentarios, todo el archivo ARFF se puede dividir en dos partes:
La primera parte proporciona la información del encabezado (Información del encabezado), incluida la declaración de relaciones y la declaración de atributos.
La segunda parte proporciona información de datos (información de datos), es decir, los datos proporcionados en el conjunto de datos. A partir de la etiqueta "@data", lo que sigue es la información de los datos.
Declaración de relación
El nombre de la relación se define en la primera línea válida del archivo ARFF, en el formato: @relation <nombre de la relación>
<nombre de relación> es una cadena. Si esta cadena contiene espacios, debe estar entre comillas (comillas simples o dobles para la puntuación en inglés).
Declaración de propiedad
Las declaraciones de atributos están representadas por una lista de declaraciones que comienzan con "@attribute".
Cada atributo en el conjunto de datos tiene una declaración "@attribute" correspondiente para definir su nombre de atributo y tipo de datos (tipo de datos): @attribute <nombre de atributo> <tipo de datos>
Donde <nombre de propiedad> debe ser una cadena que comience con una letra. Al igual que con los nombres de relaciones, si esta cadena contiene espacios, debe ir entre comillas.
El orden de las declaraciones de atributos es importante, ya que indica la ubicación del atributo en la sección de datos.
Por ejemplo, "humedad" es el tercer atributo declarado, lo que significa que entre las columnas separadas por comas en la parte de datos, los datos de la columna 2 (comenzando desde la columna 0) 85 90 86 96... es la "humedad" correspondiente valor.
En segundo lugar, el último atributo declarado se denomina atributo de clase, que es la variable objetivo predeterminada en tareas de clasificación o regresión.
tipo de datos
tipo numérico numérico
Los atributos numéricos pueden ser números enteros o reales, pero WEKA los trata a todos como números reales. Por ejemplo: @atributo temperatura real
<especificación-nominal> Tipo nominal
Los atributos nominales constan de una lista <especificación-nominal> de posibles nombres de categorías encerrados entre llaves: {<nombre-nominal1>, <nombre-nominal2>, <nombre-nominal3>, ...}.
El valor de este atributo en el conjunto de datos solo puede ser una de las categorías.
Por ejemplo, la declaración de atributo: @attribute outlook {soleado, nublado, lluvioso} indica que el atributo "outlook" tiene tres categorías: "soleado", "nublado" y "lluvioso". El valor de "perspectiva" correspondiente a cada instancia del conjunto de datos debe ser uno de estos tres.
Si el nombre de la categoría tiene espacios, aún debe estar entre comillas.
tipo de cadena
Las propiedades de cadena pueden contener texto arbitrario. Por ejemplo: @attribute cadena LCC
fecha [<formato-fecha>] tipo de fecha y hora
Los atributos de fecha y hora están representados uniformemente por el tipo "fecha" y su formato es: @attribute <nombre del atributo> fecha [<formato de fecha>]
Donde <formato-fecha> es una cadena que especifica cómo analizar y mostrar el formato de fecha u hora. La cadena predeterminada es el formato de combinación de fecha y hora proporcionado por ISO-8601: "aaaa-MM-dd HH:mm: ss".
La cadena que expresa la fecha en la parte de información de datos debe cumplir con los requisitos de formato especificados en la declaración, por ejemplo: @ATTRIBUTE marca de tiempo FECHA "aaaa-MM-dd HH:mm:ss" @DATA "2011-05-03 12: 59:55"
Aviso
Hay otros dos tipos, "entero" y "real", que se pueden utilizar, pero WEKA los trata a ambos como "numéricos".
Las palabras clave "entero", "real", "numérico", "fecha" y "cadena" distinguen entre mayúsculas y minúsculas, mientras que "relación", "atributo" y "datos" no.
Información de datos
En la información de datos, la etiqueta "@data" ocupa una línea exclusiva y el resto son los datos de cada instancia.
Cada instancia ocupa una línea y los valores de los atributos de la instancia están separados por comas ",".
Si el valor de un atributo es un valor faltante, se representa con un signo de interrogación "?", y este signo de interrogación no se puede omitir.
datos escasos
A veces, el conjunto de datos contiene una gran cantidad de valores 0. En este caso, ahorra más espacio almacenar datos en formato disperso.
El formato disperso es para la representación de un objeto en información de datos y no requiere modificación de otras partes del archivo ARFF.
Por ejemplo datos: @data 0, X, 0, Y, "clase A" 0, 0, W, 0, "clase B"
Expresado en formato disperso, es @data {1 X, 3 Y, 4 "clase A"} {2 W, 4 "clase B"}
Nota: La columna de atributos más a la izquierda del conjunto de datos ARFF es la columna 0. Por lo tanto, 1 X significa que X es el valor del atributo en la columna 1.
preparación de datos
recopilación de datos
Utilice datos de archivos ARFF directamente.
Importe desde archivos CSV, C4.5, binarios y otros formatos.
Leer datos de la base de datos SQL a través de JDBC.
Obtenga datos de recursos de red desde URL (Localizador uniforme de recursos).
Conversión de formato de datos
El formato ARFF es el mejor formato de archivo admitido por WEKA.
Cuando se utiliza WEKA para la minería de datos, el primer problema que se enfrenta suele ser que los datos no están en formato ARFF.
WEKA también brinda soporte para archivos CSV y este formato es compatible con muchos otros programas (como Excel).
WEKA se puede utilizar para convertir el formato de archivo CSV al formato de archivo ARFF.
Recursos de datos
El propio conjunto de datos de WEKA C:\Archivos de programa\Weka-3-6\datos
Recursos de datos de red http://archive.ics.uci.edu/ml/datasets.html
.XLS——> .CSV——> .ARFF
El archivo XLS de Excel permite colocar varias tablas bidimensionales en diferentes hojas de trabajo (Hojas), y cada hoja de trabajo solo se puede guardar como un archivo CSV diferente.
Abra un archivo XLS y cambie a la hoja de trabajo que necesita convertirse, guárdela como tipo CSV, haga clic en "Aceptar", "Sí" e ignore el mensaje para completar la operación.
Abra un archivo tipo CSV en WEKA y guárdelo como un archivo tipo ARFF.
preprocesamiento de datospreproceso
Las herramientas de preprocesamiento de datos en WEKA se denominan filtros.
Se pueden definir filtros para transformar los datos de varias maneras.
La columna Filtro se utiliza para realizar los ajustes necesarios para varios filtros.
Botón Elegir: Haga clic en este botón para seleccionar un filtro en WEKA.
Cuando se selecciona un filtro, su nombre y opciones aparecen en el cuadro de texto junto al botón Elegir.
Cargar datos
Los primeros cuatro botones en el Área 2 de la página de preproceso del Explorador se utilizan para cargar datos en WEKA:
Abrir archivo.... Abre un cuadro de diálogo que le permite buscar archivos de datos en el sistema de archivos local.
Abrir URL.... Solicita una dirección URL que contiene datos.
Abrir base de datos.... Leer datos de la base de datos.
Generar.... Genera datos artificiales a partir de algunos DataGenerators.
Eliminar atributos inútiles
Por lo general, para las tareas de minería de datos, información como la identificación es inútil y puede eliminarse.
Verifique el atributo "id" en el área 5 y haga clic en "Eliminar". Guarde el nuevo conjunto de datos y vuelva a abrirlo.
Discretización de datos
Algunos algoritmos (como el análisis de correlación) solo pueden manejar atributos nominales. En este caso, es necesario discretizar los atributos numéricos.
Los atributos numéricos con valores limitados se pueden discretizar modificando el tipo de datos del atributo en el archivo .arff.
Por ejemplo, el atributo "niños" en un determinado conjunto de datos tiene sólo 4 valores numéricos: 0, 1, 2 y 3.
Modificamos directamente el archivo ARFF y cambiamos el valor numérico de los hijos @attribute a hijos @attribute {0,1,2,3}.
Vuelva a abrir "bank-data.arff" en "Explorador" y observe que después de seleccionar el atributo "hijos", el "Tipo" que se muestra en el área 6 cambia a "Nominal".
Para atributos numéricos con muchos valores, la discretización se puede lograr con la ayuda de un filtro llamado "Discretizar" en WEKA.
Haga clic en "Elegir" en el área 2, aparecerá un "árbol de filtros", busque "weka.filters.unsupervised.attribute.Discretize" nivel por nivel y haga clic.
El cuadro de texto junto a "Elegir" ahora debería decir "Discretizar -B 10 -M -0.1 -R primero-último".
Al hacer clic en este cuadro de texto aparecerá una nueva ventana para modificar los parámetros de discretización.
ClasificarClasificar
WEKA coloca tanto la clasificación como la regresión en la pestaña "Clasificar".
En ambas tareas de minería de datos, existe un atributo de destino (atributo de categoría, variable de salida).
Esperamos realizar una predicción de clasificación en los atributos de destino en función de un conjunto de atributos característicos (variables de entrada) de una instancia de WEKA.
Para lograr esto, necesitamos tener un conjunto de datos de entrenamiento en el que se conozcan la entrada y salida de cada instancia. Al observar las instancias en el conjunto de entrenamiento, se puede construir un modelo predictivo de clasificación/regresión.
Con este modelo, se pueden realizar predicciones de clasificación para nuevas instancias desconocidas.
Medir la calidad de un modelo depende principalmente de la precisión de sus predicciones.
Algoritmos de clasificación típicos en WEKA
Bayes: clasificador bayesiano
BayesNet: Red de creencias bayesianas
NaïveBayes: Red Naive Bayes
xMultilayerPerceptron: red neuronal artificial de avance multicapa
SMO: máquina de vectores de soporte (utilizando el método de aprendizaje de optimización secuencial)
Lazy: clasificador basado en instancias
IB1: clasificador de 1 vecino más cercano
IBk: clasificador de vecinos k-más cercanos
Elija un algoritmo de clasificación
Meta: método de combinación
AdaBoostM1: método AdaBoost M1
Ensacado: método de embolsado
Reglas: clasificador basado en reglas
JRip: Método directo - Algoritmo Ripper
Parte: Método indirecto: extracción de reglas de árboles de decisión generados por J48
Árboles: Clasificador de árbol de decisión
Id3: algoritmo de aprendizaje del árbol de decisión ID3 (no se admiten atributos continuos)
J48: Algoritmo de aprendizaje del árbol de decisión C4.5 (Versión 8)
REPTree: algoritmo de aprendizaje de árboles de decisión mediante poda para reducir errores
RandomTree: Método de combinación basado en árboles de decisión
Elija un método de evaluación del modelo (cuatro tipos)
Usando el conjunto de entrenamiento Usando la evaluación del conjunto de entrenamiento
Equipo de prueba suministrado Utilice la evaluación del equipo de prueba
Validación cruzada Validación cruzada
Establecer el pliegue Pliegues
Método de retención dividida por porcentaje. Utilice una cierta proporción de ejemplos de capacitación para la evaluación.
Establecer el porcentaje de instancias de entrenamiento
Haga clic en el botón Más opciones para configurar más opciones de prueba:
Modelo de salida. Genera un modelo de clasificación basado en todo el conjunto de entrenamiento para que el modelo pueda verse, visualizarse, etc. Esta opción es seleccionada por defecto.
Genera estadísticas por clase. Muestra las estadísticas de precisión/recuperación y verdadero/falso de cada clase. Esta opción es seleccionada por defecto.
Medidas de evaluación de la producción. Medidas de estimación de la entropía de la producción. Esta opción no está seleccionada de forma predeterminada.
Matriz de confusión de salida Genera la matriz de confusión de los resultados de la predicción del clasificador. Esta opción es seleccionada por defecto.
Almacene predicciones para visualización. Registre las predicciones del clasificador para que puedan representarse visualmente.
Predicciones de salida. Muestra los resultados de predicción de los datos de prueba. Tenga en cuenta que durante la validación cruzada, el número de una instancia no representa su posición en el conjunto de datos.
Evaluación sensible al costo. El error se estimará en base a una matriz de valor. El botón Establecer… se utiliza para especificar la matriz de valores.
Semilla aleatoria para xval/% Split Especifica una semilla aleatoria que se utiliza para aleatorizar los datos cuando es necesario dividirlos con fines de evaluación.
Análisis de resultados de texto
Haga clic en el botón de inicio y la información del resultado del texto se mostrará en la ventana de salida del Clasificador:
Información de ejecución Información de ejecución
Modelo clasificador (conjunto de entrenamiento completo) Un modelo de clasificación construido utilizando todos los datos de entrenamiento.
Resumen Resumen de los efectos de predicción para el conjunto de entrenamiento/prueba.
Precisión detallada por clase Una descripción detallada de la precisión de la predicción para cada clase.
Matriz de confusión Matriz de confusión, donde las filas de la matriz son las clases reales, las columnas de la matriz son las clases predichas y los elementos de la matriz son el número de muestras de prueba correspondientes.
principales indicadores
Instancias correctamente clasificadas Tasa de clasificación correcta
Instancias clasificadas incorrectamente Tasa de clasificación de errores
Estadística Kappa Estadísticas Kappa
Error absoluto medio Error absoluto medio
Error cuadrático medio raíz del error cuadrático medio
Error absoluto relativo Error absoluto relativo
Error cuadrático relativo de raíz Error cuadrático relativo de raíz
Tasa TP (mala/buena) tasa correcta
Tasa de FP (mala/buena) tasa de falsos positivos
Precisión (mala/buena) precisión
Tasa de retroalimentación de recuperación (mala/buena)
Medida F (mala/buena) Medida F
Tiempo necesario para construir el modelo Tiempo necesario para construir el modelo
Resultados gráficos de salida
Ver en la ventana principal. Vea el resultado en la ventana principal.
Ver en ventana separada. Abra una nueva ventana separada para ver los resultados.
Guardar búfer de resultados (guarda el búfer de resultados). Aparece un cuadro de diálogo para guardar los resultados de salida en un archivo de texto.
Cargar modelo (modo descarga). Cargue un objeto en modo previamente entrenado desde un archivo binario.
Guardar modelo. Guarde un objeto de esquema en un archivo binario, es decir, en formato de objeto en serie de JAVA.
Reevaluar el modelo en el conjunto de prueba actual (reevaluar el conjunto de prueba actual). Pruebe el conjunto de datos especificado a través del esquema establecido y use el botón Establecer... bajo la opción Conjunto de prueba suministrado.
Visualice los errores del clasificador. Aparece una ventana de visualización para mostrar el gráfico de resultados del clasificador. Entre ellos, las instancias clasificadas correctamente se representan mediante cruces, mientras que las instancias clasificadas incorrectamente se representan mediante cuadrados pequeños.
Diagrama de dispersión de clases reales versus previstas. Los resultados de una clasificación correcta se representan mediante cruces y los resultados de una clasificación incorrecta se representan mediante casillas.
Visualizar árbol(visualización de árbol). Si es posible, aparece una interfaz gráfica para describir la estructura del modelo de clasificador (esto solo está disponible para algunos clasificadores). Haga clic derecho en un área en blanco para abrir un menú, arrastre el mouse en el panel y haga clic para ver las instancias de capacitación correspondientes a cada nodo.
Visualice la curva de margen. Produzca un diagrama de dispersión que represente los márgenes de predicción. El margen se define como la diferencia entre la probabilidad de predecir un valor verdadero y la probabilidad más alta de predecir algo distinto del valor verdadero. Por ejemplo, los algoritmos acelerados funcionan mejor en conjuntos de datos de prueba al aumentar los márgenes en el conjunto de datos de entrenamiento.
Cree un diagrama de dispersión que muestre los valores marginales previstos.
cuatro variables
Margen: valor marginal previsto
Número_instancia: Número de serie de la instancia de inspección
Actual: el número de instancias con el valor de margen previsto actual.
Acumulativo: el número de instancias menor o igual que el valor marginal previsto (consistente con Instance_number)
Haga clic en la instancia de prueba número 8, que muestra que el valor marginal de este punto es 0,5 y hay 7 instancias con valores marginales inferiores a 0,5.
Visualizar curva de umbral (visualización de la curva de umbral). Se produce un diagrama de dispersión para describir el problema de compensación en la predicción, donde la compensación se captura variando el umbral entre clases. Por ejemplo, el umbral predeterminado es 0,5 y la probabilidad de que se prediga que una instancia será positiva debe ser mayor que 0,5, porque se predice exactamente que la instancia será positiva en 0,5. Y se pueden utilizar gráficos para visualizar la relación precisión/tasa de retroalimentación, como el análisis de curva ROC (relación positiva de error correcto y relación positiva) y otras curvas.
El umbral es la probabilidad mínima de clasificar la instancia de prueba en la clase actual. El color del punto se utiliza para representar el umbral.
Cada punto de la curva se genera cambiando el tamaño del umbral.
Se puede realizar un análisis ROC
El eje X selecciona la tasa de falsos positivos
Eje Y seleccionar tasa verdadera
curva ROC
La curva ROC (Receiver Operating Characteristic Curve) es un método gráfico que muestra el compromiso entre la tasa de verdaderos positivos y la tasa de falsos positivos del modelo de Clasificación.
Suponiendo que las muestras se pueden dividir en categorías positivas y negativas, interprete algunas definiciones conceptuales de los gráficos ROC:
Verdadero Positivo (TP), una muestra positiva predicha como positiva por el modelo
Falso Negativo (FN) es una muestra positiva predicha como negativa por el modelo.
Falso positivo (FP) es una muestra negativa que el modelo predice que será positiva
Verdadero negativo (TN) Muestras negativas predichas como negativas por el modelo
Tasa de verdaderos positivos (TPR) o sensibilidad TPR = TP / (TP FN) Número de resultados de predicción de muestras positivas/número real de muestras positivas
Tasa de falsos positivos (FPR) FPR = FP / (FP TN) Número de resultados de muestras negativas que se prevé que sean positivos/número real de muestras negativas
(TPR=1,FPR=0) es un modelo ideal
Un buen modelo de clasificación debe estar lo más cerca posible de la esquina superior izquierda del gráfico.
Visualizar curva de costos (visualización de la curva de costos). Produzca un diagrama de dispersión que represente con precisión los costos esperados, como lo describen Drummond y Holte.
Grupo
El análisis de conglomerados asigna objetos a cada grupo de modo que los objetos del mismo grupo sean similares y los objetos de diferentes grupos sean diferentes.
WEKA proporciona herramientas de análisis de conglomerados en el "Clúster" de la interfaz "Explorador"
Los principales algoritmos incluyen:
SimpleKMeans: algoritmo K-means que admite atributos categóricos
displayStdDevs: si se muestra la desviación estándar de los atributos numéricos y el número de atributos categóricos
DistanceFunction: seleccione la función de distancia para instancias de comparación.
(Predeterminado: weka.core.EuclideanDistance)
dontReplaceMissingValues: si no se debe utilizar la media/modo para reemplazar los valores faltantes.
maxIterations: número máximo de iteraciones
numClusters: número de clústeres para agrupar
preserveInstancesOrder: si se debe preorganizar el orden de las instancias
Semilla: establece un valor de semilla aleatorio
DBScan: algoritmo basado en densidad que admite atributos categóricos
EM: algoritmo de agrupamiento basado en modelos de mezcla
FathestFirst - Algoritmo del punto central K
ÓPTICA: otro algoritmo basado en la densidad
Telaraña: algoritmo de agrupación de conceptos
sIB: algoritmo de agrupamiento basado en la teoría de la información, no admite atributos categóricos
XMeans: un algoritmo K-means extendido que puede determinar automáticamente la cantidad de grupos. No admite atributos categóricos.
Modo de clústerModo de clúster
Usar conjunto de entrenamiento: informes de agrupación y agrupación de resultados para objetos de entrenamiento
Usar conjunto de entrenamiento: informes de agrupación y agrupación de resultados para objetos de entrenamiento
Conjunto de prueba suministrado: informa resultados de agrupación para objetos de entrenamiento y resultados de agrupación para objetos de prueba adicionales
División porcentual: informa resultados de agrupación para todos los objetos, resultados de agrupación para objetos de entrenamiento y resultados de agrupación para objetos de prueba.
Evaluación supervisada (evaluación de clases a grupos): informa resultados de agrupación y agrupación, matrices de confusión de clase/grupo e información sobre agrupación errónea de objetos de entrenamiento.
Ejecutar algoritmo de agrupamiento
Haga clic en el botón "Inicio" para ejecutar el algoritmo de agrupamiento.
Observar los resultados de la agrupación
Observe los resultados de agrupación proporcionados por la "Salida del agrupador" a la derecha. También puede hacer clic derecho en el resultado generado esta vez en la "Lista de resultados" en la esquina inferior izquierda y "Ver en ventana separada" para explorar los resultados en una nueva ventana.
Nota: La información de ejecución anterior solo aparecerá si se utiliza agrupación supervisada (es decir, se conoce la etiqueta de clase del conjunto de datos de modelado).
análisis de texto
SimpleKMedios
Modo no supervisado: información en ejecución, resultados de KMeans (número de iteraciones, SSE, centros de clúster), información de agrupación de objetos de inspección
Modo supervisado: información en ejecución, resultados de KMeans (número de iteraciones, SSE, centros de cluster), matriz de confusión de clase/cluster, número y proporción de objetos agrupados incorrectamente
Centro del conglomerado: media para atributos numéricos y moda para atributos categóricos
DBScan
Modo no supervisado: información de ejecución, resultados de DBScan (número de iteraciones, información de agrupación de cada objeto de entrenamiento), información de agrupación de los objetos de prueba
Modo de supervisión: información de ejecución, resultados de DBScan (número de iteraciones, información de agrupación de cada objeto de entrenamiento), matriz de confusión de clase/clúster, número y proporción de objetos agrupados incorrectamente
análisis gráfico
Se deben marcar los grupos de tiendas para su visualización.
Visualice asignaciones de grupos: diagrama de dispersión 2D que puede visualizar la matriz de confusión clase/grupo
Información de salida importante
La “suma de errores cuadrados dentro del conglomerado” es el estándar para evaluar la calidad del agrupamiento: SSE, que es la suma de errores al cuadrado. Cuanto menor sea el valor de SSE, mejor será el resultado de la agrupación.
"Centroides del grupo:" va seguido de la ubicación de cada centro del grupo. Para atributos numéricos, el centro del grupo es su media (Media) y para atributos categóricos es su moda (Moda).
"Instancias agrupadas" es el número y porcentaje de instancias en cada clúster.
Observe los resultados de la agrupación visual
Haga clic derecho en los resultados que aparecen en la "Lista de resultados" en la parte inferior izquierda y haga clic en "Visualizar asignaciones de clústeres".
La ventana emergente muestra el diagrama de dispersión de cada instancia.
Los dos cuadros superiores son para seleccionar la abscisa y la ordenada.
El "color" en la segunda línea es la base para colorear el diagrama de dispersión. El valor predeterminado es marcar las instancias con diferentes colores según los diferentes grupos "Clúster".
reglas de asociación
El aprendizaje de reglas de asociación WEKA puede descubrir dependencias entre grupos de atributos:
Por ejemplo, leche, mantequilla pan, huevos (confianza 0,9 y apoyo 2000)
Para regla de asociación L->R
Soporte: la probabilidad de observar tanto el antecedente como el consecuente. soporte = Pr(L,R)
Confianza: probabilidad de que ocurra el consecuente cuando ocurre el antecedente. confianza = Pr(L,R)/Pr(L)
Principales algoritmos para la minería de reglas de asociación.
Los principales algoritmos para la minería de reglas de asociación en la plataforma de minería de datos WEKA son:
A priori: puede derivar todas las reglas de asociación que satisfacen el soporte mínimo y el soporte mínimo.
coche: si se establece en verdadero, se extraerán las reglas de asociación de clases en lugar de las reglas de asociación globales.
classindex: índice de atributos de clase. Si se establece en -1, el último atributo se trata como un atributo de clase.
delta: utilice este valor como unidad de decremento de iteración. El soporte se reduce continuamente hasta alcanzar el soporte mínimo o se generan reglas que cumplan con los requisitos cuantitativos.
lowerBoundMinSupport: límite inferior de soporte mínimo.
metricType: tipo de métrica, establece la base de métrica para las reglas de clasificación. Puede ser: confianza (las reglas de asociación de clases sólo pueden extraerse con confianza), elevación, apalancamiento y convicción.
En Weka se establecen varias medidas similares a la confianza para medir el grado de asociación de reglas.
Incremento: la relación entre confianza y apoyo consiguiente elevación = Pr(L,R) / (Pr(L)Pr(R)) Cuando Lift=1, significa que L y R son independientes. Cuanto mayor es el número (>1), más indica que la existencia de L y B en la misma cesta de la compra no es un fenómeno accidental y existe una fuerte correlación.
Apalancamiento, equilibrio: Bajo el supuesto de que el antecedente y el consecuente son estadísticamente independientes, la proporción de instancias que exceden el valor esperado y están cubiertas tanto por el antecedente como por el consecuente. apalancamiento = Pr(L,R) - Pr(L)Pr(R) Cuando el apalancamiento = 0, L y R son independientes. Cuanto mayor es el apalancamiento, más estrecha es la relación entre L y R.
Convicción, credibilidad: también se utiliza para medir la independencia del antecedente y del consecuente. convicción = Pr(L)Pr(!R) / Pr(L,!R) (!R significa que R no ocurrió) A partir de su relación con la elevación (invertir R y encontrar el recíproco después de sustituirlo en la fórmula de elevación), podemos ver que cuanto mayor es este valor, más relevantes son L y R.
minMtric: Valor mínimo de la métrica.
numRules: número de reglas a descubrir.
outputItemSets: si se establece en verdadero, los conjuntos de elementos se generarán en el resultado.
removeAllMissingCols: elimina todas las columnas con valores faltantes.
significanceLevel: nivel de importancia. Prueba de significancia (solo para confianza).
UpperBoundMinSupport: el límite superior del soporte mínimo. A partir de este valor se reduce iterativamente el soporte mínimo.
detallado: si se establece en verdadero, el algoritmo se ejecuta en modo detallado.
PredictiveApriori: combina confianza y soporte en la precisión de la predicción para convertirse en un método de medición de un solo grado y encuentra reglas de asociación ordenadas por precisión de la predicción.
Terius: busca reglas basadas en el grado de confirmación. Al igual que Apriori, busca reglas cuyas conclusiones contengan múltiples condiciones, pero la diferencia es que estas condiciones son "o" entre sí en lugar de "y".
Ninguno de estos tres algoritmos admite datos numéricos.
De hecho, la mayoría de los algoritmos de reglas de asociación no admiten tipos numéricos. Por lo tanto, los datos deben procesarse, dividirse en segmentos y discretizarse en contenedores.
Información de operación del algoritmo de minería de reglas de asociación
Seleccionar atributosSeleccionar atributos
La selección de atributos consiste en buscar todas las combinaciones posibles de todos los atributos en el conjunto de datos para encontrar el conjunto de atributos con el mejor efecto de predicción.
Para lograr este objetivo se deben establecer evaluadores de atributos y estrategias de búsqueda.
El evaluador determina cómo asignar un valor a un conjunto de atributos que representa qué tan buenos o malos son.
La estrategia de búsqueda determina cómo se realiza la búsqueda.
Opciones
Hay dos opciones en la columna Modo de selección de atributos.
Utilice el conjunto de entrenamiento completo. Utilice todos los datos de entrenamiento para determinar qué tan bueno es un conjunto de atributos.
Validación cruzada. La calidad de un conjunto de atributos se determina mediante un proceso de validación cruzada. Fold y Seed proporcionan respectivamente el número de veces de validación cruzada y la semilla aleatoria al codificar los datos.
Al igual que la sección Clasificar, hay un cuadro desplegable para especificar el atributo de clase.
Ejecutar selección
Haga clic en el botón Iniciar para comenzar el proceso de selección de atributos. Cuando se completa, los resultados se envían al área de resultados y se agrega una entrada a la lista de resultados.
Al hacer clic derecho en la lista de resultados, aparecerán varias opciones. Los primeros tres (Ver en ventana principal, Ver en ventana separada y Guardar búfer de resultados) son los mismos que en el panel de clasificación.
También puedes visualizar conjuntos de datos reducidos (Visualizar datos reducidos)
Capacidad para visualizar conjuntos de datos transformados (Visualizar datos transformados)
Los datos reducidos/transformados se pueden guardar usando la opción Guardar datos reducidos... o Guardar datos transformados....
Visualización de datosVisualizar
La página de visualización de WEKA puede explorar visualmente la relación actual en un diagrama de dispersión bidimensional.
matriz de diagrama de dispersión
Cuando se selecciona el panel Visualizar, se proporciona una matriz de diagrama de dispersión para todos los atributos, que se colorean según el atributo de clase seleccionado.
Aquí puede cambiar el tamaño de cada diagrama de dispersión 2D, cambiar el tamaño de cada punto y alterar aleatoriamente los datos (haciendo que aparezcan puntos ocultos).
También puede cambiar los atributos utilizados para colorear, puede seleccionar solo un subconjunto de un conjunto de atributos para colocar en la matriz del diagrama de dispersión y también puede tomar una submuestra de los datos.
Tenga en cuenta que estos cambios solo entrarán en vigor después de hacer clic en el botón Actualizar.
Seleccionar diagramas de dispersión 2D individuales
Después de hacer clic en un elemento de la matriz del diagrama de dispersión, aparece una ventana separada para visualizar el diagrama de dispersión seleccionado.
Los puntos de datos se distribuyen por el área principal de la ventana. Arriba hay dos cuadros desplegables para seleccionar ejes de coordenadas para los puntos. A la izquierda están las propiedades utilizadas como eje x; a la derecha están las propiedades utilizadas como eje y.
Al lado del selector del eje x hay un cuadro desplegable para seleccionar un esquema de color. Colorea puntos según los atributos seleccionados.
Debajo del área punteada, hay una leyenda para explicar qué valor representa cada color. Si los valores son discretos, los colores se pueden modificar haciendo clic sobre ellos en la nueva ventana que aparece.
Hay algunas barras horizontales a la derecha del área de puntos. Cada barra representa un atributo y los puntos que contiene representan la distribución de los valores de los atributos. Estos puntos están distribuidos aleatoriamente en dirección vertical, de modo que se pueda ver la densidad de los puntos.
Haga clic en estas barras para cambiar los ejes utilizados para el gráfico principal. Haga clic izquierdo para cambiar las propiedades del eje x; haga clic derecho para cambiar el eje y. La "X" y la "Y" junto a la barra horizontal representan el atributo utilizado por el eje actual ("B" indica que se utiliza tanto para el eje x como para el eje y).
Encima de la barra de propiedades hay un cursor denominado Jitter. Puede cambiar aleatoriamente la posición de cada punto en el diagrama de dispersión, es decir, fluctuación. Arrastrarlo hacia la derecha aumenta la amplitud de la fluctuación, lo que resulta útil para identificar la densidad de puntos.
Si no utiliza este tipo de tramado, decenas de miles de puntos juntos tendrán el mismo aspecto que un solo punto.
Debajo del botón de selección del eje y hay un botón desplegable que determina el método de selección de puntos de datos.
Los puntos de datos se pueden seleccionar de las siguientes cuatro maneras:
Seleccione Instancia. Al hacer clic en cada punto de datos, se abrirá una ventana que enumera sus valores de atributos. Si se hace clic en más de un punto, también se enumerarán más conjuntos de valores de atributos.
Rectángulo. Crea un rectángulo arrastrando y seleccionando puntos dentro de él.
Polígono. Crea un polígono de forma libre y selecciona sus puntos. Haga clic izquierdo para agregar los vértices del polígono y haga clic derecho para completar la configuración de los vértices. Los puntos inicial y final se conectan automáticamente para que el polígono esté siempre cerrado.
Polilínea. Puede crear una polilínea para separar los puntos a ambos lados de la misma. Haga clic izquierdo para agregar vértices de polilínea y haga clic derecho para finalizar la configuración. Las polilíneas siempre están abiertas (a diferencia de los polígonos cerrados).
Cuando selecciona un área de un diagrama de dispersión usando un Rectángulo, Polígono o Polilínea, el área se volverá gris.
Al hacer clic en el botón Enviar en este momento se eliminarán todas las instancias que queden fuera del área gris.
Al hacer clic en el botón Borrar se borrará el área seleccionada sin ningún impacto en los gráficos. Si se eliminan todos los puntos del gráfico, el botón Enviar cambia a un botón Restablecer. Este botón puede cancelar todas las eliminaciones anteriores y devolver el gráfico al estado inicial donde están todos los puntos.
Finalmente, haga clic en el botón Guardar para guardar la instancia actualmente visible en un nuevo archivo ARFF.
Interfaz de flujo de conocimiento KnowledgeFlow
KnowledgeFlow proporciona a Weka una interfaz gráfica de "flujo de conocimiento".
Los usuarios pueden seleccionar componentes de una barra de herramientas, colocarlos en el panel y conectarlos en un orden determinado para formar un "flujo de conocimiento" para procesar y analizar datos.
Por ejemplo: "Fuente de datos" -> "Filtro" -> "Clasificación" -> "Evaluación"
Los clasificadores, filtros, agrupadores, cargadores, protectores y algunas otras funciones de Weka se pueden utilizar en KnowledgeFlow.
El diseño del flujo de conocimiento se puede guardar y recargar.
Componentes disponibles de KnowledgeFlow
Hay ocho pestañas en la parte superior de la ventana de KnowledgeFlow:
DataSources: cargador de datos
DataSinks: ahorro de datos
Filtros--Filtro
Clasificadores--Clasificadores
Clústeres--clústeres
Asociaciones—Asociados
Evaluación—evaluador
TrainingSetMaker: convertir un conjunto de datos en un conjunto de entrenamiento
TestSetMaker: convertir un conjunto de datos en un conjunto de prueba
CrossValidationFoldMaker: divide cualquier conjunto de datos, conjunto de entrenamiento o conjunto de pruebas en varios pliegues para una validación cruzada
TrainTestSplitMaker: divide cualquier conjunto de datos, conjunto de entrenamiento o conjunto de prueba en un conjunto de entrenamiento y un conjunto de prueba.
ClassAssigner: utilice una columna como atributo de clase de cualquier conjunto de datos, conjunto de entrenamiento o conjunto de prueba.
ClassValuePicker: seleccione una determinada categoría como clase "positiva". Esto puede resultar útil al generar datos para curvas de forma ROC.
ClassifierPerformanceEvaluator: evalúa el rendimiento de un clasificador entrenado o probado en modo por lotes
IncrementalClassi¯erEvaluator: evalúa el rendimiento de clasificadores entrenados en modo incremental
ClustererPerformanceEvaluator: evalúa el rendimiento de clusterers capacitados o probados en modo por lotes
PredictionAppender: agrega el valor de predicción del clasificador al conjunto de prueba. Para problemas de clasificación discreta, puede agregar indicadores de clase predichos o distribuciones de probabilidad.
Visualización—visualización
DataVisualizer: este componente muestra un panel que permite visualizar los datos en un diagrama de dispersión más grande e independiente.
ScatterPlotMatrix: este componente puede mostrar un panel con una matriz compuesta por algunos diagramas de dispersión pequeños (al hacer clic en cada diagrama de dispersión pequeño aparecerá un diagrama de dispersión grande).
AttributeSummarizer: este componente muestra un panel con una matriz de histogramas. Cada histograma corresponde a un atributo en los datos de entrada.
ModelPerformanceChart: este componente puede abrir un panel para visualizar curvas de umbral (como curvas ROC)
TextViewer: este componente se utiliza para mostrar datos de texto y se puede utilizar para mostrar conjuntos de datos y estadísticas para medir el rendimiento de la clasificación, etc.
GraphViewer: este componente puede abrir un panel para visualizar modelos basados en árboles.
StripChart: este componente puede mostrar un panel emergente que muestra un diagrama de dispersión de datos continuos (utilizado para observar instantáneamente el rendimiento del clasificador incremental).