Lineaarinen regressio – perusteet

Tilastollinen päättely Ei kommentteja

Johdanto

Lineaarinen regressio on kaikista selkein regressiomenetelmä. Se toimii eräänlaisena runkona monimutkaisemmille regressiomenetelmille, kuten yleiselle lineaariselle mallille. Jo tässä tässä vaiheessa lukijan on hyvä tiedostaa, että toinen erittäin yleinen regressiomenetelmä, logistinen regressio, on yleisen lineaarisen mallin erityistapaus eikä suinkaan oma erillinen menetelmänsä.

Lineaarisen mallin pohjana toimii lineaarikombinaatio. Yleinen tapa kuvata se on seuraavanlainen:

\beta_{1}*x_{1}+\beta_{2}*x_{2}+\beta_{3}*x_{3}+...+\beta_{n}*x_{n}

Lineaarikombinaatiossa on n kappaletta muuttujia (x), joista jokainen kerrotaan tietyllä kertoimella (β). Lopuksi kaikista tuloista otetaan niiden summa. Lineaariregression kohdalla ajatuksena on, että muuttujien ja regressiokertoimien muodostama lineaarikombinaatio sekä ns. vakiotermin (eng. intercept) summa on yhteydessä päätemuuttujaan y. Vakiotermiä ei nimensä mukaisesti yhdistetä mihinkään muuttujaan. Tällöin lineaarinen regressiomalli esitetään muodossa:

y=\beta_{0}+\beta_{1}*x_{1}+\beta_{2}*x_{2}+\beta_{3}*x_{3}+...+\beta_{n}*x_{n}

Regressiossa yhtälön oikean puoleisia muuttujia kutsutaan lähtömuuttujiksi tai riippuviksi muuttujiksi (eng. dependent variable, DV). Yhtälön vasemman puoleista muuttujaa, kutsutaan yleensä päätemuuttujaksi tai riippumattomaksi muuttujaksi (eng. independent variable, IV).

Lineaariregressiossa kaikki muutokset ovat summautuvia (additiivisia) ja lineaarisia. Additiivisuus tarkoittaa, että jos muuttuja x1 kasvaa yhden yksikön, päätemuuttuja y kasvaa kertoimen β1 verran riippumatta muiden muuttujien arvoista. Lineaarisuus tarkoittaa, että lähtömuuttujien suhde päätemuuttujaan on lineaarinen. Käytännössä tämä tarkoittaa, että yhden yksikön muutos x1:ssa on päätemuuttujassa y on sama riippumatta x1:n arvosta. Nämä ovat tärkeitä taustaoletuksia myös monessa muussa regressiomenetelmässä.

Kliinisessä tutkimuksessa on aina käytettävissä aineisto, jossa on tietty määrä muuttujia. Aineistossa voi olla esimerkiksi kolme lähtömuuttujaa (x1,x2,x3) sekä päätemuuttuja y. Lineaariregression yleinen kuvaus on tällöin

y_{i}=\beta_{0}+\beta_{1}*x_{1i}+\beta_{2}*x_{2i}+\beta_{3}*x_{3i}

Alaindeksi i symboloi tietyn potilaan havaintoja aineiston rivillä i. Muuttujat y, x1, x2 ja x3 ovat olemassa jo aineistossa. Lineaariregression tarkoitus on löytää regressiokertoimille β0, β1, β2 ja β3 sellaiset arvot, että oikeanpuoleisen lineaarikombinaation ja vakiotermin summa kullekin potilaalle i olisi mahdollisimman lähellä havaittuja päätemuuttujan arvoja y. Tätä kutsutaan lineaarimallin sovittamiseksi aineistoon. Biolääketieteellisissä ilmiöissä emme kuitenkaan koskaan pysty kuvaamaan asioita täysin tarkasti ja virheettömästi vaan malleissamme ja menetelmissämme on aina jonkin verran virhettä ja epätarkkuutta. Näin ollen oikeaoppinen lineaarisen regressiomallin kuvaus on:

y_{i}=\beta_{0}+\beta_{1}*x_{1i}+\beta_{2}*x_{2i}+\beta_{3}*x_{3i}+...+\beta_{n}*x_{ni}+\epsilon_{i} \tag 1

