хранение плотных векторов в схеме таблиц Google BigQuery - PullRequest
0 голосов
/ 11 декабря 2018

Я создаю большой набор данных для хранения плотных векторов, представляющих пользователей (сгенерированных из алгоритма машинного обучения).Векторы могут иметь любую длину и всегда будут содержать float32.

Каков разумный способ структурировать мою схему для этого?Вот что у меня сейчас:

schema = [
    bigquery.SchemaField('user_id', 'INTEGER', mode='REQUIRED'),
    bigquery.SchemaField('embeddings', 'record', mode='REPEATED', fields=[
        bigquery.SchemaField('embedding', 'record', mode='REPEATED', fields=[
            bigquery.SchemaField('index', 'INTEGER', mode='REQUIRED'),
            bigquery.SchemaField('value', 'FLOAT', mode='REQUIRED')
        ]),
        bigquery.SchemaField('timestamp', 'TIMESTAMP', mode='REQUIRED'),
    ]),
]

1 Ответ

0 голосов
/ 12 декабря 2018

Решение здесь: Как добавить «массив строк» ​​в качестве значения схемы для BigQuery

В моем коде Python это выглядит так:

schema = [
    bigquery.SchemaField('user_id', 'INTEGER', mode='REQUIRED'),
    bigquery.SchemaField('embeddings', 'record', mode='REPEATED', fields=[
        bigquery.SchemaField('embedding', 'FLOAT', mode='REPEATED'),
        bigquery.SchemaField('timestamp', 'TIMESTAMP', mode='REQUIRED'),
    ]),
]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...