Eu acho que a distinção que você está procurando é mais empírica vs. teórica (em oposição a supervisionada vs. não supervisionada), mas eu posso estar errado sobre isso. Em outras palavras, o ideal seria ter uma definição teórica de vários gêneros, em vez de apenas um monte de dados opacos que podem ser usados para classificar uma música [sem qualquer entendimento real].
No entanto, para a classificação geral de gênero, você provavelmente está preso ao menos com o treinamento de exemplos, mesmo que seja apenas para criar as definições de gênero em primeiro lugar. Com relação ao seu exemplo, considere com que frequência as pessoas discutirão [no YouTube] sobre se uma determinada faixa é realmente dubstep (por exemplo, qualquer faixa que seja mais dublada e menos instável , mesmo que o gênero tenha começado sem nenhuma oscilação real). As pessoas definem gêneros ao longo do tempo através de exemplos, portanto, é razoável esperar que algoritmos que replicem esse comportamento também exijam alguns exemplos. A maneira como as pessoas descrevem os gêneros é quase como um vetor de recurso de qualquer forma - eles fazem uma lista de perguntas sobre a música (por exemplo, é mais instável ou instável? Possui muitos sub-graves? Quanto tempo dura? Qual é o ritmo? Existe um vocal? etc.).
Obviamente, você pode escolher uma lista de recursos que também fornecem uma compreensão intuitiva do gênero. Um recurso como "Dynamic Range" é algo que uma pessoa também pode detectar de ouvido, mas algo como "Time Domain Zero Crossings" não seria muito intuitivo - mesmo que funcione bem para classificação. O documento a seguir possui alguns recursos que podem ser interessantes para você:
George Tzanetakis, Perry R. Cook: classificação de gênero musical de sinais de áudio. IEEE Transactions on Fala e Processamento de Áudio 10 (5): 293-302 (2002) ligação .
Para medir a rugosidade, a rugosidade psicoacústica seria um bom ponto de partida, mas pode não ser suficiente para distinguir entre condutores de dubstep e condutores elétricos, por exemplo. Para distinções mais refinadas, uma coisa a considerar é o reconhecimento do timbre . A tese a seguir apresenta uma pesquisa decente de técnicas:
TH Park, "Em direção ao reconhecimento automático de timbre de instrumentos musicais", Ph.D. dissertação, Universidade de Princeton, NJ, 2004. link .
Há também um modelo relacionado à rugosidade perceptiva em Timbre, Tuning, Spectrum e Scale que é usado para construir escalas personalizadas para timbres arbitrários. A ideia é que harmônicos muito próximos produzam frequências de batida que são percebidas como dissonância. Parafraseando do Apêndice F e E ,
Ff1, f2, . . . , fn
DF= 1 / 2 Σi = 1n ∑j = 1n d( | fEu- fj|min ( fEu, fj))
d( x ) = e- 3,5 x- e- 5,75 x
é um modelo da curva de Plomp-Levelt .
É usado para medir o quão agradável um determinado acorde é em relação a um timbre (minimizando a dissonância). Não sei se a aspereza da variedade psicoacústica ou a dissonância intrínseca seriam muito proveitosas para seus propósitos por conta própria, mas elas podem ser úteis em combinação com outras métricas.
Você provavelmente terá mais sorte em classificar timbres matematicamente do que gêneros. Por exemplo, as cordas têm harmônicos pares e ímpares, mas um clarinete possui apenas harmônicos ímpares (cf. onda dente de serra , onda quadrada ). A oscilação do Dubstep tende a ser feita com filtros acionados por LFO (filtros passa-baixo e / ou formantes), então algo como o Spectral Flux (consulte [Tzanetakis] acima) pode ser um bom ponto de partida como um recurso. No entanto, duvido que alguém tenha estudado a classificação matemática de oscilação ainda;)