{ "info": { "author": "CyberZHG", "author_email": "CyberZHG@users.noreply.github.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Keras Transformer-XL\n\n[![Travis](https://travis-ci.org/CyberZHG/keras-transformer-xl.svg)](https://travis-ci.org/CyberZHG/keras-transformer-xl)\n[![Coverage](https://coveralls.io/repos/github/CyberZHG/keras-transformer-xl/badge.svg?branch=master)](https://coveralls.io/github/CyberZHG/keras-transformer-xl)\n[![Version](https://img.shields.io/pypi/v/keras-transformer-xl.svg)](https://pypi.org/project/keras-transformer-xl/)\n![Downloads](https://img.shields.io/pypi/dm/keras-transformer-xl.svg)\n![License](https://img.shields.io/pypi/l/keras-transformer-xl.svg)\n\n![](https://img.shields.io/badge/keras-tensorflow-blue.svg)\n![](https://img.shields.io/badge/keras-tf.keras-blue.svg)\n![](https://img.shields.io/badge/keras-tf.keras/eager-blue.svg)\n![](https://img.shields.io/badge/keras-tf.keras/2.0_beta-blue.svg)\n\n\\[[\u4e2d\u6587](https://github.com/CyberZHG/keras-transformer-xl/blob/master/README.zh-CN.md)|[English](https://github.com/CyberZHG/keras-transformer-xl/blob/master/README.md)\\]\n\nUnofficial implementation of [Transformer-XL](https://arxiv.org/pdf/1901.02860.pdf).\n\n## Install\n\n```bash\npip install keras-transformer-xl\n```\n\n## Usage\n\n### Load Pretrained Weights\n\nSeveral configuration files can be found at [the info directory](./keras_transformer_xl/info).\n\n```python\nimport os\nfrom keras_transformer_xl import load_trained_model_from_checkpoint\n\ncheckpoint_path = 'foo/bar/sota/enwiki8'\nmodel = load_trained_model_from_checkpoint(\n config_path=os.path.join(checkpoint_path, 'config.json'),\n checkpoint_path=os.path.join(checkpoint_path, 'model.ckpt')\n)\nmodel.summary()\n```\n\n### About IO\n\nThe generated model has two inputs, and the second input is the lengths of memories.\n\nYou can use `MemorySequence` wrapper for training and prediction:\n\n```python\nimport keras\nimport numpy as np\nfrom keras_transformer_xl import MemorySequence, build_transformer_xl\n\n\nclass DummySequence(keras.utils.Sequence):\n\n def __init__(self):\n pass\n\n def __len__(self):\n return 10\n\n def __getitem__(self, index):\n return np.ones((3, 5 * (index + 1))), np.ones((3, 5 * (index + 1), 3))\n\n\nmodel = build_transformer_xl(\n units=4,\n embed_dim=4,\n hidden_dim=4,\n num_token=3,\n num_block=3,\n num_head=2,\n batch_size=3,\n memory_len=20,\n target_len=10,\n)\nseq = MemorySequence(\n model=model,\n sequence=DummySequence(),\n target_len=10,\n)\n\nmodel.predict(model, seq, verbose=True)\n```\n\n### Use `tf.keras`\n\nAdd `TF_KERAS=1` to environment variables to use `tensorflow.python.keras`.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/CyberZHG/keras-transformer-xl", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "keras-transformer-xl", "package_url": "https://pypi.org/project/keras-transformer-xl/", "platform": "", "project_url": "https://pypi.org/project/keras-transformer-xl/", "project_urls": { "Homepage": "https://github.com/CyberZHG/keras-transformer-xl" }, "release_url": "https://pypi.org/project/keras-transformer-xl/0.11.0/", "requires_dist": null, "requires_python": "", "summary": "Transformer-XL implemented in Keras", "version": "0.11.0" }, "last_serial": 5718956, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "72f48d91182cee4812bf6f55332a83a0", "sha256": "d6b12e0886a697f079e7aaa055e275f81167542c17eceef7f7bb07ed2f107001" }, "downloads": -1, "filename": "keras-transformer-xl-0.1.0.tar.gz", "has_sig": false, "md5_digest": "72f48d91182cee4812bf6f55332a83a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11860, "upload_time": "2019-06-30T08:34:24", "url": "https://files.pythonhosted.org/packages/13/7f/3849223ee1225072c12188e43980cf6c5eae73dbd1637e9014eea43280e9/keras-transformer-xl-0.1.0.tar.gz" } ], "0.10.0": [ { "comment_text": "", "digests": { "md5": "04c9e63a27809128071ccdcab233fd8a", "sha256": "bc9845caa422d591782408c862d8c8c0cc4d1905455c2e294b00301905d1fa19" }, "downloads": -1, "filename": "keras-transformer-xl-0.10.0.tar.gz", "has_sig": false, "md5_digest": "04c9e63a27809128071ccdcab233fd8a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15671, "upload_time": "2019-07-30T02:19:37", "url": "https://files.pythonhosted.org/packages/14/ed/7e53a2a071f4a0a9d10691e9f5add30da38ebf2c57b81d807b4cc630c630/keras-transformer-xl-0.10.0.tar.gz" } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "bd55b6e0f4eb67b51a7807ba0d057897", "sha256": "621be3fef1668ac391207e04d2dd960550b0c782bf6dec3359d2a9b30a420506" }, "downloads": -1, "filename": "keras-transformer-xl-0.11.0.tar.gz", "has_sig": false, "md5_digest": "bd55b6e0f4eb67b51a7807ba0d057897", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15731, "upload_time": "2019-08-23T05:42:56", "url": "https://files.pythonhosted.org/packages/f7/67/a0d30945ed5dc272a2a5d376b828a161ef507898cff59bd5f2cdb21d112f/keras-transformer-xl-0.11.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "70c0185b80fc6752ef2879adcb85c762", "sha256": "e893d29ce1d01a6364944283708566283bc497748ecf5e14cdedca9bbf969b6e" }, "downloads": -1, "filename": "keras-transformer-xl-0.2.0.tar.gz", "has_sig": false, "md5_digest": "70c0185b80fc6752ef2879adcb85c762", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12187, "upload_time": "2019-06-30T09:15:27", "url": "https://files.pythonhosted.org/packages/de/98/9519f8d3063c5c5aa5c2f3818697e586b7aacf428347841eea907ad986bb/keras-transformer-xl-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "c8572b60b059db1eeb530a73181cbb41", "sha256": "19840ffc6eba4f9c2097e70186aeef60393cdbdcc1f9709871ad0e41cdcfcf6d" }, "downloads": -1, "filename": "keras-transformer-xl-0.2.1.tar.gz", "has_sig": false, "md5_digest": "c8572b60b059db1eeb530a73181cbb41", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12767, "upload_time": "2019-06-30T09:26:40", "url": "https://files.pythonhosted.org/packages/55/b3/133e1f8441ddff9df18262cdf8d78e309fe7d804292f994218ea93619274/keras-transformer-xl-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "adcd41e86ce5b609a33a6a0646b3d7e4", "sha256": "f19340b140416213beef30858ea654e8488db4f6791d4401c6645cac4b51898a" }, "downloads": -1, "filename": "keras-transformer-xl-0.3.0.tar.gz", "has_sig": false, "md5_digest": "adcd41e86ce5b609a33a6a0646b3d7e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12776, "upload_time": "2019-06-30T10:11:47", "url": "https://files.pythonhosted.org/packages/b4/18/31781fc78c8ed05ab588b6a6e8d477ebc54ba271d14dbf037f90d21f35aa/keras-transformer-xl-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "bb01c7a4ac1ae8c6d5e44fbc1c4f6cbd", "sha256": "124e7dc5a6ce8293b5df33855fdaf4d09b379d6ee8e84b84dd3ba15d15243da2" }, "downloads": -1, "filename": "keras-transformer-xl-0.3.1.tar.gz", "has_sig": false, "md5_digest": "bb01c7a4ac1ae8c6d5e44fbc1c4f6cbd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12786, "upload_time": "2019-06-30T10:15:08", "url": "https://files.pythonhosted.org/packages/37/c8/14179685449c5e87074535bdf6489e7c9d1c493b7aa1ed4188e95e044caa/keras-transformer-xl-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "fd12023521452649acdfa8b3602bc154", "sha256": "22379366aa160885735c374d66289e1ea4a1335bc3111ca9b80e098298c04993" }, "downloads": -1, "filename": "keras-transformer-xl-0.4.0.tar.gz", "has_sig": false, "md5_digest": "fd12023521452649acdfa8b3602bc154", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16628, "upload_time": "2019-06-30T13:45:57", "url": "https://files.pythonhosted.org/packages/fb/8e/667803d88b7f6b0950f00db07d9a050032d6f27f8199f6ce19c5fc08f01a/keras-transformer-xl-0.4.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "c44c944805ce4a38291240b1b42df6f7", "sha256": "58244e7ec04af6562cd1827096142410bac9c880b613aa5aa0e2cc99c7ae510f" }, "downloads": -1, "filename": "keras-transformer-xl-0.6.0.tar.gz", "has_sig": false, "md5_digest": "c44c944805ce4a38291240b1b42df6f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15587, "upload_time": "2019-07-06T11:00:08", "url": "https://files.pythonhosted.org/packages/bf/b7/59ae1605df6c0381f2e033b14133597a8873568c55f0a8e5b009d2c197e9/keras-transformer-xl-0.6.0.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "cdd59bc5cdf695b21a52356dc056f063", "sha256": "fe4e01be8bebc54e767fd0172337bc961f1445eba6742f6a61ca6d9b4cb9fe48" }, "downloads": -1, "filename": "keras-transformer-xl-0.7.0.tar.gz", "has_sig": false, "md5_digest": "cdd59bc5cdf695b21a52356dc056f063", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14563, "upload_time": "2019-07-15T14:48:37", "url": "https://files.pythonhosted.org/packages/f3/18/070c30e3489e1a33aae14012f3026b46c13185057430cd218c5a9a1ec877/keras-transformer-xl-0.7.0.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "400811ecdd06dfaa5375ce0f4917cf02", "sha256": "1f1ac940222547b43ac274399775a105fe1e6d764457dcf420951736c5968f7e" }, "downloads": -1, "filename": "keras-transformer-xl-0.8.0.tar.gz", "has_sig": false, "md5_digest": "400811ecdd06dfaa5375ce0f4917cf02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15552, "upload_time": "2019-07-16T05:54:49", "url": "https://files.pythonhosted.org/packages/3c/ee/1098c69afb8f45922b10c85c26648f381a31db613bbf831eda9b070a5d4c/keras-transformer-xl-0.8.0.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "71505a45fa6d3a73952834c115ab7ab0", "sha256": "bd71f731a71ce59b52d05a4dd1cad15ed8011c4eaf82f1b43fe11645c741ee4b" }, "downloads": -1, "filename": "keras-transformer-xl-0.9.0.tar.gz", "has_sig": false, "md5_digest": "71505a45fa6d3a73952834c115ab7ab0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15673, "upload_time": "2019-07-30T02:12:33", "url": "https://files.pythonhosted.org/packages/82/0d/204114f1bd24d651a8c771f28d2864855dfd4378c4c4269a8bc23e94d430/keras-transformer-xl-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bd55b6e0f4eb67b51a7807ba0d057897", "sha256": "621be3fef1668ac391207e04d2dd960550b0c782bf6dec3359d2a9b30a420506" }, "downloads": -1, "filename": "keras-transformer-xl-0.11.0.tar.gz", "has_sig": false, "md5_digest": "bd55b6e0f4eb67b51a7807ba0d057897", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15731, "upload_time": "2019-08-23T05:42:56", "url": "https://files.pythonhosted.org/packages/f7/67/a0d30945ed5dc272a2a5d376b828a161ef507898cff59bd5f2cdb21d112f/keras-transformer-xl-0.11.0.tar.gz" } ] }