Vakiotermin ja lineaarikombinaation loppuun on lisätty kreikkalainen kirjain epsilon, ε. Se tarkoittaa virhetermiä (eng. error term, nuisance). Vakiotermin sekä regressiokertoimien ja lähtömuuttujien yhdistelmä ei koskaan vastaa täysin tarkasti päätemuuttujaa y vaan niillä on aina jokin erotus tai virhe. ε kuvaa tämän virheen suuruutta. Symbolilla ŷi kuvataan regressiokertoimien perusteella päätemuuttujalle yi laskettuja arvoja. Näin ollen yi on yhtä kuin ŷi + εi. Symbolilla ȳ kuvataan päätemuuttujan y keskiarvoa aineistossa.

Regressiokertoimien määrittäminen

Yllä esitetty lineaariregressiomalli voidaan esittää myös ns. matriisimuodossa:

\begin{bmatrix}   y _{1}\\   y_{2}\\ \vdots\\y_{i}\end{bmatrix}=\begin{bmatrix}   1 & x _{1,1}& x _{2,1}& x _{3,1}\\1 & x _{1,2}& x _{2,2}& x _{3,2}\\ \vdots&\vdots&\vdots&\vdots\\1 & x _{1,i}& x _{2,i}& x _{3,i}\end{bmatrix}*\begin{bmatrix} \beta_{0} \\ \beta_{1} \\ \beta_{2} \\ \beta_{3}\end{bmatrix}+\begin{bmatrix} \epsilon_{1} \\ \epsilon_{2} \\ \vdots \\ \epsilon_{i}\end{bmatrix}

Edellä mainittiin, että vakiotermiin ei yhdistetä mitään muuttujaa, mutta yleisemmin ajatellaan, että vakiotermin muuttuja x on aina 1 eli se ikään kuin häviää yhtälöstä. Lyhennetty esitystapa tälle rakennelmalle on:

\bold{Y}=\bold{X}\beta+\epsilon

Lihavoitu kirjain kuvastaa siis muuttujista tehtyä matriisia. Jos ylläkuvattu matriisikertolasku kirjoitetaan auki saadaan seuraavanlainen kuvaus:

\begin{bmatrix}   y _{1}\\   y_{2}\\ \vdots\\y_{i}\end{bmatrix}=\begin{bmatrix}   \beta_{0} + \beta_{1}x _{1,1}+ \beta_{2}x _{2,1}+ \beta_{3}x _{3,1}+\epsilon_{1} \\\beta_{0} + \beta_{1}x _{1,2}+ \beta_{2}x _{2,2}+ \beta_{3}x _{3,2}+\epsilon_{2} \\ \vdots \\\beta_{0} + \beta_{1}x _{1,i}+ \beta_{2}x _{2,i}+ \beta_{3}x _{3,i}+\epsilon_{i}\end{bmatrix}

Yllä oleva on siis aukikirjoitettu versio ylläolevasta yhtälöstä 1. Regressiokertoimet β ovat luonnollisesti samat jokaiselle potilaalle i, mutta jokaiselle potilaalle on oma virheterminsä εi.

Regressiokertoimet määritetään yleensä lineaarisessa regressiossa pienimmän neliösumman menetelmällä (eng. least squares method). Virallisempi ilmaisu tälle on, että menetelmällä minimoidaan summamuuttujan Σ(yi-xβ)2 arvo. yi on aineistossa havaitun päätemuuttujan arvo ja on lähtömuuttujien ja niiden regressiokertoimien (ml. vakiotermi) tulojen summa. Regressiokertoimet määrittyvät siten, että päätemuuttujien ja lähtömuuttujien sekä regressiokertoimien erotuksen neliö on mahdollisimman pieni. Tämä summa ei voi koskaan saavuttaa nollaa, koska biolääketieteellisissä mittauksissa ja ilmiöissä on aina jotain virhelähteitä. Täydellinen ennustaminen ei ole siis mahdollista.

Regressiomallin kokonaisarviointi ja selitysaste

Varsinaisen tutkimuksen kannalta lineaariregressiossa on neljä huomioitavaa kokonaisuutta: mallin kokonaisselitysaste, mallin keskivirhe, regressiokertoimien arvot sekä ns. regressiodiagnostiikka.

