Friday, January 27, 2006

4. luento 3.2.2006

Neljännen luennon ppt-kalvot löytyvät tästä
TKAvustMusTutk060203b.pdf. (b-versio...)

Sävelluokkajoukosta intervalliluokkavektorin laskeva skripti löytyy tästä:
icv_skripti.rtf

Saman asian voisi tehdä tyylikkäämmin, mutta jos joku haluaa kokeilla, voi ajaa funktion "icv2" R:ään ja sitten kokeilla kirjoittaa komentoriville jotain tämän tapaista:

icv2(c(0,4,7,10,4,0,7))

ja saa tulokseksi C-dominanttiseptimisoinnun intervalliluokkavektorin.

* * *

Ensi kerrasta lähtien koetan edetä hiukan lunkimmin... Tutustumme funktion tekemiseen ja ajattelin, että malliksi voisimme luoda funktion, joka laskee yksinkertaisella periaatteella sävelluokkien perusteella tonaalisuusarvioita. Tällainen funktio vaatii muutaman rivin, ei enempää. Voimme käyttää siinä apunamme nk. Krumhansl-Kessler -profiileja (joihin Jopi viittasi tunnin jälkeen... ;-)

Joku voisikin tehdä sointuanalyysin Solagen sävellyksestä, jos saa sen käsiinsä jostain?

Tässä linkki Juhan mainitsemaan artikkeliin, jossa Coltranen improvisaatioita on analysoitu markovin ketjujen avulla.

http://scholar.lib.vt.edu/theses/available/etd-61098-131249/unrestricted/dmfetd.pdf

Teksti on laaja, mutta koetan perehtyä siihen heti kun ehdin. Ohessa pari linkkiä lyhyisiin teksteihin, joista käy ilmi, että markovin ketjujen soveltaminen musiikin analysoimiseen on periaatteiltaan sinänsä melko yksinkertainen ja selkeä juttu.

http://www.music-cog.ohio-state.edu/Music829D/Notes/Infotheory.html

http://journal-ci.csse.monash.edu.au/ci/vol03/mccorm/mccorm.html

Etenkin tästä jälkimmäisestä linkistä löytyvän tekstin luvussa "Representations for Music Composition" ja sen alaluvussa "Markov Models "on havainnollinen kuva siitä, mistä markovin ketjuissa on kysymys. Esimerkkinä on melodian "Maijal oli karitsa" pohjalta tehty nk. "siirtymätodennäköisyysmatriisi". Kyseessä on ns. "1st order model". En ole tällä periaatteella musiikkia juurikaan analysoinut (yhtä lyhyttä Kalifornian keikkaa lukuunottamatta), mutta minua kiinnostaisi tehdä analyyseja esim. eri säveltäjien melodioiden pohjalta ja sitten jollain "etäisyysmitalla" verrata syntyviä siirtymätodennäköisyysmatriiseja. Palaan tähän asiaan seuraavalla luennolla. Jos ehditte ja jota kiinnostaa, lukekaa tuo jälkimmäinen artikkeli. Se ei ole pitkä. Jo pelkästään tuon mainitsemani kuvan tarkasteleminen saattaa tehdä idean selväksi. Kyseisessä tekstissä puhutaan lähinnä algoritmisesta säveltämisestä, jota edeltää tietyn tyylisen musiikin analyysi. Markovin ketjujen avulla pystytään tuottamaan samantyylistä musiikkia. Kyseessä on yksi eniten käytetyistä keinoista algoritmisen säveltämisen piirissä. Me voisimme keskittyä tässä vaiheessa vain analyysiin...

Tälle sivulle voi kirjoittaa kommenttejaan klikkaamalla Comments-tekstiä näiden kirjoitusten lopussa, kynä-symbolin vieressä.

Sävelnimet sävelluokiksi ja midisävelkorkeuksiksi

Oheisessa tekstitiedostossa vielä luentokalvoilla ollut skripti, jonka piti muuttaa sävelnimet sävelluokiksi ja midisävelkorkeuksiksi ja "hiukan" pidempi, mutta periaatteiltaan paljon yksinkertaisempi skripti samaan hommaan, jos copy-pastaaminen ei onnistu suoraan pdf:stä. Tästä se näyttäisi onnistuvan molemmilla vaihtoehdoilla.

