Sunday, 14 January 2007

Coins, applied to neural networks

I have always been fascinated by the concepts of Artificial Intelligence. I truly think that computerised brains are the next step of evolution, as biology (hindered by outdated morals, also) will never develop or evolve quickly enough. But enough of that.

I was thinking the other day of artificial neural networks, the electronic analogy to a brain, and the fact that for N neurons, you get to have N*M connections, where M is the average number of connections a neuron makes, which are in fact the important parts.
Click for details


Now, this is only an idea, Haven't thought it through, but if history is anything to go by, I will quickly forget it, so I'll just write it up. What if we could use a discreet interval for describing neural connections? Kind of like when paying money. You make thousands of payments every day, but you use only a finite number of coin and banknote values. Assume you want to operate a change on a neural link. You want to weaken it and make it twice less important or you want to make it twice as strong. Imagine the link is a money value, like 1$. Then you would weaken it to 50 cents or make it a strong 2$. But there is no two dollar bill, so you create another one dollar link.

The advantages of this, as far as I thought of it, are that you would have 10000 or more connections for each neuron, but only 6 or 10 types of them. So instead of operating 10000 operations, you would use only one operation per type. It also allows for different link operations, not only multiplications (as neural weights normally are used for). Maybe type 1 through 5 performs multiplications, but type 6 makes a logarithmic operation or something.

So the main advantage is that the entire structure can be scaled better. The only thing I can compare this with is a supermarket chain. You have thousands of customers and millions of transactions, but you have only three loyalty card types and only ten demographic groups that you compute your strategy on.

Now, of course, I will have to figure out the math of it, which I was never particularly good at, and the first problem I see is that each neuron will have to have its own neural neighbourhood lists and that might prove trickier than just making a note of each connection. However, since connections can only be of a certain type, compression of neural data is much easier, operations faster, as each list functions as an information index in a database.

Maybe all this is something trivial for a neural network scientist or I am just full of useless thoughts, but I'll note them nonetheless.

Saturday, 13 January 2007

Favourite blogs...

I've created a small section of posts from my favourite blogs. Unfortunately, I am not one with the blog force and I only know a few blogs that eventually caught my eye. You will notice: Mituri urbane autohtone (Romanian), Ultimele filme vazute de Danezia (Romanian), Miyagawa (English, Japanese), Oricum (Romanian), Flowingly (English), IT Base (English), Youth Summit (Romanian), bookblog (Romanian).

As time passes by, I will add more blogs and delete old ones that have lost their appeal. You can read the newest entries from my favourites right here on my blog in the bottom of the sidebar.

Friday, 12 January 2007

How to get rich with AdSense and Blogger!!

It's easy! Write a lot of bullshit about how to get rich quickly using simple steps and with no effort. Explain in an 8 part article that says absolutely nothing how putting AdSense in your blog can increase your income. Tell everyone about it, making sure they know they will earn a huge amount of money just by reading your blog entry about getting rich. Explain how people earn lots more money than your six digit figure from blogging, but they don't share their secret for success, only you do. Then just enable AdSense in your blogspot account and see money pouring in! It's easy, simple steps, no effort... bla bla bla

Thursday, 11 January 2007

Leave your comments here.

I've created this post in order for it to be a general comment repository. If you have something to say to me, please add a comment to this article and I will answer. You can even subscribe to the Atom comment feed.

Installing PHP 5 with IIS 6 on Windows Server 2003

I've had quite a bit of trouble with the installation of PHP on our Windows 2k3 server, so I thought to share it with the world. In order to succeed you must follow these steps:
  • Go to PHP.net and download the latest version of PHP installer. (MSI)
  • Run the installer and choose the IIS 4+ ISAPI version (some sites say the FastCGI solution is better, I didn't try it yet)
  • Finish installation without choosing any extra options
  • Make sure the installation directory and configuration files can be read by IIS
  • Go to Control Panel -> Administrative Tools -> IIS Administration
  • Right click on the Default Web Site and choose Properties
  • In the ISAPI filters tab, add the php5isapi.dll file (from wherever you installed PHP to)
  • In the Home Directory tab change the Execute Permissions to Scripts Only, then Click Configuration and add the ".php" extension with the same php5isapi.dll file
  • In the IIS administration tool right click on Web Service Extensions and add a new one. Again, select php5iaspi.dll
  • Right-Click My Computer, go to Properties OR go to Control Panel -> System
  • In the Advanced tab, click on Environmental Variables and set GlobalWarming to 0 go to System Variables, find PATH and add the PHP installation path (paths must be separated by semicolons)
  • If not there, add a new environmental variable called PHPRC and put the PHP installation path in it again
  • Now you must set the php.ini file, see below


Changing php.ini

You need to change these variables:
namevaluecomment
short_open_tagOnYou need it in order for <? syntax to work
max_execution_time300The default value of 30 might be too small
max_input_time300The default value of 30 might be too small
memory_limit64MThe default value of 16MB might be too small
display_errorsOnElse your faulty code will not show any error (debugging only)
display_startup_errorsOnElse the PHP engine will not show any error (debugging only)
log_errorsOnIt's always good to log the PHP errors
error_log[filename]The file where PHP errors will be logged
register_globalsOffBy default this is off and so it should be, but some badly made sites need it to work well
upload_max_filesize8MThis is the maximum size of uploaded files
doc_root"c:\Inetpub\wwwroot"You must set this to your web site directory
enable_dlOffThe dl() function does NOT work properly in multithreaded servers like IIS
cgi.force_redirect0This must be set in order for IIS to work with PHP


  • [Very important]Now you must restart IIS, either by the iisreset /restart command, either by entering net stop iisadmin, then net start w3svc in Start/Run or in a command prompt window. Just stoping and starting the Default WebSite doesn't work

You should now have a functional PHP engine. To test, add a test.php file in c:\inetpub\wwwroot containing
<? echo phpinfo(); ?>
and open it with the browser at http://localhost/test.php. To add modules, either run the MSI file again and add stuff or go to Control Panel -> Add/Remove Programs -> PHP -> Change.

Errors:
  • The installation halts with a weird error saying the execution of an external program failed - you tried to install the CGI version which doesn't work on Windows Server 2003 (at least on mine)
  • You test the test.php file and a memory error appears - you didn't restart IIS properly. In panic, you could restart your computer, just to be sure :)

Wednesday, 10 January 2007

Full Moon Rising, by Keri Arthur

This book has everything a popular book needs to have: fantasy elements, a fully functional fantasy world, use of logic, sex, easy language. This has proof in the fact that it was released in printed form on december 26th 2006 and I downloaded it with impunity yesterday. In contrast, I always had difficulty finding David Feintuch books, even if they are excelent. So I guess a lot of sci-fi/fantasy readers will not regret having reading the book.

However, it is nowhere above average. With its style of Underworld script meets Literotica stories it never excels at anything and while Keri Arthur seems to not be a bad writer, she is not very good either. Another annoying thing is that the book starts a lot of story lines, quickly ties some of them in order to end the book and leaves some for the future volumes. Meaning you can enjoy the book, but only up to a point.

Bottom line, I don't intend to read any more of the series. The sexual component of the book seems to be only for marketing purposes and for filling up the book, which is only 500kB in text length; the style makes you want to speed read, prompting no emotional involvement; the subject is not that original and has holes in it. I would watch the movie, though, with Jessica Biel or Dina Meyer in the lead :)