Appar för artbestämning av dag- och nattfjärilar – hur funkar det?

Nattfjärilsfälla (LED-Emmer, De Vlinderstichting, NL) och tre artbestämnings-appar som våren 2024 är bland de bästa för dag- och nattfjärilar: ObsIdentify, Artsorakel och ButterflyCount [1,2,7 & 8 i källhänvisningen nedan]. Foto: Youp van den Heuvel, De Vlinderstichting.

Lars Pettersson

Från Pettersson & Arnberg 2024, Svensk Dagfjärilsövervakning, årsrapport för 2023

En resa några år bakåt i tiden

Ibland sker utvecklingen mycket snabbare än man kan föreställa sig. För nästan på dagen fem år sedan satt jag i ett möte i Bryssel där jag fick frågan om jag trodde det skulle gå att starta storskalig övervakning av nattfjärilar i Sverige och Europa. Flera stora initiativ var på gång för att testa övervakning inte bara av dagfjärilar utan även solitära bin, humlor och blomflugor. Nattfjärilar skulle också vara värdefullt, berättade tjänstemannen jag besökte. Eftersom jag tycker mycket om nattfjärilar höll jag med, men sa samtidigt att problemet är det tar lång tid att lära sig artbestämma dem. ”Realistiskt sett, är nog tyvärr inte nattfjärilar en grupp som passar för storskalig miljöövervakning”, sammanfattade jag. Sällan har jag haft så fel.

Tre år senare, i maj 2022, stod jag på Trädgårdsföreningen i Göteborg och berättade om dag- och nattfjärilar och att man kunde använda sin mobil för att få förslag på artbestämning. Så kort tid hade det tagit för att det skulle dyka upp flera riktigt användbara appar som klarade av att försöka artbestämma lite av varje. Jag hade börjat använda mig av den norska appen Artsoraklet [1] och den nederländska ObsIdentify [2]. Inte minst började de klara av nattfjärilar. Knepet bakom detta var såklart den snabba utvecklingen inom maskininlärning och bildanalys, men mer om det strax. År 2022 var apparna ganska dåligt tränade. En hanne av fjäderbärare, Ptilophora plumigera, med sina enorma antenner [3] klarade inte ObsIdentify av att känna igen, men så var heller inte appens klassificerare (”classifier”, algoritmen som programmet använder för att klassificera data till olika kategorier) tränad på fjäderbärare eftersom arten knappt finns i Belgien eller Holland [4]. På samma sätt tränades (och tränas fortfarande) Artsoraklet på arter som observerats i Norge [5] och eftersom fjäderbärare finns längs Norges sydkust så gick det galant att få ett bra förslag från den norska appen. Å andra sidan hade Artsoraklet ofta problem med sydsvenska arter som ObsIdentify klarade lätt. Här någonstans, när apparna började ge riktigt bra förslag när man använde dem rätt, anade jag att jag varit lite för tvärsäker på det där mötet i Bryssel. Artbestämnings-appar kunde nog göra små underverk så småningom om de tränades bra.

Ytterligare ett år senare, våren 2023, var vi här i Lund mitt i det stora pilotprojektet SPRING [6] som utvärderade olika metoder för pollinatörsövervakning. En av metoderna var ljusfångst av nattfjärilar. Tur att tjänstemannen i Bryssel inte lyssnat på mig. Klassificeraren i ObsIdentify hade nu byggts in i en ny app för rapportering av dag- och nattfjärilar, ButterflyCount [7]. I kombination med holländska nattfjärilsfällor av typen LED-Emmer [8] gick det nu att inventera nattfjärilar, fotografera dem i appen och få förslag på artbestämning direkt. ButterflyCount är kopplad till en databas i Storbritannien [9] (som parentes kan jag berätta att vi just nu arbetar med att länka data därifrån till Artportalen så att observationer som görs med appen kommer in på konton på Artportalen för de som vill). En stor mängd nattfjärilsobservationer från hela Europa har gjorts med appen [9]. Arbetet med pilotprojektet gjorde att klassificeraren fick träna på artkomplex som passar för Sverige (till exempel gul syremätare/grå syremätare, Timandra comae/griseata [10]) så den inte lämnade tvärsäkra svar på arter som är svåra eller omöjliga att skilja på bild. Parallellt med ButterflyCount utvecklades Artsoraklet [1] och ObsIdentify[2] vidare. Såväl dag- som nattfjärilar gick allt bättre att bestämma med apparna allteftersom deras klassificerare tränades.

Djupinlärning är en kategori inom maskininlärning som i sin tur är en kategori inom artificiell intelligens.

Figur 12. Djupinlärning är en kategori inom maskininlärning som i sin tur är en kategori inom artificiell intelligens.

