Machine Learning

 Machine Learning 

Para entender que es el Machine Learning hay que entender como nosotros tenemos una infinidad de conocimientos, una de las razones es por el aprendizaje.

Por ejemplo: Vea la siguiente imagen.



Evidentemente son números, pero ¿Como sabemos que son números? Fácil, es un tema que nos enseñan a todos desde pequeños en la escuela. Nos enseñaron a dibujar el numero “1” como si fuera un palito, o el número “0” como una especie de elipse. Cabe destacar que si lo dibujamos mal el profesor o el encargado de nuestro aprendizaje nos tiene que corregir y dar seguimiento a nuestro trabajo.

Es casi lo mismo el Machine Learning, esta es la capacidad de aprender para las maquinas, pero para que aprendan debemos enseñarles ciertos conceptos basico y para esto tenemos que usar su lenguaje y además también corregir ciertos errores que esta pueda tener y mejorar el funcionamiento de la maquina. Es evidente que el Machine Learning necesita una base de datos muy amplia, el Machine Learning es usado en la IA (Inteligencia Arficial). 

 


"El ‘Machine Learning’ –aprendizaje automático– es una rama de la inteligencia artificial que permite que las máquinas aprendan sin ser expresamente programadas para ello. Una habilidad indispensable para hacer sistemas capaces de identificar patrones entre los datos para hacer predicciones. Esta tecnología está presente en un sinfín de aplicaciones como las recomendaciones de Netflix o Spotify, las respuestas inteligentes de Gmail o el habla de Siri y Alexa."

FUENTE:https://www.bbva.com/es/innovacion/machine-learning-que-es-y-como-funciona/

A continuación, mostraremos un ejemplo muy sencillo usando el machine learning usando Python con la librería sklearn, esta es una biblioteca de aprendizaje automático de código abierto para el lenguaje de programación Python. Proporciona herramientas simples y eficientes para el análisis predictivo de datos y se centra en la facilidad de uso y la accesibilidad. Scikit-learn incluye una variedad de algoritmos de aprendizaje supervisado y no supervisado, así como utilidades para preprocesamiento de datos y evaluación de modelos.

Ahora nuestro ejemplo trata de predecir si un atleta, cuyo nombre es Elias, puede ganar una carrera en base a sus horas entrenando y velocidad de este, entonces al programa le daremos datos de otros participantes y saber si ganaron o perdieron en la carrera. 

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score

# Datos para predecir
data = {
    'Horas_Entrenamiento': [2, 8, 12, 15, 7],
    'Velocidad': [5, 18, 25, 30, 12],
    'Ganador': ["Pierde", "Gana", "Gana", "Gana", "Pierde"]  
}

datos = pd.DataFrame(data)

X = datos[['Horas_Entrenamiento', 'Velocidad']]
y = datos['Ganador']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)


modelo = LogisticRegression()
modelo.fit(X_train_scaled, y_train)

#Evaluar el modelo
y_pred = modelo.predict(X_test_scaled)
accuracy = accuracy_score(y_test, y_pred)
print(f"Precisión del modelo: {accuracy}")

#Aqui se prueban las predicciones de nuestro participante "Elias"
nuevos_datos = scaler.transform([[10, 38]])
prediccion = modelo.predict(nuevos_datos)
print(f"Predicción de Elias: {prediccion}")

Por ejemplo, en este caso, sus horas entrenando es 10 y su velocidad 38, datos muy altos y parecido a de los anteriores campeones. La predicción es que gana. 


Pero ahora si en este caso, sus horas entrenando es 3 y su velocidad 12, datos muy bajos y parecido a de los anteriores perdedores. La predicción es que pierda. 


Si le damos mas datos su predicción se ajusta de datos pasados para predecir el futuro, algo que se explico en las primeras clases. 


Comentarios

INTRODUCCIÓN A LA COMPUTACIÓN

CLASE II

PANDAS "LIBRERÍA"

CONEXIÓN A BASE DE DATOS