Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
tensorflow
GitHub Repository: tensorflow/docs-l10n
Path: blob/master/site/es-419/datasets/dataset_collections.ipynb
25115 views
Kernel: Python 3
#@title Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License.

Colecciones de conjuntos de datos

Descripción general

Las colecciones de conjuntos de datos proporcionan una manera simple de agrupar una cantidad arbitraria de conjuntos de datos TFDS existentes y realizar operaciones simples en ellos.

Pueden resultar útiles, por ejemplo, para agrupar diferentes conjuntos de datos que se relacionan con la misma tarea o para realizar una prueba comparativa sencilla de modelos en un número fijo de tareas diferentes.

Preparación

Para comenzar, instale algunos paquetes:

# Use tfds-nightly to ensure access to the latest features. !pip install -q tfds-nightly tensorflow !pip install -U conllu

Importe TensorFlow y el paquete Tensorflow Datasets a su entorno de desarrollo:

import pprint import tensorflow as tf import tensorflow_datasets as tfds

Las colecciones de conjuntos de datos proporcionan una manera simple de agrupar una cantidad arbitraria de conjuntos de datos existentes desde Tensorflow Datasets (TFDS) y realizar operaciones simples en ellos.

Pueden resultar útiles, por ejemplo, para agrupar diferentes conjuntos de datos que se relacionan con la misma tarea o para realizar una prueba comparativa sencilla de modelos en un número fijo de tareas diferentes.

Encuentrar colecciones de conjuntos de datos disponibles

Todos los generadores de colecciones de conjuntos de datos son una subclase de tfds.core.dataset_collection_builder.DatasetCollection.

Para obtener la lista de generadores disponibles, use tfds.list_dataset_collections().

tfds.list_dataset_collections()

Cargar e inspeccionar una colección de conjuntos de datos

La forma más fácil de cargar una colección de conjuntos de datos es crear una instancia de un objeto DatasetCollectionLoader mediante el uso del comando tfds.dataset_collection.

collection_loader = tfds.dataset_collection('xtreme')

Se pueden cargar versiones específicas de la colección de conjuntos de datos al seguir la misma sintaxis que con los conjuntos de datos TFDS:

collection_loader = tfds.dataset_collection('xtreme:1.0.0')

Un cargador de colecciones de conjuntos de datos puede mostrar información sobre la colección:

collection_loader.print_info()

El cargador de conjuntos de datos también puede mostrar información sobre los conjuntos de datos que tiene la colección:

collection_loader.print_datasets()

Cargar conjuntos de datos desde una colección de conjuntos de datos

La forma más fácil de cargar un conjunto de datos de una colección es con el método load_dataset de un objeto DatasetCollectionLoader, que carga el conjunto de datos requerido llamando al tfds.load.

Esta llamada devuelve un diccionario de nombres divididos y los tf.data.Dataset correspondientes:

splits = collection_loader.load_dataset("ner") pprint.pprint(splits)

load_dataset acepta los siguientes parámetros opcionales:

  • split: qué división o divisiones cargar. Acepta una única división (split="test") o una lista de divisiones: ( split=["train", "test"]). Si no se especifica, cargará todas las divisiones para el conjunto de datos dado.

  • loader_kwargs: argumentos de palabras clave que se pasarán a la función tfds.load. Consulte la documentación tfds.load para obtener una descripción general completa de las diferentes opciones de carga.

Cargar varios conjuntos de datos desde una colección de conjuntos de datos

La forma más fácil de cargar varios conjuntos de datos de una colección es con el método load_dataset de un objeto DatasetCollectionLoader, que carga el conjunto de datos requerido llamando al tfds.load.

Devuelve un diccionario de nombres de conjuntos de datos, cada uno de estos está asociado con un diccionario de nombres divididos y los tf.data.Dataset correspondientes, como en el siguiente ejemplo:

datasets = collection_loader.load_datasets(['xnli', 'bucc']) pprint.pprint(datasets)

El método load_all_datasets carga todos los conjuntos de datos disponibles para una colección determinada:

all_datasets = collection_loader.load_all_datasets() pprint.pprint(all_datasets)

El método load_datasets acepta los siguientes parámetros opcionales:

  • split: qué división o divisiones cargar. Acepta una única división (split="test") o una lista de divisiones: ( split=["train", "test"]). Si no se especifica, cargará todas las divisiones para el conjunto de datos dado.

  • loader_kwargs: argumentos de palabras clave que se pasarán a la función tfds.load. Consulte la documentación tfds.load para obtener una descripción general completa de las diferentes opciones de carga.

Especificar loader_kwargs

Los loader_kwargs son argumentos de palabras clave opcionales que se pasarán a la función tfds.load. Se pueden especificar de tres maneras:

  1. Al inicializar la clase DatasetCollectionLoader:

collection_loader = tfds.dataset_collection('xtreme', loader_kwargs=dict(split='train', lote_size=10, try_gcs=False))
  1. Con el método set_loader_kwargs de DatasetCollectioLoader:

collection_loader.set_loader_kwargs(dict(split='train', batch_size=10, try_gcs=False))
  1. Como parámetros opcionales para los métodos load_dataset, load_datasets y load_all_datasets.

dataset = collection_loader.load_dataset('ner', loader_kwargs=dict(split='train', batch_size=10, try_gcs=False))

Comentarios

Siempre buscamos mejorar el flujo de trabajo de la creación de conjuntos de datos, pero solo podemos hacerlo si conocemos los problemas que hay. ¿Qué problemas o errores encontró al crear la colección del conjunto de datos? ¿Hubo alguna parte que le resultó confusa o no funcionó la primera vez? Comparta sus comentarios en GitHub.