Och med det är vi framme i mars 2024. Apparna är långt ifrån färdiga, det blir de nog aldrig, men märkbart bättre till och med jämfört med i fjol, dels på att ge förslag på artbestämning, och dels när det av olika anledningar (bildkvalitet, ovanlig art som klassificeraren inte är så bra tränad på, artpar som inte går att skilja åt utan genitaliepreparat osv.) är bättre att meddela att, tyvärr, bilden går inte att bestämma till art. Flera nya eller nygamla aktörer har lanserat appar eller webbtjänster för artbestämning [11] och klassificerarna börjar till och med byggas in i automatiska nattfjärilsfällor [12]. Någonstans här, när nattfjärilar observeras och artbestäms utan att någon är på plats, börjar man kanske närma sig det klassiska tankeexperimentet ”If a tree falls in a forest and no one is around to hear it, does it make a sound?” [13]. Existerar de här djuren annat än som bilder på en hårddisk? Fast det är klart, när Albert Einstein ställde en liknande fråga som den om trädet i skogen till kollegan Abraham Pais under en promenad så svarade den senare det kvantfysiskt lustiga ” The twentieth century physicist does not, of course, claim to have the definitive answer to this question” [13]. Så - kan man anse att man sett ett buxbomsmott, Cydalima perspectalis [14], som man bara har på film från en automatfälla? Dilemman som det hade jag inte en aning om att de skulle vara ens tänkbara för fem år sedan när jag satt i Bryssel och trodde att nattfjärilar skulle vara för svåra att inventera. Vem vet vart maskininlärning och artbestämnings-appar tagit oss om fem år till? Men nog om det! Hur fungerar tekniken bakom apparnas artbestämning och hur gör man bäst för att få rätt svar när man använder dem?

Figur 13. Ett riktigt bra exempel på hur metoden bakom artbestämnings-appar, Convolutional Neural Networks fungerar [15]. Du hittar sidan via länken https://poloclub.github.io/cnn-explainer/ [16] och kan enkelt prova med egna bilder. I övre vänstra hörnet ser du de 10 bilder som det artificiella neuronnätverket tränats att klassificera samt en bild på ett mållfly, Trachea atriplicis, som laddats upp. Bästa klassificeringen som programmet får (med nuvarande träning) för mållflyet är att det skulle kunna vara en nyckelpiga. Å andra sidan, provar man med en bild på en EPA-traktor blir det 100% sportbil...

AI, Machine Learning, Deep Learning & Convolutional Neural Networks

Alla de här termerna ser man lite varstans nu, ibland översatta och ibland med lite förklaring om vad det rör sig om. Alla är relevanta för artbestämnings-appar som ObsIdentify [2] m.fl. och alla hör ihop (se Figur 12). Enkelt uttryckt är AI, Artificiell Intelligens, den term som beskriver när en dator härmar intelligens eller beteende-mönster hos människor eller andra levande organismer. Maskininlärning (Machine Learning) är i sin tur en kategori inom begreppet AI och utgör tekniker för att få en dator att ”lära” sig från data utan att tvinga den använda en uppsättning regler som säger exakt hur den ska göra. Metoden baseras framförallt på att träna modeller utifrån data. Djupinlärning (Deep Learning) är i sin tur en teknik inom begreppet Maskininlärning som baseras på vår hjärnas nätverk av nervceller. Program som inspireras av sådana nätverk av nervceller kallas artificiella neuronnät.

Figur 14. Ett mållfly, Trachea atriplicis, och bearbetning av bilden i ett steg av det artificiella neuronnätverket [15]. Du hittar sidan som gör detta via länken https://poloclub.github.io/cnn-explainer/ [16]. Foto: Lars Pettersson.

Convolutional Neural Networks, eller faltningsnätverk (från tyskans Faltung, vikning) som de heter på svenska, är en typ av artificiella neuronnät som är särskilt bra på bildigenkänning. Det är just Convolutional neural networks som utgör stommen i dagens bildbaserade artbestämning-appar. Typiskt för ett sådant nätverk är att det successivt, bit för bit, söker igenom bilden efter mönster eller delar av mönster som det känner igen (Figur 13, [15,16,17]). Det analyserar alltså inte hela bilden som helhet i ett enda steg, istället bygger neuronnätet upp en matematisk sammanställning av små, små överlappande bitar och hur väl de stämmer överens med de mönster som eftersöks. En liten bildruta sveper successivt över bilden i små steg tills hela bilden täckts. Idén bakom convolutional neural networks är att bildelement som ingår i det mönster man söker efter oftast finns intill varandra. Om neuronnätet letar efter antennerna på en fjäril så är de oftast nära varandra, inte i var sitt hörn av bilden. Det har visat sig att synsinnet hos djur analyserar synintryck på liknande sätt [18]. Om man tar ett konkret exempel så visar Figur 14 hur ett convolutional neural network [16] tolkar en bild av ett mållfly, Trachea atriplicis (Figur 14). Just detta nätverket [15,16] är tränat på att känna igen: 1) en livbåt, 2) en nyckelpiga, 3) en pizza, 4) en paprika, 5) en skolbuss, 6) en koala, 7) en kopp espresso, 8) en röd panda, 9) en apelsin, och 10) en sportbil. Bästa matchningen blir mot en nyckelpiga med viss reservation för att det kan vara en livbåt. Nja… men i alla fall.

