jueves, 7 de marzo de 2024

 


Transformando el Futuro con Amazon SageMaker:

Revolucionando la Inteligencia Artificial

 

En la era digital en la que vivimos, la inteligencia artificial (IA) se ha convertido en un elemento crucial que impulsa la innovación en todas las industrias. Desde la atención médica hasta la gestión empresarial, la IA está transformando la forma en que trabajamos, creamos y vivimos. En este escenario de avance tecnológico vertiginoso, una herramienta se destaca por su impacto y versatilidad: Amazon SageMaker.

 

Amazon SageMaker:

La Revolución de la IA

 

Amazon SageMaker, parte del conjunto de servicios en la nube de Amazon Web Services (AWS), es una plataforma integral de aprendizaje automático (ML) que está redefiniendo los estándares en el desarrollo y despliegue de modelos de IA. Lo que una vez fue un proceso complejo y costoso, ahora se ha simplificado y democratizado gracias a SageMaker.

 

Impacto en la Innovación

 

El impacto de SageMaker en la innovación es innegable. Permitiendo a científicos de datos, desarrolladores y empresas acceder a herramientas avanzadas de aprendizaje automático en la nube, SageMaker ha allanado el camino para la creación de soluciones de IA más rápidas, eficientes y accesibles. Desde startups hasta grandes corporaciones, la capacidad de experimentar, iterar y escalar modelos de IA con SageMaker ha impulsado la creación de nuevas aplicaciones y servicios en todas las industrias.

 

Facilitando el Desarrollo de Modelos de IA

 

Una de las características más destacadas de SageMaker es su capacidad para simplificar el proceso de desarrollo de modelos de IA. Con su entorno integrado de desarrollo, SageMaker ofrece a los usuarios una suite de herramientas para construir, entrenar y desplegar modelos de forma eficiente. Desde la preparación de datos hasta la optimización del modelo, SageMaker proporciona las herramientas y la infraestructura necesarias para llevar a cabo todo el ciclo de vida del aprendizaje automático en un solo lugar.

 

Escalabilidad y Flexibilidad sin Precedentes

 

La escalabilidad y flexibilidad de SageMaker son incomparables. Con la capacidad de escalar horizontal y verticalmente según las necesidades del proyecto, SageMaker permite a los usuarios manejar conjuntos de datos de cualquier tamaño y complejidad. Además, con soporte para una amplia gama de marcos de aprendizaje automático y opciones de implementación personalizables, SageMaker ofrece la flexibilidad necesaria para adaptarse a cualquier caso de uso y requisito específico.

 

Innovación Continua y Soporte Comunitario

 

El compromiso de AWS con la innovación continua se refleja en las constantes actualizaciones y mejoras de SageMaker. Con nuevas características y funcionalidades que se agregan regularmente, SageMaker se mantiene a la vanguardia de la tecnología de IA, permitiendo a los usuarios aprovechar las últimas innovaciones en aprendizaje automático y ciencia de datos.

 

Además, la comunidad en torno a SageMaker es una fuente inagotable de conocimiento y apoyo. Desde tutoriales y guías hasta foros de discusión y grupos de usuarios, los usuarios de SageMaker tienen acceso a una red global de expertos y compañeros de la industria que pueden ayudar en cada paso del camino.

 

Conclusión

 