Mallin selitysaste (eng. variation explained) kuvastaa miten hyvin lineaarimalli asettuu aineistoon eli miten hyvin malli kuvaa tutkittavaa ilmiötä. Jos mallin ennustamat päätemuuttujien arvot (ŷi) ovat lähellä todellisia (yi), havaittuja arvoja, sanotaan, että mallilla on hyvä tai korkea selitysaste. Jos taas mallin ennustamat päätemuuttujien arvot ovat kaukana todellisista ja virhetermit, εi ovat suuria, mallilla sanotaan huono tai matala selitysaste.

Selitysaste voidaan tulkita myös vaihtelun selittämisenä. Mitä parempi on mallin selitysaste, sitä paremmin se selittää vaihtelua päätemuuttujassa. Biologissa ilmiöissä on aina vaihtelua ja satunnaisuutta. Tilastomenetelmillä pyritään selittämään tätä vaihtelua, koska hyvin selitetty vaihtelu kuvastaa hyvää ennustekykyä.

Selitysaste määritetään neliösummien avulla. Kokonaisneliösumma (eng. total sum of squares, TSS) tarkoittaa päätemuuttujien ja päätemuuttujien keskiarvon erotusten neliötä. Matemaattisesti tämä määritetään Σ(ȳ-yi)2. Alla oleva selittää tätä graafisesti tilanteessa, jossa on mallissa päätemuuttuja ja yksi lähtömuuttuja.

TSS kuvastaa siis miten suuri virhe on sellaisella mallilla, jossa kaikki päätemuuttujat ovatkin päätemuuttujan keskiarvon suuruisia. Tätä kutsutaan myös ns. nollamalliksi (eng. null model, empty model) tai tyhjäksi malliksi. Kokonaisneliösumma suhteutetaan jäännösneliösummaan (eng. residual sum of squares, RSS). Se tarkoittaa päätemuuttujien todellisen arvon sekä mallin ennustaman arvon erotuksen neliötä. Matemaattisesti tämä määritetään Σ(ŷiyi)2. Alla oleva kuvaaja havainnollistaa tätä jälleen graafisesti.

RSS kuvastaa varsinaisen mallin virhettä suhteessa havaittuun aineistoon. Kokonaisneliösumma on jäännösneliösumman ja mallineliösumman (eng. model sum of squares, MSS) yhteissumma. Mallineliösumma tarkoittaa sitä osaa vaihtelusta, jonka malli selittää ja tämä saadaan siis kaavasta MSS=TSS-RSS. Mallin kokonaisselitysaste on luonnollisesti selitetyn vaihtelun osuus kaikesta havaitusta vaihtelusta. Mallin selitysaste on siis suhde luku MSS/TSS. Tätä kuvataan kirjaimella R2 (eng. “R-squared”, coefficient of determination). Se rajoittuu välille [0,1] ja voidaan ilmaista myös prosentteina.

Lineaariregressiomallille raportoidaan lisäksi yleensä vakioitu selitysaste eli R2adj (eng. “adjusted R-squared”). Jos malliin lisätään mikä tahansa muuttuja, niin R2 paranee aina hieman vaikka uusi muuttuja ei selittäisi yhtään lisää vaihtelua päätemuuttujassa. R2adj huomioi mallissa olevien muuttujien lukumäärän ja kuvastaa näin ollen paremmin selitysastetta kuin R2. Lineaariregressiomallille kannattaa siis aina raportoida R2adj.

Mallin hyvyydelle ja selitysasteelle voidaan tehdä myös tilastollinen testaus. Kun neliösummat jaetaan mallin vapausasteilla (havaintojenlukumäärä n – 2), saadaan keskineliösummat (eng. mean squares, MS). Keskeinen suure on selitetyn vaihtelun (MSM) suhde ei-selitettyyn vaihteluun (MSR). Tälle suureelle voidaan määrittää tilastollinen merkitsevyys F-jakauman avulla. Jos selitetyn vaihtelun suhde ei-selitettyyn vaihteluun on tilastollisesti merkitsevä, mallin katsotaan olevan parempi kuin ns. nolla malli. Nolla malli tarkoittaa siis tilannetta, jossa kaikkien regressiokertoimien arvo on 0 eli kaikkien päätemuuttujien katsotaan olevan muuttujan keskiarvon suuruisia. Mikäli mallin selitysaste ei saavuta tilastollista merkitsevyyttä, on syytä miettä onko otoskoko riittävän suuri ja onko analyysistä oikeastaan mitään hyötyä. Tilastollinen merkitsevyys ei useinkaan ole hyödyllisyyden mittari, mutta mallin selitysasteessa sitä on syytä kriittisesti tarkastella.

