Agrupación y clasificación de datos de Big Text con Java Machine Learning. Artículo # 1 - Teoría

imagen



Este artículo se dividirá en 3 partes ( Teoría / Métodos y algoritmos para la resolución de problemas / Desarrollo e implementación en Java ) para describir la imagen completa. El primer artículo solo incluirá teoría para preparar la mente de los lectores.



Objeto del artículo:



  • Automatización parcial o total de la tarea de agrupar y clasificar big data, es decir, datos de texto.
  • Aplicación de algoritmos de aprendizaje automático "no supervisados" (agrupamiento) y "supervisados" (clasificación).
  • Análisis de soluciones de problemas actuales.


Tareas a considerar en general:



  1. Desarrollo y aplicación de algoritmos y métodos para el procesamiento del lenguaje natural.
  2. Desarrollo y aplicación de métodos de agrupación para determinar los grupos de agrupaciones de documentos de entrada.
  3. Aplicación de métodos de clasificación para definir la temática de cada grupo.
  4. Desarrollo de interfaz web basado en Java Vaadin


Las hipótesis que deduje del problema y al enseñar teoría:



  • La clasificación de grupos de conglomerados define un conocimiento oculto abstracto y más valioso, ignorando el ruido, que la clasificación de objetos individuales.
  • La precisión de la agrupación es directamente proporcional al número de grupos de agrupaciones e inversamente proporcional a la cantidad de objetos en un grupo de agrupaciones.


De cara a cualquier persona interesada en el algoritmo en sí, aquí hay una descripción general.



El algoritmo del software de aprendizaje automático consta de 3 partes principales:



  1. Procesamiento natural del lenguaje.

    1. tokenización;
    2. lematización;
    3. dejar de cotizar;
    4. frecuencia de palabras;


  2. Métodos de agrupación.

    TF-IDF;

    SVD;

    encontrar grupos de clústeres;

  3. Métodos de clasificación: API de Aylien.


Así que comencemos con la teoría.



1. El concepto de aprendizaje automático



‒ , , . – , , - . “ , , , . , ?”. ‒ , “”. – , , — , .



. , , , , , . - () . , , , .. , ? — , , . ? — , . .



, , , , . , , , , . , . , , . , .



, . ‒ . , . , , . . , " ", . , , .



()? , : “ , E T P, T, P, E”. , E , T , P , . – E, , 100 . “” .



, , . . , , , .



, .





2.



‒ , :



  1. ‒ . , .
  2. ‒ . , , , .
  3. – , , . . , . , ‒ , .
  4. ‒ , . , .



. , , , . , . , , , . ‒ , , , , .



, , , , , .



, . . , . . , . , . , , , . , .



, , . , . , Google, Yahoo, Microsoft, Amazon , . , , Facebook, YouTube Twitter, . , , , , .



, . , . . , . , , , , , .



, . , , . , , .



, . , , , , , , , , , , , / .. , / . , .



En conclusión, podemos decir que el big data y el aprendizaje automático están muy relacionados entre sí, ya que el big data es inútil sin analizar y extraer información, y el aprendizaje automático no podría coexistir sin big data, lo que le da al algoritmo experiencia y aprendizaje.





3. Tipos de aprendizaje automático



El aprendizaje automático, como ciencia, se puede clasificar en 3 categorías principales según la naturaleza del aprendizaje:



  1. enseñar con un maestro;
  2. enseñar sin maestro;
  3. aprendizaje reforzado.


En algunos trabajos científicos, por naturaleza, el aprendizaje se divide en 4 categorías, que incluyen el aprendizaje parcial, pero esto es solo una simbiosis de aprendizaje con un maestro y sin un maestro.





3.1. Aprendiendo con un profesor



, , , , . , , . , . . , . , , , , . , .



Para solucionar el problema para aplicar el aprendizaje supervisado, se deben seguir los siguientes pasos:



  1. Determine el tipo de ejemplos de formación. En primer lugar, debe decidir qué datos se deben utilizar como conjunto de entrenamiento.
  2. Recopilación de datos. El conjunto de datos debe ser representativo del uso real de la función. Por tanto, se recopila un conjunto de características de entrada y salidas asociadas.
  3. Determinación de la representación de entrada del objeto de la función estudiada. La precisión de la función que se estudia depende en gran medida de cómo se representa el objeto de entrada. Normalmente, el objeto de entrada se convierte en un vector de objetos que contiene una serie de objetos que describen el objeto. El número de funciones no debería ser demasiado grande, debido a la maldición de la dimensionalidad, pero debería contener suficiente información para predecir con precisión el resultado.
  4. .
  5. . . . ( ) .
  6. . , , .


