Photo (c) Jan Trutzschler von Falkenstein; CC-BY-NCPhoto (c) Serge BelongiePhoto (c) Rain RabbitPhoto (c) Samuel Craven

Research

I am an academic computer scientist, conducting research into automatic analysis of bird sounds using machine learning.
 —> Click here for more about my research.

Music


Other

Older things: Evolutionary sound · MCLD software · Sponsored haircut · StepMania · Oddmusic · Knots · Tetrastar fractal generator · Cipher cracking · CV · Emancipation fanzine

Blog

ChatGPT (and the other GPTs) is an example of "large language models" that are making a big splash at the moment due to their unprecedented abilities at generating plausible text on demand. Of course it's far from perfect -- for example, many people noticed its tendency to make up facts. But here at university we're noticing its impact. Many conversations around the coffee machine about how to grade students' work, and the extent to which students are using ChatGPT.

Students in my class have used ChatGPT to do the following:

All of these are in my opinion pretty good, positive examples of how to use an AI assistant without defrauding the university system. As long as you can learn how to use an AI assistant without cutting out your learning process, it's a good "teaching assistant". That is the new skill to learn.

Our university department has had a very interesting reaction to the availability of these tools. Instead of a blanket "no" response (which would be understandable given the vastly increased risk of some types of cheating), we now ask for a "statement of technology" with every report (e.g. thesis), i.e. a statement of what technologies were used to accelerate the work, and how they were used. There are many technologies, e.g. auto-translation, or grammar-checking, and it's very coherent to include ChatGPT within a general policy.

The standard plagiarism-checking system (TurnItIn) can't detect this new type of auto-generation. That's certainly an issue, and we will have to wait and see how that plays out. But still, old-fashioned plagiarism happens, so we still use plagiarism checkers, and perhaps they will improve. We now have to teach students, not only how to avoid plagiarism in cited/quoted work etc, but what to do and what to avoid when using text-generation systems. It seems so far that, generally, students understand that

  1. it would be fraudulent/plagiaristic to submit ChaptGPT text directly as if it was their own;
  2. ChatGPT text might not get them the highest marks anyway;
  3. but on the other hand, it's a useful tool that can help them to learn.

I asked one group if they thought students would be at a disadvantage if they didn't use this tech, and the answer was "Yes".

In general, ChatGPT produces plausible and fluent prose (or code), but it has a few drawbacks which means students need to be careful and critical with its outputs: It can be bland and generic, not really getting the incisive point. It often makes up facts, or people, or citations. It can generate bad code, or working-but-poor code that becomes hard to debug. It seems clear that students understand this.

Teachers also understand that their teaching methods must account for its existence: for example, instead of pretending we can insist that no students look at ChatGPT, some teachers use it to generate "example answers", and then the class is invited to critique those answers.

There's a political/systemic question, of the concentration of power in the company that controls this tech, that absorbs and privatises all of the text data that anyone might enter into the system. I think there will be rival systems, and truly open-source systems, with the same capabilities pretty soon. But all the same, this concentration leads to the same concentration of data that the search giants such as Google have capitalised on in recent decades - so, the same situation, but even more concerning as the power of these systems becomes more impressive.

I don't blame students for using this algorithm. For now, I don't want to use it myself, partly for these systemic reasons. The technology is powerful and useful. Can it be made truly open: available to all, without having to submit your data to some foreign company? Can it be held democratically accountable, so that its impacts can be managed by a political process that gives everyone an equal say (i.e. our governments)?

In principle, we can answer these systemic questions "yes" -- and hopefully we'll get there. But the issues aren't new, they're the same ongoing issues of the concentration of power and resources in modern highly-connected societies, in which data is one of the increasingly pivotal resources. Thus far we haven't really succeeded in keeping power and resource from becoming hyper-concentrated over the past 40 years. The issues aren't new, but they become more and more obvious.

(Further reading on the power dynamics: "ChatGPT and more: Large scale AI models entrench big tech power".)

technology · Wed 17 May 2023

A very simple loaf, good for a tea break - it's easy, only a handful of ingredients, and vegan too! I am told that it's a classic wartime recipe.

I only used one tbsp of sugar, to keep it on the un-sweet side, so you can have a slice of this buttered if you like. But if you'd like it more like a standard cake sweetness, you would simply add more sugar (e.g. double it).

This version of the recipe is adapted from Ganga/LifeTimeCooking whose nice post about it tempted me to do some baking today.

Mix the dried fruit (chop any large ones like apricots) with the sugar and the hot tea. Soak for at least an hour or as long as you like.

Mix the flour, cinnamon, salt in a bowl. Pour the fruit mixture and its tea liquid over these. Mix to a thick batter - I had to add some milk to get it to a thick batter stage.

