Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
mind:identifying-rhymes [2016/04/26 17:02]
norkish
mind:identifying-rhymes [2016/06/02 15:54] (current)
norkish
Line 1: Line 1:
 =Identifying Rhymes= =Identifying Rhymes=
 How do we identify rhyming words? In pop music there is significant liberty taken in what constitutes a rhyme. Consider the following words that are rhymed: How do we identify rhyming words? In pop music there is significant liberty taken in what constitutes a rhyme. Consider the following words that are rhymed:
-* "​hard"​ and "​are",​ "​heart"​ and "​are"​ ([[https://​play.google.com/​music/​preview/​Tjmr2lsa2y4ksy2py2e56fmku74?​lyrics=1&​utm_source=google&​utm_medium=search&​utm_campaign=lyrics&​pcampaignid=kp-lyrics&​u=0#​|Just the Way You Are]]+* "​hard"​ and "​are",​ "​heart"​ and "​are"​ ([[https://​play.google.com/​music/​preview/​Tjmr2lsa2y4ksy2py2e56fmku74?​lyrics=1&​utm_source=google&​utm_medium=search&​utm_campaign=lyrics&​pcampaignid=kp-lyrics&​u=0#​|Just the Way You Are]])
 * "​goes"​ and "​clothes",​ "​stoned"​ and "​alone"​ ([[https://​play.google.com/​music/​preview/​Tw74e63f4nvetlwxcbsrc2lehmq?​lyrics=1&​utm_source=google&​utm_medium=search&​utm_campaign=lyrics&​pcampaignid=kp-lyrics&​u=0#​|Piano Man]]) * "​goes"​ and "​clothes",​ "​stoned"​ and "​alone"​ ([[https://​play.google.com/​music/​preview/​Tw74e63f4nvetlwxcbsrc2lehmq?​lyrics=1&​utm_source=google&​utm_medium=search&​utm_campaign=lyrics&​pcampaignid=kp-lyrics&​u=0#​|Piano Man]])
 * "​fireman"​ and "​retire man", "​Mississippi"​ and "​skippy"​ ([[https://​play.google.com/​music/​preview/​Tlewhzwap5hqtrd4at5psxr63xm?​lyrics=1&​utm_source=google&​utm_medium=search&​utm_campaign=lyrics&​pcampaignid=kp-lyrics&​u=0#​|Uptown Funk]]) * "​fireman"​ and "​retire man", "​Mississippi"​ and "​skippy"​ ([[https://​play.google.com/​music/​preview/​Tlewhzwap5hqtrd4at5psxr63xm?​lyrics=1&​utm_source=google&​utm_medium=search&​utm_campaign=lyrics&​pcampaignid=kp-lyrics&​u=0#​|Uptown Funk]])
Line 7: Line 7:
  
 Really it's insufficient to consult some rhyming dictionary to see if two words match. It's going to require looking at the '''​phonemes'''​. Really it's insufficient to consult some rhyming dictionary to see if two words match. It's going to require looking at the '''​phonemes'''​.
 +
 +==Development log==
 +
 +I'm having a heck of a time figuring out how to identify rhyming words. Here's what I've tried:
 +* Aligning 2-3 syllables at the end of each line using MSA - this didn't work at all. In fact, everything I've tried that considered anything but the last syllable seemed to tank.
 +* Aligning phonemes for syllables - this worked a little better, but I had to divide by the max number of phonemes in the syllables I was aligning and only when considering the last syllable in each line
 +* Use stop words to filter out words that show up at the end of lines, but aren't really part of the lyrics (e.g., "​aw",​ "​oh",​ etc.)
 +* Next I'll try implementing Pat Pattison'​s rules and see how that works
  
 ==Literature Search== ==Literature Search==
 ===Pat Pattison'​s Songwriting book=== ===Pat Pattison'​s Songwriting book===
 "Rhyme creates a sonic roadmap: it tells those eyeless ears where to go and when to stop." "​Rhymes in a lyric are the ear's road signs, just like lines in poetry are the eye's road signs."​ "Too often, the available rhymes have been used so much that they'​ve become cliché."​ Additive and substractive rhymes are valid alternatives in order to avoid clichéd writing. ​ "Rhyme creates a sonic roadmap: it tells those eyeless ears where to go and when to stop." "​Rhymes in a lyric are the ear's road signs, just like lines in poetry are the eye's road signs."​ "Too often, the available rhymes have been used so much that they'​ve become cliché."​ Additive and substractive rhymes are valid alternatives in order to avoid clichéd writing. ​
-===Pat Pattison'​s [[https://​www.coursera.org/​learn/​songwriting/​lecture/​pmjx1/​rhyme-scheme-part-1|Songwriting Coursera Course]===+===Pat Pattison'​s ​Songwriting Coursera Course=== 
 +See the [[https://​www.coursera.org/​learn/​songwriting/​lecture/​pmjx1/​rhyme-scheme-part-1|course]]
 ====Rhyme Scheme, Part 1==== ====Rhyme Scheme, Part 1====
 Couplet is the single-most '''​stable'''​ unit: Couplet is the single-most '''​stable'''​ unit:
Line 89: Line 98:
  
 '''​Additive''':​ go from shorter to match something longer(e.g.,​ cry->​smile) - more stable '''​Additive''':​ go from shorter to match something longer(e.g.,​ cry->​smile) - more stable
-'''​Sutractive''':​ go from longer to match something shorter (e.g., smile->​cry) - less stable+'''​Subtractive''':​ go from longer to match something shorter (e.g., smile->​cry) - less stable
  
 ====Assonance Rhyme==== ====Assonance Rhyme====
Line 118: Line 127:
  
 friend and wind are close than friend and wound (i.e., there are some vowel sounds that are closer than others) friend and wind are close than friend and wound (i.e., there are some vowel sounds that are closer than others)
 +
 +===Hirjee and Brown, 2009===
 +The study uses local alignment protein homology detection algorithms and a BLOSUM-like scoring matrix to align rap lyrics (as sequences of syllables) to find rhymes. The matrix scores are computed based on frequencies of matching syllables and random syllables. The results are much better than the "​minimal mismatch of articulatory features and Knodrak alignment metrics",​ but no detail is provided about these approaches (see Kondrak, "A New Algorithm for the Alignment of Phonetic Sequences",​ 2000).
 +
 +The dataset they created may be helpful for validation purposes, though it is all rap.
 +
 +Other references of note were:
 +
 +* Kawahara'​s "Half rhymes in Japanese rap lyrics and knowledge of similarity",​ 2007.
 +* Holtman'​s PhD developing a taxonomy of articulated sounds ("A Generative Theory of Rhyme: An Optimality Approach",​ 1996)
 +* Three papers about extracting song topic, theme, or mood:
 +** "​Keyword Generation for Lyrics"​ (Wei, 2007)
 +** "Oh... Towards Automatic Topic Detection in Song Lyrics"​ (Kleedorfer,​ 2008)
 +** "​Hyperlinking Lyrics: A Method for Creating Hyperlinks Between Phrases in Song Lyrics"​ (Fujihara, 2008)
 +
 +====My Thoughts====
 +The general approach is very close to what I was considering. Need to look more closely at what makes the BLOSUM matrix (w/ negative values) different from NW. There are a few options:
 +* Use this approach and cite it
 +* Build on this approach and compare against it:
 +** Try ignoring consonants all-together and just use vowels
 +** Recalculate the scoring matrices for rhymes found in pop songs
 +
 +The problem here, of course, is finding a dataset against which to validate. But easy enough to create one by hand.
 +
 +===Seuss===
 +Rhyming [[https://​github.com/​capnrefsmmat/​seuss|robot project]] in python. Uses a dictionary.
 +
 +===Rhyme Genie===
 +Commercial [[software package|http://​www.rhymegenie.com/​index.html]] that does dynamic rhyming from 30 different types of rhymes. Costs moula.
 +
 +===rhyme-detect===
 +A [[https://​github.com/​kevin-brown/​rhyme-detect|python package]] that computes how closely two lines rhyme. Looks good except that it only counts exact matches of phonemes (no alignment). But it does consider emphasis. Utilizes NLTK
mind/identifying-rhymes.1461711738.txt.gz · Last modified: 2016/04/26 17:02 by norkish
Back to top
CC Attribution-Share Alike 4.0 International
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0