Från nyckelpiga/livbåt till mållfly

Skulle jag själv försöka mig på en artbestämning är det några saker jag går på – jag ser att det verkar vara en fjäril baserat på form, mer specifikt att det nog är ett nattfly (familjen Noctuidae) eftersom formen ser ut som ett nattfly och där finns särskilda mönster på vingen (njurfläck och ringfläck) som är typiska för nattflyn. Jag ser också att det är snygga gröna teckningar och ett tydligt ljust streck snett över vardera vingen. Då tänker jag att det bör vara ett mållfly. I grund och botten innebär detta att jag också går på mönster som jag känner igen. Jag kan sätta ord och underförstådda betydelser på dem, som ringfläck, njurfläck och grönt. Det artificiella neuronnätet skulle (om det nu inte vore tränat på bussar och röda pandor) känna igen mållflyet med hjälp av matematiska formler som utvärderar om kända mönster finns i bilden. När allt går som det ska blir effekten densamma. Faktum är att många av de problem som jag har när jag ska försöka artbestämma utifrån en bild är samma problem som artbestämnings-appens artificiella neuronnät ställs inför. Det är enklare med en tydlig, skarp, stor bild av ett mållfly i bra vinkel utan andra saker i bilden som stör än med en suddig, liten bild av en sliten fjäril, sedd från sidan med ett löv i vägen. Kanske inte så konstigt.

Sedan skiljer vi oss åt på andra sätt (som tur är). Om mållflyet sitter på en maskros skulle många appar ha problem att veta vad jag vill veta – maskros eller mållfly? Det artificiella neuronnätet skulle kunna tränas på obegränsade mängder bilder av mållflyn medan jag nog skulle storkna så småningom. Det är också viktigt att tänka på att om man tränar artificiella neuronnät med dåliga bilder eller tränar det fel (att man exv. kallar en del gammaflyn [19] för mållflyn) så blir det sämre. Är träningen sämre fungerar klassificeringen sämre och appen ger fel svar. Det är därför träningen av de ledande apparna är starkt uppstyrd. En del av dem tränar på standardiserade artporträtt medan andra använder foton från mer naturliga situationer. Gemensamt för båda strategierna är att de kräver att man tränar och åter tränar det artificiella neuronnätet så att det klassificerar rätt [15,18]. Särskilt viktigt är det att appen klassificerar så långt som möjligt, men inte längre än så. Om det inte går att avgöra om det är gul eller grå syremätare man har på bild ska svaret man får vara att det är antingen en gul eller grå syremätare.

Figur 15. Arbetsflöde för nattfjärilsrapportering i ButterflyCount [7], en av apparna som använder Naturalis klassificerare från ObsIdentify [2]. Från vänster till höger: 1) välj lokal och ange väder mm; 2) ange art och antal, du kan skriva in arten själv (svenska eller vetenskapligt namn) eller ladda upp en bild och låta appen föreslå en artbestämning; 3) arterna läggs successivt till artlistan för det aktuella besöket och kan sedan laddas upp och ses via sidan https://butterfly-monitoring.net/elastic/all-records [9].

Hur gör man då för att få så rimliga svar som möjligt?