Los algoritmos se entrenan utilizando ejemplos preprocesados ​​y, en esta etapa, el rendimiento de los algoritmos se evalúa utilizando datos de prueba. A veces, los patrones identificados en un subconjunto de datos no se pueden encontrar en una población mayor de datos. Si el modelo solo es adecuado para representar patrones que existen en un subconjunto del entrenamiento, se crea un problema llamado "Sobreajuste".



El sobreajuste significa que el modelo está ajustado para el conjunto de datos de entrenamiento, pero es posible que no sea aplicable a grandes conjuntos de datos de datos desconocidos. Para protegerse contra el sobreajuste, las pruebas deben realizarse contra datos inesperados o desconocidos. El uso de datos inesperados para un conjunto de pruebas puede ayudarlo a medir la precisión del modelo al predecir resultados. Los modelos de aprendizaje supervisado tienen una amplia aplicabilidad a una variedad de problemas comerciales, incluida la detección de fraude, la recomendación, el reconocimiento de voz o el análisis de riesgos.



Los algoritmos de aprendizaje supervisado más utilizados y populares son:



  • máquinas de vectores soporte;
  • regresión lineal;
  • Regresión logística;
  • clasificador bayesiano ingenuo;
  • entrenamiento del árbol de decisiones;
  • método de los k-vecinos más cercanos;
  • Red neuronal artificial;
  • estudio de similitudes.


Cada uno de los algoritmos anteriores tiene diferentes enfoques de fórmulas y métodos matemáticos matemáticos y estadísticos. Pero se puede enfatizar el patrón general del algoritmo, ya que todos estos algoritmos son de aprendizaje supervisado:

n (x_1,y_1),(x_2,y_2),...,(x_n,y_n), x_i ‒ , y_i ‒ . , x_i , , , , . y_i «” „“.



‒ m : (xn+1, xn+2,..., xn+m) * (x_(n+1),x_(n+2),...,x_(n+m) ). , , (, “” “ ”), , .





3.3.



‒ . , . , () . . , “” .



, , (), . , , . ‒ ‒ .



, , . , , , . , , , . , , , , .

El dilema es que ni el aprendizaje ni el dominio se pueden realizar exclusivamente sin fallas en la tarea. El algoritmo debe probar diferentes acciones y favorecer gradualmente las que parezcan mejores. En un problema estocástico, cada acción debe intentarse repetidamente para obtener una estimación confiable. El dilema aprendizaje-dominio ha sido estudiado intensamente por los matemáticos durante muchas décadas, pero sigue sin resolverse.



Los errores te ayudan a aprender porque agregan una medida de disciplina (costo, tiempo perdido, arrepentimiento, dolor, etc., enseñándote que un determinado curso de acción es menos probable que otros). Un ejemplo interesante de aprendizaje por refuerzo ocurre cuando las computadoras aprenden a jugar videojuegos. por sí mismos sin intervención humana.



El aprendizaje automático también se puede clasificar según los resultados deseados:



  1. clasificación;
  2. agrupamiento;
  3. regresión.


Los algoritmos de regresión se utilizan comúnmente para análisis estadístico. La regresión le ayuda a analizar las relaciones del modelo entre puntos de datos. Los algoritmos de regresión pueden cuantificar la fuerza de la correlación entre variables en un conjunto de datos. Además, el análisis de regresión puede ser útil para predecir valores de datos futuros basados ​​en valores históricos. Sin embargo, es importante recordar que el análisis de regresión supone que la correlación se trata de causa y efecto. Sin comprender el contexto en torno a los datos, el análisis de regresión puede generar predicciones inexactas. Tipos de regresión:



  • regresión lineal;
  • regresión no lineal;
  • regresión vectorial;
  • Regresión logística.