V4_skripti

Ohessa vielä kommentit tuohon monimutkaiseen, tiiviiseen skriptiin.

V4 skriptin selitys

Thursday, January 26, 2006

3. luento 27.1.2006

Seuraavan luennon ppt-kalvot pdf:nä

TKAvustMusTutk060127.pdf

Ohessa linkki tiedostoon, jota käsittelemme tunnilla. Kyseessä on Solage-nimisen säveltäjän teoksesta Fumeux fumes irrotettu diskanttimelodia.

fumeux_sopr.csv

Säveltäjä kuuluu ns. Ars Subtilior -kouluun 1300 luvulla. Aika hienoa musiikkia!

http://www.pacificnet.net/~garyrich/subtilior/


Tällä luennolla käyn läpi tilastotieteeseen liittyviä asioita ja käsitteitä - vauhdilla... Tarkoituksenani on, että tilastomenetelmistä ja niiden tarjoamista mahdollisuuksista jäisi jonkinlainen haju (tai - toivottavasti - paremminkin tuoksu ;-).

Tämän luentokerran jälkeen otetaan hiukan rauhallisemmin ja katsotaan, mihin suuntaan lähdetään. Keskitymme yhä enemmän R:n opiskeluun ja sovelluksiin, mutta välillä palaamme tilastojen ja tarvittaessa joukkoteorian pariin. Ja kuten tulette huomaamaan, kertaan samoja R:n komentojakin uudelleen ja uudelleen.

Mielessä on käynyt, että voisimme lähestyä kevään analyyseja esimerkiksi kahdella tavalla, markovin ketjuja hyödyntäen ja joukkoteoriaa käyttäen. Molemmat metodit ovat musiikkitieteessä käypiä eivätkä liian kuluneita, päin vastoin. Mutta muitakin tapoja varmasti keksimme ja saa ehdottaa ja niistä voisimme keskustella neljännen luentokerran jälkipuolella. Ajattelin 4. kerralla aloittaa siitä, miten R:ssä luodaan omia funktioita ja kuinka toistorakenteita (looppeja) ja ehtorakenteita R:ssä kirjoitetaan.

3. luentokalvoissa esitettyjen skriptien lopussa saadaan seuraavanlainen kuvaaja Fumeux fumes -melodiasta, josta nähdään, että se koostuu kuudesta kaarroksesta.













Laitoinpa tähän vielä linkin midi-tiedostoon musiikin kuuntelusta nauttivien iloksi!

Fumeux fumes

Erään biisin basso

EraanBiisinBasso.csv

Tuesday, January 17, 2006

2. luento 20.1.2006

2. luennon ppt-kalvot pdf-muodossa. Versio 060119c...

TKAvustMusTutk060120.pdf

Käsittelen luennolla hiukan musiikin joukkoteorian perusideoita ja -käsitteitä, kuitenkin pikaisesti. Joukkoteorian käyttäminen tietokoneavusteisessa musiikintutkimuksessa on vain yksi mahdollisuus monien joukossa, joten ei tähän tarvitse koko sydänvertaan vuodattaa. Osalla on jokin joukkoteoriaan liittyvä kurssi käytynä tai muuten kiinnostusta aiheeseen, joten joku voi löytää tältä suunnalta analyysilleen metodin.

Lisäksi puhun hiukan miditiedostoista, mutta tärkeämpää nyt niin kuin muillakin kerroilla on mielestäni tarkastella R:n käyttöä. Tulen viipymään etenkin ppt-kalvojen sivulla 25 "R-ohjelman käyttö, osa 2 (2)".

3:lla luennolla käsittelen tilastollisia ideoita, joista saattaa löytyä sellaisenaan jokin näkökulma. Tietysti esim. musiikin joukkoteoriaa voi yhdistää myös tilastollisiin menetelmiin, mikä tkamt:ssa onkin luontevaa.

Tuon mukanani kopiot aikaisemmin mainitsemistani reference card -dokumenteista, joten niitä ei tarvitse itse printata.

