How can I effectively (and easily) get rid of unwanted subgenre tags?

Okay,… I’m sitting here feeling completely overwhelmed. Collecting music is like model building. Some people buy a kit, others carve every piece themselves, but both use glue. I’m definitely the “kit guy.”

I mean, I can understand if someone wants to organize their music collection as meticulously as possible. Thumbs up—I think that’s great. But I have no idea what to do with 2,100+ genres. When I use the tagger, my wide-ranging but shallow music collection ends up full of hundreds of tags I’ve never even heard of.

If I want to clean them up automatically, I need a script or a plugin (thanks to rdswift for the genre mapper). But I don’t understand how to distill the tags in a way that makes sense to me without starting from the very bottom.

[^;]*(acid house|afro house|amapiano|ambient house|balearic beat|ballroom house|bass house|big room house|brazilian bass|changa tuki|chicago house|deep house|diva house|electro house|euro house|festival progressive house|french house|funky house|future bounce|future funk|future house|g-house|garage house|ghetto house|gqom|hard house|hip house|italo house|jackin house|jazz house|jersey sound|kwaito|latin house|melodic house|microhouse|organic house|outsider house|phonk house|progressive house|slap house|speed house|stutter house|tech house|tribal house|tropical house|uk jackin|vinahouse|vocal house|3-step|hardbag|complextro|dutch house|fidget house|french electro|melbourne bounce|gospel house|juke|donk|hardbass|bacardi|lo-fi house|epic house|deep tech|rominimal|guaracha edm)[^;]*= ~house

This chunk of regex/code alone is necessary to bring “House” in the Genre Mapper down to a level that’s good enough for me. And House isn’t even 3% of the genres. I also can’t simply replace or merge “House,” because not everything that contains “House” is actually House, and not everything that is “House” has “House” in its tag.

So, for example, how can I tell Picard:

If genre 
is not equal to (House|Roasted Rasin Rock|Jazz|Industrial Rock), 
then genre is equal to parent genre and repeat if, 
else end if

That way, I’d only need a few lines of code, it would always be up to date, and it would be much simpler and more accessible.

Also, why aren’t the non-subgenres even highlighted or pinned at the top on Genre list - MusicBrainz ? :slightly_frowning_face:

Here is my (pretty opinionated) personal opinion.

Genres in Musicbrainz (and hence Picard) are not brilliant, for the following reasons:

  1. They are not curated - by which I mean they are not subject to the normal quality assurance voting process that almost all other changes to metadata are subject to. So anyone can tag a release or a work with a genre even if it is not the case i.e. Beethoven’s 5th could be tagged Prog Rock.

  2. They are a subset of tags - the list of genre tags is curated, but this list is probably not comprehensive and indeed may have errors in it.

  3. Typos probably abound. I want to tag an obscure Queen release as Rock (which is a genre tag) and I type Rocks instead - that doesn’t count.

  4. Genres are (or rather should be) hierarchical. A major genre is Rock - but there are sub-genres Heavy Metal, Prog Rock, … To add further complication, genres also include fusions - i.e. they are sub-genres of two or more higher level genres.

There are other metadata web-sites that do have curated genres. I have no idea why MB hasn’t matched or surpassed them, instead giving up its position as the comprehensively best music metadata site to others.

  1. Like cover art and lyrics, Picard probably needs to have proper plugin support for Genres - i.e. for having multiple plugins to gather Genres from multiple sites, prioritisation to tell Picard how to choose between them or merge them together, and filters so that you can choose which genre hierarchy levels you want to keep or get rid of any genres that you don’t personally want.
1 Like

Okay… I figured I could sit here and be upset because no one did my work for me,… …or I could do something useful that would help me (and maybe others, too). I clicked through the 2,100+ entries on the genre page and entered all the genres into an Excel spreadsheet.

My idea was that, with a little editing, you could relatively quickly copy the data into a script or the Genre Mapper to create your own filter or list of genres to group together.