La agrupación en clústeres es una técnica bastante sencilla de comprender. Los objetos con parámetros similares se agrupan (en un clúster). Todos los objetos de un clúster son más similares entre sí que a los objetos de otros clústeres. La agrupación en clústeres es un tipo de aprendizaje no supervisado porque el algoritmo en sí determina las características generales de los elementos de los datos. El algoritmo interpreta los parámetros que componen cada elemento y luego los agrupa en consecuencia.



Categorías de agrupación:



  • método de k-medias;
  • agrupamiento espacial basado en densidad para aplicaciones ruidosas - DBSCAN;
  • algoritmo de agrupamiento OPTICS;
  • método de componentes principales.


Pero es importante señalar que en la agrupación, especialmente en el aprendizaje no supervisado, el algoritmo busca conexiones entre los datos de entrada. La belleza del aprendizaje automático es encontrar conexiones ocultas entre datos, más conocidas como conexiones latentes. Para la agrupación en la búsqueda de relaciones latentes se utiliza un modelo de variables ocultas, que se aplica para estudiar las relaciones entre los valores de las variables. El modelo de variable oculta incluye:



  • Algoritmo EM;
  • método de momentos;
  • separación de señal ciega;
  • método de componentes principales;
  • análisis de componentes independientes;
  • descomposición de matriz no negativa;
  • valor singular de descomposición.


La clasificación es el proceso de predecir una clase de puntos de datos dados. En ocasiones, las clases se denominan etiquetas o categorías. El modelado predictivo de clasificación es el problema de aproximar una función de mapeo (f) de las variables de entrada (X) a las variables de salida discretas (y) . La clasificación pertenece a la categoría de aprendizaje supervisado. Tipos de esquemas de clasificación:



  • Tesauro;
  • taxonomía;
  • modelo de datos;
  • red de transporte;
  • ontología.


Pero en el aprendizaje automático, los tipos de clasificación se realizan de acuerdo con los tipos de algoritmos que de alguna manera se refieren a esquemas de clasificación. Los algoritmos de aprendizaje más utilizados son:



  • máquinas de vectores soporte;
  • Regresión logística;
  • clasificador bayesiano ingenuo;
  • método de los k-vecinos más cercanos;
  • Red neuronal artificial;
  • .


4.



, . . , . – . ‒ , , – . , . , .



(NLP) ‒ . ‒ , , ( ) . , , , . , .



, , .



, , . , . ( ) (), . / . . , , . : () .



, . , -, , ‒ . (NLP). NLP ‒ (-) . NLP , , . NLP, , : . , , ( ). NLP , . NLP, , . , :



  • ‒ () , . – . , . .
  • ‒ , . ? , () , . . . , , . .
  • – , . , . , :

    • , , , , .
    • ,




, . , .



  • - ‒ - , , , , - , . .
  • – . , . , , ( ).


, , . , . . . . . , , . .



En el aprendizaje automático, un documento de texto puede superponerse con muchas categorías en una clasificación o con muchos clústeres en clústeres. Los algoritmos de muestreo de características más utilizados son:



  • Frecuencia de términos: la frecuencia de documentos inversa (TF-IDF) se usa comúnmente para ponderar cada palabra en un documento de texto de acuerdo con su singularidad. El peso de la palabra (token) se utiliza a menudo para la recuperación de información y el análisis semántico de texto. Este peso es una medida estadística que se utiliza para evaluar la importancia de una palabra para un documento en una colección o corpus. En otras palabras, el enfoque TF-IDF refleja la relevancia de palabras, documentos de texto y categorías específicas.
  • Word2Vec es una herramienta (conjunto de algoritmos) para calcular representaciones vectoriales de palabras, que implementa dos arquitecturas principales: lote continuo de palabras (CBOW) y Skip-gram. Se pasa un documento de texto o una palabra como entrada y los datos de salida se representarán como variables vectoriales (coordenadas en el espacio vectorial).


Epílogo



De hecho, la teoría del aprendizaje automático es muy amplia y vasta. Aquí escribí con palabras más abstractas y sencillas. Si hay enmiendas al texto o la teoría, escriba. El propósito de este artículo, nuevamente, es preparar a los lectores para el problema y la solución más prácticos.



Deja un comentario si estás esperando más.



All Articles