Ensimmäisellä tunnilla kysyttiin R:n pakettien lataamisesta internetistä omalle koneelle. Se tapahtuu siis komentokehoitteessa komennolla install.packages("paketin nimi"), esim.

install.packages("tuneR").

OSX:ssä sen voi tehdä valitsemalla asennuskomennon valikkoriviltä komennon "Package Installer".

Paketti otetaan R-sessiossa käyttöön komennolla

library(tuneR)

Thursday, January 12, 2006

Kurssin korvaavuudesta

Tiedoksi:

Syventäviin opintoihin sisältyvällä kurssilla "Tietokoneavusteinen musiikintutkimus" S1f voi korvata aineopintoihin sisältyvän kurssin "Systemaattinen musiikinteoria", T5e (6 op).

Wednesday, January 11, 2006

1. luento 13.1.2006

1. luennon ppt-kalvot pdf-muodossa. Versio 12.1.2006b...

TKAMA060113.pdf

Tuesday, December 20, 2005

Peter Castinen opus Set Theory Objects

Olen lukenut Peter Castinen opusta Set Theory Objects. Pitäisikin testata invarianssimatriisia...

Saturday, December 10, 2005

Tietokoneavusteinen musiikintutkimus (S1f, 7 op)






Diatonisuusasteen muutoksia Wagnerin Parsifal-alkusoitossa.

Yleistä kurssista

Kurssilla tutustutaan laajojen musiikkiaineistojen analyysiin yksinkertaisten harjoitustehtävien avulla. Analyysin lähtökohtana on musiikin tapahtumapohjaiset esitysmuodot (esim. miditieto). Luennot pidetään Turun yliopiston Educariumin tiloissa, luokka 155, Assistentinkatu 5, perjantaisin klo 8.30-10.00.

Kurssi kuuluu osana Turun yliopiston, Åbo Akademin ja Turun ammattikorkeakoulun Musicare-yhteishanketta. Kurssille mahtuu maksimissaan 8 opiskelijaa. Kurssille voi ilmoittautua ennakkoon allekirjoittaneelle (se on suotavaa rajoitetun osallistujamäärän vuoksi) osoitteeseen:

attenka at utu piste fi

Esitietovaatimukset

Tietokoneen peruskäyttötaidot. Ohjelmointitaitoja ei tarvita, mutta ohjelmoimisen perusteiden oppimiselta ei voi välttyä.


Kurssin tavoitteet

