Introducció
L'anàlisi predictiu utilitza dades històriques i tècniques estadístiques per predir esdeveniments futurs. Aquesta tècnica és fonamental per a la presa de decisions informades en diverses àrees de negoci, com ara màrqueting, finances, operacions i recursos humans.
Objectius d'aquest tema:
- Entendre els conceptes bàsics de l'anàlisi predictiu.
- Conèixer els diferents tipus de models predictius.
- Aprendre a implementar models predictius utilitzant algoritmes comuns.
- Practicar amb exemples i exercicis pràctics.
Conceptes Bàsics de l'Anàlisi Predictiu
Definició
L'anàlisi predictiu és una branca de l'analítica de dades que se centra en utilitzar dades històriques per fer prediccions sobre esdeveniments futurs.
Components Clau
- Dades Històriques: Informació recollida en el passat que serveix com a base per a les prediccions.
- Models Estadístics: Eines matemàtiques que analitzen les dades i fan prediccions.
- Algoritmes: Seqüències de passos lògics utilitzats per construir els models predictius.
Tipus de Models Predictius
Regressió
La regressió és una tècnica estadística que modela la relació entre una variable dependent i una o més variables independents.
Exemple de Regressió Lineal
import pandas as pd from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error # Carregar les dades data = pd.read_csv('sales_data.csv') X = data[['advertising_budget']] y = data['sales'] # Dividir les dades en entrenament i prova X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # Crear i entrenar el model model = LinearRegression() model.fit(X_train, y_train) # Fer prediccions predictions = model.predict(X_test) # Avaluar el model mse = mean_squared_error(y_test, predictions) print(f'Error Quadràtic Mitjà: {mse}')
Classificació
La classificació és una tècnica que assigna etiquetes a les dades basant-se en les seves característiques.
Exemple de Classificació amb K-Nearest Neighbors (KNN)
import pandas as pd from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifier from sklearn.metrics import accuracy_score # Carregar les dades data = pd.read_csv('customer_data.csv') X = data[['age', 'income']] y = data['purchase_decision'] # Dividir les dades en entrenament i prova X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # Crear i entrenar el model model = KNeighborsClassifier(n_neighbors=5) model.fit(X_train, y_train) # Fer prediccions predictions = model.predict(X_test) # Avaluar el model accuracy = accuracy_score(y_test, predictions) print(f'Precisió: {accuracy}')
Sèries Temporals
Les sèries temporals analitzen dades recollides en intervals de temps regulars per fer prediccions futures.
Exemple de Predicció de Sèries Temporals amb ARIMA
import pandas as pd from statsmodels.tsa.arima.model import ARIMA # Carregar les dades data = pd.read_csv('time_series_data.csv', index_col='date', parse_dates=True) series = data['sales'] # Crear i entrenar el model model = ARIMA(series, order=(5, 1, 0)) model_fit = model.fit() # Fer prediccions predictions = model_fit.forecast(steps=10) print(predictions)
Exercicis Pràctics
Exercici 1: Regressió Lineal
Utilitza el conjunt de dades housing_data.csv
per predir el preu de les cases basant-te en les seves característiques (superfície, nombre d'habitacions, etc.).
Solució
import pandas as pd from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error # Carregar les dades data = pd.read_csv('housing_data.csv') X = data[['surface', 'bedrooms', 'bathrooms']] y = data['price'] # Dividir les dades en entrenament i prova X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # Crear i entrenar el model model = LinearRegression() model.fit(X_train, y_train) # Fer prediccions predictions = model.predict(X_test) # Avaluar el model mse = mean_squared_error(y_test, predictions) print(f'Error Quadràtic Mitjà: {mse}')
Exercici 2: Classificació amb KNN
Utilitza el conjunt de dades loan_data.csv
per predir si un client aprovarà un préstec basant-te en les seves característiques (ingressos, edat, historial de crèdit, etc.).
Solució
import pandas as pd from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifier from sklearn.metrics import accuracy_score # Carregar les dades data = pd.read_csv('loan_data.csv') X = data[['income', 'age', 'credit_history']] y = data['loan_approval'] # Dividir les dades en entrenament i prova X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # Crear i entrenar el model model = KNeighborsClassifier(n_neighbors=5) model.fit(X_train, y_train) # Fer prediccions predictions = model.predict(X_test) # Avaluar el model accuracy = accuracy_score(y_test, predictions) print(f'Precisió: {accuracy}')
Errors Comuns i Consells
Errors Comuns
- Sobrefitxatge: Quan el model s'ajusta massa a les dades d'entrenament i no generalitza bé a les dades noves.
- Subfitxatge: Quan el model és massa simple i no captura les relacions subjacents en les dades.
- Dades No Netejades: Utilitzar dades amb valors faltants o incorrectes pot portar a prediccions inexactes.
Consells
- Validació Creuada: Utilitza tècniques de validació creuada per avaluar la robustesa del teu model.
- Selecció de Característiques: Tria les característiques més rellevants per millorar la precisió del model.
- Normalització de Dades: Normalitza les dades per assegurar que totes les característiques tinguin el mateix pes en el model.
Conclusió
En aquesta secció, hem explorat els conceptes bàsics de l'anàlisi predictiu, els diferents tipus de models predictius i com implementar-los utilitzant algoritmes comuns. També hem practicat amb exemples i exercicis pràctics per reforçar els conceptes apresos. Amb aquests coneixements, estàs preparat per aplicar l'anàlisi predictiu en diverses àrees de negoci per millorar la presa de decisions basada en dades.
Curs d'Analítica de Negocis
Mòdul 1: Introducció a l'Analítica de Negocis
- Conceptes Bàsics d'Analítica de Negocis
- Importància de l'Analítica en les Operacions Comercials
- Tipus d'Analítica: Descriptiva, Predictiva i Prescriptiva
Mòdul 2: Eines d'Analítica de Negocis
- Introducció a les Eines d'Analítica
- Microsoft Excel per a Analítica de Negocis
- Tableau: Visualització de Dades
- Power BI: Anàlisi i Visualització
- Google Analytics: Anàlisi Web
Mòdul 3: Tècniques d'Anàlisi de Dades
- Neteja i Preparació de Dades
- Anàlisi Descriptiu: Resum i Visualització
- Anàlisi Predictiu: Models i Algoritmes
- Anàlisi Prescriptiu: Optimització i Simulació
Mòdul 4: Aplicacions de l'Analítica de Negocis
Mòdul 5: Implementació de Projectes d'Analítica
- Definició d'Objectius i KPIs
- Recopilació i Gestió de Dades
- Anàlisi i Modelatge de Dades
- Presentació de Resultats i Presa de Decisions
Mòdul 6: Cases Pràctics i Exercicis
- Cas Pràctic 1: Anàlisi de Vendes
- Cas Pràctic 2: Optimització d'Inventaris
- Exercici 1: Creació de Dashboards en Tableau
- Exercici 2: Anàlisi Predictiu amb Excel