2020年2月24日月曜日

MIDIファイルを入力とした分析:和音の出現頻度から見たマーラー作品(その2:拡張版 2021.6.17更新)

MIDIファイルを入力とした分析の一環として、和音(コード)の出現頻度に基づくマーラーの作品の他の作品との比較を試みた結果を「MIDIファイルを入力とした分析:和音の出現頻度から見たマーラー作品」(https://gustav-mahler-yojibee.blogspot.com/2020/02/midi.html)として報告しましたが、その第2報として比較対象となる作品数を増やして、マーラーの作品50ファイルに対して、他の作曲家の作品200ファイルの合計250ファイルでの分析結果について報告します。ようやくデータ分析として一般的な規模となったと認識しています。対象となるデータセットを変えれば各分析の結果は当然異なってくるわけですが、その中で共通に見出せる特徴に注目することで、マーラーの作品の特徴の一端を窺うための参考になればと思います。

(2021.6.17追記:集計プログラムの制約で、対象作品のMIDIデータの各ファイルに含まれる最初の1591拍分のみが分析対象となっていることがわかりました。各ファイルは概ね交響曲作品の楽章単位であることから、楽章の長さに応じて、全てが対象となっている場合もあれば、前半の1591泊目までが対象となっている場合もあることになります。この点についての記載が漏れていたことにつき、お詫びして追記します。なお、この制約をなくした分析を、今後実施の予定です。仮に両者に違いが確認できるのであれば、それ自体、音楽作品の時系列の構造の特性が反映したものである可能性が考えられます。)

分析の入力データと結果のデータ・グラフについては、以下からダウンロードできます。(和音出現特徴分析_拡張版.zipという1ファイルにアーカイブされています。)

https://drive.google.com/file/d/1cDlfRKTTFy4F_lCM5Qv0W3YFOgfVWz9b/view?usp=sharing

以下では最初の報告との相違点を中心に記述を行います。分析の概要については前の記事をご覧いただけますようお願いします。(2020.2.24記)

1.対象データ
・マーラーの作品については変更なし。
  全交響曲のMIDIデータ(楽章毎)、合計50ファイル

・比較対照用の作品:以下の作品のうちマーラー以外の作品のMIDIデータ
 (楽章毎。合計200ファイル)
 作曲家別にラベルをつけて、クラスタ分析結果との照合を行った。
 作曲者数はマーラーを含めて24名。以下、ラベルの番号、作曲者、作品の順に示す。
 なお前回とは異なり、時代区分でカテゴリを分けることは行っていない。
 従ってグラフの色分けと時代区分の対応付けはない。

  0.アイヴズ 答えのない質問
  1.シベリウス 交響曲第2番、7番、タピオラ、5番3楽章、6番4楽章、3番2楽章
  2.マーラー 交響曲第1~10番、大地の歌
  3.ブラームス 交響曲第1番、2番、3番、4番
  4.ブルックナー 交響曲第1番、4番、5番、7番、8番、9番
  5.ショスタコーヴィチ 交響曲第10番
  6.モーツァルト 交響曲第38番、39番、40番、41番 
  7.シューマン 交響曲第1番、3番
  8.スクリャービン 交響曲第3番
  9.スメタナ わが祖国
  10.フランク 交響曲
  11.ハイドン 交響曲第83、88、92、96、99~104番
  12.シュニトケ 交響曲第5番=合奏協奏曲第4番第1楽章
  13.ヴェーベルン パッサカリア
  14.バルトーク 管弦楽のための協奏曲
  15.ベートーヴェン 交響曲第3、4、5、6、7番
  16.ベルリオーズ 幻想交響曲
  17.ドヴォルザーク 交響曲第8、9番
  18.エルガー 交響曲第1、2番
  19.メンデルスゾーン 交響曲第3番
  20.ワーグナー パルジファル前奏曲
  21.ラフマニノフ 交響曲第2番
  22.シューベルト 交響曲第8、9番
  23.チャイコフスキー 交響曲第4、5、6番

2.分析に用いた特徴量:変更なしで以下の通り。
 単音、重音:完全五度、長二度、短三度、長三度、短二度、増四度
 短三和音、長三和音、属七和音、属九和音、付加六、イタリアの増六
 減三和音、増三和音、長七和音、トリスタン和音、フランスの増六

3.分析手法
 分析はすべてR言語(version.3.6.0, 2018-04-23版)を用いて行った。
 分析履歴をアーカイブに含めた。(hist.txt)
 A.主成分分析:prcompを使用。標準化を行う(scale=TRUE)。
  説明率80%⇒第10主成分までについて負荷と主成分得点を計算。
  分析結果はbiplotでグラフ化。負荷と主成分得点はbarplotでグラフ化。
 B.因子分析:factanalを使用。
  因子数の決定は相関行列の固有値を参照:固有値が概ね1以上⇒6因子と決定
  rotationはvarimax(直交回転), promax(斜交回転)の両方を試行。
  分析結果はbilplotでグラフ化。負荷と因子得点はbarplotでグラフ化。
 C.階層クラスタリング:距離はユークリッド距離を使用し、結果をhclustに与えた。
  クラスタリング手法としては以下の3種を試行し、結果はデンドログラムでグラフ化。
   complete(完全連結法)
   average(群平均化法)
   wardD2(最小分散法)
  クラスタの安定度を確認するために、ユークリッド距離・完全連結法での
  上位の5クラスタのJaccard係数の平均値をfpcパッケージのclusterbootを
  用いて求めた。(hist.txt)
  更にマハラノビス距離を用いて最小分散法によるクラスタリングを行った。
 D.非階層クラスタリング:kmeansを使用。
  クラスタ数はギャップ統計を参考にした。
  kmax=10、最大イテレーション回数=100でclusGapを使用。
  結果をbarplotでグラフ化。
  ⇒クラスタ数8で試行した結果をclusplotでグラフ化。
 
4.分析結果の概要
 A.主成分分析
概ね左下側にマーラーの作品が偏っていることから、まず第1主成分がマーラーの作品を特徴づけていると予想されるので、まず第1主成分得点を確認してみると以下の通りであり、左側への偏りに対応したものであることが確認できる。ここでは示さないが、第1主成分以外にも(上記グラフから想像される通り)作品によってばらつきがあるものの第2主成分、更には第5、第7主成分についてもマーラーの作品に関して偏りが見られた。(アーカイブ中には全ての主成分の得点および負荷のグラフが含まれている。)
一方で、マーラー作品の中で、第1主成分得点について例外的という意味で「マーラー的」でない楽章を取り出すことができるだろう。

なお、今回は前回とは異なって、以下のグラフの色分けは時代区分に対応しているわけではない。色と作曲家の対応は、左側から右側へ順番に以下の通りである。

 マーラー(赤)・アイヴズ(黒)・シベリウス(黒)・ブラームス(緑)・
 ブルックナー(白)・ショスタコーヴィチ(黒)・モーツァルト(青)・
 シューマン(水色)・スクリャービン(黒)・スメタナ(紫)・フランク(黄)・
 ハイドン(青)・シュニトケ(赤)・ヴェーベルン(白)・シベリウス(黒)・
 バルトーク(灰色)・ベートーヴェン(青)・ベルリオーズ(水色)・
 ブラームス(緑)・ブルックナー(白)・ドヴォルザーク(緑)・エルガー(紫)・
 ハイドン(青)・メンデルスゾーン(緑)・ワグナー(水色)・
 ラフマニノフ(黒)・シューベルト(青)・シューマン(水色)・シベリウス(黒)・
 ハイドン(青) ・チャイコフスキー(紫)


第1主成分の負荷は以下の通り。得点がマイナスなので、付加六、長七、属九、増三、トリスタン和音、フランスの増六などの頻度が高く、単音、三度、長三和音、属七、減三などの頻度が低いという傾向があることになる。



B.因子分析
まず、相関行列の固有値をとると以下のようになる。固有値が概ね1以上であることやグラフの傾きから、因子数を6とする。

因子分析の結果でも因子数=6で十分との判定が得られた。rotation=promaxの結果を以下に示す。右側にマーラーの作品が偏って分布していることが窺えることから第1因子がマーラーの作品の特徴づけの和音の出現分布上での主要な因子であることが示唆される。(アーカイブ中にはvarimaxの結果も収められている)。

そこで第1因子得点を確認してみる。左の赤いバーがマーラーの作品の棒グラフであり、若干の例外はあるものの、明らかな偏りが見られ、それが上記のbiplotの分布の偏りに対応していることがわかる。
 

第1因子負荷を確認すると以下の通り。付加六、長七、増三、属九、フランスの増六がプラスであることなど、主成分分析の結果や前回報告の結果と同様の傾向を示していることがわかる。
数値を確認したところ第3因子もマーラーの作品に共通の特徴が表れているように思えたので、以下に掲げる。まずは因子得点から。左隅の赤いバーがマーラーの作品群に対応しているが、一部を除いてマイナス方向に偏っていることがわかる。
 

第3因子負荷は以下の通りで、属七に特徴のある因子だが、上に示したようにマーラーの作品は因子得点がマイナスなので属七の割合が少ないことがわかる。これもまた前回得られた結果と共通の傾向である。
C.階層クラスタ分析
距離はユークリッド距離のみ。クラスタリング手法としてhclustでデフォルトのcompleteを使った結果は以下の通り。他の作品の数が増えたので、ややわかりにくくなったが、大きく古典派系と非古典派系に分かれ、マーラー作品の多くは後者に属する傾向は前回と共通している。


上記の結果に対して、クラスタの安定性を確認するために、fpcパッケージのclusterbootを用いてJaccard係数の平均値を求めた結果を履歴ファイルに収めている。全般に不安定だが、マーラーの作品が属する上位のクラスタについては相対的に安定しているようである。
更に距離をマハラノビス距離に変え、ward法によってクラスタリングした結果を以下に示す。
なお必ずしもこの結果に限定されないが、マーラーの作品の中で、マーラー作品の多くが属するクラスタではない別のクラスタに属する楽章を見てみると、主成分分析や因子分析における「非マーラー」的な楽章と概ね一致する傾向があることを確認できる。


D.非階層クラスタ分析
clusGapを用いてGap統計をとった結果(アーカイブ中のhist.txt参照)はクラスタ数2で安定だが、それ以上のクラスタ数については試行の度に結果が異なり安定しない。しかしクラスタ2については既に前の報告で示したので、ここではGap統計で再度結果が安定しはじめる8クラスタの結果を示す。ただしkmeans法はその手法そのものがランダムネスを含んでいるので、同じデータでも試行の都度データの細部は変化しうるので、以下はあくまでもおおまかな傾向を知るための参考程度に過ぎない。

作曲家毎のクラスタへの所属は以下の通りとなっている。行方向が作曲家のラベル、列方向がクラスタ番号であり、行:2がマーラーで第1、4クラスタに集中していることが読み取れる。一方で第2、3、5、6あたりが古典派のクラスタのようであり、マーラーの作品とは相補的な分布となっている。マーラー以外の作曲家は作品数が限定されているので、偶然そういう作品が選ばれたということもあるものの、概ね時代区分に沿った分布の傾向が読み取れる。

    res
class  1   2   3   4   5   6   7   8
   0    0   0   0   0   1   0   0   0 アイヴズ
   1    3   0   0   2   1   0   2   0 シベリウス
   2  21   1   0  20  3   0   4   1 マーラー
   3    1   1   5   0   5   0   4   0 ブラームス
   4    4   1   1   7   9   0   1   0 ブルックナー
   5    1   0   2   3   0   1   1   0 ショスタコーヴィチ
   6    0   5   7   1   0   0   1   1 モーツァルト
   7    0   0   3   0   1   0   1   0 シューマン
   8    2   0   0   0   1   0   0   0 スクリャービン
   9    0   0   1   1   4   0   0   0 スメタナ
   10  2   0   0   1   0   0   0   0 フランク
   11  0  20  11 2   2   5   0   0 ハイドン
   12  0   0   0   1   0   0   0   0 シュニトケ
   13  1   0   0   0   0   0   0   0 ヴェーベルン
   14  2   0   0   2   0   1   0   0 バルトーク
   15  0   7   2   1   2   3   3   0 ベートーヴェン
   16  0   0   1   2   1   1   0   0 ベルリオーズ
   17  0   0   0   0   3   0   4   1 ドヴォルザーク
   18  5   0   0   0   0   0   2   0 エルガー
   19  1   0   0   0   0   0   2   1 メンデルスゾーン
   20  0   0   0   0   0   0   1   0 ワグナー
   21  3   0   0   1   0   0   0   0 ラフマニノフ
   22  0   0   3   0   0   0   3   0 シューベルト
   23  6   0   0   3   0   2   1   0 チャイコフスキー

5.アーカイブファイルに含まれるファイルの説明
和音出現特徴分析_拡張版.zipの中には以下のファイルが含まれます。

(1)入力データ
 cfreqA.csv:分析対象の和音(コード)の出現割合のファイル
 col_cfreqA.csv:対象作品のbarplotにおける色指定。(時代区分には対応しない。)
 class_cfreqA.csv:対象作品を作曲家別に分類したファイル
 corresp_cfreqA.csv:生の頻度情報ファイル。cfreqAに含まれないコードも含む

(2)主成分分析系
 prcomp.pdf:主成分分析結果のbiplotグラフ
 pr_score-[1-10].pdf:主成分得点のbarplotグラフ
 prcomp_PC[1-10].pdf:主成分負荷量のbarplotグラフ

(3)因子分析系
 (3-1)直交回転(varimax):因子数=6
  varicomp.pdf:因子分析結果のbiplotグラフ
  vari_score-[1-6].pdf:因子得点のbarplotグラフ
  vari_load-[1-6].pdf:因子負荷量のbarplotグラフ
 (3-2)斜交回転(promax):因子数=6
  procomp.pdf:因子分析結果のbiplotグラフ
  pro_score-[1-6].pdf:因子得点のbarplotグラフ
  pro_load-[1-6].pdf:因子負荷量のbarplotグラフ
 (3-3)相関行列の固有値
   eigen.pdf

(4)階層クラスタ分析系
 (4-1)ユークリッド距離によるクラスタリング結果
  hclust_complete.pdf:完全連結法による結果のデンドログラム
  hclust_average.pdf:群平均化法による結果のデンドログラム
  hclust_wardD2.pdf:Ward法(最小分散法)による結果のデンドログラム
 (4-2)マハラノビス距離によるクラスタリング結果
  hclust_Mahalanobis_ward.D2.pdf:Ward法による結果のデンドログラム
 (4-3)クラスタの安定性評価に用いた条件(解析結果はhist.txtに収録)
  hclust_complete_rect5.pdf:ユークリッド距離・完全連結法で5クラスタまでを評価

(5)非階層クラスタ分析系:
 (5-1)ギャップ統計
  clusGap.pdf
 (5-2)クラスタリング結果
  kmeans8.pdf:8クラスタでの分類結果のプロット
  kmeans8.csv:8クラスタでの分類結果
  kmeans8.xls:8クラスタでの分類結果と対象作品のクラス分けの対照用

(6)分析履歴
  hist.txt:R言語を用いた分析履歴。各分析の数値的な結果を含む。

[ご利用にあたっての注意] 公開するデータは自由に利用頂いて構いません。あくまでも実験的な試みを公開するものであり、作成者は結果の正しさは保証しません。このデータを用いることによって発生する如何なるトラブルに対しても、作成者は責任を負いません。入力として利用させて頂いたMIDIファイルに起因する間違い、分析プログラムの不具合に起因する間違いなど、各種の間違いが含まれる可能性があることをご了承の上、ご利用ください。
(2020.2.24公開、25データを追加、26一部データ差替・加筆)

0 件のコメント:

コメントを投稿