Kurssin aikana tutustutaan tarvittavassa määrin musiikin joukkoteorian käsitteisiin, yksinkertaisimpiin tilastollisiin funktioihin ja tarvittaessa tehokkaampiin tilastollisiin työkaluihin (esim. monimuuttujamenetelmät), opetellaan muuntamaan tutkittava aineisto analyysissa käytettävän ohjelman ymmärtämään muotoon (tutkimusaineistoksi sopivia ovat esim. MIDI-tiedostot), perehdytään ohjelman tarjoamiin valmiisiin perusfunktioihin ja opetellaan kirjoittamaan omia lyhyitä algoritmeja musiikillisen materiaalin
tilastollisia tarkasteluja varten. Kukin osallistuja saa valmiudet tuottaa kvantitatiivisia analyyseja valitsemastaan aineistosta. Käytämme R-ohjelmointiympäristöä (http://www.r-project.org/), jonka voi asentaa ilmaiseksi kaikkiin yleisimpiin systeemeihin (Windows, Mac OSX/OS9, Linux). Kurssin suoritettuaan pystyy helpommin siirtymään myös muiden musiikkianalyysissa käytettyjen ohjelmointiympäristöjen pariin kuten Matlab ja Humdrum.

Suoritukset

Kurssin lopputyönä on mahdollista kirjoittaa oman sovelluksen sijaan tai lisäksi suppea yhteisartikkeli tai parikin julkaistavaksi tehtyjen analyysien pohjalta.

Kurssi jakautuu kahteen periodiin. Ensimmäisen aikana "teoriaosiossa" (7 opetuskertaa) opetellaan tarvittavia käytännön taitoja ja tutustutaan pienin esimerkein vaadittaviin teorioihin. Toisella periodilla (7 opetuskertaa) sovelletaan opittuja asioita analyyseihin ja valmistetaan yhteisartikkelit.

Opetuspäivät ovat:

I periodilla:
Ensimmäinen kokoontuminen perjantaina tammikuun 13. pnä ja siitä eteenpäin
20.1., 27.1., 3.2., 10.2., 17.2., 24.2

II periodilla:
10.3., 17.3, 24.3., 31.3, 7.4, 21.4, 28.4.

3.3. on tentti, jonka tarkoitus on lähinnä kartoittaa sitä, miten hyvin perusvalmiudet hallitaan toisen periodin varsinaisia analyysi- ja kirjoitustehtäviä varten.

Uusimmassa musiikkilehdessä 1-2/2005 on hyvä yleisartikkeli tietokoneavusteisesta musiikintutkimuksesta, ks. Eerola & Toiviainen: Musiikkiteknologia kognitiivisen musiikintutkimuksen renkinä. Artikkelissa musiikkianalyysin menetelmiä on sovellettu kognitiiviseen musiikintutkimukseen, mutta kirjoituksesta saa hyvin käsityksen tietokoneavusteisesta musiikintutkimuksesta yleensä. Se löytyy myös internetistä osoitteesta:

http://www.musiikkilehti.fi/1-2005/1.pdf






12.12.

Kokeilin videokaappausta näytöltä. Jos yhteys on kovin hidas, kannattaa video ensin ladata kovalevylle ja katsoa tiedosto suoraan kovalevyltä. Ensimmäisessä videossa

R:n asennus -video (n. 7 Mt)

kerron, mistä R-ohjelma löytyy ja miten se asennetaan. Toisessa videossa

Ukkonoa -analyysia (n. 21 Mt)

suoritan pienen "analyysin" Ukkonoa-melodialla ja testaan muutamia R-ohjelman perusfunktioita kuten

c() "vektori" (lukujen joukko), esimerkissä Ukkonoa-melodian sävelkorkeudet midisävelkorkeuksina (keski-c on 60, d on 62, e on 64 jne.)
length() vektorin pituus eli tässä sävelten lukumäärä Ukkonoa-melodiassa
max() vektorin suurin arvo, tässä siis Ukkonoan korkein sävel
min() vektorin pienin arvo, tässä Ukkonoan matalin sävel
range() vektorin ääriarvot eli tässä Ukkonoan matalin ja korkein sävel
mean() vektorin lukujen keskiarvo, tässä siis Ukkonoan keskimääräinen sävelkorkeus
table() taulukko lukuarvojen frekvensseistä eli kunkin sävelkorkeuden esiintymisten määrä
barplot() pylväskuvio
sort() lukuarvot suuruusjärjestykseen
UKKONOA%%12, Ukkonoan sävelet saadaan sävelluokiksi "modulo"-funktiolla (meidän sävelsysteemissämmehän on joukkoteorian mukaisesti 12 sävelluokkaa 0-11)

Video-fileet ovat käytännön syistä windowsmedia-muodossa ja vaativat Windows Media playerin. Media player tulee Windowsin mukana, mutta sen saa myös Macille ja se löytyy täältä.

PS. Hm - Ukkonoa-videossa taisin sijoitusoperaattorin (=) yhteydessä sanoa "on yhtä suuri kuin" vaikka pitäisikin sanoa vaikkapa "on yhtä kuin". Vertailuoperaattorin (==) yhteydessä sanotaan "on yhtä suuri kuin". Nämä ovat siis kaksi eri asiaa.




13.12.

R-komentoja kootusti:

Jonathan Baronin Reference Card.
Tom Shortin Reference Card.



Kommenttina JR:n kysymykseen:

Spektri- ja fourier-hommia täytyy miettiä erikseen ihan sen vuoksi, että aikaa on rajatusti. R:lle löytyy äänen analyysiinkin valmis package ja sitä olisi jossain yhteydessä kiva kokeilla, ks. oheinen dokumentaatio paketista tuneR

http://cran.at.r-project.org/doc/packages/tuneR.pdf.

Molemmat alueet ovat loputtoman laajat, siis äänentutkimus ja musiikin symbolisiin representaatioihin keskittyvät sovellukset. Teoreetikkotaustani vuoksi olen itse ollut kiinnostunut näistä palikkahommista...