Guest Post: Using Generative AI to Illustrate Concepts
A philosophy professor explains how and why to use AI image generators like Stable Diffusion to illustrate concepts.
[image created with Stable Diffusion]
Welcome to AutomatED: the newsletter on how to teach better with tech.
Each week, I share what I have learned — and am learning — about AI and tech in the university classroom. What works, what doesn't, and why.
Let's hear from a philosophy professor, Eric Steinhart, about how he uses AI image generators to illustrate concepts, as well as his general recommendations for their use (included at the end).
🎨 Illustrating Philosophy
Philosophical texts can benefit in many ways from being illustrated. When illustrated, they become more attractive and more comprehensible. Images provide a source of visual information, which can be very powerful, and, I think, conceptually just as deep as verbal information. But here I want to focus on the how rather than the why.
Digital tools like vector graphics apps and drawing tablets make it easier for philosophers with painterly talents to produce images. Very useful digital tools have recently appeared: AIs that produce images. Examples include DALL-E 2, Midjourney, Stable Diffusion, Deep Dream, and others. It would be hard to underestimate their power.
Here I’ll discuss some of the basics for using them to make philosophical illustrations. An immediate warning: you don’t just type in some description and miraculously get an image. It takes work, work often very frustrating and very hard, taking hours, sometimes days.
I found Stable Diffusion (SD) to be the best at producing conceptual or philosophical imagery. And it’s very easy to use. So I’ll use it for the specifics here. However, the general points transfer to the other AIs.
You go to the SD website, sign up, and make an account. Making an image costs credits, and, after exhausting some free starter credits, you have to pay. At the time of this writing, it’s 10 USD for 1000 credits. It costs 3.33 credits to make basic images, and the cost per image goes up from there. You can make 300 basic images for ten bucks. As it turns out, 300 is not a lot. Still, SD is not expensive.
📷 Conceptual vs. Prosaic: An Example from Nietzsche
Before getting into the how-to details, I want to stress that I’m interested in images that do conceptual work.
While prosaic or literal images are appropriate in some philosophical contexts, I don’t think they add much value. They’re just decorative, and I’m usually after something deeper.
Surprisingly, AIs can go very deep. Consider passage 124 from Nietzsche’s Gay Science. A slightly edited version looks like this:
We have left the land and have embarked. We have burned our bridges behind us and destroyed the land behind us. Now, little ship, look out! Beside you is the ocean: to be sure, it does not always roar, and at times it lies spread out like silk and gold and reveries of graciousness. But hours will come when you will realize that it is infinite and that there is nothing more awesome than infinity. Oh, the poor bird that felt free and now strikes the walls of this cage!
You can prompt SD with both text and images, and I fed this text into SD. By default, SD produces four variant images from your prompt (you can change this, but I found four to be just right). Among the first four, SD produced a prosaic image, namely, a ship:
While ships are symbolic for Nietzsche, the image of the ship has little conceptual depth. What about the destruction of the land? The infinite? The bird? I wanted an image that was more philosophically suggestive, that would stimulate reflection.
You make images with SD through evolutionary iteration. SD lets you select any image for variation. You select it, hit the “Variations” button, and it makes four variants. You select a promising image, you vary it. Repeat until you find images that do what you want.
It’s essential to stress this iterative process. The process is like wandering through a landscape of possibilities with a camera. At first, your wandering is likely to be pretty random. You don’t find much of value. But as you select the slightly more interesting images, evolution does its work. The images get more interesting, more relevant.
With the Nietzsche passage, SD and I pretty quickly evolved this image:
This second image is more suggestive. It shows the destructive power of the sea, it shows an isolated and vulnerable human, it uses the sun to suggest the infinite. The sun, of course, is Platonic, and it will play a central role in the next section in the Gay Science, the death of God section in 125. So this second image does some philosophical work.
Obviously, SD lets you select images for downloading. Currently, you can download a 512 x 512 pixel image for free. You can “upscale” the image to 1024 x 1024 for 0.2 credits. Upscaling is necessary if you want to be able to print images or even use them on high-resolution monitors. So I always upscale the images I download.
Some people do post-production, which can involve editing their images in Photoshop, Gimp, or similar. And images can be greatly upscaled or otherwise enhanced by running them through photo-enhancing software like Topaz AI or Luminar AI.
☀️ Illustrating Platonic Philosophy
To show how SD can produce a range of types of philosophical images, let me turn to a specific text. I’ve been using SD to illustrate a book I’ve written that uses ancient Platonism to develop a modern paganism. (You can download the PDF, fully illustrated with dozens of images and drawings, from my website.)
Platonism has an extremely rich system of eidetic symbols and analogies, so I’m able to directly use SD to develop images from that vocabulary. But I had to invent many images myself, and I used SD to help me. So let me discuss that process, working from prosaic to more philosophical. Here I’ll give six images, then talk more generally about the process.
Stone circles play various roles in pagan practices, so I wanted an image of a stone circle. I just wanted this image to do decorative work, not conceptual work, just a literal picture of some standing stones. I prompted SD with texts describing stone circles, standing stones, and so on. After some variation with text prompts and lots of iteration, I got one that made me happy:
Platonism uses images as icons for concepts. These include the four elements (water, earth, air, fire). Water often symbolizes non-being, the abyss. The abyss of non-being has been described as negating itself, so that being-itself emerges. Make what you will of the philosophy, the point here is to illustrate it. Just as water symbolizes non-being in the Platonic lexicon, earth symbolizes being-itself (earth is the ground of being). To express the emergence of being-itself from non-being, I wanted a rocky island emerging from a stormy sea. After prompting and iteration, SD generated this:
I was able to get this image with some fairly literal text prompting like “A rocky island rises from a stormy ocean”. But this image required much iteration, varying the text prompt and repeatedly varying images.
🪞 Using Analogies in Philosophical Illustration
Philosophical imagery is often analogical (Plato’s divided line, his myth of the cave). As part of my project, I wanted to illustrate how the Platonic One produces the indefinite dyad, that is, the Two. One idea is that the One comes into self-relation, thus becoming the One-as-subject and One-as-object. The One becomes two Ones. Through lots of experimentation, including generating all sorts of experimental images, I arrived at using a wolf for the One. Both have connotations of wildness. But I wanted two wolves somehow. After much iteration, I got two wolves.
On its own, SD started producing images with two points of light between the wolves, and I selected for images that enhanced those two points of light. They serve as the dyad, emerging from the self-relation of the One.
Here’s an important point: SD will often make its own novel and useful contributions. It isn’t merely responsive, it’s generative.
Here’s an image that does the philosophical work:
This image was not easy to generate. It required many dozen iterations, it was frustrating, and I went down many evolutionary dead ends. I’ll talk about the process a bit more shortly.
But here’s another analogical and conceptual image. Platonists and pagans often use the image of the world tree. Plotinus gave an analogy: just as a tree branches from a single root into many branches, so the One branches into many things. I wanted an image that combined the sea of non-being, the island of being-itself, the sun as the Platonic good, and the world tree. After much work, I got this:
I wanted pictures of deities, pictures that emphasized the bodily nature of these pagan deities, but also that they are superhuman. So here’s a goddess, who looks like Hekate to me:
This image was problematic to generate, and I’ll come back to that shortly. Let me finish this series with an even more conceptual example.
🌫️ Moving Further into Abstraction
Part of my Platonism portrays the One as producing the beings in order to bear witness to the Good. How to depict this visually? The One is the earth, so a rock or mountain will do. The Good is the sun. So I wanted an image that has the One appear to be generating something cosmic in the direction of the Good. This imagery is analogical, but its parts are symbols, arranged to illustrate an abstract relation.
I used prompts like “A rock bears witness to the sun”. I got pictures of literal bears. But when I modified the prompt to “A rock testifies to the sun”, I immediately got some useful initial images, which got better very quickly. Here’s one I like:
👉 General Pointers about Stable Diffusion
Here are some general pointers about the process with SD.
You can give SD both text prompts and image prompts.
Generative AIs have been trained on conventional imagery, so they tend towards the conventional unless you knock them out of those attractor basins. One way to do this uses contextual prefixes. You precede your text prompt with “Visionary art”, or “Fantasy”, “Science fiction art”, “Abstract art”, “Conceptual art”, “Surrealist”, or “Psychedelic”. And often contextual suffixes. You end your text prompt with “Surrealistic in the style of Salvador Dali”, or “Psychedelic in the style of Alex Grey”, and so on. If you want to make an image of some philosophical concept, you’ll need to bracket it with lots of prompts that tell SD that you’re going abstract.
You can use seed images to get around the limits of the AIs. SD just cannot produce an octopus, a honeybee, a centaur, or a deity with more than two arms. So you need to start with an image prompt (a seed). SD allows you to upload seed images. To get my many-armed goddess, I used an image of a radiolarian from Haeckel. When I’ve used seeds, I make sure to use public domain images, or images I’ve drawn myself. SD can’t do much with black and white line drawings. It needs color. I also used SD to make some of my vector graphics drawings more life-like and vivid.
The technicalities can get complicated, because SD has lots of tunable knobs and sliders. I’ll just mention a few details.
You can vary the strengths of the text prompt and the image prompt. So if you want an output image that preserves your input very closely, you set the image strength to near 100%. For more variation, set it lower. SD comes with 35% as a default, which often works well.
SD produces its images by iterating from a random seed, and you can control how many times it iterates. For 3.33 credits, you get 50 iterations. That’s not much imaginative power. For complex images, I typically needed 90 to 120 iterations. 120 iterations takes 8 credits. So you can burn credits fast.
SD won’t make pornographic or violent images. Nevertheless, it will start to turn images of humans into erotic then sexually explicit images. It won’t show you the explicit images, it will tell you that it made an inappropriate image (blurred out), and that you won’t be charged for it. Consider centaurs. Try asking it to make a centaur, and it will just make blurred out “inappropriate” images. I don’t know why.
So here’s a philosophical constraint: if you ask it to illustrate the trolley problem, and tell it about people tied to a track and getting killed by a trolley, it will tell you that your prompt is inappropriate and it won’t make images. So how would you illustrate the trolley problem? A literal image of the trolley, and the tracks and people, does no conceptual work. This is a great challenge.
You have to go abstract: ethical conflict, opposed ethical ideas, dilemmas, spiritual struggle, and so on. What would you want a non-literal, that is, conceptual, image of the trolley problem to look like? And here you’ll run into practical trouble: SD can’t draw a track or road dividing. You’ll need to use a seed image if that’s what you want.
You have to work to make these images, you have to experiment. That process itself, I think, is philosophically valuable.
🔗 Links
We will be exploring this in the coming weeks, along with a parallel solution for Microsoft Word (spoiler: they are not “hacks”):