Ayuda a proteger la Gran Barrera de Coral con TensorFlow en Kaggle Únete Challenge

razonamiento abstracto

l10n-PLACEHOLDER1 denota el conjunto de tipos de relación (progresión, XOR, OR, AND, unión consistente), \\(O\\) indica los tipos de objeto (forma, línea), y \\(A\\) denota los tipos de atributos (tamaño, color, número de posición). La estructura de una matriz, \\(S\\), es el conjunto de triples \\(S={[r, o, a]}\\) que determinan el desafío planteado por una matriz particular. Para usar este conjunto de datos: `` `python import tensorflow_datasets as tfds ds = tfds.load ('abstract_reasoning', split = 'train') for ex in ds.take (4): print (ex)` `` Ver [la guía ] (https://www.tensorflow.org/datasets/overview) para obtener más información sobre [tensorflow_datasets] (https://www.tensorflow.org/datasets). "/>
  • Descripción:

Los datos de matrices generadas por procedimientos (PGM) del artículo Midiendo el razonamiento abstracto en redes neuronales, Barrett, Hill, Santoro et al. 2018. El objetivo es inferir la respuesta correcta de los paneles de contexto basados ​​en un razonamiento abstracto.

Para usar este conjunto de datos, descargue todos los archivos * .tar.gz de la página del conjunto de datos y colóquelos en ~ / tensorflow_datasets / abstract_reasoning /.

\(R\) denota el conjunto de tipos de relación (progresión, XOR, OR, AND, unión consistente), \(O\) indica los tipos de objeto (forma, línea), y \(A\) denota los tipos de atributos (tamaño, color, posición, número). La estructura de una matriz,\(S\), es el conjunto de triples \(S={[r, o, a]}\) que determinan el desafío planteado por una matriz particular.

Separar Ejemplos de
'test' 200.000
'train' 1.200.000
'validation' 20.000
  • características:
FeaturesDict({
    'answers': Video(Image(shape=(160, 160, 1), dtype=tf.uint8)),
    'context': Video(Image(shape=(160, 160, 1), dtype=tf.uint8)),
    'filename': Text(shape=(), dtype=tf.string),
    'meta_target': Tensor(shape=(12,), dtype=tf.int64),
    'relation_structure_encoded': Tensor(shape=(4, 12), dtype=tf.int64),
    'target': ClassLabel(shape=(), dtype=tf.int64, num_classes=8),
})
@InProceedings{pmlr-v80-barrett18a,
  title =    {Measuring abstract reasoning in neural networks},
  author =   {Barrett, David and Hill, Felix and Santoro, Adam and Morcos, Ari and Lillicrap, Timothy},
  booktitle =    {Proceedings of the 35th International Conference on Machine Learning},
  pages =    {511--520},
  year =     {2018},
  editor =   {Dy, Jennifer and Krause, Andreas},
  volume =   {80},
  series =   {Proceedings of Machine Learning Research},
  address =      {Stockholmsmassan, Stockholm Sweden},
  month =    {10--15 Jul},
  publisher =    {PMLR},
  pdf =      {http://proceedings.mlr.press/v80/barrett18a/barrett18a.pdf},
  url =      {http://proceedings.mlr.press/v80/barrett18a.html},
  abstract =     {Whether neural networks can learn abstract reasoning or whetherthey merely rely on superficial statistics is a topic of recent debate. Here, we propose a dataset and challenge designed to probe abstract reasoning, inspired by a well-known human IQ test. To succeed at this challenge, models must cope with various generalisation 'regimes' in which the training data and test questions differ in clearly-defined ways. We show that popular models such as ResNets perform poorly, even when the training and test sets differ only minimally, and we present a novel architecture, with structure designed to encourage reasoning, that does significantly better. When we vary the way in which the test questions and training data differ, we find that our model is notably proficient at certain forms of generalisation, but notably weak at others. We further show that the model's ability to generalise improves markedly if it is trained to predict symbolic explanations for its answers. Altogether, we introduce and explore ways to both measure and induce stronger abstract reasoning in neural networks. Our freely-available dataset should motivate further progress in this direction.}
}

abstract_reasoning / neutral (configuración predeterminada)

  • Descripción Config: Las estructuras que codifican las matrices tanto en el
    la formación y las pruebas conjuntos contienen triples \([r, o, a]\) para \(r \\in R\),
    \(o \\in O\)y \(a \\in A\). Los conjuntos de entrenamiento y prueba son inconexos, con
    separación que se produce a nivel de las variables de entrada (es decir, píxeles
    manifestaciones).

  • Ejemplos ( tfds.as_dataframe ):

razonamiento_abstracto / interpolación

  • Descripción config: Al igual que en la división neutral, \(S\) consistió en cualquier
    triples \([r, o, a]\). Para la interpolación, en el conjunto de entrenamiento, cuando el
    atributo era "color" o "tamaño" (es decir, los atributos ordenados), los valores de
    los atributos estaban restringidos a miembros con índices pares de un conjunto discreto,
    mientras que en el conjunto de prueba solo se permitieron valores con índices impares. Tenga en cuenta que todos
    \(S\) contenían algunos de triple \([r, o, a]\) con el color o el tamaño del atributo.
    Por lo tanto, se requiere generalización para todas las preguntas del conjunto de pruebas.

  • Ejemplos ( tfds.as_dataframe ):

razonamiento_abstracto / extrapolación

  • Descripción config: Igual que en la interpolación, pero los valores de
    los atributos estaban restringidos a la mitad inferior del conjunto discreto durante
    entrenamiento, mientras que en el conjunto de prueba tomaron valores en la mitad superior.

  • Ejemplos ( tfds.as_dataframe ):

razonamiento_abstracto / attr.rel.pairs

  • Descripción Config: Todos los \(S\) contenidas al menos dos triples,
    \(([r_1,o_1,a_1],[r_2,o_2,a_2]) = (t_1, t_2)\), de los cuales 400 son viables. Nosotros
    asignados aleatoriamente 360 ​​al conjunto de entrenamiento y 40 al conjunto de prueba. Miembros
    \((t_1, t_2)\) de los 40 pares en poder de salida no se produjo juntos en estructuras\(S\)
    en el conjunto de entrenamiento y todas las estructuras \(S\) tenido al menos una de estas parejas
    \((t_1, t_2)\) como un subconjunto.

  • Ejemplos ( tfds.as_dataframe ):

razonamiento_abstracto / attr.rels

  • Descripción config: En nuestra base de datos, hay 29 posibles único
    triples \([r,o,a]\). Asignamos siete de estos para el conjunto de prueba, al azar,
    pero de tal manera que cada uno de los atributos se representó exactamente una vez en este conjunto.
    Estos triples retenidos nunca ocurrieron en preguntas en el conjunto de entrenamiento, y
    cada \(S\) en la prueba contenía al menos uno de ellos.

  • Ejemplos ( tfds.as_dataframe ):

razonamiento_abstracto / attrs.pairs

  • Descripción Config: \(S\) contenía al menos dos triples. Hay 20
    (no ordenadas) pares viables de atributos \((a_1, a_2)\) tal que para algunos
    \(r_i, o_i, ([r_1,o_1,a_1],[r_2,o_2,a_2])\) es un par de triple viables
    \(([r_1,o_1,a_1],[r_2,o_2,a_2]) = (t_1, t_2)\). Asignamos 16 de estos pares
    para entrenamiento y cuatro para pruebas. Para un par \((a_1, a_2)\) en el conjunto de prueba,
    \(S\) en el conjunto de entrenamiento contenía triples con \(a_1\) o \(a_2\). En la prueba
    set, todos \(S\) contenían triples con \(a_1\) y \(a_2\).

  • Ejemplos ( tfds.as_dataframe ):

razonamiento_abstracto / attrs.shape.color

  • Descripción config: atributo de la forma color mantenidas a cabo. \(S\) en
    el conjunto de entrenamiento no contenía triples con \(o\)= forma y \(a\)= color.
    Todas las estructuras que gobiernan los rompecabezas en el conjunto de prueba contenían al menos un triple
    con \(o\)= forma y \(a\)= color.

  • Ejemplos ( tfds.as_dataframe ):

razonamiento_abstracto / attrs.line.type

  • Descripción config: atributo de línea de tipo mantenidas a cabo. \(S\) en
    el conjunto de entrenamiento no contenía triples con \(o\)= línea y \(a\)= tipo.
    Todas las estructuras que gobiernan los rompecabezas en el conjunto de prueba contenían al menos un triple
    con \(o\)= línea y \(a\)= tipo.

  • Ejemplos ( tfds.as_dataframe ):