Orange Data Mining oziroma krajše Orange je odprtokodni program za podatkovno rudarjenje, strojno učenje in vizualizacijo podatkov. Razvija ga skupina raziskovalcev in razvijalcev v Laboratoriju za bioinformatiko na Fakulteti za računalništvo in informatiko Univerze v Ljubljani, pri razvoju pa skozi leta sodeluje širša skupina raziskovalcev, pedagogov in inženirjev. Orange temelji na vizualnem programiranju, pri katerem uporabnik analitične postopke sestavlja s povezovanjem grafičnih gradnikov.
Opis
Analitični postopki v Orangu so predstavljeni kot delotoki, sestavljeni iz povezanih gradnikov oziroma widgetov. Posamezni gradniki izvajajo naloge, kot so branje in preoblikovanje podatkov, vizualizacija, gradnja napovednih modelov, razvrščanje v skupine, vrednotenje modelov in drugi postopki strojnega učenja in podatkovne analitike.
Gradniki si prek povezav izmenjujejo podatke in rezultate analiz. Vizualizacije so interaktivne. Uporabnik lahko na primer v vizualizaciji izbere skupino primerov in izbrani podnabor posreduje drugim gradnikom za nadaljnjo analizo. Poleg grafičnega uporabniškega vmesnika je mogoče Orange uporabljati tudi programsko kot knjižnico v jeziku Python.
Orange je napisan predvsem v programskem jeziku Python ter uporablja knjižnice znanstvenega ekosistema Python, med njimi NumPy, SciPy in scikit-learn. Na voljo je za operacijske sisteme Windows, macOS in Linux. Funkcionalnost osnovnega programa je mogoče razširiti z dodatki za specializirana področja, med drugim za rudarjenje besedil, analizo slik, bioinformatiko, analizo omrežij, časovne vrste in spektroskopijo.
Razvoj
Razvoj Oranga se je začel konec 1990. let na Univerzi v Ljubljani. Prve različice so temeljile predvsem na knjižnici algoritmov za strojno učenje, napisani v jeziku C++, ki je bila povezana s Pythonom. Kasneje je postal osrednji del sistema grafični vmesnik za vizualno sestavljanje analitičnih postopkov.
Različica Orange 3 je pomenila večjo arhitekturno prenovo. Program je prešel na Python 3 in se tesneje povezal s sodobnim ekosistemom znanstvenih knjižnic za Python, med drugim z NumPy in scikit-learn.
Sčasoma so Orange razširili z dodatki in specializiranimi okolji za različna področja. Med njimi so orodja za analizo slik, spektroskopijo, rudarjenje besedil, bioinformatiko, analizo časovnih vrst in razlaganje modelov strojnega učenja.
Uporaba in izobraževanje
Orange se uporablja v raziskovanju, pri praktični analizi podatkov in pri poučevanju strojnega učenja ter podatkovnega rudarjenja. Zaradi grafičnega načina dela lahko uporabniki sestavljajo in preizkušajo postopke strojnega učenja brez pisanja programske kode. Razvijalci so Orange uporabljali tudi pri poučevanju osnov umetne inteligence in strojnega učenja v osnovnih in srednjih šolah. Leta 2023 sta Janez Demšar in Blaž Zupan njegovo izobraževalno uporabo predstavila v oddaji Podobe znanja na programu Ars Radia Slovenija.
Neodvisna študija iz leta 2024 je ovrednotila uporabo Oranga pri poučevanju strojnega učenja v geoinformatiki in njegovo vizualno programsko okolje uporabila pri praktičnih nalogah, med drugim pri razvrščanju podatkov v skupine in analizi prostorskih podatkov.
Orange se uporablja tudi kot osnova za specializirana analitična okolja. OASYS (ORange SYnchrotron Suite) uporablja njegovo ogrodje za vizualno programiranje pri simulacijah in analizi v sinhrotronski in rentgenski optiki, medtem ko je bil scOrange razvit za analizo in poučevanje postopkov za enocelične genskoizraževalne podatke.
Priznanja
Razvoj Oranga je rezultat dela širše skupine raziskovalcev in razvijalcev Laboratorija za bioinformatiko UL FRI. Leta 2020 je skupina sodelavcev laboratorija za razvoj pristopov k demokratizaciji podatkovne analitike, ki temeljijo na okolju Orange, prejela priznanje Univerze v Ljubljani za najodličnejši raziskovalni dosežek.
Janez Demšar in Blaž Zupan sta leta 2022 za razvoj orodja Orange prejela Puhovo nagrado.
Leta 2026 je projekt PUMICE – Pouk s ščepcem umetne inteligence, katerega učne lekcije uporabljajo Orange za praktično poučevanje strojnega učenja, prejel priznanje Inženirska iskra.
Sklici
Zunanje povezave
Kategorija:Prosta programska oprema Kategorija:Strojno učenje Kategorija:Podatkovno rudarjenje Kategorija:Programska oprema v Pythonu Kategorija:Fakulteta za računalništvo in informatiko v Ljubljani