A brief network analysis of symbolism in Blake’s poetry

Extracting symbols and imagery from 18th-century Songs of Innocence and of Experience

Image for post
Image for post
“The Lamb”, from Songs of Innocence and of Experience, Shewing the Two Contrary States of the Human Soul. [London, W. Blake, 1794] 54 plates. col. ill. 19 cm. Library of Congress via Wikimedia

The Songs of Innocence and of Experience

Published in the late 18th century, The Songs of Innocence and of Experience are probably the best known works by poet and artist William Blake, and one of the many treasures preserved by Project Gutenberg. Although regarded by some as a collection of poems for children, the Songs can actually be read as an exploration of human spiritual growth as well as a representation of what Blake himself called “the two contrary states of the human soul”. The antithesis of innocence and experience is visible in the richness of symbols present in this ensemble of poems. Religious figures, animals, tales of light and darkness oppose each other. The positive outlook of Innocence emerges in contrast to the gloomy world of the experienced adult in Experience.

Innocence, experience, and network graphs

An opposition of darkness and light

As the dichotomy between good and evil, between light and darkness, is central in Blake’s work, although in less traditional ways. These polar opposites are represented via the contraposition of innocence and experience.

Named Entity Recognition

After cleaning the text, I delved into entity mapping. I was aware that I was not interested in the regular entities spaCy is trained with, so I created my own, focusing on symbolism and the grouping of different symbols. Here are some.

ENTITY_MAPPING = {'ANIMALS': ['lamb', 'tiger','sheep', 'dove', ...],'HUMAN': ['shepherd', 'boy', 'girl', 'vagabond', 'crown', ...],'RELIGIOUS_FIGURES': [
'angel', 'god', 'divine', 'prays',
'jesus', 'soul', 'spirit', ...
'joy', 'merry', 'weep',
'pride', 'shame','sorrow', ...
'COLORS': ['green', 'white', 'crimson', 'black'],'DAY_AND_TIME_CYCLES': ['morning', 'night', 'day', ...],'NATURE': ['lily', 'rose', 'thorn', ...],}

The network

Once the entities were all set, I used NetworkX to build the graph. A network, and in this case a weighted, bidirectional network, is primarily composed of nodes and edges (or lines that connect the nodes), and I worked my entities so that the collected symbols would become the nodes and the thickness of the edges would represent how often entities appear together in poems. Then I just chose to represent those nodes connected by edges in the same way more than three times in the text, so that the resulting graph would not look like a big pile of words.

Image for post
Image for post
Network graph for Songs of Innocence
Image for post
Image for post
Network graph for Songs of Experience


There is so much that can be added about the symbolism and imagery of Blake’s Songs. This article wants to be a brief analysis of a few of the several layers that the incredible richness of these 18th century works present to their readers, at times hiding it right below the surface. After all, this is what Digital Humanities aim to accomplish: to provide those who look with deeper, and maybe even new, insights into literary depths.

Software developer with academic roots in the humanities. Symbolism analysis in texts, meaningful code & meaningful coding. marta-p.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store