TensorFlow Extended (TFX) és una plataforma de producció d'aprenentatge automàtic (ML) de punta a punta per a la implementació de fluxos de treball de ML a gran escala. TFX proporciona una sèrie de components i biblioteques que ajuden a construir, desplegar i gestionar models de ML de manera eficient i escalable.
Objectius d'aquest tema
- Entendre què és TFX i per què és important.
- Conèixer els components principals de TFX.
- Aprendre a configurar un entorn bàsic de TFX.
Què és TFX?
TFX és una plataforma de codi obert desenvolupada per Google per a la producció de models de ML. Està dissenyada per ajudar els equips de ML a portar els seus models des del desenvolupament fins a la producció de manera eficient i fiable.
Característiques clau de TFX
- Automatització: Automatitza moltes de les tasques repetitives i tedioses associades amb la producció de models de ML.
- Escalabilitat: Pot gestionar grans volums de dades i models complexos.
- Reproductibilitat: Assegura que els experiments de ML siguin reproduïbles.
- Monitorització: Proporciona eines per monitoritzar el rendiment dels models en producció.
Components principals de TFX
TFX està compost per diversos components que treballen junts per crear un flux de treball de ML complet. A continuació es presenten els components principals:
- ExampleGen
- Funció: Ingesta de dades.
- Descripció: Aquest component és responsable de carregar i dividir les dades en conjunts d'entrenament i validació.
- StatisticsGen
- Funció: Generació d'estadístiques.
- Descripció: Calcula estadístiques descriptives sobre les dades d'entrenament.
- SchemaGen
- Funció: Generació d'esquemes.
- Descripció: Genera un esquema de les dades basat en les estadístiques calculades.
- ExampleValidator
- Funció: Validació de dades.
- Descripció: Detecta anomalies en les dades d'entrenament.
- Transform
- Funció: Transformació de dades.
- Descripció: Aplica transformacions a les dades d'entrenament.
- Trainer
- Funció: Entrenament de models.
- Descripció: Entrena el model de ML utilitzant les dades transformades.
- Tuner
- Funció: Ajust de hiperparàmetres.
- Descripció: Optimitza els hiperparàmetres del model.
- Evaluator
- Funció: Avaluació de models.
- Descripció: Avalua el rendiment del model entrenat.
- InfraValidator
- Funció: Validació d'infraestructura.
- Descripció: Valida que el model es pot desplegar en l'entorn de producció.
- Pusher
- Funció: Desplegament de models.
- Descripció: Desplega el model entrenat a l'entorn de producció.
Configuració d'un entorn bàsic de TFX
Requisits previs
- Python 3.6 o superior.
- TensorFlow 2.x.
- Instal·lació de TFX.
Instal·lació de TFX
Exemple bàsic de pipeline de TFX
A continuació es presenta un exemple bàsic de com configurar un pipeline de TFX:
import os from tfx.orchestration.experimental.interactive.interactive_context import InteractiveContext from tfx.components import CsvExampleGen from tfx.orchestration.pipeline import Pipeline from tfx.orchestration.local.local_dag_runner import LocalDagRunner # Definir el directori de treball pipeline_root = os.path.join(os.getcwd(), 'tfx_pipeline') # Crear el component ExampleGen example_gen = CsvExampleGen(input_base='path/to/csv/data') # Crear el pipeline pipeline = Pipeline( pipeline_name='my_pipeline', pipeline_root=pipeline_root, components=[example_gen], enable_cache=True, metadata_connection_config=None ) # Executar el pipeline LocalDagRunner().run(pipeline)
Explicació del codi
- InteractiveContext: Permet executar components de TFX de manera interactiva.
- CsvExampleGen: Component que ingereix dades des d'arxius CSV.
- Pipeline: Defineix el pipeline de TFX.
- LocalDagRunner: Executa el pipeline localment.
Resum
En aquest tema, hem introduït TensorFlow Extended (TFX) i hem explorat els seus components principals. També hem vist com configurar un entorn bàsic de TFX i executar un pipeline simple. En els següents temes, aprofundirem en cada component i veurem exemples més avançats de com utilitzar TFX per a la producció de models de ML.
Curs de TensorFlow
Mòdul 1: Introducció a TensorFlow
- Què és TensorFlow?
- Configuració de TensorFlow
- Conceptes bàsics de TensorFlow
- Hola món amb TensorFlow
Mòdul 2: Conceptes bàsics de TensorFlow
Mòdul 3: Gestió de dades a TensorFlow
Mòdul 4: Construcció de xarxes neuronals
- Introducció a les xarxes neuronals
- Creació d'una xarxa neuronal simple
- Funcions d'activació
- Funcions de pèrdua i optimitzadors
Mòdul 5: Xarxes neuronals convolucionals (CNNs)
Mòdul 6: Xarxes neuronals recurrents (RNNs)
- Introducció a les RNNs
- Construcció d'una RNN
- Memòria a llarg termini (LSTM)
- Unitats recurrents amb porta (GRUs)
Mòdul 7: Tècniques avançades de TensorFlow
- Capes i models personalitzats
- TensorFlow Hub
- Aprenentatge per transferència
- Ajust de hiperparàmetres