Meter, rhythm, and rhyme


Maintained by: David J. Birnbaum (djbpitt@gmail.com) [Creative Commons BY-NC-SA 3.0 Unported License] Last modified: 2015-06-01T19:44:16+0000


Strong and weak metrical positions

The dictionary

The process of determining the meter (or, more precisely, the interplay of poetic meter and linguistic stress) in our project begins by looking up all of the word forms in the input poem in a dictionary. The dictionary identifies the place of stress and tags all vowels as <vowel> elements with a @stress attribute that has a value of 1 for stressed, -1 for unstressed, and 0 for ambiguous. Some words are returned from the dictionary with unambiguous stress information, where stressed vowels are tagged as <vowel stress="1"> and unstressed syllables are tagged as <vowel stress="-1">. For example, in:

<w>
  <orth>единый,-</orth>
  <str dict="inDictionary"><vowel stress="-1">е</vowel>д<vowel stress="1">и</vowel>н<vowel stress="-1">ы</vowel>й</str>
</w>

there are no ambiguities. This word form appears just once in the dictionary, so the stressed vowel is returned with a @stress value of 1 and the unstressed vowels with a value of -1.

The dictionary is not capable of identifying the stress valence of all vowels in an arbitrary Russian poem. The stress valence of a vowel can be ambiguous either because the word is not in the dictionary or because the dictionary returns conflicting information. As an example of an ambiguity, disyllabic лозы (Gsg and NApl of лоза ‘vine’) appears twice in the dictionary, with the stress on different vowels (on the last vowel in the Gsg and on the first vowel in NApl). The system, which relies on string matching on a word-by-word basis, is not able to resolve the morphological ambiguity, and the system therefore returns 0 values for the @stress attributes of both vowels. In some cases the dictionary may also return a result where some values are unambiguous and some are ambiguous. For example, trisyllabic головы (Gsg and NApl of голова ‘head’) appears twice in the dictionary, with stress on the last vowel in the Gsg and on the first vowel in NApl. This means that the middle vowel is unambiguously unstressed, and the only challenge involves determining the stress properties of the first and last vowels. So how, given the presence of 0 values in the dictionary lookup results, do we do the following:

Assumptions about the input

With the goal of processing existing plain text transcriptions (which are easily found on line for the entire canon of Russian poetry) without having to add markup manually, we assume that input into our system will be Russian poetry laid out in stanzas and lines (with a blank line between stanzas), in normal Russian orthography and without any encoding of stress. In other words, our system must process the most common shape of plain-text Russian poetry files. The system makes the following assumptions about its input (that it, is is designed to handle only certain types of input, and it does not attempt to recognize or analyze other types of poetic organzation):

Metrical valence

Our starting point, then, can be understood as a matrix of 1, -1, and 0 values, where the rows are lines of the poem and the columns are vowel positions in the line, counting from the beginning of the line. For each column in the matrix, we calculate whether the position should be considered metrically strong or weak by counting the number of 1 values and dividing that count by the sum of the counts of 1 and -1 values (ignoring 0 values). We call this the metrical valence of the position, and it varies between a low of 0 (all unambiguous syllables in that position are unstressed) and a high of 1 (all unambiguous syllables in that position are stressed). If there are no unambiguous syllables in that position, we provisionally return a metrical valence of 0 (identical to the valence of a weak syllable).

Identifying strong and weak positions

We next return a boolean value representing whether the column in the matrix should be considered strong (true) or weak (false), that is, more likely to be stressed or more likely to be unstressed according to the ambient metrical cadence of the poem. For each column in the matrix, we compare the metrical valence to the metrical valence of the immediately preceding and following columns. If there is no preceding or following column (that is, at the beginning or end of the line, and therefore also in lines of fewer than two syllables), we assume a metrical valence of 0 for the missing (phantom) adjacent position. There are six possible types of outcome:

The preceding calculation returns a sequence of booleans values, where each value corresponds to a column in the original input matrix. For ease of subsequent calculation (see below) we represent strong (true) syllables as 1 and weak (false) as 0. (Note that these values are not the same as the 1, -1, and 0 values in the original input matrix.)

Identifying metrical types

Taking the preceding sequence of 0 and 1 values as input, we calculate the percentage of matching values at a distance of two and at a distance of three, which we call the binary (resp. ternary) coefficient. The lower of these values determines whether the poem is binary or ternary. We predict that there will be no ties in poetry that observes a reasonably regular and consistent syllabotonic structure. To determine these coefficients, we start two (resp. three) syllables into the sequence and proceed item by item, calculating the absolute value of subtracting each item in the sequence from the one two (resp. three) syllables before it. We then divide the sum of those values by the total number of sequences examined, returning the mean. For example, with the following unambiguous iambic tetrameter pattern:

0 1 0 1 0 1 0 1

the binary coefficient is determined by subtracting the 0 at position 3 from the 0 at position 1, then the 1 at position 4 from the 1 at position 2, etc. We sum the absolute values of those subtractions (all of which equal 0 in this example) and divide by the number of comparisons (6 in this example), so the binary coefficient of this line is 0. The ternary coefficient starts at position 4 and subtracts the value three positions before it, at position 1, and then proceeds until the end of the line, similarly to the binary calculation. The absolute values in this case are all equal to 1 and there are 5 comparisons, so the ternary coefficient is 5/5, or 1. Since our system regards the lower of the two values as correct, we report (correctly, in this case) that this poem observes binary meter.

A perfect ternary example is similarly clear:

0 1 0 0 1 0 0 1 0 0 1 0

The binary coefficient of the preceding perfect amphibrach tetrameter is 6/10 or 0.60. The ternary coeffieint is 0/9, or 0, which identifies the type as ternary.

Identifying feet

