Introducció
L'aprenentatge automàtic (Machine Learning, ML) és una branca de la intel·ligència artificial que permet als sistemes aprendre i millorar a partir de l'experiència sense ser explícitament programats. Elasticsearch ofereix funcionalitats d'aprenentatge automàtic que permeten detectar anomalies, fer prediccions i analitzar dades de manera avançada.
Objectius del Tema
- Entendre les capacitats d'aprenentatge automàtic d'Elasticsearch.
- Aprendre a configurar i utilitzar les funcionalitats d'aprenentatge automàtic.
- Aplicar tècniques d'aprenentatge automàtic per detectar anomalies i fer prediccions.
Conceptes Clau
- Capacitats d'Aprenentatge Automàtic a Elasticsearch
Elasticsearch inclou diverses funcionalitats d'aprenentatge automàtic, com ara:
- Detecció d'Anomalies: Identificació de patrons inusuals en les dades.
- Predicció: Estimació de valors futurs basats en dades històriques.
- Anàlisi de Sèries Temporals: Anàlisi de dades que varien amb el temps.
- Components Principals
- Jobs: Tasques d'aprenentatge automàtic que processen les dades.
- Datafeeds: Fluxos de dades que alimenten els jobs.
- Models: Representacions matemàtiques dels patrons detectats en les dades.
Configuració i Ús
- Creació d'un Job de Detecció d'Anomalies
Pas 1: Definir el Job
PUT _ml/anomaly_detectors/my_job { "description": "Detecció d'anomalies en les vendes diàries", "analysis_config": { "bucket_span": "1d", "detectors": [ { "function": "mean", "field_name": "sales", "partition_field_name": "store" } ] }, "data_description": { "time_field": "timestamp" } }
Explicació:
description
: Descripció del job.analysis_config
: Configuració de l'anàlisi, incloent l'interval de temps (bucket_span
) i els detectors.data_description
: Descripció de les dades, incloent el camp de temps (time_field
).
Pas 2: Crear un Datafeed
PUT _ml/datafeeds/datafeed-my_job { "job_id": "my_job", "indices": [ "sales_data" ], "query": { "match_all": {} } }
Explicació:
job_id
: Identificador del job associat.indices
: Índexs que contenen les dades.query
: Consulta per seleccionar les dades.
Pas 3: Iniciar el Datafeed
- Monitorització i Anàlisi de Resultats
Consultar Resultats d'Anomalies
Explicació:
- Aquesta consulta retorna els resultats de les anomalies detectades pel job.
- Predicció amb Elasticsearch
Pas 1: Crear un Job de Predicció
PUT _ml/anomaly_detectors/prediction_job { "description": "Predicció de vendes futures", "analysis_config": { "bucket_span": "1d", "detectors": [ { "function": "mean", "field_name": "sales" } ] }, "data_description": { "time_field": "timestamp" } }
Pas 2: Fer una Predicció
Explicació:
duration
: Durada de la predicció (per exemple, 7 dies).
Exercicis Pràctics
Exercici 1: Crear un Job de Detecció d'Anomalies
- Defineix un job per detectar anomalies en les dades de temperatura diària.
- Crea un datafeed per alimentar el job amb dades de l'índex
temperature_data
. - Inicia el datafeed i consulta els resultats d'anomalies.
Exercici 2: Fer una Predicció
- Crea un job per predir les vendes setmanals.
- Fes una predicció per als propers 14 dies.
Solucions
Solució a l'Exercici 1
Definir el Job
PUT _ml/anomaly_detectors/temperature_job { "description": "Detecció d'anomalies en la temperatura diària", "analysis_config": { "bucket_span": "1d", "detectors": [ { "function": "mean", "field_name": "temperature" } ] }, "data_description": { "time_field": "timestamp" } }
Crear el Datafeed
PUT _ml/datafeeds/datafeed-temperature_job { "job_id": "temperature_job", "indices": [ "temperature_data" ], "query": { "match_all": {} } }
Iniciar el Datafeed
Consultar Resultats
Solució a l'Exercici 2
Crear el Job
PUT _ml/anomaly_detectors/weekly_sales_job { "description": "Predicció de vendes setmanals", "analysis_config": { "bucket_span": "1w", "detectors": [ { "function": "mean", "field_name": "sales" } ] }, "data_description": { "time_field": "timestamp" } }
Fer la Predicció
Conclusió
En aquest tema, hem explorat les capacitats d'aprenentatge automàtic d'Elasticsearch, incloent la detecció d'anomalies i la predicció. Hem après a configurar i utilitzar aquestes funcionalitats per analitzar dades de manera avançada. Amb aquests coneixements, estàs preparat per aplicar tècniques d'aprenentatge automàtic a les teves pròpies dades i obtenir insights valuosos.
Curs d'Elasticsearch
Mòdul 1: Introducció a Elasticsearch
- Què és Elasticsearch?
- Instal·lant Elasticsearch
- Conceptes Bàsics: Nodes, Clústers i Índexs
- Arquitectura d'Elasticsearch
Mòdul 2: Començant amb Elasticsearch
Mòdul 3: Tècniques Avançades de Cerca
Mòdul 4: Modelatge de Dades i Gestió d'Índexs
Mòdul 5: Rendiment i Escalabilitat
- Optimitzant el Rendiment de la Cerca
- Escalant Elasticsearch
- Monitorització i Manteniment
- Còpia de Seguretat i Restauració
Mòdul 6: Seguretat i Control d'Accés
- Assegurant Elasticsearch
- Autenticació i Autorització d'Usuaris
- Control d'Accés Basat en Rols
- Auditoria i Compliment
Mòdul 7: Integracions i Ecosistema
- Elasticsearch amb Logstash
- Elasticsearch amb Kibana
- Elasticsearch amb Beats
- Elasticsearch amb Altres Eines