{"id":31816,"date":"2017-05-11T19:40:09","date_gmt":"2017-05-11T16:40:09","guid":{"rendered":"https:\/\/www.altoros.com\/blog\/?p=31816"},"modified":"2018-03-21T17:14:05","modified_gmt":"2018-03-21T14:14:05","slug":"text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps","status":"publish","type":"post","link":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/","title":{"rendered":"Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_79_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#Continuous_bag-of-words_and_skip-gram\" >Continuous bag-of-words and skip-gram<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#Break_it_down_to_six_steps\" >Break it down to six steps<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#Further_reading\" >Further reading<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#About_the_experts\" >About the experts<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Continuous_bag-of-words_and_skip-gram\"><\/span>Continuous bag-of-words and skip-gram<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The recent <a href=\"https:\/\/www.altoros.com\/webinars\/text-prediction-using-recurrent-neural-networks-with-tensorflow\">TensorFlow webinar<\/a> focused on behind-the-scenes mechanisms of text prediction. In addition to using TensorFlow and long short-term memory networks for the purpose, the attendees learnt about two <em>word2vec<\/em> models for generating word embeddings, their concept differences, and employment.<\/p>\n<p>Exploring the evolution of deep learning, <a href=\"https:\/\/www.linkedin.com\/in\/dipendra009\/\" target=\"_blank\">Dipendra Jha<\/a> and <a href=\"https:\/\/www.linkedin.com\/in\/redaalbahrani\/\" target=\"_blank\">Reda Al-Bahrani<\/a> exemplified some of the areas it is applied only within Google as one of major prodigies at the playground. So, thanks to deep learning, we can now search by image, enjoy individual YouTube recommendations, use online maps, and even enable an autopilot to drive for us.<\/p>\n<p>In the webinar, the presenters particularly focused on text prediction with <a href=\"https:\/\/www.altoros.com\/blog\/using-recurrent-neural-networks-and-tensorflow-to-recognize-handwriting\/\">recurrent neural networks<\/a> (RNN), or <a href=\"https:\/\/www.altoros.com\/blog\/using-long-short-term-memory-networks-and-tensorflow-for-image-captioning\/\">long short-term memory networks<\/a> (LSTM) to be specific, and TensorFlow. For instance, the speakers explained what mathematical formulae are behind the LSTM magic.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2018\/03\/long-short-term-memory-networks-for-text-prediction-formula-v12.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2018\/03\/long-short-term-memory-networks-for-text-prediction-formula-v12.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-31818\" \/><\/a><\/center><\/p>\n<p>According to them, when generating word embeddings, one can make use of the <a href=\"https:\/\/arxiv.org\/pdf\/1411.2738v3.pdf\" target=\"_blank\">two word2vec\u2019s models<\/a>: <b>continuous bag-of-words<\/b> (CBOW) and <b>skip-gram<\/b>.<\/p>\n<p>In terms of underlying algorithms, both models are similar, slightly differing only in the approach: CBOW predicts target words from source context words, while skip-gram does the inverse and predicts source context-words from the target words. Simply put, the CBOW model uses surrounding words to predict the one of interest, while the skip-gram model uses the central word to define the surrounding ones.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2018\/03\/tensorflow-text-recognition-word2vec-continuous-bag-of-words-v12.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2018\/03\/tensorflow-text-recognition-word2vec-continuous-bag-of-words-v12.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-31820\" \/><\/a><\/center><\/p>\n<p>Other minor differences include an absence of a hidden layer in the skip-gram architecture and no strict rules for word order in CBOW. According to <a href=\"https:\/\/www.tensorflow.org\/tutorials\/text\/word2vec\" target=\"_blank\">this TensorFlow tutorial<\/a>, CBOW is more useful for smaller data sets, while skip-gram is more essential for larger ones.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2018\/03\/tensorflow-text-recognition-word2vec-skip-gram-v12.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2018\/03\/tensorflow-text-recognition-word2vec-skip-gram-v12.png\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-31821\" \/><\/a><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Break_it_down_to_six_steps\"><\/span>Break it down to six steps<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Then, Dipendra and Reda suggested six steps to take in the process of text generation:<\/p>\n<ol>\n<li>Clean data<\/li>\n<li>Build vocabulary<\/li>\n<li>Convert text to word vectors<\/li>\n<li>Define the model (encoder-decoder)<\/li>\n<li>Train the model<\/li>\n<li>Generate text<\/li>\n<\/ol>\n<p>Within each of the steps, there are some particular things to accomplish. Thus, <em>cleaning data<\/em> spans tokenization, lemmatization, and stemming. For <em>converting text to word vectors<\/em>, the prerequisites are the following:<\/p>\n<ul>\n<li>a vocabulary of all the words used in input data<\/li>\n<li>a unique mapping of each word to an index<\/li>\n<\/ul>\n<p>So, the input text can be converted to word vectors through using the word mapping.<\/p>\n<p>When <em>defining the model<\/em>, one has to proceed with:<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">using a word embedding to embed the input into 2D arrays<\/li>\n<li style=\"margin-bottom: 6px;\">using a decoder (with an encoder) comprising RNNs and LSTMs to make predictions<\/li>\n<li>applying some fully connected layers on top of the decoder output to generate the actual predictions<\/li>\n<\/ul>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2018\/03\/long-short-term-memory-networks-for-text-prediction-v12.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2018\/03\/long-short-term-memory-networks-for-text-prediction-v12.jpg\" alt=\"\" width=\"640\" class=\"aligncenter size-full wp-image-31819\" \/><\/a><\/center><\/p>\n<p>You can find the slides and the source code for each of the steps in <a href=\"https:\/\/github.com\/dipendra009\/Text-generation\" target=\"_blank\">Dipendra\u2019s GitHub repo<\/a>. For other details, check out <a href=\"https:\/\/www.altoros.com\/webinars\/text-prediction-using-recurrent-neural-networks-with-tensorflow\">the recording of the webinar<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Further_reading\"><\/span>Further reading<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/analyzing-text-and-generating-content-with-neural-networks-and-tensorflow\/\">Analyzing Text and Generating Content with Neural Networks and TensorFlow<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/the-magic-behind-google-translate-sequence-to-sequence-models-and-tensorflow\/\">The Magic Behind Google Translate: Sequence-to-Sequence Models and TensorFlow<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/enabling-multilingual-neural-machine-translation-with-tensorflow\/\">Enabling Multilingual Neural Machine Translation with TensorFlow<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"About_the_experts\"><\/span>About the experts<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><small><a href=\"https:\/\/www.linkedin.com\/in\/dipendra009\/\" target=\"_blank\">Dipendra Jha<\/a> is a fourth-year Ph.D. Candidate in Computer Engineering at Northwestern University. At the CUCIS lab, Dipendra is researching the possibilities of scaling up deep and machine learning models using HPC systems, and on their application to accelerate materials discovery in the field of materials science and engineering. Prior to this, he completed his Master\u2019s in Computer Science from Northwestern University.<\/small><\/p>\n<p><small><a href=\"https:\/\/www.linkedin.com\/in\/redaalbahrani\/\" target=\"_blank\">Reda Al-Bahrani<\/a> is a Ph.D. Candidate in Computer Science at Northwestern University. He is exploring the field of deep and machine learning in the CUCIS lab. His research focuses on knowledge discovery for health informatics from structured data and textual data. Reda worked in technical support for Saudi Aramco XHQ environment at Siemens Saudi Arabia before joining CUCIS. Prior to this, he completed his Master\u2019s in e-commerce from DePaul University.<\/small><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Continuous bag-of-words and skip-gram<\/p>\n<p>The recent TensorFlow webinar focused on behind-the-scenes mechanisms of text prediction. In addition to using TensorFlow and long short-term memory networks for the purpose, the attendees learnt about two word2vec models for generating word embeddings, their concept differences, and employment.<\/p>\n<p>Exploring the evolution of deep learning, Dipendra Jha [&#8230;]<\/p>\n","protected":false},"author":3,"featured_media":31824,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[214],"tags":[748,749],"class_list":["post-31816","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials","tag-machine-learning","tag-tensorflow"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps | Altoros<\/title>\n<meta name=\"description\" content=\"Explore how TensorFlow helps at each step of text generation: building a vocabulary, converting text to word vectors, defining and training the model, etc.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps | Altoros\" \/>\n<meta property=\"og:description\" content=\"Continuous bag-of-words and skip-gram The recent TensorFlow webinar focused on behind-the-scenes mechanisms of text prediction. In addition to using TensorFlow and long short-term memory networks for the purpose, the attendees learnt about two word2vec models for generating word embeddings, their concept differences, and employment. Exploring the evolution of deep learning, Dipendra Jha [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/\" \/>\n<meta property=\"og:site_name\" content=\"Altoros\" \/>\n<meta property=\"article:published_time\" content=\"2017-05-11T16:40:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-03-21T14:14:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/text-prediction-with-tensoflow-and-long-short-term-memory-in-six-steps-v111.gif\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"361\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"author\" content=\"Sophia Turol\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sophia Turol\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/\",\"name\":\"Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps | Altoros\",\"isPartOf\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/text-prediction-with-tensoflow-and-long-short-term-memory-in-six-steps-v111.gif\",\"datePublished\":\"2017-05-11T16:40:09+00:00\",\"dateModified\":\"2018-03-21T14:14:05+00:00\",\"author\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/58194952af19fe7b2b830846e077a58e\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#primaryimage\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/text-prediction-with-tensoflow-and-long-short-term-memory-in-six-steps-v111.gif\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/text-prediction-with-tensoflow-and-long-short-term-memory-in-six-steps-v111.gif\",\"width\":640,\"height\":361},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.altoros.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\",\"url\":\"https:\/\/www.altoros.com\/blog\/\",\"name\":\"Altoros\",\"description\":\"Insight\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.altoros.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/58194952af19fe7b2b830846e077a58e\",\"name\":\"Sophia Turol\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2019\/05\/trello_card-96x96.jpg\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2019\/05\/trello_card-96x96.jpg\",\"caption\":\"Sophia Turol\"},\"description\":\"Sophia Turol is passionate about delivering well-structured articles that cater for picky technical audience. With 3+ years in technical writing and 5+ years in editorship, she enjoys collaboration with developers to create insightful, yet intelligible technical tutorials, overviews, and case studies. Sophie is enthusiastic about deep learning solutions\u2014TensorFlow in particular\u2014and PaaS systems, such as Cloud Foundry.\",\"url\":\"https:\/\/www.altoros.com\/blog\/author\/sophie-turol\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps | Altoros","description":"Explore how TensorFlow helps at each step of text generation: building a vocabulary, converting text to word vectors, defining and training the model, etc.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/","og_locale":"en_US","og_type":"article","og_title":"Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps | Altoros","og_description":"Continuous bag-of-words and skip-gram The recent TensorFlow webinar focused on behind-the-scenes mechanisms of text prediction. In addition to using TensorFlow and long short-term memory networks for the purpose, the attendees learnt about two word2vec models for generating word embeddings, their concept differences, and employment. Exploring the evolution of deep learning, Dipendra Jha [...]","og_url":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/","og_site_name":"Altoros","article_published_time":"2017-05-11T16:40:09+00:00","article_modified_time":"2018-03-21T14:14:05+00:00","og_image":[{"width":640,"height":361,"url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/text-prediction-with-tensoflow-and-long-short-term-memory-in-six-steps-v111.gif","type":"image\/gif"}],"author":"Sophia Turol","twitter_misc":{"Written by":"Sophia Turol","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/","url":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/","name":"Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps | Altoros","isPartOf":{"@id":"https:\/\/www.altoros.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#primaryimage"},"image":{"@id":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#primaryimage"},"thumbnailUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/text-prediction-with-tensoflow-and-long-short-term-memory-in-six-steps-v111.gif","datePublished":"2017-05-11T16:40:09+00:00","dateModified":"2018-03-21T14:14:05+00:00","author":{"@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/58194952af19fe7b2b830846e077a58e"},"breadcrumb":{"@id":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#primaryimage","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/text-prediction-with-tensoflow-and-long-short-term-memory-in-six-steps-v111.gif","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/text-prediction-with-tensoflow-and-long-short-term-memory-in-six-steps-v111.gif","width":640,"height":361},{"@type":"BreadcrumbList","@id":"https:\/\/www.altoros.com\/blog\/text-prediction-with-tensorflow-and-long-short-term-memory-in-six-steps\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.altoros.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Text Prediction with TensorFlow and Long Short-Term Memory\u2014in Six Steps"}]},{"@type":"WebSite","@id":"https:\/\/www.altoros.com\/blog\/#website","url":"https:\/\/www.altoros.com\/blog\/","name":"Altoros","description":"Insight","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.altoros.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/58194952af19fe7b2b830846e077a58e","name":"Sophia Turol","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2019\/05\/trello_card-96x96.jpg","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2019\/05\/trello_card-96x96.jpg","caption":"Sophia Turol"},"description":"Sophia Turol is passionate about delivering well-structured articles that cater for picky technical audience. With 3+ years in technical writing and 5+ years in editorship, she enjoys collaboration with developers to create insightful, yet intelligible technical tutorials, overviews, and case studies. Sophie is enthusiastic about deep learning solutions\u2014TensorFlow in particular\u2014and PaaS systems, such as Cloud Foundry.","url":"https:\/\/www.altoros.com\/blog\/author\/sophie-turol\/"}]}},"_links":{"self":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/31816","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/comments?post=31816"}],"version-history":[{"count":4,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/31816\/revisions"}],"predecessor-version":[{"id":31851,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/31816\/revisions\/31851"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media\/31824"}],"wp:attachment":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media?parent=31816"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/categories?post=31816"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/tags?post=31816"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}