Mallin virhe

Lineaariregressiolle voidaan määrittää erilaisia kokonaisvirheitä. Absoluuttinen keskivirhe (eng. mean absolute error, MAE) määritetään 1/N*Σ|ȳ-yi|2. Se kuvaa siis mallin ennustaman päätemuuttujan arvon ja havaitun päätemuuttujan arvon erotuksen itseisarvon keskiarvoa eli MAE ilmoittaa, miten paljon mallin ennustamat arvot poikkeavat keskimäärin havaituista.

Keskineliövirhe (eng. mean squared error, MSE) kuvaa virhetermien varianssia. Se määritetään 1/N*Σ(ȳ-yi)2. Juuri-keskineliövirhe (eng. root mean square error, RMSE) saadaan ottamalla MSE:sta neliöjuuri. Se kuvaa MAE:n tavoin mallin keskivirhettä ennustusten suhteen, mutta koska laskukaavassa on mukana neliöön korotus, erittäin paljon poikkeavat arvot saavat enemmän painoarvoa verrattuna absoluuttiseen keskivirheeseen. Raportoitava mallin virhe riippuu mitä ennusteiden osalta halutaan painottaa eniten.

Regressiokertoimet

Lineaarisessa regressiossa pyrkimyksenä on siis löytää regressiokertoimien arvot, jotka kuvaavat lähtömuuttujien ja päätemuuttujan välistä yhteyttä. Yksittäiselle regressiokertoimelle voidaan aina määrittää tilastollinen merkitsevyys. Jos regressiokertoimen arvo on tilastollisesti merkitsevä, voidaan todeta, että lähtömuuttujalla on tilastollinen yhteys päätemuuttujaan. Tämän tulkinnassa pitää muistaa p-arvon tulkinnan periaatteet eikä raja-arvon 0.05 kohdalla tapahdu mitään taianomaista.

Regressiokertoimien tilastollinen merkitsevyys määritetään keskivirheen avulla. Regressiokertoimen suuruuden lisäksi sille voidaan määrittää keskivirhe (eng. standard error, SE), joka riippuu aineiston koosta sekä virhetermien suuruudesta. Mitä suurempi on kertoimien keskivirhe, sitä suurempi on p-arvo ja regressiokertoimen luottamusväli. Tilastollisessa analyysissä pyritään aina mahdollisimman pieniin keskivirheen arvoihin ja estimoitujen muuttujien luottamusväleihin.

Yllä olevissa kuvissa olevaan aineistoon voidaan sovittaa alla oleva lineaarinen regressiomalli:

Suorituskyky=\beta_{0}+\beta_{Ikä}*Ikä

Pienimmän neliösumman menetelmällä saadaan regressiokertoimien arvoiksi β0=174.1 ja β1=-1.88. β0 tarkoittaa siis mallin vakiotermiä. Se tarkoittaa päätemuuttujan arvoa silloin kun muut muuttujat saavat arvon 0. Yllä olevassa mallissa siis Suorituskyky saa arvon 174.1 kun Ikä=0. Tietenkään reaalimaailmassa emme voi määrittää ihmisen suorituskykyä iän ollessa 0 vuotta, mutta tämä onkin tilastollinen malli, jolla yritetään selittää aineistoa.

Regressiokerroin lineaarimallissa kuvaa päätemuuttujan muutosta, kun lähtömuuttuja muuttuu 1 yksikön. Yllä olevassa mallissa siis suorituskyky laskee 1.88 yksikköä kun ikä muuttuu yhden yksiköä. Samalla oletetaan, että muut mallissa olevat arvot eivät muutu. Lineaariregressiossa siis regressiokertoimien tulkinta on suoraviivaista.

Regressiodiagnostiikka

Mallin hyvyyden ja selitysasteen sekä regressiokertoimien määrityksen ja tulkinnan jälkeen on hyvä katsoa regressiomallin ns. diagnostiikkaa. Tämä tarkoittaa erilaisia näkökulmia liittyen regressiomallin validiteettiin ja taustaoletuksiin.

