Introducciòn a la libreria Scikit-learn
- 1. Aprendizaje supervisado
- 1.1. Modelos lineales
- 1.2. Análisis discriminante lineal y cuadrático
- 1.3. Regresión de la cresta del núcleo
- 1.4. Máquinas de vectores de soporte
- 1.5. Descenso del gradiente estocástico
- 1.6. Vecinos más cercanos
- 1.7. Procesos gaussianos
- 1.8. Descomposición cruzada
- 1.9. Bayes ingenuo
- 1.10. Árboles de decisión
- 1.11. Conjuntos: aumento de gradiente, bosques aleatorios, embolsado, votación, apilamiento
- 1.12. Algoritmos multiclase y multisalida
- 1.13. Selección de características
- 1.14. Aprendizaje semisupervisado
- 1.15. regresión isotónica
- 1.16. Calibración de probabilidad
- 1.17. Modelos de redes neuronales (supervisados)
- 2. Aprendizaje no supervisado
- 2.1. Modelos de mezcla gaussiana
- 2.2. Aprendizaje múltiple
- 2.3. Agrupación
- 2.4. Biclusterización
- 2.5. Descomponer señales en componentes (problemas de factorización matricial)
- 2.6. Estimación de covarianza
- 2.7. Detección de novedades y valores atípicos
- 2.8. Estimación de densidad
- 2.9. Modelos de redes neuronales (no supervisados)
- 3. Selección y evaluación del modelo.
- 4. Inspección
- 5. Visualizaciones
- 6. Transformaciones de conjuntos de datos
- 6.1. Pipelines y estimadores compuestos
- 6.2. Extracción de características
- 6.3. Datos de preprocesamiento
- 6.4. Imputación de valores faltantes
- 6.5. Reducción de dimensionalidad no supervisada
- 6.6. Proyección aleatoria
- 6.7. Aproximación del núcleo
- 6.8. Métricas por pares, afinidades y kernels
- 6.9. Transformar el objetivo de predicción (
y
)
- 7. Utilidades de carga de conjuntos de datos
- 8. Computación con scikit-learn
- 9. Persistencia del modelo
- 10. Errores comunes y prácticas recomendadas
- 11. Despacho
En desarrollo
# Modelos lineales
# Minimos cuadrados
# Code source: Jaques Grobler
# License: BSD 3 clause
import matplotlib.pyplot as plt
import numpy as np
from sklearn import datasets, linear_model
from sklearn.metrics import mean_squared_error, r2_score
# Load the diabetes dataset
diabetes_X, diabetes_y = datasets.load_diabetes(return_X_y=True)
# Use only one feature
diabetes_X = diabetes_X[:, np.newaxis, 2]
# Split the data into training/testing sets
diabetes_X_train = diabetes_X[:-20]
diabetes_X_test = diabetes_X[-20:]
# Split the targets into training/testing sets
diabetes_y_train = diabetes_y[:-20]
diabetes_y_test = diabetes_y[-20:]
# Create linear regression object
regr = linear_model.LinearRegression()
# Train the model using the training sets
regr.fit(diabetes_X_train, diabetes_y_train)
# Make predictions using the testing set
diabetes_y_pred = regr.predict(diabetes_X_test)
# The coefficients
print("Coefficients: \n", regr.coef_)
# The mean squared error
print("Mean squared error: %.2f" % mean_squared_error(diabetes_y_test, diabetes_y_pred))
# The coefficient of determination: 1 is perfect prediction
print("Coefficient of determination: %.2f" % r2_score(diabetes_y_test, diabetes_y_pred))
# Plot outputs
plt.scatter(diabetes_X_test, diabetes_y_test, color="black")
plt.plot(diabetes_X_test, diabetes_y_pred, color="blue", linewidth=3)
plt.xticks(())
plt.yticks(())
plt.show()
Comentarios
Publicar un comentario