Распределенный TF: как работать с очень большой разреженной моделью LR с 5 миллиардами функций? - PullRequest
0 голосов
/ 21 декабря 2018

Я пытаюсь обучить модель LR с выборками в разреженном векторе признаков, используя сервер параметров в TF.Индекс идентификатора функции достигает 5 миллиардов, а плотный размер выборки составляет около 5000.

Используя tf.feature_column.categorical_column_with_identity с num_buckets 5 миллиардов, главный работник может легко потреблять около 100 ГБ памяти и быть уничтоженнымсистема, когда она пытается сохранить контрольную точку-0 до начала обучения.Я также попробовал tf.feature_column.categorical_column_with_hash_bucket с hash_buckets_size 5B и не получил удачи.

Поскольку у меня только один слот функции, и каждый идентификатор функции соответствует определенной функции, я не хочу выполнять какие-либо операции встраивания вуменьшить размер функции.

Есть ли способ уменьшить потребление памяти главным работником?

Другая информация в моей модели:

данные хранятся в TFRecord;

номер выборки около 55M;

, оптимизатор - FTRL;

batch_size может быть 64/128/256/512;

...