Answers.Body: <p>Use something like Word2Vec. If a particular node has two edges that are very far from each other, besides the node in question, split the node into word(1) and word(2) nodes.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-10-08T00:11:37.960Z
Answers.LastActivityDate: 2016-10-08T00:11:37.960Z
Answers.UserDisplayName: Doxosophoi
Answers.Body: <blockquote>
  <p>In general, how algorithm should distinguish the word meaning and recognise the word within the context?</p>
  </blockquote>
  <p>I don't think anybody knows how to answer this for the general case. If they did, they'd have basically solved AGI.  But we can certainly talk about techniques that get part of the way there, and approaches that could work.</p>
  <p>One thing I would consider trying (and I don't know off-hand if anybody has tried this exact approach) is to model the disambiguation of each word as a discrete problem for a <a href="https://en.wikipedia.org/wiki/Bayesian_network" rel="nofollow noreferrer">Bayesian Belief Network</a> where your priors (for any given word) are based on both stored &quot;knowledge&quot; as well as the previously encountered words in the (sentence|paragraph|document|whatever).  So if you &quot;know&quot;, for example, that &quot;Reading is a city in the UK&quot; and that &quot;place names are usually capitalized&quot;, your network should be strongly biased towards interpreting &quot;Reading&quot; as the city, since nothing in the word position in the sentence strongly contradicts that.</p>
  <p>Of course I'm hand-waving around some tricky problems in saying that, as <a href="https://en.wikipedia.org/wiki/Knowledge_representation_and_reasoning" rel="nofollow noreferrer">knowledge representation</a> isn't exactly a solved problem either.  But there are at least approaches out there that you could use.  For example, you could use the <a href="https://en.wikipedia.org/wiki/Resource_Description_Framework" rel="nofollow noreferrer">RDF</a> / triple based approach from the <a href="https://en.wikipedia.org/wiki/Semantic_Web" rel="nofollow noreferrer">Semantic Web</a> world.  Finding a good way to merge that stuff with a Bayesian framework could yield some interesting results.</p>
  <p>There has been a bit of research on &quot;probabilistic RDF&quot; that you could possibly use as a starting point.  For example:</p>
  <ul>
  <li>&quot;<a href="https://web.archive.org/web/20160528092851/http://om.umiacs.umd.edu:80/material/papers/prdf.pdf" rel="nofollow noreferrer">Probablistic RDF</a>&quot; by Octavian Udrea, V.S. Subrahmanian, and Zoran Majkić</li>
  <li>&quot;<a href="https://ceur-ws.org/Vol-173/pos_paper5.pdf" rel="nofollow noreferrer">Representing Probabilistic Relations in RDF</a>&quot; by Yoshio Fukushige</li>
  <li><a href="https://www.w3.org/2005/03/07-yoshio-UMBC/" rel="nofollow noreferrer">2005 talk: &quot;Representing Probabilistic Relations in RDF&quot;</a> by Yoshio Fukushige</li>
  <li>&quot;<a href="https://ebiquity.umbc.edu/paper/html/id/271/BayesOWL-Uncertainty-Modeling-in-Semantic-Web-Ontologies" rel="nofollow noreferrer">BayesOWL: Uncertainty Modeling in Semantic Web Ontologies</a>&quot; by Zhongli Ding, Yun Peng, and Rong Pan</li>
  <li><a href="https://www.pr-owl.org/" rel="nofollow noreferrer">PR-OWL: A Bayesian extension to the OWL Ontology Language</a></li>
  </ul>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2016-08-26T15:08:11.110Z
Answers.LastActivityDate: 2023-11-20T10:44:00.780Z
Answers.LastEditDate: 2023-11-20T10:44:00.780Z
Answers.UserDisplayName: mindcrime
Body: <p>I'm interested in implementing a program for natural language processing (aka <a href="https://en.wikipedia.org/wiki/ELIZA" rel="nofollow noreferrer">ELIZA</a>).</p>
  
  <p>Assuming that I'm already <a href="https://ai.stackexchange.com/q/212/8">storing semantic-lexical connections</a> between the words and its strength.</p>
  
  <p>What are the methods of dealing with words which have very distinct meaning?</p>
  
  <p>Few examples:</p>
  
  <ul>
  <li><p>'Are we on the same page?'</p>
  
  <p>The 'page' in this context isn't a document page, but it's part of the phrase.</p></li>
  <li><p>'I'm living in Reading.'</p>
  
  <p>The 'Reading' is a city (noun), so it's not a verb. Otherwise it doesn't make any sense. Checking for the capital letter would work in that specific example, but it won't work for other (like 'make' can be either verb or noun).</p></li>
  <li><p>'I've read something on the Facebook wall, do you want to know what?'</p>
  
  <p>The 'Facebook wall' has nothing to do with wall at all.</p></li>
  </ul>
  
  <p>In general, how algorithm should distinguish the word meaning and recognise the word within the context?</p>
  
  <p>For example:</p>
  
  <ul>
  <li>Detecting the word for different type of speech, so it should recognise whether it's a verb or noun.</li>
  <li>Detecting whether the word is part of phrase.</li>
  <li>Detecting word for multiple meaning.</li>
  </ul>
  
  <p>What are the possible approaches to solve that problem in order to  identify the correct sense of a word with the context?</p>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-07-08T20:38:46.073Z
Comments.Text: Wikipedia has [a summary of methods for resolving lexical ambiguity](https://en.wikipedia.org/wiki/Word-sense_disambiguation#Approaches_and_methods).
Comments.UserDisplayName: Anderson Green
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2016-08-12T17:15:09.017Z
Comments.Text: Context, by predisposition that will lead to the type of word you are getting. Google have released the state of the art NLR for english. Please do a search and have a look at their code on github. Links will be on the Google artical.
Comments.UserDisplayName: X3R0
Tags: <natural-language-processing><lexical-recognition>
Title: How to resolve lexical ambiguity in natural language processing?
UserDisplayName: kenorb
ThreadText: # How to resolve lexical ambiguity in natural language processing?
  
  (Asked by: username_0 on 2016-08-03)
  
  I'm interested in implementing a program for natural language processing (aka [ELIZA](https://en.wikipedia.org/wiki/ELIZA)).
  
  Assuming that I'm already [storing semantic-lexical connections](https://ai.stackexchange.com/q/212/8) between the words and its strength.
  
  What are the methods of dealing with words which have very distinct meaning?
  
  Few examples:
  
  * 'Are we on the same page?'
  
    The 'page' in this context isn't a document page, but it's part of the phrase.
  * 'I'm living in Reading.'
  
    The 'Reading' is a city (noun), so it's not a verb. Otherwise it doesn't make any sense. Checking for the capital letter would work in that specific example, but it won't work for other (like 'make' can be either verb or noun).
  * 'I've read something on the Facebook wall, do you want to know what?'
  
    The 'Facebook wall' has nothing to do with wall at all.
  
  In general, how algorithm should distinguish the word meaning and recognise the word within the context?
  
  For example:
  
  * Detecting the word for different type of speech, so it should recognise whether it's a verb or noun.
  * Detecting whether the word is part of phrase.
  * Detecting word for multiple meaning.
  
  What are the possible approaches to solve that problem in order to identify the correct sense of a word with the context?
  
  **Tags:** natural-language-processing, lexical-recognition
  
  > **Comments:**
  > **username_2**: Context, by predisposition that will lead to the type of word you are getting. Google have released the state of the art NLR for english. Please do a search and have a look at their code on github. Links will be on the Google artical.  
  > **username_1**: Wikipedia has [a summary of methods for resolving lexical ambiguity](https://en.wikipedia.org/wiki/Word-sense_disambiguation#Approaches_and_methods).  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_4 on 2016-08-26. Score: 3 | Accepted answer
  
  > In general, how algorithm should distinguish the word meaning and recognise the word within the context?
  
  I don't think anybody knows how to answer this for the general case. If they did, they'd have basically solved AGI. But we can certainly talk about techniques that get part of the way there, and approaches that could work.
  
  One thing I would consider trying (and I don't know off-hand if anybody has tried this exact approach) is to model the disambiguation of each word as a discrete problem for a [Bayesian Belief Network](https://en.wikipedia.org/wiki/Bayesian_network) where your priors (for any given word) are based on both stored "knowledge" as well as the previously encountered words in the (sentence|paragraph|document|whatever). So if you "know", for example, that "Reading is a city in the UK" and that "place names are usually capitalized", your network should be strongly biased towards interpreting "Reading" as the city, since nothing in the word position in the sentence strongly contradicts that.
  
  Of course I'm hand-waving around some tricky problems in saying that, as [knowledge representation](https://en.wikipedia.org/wiki/Knowledge_representation_and_reasoning) isn't exactly a solved problem either. But there are at least approaches out there that you could use. For example, you could use the [RDF](https://en.wikipedia.org/wiki/Resource_Description_Framework) / triple based approach from the [Semantic Web](https://en.wikipedia.org/wiki/Semantic_Web) world. Finding a good way to merge that stuff with a Bayesian framework could yield some interesting results.
  
  There has been a bit of research on "probabilistic RDF" that you could possibly use as a starting point. For example:
  
  * "[Probablistic RDF](https://web.archive.org/web/20160528092851/http://om.umiacs.umd.edu:80/material/papers/prdf.pdf)" by Octavian Udrea, V.S. Subrahmanian, and Zoran Majkić
  * "[Representing Probabilistic Relations in RDF](https://ceur-ws.org/Vol-173/pos_paper5.pdf)" by Yoshio Fukushige
  * [2005 talk: "Representing Probabilistic Relations in RDF"](https://www.w3.org/2005/03/07-yoshio-UMBC/) by Yoshio Fukushige
  * "[BayesOWL: Uncertainty Modeling in Semantic Web Ontologies](https://ebiquity.umbc.edu/paper/html/id/271/BayesOWL-Uncertainty-Modeling-in-Semantic-Web-Ontologies)" by Zhongli Ding, Yun Peng, and Rong Pan
  * [PR-OWL: A Bayesian extension to the OWL Ontology Language](https://www.pr-owl.org/)
  
  
  ---
  
  ### Answer by username_3 on 2016-10-08. Score: 1
  
  Use something like Word2Vec. If a particular node has two edges that are very far from each other, besides the node in question, split the node into word(1) and word(2) nodes.
  
  
  ---
  
  