Apparna utvecklas i rasande fart och de som är ledande idag kan vara helt passé nästa år. Jag vill därför inte säga att den ena är bättre än den andra. Figur 15 visar hur man kan använda en av dem, ButterflyCount [7]. Värt att tänka på är att ingen klassificerare är bättre än materialet den tränats på och det är alltid lättare att träna på vanliga arter än ovanliga eftersom det finns mer bilder att utgå ifrån. Alla klassificerare har därför brister. Men man kan vara säker på att allt eftersom de tränas så kommer de bli bättre och bättre. Var bara varsam med appar som har begränsad geografisk eller taxonomisk täckning.

  1. Viktigast av allt: lita inte 100% på apparna, kolla alltid deras förslag noga! Även om apparna är bra (och kommer att bli ännu bättre) så är de aldrig bättre än hur väl de tränats. Det kommer dyka upp konstiga förslag ibland, var vaksam på det.
  2. Ha hellre en stor bild av djuret än en liten. Beskär så djuret är så stort som möjligt om appen låter dig beskära bilden.
  3. Ha hellre en skarp bild än en suddig.
  4. Ha helst en kvadratisk bild. Vissa appar ändrar bilden till kvadratisk och då kan det se mycket märkligt ut.
  5. Försök ta bilden i en vinkel som avbildar djuret så tydligt som möjligt.
  6. Använd flera bilder om du har och appen tillåter det.
  7. Undvik komplex bakgrund.
  8. Om appen inte får kontakt med sin server (klassificeraren finns som regel på en server hos exv. Naturalis) så kan appen misslyckas med arter den egentligen klarar. Kolla i så fall din uppkoppling
  9. Verkar förslaget till artbestämning konstigt? Fundera i så fall på om appen har bra täckning för den art du förväntar dig att den ska klassas som.
  10. Blir det fel i appen? Har du förslag på nya funktioner? Tveka inte att kontakta utvecklarna!

     

Källor

[1] https://orakel.artsdatabanken.no/, se även https://play.google.com/store/apps/details?id=no.artsdatabanken.orakel och https://apps.apple.com/no/app/id1522271415

[2] https://observation.org/apps/obsidentify/

[3] http://www2.nrm.se/en/svenska_fjarilar/p/ptilophora_plumigera.html

[4] https://www.gbif.org/species/5119143

[5] appen anger att ”Gjenkjenningsmodellen trenes hos Naturalis Biodiversity Center, med bilder som er offentlig tilgjengelig på artsobservasjoner.no. Når appen brukes sier modellen hva det ligner mest på av artene den har blitt trent med. Dette innebærer at den kun kan foreslå arter som finnes i Norsk natur og som har blitt rapportert med bilder.”. Dvs den tränas i samma modell för maskininlärning som ObsIdentify, men urvalet av arter skiljer sig åt.

[6] https://www.ufz.de/spring-pollination/

[7] https://butterfly-monitoring.net/ebms-app Appen har delar för inventering av dag- och nattfjärilar, man väljer vilken del man vill ha förinställd genom att trycka länge på plus-tecknet på förstasidan. Dagfjärilsdelen är ännu inte optimal för slingor, men funktionen 15-minute count går fint att använda för inventering av punktlokaler. Nattfjärilsdelen är kraftfull, har samma klassificerare som ObsIdentify och fungerar med både svenska och vetenskapliga namn.

[8] https://www.dagfjarilar.lu.se/sites/default/files/public/pdf/handledning... se även https://www.vlinderstichting.nl/wat-wij-doen/meetnetten/meetnet-nachtvli...

[9] https://butterfly-monitoring.net/elastic/all-records

[10] http://www2.nrm.se/en/svenska_fjarilar/t/timandra_griseata.html se även http://www2.nrm.se/en/svenska_fjarilar/t/timandra_comae.html samt https://lepiforum.org/wiki/page/Timandra_comae

[11] Se t. ex. Google Lens: https://lens.google/, Seek: https://www.inaturalist.org/pages/seek_app, Artfakta https://artfakta.se/sokmedbild (klassificerare i samarbete https://www.naturalis.nl/en som utvecklar Obsidentify). För växter finns t. ex. https://plantnet.org/en/ och https://floraincognita.com/

[12] https://www.ceh.ac.uk/solutions/equipment/automated-monitoring-insects-trap

[13] https://en.wikipedia.org/wiki/If_a_tree_falls_in_a_forest

[14] http://www2.nrm.se/en/svenska_fjarilar/c/cydalima_perspectalis.html

[15] Wang, Z. J., Turko, R., Shaikh, O., Park, H., Das, N., Hohman, F., Kahng, M., & Chau, D. H., (2021) CNN Explainer: Learning convolutional neural networks with interactive visualization. – IEEE Trans. Visual. Comput. Graphics 27:1396–1406. https://doi.org/10.1109/TVCG.2020.3030418

[16] https://poloclub.github.io/cnn-explainer/

[17] https://hannibunny.github.io/mlbook/intro.html

[18] Alzubaidi, L., Zhang, J., Humaidi, A.J., Al-Dujaili, A., Duan, Y., Al-Shamma, O., Santamaría, J., Fadhel, M.A., Al-Amidie, M., & Farhan, L. (2021) Review of deep learning: concepts, CNN architectures, challenges, applications, future directions. – J Big Data 8, 53. https://doi.org/10.1186/s40537-021-00444-8

[19] http://www2.nrm.se/en/svenska_fjarilar/a/autographa_gamma.html

Webbplatsen är byggd med open-source systemet Drupal och är utvecklad av webbyrån Happiness.
Information om Cookies   Om personuppgifter