I tried to place all subgenres (and subsubgenres, etc.) next to their parent genres, strictly following the subgenre links. The “Big Nine” (Classic, Electronic, Folk, Jazz, Hip Hop, Metal, Pop, Punk, and Rock) each have their own page in the spreadsheet, while smaller groups and country-specific groups share the last two pages.

Here’s an example using rock:


Rock is the parent genre; the next column lists the direct subgenres (acoustic rock, Afro rock, […] classic rock […] hard rock). The same applies to the subgenres—alternative rock is the parent, with its subgenres listed next to it (marked by the blue box). At the top of the page is “emo.” According to the link, “emo” has two parent genres, which is why I’ve listed it under only one genre to avoid duplicates when copying.

I hope this helps; it will help me.

The Excel-.xlsx hosted on SwissTransfer:
If someone has downloaded the .xlsx file, finds it useful, and is able to do so, it would be great if they could make it permanently available.
Edit: aerozol has already uploaded the sheet to the site. See the following post.

6 Likes

Wow, that’s a monster effort.

I have saved the sheet to my MetaBrainz Google Drive account (click here to view). Please let me know if you (or anyone else) wants editing access.

I also added a link in the Wiki, at the top of this section: Picard Resources - MusicBrainz Wiki

2 Likes

It wouldn’t be a bad idea to have editing rights for the sheet. Your quick response and the fact that you added the sheet to the wiki right away motivated me to work out a slightly more comprehensive version—version 1.1, so to speak. We don’t want something half-baked just sitting around there.

Cool, give me an email via my MB profile (or request editing access via the Google Sheet) and let’s do it! Edit: done

We could also let anyone edit it and see what happens :slight_smile:
I wouldn’t be keeping an eye on it, but edits can be rolled back and access rescinded.

I was annoyed with having to edit every single tag (line breaks and tabs) when copying them into the Genre Mapper. So I pasted the complete expressions directly into the spreadsheet to group entire categories together. They’re generated from the genres using a formula, so the spreadsheet can be kept up to date without having to rewrite the expressions every time…

I’m not that great with Excel, so it still looks like a mess, but it works. The last two pages are still missing, but I’ll keep working on it.

1 Like

I’ve finished the spreadsheet to the point where I’d say it’s ready to recommend to someone. I spruced it up a bit and added a short “How to” guide to the first page.

Maybe someone would like to take another look at it to see if I’ve made any mistakes. If it looks good, I would go back into hibernation. :sweat_smile:

3 Likes

They are curated - if you find a genre tag you think is wrong, you can vote against it. It’s just a different implementation of curation vs the edits / votes ones, but given how many edits do not get voted on, I’m not sure that would be a significant improvement? If anything, it’s easier to downvote a wrong genre I’d say.

Our genre implementation already does all of this, although the API needs updates for this to be more useful outside the website itself. But funk metal - Genre information - MusicBrainz is already “a fusion of funk rock and metal”, for example - metal - Genre information - MusicBrainz itself is not listed as a subgenre of rock, but whether it’s a subgenre or a different genre that branched out of it is not a clear question so I do not see that as a mistake (metal as a top genre can be more useful for many). Once MBS-12368: Add annotations, rels and aliases to genre WS by reosarevok · Pull Request #2518 · metabrainz/musicbrainz-server · GitHub gets finally merged and released, maybe Picard and others can follow those relationships as needed to get to a top genre if the user wants to (although admittedly that could currently take a bunch of calls so we might need to work with the Picard team on a more efficient way to do it).

4 Likes

