Skip to main content

A high-performance framework for training wide-and-deep recommender systems on heterogeneous cluster

Project description

HybridBackend

cibuild readthedocs PRs Welcome license

HybridBackend is a high-performance framework for training wide-and-deep recommender systems on heterogeneous cluster.

Features

  • Memory-efficient loading of categorical data
  • GPU-efficient orchestration of embedding layers
  • Communication-efficient training and evaluation at scale
  • Easy to use with existing AI workflows

Usage

A minimal example:

import tensorflow as tf
import hybridbackend.tensorflow as hb

ds = hb.data.Dataset.from_parquet(filenames)
ds = ds.batch(batch_size)
# ...

with tf.device('/gpu:0'):
  embs = tf.nn.embedding_lookup_sparse(weights, input_ids)
  # ...

Please see documentation for more information.

Install

Method 1: Install from PyPI

pip install {PACKAGE}

{PACKAGE} Dependency Python CUDA GLIBC Data Opt. Embedding Opt. Parallelism Opt.
hybridbackend-tf115-cu118 TensorFlow 1.15 1 3.8 11.8 >=2.31
hybridbackend-tf115-cu100 TensorFlow 1.15 3.6 10.0 >=2.27
hybridbackend-tf115-cpu TensorFlow 1.15 3.6 - >=2.24
hybridbackend-deeprec2212-cu114 DeepRec 22.12 2 3.6 11.4 >=2.27

1: Suggested docker image: nvcr.io/nvidia/tensorflow:23.02-tf1-py3

2: Suggested docker image: registry.cn-shanghai.aliyuncs.com/pai-dlc/tensorflow-training:deeprec2212-gpu-py36-cu114-ubuntu18.04

Method 2: Build from source

See Building Instructions.

License

HybridBackend is licensed under the Apache 2.0 License.

Community

  • Please see Contributing Guide before your first contribution.

  • Please register as an adopter if your organization is interested in adoption. We will discuss RoadMap with registered adopters in advance.

  • Please cite HybridBackend in your publications if it helps:

    @inproceedings{zhang2022picasso,
      title={PICASSO: Unleashing the Potential of GPU-centric Training for Wide-and-deep Recommender Systems},
      author={Zhang, Yuanxing and Chen, Langshi and Yang, Siran and Yuan, Man and Yi, Huimin and Zhang, Jie and Wang, Jiamang and Dong, Jianbo and Xu, Yunlong and Song, Yue and others},
      booktitle={2022 IEEE 38th International Conference on Data Engineering (ICDE)},
      year={2022},
      organization={IEEE}
    }
    

Contact Us

If you would like to share your experiences with others, you are welcome to contact us in DingTalk:

dingtalk

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

hybridbackend_deeprec2212_cu114-0.8.0.dev1679289143-cp36-cp36m-manylinux_2_27_x86_64.whl (47.6 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.27+ x86-64

File details

Details for the file hybridbackend_deeprec2212_cu114-0.8.0.dev1679289143-cp36-cp36m-manylinux_2_27_x86_64.whl.

File metadata

File hashes

Hashes for hybridbackend_deeprec2212_cu114-0.8.0.dev1679289143-cp36-cp36m-manylinux_2_27_x86_64.whl
Algorithm Hash digest
SHA256 c1c1b93a8732c676d14dccd89b65b10914e5dae127241579f5977b6c20fbdc57
MD5 e4b6764a9c682401f965c134b3956cf8
BLAKE2b-256 42268007a97a5586c099820848cad96916b72be3adcc53d9562f406b0c31ed2a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page