Mostrar los tags: python

Mostrando del 21 al 30 de 259 coincidencias
Se ha buscado por el tag: python
Imágen de perfil

Mini Batch


Python

Publicado el 26 de Septiembre del 2023 por Hilario (124 códigos)
437 visualizaciones desde el 26 de Septiembre del 2023
Cuaderno-Aula-B78-26-Sep-Rv-0.py

El Descenso de Gradiente Mini Batch (Mini Batch Gradient Descent en inglés) es una variante del algoritmo de Descenso de Gradiente que se utiliza comúnmente para entrenar modelos de aprendizaje automático, especialmente en problemas de optimización de grandes conjuntos de datos. El Descenso de Gradiente Mini Batch combina las ideas del Descenso de Gradiente Estocástico (SGD) y el Descenso de Gradiente por Lotes (Batch Gradient Descent).

Aquí están los conceptos clave del Descenso de Gradiente Mini Batch:

Descenso de Gradiente por Lotes (Batch Gradient Descent): En este enfoque, se calcula el gradiente de la función de pérdida utilizando todo el conjunto de datos de entrenamiento en cada iteración del algoritmo. Esto significa que se actualizan los parámetros del modelo una vez por ciclo completo a través del conjunto de datos. El enfoque Batch GD puede ser costoso en términos de memoria y tiempo de cómputo, especialmente para conjuntos de datos grandes.


Descenso de Gradiente Estocástico (SGD): En este enfoque, se calcula y actualiza el gradiente utilizando un solo ejemplo de entrenamiento en cada iteración. Esto conduce a actualizaciones de parámetros más frecuentes, pero a menudo más ruidosas y menos precisas. Aunque es más rápido y consume menos memoria que el enfoque por lotes, puede ser menos estable en la convergencia y requerir más iteraciones.

Descenso de Gradiente Mini Batch: En lugar de utilizar todo el conjunto de datos o un solo ejemplo de entrenamiento, el Descenso de Gradiente Mini Batch se encuentra en algún punto intermedio. Divide el conjunto de datos de entrenamiento en pequeños subconjuntos llamados mini lotes o mini-batches. Luego, en cada iteración, calcula y aplica las actualizaciones de gradiente utilizando uno de estos mini lotes en lugar del conjunto de datos completo o un solo ejemplo.

Las ventajas del Descenso de Gradiente Mini Batch incluyen:

Eficiencia computacional: Al utilizar mini lotes, se pueden aprovechar las ventajas del procesamiento paralelo y reducir la carga en la memoria, lo que lo hace más eficiente que el Descenso de Gradiente por Lotes en términos de tiempo y recursos.

Mayor estabilidad y convergencia: Comparado con SGD, el Descenso de Gradiente Mini Batch tiende a proporcionar actualizaciones de parámetros más estables y una convergencia más suave hacia el mínimo global de la función de pérdida.

Mejor generalización: En muchos casos, el Descenso de Gradiente Mini Batch puede conducir a modelos que generalizan mejor en comparación con SGD, ya que los mini lotes proporcionan un término medio entre el ruido de SGD y la lentitud de Batch GD.

El tamaño del mini lote es un hiperparámetro que debe ajustarse durante el entrenamiento del modelo. Suele ser un valor entre 16 y 256, pero puede variar según el problema y el conjunto de datos. El Descenso de Gradiente Mini Batch es una técnica muy comúnmente utilizada en el entrenamiento de redes neuronales y otros modelos de aprendizaje automático debido a su eficiencia y capacidad para encontrar mínimos globales de manera efectiva.
Imágen de perfil

Descenso de Gradiente Estocástico (SGD)


Python

Publicado el 14 de Septiembre del 2023 por Hilario (124 códigos)
475 visualizaciones desde el 14 de Septiembre del 2023
Hilario Iglesias Marínez

*******************************************************************
Ejercicio:
Estocástico_Aula_F-890.py
Ejecucion bajo Consola Linux:
python3 Estocástico_Aula_F-890.py

******************************************************************
Diferencias.
El descenso de gradiente es un algoritmo de optimización utilizado comúnmente en el aprendizaje automático y la optimización de funciones. Hay dos variantes principales del descenso de gradiente: el descenso de gradiente tipo Batch (también conocido como descenso de gradiente por lotes) y el descenso de gradiente estocástico. Estas dos variantes difieren en la forma en que utilizan los datos de entrenamiento para actualizar los parámetros del modelo en cada iteración.

Descenso de Gradiente Tipo Batch:

En el descenso de gradiente tipo Batch, se utiliza el conjunto completo de datos de entrenamiento en cada iteración del algoritmo para calcular el gradiente de la función de costo con respecto a los parámetros del modelo.
El gradiente se calcula tomando el promedio de los gradientes de todas las muestras de entrenamiento.
Luego, se actualizan los parámetros del modelo utilizando este gradiente promedio.
El proceso se repite hasta que se alcanza una convergencia satisfactoria o se ejecuta un número predefinido de iteraciones.

Descenso de Gradiente Estocástico (SGD):

En el descenso de gradiente estocástico, en cada iteración se selecciona una sola muestra de entrenamiento al azar y se utiliza para calcular el gradiente de la función de costo.
Los parámetros del modelo se actualizan inmediatamente después de calcular el gradiente para esa única muestra.
Debido a la selección aleatoria de muestras, el proceso de actualización de parámetros es inherentemente más ruidoso y menos suave que en el descenso de gradiente tipo Batch.
SGD es más rápido en cada iteración individual y a menudo converge más rápidamente, pero puede ser más ruidoso y menos estable en términos de convergencia que el descenso de gradiente tipo Batch.
Diferencias clave:

