<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Neural Network Design blog &#187; Updates</title>
	<atom:link href="http://janbogaerts.name/index.php/tag/updates/feed/" rel="self" type="application/rss+xml" />
	<link>http://janbogaerts.name</link>
	<description>My take on neural networks, AI and more</description>
	<lastBuildDate>Wed, 28 Jul 2010 18:21:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>AICI calling .Net</title>
		<link>http://janbogaerts.name/index.php/2010/07/11/aici-calling-net/</link>
		<comments>http://janbogaerts.name/index.php/2010/07/11/aici-calling-net/#comments</comments>
		<pubDate>Sun, 11 Jul 2010 14:33:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AICI]]></category>
		<category><![CDATA[Conversations]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[Updates]]></category>

		<guid isPermaLink="false">http://janbogaerts.name/index.php/2010/07/11/aici-calling-net/</guid>
		<description><![CDATA[The thunk to .Net is finally working:

So it’s now possible to call static functions that take value types as argument and/or as return type.  In this example, I am calling the standard System.IO.File.Copy function to copy a file on my disk. Exceptions are also supported, as you can see from the first line, when I [...]]]></description>
			<content:encoded><![CDATA[<p>The thunk to .Net is finally working:</p>
<p><a href="http://janbogaerts.name/wp-content/uploads/2010/07/image1.png"><img style="margin: 0px auto; display: block; float: none; border-width: 0px;" title="image" src="http://janbogaerts.name/wp-content/uploads/2010/07/image_thumb1.png" border="0" alt="image" width="409" height="76" /></a></p>
<p>So it’s now possible to call static functions that take value types as argument and/or as return type.  In this example, I am calling the standard <em>System.IO.File.Copy</em> function to copy a file on my disk. Exceptions are also supported, as you can see from the first line, when I am trying to copy a non existing file. The output comes from the exception generated by the copy. Note that you can specify the arguments in different ways. In this example, I am using the ‘to’ word. ‘From’ would also be recognized. Both determine the extraction order of the arguments.</p>
<p>At the moment, I have hardcoded this extraction of the function arguments for the ‘copy-verb’ manually. The idea is to change it to something more general that can work for any .net function using some meta data of the function (like which neuron to send to which output, how to recognize the arguments, how many arguments,…). I’m not there yet though. First some finishing touches to the designer, so I can trace some neuron/memory leaks. After that I’ll probably do a new release, so you can play a bit.</p>
<p>Oh, and it’s still way to hot outside <img src='http://janbogaerts.name/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://janbogaerts.name/index.php/2010/07/11/aici-calling-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Context sensitive word interpretation</title>
		<link>http://janbogaerts.name/index.php/2010/06/08/context-sensitive-word-interpretation/</link>
		<comments>http://janbogaerts.name/index.php/2010/06/08/context-sensitive-word-interpretation/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 15:30:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Conversations]]></category>
		<category><![CDATA[Updates]]></category>

		<guid isPermaLink="false">http://janbogaerts.name/index.php/2010/06/08/context-sensitive-word-interpretation/</guid>
		<description><![CDATA[
There’s a lot more going on here besides the context sensitive interpretation of ‘blue’ (near the end). But I think that’s the most impressive.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://janbogaerts.name/wp-content/uploads/2010/06/image2.png"><img style="margin: 0px auto; display: block; float: none; border: 0px;" title="image" src="http://janbogaerts.name/wp-content/uploads/2010/06/image_thumb2.png" border="0" alt="image" width="156" height="400" /></a></p>
<p>There’s a lot more going on here besides the context sensitive interpretation of ‘blue’ (near the end). But I think that’s the most impressive.<img src="http://www.zu14.cn/coolemotion/emotions/zz_16.gif" alt="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://janbogaerts.name/index.php/2010/06/08/context-sensitive-word-interpretation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Neural network designer 0.4.5</title>
		<link>http://janbogaerts.name/index.php/2010/05/13/neural-network-designer-0-4-5/</link>
		<comments>http://janbogaerts.name/index.php/2010/05/13/neural-network-designer-0-4-5/#comments</comments>
		<pubDate>Thu, 13 May 2010 17:11:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Updates]]></category>
		<category><![CDATA[releases]]></category>

		<guid isPermaLink="false">http://janbogaerts.name/index.php/2010/05/13/neural-network-designer-0-4-5/</guid>
		<description><![CDATA[The tail side is still red hot from the afterburners. At full throttle, 2 editors were completely rewritten, the drag drop system cleaned up and a rare deadlock removed. Both the mindmap and code editors now support all the mouse functions: horizontal/vertical scrolling and zooming. Oh, and I’ve also cleaned up the AICI code a [...]]]></description>
			<content:encoded><![CDATA[<p>The tail side is still red hot from the afterburners. At full throttle, 2 editors were completely rewritten, the drag drop system cleaned up and a rare deadlock removed. Both the mindmap and code editors now support all the mouse functions: horizontal/vertical scrolling and zooming. Oh, and I’ve also cleaned up the AICI code a little, though that needs more work.</p>
<p>Get the latest installation from the <a href="http://janbogaerts.name/index.php/downloads/">download section</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://janbogaerts.name/index.php/2010/05/13/neural-network-designer-0-4-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The new code editor</title>
		<link>http://janbogaerts.name/index.php/2010/05/08/the-new-code-editor/</link>
		<comments>http://janbogaerts.name/index.php/2010/05/08/the-new-code-editor/#comments</comments>
		<pubDate>Sat, 08 May 2010 16:59:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Updates]]></category>
		<category><![CDATA[code images]]></category>

		<guid isPermaLink="false">http://janbogaerts.name/index.php/2010/05/08/the-new-code-editor/</guid>
		<description><![CDATA[The new code editor is beginning to work:


]]></description>
			<content:encoded><![CDATA[<p>The new code editor is beginning to work:</p>
<p><a href="http://janbogaerts.name/wp-content/uploads/2010/05/image2.png"><img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://janbogaerts.name/wp-content/uploads/2010/05/image_thumb2.png" width="870" height="258" /></a></p>
<p><a href="http://janbogaerts.name/wp-content/uploads/2010/05/image3.png"><img style="border-bottom: 0px; border-left: 0px; margin: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://janbogaerts.name/wp-content/uploads/2010/05/image_thumb3.png" width="688" height="519" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://janbogaerts.name/index.php/2010/05/08/the-new-code-editor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NND 0.3</title>
		<link>http://janbogaerts.name/index.php/2010/01/20/nnd-0-3/</link>
		<comments>http://janbogaerts.name/index.php/2010/01/20/nnd-0-3/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 19:16:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[N²D]]></category>
		<category><![CDATA[Updates]]></category>
		<category><![CDATA[0.3]]></category>

		<guid isPermaLink="false">http://janbogaerts.name/index.php/2010/01/20/nnd-0-3/</guid>
		<description><![CDATA[ The new release is finally ready.&#160; The Aici demo took a bit longer than planned. Also, lots of things have been fixed and updated. Here’s a non exhaustive list:

There’s a complete new lockmanager running in the background. This is much more secure (thread-wise, that is) and a lot faster. It’s still a bit of [...]]]></description>
			<content:encoded><![CDATA[<p> The new release is finally ready.&#160; The Aici demo took a bit longer than planned. Also, lots of things have been fixed and updated. Here’s a non exhaustive list:</p>
<ul>
<li><a href="http://janbogaerts.name/wp-content/uploads/2010/01/image1.png"><img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px 0px 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" align="left" src="http://janbogaerts.name/wp-content/uploads/2010/01/image_thumb1.png" width="207" height="296" /></a>There’s a complete new lockmanager running in the background. This is much more secure (thread-wise, that is) and a lot faster. It’s still a bit of a diesel though, it takes some time for it to get going, but once running, it should be pretty fast. The slow start is due to the storage mechanism (all xml files currently). This is the major drag on the entire system at the moment, and will be fixed next.</li>
<li><a href="http://www.ebswift.com/OpenSource/WordNetSQLServer/" target="_blank">Wordnet</a> import has been seriously updated, a lot more info is retrieved, and it’s now also possible to import the entire db in one go (although not yet advisable, due to a memory bug in the designer, it still takes a major byte out of the hard disk and it simply takes ridiculously long).</li>
<li>The thesaurus has been given a make over to allow for editing and filtering. He can now also display / edit non recursive relationships. Drag drop is also supported.</li>
<li> The frame editor has been updated considerably: drag drop support has been added and frame element filters/restrictions have also been introduced (will probably be extended in the future).</li>
<li>I changed the function of the ‘contains’ operator a bit. It now only checks the contents of a variable. For clusters/children, there are the new instructions (IsClustesteredBy, LinkExists, ContainsChildren, GetInFiltered,…).</li>
<li>I have added the ‘not contains’ operator.</li>
<li>New instructions:</li>
<ul>
<li>Arithmetic group (+-/*%): I finally caved on those. My <a href="http://janbogaerts.name/wp-content/uploads/2010/01/image2.png"><img style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" align="right" src="http://janbogaerts.name/wp-content/uploads/2010/01/image_thumb2.png" width="559" height="223" /></a>original plan was to see how far I got without using any arithmetic in the neural code. I guess, this is as far as I got with that.</li>
<li>Get-at group: get child at, get cluster at, get out at, get in at, get info at.</li>
<li>Distinct</li>
<li>get Incoming, get outgoing, get info, Get in filtered, get out filtered, Get info filtered</li>
<li>Is clustered by, Link exists, Contains children</li>
<li>Remove-at group: Remove child at, remove info at, remove link in at, remove link out at</li>
</ul>
<li>many, many bug fixes, updates and little improvements.</li>
</ul>
<h4>Aici 1</h4>
<p>This demo is a small chat interface. Though, in it’s current state, it’s not much more than a framework. It can initiate a conversation, close it, ask for the name of the user and store the data. It’s not yet able to fully recognize a recurring user since I haven’t defined the neural code for this yet. </p>
<p><a href="http://janbogaerts.name/wp-content/uploads/2010/01/image3.png"><img style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" align="right" src="http://janbogaerts.name/wp-content/uploads/2010/01/image_thumb3.png" width="204" height="315" /></a> I will be explaining how it works and how you can expand on this functionality, shortly. For those who can’t wait and want to get a peek under the hood, here are some pointers to get started:</p>
<ul>
<li>There are 3 main stages:</li>
<ul>
<li>Flow recognition, which is basically the syntactical stage: check the word types and order. Project pages are: </li>
<ul>
<li>the flows (aici/flows), </li>
<li>the code that is attached to these flows (aici/code/flow code)</li>
<li>the code that recognizes the flows in the input (aici/code/flow recognition)</li>
</ul>
<li>Frame recognition, or the semantics stage. This is where we try to find meaning in the words. Project pages are:</li>
<ul>
<li>the frames (aici/frames)</li>
<li>the code that is attached to the frame sequences (aici/code/frame seq code). The frames don’t have code (yet).</li>
<li>the code that recognizes the frames in the flow results (aici/code/frame recognition).</li>
</ul>
<li>action execution, or the response of the network to the input. Project pages are:</li>
<ul>
<li>Actions: all the different actions that the system knows (not yet a lot, should be extended).</li>
<li>Output: some common code blocks for rendering output. This is also used by the frame sequences, since they are also used to render data in a predefined format.</li>
<li>Action helpers: code that the action neurons can use to perform common tasks, like stopping a conversation or controlling the timers. Timer callbacks are also stored here.</li>
</ul>
</ul>
<li>The transition between the different stages can be located in aici/code/transition. </li>
<ul>
<li>More specifically, the ‘Transition’ neuron is used to go from the flows to the frames and finally to the actions.&#160; </li>
<li>An action is started using the ‘Execute action’ neuron as meaning for a link from a data cluster to the action that needs to be started.</li>
</ul>
<li>The project also contains some mindmaps that describe the inner data structures and functionality.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://janbogaerts.name/index.php/2010/01/20/nnd-0-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NND 0.2 released</title>
		<link>http://janbogaerts.name/index.php/2009/09/12/nnd-0-2-released/</link>
		<comments>http://janbogaerts.name/index.php/2009/09/12/nnd-0-2-released/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 17:43:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[N²D]]></category>
		<category><![CDATA[Updates]]></category>
		<category><![CDATA[releases]]></category>

		<guid isPermaLink="false">http://janbogaerts.name/index.php/2009/09/12/nnd-0-2-released/</guid>
		<description><![CDATA[I sort of blew out all the cylinders while attempting a first run directly from numbers to the English grammar: memory usage went up to +1.5 gig, thread count was +800 and a gazillion temporary neurons had been created before it all came to a grinding halt. Some redesign was required. So I beefed up [...]]]></description>
			<content:encoded><![CDATA[<p>I sort of blew out all the cylinders while attempting a first run directly from numbers to the English grammar: memory usage went up to +1.5 gig, thread count was +800 and a gazillion temporary neurons had been created before it all came to a grinding halt. Some redesign was required. So I beefed up the execution engine so that you are now able to throttle the maximum amount of simultaneous system threads that are used, which saves an incredible amount of resources and it prevents the app from grinding to a halt (well, that and the removal of a small army of bugs).</p>
<p>I also realized that the flow recognition algorithm simply was not yet mature enough to be used in even the most basic situations. Not just because it was not yet able to process the more complex flow structures, but also because I made a basic design error that I did not yet know off: <em>always put the result cluster on the stack (‘from’ part of link) and the item-to-search in the ‘to’ part</em>. Getting this algorithm ready definitely took the most effort, but it was a grate catalyst to improve the debugger and the execution core. Here’s a (non exhaustive) list of new/changed things:</p>
<ul>
<li>New instructions: GetClustersFiltered, GetChildrenFiltered, Freeze</li>
<li>Added ‘Stop all processors’&#160; and ‘kill single processor’&#160; commands</li>
<li>Added import of VerbNet data</li>
<li>Updated Frame editor so that it is able to edit VerbNet data, this is a work in progress, not all data items found in verbnet can already be edited.</li>
<li>major update to the scanner demo</li>
<li>Added the start of the AICI 1 demo, which will/should soon become able to parse the English grammar (it’s already able to parse the verb ‘to be’ ex: you are, I am, is he, he is, they were,.. (silly I know, but a start is a start!)</li>
<li>Updated flow editor with overlay items, which display the presence of certain (useful) links, like code that is attached to the flow item.</li>
<li>Added a new dialog: ‘Overlay editor’ in the Tools menu for editing the overlays that are defined in a project. This means that overlays can eventually be used everywhere.</li>
<li>new debug feature: split paths, which allow you to track previously recorded paths of processors.</li>
<li>new debug feature: attached neurons, which allow you to track down data changes in threads that should not be allowed to change the data.</li>
<li>Extra info about the static neurons (like the display title and the description) is now stored globally, outside of the project so that I only have to update 1 thing, and not all the projects whenever some documentation needs to be updated. This does mean that you can no longer store any description info for these statically defined neurons.</li>
<li>Updated the <a href="http://www.ebswift.com/OpenSource/WordNetSQLServer/" target="_blank">WordNet</a> sensory interface so that it generates POSGroup objects, which ‘group’ all objects together, that have the same text and part of speech. This saves a grate number of unneeded splits while processing the English grammar.</li>
<li>Made project saving/opening multi threaded so that the UI doesn’t appear frozen.</li>
<li>Many, many small bug fixes all over the place.</li>
</ul>
<p>Perhaps a final note, best to uninstall any previous versions.&#160; I haven’t yet tested how the installer works when it overwrites a previous installation, so it might screw things up.&#160; And off course, you can get the new installer from <a href="http://www.janbogaerts.name/files/setup.exe" target="_blank">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://janbogaerts.name/index.php/2009/09/12/nnd-0-2-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NND 0.1.1 released</title>
		<link>http://janbogaerts.name/index.php/2009/06/03/nnd-011-released/</link>
		<comments>http://janbogaerts.name/index.php/2009/06/03/nnd-011-released/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 18:41:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Updates]]></category>

		<guid isPermaLink="false">http://janbogaerts.name/index.php/2009/06/03/nnd-011-released/</guid>
		<description><![CDATA[It was itching to much, I had to do a new release.&#160; Lots of things have been updated behind the scene, so not much visually new to report (except for the debugger perhaps, that&#8217;s definitely visual). As I mentioned in a previous post, I was expecting some serious coding requirements to get the scanner-parser routines [...]]]></description>
			<content:encoded><![CDATA[<p>It was itching to much, I had to do a new release.&#160; Lots of things have been updated behind the scene, so not much visually new to report (except for the debugger perhaps, that&#8217;s definitely visual). As I mentioned <a href="http://janbogaerts.name/index.php/2009/04/05/update-flow-editor-take-2/">in a previous post</a>, I was expecting some serious coding requirements to get the scanner-parser routines working that transform input streams into output using flows. This definitely turned out to be a slash and dash marathon.&#160; perhaps best to be compared with a hiking trip from point A to B through a jungle with nothing but a machete and a compass: all you know is where you&#8217;re heading and the bug that&#8217;s directly in front of you, nothing else.&#160; Well, I eventually got to point b, only to find a big bear to wrestle with: threading deadlocks.<img alt="Confused" src="http://messenger.msn.com/MMM2006-04-19_17.00/Resource/emoticons/confused_smile.gif" /> Although this might turn out to be nothing but a pesky mosquito, easily rectified.</p>
<p>Anyway, here are some of the most significant changes:</p>
<ul>
<li>Cut/copy paste system: this was still missing.&#160; The backbone is done, the code and flow editors already have a working implementation, the rest should follow. </li>
<li>Deletion system: I updated the deletion system so as to better reflect common editing practices.&#160; This is again done for the code and flow editors, the rest will be done later. </li>
<li>undo system: There were still some issues with undoing network operations.&#160; This should be fixed.&#160; The mind-map editor still requires some redoing in this area (and many more by the way). </li>
<li>Debugger: This is starting to become really useful.&#160; I would not have been able to get the scanner demo working without this. I&#8217;ll explain more about this one in a later post cause it definitely needs some explanation. </li>
<li>Demos updated:
<ul>
<ul>
<li>I have split the echo demo in 2: a word echo demo and letter echo demo. Both give a very basic implementation of 2 different coding techniques to use in neural networks: a singular operation, and a collector. </li>
<li>The English language&#160; def demo is currently able to scan incoming letters and turn them into words and numbers (although there&#8217;s still a problem with the numbers).&#160; This scanner algorithm (which really is a general purpose flow interpreter) will be explained later, cause it&#8217;s a bit funky (to say the least). You&#8217;ll also probably notice that the UI needs some serious speed tuning in order to keep up with the engine. </li>
</ul>
</ul>
</li>
<li>Execution engine: this is where the major hacking had to be done, the axe is still glowing red hot, but it&#8217;s running, oh yea, it&#8217;s running. </li>
<li>Some new instructions: More will probably follow, but I&#8217;m beginning to get a better picture of instruction requirements.&#160; This is starting to stable out. </li>
<li>lots and lots of small fixes. </li>
</ul>
<p>The new release can be downloaded from <a href="http://www.janbogaerts.name/files/setup.exe">here</a>, or through the usual links in the menu. I&#8217;ll probably be spending some more time on posting new entries to explain the debugger and some algorithms. I might also need to start explaining how you actually do you&#8217;re own coding in NND. I&#8217;d say: stay tuned.</p>
]]></content:encoded>
			<wfw:commentRss>http://janbogaerts.name/index.php/2009/06/03/nnd-011-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
