Answers.Body: <p>Hierarchical Temporal Memory should help with this. You would have to encode the text data into SDRs. You would then have a coincidence detector. Could you get the right information back out in the way you're trying to? I think so. I'm not fully learned in HTMs yet but check out <a href="http://numenta.org/" rel="nofollow noreferrer">Nupic</a> (Open source).</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-11-27T18:18:55.837Z
Answers.Text: Wouldn't I need annotated test Data for this method first? Could you specify more clearly how you would use Nupic?
Answers.UserDisplayName: hardking
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-11-26T06:05:00.057Z
Answers.LastActivityDate: 2016-11-26T06:05:00.057Z
Answers.UserDisplayName: xendi
Body: <p>I installed a locally running instance of the <a href="http://conceptnet5.media.mit.edu/" rel="nofollow noreferrer">ConceptNet5</a> knowledgebase in an elasticsearch server. I used this data to implement the so-called &quot;<a href="https://de.wikipedia.org/wiki/Analogietechnik" rel="nofollow noreferrer">Analogietechnik</a>&quot; (a creativity technique to solve a problem from the perspective of another system) as an algorithm.</p>
  <p>The technique works as follows:</p>
  <ol>
  <li>Choose a feature of a system</li>
  <li>Find systems that have this feature also</li>
  <li>Solve the problem from the perspective of these other systems</li>
  <li>Apply the found solutions to the issue</li>
  </ol>
  <p>As an example, here is the problem of marketing a shopping mall: A Shopping mall has many rooms and floors (1). A museum has also many rooms and floors (2). How are museums marketed? They present many pictures or sculptures (3). We could use our rooms and floors to decorate them with pictures and sculptures (4).</p>
  <p>Of course, the idea to implement that as an artificially intelligent algorithm was not far. However, I feel a little bit overwhelmed by the number of methods that exist out there. Neural networks, Bayesian inference, and so on. My current experience doesn't go further than simple machine learning, like k-means clustering.</p>
  <p>Do you think it would be very hard to find a solution to this problem?</p>
  <p>I'm thinking of a console application, where you can enter a conceptualized problem like &quot;methods for creative writing&quot;, for example, and it uses the above method to find possible solutions of the issue. Of course, no solution with extensive depth, more something like basic ideas derived from the knowledge database I have.</p>
  <p>Let's take as an example a console application where someone asks &quot;how to write a novel&quot;:</p>
  <ol>
  <li><p>It should find out first that the system all is about is in the term &quot;novel&quot;. To find a feature of that system, it just searches concepts containing that term: it finds out &quot;Novel is a story&quot; So that's a feature.</p>
  </li>
  <li><p>Which systems are also stories? A good concept it should find is e.g. &quot;Plot is a story&quot;. (Of course only when I am selecting the search results manually)--&gt; <strong>How to find the best concepts of a list when not knowing which fits best?</strong></p>
  </li>
  <li><p>It should then find out that a plot is written using a storyline: &quot;storyline is a plot&quot;</p>
  </li>
  <li><p>One possible answer of the AI would in this case be: &quot;By writing a storyline&quot;</p>
  </li>
  </ol>
  <p>Do you know some helpful libraries, algorithms or other resources that might help me? I know this is not an easy thing to program, but you might agree that it's highly interesting.</p>
  
Tags: <algorithm-request>
Title: Using ConceptNet5 to find similar systems to solve specific problems?
UserDisplayName: hardking
ThreadText: # Using ConceptNet5 to find similar systems to solve specific problems?
  
  (Asked by: username_0 on 2016-11-22)
  
  I installed a locally running instance of the [ConceptNet5](http://conceptnet5.media.mit.edu/) knowledgebase in an elasticsearch server. I used this data to implement the so-called "[Analogietechnik](https://de.wikipedia.org/wiki/Analogietechnik)" (a creativity technique to solve a problem from the perspective of another system) as an algorithm.
  
  The technique works as follows:
  
  1. Choose a feature of a system
  2. Find systems that have this feature also
  3. Solve the problem from the perspective of these other systems
  4. Apply the found solutions to the issue
  
  As an example, here is the problem of marketing a shopping mall: A Shopping mall has many rooms and floors (1). A museum has also many rooms and floors (2). How are museums marketed? They present many pictures or sculptures (3). We could use our rooms and floors to decorate them with pictures and sculptures (4).
  
  Of course, the idea to implement that as an artificially intelligent algorithm was not far. However, I feel a little bit overwhelmed by the number of methods that exist out there. Neural networks, Bayesian inference, and so on. My current experience doesn't go further than simple machine learning, like k-means clustering.
  
  Do you think it would be very hard to find a solution to this problem?
  
  I'm thinking of a console application, where you can enter a conceptualized problem like "methods for creative writing", for example, and it uses the above method to find possible solutions of the issue. Of course, no solution with extensive depth, more something like basic ideas derived from the knowledge database I have.
  
  Let's take as an example a console application where someone asks "how to write a novel":
  
  1. It should find out first that the system all is about is in the term "novel". To find a feature of that system, it just searches concepts containing that term: it finds out "Novel is a story" So that's a feature.
  2. Which systems are also stories? A good concept it should find is e.g. "Plot is a story". (Of course only when I am selecting the search results manually)--> **How to find the best concepts of a list when not knowing which fits best?**
  3. It should then find out that a plot is written using a storyline: "storyline is a plot"
  4. One possible answer of the AI would in this case be: "By writing a storyline"
  
  Do you know some helpful libraries, algorithms or other resources that might help me? I know this is not an easy thing to program, but you might agree that it's highly interesting.
  
  **Tags:** algorithm-request
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2016-11-26. Score: 0
  
  Hierarchical Temporal Memory should help with this. You would have to encode the text data into SDRs. You would then have a coincidence detector. Could you get the right information back out in the way you're trying to? I think so. I'm not fully learned in HTMs yet but check out [Nupic](http://numenta.org/) (Open source).
  
  > **Comments:**
  > **username_0**: Wouldn't I need annotated test Data for this method first? Could you specify more clearly how you would use Nupic?  
  
  ---
  
  