Bake in a lined loaf tin for 30-40 mins at 180C until skewer comes out clean. Cool 20 mins in the loaf tin, then remove onto a cooling rack. Serve with or without butter (doesn't need it).

recipes · Sun 16 April 2023

I don't know how I came across it, but I found this "decolonised" version of Settlers of Catan. ... Decolonised? Well, now that you come to mention it, I hadn't really noticed that Settlers is all based on this mythical idea of a "land without a people", a "virgin territory" which in most historical cases wasn't actually empty.

Catan is a fictional hexagonal land, of course, and there aren't any aspects of the game that strongly hint at America, India, Haiti or any other specific historical colonisations. But once you see it, it's a bit hard to un-see it. So I've been keen to get a chance to play "First Nations of Catan" for a while, just to see if it plays well. Finally we had a go at it! So here's my report back.

BY THE WAY: let me acknowledge that -- as someone pointed out -- it's a bit suboptimal for me, a white Brit, to be playing a white American's game mod, in the name of decolonisation. There are other people who are much better placed than me to do the decolonising. But, well, we try to be allies and self-critical where we can, and if others can tell us more about what's good/bad from their perspective, I'll try to keep my ears open.

Before you read any more of this, I recommend having a look at the original blog about the modified game "First Nations of Catan" to see how it works. They tried to keep it similar to the original, and using the same pieces, but with one player taking the role of an indigenous people.

First thing to say: I liked the game! It immediately gives a very different feel from the pure Catan game because of the asymmetry: there's one player whose moves and whose capacities are different to the others, and so as a Settler player you have to manage your own balance of interests, between the two very different sub-strategies of competing against the other Settlers and competing against the First Nations player.

In our game, one of the Settlers won. The game was very balanced, I think, though the First Nations player reported that they were holding back a bit on their "attacks" rather than going all-out. But, as in a good game of ordinary Settlers, by the end most players were on the verge of 10 points and it wasn't clear who was going to be the winner.

There's a dymanic to this new game which I hadn't realised, but is obvious in retrospect: the First Nations player started off with quite a lot of power to shape the game, and it felt very strongly weighted in their favour --- but then as the game progressed the other players build up their settlements and got more of their own capacity to generate resources, the influence of First Nations player weakened. We've only played it once so I shouldn't make a claim about whether it's balanced, but to me it seemed like it was. It'll be interesting to play more, and to play more "for the win", to see what happens.

games · Sat 15 April 2023

Did you know 2023 is the international year of MILLET? No??? Well don't worry, no-one seems to know about it, though it was decreed by the UN.

The BBC has a nice article about traditional millet in India. But neither the UN nor the BBC seems to be willing to share any recipes. What can I cook with millet? If the UN wants more millet, shouldn't it be the job of the rich world's foodies to get obsessed with it (like quinoa, banana blossom, avocado, ... whatever), so obsessed that the media worries about the global millet shortage?

(Edit: I think the UN's using Instagram to share millet recipes? (I don't use Instagram.) See e.g. this from Chef Pierre Thiam. But it doesn't seem to actually give the recipe details. Also the content I see there seems mainly to conist of "boil millet, and serve some food on top of it"...?)

I found not many recipes online. The two main categories of recipe in English seem to be: (a) very basic veggie burgers - after all, you can squish anything into a flat disc and call it a veggie burger; and (b) pilaf -- honestly, this Moroccan millet and roasted carrot pilaf looks fabulous and also easy, and I can't wait to try it.

In my old recipe books, I couldn't find many clues either. But I did indeed find a millet pilaf (in The New Classic 1000 Recipes by Wendy Hobson, 2003). It seems wise to turn to old recipe books here, because millet is a "forgotten food", used mainly for birdfeed nowadays. In the old millet pilaf recipe, the one thing they do that is not in online material is to toast the millet for 5 minutes in a hot pan before boiling it, to get some toasty flavour in it.

Then, the next challenge... obtaining millet! It's not in any supermarkets here. The only Dutch place I could find it is in Ecoplaza, essentially the whole-foods shop.

So: Experiment number 1. I'm making basic millet burgers:

And the results? Here:

Experiment number 2. This Moroccan Millet & Roasted Carrot Pilaf recipe looks great... and, frankly, it is. The carrot and the spices go really well with the slightly nutty, and slightly "cakey" texture of the millet grain. It's quite similar to any grain-based cookery, really (e.g. couscous, pearl barley), but the texture is different --- "cakey" instead of having well-separated grains. Not inherently good or bad, but different. I recommend this recipe and I'll definitely cook it again.

Experiment number 3 was "Millet, squash and sweet corn pilaf" from a recipe book by Amy Chaplin. It was OK -- sweetcorn mixed in makes a good texture (though a touch mashed-potatoey overall), and the sweetness from the squash and sweetcorn are nicely balanced against the savouriness of the pumpkin seed and soy sauce. However, I'd say the dish needs to be made more interesting - I'd roast the squash instead of boiling, to get the usual lovely caramelisation on the squash, and also add some fresh herbs to it (I think mint would be good).

Experiment number 4: This Millet Masala Khichdi recipe -- I don't know "khichdi" but it's apparently a common Indian dish -- basically a dhal (lentil stew) but combined with grain to make a one-pot Indian midweek meal. It was very dhal in texture, unlike if we'd made it with rice. I'd say it's a good storecupboard dish to know.

Thus far... More research needed! Looking for other top tips, please message me about millet in 2023 :)

food · Sun 05 March 2023

