Immutable and pure

The third in a series of posts about how we think about coding and functional programming. The first was The Homunculus and the second was State

The subsections of programs referred to in the previous section are often called functions. In mathematics, the term function has a fairly strict definition …

more ...

Neuralgae

For NaNoGenMo (national novel generation month) 2015, I wrote some Python which generates a series of loosely-coupled deepdream images, and adds eight-line surrealist 'poetry' to them based on the image categories used to draw them.

 

The full text is here: Neuralgae.

The source code and a fairly detailed description of …

more ...

State

The second in a series of posts about how we think about coding and functional programming. The first was The Homunculus

Even though I've complained about the metaphor of the homunculus, it can be used as a useful device to explain the differences between programming paradigms to a non-technical audience …

more ...


The thousand faces of CaffeNet

Here are the thousand image categories in the ImageNet Challenge data visualisation context, rendered onto a webcam photo of me using the deepdraw technique.

This is the set of image classifications which the standard Deepdreams imagery is based on: as more than one hundred of the categories are dog breeds …

more ...

The Homunculus

This is the first in a series of posts about the way we think about programming, the influence these ideas have on how we write code and what languages we choose, and why I like the functional programming paradigm in general and Haskell in particular.

Consumer notification: I've worked as …

more ...

Lucid dreaming with neural nets

The Deepdreams algorithm takes a deep neural net trained for image-recognition and uses a forced-feedback loop to induce a kind of machine-pareidolia or hallucination, with beautiful and often nightmarish results:

Cassowary

The original algorithm picks details from all of the neural net's training data, based on resemblances to the original image …

more ...