Dobici:
- Sposobnost dobijanja determinističkih i ponovljivih rezultata štampanjem koda koji proizvodi graf, a ne slike grafa, na veštačkoj inteligenciji i pokretanjem istog
- Sposobnost validacije izlaza grafikona u odnosu na podatke sa vrijednostima, integritetom, razmjerom i zbirom kontrolnih suma
- Sposobnost nametanja pravila iskrenosti (od ose 0, direktne oznake, izvorne bilješke) i oslanjanja na kod umjesto na verbalno nagađanje
Izabrali ste ispravan tip grafikona; Sada je vrijeme da ga proizvedemo. Najpouzdanija upotreba umjetne inteligencije ovdje nije tražiti od nje da "nacrta" graf, već da odštampa kod koji proizvodi graf i da ga sami pokrenete. Odakle? Zato što je veliki jezički model generator teksta; može verbalno "pogoditi" broj, ali kod obrađuje podatke takvi kakvi jesu i proizvodi deterministički rezultat (dajući uvijek isti izlaz istom ulazu). U ovoj jedinici ćemo naučiti kako ispisati grafički kod (uglavnom Python) na AI i provjeriti izlaz.
Zašto kodirati, zašto pokrenuti?
Pitajte jezički model "kolika je ukupna prodaja?" Ako pitate, on zapravo ne prikuplja podatke; Generiše mogući broj. Ali ako ispišete agregacijski kod na njega i pokrenete ga, rezultat dolazi iz stvarnih podataka. Isto važi i za grafikon: kod koji model generiše radi na vašim podacima, na vašoj mašini. Kôd je također ponovljiv: kada se podaci ažuriraju, ponovo pokrećete kod i osvježavate grafikon.
Uobičajeni alati: matplotlib i seaborn (statična grafika), plotly (interaktivna grafika) sa Python jezikom; također programi za proračunske tablice i BI (poslovna inteligencija) alati. U ovoj jedinici daćemo primjere korištenja Python/matplotlib jer je to najčešće; Princip je isti u svakom vozilu.
Savjet: Umjesto "dajte mi sliku grafikona", recite "dajte mi kod koji proizvodi grafikon i ja ću ga pokrenuti." Na taj način rezultat dolazi iz stvarnih podataka i možete izvršiti onoliko prilagođavanja koliko želite.
Korak po korak: od koda do grafike
- Odredite grafički tip i poruku (prethodna jedinica).
- Opišite strukturu podataka modelu (nazivi kolona, tipovi; nisu osjetljivi podaci).
- Neka se generiše kod, stavite pravila iskrenosti u prompt (od ose 0, oznake, izvorne beleške).
- Pokrenite kod sami i pogledajte grafikon.
- Provjerite: da li je vrijednost na grafikonu ista kao vrijednost u podacima? Da li ukupni/udio drži?
- Poboljšajte: Promijenite naslov u naslov radnje, izbrišite nepotrebno, dodajte boju za isticanje.
Vaša uloga: Python pomoćnik za vizualizaciju podataka. Imam CSV: kolone "mjesec" (GGGG-MM), "kanal" (tekst), "prihod" (broj). Napišite LINE grafski kod sa matplotlib:- Svaki kanal je zasebna linija, x=mesec, y=dođi.- Neka os y počinje od 0 (ne seci).- Stavite oznake direktno na kraj redova, posebna legenda nije potrebna.- Stavite čuvar mesta za naslov akcije u naslov.- Dodajte mali "izvor" u donjem desnom uglu: Učinite kod potpunim i izvršnim, također napišite primjer reda za čitanje. POSTAVLJANJE BROJA; čitanje podataka iz CSV-a.
Da popravite postojeći grafikon:
Popravite ovaj matplotlib kod: (1) sortirajte trake po vrijednosti od najveće do najmanje, (2) učinite samo najvišu traku narandžastom, a ostatak sivim, (3) učinite da os y počinje od 0, (4) formatirajte decimale sa separatorom hiljada. Vratite kod u cijelosti. Šifra: [ ... ]
Za interaktivni grafikon (za kontrolnu tablu):
Napišite interaktivni kod linijskog grafikona koristeći Plotly sa istim podacima: ako lebdite mišem, prikazat će se mjesec i prihod, a kanali se mogu filtrirati. Neka os počinje od 0. Navedite puni kod.
Validacija: je li grafikon "tačan", a ne "lijep"?
Posao nije gotov samo zato što je grafika izlazna. Tri kontrolne sume:
- Davanje vrijednosti: Provjerite 2-3 nasumična boda rukom/stolom. Da li je najviša traka na grafikonu zaista najviša?
- Provjera ukupnog/udjela: Da li su dionice popunjene do 100% u grafikonu dio-cijela?
- Vizuelna iskrenost: Da li os počinje od 0, da li je skala linearna, da li je to ista jedinica? (Detalji u sljedećoj jedinici.)
kontrolu
Kako se brinuti
crvena zastava
Vrijednost
Uporedite 2-3 poena sa podacima
Grafički podaci se ne podudaraju
integritet
Da li nedostaju neki mjeseci/kategorije?
Praznina je tiho preskočena
skala
Gdje počinje Y osa
nije 0, razlika je pretjerana
Ukupno
Udjeli/ukupni iznos
Ne drži 100%
Oprez: model ponekad "dopunjava" mjesece koji nedostaju u podacima ili tiho odbacuje red koji nedostaje. Pogledajte da li broj tačaka na grafikonu odgovara broju redova u podacima.
tri mini kofera
Slučaj 1 — Predviđanje otkucaja koda. Analitičar prvo pita model "koliko je ukupno?" upitao je i dobio odgovor "≈4,2 miliona". Zatim je odštampao kod za dodavanje i pokrenuo ga: stvarni ukupan iznos bio je 3,87 miliona. Verbalno predviđanje je bilo 8% pogrešno. Od tog dana dobija sve brojeve iz šifre.
Slučaj 2 — Nečujna linija koja nedostaje. Jedan tim je izradio mjesečni grafikon; sve je izgledalo u redu. Ali mart je bio prazan u podacima, a grafikon ga je preskočio i povezao februar sa aprilom; Izgledalo je mekano jer je bilo u trendu. Primijetili su broj tačaka (trebalo je biti 12 umjesto 11) i ispravili ga; Došlo je do skoka u stvarnom trendu.
Slučaj 3 — Reproducibilnost. Marketer je crtao grafikone ručno svakog mjeseca (oko 40 minuta). Jednom je instalirao kod koji je napisala umjetna inteligencija; U narednim mjesecima trebalo je 2 minute da se stavi novi CSV i pokrene kod. Ušteđeno 38 minuta mjesečno i nema više grešaka pri ručnom kopiranju.
Slaba prompt / Jaka prompt
slaba:
Grafički prikaz ovih podataka o prodaji.
Model može stati na sliku ili dati nasumični kod; podaci se zapravo ne obrađuju, nema postavki iskrenosti.
Jaka:
Vaša uloga: Python/matplotlib pomoćnik. Podaci: CSV, kolone "region" (tekst), "buyume_percentage" (broj, može biti negativan). Napišite kod horizontalnog trakastog grafikona: sortirajte po vrijednosti, označite najviši region, dodajte y=0 referentnu liniju (prikažite negative), stavite oznake procenta na krajeve trake. Dajte izvršni kod, pročitan iz CSV-a, prilagođavanje broja. Stavite rezervirano mjesto za naslov radnje za naslov.
Drugi uključuje strukturu podataka, pravila poštenja i princip "čitaj iz koda, ne izmišljaj"; Izlaz je precizan i može se uređivati.
Izbor alata: kada tabela, kada kod?
Ne morate pisati kod za svaki grafikon. Za mali, jednokratni, jednostavan grafikon, tabela (Excel, Google Spreadsheets) je često dovoljna i brza. Kod pobjeđuje kada: podaci se redovno ažuriraju (osvježavanje istog grafikona svakog mjeseca), grafikon je složen ili brojan (kao što su mali višestruki grafikoni), potrebna je potpuna kontrola (postavke integriteta, prilagođeno označavanje) ili je važno da se rezultat ponovi. Također možete pitati koji je pogodan za umjetnu inteligenciju.
Status
odgovarajuće vozilo
Zašto
Jednokratni jednostavan bar
tabela
Brzo, nije potreban kod
Izvještaj se ažurira svakog mjeseca
kod (Python)
Napiši jednom, pokreni ponovo
Interaktivna/filter kontrolna tabla
Kod (plotly) / BI alat
potrebna interakcija
Mnogo malih grafika
Kod
Crtanje rukom je zamorno i netačno
Vaša uloga: konsultant za vizualizaciju podataka. Moram da napravim sledeći grafikon: [recept]. [Koliko često] se podaci ažuriraju, [koliko] različitih grafikona je potrebno. Da li tabela ili Python kod imaju više smisla? Obrazložite svoju odluku; Koju biblioteku preporučujete za kod?
Nagoveštaj: "Hoću li ovo ponavljati svaki mesec?" Ako je odgovor na pitanje "da", ulaganje u kod se gotovo uvijek isplati. Ako je jednokratna, tabela će biti dovoljna.
Uobičajene greške
- Traženje "slike" grafikona: Kada tražite sliku umjesto koda, podaci se zapravo ne obrađuju.
- Vjerovati kodu bez njegovog izvršavanja: Stavljanje izlaza na slajd bez vizualne provjere.
- Ne pruža provjeru vrijednosti: ne uspoređuje tačke na grafikonu sa podacima.
- Ne vidite liniju koja nedostaje/preskače: Ne provjerava se broj tačaka.
- Tretiranje kao jednokratni posao: ne čuvanje koda i počinjanje od nule svaki mjesec.
Ukratko
Zatražite od umjetne inteligencije kod koji proizvodi graf, a ne sliku grafa, i sami pokrenite taj kod; jer kod obrađuje podatke onakvima kakvi jesu i daje determinističke i ponovljive rezultate. Opišite strukturu podataka, stavite pravila integriteta (od ose 0, oznake, izvora) u zahtjev, potvrdite izlaz hešovima vrijednosti-integrity-scale-sum. Kod svaki put nadmašuje verbalno predviđanje; Ali konačna kontrola je vaša.
Zadatak aplikacije
Za vašu datoteku podataka: (1) Opišite strukturu podataka AI i odštampajte kod za generisanje grafikona (sa pravilima poštenja). (2) Pokrenite kod i ručno uporedite 2-3 vrijednosti u grafikonu sa podacima. (3) U istom kodu sortirajte trake po vrijednosti i dodajte jednu boju za isticanje. (4) Sačuvajte kod za ponovnu upotrebu sljedećeg mjeseca.
kontrolna lista
- [ ] Htio sam i pokrenuo kod koji proizvodi grafikon, a ne njegovu sliku.
- [ ] Kod čita podatke iz stvarnog fajla, ne pravi brojeve.
- [ ] Uporedio sam 2-3 vrijednosti u grafikonu sa podacima.
- [ ] Broj bodova/kategorija je kompatibilan sa redovima u podacima.
- [ ] Y osa i skala su iskreni; Nema prekida osovine.
- [ ] Sačuvao sam kod da ga ponovo koristim.