Objectius del Mòdul

En aquest mòdul, aprendràs els conceptes bàsics de l'aprenentatge automàtic (machine learning) i com implementar-los utilitzant R. Els objectius específics inclouen:

  • Comprendre què és l'aprenentatge automàtic i les seves aplicacions.
  • Familiaritzar-se amb els tipus d'aprenentatge automàtic: supervisat i no supervisat.
  • Aprendre a utilitzar biblioteques d'R per a l'aprenentatge automàtic.

Què és l'Aprenentatge Automàtic?

L'aprenentatge automàtic és una branca de la intel·ligència artificial que se centra en el desenvolupament d'algoritmes que permeten als ordinadors aprendre a partir de dades i fer prediccions o decisions sense ser explícitament programats per a cada tasca.

Aplicacions de l'Aprenentatge Automàtic

  • Reconeixement de patrons: Identificació de patrons en dades, com ara reconeixement facial o de veu.
  • Predicció: Predir valors futurs basats en dades històriques, com ara previsions meteorològiques o predicció de vendes.
  • Classificació: Assignar etiquetes a noves dades basades en exemples etiquetats, com ara classificació de correu electrònic en spam o no spam.
  • Clustering: Agrupar dades en grups similars sense etiquetes prèvies, com ara segmentació de clients.

Tipus d'Aprenentatge Automàtic

Aprenentatge Supervisat

En l'aprenentatge supervisat, l'algoritme aprèn a partir d'un conjunt de dades etiquetades, on cada exemple d'entrenament està associat amb una etiqueta o resultat desitjat.

Exemples:

  • Regressió: Predir un valor continu (per exemple, preu d'una casa).
  • Classificació: Assignar una etiqueta a una entrada (per exemple, detectar si un correu és spam o no).

Aprenentatge No Supervisat

En l'aprenentatge no supervisat, l'algoritme treballa amb dades no etiquetades i intenta trobar estructures o patrons ocults.

Exemples:

  • Clustering: Agrupar dades similars (per exemple, segmentació de clients).
  • Reducció de dimensionalitat: Reduir el nombre de variables en un conjunt de dades (per exemple, PCA).

Biblioteques d'R per a l'Aprenentatge Automàtic

R ofereix diverses biblioteques potents per a l'aprenentatge automàtic. Algunes de les més populars són:

  • caret: Proporciona eines per a la construcció de models predictius.
  • randomForest: Implementa l'algoritme de bosc aleatori per a classificació i regressió.
  • e1071: Conté funcions per a màquines de vectors de suport (SVM) i altres tècniques.
  • nnet: Implementa xarxes neuronals simples.

Exemple Pràctic: Classificació amb caret

A continuació, veurem un exemple pràctic de com utilitzar la biblioteca caret per a construir un model de classificació.

Pas 1: Instal·lació i Càrrega de Paquets

install.packages("caret")
library(caret)

Pas 2: Preparació de les Dades

Utilitzarem el conjunt de dades iris per a aquest exemple.

data(iris)
head(iris)

Pas 3: Divisió del Conjunt de Dades

Dividirem les dades en un conjunt d'entrenament i un conjunt de prova.

set.seed(123)
trainIndex <- createDataPartition(iris$Species, p = 0.7, list = FALSE)
trainData <- iris[trainIndex, ]
testData <- iris[-trainIndex, ]

Pas 4: Entrenament del Model

Entrenarem un model de classificació utilitzant l'algoritme de bosc aleatori.

model <- train(Species ~ ., data = trainData, method = "rf")
print(model)

Pas 5: Avaluació del Model

Avaluarem el model utilitzant el conjunt de prova.

predictions <- predict(model, newdata = testData)
confusionMatrix(predictions, testData$Species)

Exercici Pràctic

Exercici 1: Construir un Model de Regressió

Utilitza el conjunt de dades mtcars per construir un model de regressió que prediu el consum de combustible (mpg) basat en altres variables del conjunt de dades.

Pasos:

  1. Carrega el conjunt de dades mtcars.
  2. Divideix les dades en un conjunt d'entrenament i un conjunt de prova.
  3. Entrena un model de regressió utilitzant l'algoritme de regressió lineal.
  4. Avaluar el model utilitzant el conjunt de prova.

Solució

# Carrega el conjunt de dades
data(mtcars)
head(mtcars)

# Divideix les dades
set.seed(123)
trainIndex <- createDataPartition(mtcars$mpg, p = 0.7, list = FALSE)
trainData <- mtcars[trainIndex, ]
testData <- mtcars[-trainIndex, ]

# Entrena el model
model <- train(mpg ~ ., data = trainData, method = "lm")
print(model)

# Avaluació del model
predictions <- predict(model, newdata = testData)
postResample(predictions, testData$mpg)

Conclusió

En aquest tema, hem introduït els conceptes bàsics de l'aprenentatge automàtic i hem vist com utilitzar la biblioteca caret per a construir models de classificació i regressió en R. En els següents temes, aprofundirem en tècniques específiques d'aprenentatge supervisat i no supervisat, així com en el preprocessament de dades i l'avaluació de models.

Programació en R: De Principiant a Avançat

Mòdul 1: Introducció a R

Mòdul 2: Manipulació de Dades

Mòdul 3: Visualització de Dades

Mòdul 4: Anàlisi Estadística

Mòdul 5: Gestió Avançada de Dades

Mòdul 6: Conceptes Avançats de Programació

Mòdul 7: Aprenentatge Automàtic amb R

Mòdul 8: Temes Especialitzats

Mòdul 9: Projecte i Estudis de Cas

© Copyright 2024. Tots els drets reservats