Pomoc chronić Wielkiej Rafy Koralowej z TensorFlow na Kaggle Dołącz Wyzwanie

abstrakcyjne rozumowanie

l10n-PLACEHOLDER1 oznacza zestaw typów równanie (postęp XOR, OR, A, zgodnie związek) \\(O\\) oznacza rodzajów obiektów (kształt, linia) i \\(A\\) oznacza typy atrybutów (rozmiar, kolor stanowisko, numer). Konstrukcja matrycy \\(S\\)jest zestaw potrójne \\(S={[r, o, a]}\\) które określają problemu postawionego przez poszczególnego podłoża. Aby użyć tego zestawu danych: ```python import tensorflow_datasets jako tfds ds = tfds.load('abstract_reasoning', split='train') for ex w ds.take(4): print(ex) ``` Zobacz [przewodnik ](https://www.tensorflow.org/datasets/overview), aby uzyskać więcej informacji na temat [tensorflow_datasets](https://www.tensorflow.org/datasets). " />
  • opis:

Dane proceduralnie generowane w macierzach (PGM) z artykułu Measurement Abstract Reasoning in Neural Networks, Barrett, Hill, Santoro et al. 2018. Celem jest wywnioskowanie poprawnej odpowiedzi z paneli kontekstowych na podstawie rozumowania abstrakcyjnego.

Aby użyć tego zestawu danych, pobierz wszystkie pliki *.tar.gz ze strony zestawu danych i umieść je w ~/tensorflow_datasets/abstract_reasoning/.

\(R\) oznacza zestaw typów równanie (postęp XOR, OR, A, zgodnie związek), \(O\) oznacza rodzajów obiektów (kształt, wiersz) i \(A\) oznacza typy atrybutów (wielkość, kolor, umiejscowienie, numer). Struktura osnowy,\(S\)jest zestaw trójek \(S={[r, o, a]}\) determinujących problemu postawionego przez poszczególnego podłoża.

Podział Przykłady
'test' 200 000
'train' 1 200 000
'validation' 20 000
  • Cechy:
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/neutralny (konfiguracja domyślna)

  • Opis konfiguracji: Struktury kodujące matryc w Zarówno
    szkolenia oraz zestawy testowe zawierają żadnych trójek \([r, o, a]\) dla \(r \\in R\),
    \(o \\in O\)i \(a \\in A\). Zestawy treningowe i testowe są rozłączne, z
    separacja występująca na poziomie zmiennych wejściowych (tj. piksel
    manifestacje).

  • Przykłady ( tfds.as_dataframe ):

abstract_reasoning/interpolacja

  • Opis config: Jak w neutralnym Split, \(S\) składał dowolny
    trzyosobowe \([r, o, a]\). Do interpolacji, w zbiorze uczącym, gdy
    atrybut był „kolor” lub „rozmiar” (tj. uporządkowane atrybuty), wartości
    atrybuty były ograniczone do parzystych elementów zbioru dyskretnego,
    podczas gdy w zestawie testowym dozwolone były tylko nieparzyste wartości indeksowane. Zauważ, że wszystkie
    \(S\) zawierał nieco potrójne \([r, o, a]\) kolorem lub atrybut rozmiaru.
    Dlatego dla każdego pytania w zestawie testowym wymagane jest uogólnienie.

  • Przykłady ( tfds.as_dataframe ):

abstract_reasoning/extrapolation

  • Opis config: Tak samo jak w interpolacji, ale wartości
    atrybuty były ograniczone do dolnej połowy zestawu dyskretnego podczas
    treningu, podczas gdy w zbiorze testowym przyjęły wartości w górnej połowie.

  • Przykłady ( tfds.as_dataframe ):

abstract_reasoning/attr.rel.pairs

  • Opis config: Wszystkie \(S\) zawarte co najmniej dwa trzyosobowe,
    \(([r_1,o_1,a_1],[r_2,o_2,a_2]) = (t_1, t_2)\), z czego 400 są rentowne. My
    losowo przydzielono 360 do zestawu treningowego i 40 do zestawu testowego. Członkowie
    \((t_1, t_2)\) z 40 odstawionej pary nie występują razem w strukturach\(S\)
    w zbiorze treningowym i wszystkich struktur \(S\) miał co najmniej jedną taką parę
    \((t_1, t_2)\) jako podzbiór.

  • Przykłady ( tfds.as_dataframe ):

abstract_reasoning/attr.rels

  • Opis config: W naszym zbiorze, są 29 możliwe jest wyjątkowy
    trzyosobowe \([r,o,a]\). Przydzieliliśmy siedem z nich do zestawu testowego, losowo,
    ale tak, że każdy z atrybutów był reprezentowany dokładnie raz w tym zestawie.
    Te przeciągnięte trójki nigdy nie pojawiły się w pytaniach zestawu treningowego i
    każdy \(S\) w zestawie testowym zawierało przynajmniej jedną z nich.

  • Przykłady ( tfds.as_dataframe ):

abstract_reasoning/attrs.pairs

  • Opis konfiguracji: \(S\) zawierał co najmniej dwie trójki. Jest 20
    (nieuporządkowane) żywotnych pary atrybutów \((a_1, a_2)\) , że dla pewnego
    \(r_i, o_i, ([r_1,o_1,a_1],[r_2,o_2,a_2])\) jest potrójną para
    \(([r_1,o_1,a_1],[r_2,o_2,a_2]) = (t_1, t_2)\). Przydzieliliśmy 16 z tych par
    na szkolenie i cztery na testy. Dla pary \((a_1, a_2)\) w zestawie testowym,
    \(S\) w zbiorze treningowym zawarte trójek z \(a_1\) lub \(a_2\). W teście
    zestaw, wszystkie \(S\) zawarte trójek z \(a_1\) i \(a_2\).

  • Przykłady ( tfds.as_dataframe ):

abstract_reasoning/attrs.shape.color

  • Opis config: Held-out atrybut kształt kolor. \(S\) w
    zbiorze treningowym nie zawierał trójek z \(o\)= kształtu i \(a\)= koloru.
    Wszystkie struktury rządzące łamigłówkami w zestawie testowym zawierały co najmniej jedną trójkę
    z \(o\)= kształtu i \(a\)= koloru.

  • Przykłady ( tfds.as_dataframe ):

abstract_reasoning/attrs.line.type

  • Opis config: Held-out line-typ atrybutu. \(S\) w
    zbiorze treningowym nie zawierał trójek z \(o\)= linii i \(a\)= typu.
    Wszystkie struktury rządzące łamigłówkami w zestawie testowym zawierały co najmniej jedną trójkę
    z \(o\)= linii i \(a\)= typu.

  • Przykłady ( tfds.as_dataframe ):