En resumen, Amazon SageMaker ha tenido un impacto transformador en el mundo de la inteligencia artificial. Desde su lanzamiento, ha democratizado el acceso a la IA, ha facilitado el desarrollo de modelos de aprendizaje automático y ha impulsado la innovación en todas las industrias. Si estás interesado en explorar el potencial de SageMaker y unirte a la revolución de la IA, te invitamos a conocer más sobre esta emocionante plataforma en la [documentación oficial de Amazon SageMaker](https://docs.aws.amazon.com/sagemaker/index.html). Prepárate para transformar el futuro con SageMaker y llevar tus ideas al siguiente nivel de innovación.


martes, 13 de febrero de 2024

Cv Francisco Javier Fiestas Botella

 CV de Javier Fiestas Botella


Desarrollador Junior Python


Contacto:

Casa: 952-25-19-12

Móvil: +34 628 796 613

Dirección: Calle Pintor José Ponce 19 B. 29017 Málaga

Email: javierfiestasbotella@gmail.com

LinkedIn: Francisco Javier Fiestas Botella


Perfil Personal:

Apasionado por la programación con experiencia en el desarrollo de sistemas web. Flexible, paciente y realista, con capacidad de comunicación y trabajo en equipo.


Proyectos Personales:

- Web Restaurante

- Web Pilates y Quigong

- Automatización Python

- App de Gestión en Restauración

- Proyecto sobre Predicción de Precipitaciones

- Proyecto sobre Personas Desaparecidas


Otras Aptitudes:

- Capacidad de comunicación y trabajo en equipo

- Flexibilidad y adaptación al cambio

- Pasión por la programación

- Paciente y realista

- Aprendo de mis errores


Experiencia Laboral:

Administración 2020-2024:

- Diseño de página web

- Creación de aplicaciones internas de optimización

- Mantenimiento de web y aplicaciones de gestión de la empresa

- Encargado en restaurantes

- Gestión y administración en hostelería


Historial Educativo:

Tokio School:

- Curso Python y especialización en IA


Informaciones:

- Programación con Python

- Inglés nivel B1, Dabo Consulting, enero de 2020

- Python Total Programador Avanzado, Udemy, octubre de 2022

- BBDD en MySQL con Desafíos Latham 2023

- Certificado de Ciberseguridad con Cisco 2023

- Desarrollo en Git y GitHub 2022

- Curso de Programación Moderna en Python, Acelera España III, concluido el 2021-01-20


Formación Académica:

- 1º de Bachillerato

domingo, 26 de noviembre de 2023

Predicciones Climáticas

 

🚀 Proyecto de Predicción Climática y Precipitación Anual en Tokio School 🌦



¡Hola comunidad! Me complace compartir mi proyecto de predicción climática y precipitación anual, desarrollado como parte de mi curso de especialización en inteligencia artificial en Tokio School. 🌐

Contenido del Proyecto: Este proyecto aborda la predicción de condiciones climáticas y precipitación anual en diversas regiones. Utiliza datos climáticos de múltiples fuentes, incluyendo países nórdicos y datos históricos de España.

🌧 Funcionalidades Principales:

·         Predicción de Precipitación Anual.

·         Clasificación de Condiciones Climáticas.

Configuración del Entorno: Asegúrate de tener las siguientes bibliotecas de Python instaladas para ejecutar el proyecto:

·         pandas

·         numpy

·         scikit-learn

·         joblib

·         matplotlib

Instrucciones de Ejecución:

1.   Clona este repositorio o descarga los archivos necesarios.

2.   Instala las bibliotecas requeridas en tu entorno de Python.

3.   Ejecuta los scripts proporcionados para cargar datos, entrenar modelos y realizar predicciones.

4.   Ajusta umbrales y datos según tus necesidades.

5.   Explora los resultados y métricas generadas por el proyecto.

Resultados: Este proyecto ofrece predicciones anuales de lluvia y clasificación de condiciones climáticas para regiones específicas. Los resultados se basan en modelos de aprendizaje automático entrenados en datos históricos.

Autor: Javier Fiestas Botella

Datos de Referencia: Datos climáticos de Kaggle y Noruega (transformados para adaptarse al proyecto).

Licencia: Este proyecto se publica bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.

¡Sigo aprendiendo y creciendo! Siéntete libre de explorar el proyecto en mi cuenta de GitHub: Javierfiestasbotella (Javi Fiestas) (github.com)

¡Agradezco cualquier comentario o sugerencia! 🚀 #AprendizajeAutomatico #ProyectoAI #Clima

🌐 **Proyecto de Predicción Climática y Precipitación Anual** 🌧

 

── 📂 **Datos**            # Carpeta de Datos

   ── 📄 climaticos_nordicos.csv    # Datos climáticos de países nórdicos

   ── 📄 climaticos_espana.csv      # Datos climáticos históricos de España

── 📂 **Scripts**          # Carpeta de Scripts

   ── 📄 cargar_datos.py   # Script para cargar datos desde múltiples fuentes

 

   ── 📄 entrenar_modelos.py  # Script para entrenar modelos de predicción

   ── 📄 realizar_predicciones.py   # Script para realizar predicciones

── 📄 **README.md**        # Documentación principal del proyecto

── 📄 **LICENSE**          # Archivo de licencia MIT

── 📄 **.gitignore**       # Archivo de configuración de gitignore

── 📄 **requirements.txt**  # Archivo de requisitos de Python

── 📄 **main.py**           # Archivo principal para ejecutar el proyecto

── 📄 **Informe_climatico.pdf**  # Informe final de resultados y análisis

── 📄 **.env**              # Archivo para configuración de entorno

└── 📄 **.gitignore**        # Archivo de configuración de gitignore con patrones específicos

 

lunes, 13 de noviembre de 2023

 



Código Python a la Velocidad de la Luz:

Automatización para Desarrolladores Exigentes

🚀 Automatizando el desarrollo con Python: Autocompletado de código

¡Saludos, comunidad de desarrolladores!

Hoy quiero compartir con ustedes una herramienta que he desarrollado para facilitar el trabajo en la creación de clases y métodos en Python. Este conjunto de funciones Python te permite generar automáticamente fragmentos de código relacionados con la conexión a bases de datos, la creación de clases, la verificación de usuarios y contraseñas, y la escritura en archivos.



pythonCopy code

[from pynput.keyboard import Key, Controller

import pyperclip as pc

import os

import io

from io import open

from datetime import datetime

from datetime import date

import datetime

 

 

#completa_conexion(n):TE AUTOCOMPLETA UNA CLASE CON LA CONEXXION A UNA BBDD PASANDO COMO ARGUMENTO NOMBRE DE LA CLASE

#completa_interfaz(n):AUTOCOMPLETA LOS MÉTODOS DE INTERFAZ DE LA VARIABLE PRIVADA QUE PASAS COMO ARGUMENTO

 

def autorelleno1(clave):

    return f'''

    @property

    def {clave}(self):

        return self._{clave}

    @{clave}.setter

    def {clave}(self,valor):

        self._{clave}=valor

    @{clave}.deleter

    def {clave}(self):

        del self._{clave}'''

 

 

 

def autorelleno2(clave):

    return f'''

    #SE REQUIERE IMPORTAR:

    #import mysql.connector

    #from mysql.connector import Error

    class {clave}():

 

        def __init__(self):

            try:

                self.conexion = mysql.connector.connect(

                    host=,

                    user=,

                    password=,

                    db=

                )

            except Error as ex:

                print("Error al intentar la conexión: {0}".format(ex))'''

 

def autorelleno3(n,m):#verifica nobre de usuario

    return f'''

#Devuelve True si el nombre usuario es aceptado y verificado

def usuario():

        usser=input("Introduce un usuario : ")

        if len(usser)<{n} or len(usser)>{m}:

            print("El usuario debe tener entre {n} y {m} caracteres")

            usuario()

        elif usser.isalnum()==False:

            print("Los valores del usurio deben ser únicamente letras o números")

            usuario()

        else:

            print(True)

        '''

def autorelleno4(n):

    return f'''

def contraseña():

  global passw

  passw=input("Introduce contraseña: ")

  if len(passw)<={n-1}:

    print("La contraseña debe tener al menos {n} caractéres")

    contraseña()

  elif passw.isalnum()==True:

    print ("La contraseña debe tener al menos un carácter no alfanumérico")

    contraseña()

  elif passw.lower() == passw:

    print("Debe haber por lo menos una mayúscula")

    contraseña()

  elif passw.upper()==passw:

    print("Debe haber por lo menos una minúscula")

    contraseña()

 

  for i in passw:

    if i==" ":

      print("La contraseña no debe tener espacios en blanco")

      contraseña()

  print(True)

   

   

    '''

def autorelleno5():

    return f'''

    #NO OLVIDES DARLE UNA EXTENSION AL NOMBRE DEL ARCHIVO DEL PRIMER ARGUMENTO

    #SUSTITUYE EN LA LLAMADA A LA FUNCION escribir(); EL ARCHIVO POR EL NOMBRE DEL ARCHIVO Y DOCUMENTACIÓN POR LO QUE QUIERAS DENTRO DEL ARCHIVO.

    def escribir(archivo,documentacion):

        fichero = open(archivo, 'a')

        fichero.write(documentacion)

        fichero.close()

    escribir(archivo,documentacion)

    '''

 

 

def completa_conexion(n):#TE AUTOCOMPLETA UNA CLASE CON LA CONEXXION A UNA BBDD PASANDO COMO ARGUMENTO NOMBRE DE LA CLASE

    prueba01=pc.copy(autorelleno2(n))

    keyboard = Controller()

    with keyboard.pressed(Key.ctrl):

        keyboard.press('v')

        keyboard.release('v')

   

 

def completa_interfaz(variables):

    autorelleno = ""

    for variable in variables:

        autorelleno += autorelleno1(variable) + "\n"

    pc.copy(autorelleno)

    keyboard = Controller()

    with keyboard.pressed(Key.ctrl):

        keyboard.press('v')

        keyboard.release('v')

 

def verifica_ususario(n,m):#AUTOCOMPLETA VERIFICACION DE USUARIO; SOLO PUEDEN SER NÚMEROS O LETRAS Y PASARLE POR ARGUMENTO EL MÍNIMO Y MÁXIMO DE CARACTERES QUE QUIERES QUE TENGA.

    prueba01=pc.copy(autorelleno3(n,m))

    keyboard = Controller()

    with keyboard.pressed(Key.ctrl):

        keyboard.press('v')

        keyboard.release('v')

 

def verifica_password(n):#AUTOCOMPLETA FUNCION DE VERIFICACION DE PASSWORD PASANDO COMO ARGUMENTO CANTIDAD MAX DE CARACTERES

    prueba01=pc.copy(autorelleno4(n))

    keyboard = Controller()

    with keyboard.pressed(Key.ctrl):

        keyboard.press('v')

        keyboard.release('v')

 

def guarda_en_archivo():#CREA EL ARCHIVO CON EL NOMBRE DEL PRIMER ARGUMENTO Y GUARDA LA INFORMACION QUE GUARDAS EN EL SEGUNDO ARGUMENTO QUE DEBES INTRODUCIR LUEGO.

    prueba01=pc.copy(autorelleno5())

    keyboard = Controller()

    with keyboard.pressed(Key.ctrl):

        keyboard.press('v')

        keyboard.release('v')]



¿Cómo funciona?

1.    Conexión a Base de Datos: completa_conexion('NombreClase') autocompleta la conexión a una base de datos, generando una clase con los parámetros necesarios.

2.    Métodos de Interfaz: completa_interfaz(['variable1', 'variable2']) facilita la creación de métodos de interfaz para una lista de variables.

3.    Verificación de Usuario: verifica_usuario(min_len, max_len) ayuda en la verificación de nombres de usuario, estableciendo reglas personalizadas.

4.    Verificación de Contraseña: verifica_password(max_len) simplifica la validación de contraseñas con reglas específicas.

5.    Guardado en Archivo: guarda_en_archivo() crea un archivo y almacena información relevante.

¿Cómo puede ser útil?

Imagina tener un código con múltiples clases y variables. En lugar de escribir manualmente los métodos de interfaz para cada variable, simplemente agrúpalas en una lista y utiliza el autocompletado proporcionado. ¡Es una forma eficiente y rápida de mejorar la productividad en el desarrollo!

Colaboración y Mejoras Continuas:

Este código es solo el comienzo. Planeo seguir mejorándolo y desarrollando nuevas funciones. Puedes encontrar el proyecto completo en mi cuenta de GitHub, y estoy abierto a sugerencias y colaboraciones. Juntos podemos hacer que el desarrollo sea más eficiente y divertido.

¡Espero que encuentren útil este conjunto de funciones! Estoy emocionado por el camino que se avecina en el mundo del desarrollo.

¡#Python #Desarrollo #AutomatizaciónDeCódigo! 🚀

Javierfiestasbotella (Javi Fiestas) (github.com)

 

  🛎 La revolución silenciosa de la hostelería: cómo la automatización está cambiando el juego en locales como La Chancla En pleno paseo ...