Batch GD utiliza todo el conjunto de datos en cada iteración, lo que puede ser costoso computacionalmente, mientras que SGD utiliza una sola muestra a la vez, lo que suele ser más eficiente en términos de tiempo.
Batch GD tiene una convergencia más suave y estable debido a que utiliza gradientes promedio, mientras que SGD es más ruidoso pero a menudo converge más rápido.
Batch GD puede quedar atrapado en óptimos locales, mientras que SGD puede escapar de ellos debido a su naturaleza estocástica.
En la práctica, también existen variantes intermedias como el Mini-Batch Gradient Descent, que utiliza un pequeño conjunto de datos (mini-lote) en lugar del conjunto completo, equilibrando así los beneficios de ambas técnicas. La elección entre estas variantes depende de la naturaleza del problema y las restricciones computacionales.


Imágen de perfil

TENSOR FLOW.


Python

Publicado el 11 de Agosto del 2023 por Hilario (124 códigos)
318 visualizaciones desde el 11 de Agosto del 2023

Carpe Diem
--------------------------------------------------------
Hilario Iglesias Martínez
******************************************************
pi.py
*****************************************

Ecuacion inventada de partida para los valores de entrada y salida.
f(x)=(x**2)*π
π=3.141618
prediccion=232.690
valor real=234.127

********************************************************
Se puede jugar con el programa para disminuir el error.
Realizado en un ordenador con Ubuntu 20.04.6 LTS.
Editado en Google Colab.

Tarda en predecir el valor dado aproximadamente 4 mn.
con una velocidad de bajada de 518.1 Mbps

Imágen de perfil

Aplicación para usar ChatGPT desde la terminal.


Python

Actualizado el 10 de Agosto del 2023 por Antonio (76 códigos) (Publicado el 24 de Mayo del 2023)
966 visualizaciones desde el 24 de Mayo del 2023
Programa para usar ChatGPT dese la terminal. Al iniciarlo se requiere introducir la Api-Key del usuario.
PARA CUALQUIER DUDA U OBSERVACIÓN, USEN LA SECCIÓN DE COMENTARIOS.

cha
cha2
Imágen de perfil

punto de venta 2ª versión


Python

estrellaestrellaestrellaestrellaestrella(3)
Publicado el 4 de Mayo del 2023 por Mauricio Roman (7 códigos)
3.521 visualizaciones desde el 4 de Mayo del 2023
Nueva version de un punto de venta, la interfaz cambio respecto a la version anterior.

- se incorporan nuevos metodos de control.
- encriptacion en las contraseñas.
- implementacion de nuevas barras de menu.
- ahora es posible realizar ventas simultaneas (hasta 8).
- exportacion de ventas realizadas en el dia y por fecha en formato pdf.
- implementacion de menu contextual (click derecho) para agilizar el manejo del almacen.
- los datos de los productos solo son para ver el funcionamiento del programa.
- se pueden dar de baja productos temporalmente.
- se implementan atajos de teclado para mayor rapidez.
- no se adjunta la BD ya que se trata de que las personas que lo utilizan vayan llenando la BD con los productos que necesitan.


-esta version fue probada y desarrollada en linux, en teoria deberia funcionar en windows pero no estoy seguro.
Imágen de perfil

Mostrar precios de acciones en el terminal


Python

Actualizado el 7 de Abril del 2023 por Antonio (76 códigos) (Publicado el 31 de Enero del 2023)
1.911 visualizaciones desde el 31 de Enero del 2023
Este programa ('f-tables.py') muestra en formato tabla, los precios de acciones en el terminal, haciendo uso de la API de Yahoo Finance. Incluyendo la posibilidad de guardarlas en un documento de texto, así como mostrar gráficas.

ARGUMENTOS:
-sym/--symbol: Define el Ticker o simbolo de la empresa cuyos valores quiere conocerse (Obligatorio).
-i/--info: Información que se quiere obtener (Opcional).
-s/--start: Fecha de inicio de la serie histórica (Opcional).
-e/--end: Fecha final de la serie histórica (Opcional).
-int/--interval: Intervalos de tiempo en los que se muestran los datos (Opcional).
-sv/--save: Nombre del archivo de texto en el que se quiere guardar la tabla generada (Opcional).
-plt/--plot: Grafica precios de la tabla (Opcional).
-hd/--head: Número de filas iniciales a mostrar (Opcional).
-tl/--tail: Número de filas finales a mostrar (Opcional).

PARA CUALQUIER DUDA U OBSERVACIÓN, USEN LA SECCIÓN DE COMENTARIOS.
ft1
tb5
tb2
Imágen de perfil

Generador de audiotextos.


Python

estrellaestrellaestrellaestrellaestrella(6)
Actualizado el 28 de Noviembre del 2022 por Antonio (76 códigos) (Publicado el 21 de Septiembre del 2020)
6.356 visualizaciones desde el 21 de Septiembre del 2020
Este programa genera archivos "mp3" a partir de textos introducidos por el usuario, en diferentes idiomas.
Botones:
"CREATE AUDIO-TEXT": Genera un audio, a partir del texto presente en el recuadro superior.
"TRANSLATE TEXT": Traduce el texto a cualquiera de los idiomas seleccionables del margen derecho.
"CLEAR TEXT": Borra el texto del cuadro superior.

PARA CUALQUIER DUDA O ERROR, NO DUDEN EN COMENTARMELO.

autm