Not the same thing at all. Votes are workflowed, and if you subscribe to an artist or a release you get told about it. And the votes are given reasonably careful thought by the voters, with some discussion (via notes) that often influences people to change their minds. This is not the same as visiting MB and throwing a vote into the ring without knowing what the genre means and without discussion, and happening to spot a tag you disagree with and downvote it (or worse still having to continually visit releases or artists to check whether their genres have been graffitied (random genres added) or vandalised (genuine genres removed).

A museum is curated by deciding what is on display or stays in storage, what areas and sequence it is shown in, and what labels are attached, and doing this curation takes some knowledge to be done well. Museums are typically curated by people with some expertise and a calling, and not simply by a random sampling of the visitors who happen to be passing through.

However, playing devil’s advocate, The Wisdom of Crowds theory does provide some sort of counter argument - but this appears to be more about numeric averages rather than a choice of words, and in any case people are deliberately asked to think about it before making a guess.

Or to play devil’s advocate another way, if the way MB curates tags is so good, why don’t we change all the other curation to the same approach as we use for genres?

Additionally I don’t think that doing genres as a subset of tags helps - because it puts a lot of white noise around the curation of something that we both seem to think is important.

HOWEVER…

Really, the best way of seeing whether the genre curation works would be to undertake some analysis to compare the genres on MB with those on one or more other leading internet genre sources (and as a baseline perhaps to do the same thing with some other part of MB data to have a baseline). Undertaking this analysis might give us genuine evidence one way or the other about the quality of the MB Genre information.

1 Like

This is tricky to do when someone has added multiple thousands via a script. I come across some very weird tags, down vote them, then click on them and see how wide spread it is. Usually far far too many other releases to fix without learning how to write a script to do it.

There are weird tags that duplicate MB fields (like “English”) or tags that should be series (like “top 4 tracks”) Or just plain opinionated garbage (like marking Punk Music as “Non-Music”)..

But you are talking about folksonomy tags in general, which are intentionally free to use for various uses. The genres are a subset of those tags.

3 Likes

I’m confused. I don’t have “use folksonomy tags as genre” ticked, but I get some of my music marked as “non-music”.

(Ignore me… don’t want to drag this OT)

Exactly my point about mixing tags and genres. IMO tags are essentially utterly subjective white noise - I am unclear why they should even have a role in a curated metadata database like MB.

Exactly my point about curation. The way tags are “curated” is open to abuse and not really curation.

1 Like

But the above are all no genre tags. That’s really derailing the discussion about genres. Nobody claims that “top 4 tracks” is a genre, and it is not listed as one on MB.

I don’t know where you get your genre tags from. Maybe this tags are already in your files. Or you have a plugin like the last.fm enabled. Last.fm doesn’t have genres, they only have tags. Or you use a script to set folksonomy tags as genre.

But if you don’t have the folksonomy option enabled, Picard will only use genres from MB.

1 Like

None of the above. I don’t get it either, but I know I go down vote the non-music ones and I stop getting them.

I experimented with trying to improve the genre tags in my music via picard.

Edited: Non-music is listed under genre ( Tag “non-music” - MusicBrainz ) and random a soundtrack album that is clearly music ( Release group “Good Morning, Vietnam: The Original Motion Picture Soundtrack” by Various Artists - Tags - MusicBrainz ). I can’t find the punk stuff that was oddly tagged as there is just too much in that list of Releases and not really searchable.

It is confusing that tags and genres seem to have this overlap.

(I’ll stop replying as you are pointing out I am off topic so don’t want to confuse things any more, but I agree with the points above)

Only half music :slight_smile:

You can’t label the album as “non-music” when there are a few samples from the film between some of the tracks. Many soundtrack albums do this and it makes no sense to me trying to say that a music album from a film is “non-music”. Anyway, we off topic by a mile now. At least it shows the voting here works as that is on a “-3” making it not appear.

Silly question… If you’re the only one to tag an album as “soundtrack” and I vote against it, the tag disappears. Is it really gone, or is it just hidden?

I mean… otherwise, the two of us could end up playing a few rounds of tag tennis on some innocent little release.

Tags get just hidden. Or in this specific example they are still shown, with a vote count of 0.

If it gets an additional downvote, the vote count gets negative.Tags with a negative vote count are not shown by default. But on an entity’s tag page you can choose “Show all tags” to see them, e.g. on Paradise Lost - Tags - MusicBrainz