Once we have determined whether the basic type is binary or ternary, we resolve the decision between binary meters (iambic and trochaic) and among ternary meters (dactylic, anapest, and amphibrach) on the basis of the leftmost strong position. We rely on the first foot because a hypermetrical clausula (or, as discussed below, a hypermetrical caesura) complicates identification of the last foot.

Identifying line length

In all cases, the number of strong positions in a line determines the number of feet in that line. The general number of feet per line in the poem can be determined from the number of strong positions in that line (not the number of syllables, because of catalexis and hypermetricality). Because poems may have a regular pattern with a different number of feet in different lines, the number of feet may have to be determined on a line-by-line basis, which is easy once the general, global properties of the poem have been determined using the preceding methods. Lines with different numbers of feet (as opposed to lines with the same number of feet but different numbers of syllables, about which see the discussion of catalexis and hypermetricality below) can be identified because the general system described above identifies the metrical structure of the longest line(s) of the poem. Once the meter for that line type has been determined, a line that is too short to provide the required number of stresses must have a different structure. For example, in Boris Pasternak’s 1956 Vo vsem mne xočetsja dojti the quatrains are structured as:

Во всем мне хочется дойти ox|ox|ox|ox
До самой сути. ox|ox(o)
В работе, в поисках пути, ox|ox|oo|ox
В сердечной смуте. ox|ox(o)

Here the odd-numbered line are iambic tetrameter and the even-numbered lines are iambic dimiter with a hypermetrical feminine clausula. Our method returns iambic tetrameter as the general meter, but we require closer examination of individual lines to refine that characterization and arrive at the actual regular alternation in line length. Since iambic tetrameter requires at least 7 syllables (in the case of a catalectic final foot) and the even-numbered lines have only five syllables, we know that the lines must have different foot counts.

Catalexis and hypermetricality

One the line type has been determined, catalexis is easily identified where the line has enough syllables to support the expected number of feet (e.g., 7 syllables for an iambic tetrameter line, as described above), but ends before the end of the final foot. Analogously, any syllables beyond the end of the final foot must be hypermetrical. The most difficult cases of this sort involve a hypermetrical caesura, requiring us to identify hypermetrical syllables not at the end of a line, but within it. Zinaida Gippius’s 1907 Neljubov′ (iambic tetrameter with hypermetrical feminine caesura and with hypermetrical feminine clausula in odd-numbered lines) poses no problems for our method. The poem consists of 4 quatrains, of which the following is the first:

Как ветер мокрый, ты бьешься в ставни, ox|ox(o)‖ox|ox(o)
Как ветер черный, поешь: ты мой! ox|ox(o)‖ox|ox
Я древний хаос, я друг твой давний, ox|ox(o)‖ox|ox(o)
Твой друг единый,- открой, открой! ox|ox(o)‖ox|ox

Our system correctly reports the pattern of strong and weak syllables as:

W S W S W W S W S W

It correctly identifies the poem as binary, with a binary coefficient of 2/8 (0.25) and a ternary coeffient of 4/7 (0.57); and it correctly identifies the metrical type as iambic on the basis of the shape of the initial foot. We identify the hypermetrical syllables by demarcating all of the feet on the basis of the strong syllables, which lets us recognize the unassigned syllables as hypermetrical.

Gippius’s 1905 Ona is more challenging. The poem consists of four quatrains; here is the last:

Своими кольцами она, упорная, ox|ox(oo)‖ox|ox(oo)
Ко мне ласкается, меня душа. ox|ox(oo)‖ox|ox
И эта мертвая, и эта черная, ox|ox(oo)‖ox|ox(oo)
И эта страшная - моя душа! ox|ox(oo)‖ox|ox

The challenges here are threefold:

  1. The overall cadence makes it clear to human ears that syllables 5 and 6 and (in the odd-numbered lines) 11 and 12 are hypermetrical, defining a dactylic caesura and a dactylic clausula. Recognizing syllables 11 and 12 as hypermetrical automatically is easy because the last stress in a line must be realized in Russian syllabotonic verse, which means that these 2 additional unstressed syllables after the final stress must be hypermetrical. Special handling is required, though, to avoid misidentifying syllables 5 and 6 as an additional iambic foot, that is, to avoid misidentifying the structure as iambic pentameter with a replacement of the middle iamb with a pyrrhic foot.
  2. The defining features of a caesura are that it must fall at a word break and that it must be consistent across the poem. The caesura meets those requirements in 15 lines of this 16-line poem, but not in line 8:

    Её | колен|чата‖я че|шуя. ox|ox(oo)‖oo|ox

    Here the caesura would fall between the final two syllables of kolenčataja, that is, not at the end of a word. While it might be possible to assert, on the evidence of this line, that the poem does not really have a caesura (which requires a break at the end of a word in every line), that would not correspond to the perception of human readers that there is a strong caesura and Gippius deliberately violates it in this one line.

  3. Similarly, the justification for considering syllables 5 and 6 as hypermetrical is that they are unstressed in 15 of the 16 lines of the poem. In line 2, however, no one would read the sixth syllable without a stress:

    Она как пыль сера, как прах земной. ox|ox(ox)‖ox|ox

    Our system, then, must recognize that, much as this poem has a strong caesura with a single palpable deviation, the caesura has a strong hypermetrical dactylic character that is also violated once by the presence of stress on what should be an unstressed hypermetrical syllable. Because this deviation occurs in the second line, someone reading the poem for the first time (that is, not having read enough lines to intuit the actual cadence) might initially misread the poem as iambic pentameter with a hypermetrical clausula, but the cadence is so strong and so regular that after a first reading no one would fail to recognize the hypermetricality of syllables 5 and 6 as real and line 2 as a single palpable deviation.

We are evaluating heuristics for recognizing patterns of this sort, which are strong enough to be salient but are not completely regular.