Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/machine-learning-tools/keras-grid-search-cacheable
Reducción de tiempo de ejecución de los algoritmos de Machine Learning con búsqueda de parámetros en GridSearch.
https://github.com/machine-learning-tools/keras-grid-search-cacheable
gridsearch gridsearchcv keras machine-learning sklearn tensorflow2 tools
Last synced: 28 days ago
JSON representation
Reducción de tiempo de ejecución de los algoritmos de Machine Learning con búsqueda de parámetros en GridSearch.
- Host: GitHub
- URL: https://github.com/machine-learning-tools/keras-grid-search-cacheable
- Owner: machine-learning-tools
- License: mit
- Created: 2020-10-21T21:50:39.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-01-13T21:53:39.000Z (about 4 years ago)
- Last Synced: 2024-12-15T15:40:09.826Z (about 2 months ago)
- Topics: gridsearch, gridsearchcv, keras, machine-learning, sklearn, tensorflow2, tools
- Language: Python
- Homepage:
- Size: 10.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# keras GridSearch Cacheable
## Descripción
Cuando está desarrollando un componente en **KERAS** y **Tensorflow** y requiere hacer búsqueda de parámetros mediante GridSearch puede ser muy tardado y requerir mucho reproceso al ejecutar su código.Para dar solución a esto se creó el **keras GridSearch Cacheable** con el objetivo de extender las funcionalidades de cacheo de **SK-Learn** a **KERAS**.
## Instalación
##### En Google Colaboratory:
Ejecute el siguiente fragmento de código
```
def downloadDriveFile(file_id,file_name,file_extension):
!wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id='$file_id -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id="$file_id -O "$file_name"."$file_extension" && rm -rf /tmp/cookies.txtdownloadDriveFile("1G9uWCkxwyE-qISaYbXYtnM21wT1kz11X","CacheableKeras","py")
from cacheable_keras.cacheable import KerasCacheable
```##### En General
```
TODO: Pendiente por agregar a pip
```## Uso
#### Extienda la clase en su componente:
```
from CacheableKeras import KerasCacheableclass YourComponent(BaseEstimator, TransformerMixin, KerasCacheable):
def __init__(self, ...):
```
*Nota: Este ejemplo es para un **TransformerMixin** perfectamente puede usarse en **RegressorMixin** o **ClassifierMixin** segun sea el objetivo de su componente.*#### Defina Funciones Personalizadas:
Puede decir las funciones que quiere que su modelo ejecute sobrescribiendo el método **get_custom_objects** así:```
def get_custom_objects(self):
return { 'custom_loss': self.custom_loss }
```
*Nota: Este método debe retornar un diccionario **{ ‘function_name’ : self.reference_function }**
y la reference_function debe estar definida en **YourComponent**.
En caso de necesitar más de una función personalizada agréguela al diccionario.*#### Personalice la configuración:
**keras GridSearch Cacheable** trabaja por defecto con **TODOS** los parámetros de entrada **YourComponent**.
Sin embargo, si por algún motivo no desea cachear todos los parámetros de entrada sobrescriba el método **get_params_cacheable** así:```
def get_params_cacheable(self):
return ['Parameter 1','Parameter 2',... 'Parameter N']
```
*Nota: Tenga en cuidado al realizar esta modificación, si no coloca **TODOS** los parámetros obligatorios para **YourComponent** al cargar el modelo creado desde su manejador de cache se retornará un error.*###### Producto desarrollado bajo el curso de posgrado de aprendizaje de máquina avanzado impartido por el profesor Andrés Marino Álvarez – Universidad Nacional
###### Daniel Espinosa - 2020