Această postare a fost scrisă în colaborare cu Daniele Chiappalupi, participant al echipei Hackathon de studenți AWS la ETH Zürich.
Toată lumea poate începe cu ușurință să folosească învățarea automată (ML). Amazon SageMaker JumpStart. În această postare, vă arătăm cum o echipă de Hackathon universitară a folosit SageMaker JumpStart pentru a construi rapid o aplicație care îi ajută pe utilizatori să identifice și să elimine părtinirile.
„Amazon SageMaker a fost esențial în proiectul nostru. A facilitat implementarea și gestionarea unei instanțe pre-antrenate de Flan, oferindu-ne o bază solidă pentru aplicația noastră. Funcția sa de scalare automată s-a dovedit crucială în perioadele cu trafic intens, asigurând că aplicația noastră rămâne receptivă și utilizatorii au primit o analiză constantă și rapidă a părtinirii. În plus, permițându-ne să descarcăm sarcina grea de a interoga modelul Flan către un serviciu gestionat, am reușit să menținem aplicația noastră ușoară și rapidă, îmbunătățind experiența utilizatorului pe diferite dispozitive. Funcțiile SageMaker ne-au împuternicit să maximizăm timpul petrecut la hackathon, permițându-ne să ne concentrăm pe optimizarea solicitărilor și a aplicației, mai degrabă decât pe gestionarea performanței și infrastructurii modelului.”
– Daniele Chiappalupi, participant al echipei de Hackathon de studenți AWS la ETH Zürich.
Prezentare generală a soluțiilor
Tema Hackathonului este de a contribui la obiectivele durabile ale ONU cu tehnologia AI. După cum se arată în figura următoare, aplicația construită la Hackathon contribuie la trei dintre Obiectivele de Dezvoltare Durabilă (educație de calitate, vizarea discriminării bazate pe gen și reducerea inegalităților), ajutând utilizatorii să identifice și să elimine părtinirile din textul lor pentru a promova echitabilitatea. și limbaj incluziv.
După cum se arată în următoarea captură de ecran, după ce furnizați textul, aplicația generează o nouă versiune care este lipsită de părtiniri rasiale, etnice și de gen. În plus, evidențiază părțile specifice ale textului introdus legate de fiecare categorie de părtinire.
În arhitectura prezentată în diagrama următoare, utilizatorii introduc text în fișierul Reacţionaaplicație web bazată pe, care declanșează Gateway API Amazon, care la rândul său invocă un AWS Lambdas funcția în funcție de părtinirea textului utilizatorului. Funcția Lambda apelează punctul final al modelului Flan în SageMaker JumpStart, care returnează rezultatul text imparțial prin aceeași rută înapoi la aplicația front-end.
Procesul de dezvoltare a aplicației
Procesul de dezvoltare a acestei aplicații a fost iterativ și sa centrat pe două domenii principale: interfața cu utilizatorul și integrarea modelului ML.
Am ales React pentru dezvoltarea front-end datorită flexibilității, scalabilității și instrumentelor puternice pentru crearea de interfețe interactive cu utilizatorul. Având în vedere natura aplicației noastre – procesarea intrărilor utilizatorilor și prezentarea rezultatelor rafinate – arhitectura bazată pe componente React s-a dovedit ideală. Cu React, am putea construi eficient o aplicație cu o singură pagină, care să permită utilizatorilor să trimită text și să vadă rezultate nepărtinitoare fără a fi nevoie de reîmprospătări constante ale paginii.
Textul introdus de utilizator trebuia procesat de un model de limbaj puternic pentru a verifica cu atenție prejudecățile. Am ales Flan pentru proprietățile sale de robustețe, eficiență și scalabilitate. Pentru a utiliza Flan, am folosit SageMaker JumpStart, așa cum se arată în următoarea captură de ecran. Amazon SageMaker a facilitat implementarea și gestionarea unei instanțe pre-antrenate de Flan, permițându-ne să ne concentrăm pe optimizarea solicitărilor și interogărilor noastre, mai degrabă decât pe gestionarea performanței și infrastructurii modelului.
Conectarea modelului Flan la aplicația noastră front-end a necesitat o integrare robustă și sigură, care a fost realizată folosind Lambda și API Gateway. Cu Lambda, am creat o funcție fără server care comunică direct cu modelul nostru SageMaker. Apoi am folosit API Gateway pentru a crea un punct final sigur, scalabil și ușor accesibil pentru aplicația noastră React pentru a invoca funcția Lambda. Când un utilizator trimitea text, aplicația a declanșat o serie de apeluri API către gateway - mai întâi pentru a identifica dacă era prezentă vreo părtinire, apoi, dacă este necesar, interogări suplimentare pentru a identifica, localiza și neutraliza părtinirea. Toate aceste solicitări au fost direcționate prin funcția Lambda și apoi către modelul nostru SageMaker.
Sarcina noastră finală în procesul de dezvoltare a fost selectarea solicitărilor pentru a interoga modelul de limbaj. Aici, setul de date CrowS-Pairs a jucat un rol esențial, deoarece ne-a oferit exemple reale de text părtinitor, pe care le-am folosit pentru a ne ajusta solicitările. Am selectat prompturile printr-un proces iterativ, cu obiectivul de a maximiza acuratețea în detectarea părtinirii în cadrul acestui set de date.
Încheind procesul, am observat un flux operațional fără întreruperi în aplicația finită. Procesul începe cu un utilizator care trimite text pentru analiză, care este apoi trimis printr-o solicitare POST către punctul nostru final securizat API Gateway. Aceasta declanșează funcția Lambda, care comunică cu punctul final SageMaker. În consecință, modelul Flan primește o serie de interogări. Primul verifică prezența oricăror părtiniri în text. Dacă sunt detectate părtiniri, sunt implementate interogări suplimentare pentru a localiza, identifica și neutraliza aceste elemente părtinitoare. Rezultatele sunt apoi returnate pe aceeași cale – mai întâi la funcția Lambda, apoi prin API Gateway și, în cele din urmă, înapoi către utilizator. Dacă în textul original a fost prezentă vreo părtinire, utilizatorul primește o analiză cuprinzătoare care indică tipurile de părtiniri detectate, fie că sunt rasiale, etnice sau de gen. Sunt evidențiate secțiuni specifice ale textului în care au fost găsite aceste părtiniri, oferind utilizatorilor o vedere clară asupra modificărilor efectuate. Alături de această analiză, este prezentată o versiune nouă, nepărtinitoare a textului lor, transformând efectiv input-ul potențial părtinitor într-o narațiune mai incluzivă.
În secțiunile următoare, detaliem pașii pentru implementarea acestei soluții.
Configurați mediul React
Am început prin a configura mediul nostru de dezvoltare pentru React. Pentru pornirea unei noi aplicații React cu configurație minimă, am folosit create-react-app:
npx create-react-app my-app
Construiți interfața cu utilizatorul
Folosind React, am proiectat o interfață simplă pentru ca utilizatorii să introducă text, cu un buton de trimitere, un buton de resetare și afișaje suprapuse pentru a prezenta rezultatele procesate atunci când acestea sunt disponibile.
Inițiază modelul Flan pe SageMaker
Am folosit SageMaker pentru a crea o instanță pre-antrenată a modelului de limbaj Flan cu un punct final pentru inferență în timp real. Modelul poate fi utilizat împotriva oricărei sarcini utile structurate în JSON, cum urmează:
Creați o funcție Lambda
Am dezvoltat o funcție Lambda care a interacționat direct cu punctul nostru final SageMaker. Funcția a fost concepută pentru a primi o solicitare cu textul utilizatorului, a o trimite către punctul final SageMaker și a returna rezultatele rafinate, așa cum se arată în următorul cod (ENDPOINT_NAME
a fost configurat ca punct final al instanței SageMaker):
Configurați API Gateway
Am configurat un nou API REST în API Gateway și l-am conectat la funcția noastră Lambda. Această conexiune a permis aplicației noastre React să facă cereri HTTP către API Gateway, care a declanșat ulterior funcția Lambda.
Integrați aplicația React cu API-ul
Am actualizat aplicația React pentru a face o solicitare POST către API Gateway atunci când a fost făcut clic pe butonul de trimitere, corpul solicitării fiind textul utilizatorului. Codul JavaScript pe care l-am folosit pentru a efectua apelul API este următorul (REACT_APP_AWS_ENDPOINT
corespunde punctului final API Gateway legat de apelul Lambda):
Optimizați selecția promptă
Pentru a îmbunătăți acuratețea detectării părtinirii, am testat diferite solicitări împotriva setului de date CrowS-Pairs. Prin acest proces iterativ, am ales prompturile care ne-au oferit cea mai mare acuratețe.
Implementați și testați aplicația React pe Vercel
După construirea aplicației, am implementat-o pe Vercel pentru a o face accesibilă publicului. Am efectuat teste ample pentru a ne asigura că aplicația a funcționat conform așteptărilor, de la interfața cu utilizatorul până la răspunsurile din modelul lingvistic.
Acești pași au pus bazele pentru crearea aplicației noastre pentru analizarea și depolarizarea textului. În ciuda complexității inerente a procesului, utilizarea unor instrumente precum SageMaker, Lambda și API Gateway a simplificat dezvoltarea, permițându-ne să ne concentrăm asupra obiectivului principal al proiectului - identificarea și eliminarea prejudecăților din text.
Concluzie
SageMaker JumpStart oferă o modalitate convenabilă de a explora caracteristicile și capabilitățile SageMaker. Oferă soluții organizate într-un singur pas, exemple de notebook-uri și modele pre-antrenate implementabile. Aceste resurse vă permit să învățați și să înțelegeți rapid SageMaker. În plus, aveți opțiunea de a ajusta modelele și de a le implementa în funcție de nevoile dumneavoastră specifice. Accesul la JumpStart este disponibil prin intermediul Amazon SageMaker Studio sau programatic folosind API-urile SageMaker.
În această postare, ați aflat cum o echipă de studenți Hackathon a dezvoltat o soluție în scurt timp folosind SageMaker JumpStart, care arată potențialul AWS și SageMaker JumpStart în a permite dezvoltarea și implementarea rapidă a soluțiilor AI sofisticate, chiar și de către echipe sau persoane mici.
Pentru a afla mai multe despre utilizarea SageMaker JumpStart, consultați Reglarea fină a instrucțiunilor pentru FLAN T5 XL cu Amazon SageMaker Jumpstart și Solicitare zero-shot pentru modelul de fundație Flan-T5 în Amazon SageMaker JumpStart.
ETH Analytics Club a găzduit „ETH Datathon”, un hackathon AI/ML care atrage peste 150 de participanți de la ETH Zurich, Universitatea din Zurich și EPFL. Evenimentul include ateliere conduse de lideri din industrie, o provocare de codificare de 24 de ore și oportunități valoroase de relație cu colegii studenți și profesioniști din industrie. Mulțumiri deosebite echipei ETH Hackathon: Daniele Chiappalupi, Athina Nisioti și Francesco Ignazio Re, precum și restului echipei de organizare AWS: Alice Morano, Demir Catovic, Iana Peix, Jan Oliver Seidenfuss, Lars Nettemann și Markus Winterholer.
Conținutul și opiniile din această postare sunt cele ale autorului terț, iar AWS nu este responsabilă pentru conținutul sau acuratețea acestei postări.
Despre autori
Iun Zhang este un arhitect de soluții cu sediul în Zurich. El îi ajută pe clienții elvețieni să proiecteze soluții bazate pe cloud pentru a-și atinge potențialul de afaceri. Are o pasiune pentru sustenabilitate și se străduiește să rezolve provocările actuale de sustenabilitate cu ajutorul tehnologiei. De asemenea, este un mare fan de tenis și îi place mult să joace jocuri de societate.
Mohan Gowda conduce echipa de învățare automată la AWS Elveția. Lucrează în primul rând cu clienții Automotive pentru a dezvolta soluții și platforme inovatoare AI/ML pentru vehiculele de următoarea generație. Înainte de a lucra cu AWS, Mohan a lucrat cu o firmă de consultanță în management global, cu accent pe strategie și analiză. Pasiunea lui constă în vehiculele conectate și conducerea autonomă.
Alimentethias Egli este șeful educației în Elveția. Este un lider de echipă entuziast, cu o vastă experiență în dezvoltarea afacerilor, vânzări și marketing.
Kemeng Zhang este un inginer ML cu sediul în Zurich. Ea ajută clienții globali să proiecteze, să dezvolte și să scalați aplicații bazate pe ML pentru a le împuternici capabilitățile digitale pentru a crește veniturile afacerii și a reduce costurile. De asemenea, este foarte pasionată de crearea de aplicații centrate pe om prin valorificarea cunoștințelor din știința comportamentală. Îi place să joace sporturi nautice și să plimbe câinii.
Daniele Chiappalupi este proaspăt absolvent al ETH Zürich. Îi place fiecare aspect al ingineriei software, de la proiectare la implementare și de la implementare la întreținere. Are o pasiune profundă pentru AI și anticipează cu nerăbdare explorarea, utilizarea și contribuția la cele mai recente progrese în domeniu. În timpul liber, îi place să facă snowboard în lunile mai reci și să joace baschet pick-up când vremea se încălzește.
- Distribuție de conținut bazat pe SEO și PR. Amplifică-te astăzi.
- PlatoData.Network Vertical Generative Ai. Împuterniciți-vă. Accesați Aici.
- PlatoAiStream. Web3 Intelligence. Cunoștințe amplificate. Accesați Aici.
- PlatoESG. carbon, CleanTech, Energie, Mediu inconjurator, Solar, Managementul deșeurilor. Accesați Aici.
- PlatoHealth. Biotehnologie și Inteligență pentru studii clinice. Accesați Aici.
- Sursa: https://aws.amazon.com/blogs/machine-learning/innovation-for-inclusion-hack-the-bias-with-amazon-sagemaker/
- :are
- :este
- :nu
- :Unde
- $UP
- 100
- 13
- 150
- 17
- 25
- 7
- 8
- 87
- 97
- 990
- a
- Capabil
- Despre Noi
- acces
- accesibil
- Conform
- precizie
- Obține
- realizat
- peste
- Suplimentar
- În plus,
- progresele
- După
- împotriva
- AI
- AI / ML
- alice
- TOATE
- permite
- permis
- Permiterea
- pe langa
- de asemenea
- Amazon
- Amazon SageMaker
- Amazon Web Services
- an
- analiză
- Google Analytics
- analiza
- și
- și infrastructură
- anticipează
- Orice
- api
- API-uri
- aplicaţia
- aplicație
- aplicatii
- arhitectură
- SUNT
- domenii
- AS
- aspect
- At
- autor
- Auto
- auto
- autonom
- disponibil
- AWS
- Axios
- înapoi
- bazat
- Baschet
- BE
- deoarece
- înainte
- început
- fiind
- părtinire
- părtinitor
- distorsiunilor
- bord
- Consiliul de Jocuri
- corp
- Legat
- larg
- construi
- Clădire
- construit
- afaceri
- dezvoltarea afacerii
- buton
- by
- apel
- apeluri
- CAN
- capacități
- Categorii
- centrat
- contesta
- provocări
- Modificări
- Verificări
- a ales
- clar
- club
- cod
- Codificare
- complexitate
- cuprinzător
- efectuat
- Configuraţie
- configurat
- legat
- conexiune
- prin urmare
- constant
- consultant
- conţinut
- context
- a contribui
- contribuie
- contribuind
- Convenabil
- Nucleu
- corespunde
- A costat
- ar putea
- crea
- a creat
- Crearea
- crucial
- curator
- Curent
- clienţii care
- de date
- adânc
- În funcție
- implementa
- dislocate
- desfășurarea
- Amenajări
- proiectat
- În ciuda
- detaliu
- detectat
- Detectare
- dezvolta
- dezvoltat
- în curs de dezvoltare
- Dezvoltare
- Dispozitive
- diferit
- digital
- direct
- afișează
- atrage
- conducere
- două
- în timpul
- fiecare
- nerăbdare
- cu ușurință
- uşor
- Educaţie
- în mod eficient
- eficiență
- eficient
- element
- eliminarea
- împuternici
- împuternicit
- permițând
- Punct final
- inginer
- Inginerie
- consolidarea
- asigura
- asigurare
- a intrat
- entuziast
- Mediu inconjurator
- ETH
- Chiar
- eveniment
- Fiecare
- exemplu
- exemple
- de aşteptat
- experienţă
- explora
- Explorarea
- extensiv
- echitabil
- ventilator
- FAST
- Caracteristică
- DESCRIERE
- membru
- camp
- Figura
- final
- Firmă
- First
- Flexibilitate
- debit
- Concentra
- următor
- urmează
- Pentru
- Înainte
- găsit
- Fundație
- Gratuit
- din
- funcţie
- mai mult
- Jocuri
- poartă
- a dat
- Gen
- generează
- generaţie
- obține
- dat
- Oferirea
- Caritate
- scop
- Goluri
- merge
- apuca
- absolvent
- mare
- pregătire
- hack
- Hackathon
- Avea
- he
- cap
- greu
- ajutor
- ajută
- aici
- cea mai mare
- Evidențiat
- highlights-uri
- lui
- găzduit
- Cum
- HTML
- http
- HTTPS
- mare
- ideal
- identifica
- if
- punerea în aplicare a
- implementarea
- import
- îmbunătăţi
- in
- includere
- Inclusiv
- Crește
- persoane fizice
- industrie
- inegalitățile
- Infrastructură
- inerent
- Inovaţie
- inovatoare
- intrare
- instanță
- instrumental
- integrare
- interactiv
- interfaţă
- interfeţe
- în
- invocă
- IT
- ESTE
- Jan
- JavaScript
- jpg
- JSON
- A pastra
- cunoştinţe
- limbă
- Ultimele
- conduce
- Liderii
- Conduce
- AFLAȚI
- învățat
- învăţare
- Led
- efectului de pârghie
- se află
- categorie ușoară
- ca
- îi place
- legate de
- Lot
- iubeste
- maşină
- masina de învățare
- făcut
- Principal
- întreținere
- face
- administra
- gestionate
- administrare
- de conducere
- Marketing
- Maximaliza
- maximizarea
- minim
- ML
- model
- Modele
- luni
- mai mult
- NARATIV
- Natură
- necesar
- Nevoie
- necesar
- nevoilor
- rețele
- Oportunități de rețea
- Nou
- următor
- obiectiv
- of
- oferind
- promoții
- on
- operațional
- Avize
- Oportunităţi
- optimizarea
- Opțiune
- or
- comandă
- organizator
- original
- OS
- al nostru
- pagină
- participanţi
- piese
- pasiune
- pasionat
- Efectua
- performanță
- perioadele
- Platforme
- Plato
- Informații despre date Platon
- PlatoData
- a jucat
- joc
- Post
- potenţial
- potenţial
- puternic
- prezenţă
- prezenta
- prezentat
- în primul rând
- proces
- Procesat
- profesioniști
- proiect
- promova
- proprietăţi
- s-au dovedit
- furniza
- prevăzut
- furnizează
- public
- calitate
- interogări
- repede
- rapid
- mai degraba
- RE
- Reacţiona
- uşor
- real
- în timp real
- a primi
- primit
- primește
- recent
- reduce
- Redus
- trimite
- rafinat
- legate de
- a ramas
- scoate
- solicita
- cereri de
- necesar
- Resurse
- răspunsuri
- responsabil
- sensibil
- REST
- rezultat
- REZULTATE
- reveni
- Returnează
- venituri
- robust
- robusteţe
- Rol
- Traseul
- sagemaker
- de vânzări
- acelaşi
- scalabilitate
- scalabil
- Scară
- scalare
- Ştiinţă
- fără sudură
- secțiuni
- sigur
- vedea
- sămânţă
- selectate
- selecţie
- trimis
- serie
- serverless
- serviciu
- Servicii
- set
- instalare
- ea
- Pantaloni scurți
- Arăta
- indicat
- Emisiuni
- simplu
- mic
- Software
- Inginerie software
- solid
- soluţie
- soluţii
- REZOLVAREA
- sofisticat
- specific
- Sportul
- început
- constant
- paşi
- Strategie
- raționalizate
- se străduiește
- student
- Elevi
- supunere
- prezenta
- prezentat
- Ulterior
- Durabilitate
- durabilă
- Dezvoltare Durabilă
- SWIFT
- Elvețian
- Elveția
- direcționare
- Sarcină
- echipă
- echipe
- Tehnologia
- test
- testat
- teste
- a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match.
- decât
- mulțumesc
- acea
- lor
- Lor
- temă
- apoi
- Acestea
- terț
- acest
- aceste
- trei
- Prin
- timp
- la
- Unelte
- transformare
- a declanșat
- ÎNTORCĂ
- Două
- Tipuri
- în cele din urmă
- UN
- înţelege
- universitate
- actualizat
- us
- utilizare
- utilizat
- Utilizator
- Experiența de utilizare
- User Interface
- utilizatorii
- folosind
- folosi
- utilizate
- Utilizand
- Valoros
- diverse
- Vehicule
- versiune
- foarte
- de
- Vizualizare
- mers
- Se încălzește
- a fost
- Apă
- Cale..
- we
- Vreme
- web
- servicii web
- BINE
- au fost
- cand
- dacă
- care
- cu
- în
- fără
- a lucrat
- de lucru
- fabrică
- Ateliere
- Tu
- Ta
- zephyrnet
- Zurich