Kaikista oleellisinta on tarkastaa lineaariregression taustaoletusten voimassa olo. Lineaarisen regression tärkeimmät taustaoletukset ovat:

  • (Lineaarisuus)
  • (Additiivisuus)
  • Homoskedastisuus
  • Virhetermien normaalius
  • Virhetermien riippumattomuus

Lineaarisuus (eng. linearity) ja additiivisuus (eng. additivity) ovat sulkeissa, koska ne on käsitelty jo ylempänä. Oleellinen huomio on se, että pääte- tai lähtömuuttujien jakaumista ei oleteta mitään. Hyvin yleinen virheoletus on, että lineaariregressiossa muuttujien pitäisi olla normaalijakautuneita. Tämä ei kuitenkaan pidä paikkaansa. Oleellisinta on virhetermien jakauma ja käyttäytyminen.

Homoskedastisuus (eng. homoscedasticity) tarkoittaa, että virhetermien hajonta eli varianssi ei riipu päätemuuttujan arvosta. Virhetermien hajonta ja vaihtelu eivät saa esimerkiksi kasvaa lähtömuuttujan arvon kasvaessa. Jos virhetermien vaihtelu riippuu päätemuuttujan arvosta, sanotaan, että virhetermit ovat heteroskedastisia. Homoskedastisuus tarkoittaa siis, että virhetermien varianssi on vakio. Heteroskedastinen (eng. heteroscedasticity) tarkoittaa, että varianssi ei ole vakio eli hajonta vaihtelee riippuen lähtömuuttujan arvojen mukaan. Homoskedastisuus on selkein määrittää kuvaamalla sovitettuja arvoja ŷ suhteessa virhetermeihin. Kuviossa ei saisi olla mitään säännön mukaisuutta, kuten esimerkiksi tunneloitumista vaan kaikki havaintopisteet pitäisi olla täysin satunnaisesti kuvaajassa.

Virhetermien normaalius tarkoittaa, että virhetermit ovat jakautuneet normaalijakauman mukaisesti. Yleinen tapa tutkia virhetermien jakaumaa on ns. kvantiili-kvantiilikuvaaja (eng. quantile-quantile-plot, QQ-plot). Virhetermien jakaumaa voidaan testata normaaliustesteillä kuten mitä tahansa muita muuttujia. Tähän liittyy kuitenkin huomattavia ongelmia, joita on pohdittu artikkelissa Kahden jatkuvan muuttujan vertaaminen. Pelkkä visuaalinen tulkinta kvantiilikuvaajasta on usein riittävä.

Virhetermien riippumattomuus tarkoittaa, että virhetermit eivät riipu toisistaan. Jos virhetermit ovat toisistaan riippuvia eli ne korreloivat keskenään, se johtuu siitä, että aineistossa on mittauksia, jotka on saatu samoilta potilailta. Jos esimerkiksi yllä olevassa suorituskyky aineistossa olisi useammalta potilaalta kaksi mittausta, virhetermit eivät olisi enää riippumattomia. Tällöin saman potilaan kahdella eri mittauksella olisi ainakin teoriassa erilaiset virhetermit kuin kahdelta eri potilaalta saaduissa mittauksia. Virhetermien riippumattomuudessa keskeisintä on tulkita miten aineisto on kerätty ja ovatko kaikki mittausarvot itsenäisiä.

Poikkeavien havaintojen (eng. outlier) analyysi on myös hyödyllinen menetelmä regressioanalyysin tulosten tarkastelussa. Koska lineaariregressio nojaa useisiin taustaoletuksiin, aineistossa olevat poikkeavat havainnot saattavat vääristää tuloksia. Poikkeavia havaintoja voidaan tarkastella monella eri tavalla, kuten edellä kuvatuilla taustaoletusten tarkasteluilla. Poikkeavien havaintojen tarkasteluun on myös omia menetelmiä kuten Cookin etäisyys.