I've been thinking about how our research team can maximise the effectiveness of their machine learning (ML) experiments. I'm thinking of it as maximising the "throughput" but not in the usual computer-science approach (parallel processing, SIMD, GPUs etc) -- instead, I'm trying to pay attention to human factors, the full loop of research and ideas, and trying to maximise the number of useful ML experiment results we have in our hands per month.

Note that the word "useful" in that sentence is not trivial! I don't simply want to run the most ML jobs possible. We're not looking for results, really, we're looking for insights!

We had a discussion of these issues in my group this week. Here are some topics raised by people in the group:

Note that out of these topics raised by my research team, they correspond to items 3+4+5 in this nice list of "Tips for setting up code management in a research lab" -- I can't find the original link but I think it maybe came from Patrick Mineault.

IT · Fri 24 February 2023

This lovely cake is a nice moist vegan cake, made with plenty of zest and juice from a bunch of mandarins. It went down well with our neighbours! You can use oranges instead, or any orangey fruit, I'm sure.

Serves 12, takes about 90 minutes.

Ingredients:

Start your oven pre-heating to 180 C.

In a pestle and mortar, grind the clove, and then add the chia seeds and grind them too. No need to grind them all fine, just as long as plenty of them have cracked. Add 4 tsp water and leave it to stand - the chia should turn it sticky.

Line a one-litre loaf tin with baking paper, and grease it.

Now prepare your mandarins. First of all, use a zester (or a sharp knife, or possibly a grater) to grate the zest off in fine pieces, and then put the zest into a small bowl. Then chop the mandarins in half (across their "equator") and squeeze the juices into a separate jug (mine gave me about 200ml juice). Make sure there are no seeds in the juice.

In a mixing bowl, mix together the sugar, cinnamon, nutmeg and two-thirds of the zest.

The other one-third of the zest will be used for the drizzle on top. We're also going to use one-third of the juice for that, so at this point you take one-third of the juice and add it to the zest that you held back.

By now, the chia will have had a few minutes to turn into a sticky wet blob. Now add this to the jug that still contains most of the mandarin juice. Also add the veg oil and the oat milk to that. Mix all these wet ingredients together, making sure that the chia breaks up and distributes well throughout.

Pour all these wet ingredients into the bowl which contains the sugar and spices, and mix them well. Then sift in the flour, baking powder and bicarb. Mix them well together, and immediately pour this into the buttered loaf pan.

Bake in a buttered loaf pan for 50 min at 180 C, until a knife stuck into the cake comes out clean.

Meanwhile, mix the icing sugar into the reserved zest+juice (remember, this was one-third of what you had). This glazing will be drizzled over the finished cake.

WHen it's ready, take the loaf out of the oven (still in its tin), and use a fork to prick some holes all over it. Chia-based cakes have a slightly "crispy" exterior so you may need to poke enthusiastically. Then drizzle the glaze over the whole loaf, making sure that the bits of zest are spread evenly over.

Allow the cake to cool in the tin for 10 or 20 minutes, then life it out gently, then out of the paper too and onto a wire rack to cool.

recipes · Sun 29 January 2023

Here's my vegetarian haggis recipe. Inspired by this and this. I've only made this once, so consider it a work in progress. But it came out well:

Serves 4--6 people. You can do most of it one day in advance, too.

Rinse the lentils and then boil them for 30-45 minutes. At the same time, boil the barley in a separate pan, until softened but with some bite. Drain both, and set them aside in separate bowls.

The onions and mushrooms should be finely chopped -- the size makes a difference to the texture of the haggis. Melt some butter/marge and fry the onion on a medium heat until well softened but not brown. Add the mushrooms and stir, frying for a couple more minutes before adding the spices.

Add the marmite and treacle to the stock and pour it into the pan. Bring it to the boil, then turn the heat down and simmer gently (15 minutes?), until the mixture is thick and tender.

Grease a pudding basin. Stir the pearl barley into the mixture, then put it all into the basin. At this point, I let the whole thing cool and put it into the fridge overnight, for convenience.

Preheat an oven to 180C. Cover the pudding with foil and bake for 30 mins, then remove the foil and cook for another 15 mins. Leave for 5 mins, then turn out and serve, with mashed potatoes and swede (neeps).

recipes · Fri 27 January 2023

For our group at Naturalis, it's a great start to 2023 because we recently welcomed two new research team members - two postdocs with expertise in AI species recognition: Rita Pucci and Burooj Ghani. Their work is funded by Horizon Europe under three different (but related) projects: MAMBO, GUARDEN, and TETTRIs. Within all three of those projects, our role is centred around providing AI species recognition algorithms.

Photos of Burroj and Rita

Burooj Ghani is working on AI methods for recognition of European birds, bats, marine mammals and grasshoppers based on sounds. Rita Pucci is working on AI methods for recognition of European animals and plants based on images. Together with me, Vincent Kalkman and the ICT AI-team (Laurens Hogeweg and Django Brunink), we'll be refining AI methods, making the algorithms available (among other things, through the Arise online services), and working with the project partners to make these methods fully useful for ecologists and institutions all around Europe.

They will also be members of the wider Evolutionary Ecology research group here.

science · Wed 11 January 2023

Other recent posts: