(Acest articol a fost publicat pentru prima dată pe Modele de peisaje maritimeși cu amabilitate a contribuit la R-bloggeri). (Puteți raporta problema legată de conținutul acestei pagini aici)
Doriți să vă distribuiți conținutul pe R-bloggeri? dați clic aici dacă aveți un blog, sau aici dacă nu aveți.
Îmi amintesc când a apărut pentru prima dată cadrul strălucitor R. Dintr-o dată a devenit relativ ușor pentru noi, modelerii ecologici și statisticienii de mediu, să transformăm codul nostru R în aplicații web. Acest lucru a îmbunătățit accesibilitatea analizelor complexe pentru un public mai general.

Ați început să vedeți că „aplicațiile web” apar ca rezultate ale tot felul de proiecte. (Iată un exemplu grozav, Biological Ocean Observer, vă permite să analizați serii temporale de date despre plancton din Australia).
Bariera în realizarea acestor aplicații înainte a fost că majoritatea comunității de modelare nu știa cum să codifice în limbile de pe web. Un cadru bazat pe R pentru aplicații web a făcut acest lucru posibil.
Dar mai era un dezavantaj. Cu R shiny, mai trebuie să găzduiești codul R pe un server undeva. Acest lucru necesită fie un cont gratuit, dar limitat, fie plata pentru calcul.
Situația ideală este să aveți aplicația scrisă în Java Script și html. Aceste limbi rulează pagini web. Diferența cheie față de R Shiny este calculele rulate în browserul web, pe computerul spectatorului. Aceasta înseamnă că puteți găzdui o pagină web ieftin sau gratuit (de exemplu, ca o pagină Github). Nu este necesar un server pentru calcularea R.
În 2018, am plătit un programator JS pentru a-mi transforma codul R într-o aplicație web pentru unul dintre proiectele noastre (cu privire la proiectarea emisiilor de carbon din defrișarea mangrovelor). Această aplicație devine foarte utilă pentru persoanele care evaluează rezultatele potențiale ale proiectelor de carbon.
Ei bine, agenții de codare AI au eliminat acea barieră de codare în JS.
Nu cred că potențialul uriaș al acestei schimbări este încă apreciat pe scară largă în comunitatea de analiză și modelare a datelor de mediu. Așa că am vrut să-l sun aici.
Comunitatea tehnologică în sine abia începe să aprecieze impactul acestei schimbări. Iată o explicație frumoasă a modului în care această nouă putere a rulării aplicațiilor în browser este transformatoare pentru industria tehnologiei. (Verificați tinylittleoffice, o suită de birou bazată pe browser, care salvează documentul ca o adresă URL pe care o puteți copia și lipi, sau Battle Drones un joc web multiplayer care conectează două dispozitive prin sunet și microfoane!).
Această schimbare va fi, de asemenea, transformatoare pentru modelarea și comunicarea științei.
M-am inspirat din exemple precum cele din postarea de mai sus și am început propriul experiment de codare AI. Rezultatul este FANGS, un motor de calcul bayesian bazat pe browser.
Scurt context despre motivația mea aici. Sunt un mare fan al statisticilor bayesiene. Ar trebui să-l folosească mai mulți oameni. Dar o barieră în calea împărtășirii acestui entuziasm este complexitatea instalării multor pachete Bayesian R pe computerele altora.
Așa că am construit FANGS (codați cu vibrația) ca instrument educațional. Înseamnă că studenții mei pot scrie și rula modele bayesiene simple, direct în browserele lor. Aceasta înseamnă că într-o lecție de 3 ore pot: acoperi o introducere în concepte bayesiene, îi pun pe elevi să scrie modele în R, cum ar fi sintaxa, rulează modelele și interpretează rezultatele.
Ideea este că este suficient pentru a-i motiva să instaleze apoi software-ul R adecvat. Utilizarea sintaxei modelului care emulează pachetele Bayesian R serioase este, de asemenea, o piatră de temelie către software-ul R mai puternic.
Voi scrie canalul de dezvoltare într-o postare ulterioară. Dar vreau doar să spun că m-a uluit cât de bine a funcționat acest experiment cu codificarea vibrațiilor. FANGS vă oferă răspunsurile corecte și rulează mai rapid pe probleme de dimensiuni mici de predare decât pachetele R echivalente.
Cred că această nouă putere va revoluționa comunicarea și educația științifică, prin îmbunătățirea accesibilității la multe tipuri de date și știință.
Ce înseamnă acest nou val de dezvoltare a aplicațiilor științifice de ce ai nevoie?
La nivel personal, curiozitatea cu privire la ceea ce este posibil în browserele web. Odată ce știi că ceva este posibil, este ușor să obții un agent AI pentru a-l realiza. Odată ce am aflat despre salvarea datelor în adrese URL din exemplul tinylittleoffice, a fost ușor să-i cer lui Claude să implementeze acea caracteristică în FANGS (vezi copy share link buton).
La nivel de comunitate, traducerea mai multor pachete R comune în biblioteci Java Script va ajuta. De fapt, încă nu am explorat pe deplin ce este disponibil în JS. Dar, de exemplu, există pachete JS eficiente pentru cartografiere, extinderea celor pentru operațiuni GIS complexe va extinde potențialul aplicațiilor noastre.
Standarde pentru validare. Când codificați un pachet, trebuie să știți că este corect. Voi ajunge la cum să fac asta când voi scrie procesul de dezvoltare FANGS.
În cele din urmă, un blocaj cu aplicațiile a fost întotdeauna experiența utilizatorului (UX). Pentru orice aplicație științifică, o întrebare cheie pentru mine a fost întotdeauna: cum ne asigurăm că utilizatorii nu interpretează greșit informațiile furnizate de această aplicație? Nu sunt sigur că AI poate rezolva această problemă încă. Necesită un design atent și multe teste.
Spune-mi idei interesante pe care le ai sau pe care le-ai văzut, sunt dornic să văd mai multe exemple.