Miten sitten toimia poikkeavien havaintojen kanssa? Ensi vaiheessa on oleellista tarkastella ettei kyseessä ole selkeä mittausvirhe. Jos potilaan iäksi on kirjattu esimerkiksi 6.4, kun tarkastelaan vain aikuispotilaita tai jos potilaan kolesteroli arvoksi on kirjattu 0.1, lienee kyseessä mittausvirhe ja arvon voinee poistaa, jos sitä ei pysytä tarkastamaan muualta. Poikkeavien havaintojen merkityksen arvioinnissa voidaan hyödyntää myös kliinistä aihetietoa. Muuttuja voi kuvata esimerkiksi potilaan toimintakykyä asteikolla 0-100, jossa 100 on paras. Muuttujan keskiarvo voi olla esimerkiksi 80 ja valtaosa arvoista välillä 60-100 normaalijakaumaa mukaillen lukuunottamatta lievää kattoefektä (osa potilaista saa täydet pisteet). Aineistossa voi olla esimerkiksi muutama potilas, joilla mittarin arvo on 0-20 eli ne ovat selkeästi poikkeavia. Tällöin kannattaa pohtia, miten havainnot selittyvät kliinisessä aihetiedolla. Onko mahdollista, että potilailla on jokin vaikea perussairaus, joka aiheuttaa huomattavan toimintakykyvajauksen? Tai ovatko potilaat saaneet jonkin hoidon komplikaation, joka on romahduttanut heidän toimintakyvyn? Tällöin kannattaa pohtia onko perusteltua sisällyttää nämä arvot analyysiin, jossa tarkoitus sovittaa jokin malli aineistoon. Jos mallilla ei pyritä selittämään vaikeaa toimintakykyvajausta tai hoidon komplikaatioita, voi harkita havaintojen poistamista aineistosta. On syytä kuitenkin muistaa, että havaintopisteiden poistaminen aineistosta on erittäin kyseenalaista ja tärkeää on olla sen suhteen läpinäkyvä.

Viimeinen huomioitava asia lineaariregression tulosten tarkastelussa on kolineariteetti (eng. colinearity) tai multikolinearisuus. Tämä tarkoittaa käytännössä kahden muuttujan voimakasta keskinäistä korrelaatiota. Varsinaisesti kolineariteetti tarkoittaa, että jokin lähtömuuttuja on selkeästi selitettävissä tai ennustettavissa muiden lähtömuuttujien arvoilla. Voimakas kolineariteetti voi johtaa regressiokertoimien epäluotettavuuteen ja suuriin keskivirheisiin eli leveisiin luottamusväleihin. Mahdollinen kolineariteetti voidaan tutkia varianssin inflaatiotekijällä (eng. variance inflation factor, VIF). VIF lasketaan erikseen jokaiselle lähtömuuttujalle. Arvo 1 tarkoittaa, että muuttujaa ei voi lainkaan selittää muiden muuttujien arvoilla. Näin kuitenkaan harvoin on todellisuudessa vaan “normaali” VIF saattaa vaihdella välillä 1-3. VIF voi saada periaattessa arvon ääretön, mikä tarkoittaa, että kyseinen muuttuja on täydellisesti selitettävissä muilla muuttujilla. Tämäkään ei kuitenkaan ole lähes koskaan mahdollista. VIF-arvo yli 8-10 tarkoittaa huomattavaa kolineariteettia. Jos VIF on välillä 5-8, kannattaa muuttujan poistamista mallista harkita. Ideaalitilanteessa kaikkien muutujien VIF-arvot ovat alle 3, joka tarkoittaa vähäistä kolineariteettia.

Lopuksi

Huolellisesti tehty lineaarinen regressio, kuten mikä tahansa muu regressiomenetelmä vaatii tarkkuutta ja monia huomioitavia asioita sekä tietoa niin tilastotieteestä että asiasisällöstä. Mekaaninen analysointi ilman asiaan syventymistä voi johtaa epäluotettaviin ja jopa virheellisiin tuloksiin. Lineaariregressio on vain matemaattinen suorite, eikä se ymmärrä taustalla vaikuttavia syy-seuraussuhteita tai ennustekyvyn merkitystä. Nämä riippuvat tutkijan taustaoletuksista sekä tutkimusasetelmasta.


Kirjoittanut Aleksi Reito, vertaisarvioinut Ville Ponkilainen.

Mitä mieltä olit artikkelin sisällöstä?

Klikkaa tähteä arvostellaksi artikkelin!

Keskiarvo 5 / 5. Arvostelujen lukumäärä: 4

Kukaan ei ole vielä äänestänyt, ole ensimmäinen

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *