├── .gitignore ├── LICENSE ├── README.md ├── data └── english_text.txt ├── notebooks ├── maximum_cut.ipynb └── summarization.ipynb ├── poetry.lock └── pyproject.toml /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Created by https://www.toptal.com/developers/gitignore/api/python 3 | # Edit at https://www.toptal.com/developers/gitignore?templates=python 4 | 5 | ### Python ### 6 | # Byte-compiled / optimized / DLL files 7 | __pycache__/ 8 | *.py[cod] 9 | *$py.class 10 | 11 | # C extensions 12 | *.so 13 | 14 | # Distribution / packaging 15 | .Python 16 | build/ 17 | develop-eggs/ 18 | dist/ 19 | downloads/ 20 | eggs/ 21 | .eggs/ 22 | lib/ 23 | lib64/ 24 | parts/ 25 | sdist/ 26 | var/ 27 | wheels/ 28 | pip-wheel-metadata/ 29 | share/python-wheels/ 30 | *.egg-info/ 31 | .installed.cfg 32 | *.egg 33 | MANIFEST 34 | 35 | # PyInstaller 36 | # Usually these files are written by a python script from a template 37 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 38 | *.manifest 39 | *.spec 40 | 41 | # Installer logs 42 | pip-log.txt 43 | pip-delete-this-directory.txt 44 | 45 | # Unit test / coverage reports 46 | htmlcov/ 47 | .tox/ 48 | .nox/ 49 | .coverage 50 | .coverage.* 51 | .cache 52 | nosetests.xml 53 | coverage.xml 54 | *.cover 55 | *.py,cover 56 | .hypothesis/ 57 | .pytest_cache/ 58 | pytestdebug.log 59 | 60 | # Translations 61 | *.mo 62 | *.pot 63 | 64 | # Django stuff: 65 | *.log 66 | local_settings.py 67 | db.sqlite3 68 | db.sqlite3-journal 69 | 70 | # Flask stuff: 71 | instance/ 72 | .webassets-cache 73 | 74 | # Scrapy stuff: 75 | .scrapy 76 | 77 | # Sphinx documentation 78 | docs/_build/ 79 | doc/_build/ 80 | 81 | # PyBuilder 82 | target/ 83 | 84 | # Jupyter Notebook 85 | .ipynb_checkpoints 86 | 87 | # IPython 88 | profile_default/ 89 | ipython_config.py 90 | 91 | # pyenv 92 | .python-version 93 | 94 | # pipenv 95 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 96 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 97 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 98 | # install all needed dependencies. 99 | #Pipfile.lock 100 | 101 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow 102 | __pypackages__/ 103 | 104 | # Celery stuff 105 | celerybeat-schedule 106 | celerybeat.pid 107 | 108 | # SageMath parsed files 109 | *.sage.py 110 | 111 | # Environments 112 | .env 113 | .venv 114 | env/ 115 | venv/ 116 | ENV/ 117 | env.bak/ 118 | venv.bak/ 119 | 120 | # Spyder project settings 121 | .spyderproject 122 | .spyproject 123 | 124 | # Rope project settings 125 | .ropeproject 126 | 127 | # mkdocs documentation 128 | /site 129 | 130 | # mypy 131 | .mypy_cache/ 132 | .dmypy.json 133 | dmypy.json 134 | 135 | # Pyre type checker 136 | .pyre/ 137 | 138 | # pytype static type analyzer 139 | .pytype/ 140 | 141 | # End of https://www.toptal.com/developers/gitignore/api/python 142 | 143 | # Data 144 | data/*.zip 145 | data/*.npy 146 | data/*.model 147 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 mullzhang 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # quantum-nlp 2 | NLP (Natural Language Processing) using quantum annealer 3 | 4 | ## notebooks 5 | 6 | - [Document Summarization](notebooks/summarization.ipynb) 7 | - [Maxixmum Cut on word2vec](notebooks/maximum_cut.ipynb) -------------------------------------------------------------------------------- /data/english_text.txt: -------------------------------------------------------------------------------- 1 | Thank you. I'm honored to be with you today for your commencement from one of the finest universities in the world. Truth be told, I never graduated from college and this is the closest I've ever gotten to a college graduation. 2 | 3 | Today I want to tell you three stories from my life. That's it. No big deal. Just three stories. The first story is about connecting the dots. 4 | 5 | I dropped out of Reed College after the first six months but then stayed around as a drop-in for another eighteen months or so before I really quit. So why did I drop out? It started before I was born. My biological mother was a young, unwed graduate student, and she decided to put me up for adoption. She felt very strongly that I should be adopted by college graduates, so everything was all set for me to be adopted at birth by a lawyer and his wife, except that when I popped out, they decided at the last minute that they really wanted a girl. So my parents, who were on a waiting list, got a call in the middle of the night asking, "We've got an unexpected baby boy. Do you want him?" They said, "Of course." My biological mother found out later that my mother had never graduated from college and that my father had never graduated from high school. She refused to sign the final adoption papers. She only relented a few months later when my parents promised that I would go to college. 6 | 7 | This was the start in my life. And seventeen years later, I did go to college, but I naïvely chose a college that was almost as expensive as Stanford, and all of my working-class parents' savings were being spent on my college tuition. After six months, I couldn't see the value in it. I had no idea what I wanted to do with my life, and no idea of how college was going to help me figure it out, and here I was, spending all the money my parents had saved their entire life. So I decided to drop out and trust that it would all work out OK. It was pretty scary at the time, but looking back, it was one of the best decisions I ever made. The minute I dropped out, I could stop taking the required classes that didn't interest me and begin dropping in on the ones that looked far more interesting. 8 | 9 | It wasn't all romantic. I didn't have a dorm room, so I slept on the floor in friends' rooms. I returned Coke bottles for the five-cent deposits to buy food with, and I would walk the seven miles across town every Sunday night to get one good meal a week at the Hare Krishna temple. I loved it. And much of what I stumbled into by following my curiosity and intuition turned out to be priceless later on. Let me give you one example. 10 | 11 | Reed College at that time offered perhaps the best calligraphy instruction in the country. Throughout the campus every poster, every label on every drawer was beautifully hand-calligraphed. Because I had dropped out and didn't have to take the normal classes, I decided to take a calligraphy class to learn how to do this. I learned about serif and sans-serif typefaces, about varying the amount of space between different letter combinations, about what makes great typography great. It was beautiful, historical, artistically subtle in a way that science can't capture, and I found it fascinating. 12 | 13 | None of this had even a hope of any practical application in my life. But ten years later when we were designing the first Macintosh computer, it all came back to me, and we designed it all into the Mac. It was the first computer with beautiful typography. If I had never dropped in on that single course in college, the Mac would have never had multiple typefaces or proportionally spaced fonts, and since Windows just copied the Mac, it's likely that no personal computer would have them. 14 | 15 | If I had never dropped out, I would have never dropped in on that calligraphy class and personals computers might not have the wonderful typography that they do. 16 | 17 | Of course it was impossible to connect the dots looking forward when I was in college, but it was very, very clear looking backwards 10 years later. Again, you can't connect the dots looking forward. You can only connect them looking backwards, so you have to trust that the dots will somehow connect in your future. You have to trust in something--your gut, destiny, life, karma, whatever--because believing that the dots will connect down the road will give you the confidence to follow your heart, even when it leads you off the well-worn path, and that will make all the difference. 18 | 19 | My second story is about love and loss. I was lucky. I found what I loved to do early in life. Woz and I started Apple in my parents' garage when I was twenty. We worked hard and in ten years, Apple had grown from just the two of us in a garage into a $2 billion company with over 4,000 employees. We'd just released our finest creation, the Macintosh, a year earlier, and I'd just turned thirty, and then I got fired. How can you get fired from a company you started? Well, as Apple grew, we hired someone who I thought was very talented to run the company with me, and for the first year or so, things went well. But then our visions of the future began to diverge, and eventually we had a falling out. When we did, our board of directors sided with him, and so at thirty, I was out, and very publicly out. What had been the focus of my entire adult life was gone, and it was devastating. I really didn't know what to do for a few months. I felt that I had let the previous generation of entrepreneurs down, that I had dropped the baton as it was being passed to me. I met with David Packard and Bob Noyce and tried to apologize for screwing up so badly. I was a very public failure and I even thought about running away from the Valley. But something slowly began to dawn on me. I still loved what I did. The turn of events at Apple had not changed that one bit. I'd been rejected but I was still in love. And so I decided to start over. 20 | 21 | I didn't see it then, but it turned out that getting fired from Apple was the best thing that could have ever happened to me. The heaviness of being successful was replaced by the lightness of being a beginner again, less sure about everything. It freed me to enter one of the most creative periods in my life. During the next five years I started a company named NeXT, another company named Pixar and fell in love with an amazing woman who would become my wife. Pixar went on to create the world's first computer-animated feature film, "Toy Story," and is now the most successful animation studio in the world. 22 | 23 | In a remarkable turn of events, Apple bought NeXT and I returned to Apple and the technology we developed at NeXT is at the heart of Apple's current renaissance, and Lorene and I have a wonderful family together. 24 | 25 | I'm pretty sure none of this would have happened if I hadn't been fired from Apple. It was awful-tasting medicine but I guess the patient needed it. Sometimes life's going to hit you in the head with a brick. Don't lose faith. I'm convinced that the only thing that kept me going was that I loved what I did. You've got to find what you love, and that is as true for work as it is for your lovers. Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work, and the only way to do great work is to love what you do. If you haven't found it yet, keep looking, and don't settle. As with all matters of the heart, you'll know when you find it, and like any great relationship it just gets better and better as the years roll on. So keep looking. Don't settle. 26 | 27 | My third story is about death. When I was 17 I read a quote that went something like "If you live each day as if it was your last, someday you'll most certainly be right." It made an impression on me, and since then, for the past 33 years, I have looked in the mirror every morning and asked myself, "If today were the last day of my life, would I want to do what I am about to do today?" And whenever the answer has been "no" for too many days in a row, I know I need to change something. Remembering that I'll be dead soon is the most important thing I've ever encountered to help me make the big choices in life, because almost everything--all external expectations, all pride, all fear of embarrassment or failure--these things just fall away in the face of death, leaving only what is truly important. Remembering that you are going to die is the best way I know to avoid the trap of thinking you have something to lose. You are already naked. There is no reason not to follow your heart. 28 | 29 | About a year ago, I was diagnosed with cancer. I had a scan at 7:30 in the morning and it clearly showed a tumor on my pancreas. I didn't even know what a pancreas was. The doctors told me this was almost certainly a type of cancer that is incurable, and that I should expect to live no longer than three to six months. My doctor advised me to go home and get my affairs in order, which is doctors' code for "prepare to die." It means to try and tell your kids everything you thought you'd have the next ten years to tell them, in just a few months. It means to make sure that everything is buttoned up so that it will be as easy as possible for your family. It means to say your goodbyes. 30 | 31 | I lived with that diagnosis all day. Later that evening I had a biopsy where they stuck an endoscope down my throat, through my stomach into my intestines, put a needle into my pancreas and got a few cells from the tumor. I was sedated but my wife, who was there, told me that when they viewed the cells under a microscope, the doctor started crying, because it turned out to be a very rare form of pancreatic cancer that is curable with surgery. I had the surgery and, thankfully, I am fine now. 32 | 33 | This was the closest I've been to facing death, and I hope it's the closest I get for a few more decades. Having lived through it, I can now say this to you with a bit more certainty than when death was a useful but purely intellectual concept. No one wants to die, even people who want to go to Heaven don't want to die to get there, and yet, death is the destination we all share. No one has ever escaped it. And that is as it should be, because death is very likely the single best invention of life. It's life's change agent; it clears out the old to make way for the new. right now, the new is you. But someday, not too long from now, you will gradually become the old and be cleared away. Sorry to be so dramatic, but it's quite true. Your time is limited, so don't waste it living someone else's life. Don't be trapped by dogma, which is living with the results of other people's thinking. Don't let the noise of others' opinions drown out your own inner voice, heart and intuition. They somehow already know what you truly want to become. Everything else is secondary. 34 | 35 | When I was young, there was an amazing publication called The Whole Earth Catalogue, which was one of the bibles of my generation. It was created by a fellow named Stuart Brand not far from here in Menlo Park, and he brought it to life with his poetic touch. This was in the late Sixties, before personal computers and desktop publishing, so it was all made with typewriters, scissors, and Polaroid cameras. it was sort of like Google in paperback form thirty-five years before Google came along. I was idealistic, overflowing with neat tools and great notions. Stuart and his team put out several issues of the The Whole Earth Catalogue, and then when it had run its course, they put out a final issue. It was the mid-Seventies and I was your age. On the back cover of their final issue was a photograph of an early morning country road, the kind you might find yourself hitchhiking on if you were so adventurous. Beneath were the words, "Stay hungry, stay foolish." It was their farewell message as they signed off. "Stay hungry, stay foolish." And I have always wished that for myself, and now, as you graduate to begin anew, I wish that for you. Stay hungry, stay foolish. 36 | 37 | Thank you all, very much. -------------------------------------------------------------------------------- /notebooks/maximum_cut.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Maximum Cut on word2vec\n", 8 | "\n", 9 | "## References\n", 10 | "\n", 11 | "- https://en.wikipedia.org/wiki/Maximum_cut\n", 12 | "- https://qiita.com/s_zh/items/ecbd82ff9e440d9e522e" 13 | ] 14 | }, 15 | { 16 | "cell_type": "code", 17 | "execution_count": null, 18 | "metadata": {}, 19 | "outputs": [], 20 | "source": [ 21 | "# Source: https://aial.shiroyagi.co.jp/2017/02/japanese-word2vec-model-builder/\n", 22 | "!mkdir ../data\n", 23 | "!wget -P '../data' 'http://public.shiroyagi.s3.amazonaws.com/latest-ja-word2vec-gensim-model.zip'\n", 24 | "!unzip -d '../data' '../data/latest-ja-word2vec-gensim-model.zip'" 25 | ] 26 | }, 27 | { 28 | "cell_type": "code", 29 | "execution_count": 1, 30 | "metadata": {}, 31 | "outputs": [], 32 | "source": [ 33 | "from gensim.models import word2vec\n", 34 | "\n", 35 | "model_file = '../data/word2vec.gensim.model'\n", 36 | "model = word2vec.Word2Vec.load(model_file)" 37 | ] 38 | }, 39 | { 40 | "cell_type": "code", 41 | "execution_count": 2, 42 | "metadata": {}, 43 | "outputs": [ 44 | { 45 | "data": { 46 | "image/png": "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\n", 47 | "text/plain": [ 48 | "
" 49 | ] 50 | }, 51 | "metadata": {}, 52 | "output_type": "display_data" 53 | } 54 | ], 55 | "source": [ 56 | "import networkx as nx\n", 57 | "\n", 58 | "def init_graph(word_list, model, edge_type='discrete'):\n", 59 | " wv = model.wv\n", 60 | "\n", 61 | " gph = nx.DiGraph()\n", 62 | " for idx, x in enumerate(word_list):\n", 63 | " gph.add_node(idx)\n", 64 | " for idy, y in enumerate(word_list):\n", 65 | " if edge_type == 'discrete' and y != x and wv.similarity(x, y) > 0.5:\n", 66 | " gph.add_edge(idx, idy)\n", 67 | " return gph\n", 68 | "\n", 69 | "word_list = ['易', '理論', '製図', '計算', 'CAD', '算盤', '数学',\n", 70 | " '測量', '算', '大工', '集大成', '手本', '関数', '模範',\n", 71 | " '算術', '暗算', '釈', '土木', 'コンピュータ']\n", 72 | "word_graph = init_graph(word_list, model)\n", 73 | "\n", 74 | "pos = nx.drawing.layout.spring_layout(word_graph)\n", 75 | "nx.draw(word_graph, pos, with_labels=True)" 76 | ] 77 | }, 78 | { 79 | "cell_type": "code", 80 | "execution_count": 3, 81 | "metadata": {}, 82 | "outputs": [ 83 | { 84 | "name": "stdout", 85 | "output_type": "stream", 86 | "text": [ 87 | "{3, 5, 7, 9, 10, 13, 14, 16, 18}\n", 88 | "9 ['計算', '算盤', '測量', '大工', '集大成', '模範', '算術', '釈', 'コンピュータ']\n" 89 | ] 90 | } 91 | ], 92 | "source": [ 93 | "import dwave_networkx as dnx\n", 94 | "from neal import SimulatedAnnealingSampler\n", 95 | "\n", 96 | "sampler = SimulatedAnnealingSampler()\n", 97 | "result = dnx.maximum_cut(word_graph, sampler)\n", 98 | "\n", 99 | "print(result)\n", 100 | "print(len(result), [word_list[i] for i in result])" 101 | ] 102 | }, 103 | { 104 | "cell_type": "code", 105 | "execution_count": 4, 106 | "metadata": {}, 107 | "outputs": [ 108 | { 109 | "data": { 110 | "image/png": "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\n", 111 | "text/plain": [ 112 | "
" 113 | ] 114 | }, 115 | "metadata": {}, 116 | "output_type": "display_data" 117 | } 118 | ], 119 | "source": [ 120 | "import matplotlib.pyplot as plt\n", 121 | "\n", 122 | "def show_result(result, word_graph):\n", 123 | " plt.figure(figsize=(9, 6))\n", 124 | " nx.draw_networkx_nodes(word_graph, pos, node_size=400, nodelist=result, node_color='r')\n", 125 | " nx.draw_networkx_nodes(word_graph, pos, node_size=55, nodelist=range(0, 19), node_color='b')\n", 126 | " nx.draw_networkx_edges(word_graph, pos, alpha=1, width=3)\n", 127 | " plt.show()\n", 128 | "\n", 129 | "show_result(result, word_graph)" 130 | ] 131 | }, 132 | { 133 | "cell_type": "code", 134 | "execution_count": null, 135 | "metadata": {}, 136 | "outputs": [], 137 | "source": [] 138 | } 139 | ], 140 | "metadata": { 141 | "kernelspec": { 142 | "display_name": "Python 3", 143 | "language": "python", 144 | "name": "python3" 145 | }, 146 | "language_info": { 147 | "codemirror_mode": { 148 | "name": "ipython", 149 | "version": 3 150 | }, 151 | "file_extension": ".py", 152 | "mimetype": "text/x-python", 153 | "name": "python", 154 | "nbconvert_exporter": "python", 155 | "pygments_lexer": "ipython3", 156 | "version": "3.9.4" 157 | } 158 | }, 159 | "nbformat": 4, 160 | "nbformat_minor": 4 161 | } 162 | -------------------------------------------------------------------------------- /notebooks/summarization.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Document Summarization\n", 8 | "\n", 9 | "## Referene\n", 10 | "\n", 11 | "- http://www.orsj.or.jp/archive2/or62-11/or62_11_711.pdf\n", 12 | "\n", 13 | "## McDonald model (2007)\n", 14 | "\n", 15 | "Variables:\n", 16 | "\n", 17 | "- $x_{i}$: 1 if the summarized text includes sentence $i$, 0 otherwise.\n", 18 | "- $K$: the maximum length of summarized text.\n", 19 | "- $c_{i}$: the length of sentence $i$.\n", 20 | "- $r_{i}$: the dgree of similarity between sentence $i$ and the whole text.\n", 21 | "- $s_{ij}$: the dgree of similarity between sentence $i$ and sentence $j$.\n", 22 | "\n", 23 | "Minimize:\n", 24 | "\n", 25 | "$$\n", 26 | "f(q) = -\\sum_{i=1}^N r_{i} x_{i} + \\lambda \\sum_{i < j} s_{ij} x_{i} x_{j}\n", 27 | "$$\n", 28 | "\n", 29 | "Suject to:\n", 30 | "\n", 31 | "$$\n", 32 | "\\sum_{i=1}^N c_{i} x_{i} \\leq K\n", 33 | "$$" 34 | ] 35 | }, 36 | { 37 | "cell_type": "markdown", 38 | "metadata": {}, 39 | "source": [ 40 | "## QUBO formulation\n", 41 | "\n", 42 | "The following formulation is\n", 43 | "\n", 44 | "$$\n", 45 | "f(\\mathbf{x}) = -\\sum_{i=1}^N r_{i}x_{i} + \\alpha \\sum_{i < j} s_{ij} x_{i}x_{j}\n", 46 | "+ \\lambda_1 \\left( \\sum_{i=1}^N c_{i}x_{i} - \\sum_{i=1}^N i y_i \\right)^2 + \\lambda_2 \\left( \\sum_{i=1}^N y_i - 1 \\right)^2\n", 47 | "$$\n", 48 | "\n", 49 | "where the inequality constraint on the length of summarized text is expressed by using auxiliary variables $\\mathbf{y}$ and penalty method.\n", 50 | "\n", 51 | "The linear expression for the inequality constraint can also work by adjusting the amplitude $\\lambda$ to meet it.\n", 52 | "\n", 53 | "$$\n", 54 | "f(\\mathbf{x}) = -\\sum_{i=1}^N r_{i} x_{i} + \\alpha \\sum_{i < j} s_{ij} x_{i}x_{j}\n", 55 | "+ \\lambda \\sum_{i=1}^N c_i x_i\n", 56 | "$$" 57 | ] 58 | }, 59 | { 60 | "cell_type": "code", 61 | "execution_count": 1, 62 | "metadata": {}, 63 | "outputs": [ 64 | { 65 | "name": "stdout", 66 | "output_type": "stream", 67 | "text": [ 68 | "Thank you. I'm honored to be with you today for your commencement from one of the finest universities in the world. Truth be told, I never graduated from college and this is the closest I've ever gotten to a college graduation.\n", 69 | "\n", 70 | "Today I want to tell you three stories from my life. That's it. No big deal. Just three stories. The first story is about connecting the dots.\n", 71 | "\n", 72 | "I dropped out of Reed College after the first six months but then stayed around as a drop-in for another eighteen months or so before I really quit. So why did I drop out? It started before I was born. My biological mother was a young, unwed graduate student, and she decided to put me up for adoption. She felt very strongly that I should be adopted by college graduates, so everything was all set for me to be adopted at birth by a lawyer and his wife, except that when I popped out, they decided at the last minute that they really wanted a girl. So my parents, who were on a waiting list, got a call in the middle of the ni\n" 73 | ] 74 | } 75 | ], 76 | "source": [ 77 | "# Steve Jobs' Commencement address (2005)\n", 78 | "path_data = '../data/english_text.txt'\n", 79 | "\n", 80 | "with open(path_data, 'r') as f:\n", 81 | " original_text = f.read()\n", 82 | "\n", 83 | "print(original_text[:1000])" 84 | ] 85 | }, 86 | { 87 | "cell_type": "code", 88 | "execution_count": 2, 89 | "metadata": { 90 | "ExecuteTime": { 91 | "end_time": "2019-06-13T10:34:24.009147Z", 92 | "start_time": "2019-06-13T10:34:21.938621Z" 93 | } 94 | }, 95 | "outputs": [], 96 | "source": [ 97 | "from nltk.tokenize import sent_tokenize\n", 98 | "# import nltk\n", 99 | "# nltk.download('punkt')\n", 100 | "\n", 101 | "morphemes = sent_tokenize(original_text)" 102 | ] 103 | }, 104 | { 105 | "cell_type": "code", 106 | "execution_count": 3, 107 | "metadata": { 108 | "ExecuteTime": { 109 | "end_time": "2019-06-13T10:34:24.081610Z", 110 | "start_time": "2019-06-13T10:34:24.011801Z" 111 | }, 112 | "code_folding": [] 113 | }, 114 | "outputs": [], 115 | "source": [ 116 | "import numpy as np\n", 117 | "\n", 118 | "def create_bow(morphemes):\n", 119 | " word2id = {}\n", 120 | " for line in morphemes:\n", 121 | " for word in line.split():\n", 122 | " if word in word2id:\n", 123 | " continue\n", 124 | " word2id[word] = len(word2id)\n", 125 | "\n", 126 | " bow_set = []\n", 127 | " for line in morphemes:\n", 128 | " bow = [0] * len(word2id)\n", 129 | " for word in line.split():\n", 130 | " try:\n", 131 | " bow[word2id[word]] += 1\n", 132 | " except:\n", 133 | " pass\n", 134 | " bow_set.append(bow)\n", 135 | " \n", 136 | " return bow_set\n", 137 | "\n", 138 | "def cos_sim(bow1, bow2):\n", 139 | " narr_bow1 = np.array(bow1)\n", 140 | " narr_bow2 = np.array(bow2)\n", 141 | " return np.sum(narr_bow1 * narr_bow2) / (np.linalg.norm(narr_bow1) * np.linalg.norm(narr_bow2))\n", 142 | "\n", 143 | "bow_set = create_bow(morphemes)\n", 144 | "bow_all = np.sum(bow_set, axis=0)\n", 145 | "sim2all = [cos_sim(b, bow_all) for b in bow_set]\n", 146 | "sim2each = [[cos_sim(b, c) if i < j else 0 for j, c in enumerate(bow_set)] for i, b in enumerate(bow_set)]\n", 147 | "\n", 148 | "num_sentences = len(morphemes)\n", 149 | "sentence_lengths = np.array([len(m) for m in morphemes])\n", 150 | "sentence_lengths = sentence_lengths / np.max(sentence_lengths)" 151 | ] 152 | }, 153 | { 154 | "cell_type": "code", 155 | "execution_count": 4, 156 | "metadata": { 157 | "ExecuteTime": { 158 | "end_time": "2019-06-13T10:34:55.466116Z", 159 | "start_time": "2019-06-13T10:34:25.922113Z" 160 | } 161 | }, 162 | "outputs": [], 163 | "source": [ 164 | "from pyqubo import Array, Placeholder\n", 165 | "\n", 166 | "def create_pyqubo_model(num_sentences, sim2all, sim2each, sentence_lengths):\n", 167 | " x = Array.create(name='x', shape=num_sentences, vartype='BINARY')\n", 168 | " H = - np.sum([sim2all[i] * x[i] for i in range(num_sentences)])\n", 169 | " H += Placeholder('alpha') * np.sum([sim2each[i][j] * x[i] * x[j] for i in range(num_sentences) for j in range(i+1, num_sentences)])\n", 170 | " H += Placeholder('lam') * np.sum([sentence_lengths[i] * x[i] for i in range(num_sentences)])\n", 171 | "\n", 172 | " return H.compile()\n", 173 | "\n", 174 | "model = create_pyqubo_model(num_sentences, sim2all, sim2each, sentence_lengths)" 175 | ] 176 | }, 177 | { 178 | "cell_type": "code", 179 | "execution_count": 5, 180 | "metadata": { 181 | "ExecuteTime": { 182 | "end_time": "2019-06-13T10:42:23.081079Z", 183 | "start_time": "2019-06-13T10:42:22.980068Z" 184 | } 185 | }, 186 | "outputs": [], 187 | "source": [ 188 | "feed_dict = dict(alpha=1.0, lam=0.5)\n", 189 | "bqm = model.to_bqm(index_label=True, feed_dict=feed_dict)" 190 | ] 191 | }, 192 | { 193 | "cell_type": "code", 194 | "execution_count": 6, 195 | "metadata": { 196 | "ExecuteTime": { 197 | "end_time": "2019-06-13T10:42:25.129668Z", 198 | "start_time": "2019-06-13T10:42:24.841763Z" 199 | } 200 | }, 201 | "outputs": [ 202 | { 203 | "data": { 204 | "image/png": "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\n", 205 | "text/plain": [ 206 | "
" 207 | ] 208 | }, 209 | "metadata": { 210 | "needs_background": "light" 211 | }, 212 | "output_type": "display_data" 213 | } 214 | ], 215 | "source": [ 216 | "import matplotlib.pyplot as plt\n", 217 | "\n", 218 | "plt.imshow(bqm.to_numpy_matrix().astype(float))\n", 219 | "plt.colorbar()\n", 220 | "plt.show()" 221 | ] 222 | }, 223 | { 224 | "cell_type": "code", 225 | "execution_count": 7, 226 | "metadata": { 227 | "ExecuteTime": { 228 | "end_time": "2019-06-13T10:42:26.496496Z", 229 | "start_time": "2019-06-13T10:42:25.138476Z" 230 | } 231 | }, 232 | "outputs": [], 233 | "source": [ 234 | "from neal import SimulatedAnnealingSampler\n", 235 | "\n", 236 | "sampleset = SimulatedAnnealingSampler().sample(bqm, num_reads=10)" 237 | ] 238 | }, 239 | { 240 | "cell_type": "code", 241 | "execution_count": 8, 242 | "metadata": { 243 | "ExecuteTime": { 244 | "end_time": "2019-06-13T10:42:26.514460Z", 245 | "start_time": "2019-06-13T10:42:26.498623Z" 246 | } 247 | }, 248 | "outputs": [ 249 | { 250 | "name": "stdout", 251 | "output_type": "stream", 252 | "text": [ 253 | "Thank you. That's it. This was the start in my life. It wasn't all romantic. My second story is about love and loss. How can you get fired from a company you started? I still loved what I did. The turn of events at Apple had not changed that one bit. Don't settle. It's life's change agent; it clears out the old to make way for the new. Sorry to be so dramatic, but it's quite true.\n", 254 | "11\n" 255 | ] 256 | } 257 | ], 258 | "source": [ 259 | "def sampleset_to_text(sampleset, var_name='x'):\n", 260 | " decoded_samples = model.decode_sampleset(sampleset, feed_dict=feed_dict)\n", 261 | " summarized_texts = []\n", 262 | " for sample in decoded_samples:\n", 263 | " texts = []\n", 264 | " for i in range(len(sample.sample)):\n", 265 | " if sample.sample[f'{var_name}[{i}]'] == 1:\n", 266 | " texts.append(morphemes[i])\n", 267 | " summarized_texts.append(texts)\n", 268 | " return summarized_texts\n", 269 | "\n", 270 | "summarized_texts = sampleset_to_text(sampleset)\n", 271 | "print(' '.join(summarized_texts[0]))\n", 272 | "print(len(summarized_texts[0]))" 273 | ] 274 | }, 275 | { 276 | "cell_type": "code", 277 | "execution_count": null, 278 | "metadata": {}, 279 | "outputs": [], 280 | "source": [] 281 | } 282 | ], 283 | "metadata": { 284 | "kernelspec": { 285 | "display_name": "Python 3", 286 | "language": "python", 287 | "name": "python3" 288 | }, 289 | "language_info": { 290 | "codemirror_mode": { 291 | "name": "ipython", 292 | "version": 3 293 | }, 294 | "file_extension": ".py", 295 | "mimetype": "text/x-python", 296 | "name": "python", 297 | "nbconvert_exporter": "python", 298 | "pygments_lexer": "ipython3", 299 | "version": "3.9.4" 300 | }, 301 | "toc": { 302 | "base_numbering": 1, 303 | "nav_menu": {}, 304 | "number_sections": true, 305 | "sideBar": true, 306 | "skip_h1_title": false, 307 | "title_cell": "Table of Contents", 308 | "title_sidebar": "Contents", 309 | "toc_cell": false, 310 | "toc_position": {}, 311 | "toc_section_display": true, 312 | "toc_window_display": false 313 | } 314 | }, 315 | "nbformat": 4, 316 | "nbformat_minor": 4 317 | } 318 | -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.poetry] 2 | name = "quantum-nlp" 3 | version = "0.1.0" 4 | description = "" 5 | authors = ["mullzhang "] 6 | 7 | [tool.poetry.dependencies] 8 | python = "3.8" 9 | dwave-ocean-sdk = "^3.3.0" 10 | matplotlib = "^3.4.2" 11 | nltk = "^3.6.2" 12 | gensim = "3.8.3" 13 | 14 | [tool.poetry.dev-dependencies] 15 | autopep8 = "^1.5.7" 16 | flake8 = "^3.9.2" 17 | jupyterlab = "^3.0.16" 18 | 19 | [build-system] 20 | requires = ["poetry-core>=1.0.0"] 21 | build-backend = "poetry.core.masonry.api" 22 | --------------------------------------------------------------------------------