Yksikkö 6 / 11

Grafiikkan luominen tekoälyllä: Koodista visuaaliseen todennuksella

Voitot:

  • Kyky saada deterministisiä ja toistettavia tuloksia tulostamalla graafin tuottava koodi, ei kaavion kuvaa, tekoälylle ja ajamalla se itse
  • Kyky validoida kaavion tulos dataa vastaan arvon, eheyden, mittakaavan ja summan tarkistussummien avulla
  • Kyky määrätä rehellisyyssääntöjä (akselilta 0, suora otsikko, lähdehuomautus) ja luottaa koodiin sanallisen arvaamisen sijaan

Olet valinnut oikean kaaviotyypin; Nyt on aika tuottaa se. Luotettavin tekoälyn käyttötapa tässä ei ole pyytää sitä "piirtämään" kaaviota, vaan tulostaa kaavion tuottava koodi ja ajaa se itse. mistä? Koska suuri kielimalli on tekstigeneraattori; voi sanallisesti "arvata" luvun, mutta koodi käsittelee tiedot sellaisenaan ja tuottaa deterministisen tuloksen (aina sama tulos samalle syötteelle). Tässä osiossa opimme tulostamaan graafista koodia (useimmiten Python) tekoälyyn ja tarkistamaan tulosteen.

Miksi koodata, miksi ajaa?

Kysy kielimallilta "mikä on kokonaismyynti?" Jos kysyt, se ei itse asiassa kerää tietoja; Luo mahdollisen numeron. Mutta jos tulostat koontikoodin siihen ja suoritat sen, tulos tulee todellisista tiedoista. Sama pätee kaavioon: mallin luoma koodi toimii tiedoillasi, koneellasi. Koodi on myös toistettavissa: kun tiedot päivitetään, suoritat koodin uudelleen ja päivität kaavion.

Yleiset työkalut: matplotlib ja seaborn (staattinen juoni), plotly (interaktiivinen juoni) Python-kielellä; myös taulukkolaskentaohjelmat ja BI (business intelligence) -työkalut. Tässä yksikössä annamme esimerkkejä Python/matplotlibistä, koska se on yleisin; Periaate on sama kaikissa autoissa.

Vinkki: "Anna minulle kuva kaaviosta" sijaan sano "anna minulle koodi, joka tuottaa kaavion, niin minä suoritan sen." Tällä tavalla tulos tulee todellisista tiedoista ja voit tehdä niin monta säätöä kuin haluat.

Askel askeleelta: koodista grafiikkaan

  1. Määritä grafiikan tyyppi ja viesti (edellinen yksikkö).
  2. Kuvaile mallin tietorakennetta (sarakkeiden nimet, tyypit; ei arkaluonteisia tietoja).
  3. Luo koodi, laita rehellisyyssäännöt kehotteeseen (akselilta 0, tunniste, lähdehuomautus).
  4. Suorita koodi itse ja katso kaaviota.
  5. Tarkista: Onko kaavion arvo sama kuin tiedoissa oleva arvo? Kestääkö kokonaismäärä/osake?
  6. Paranna: Muuta otsikko toiminnon otsikoksi, poista tarpeettomat, lisää korostusväri.

Sinun roolisi: Python-tietojen visualisointiavustaja. Minulla on CSV: sarakkeet "kuukausi" (VVVV-KK), "kanava" (teksti), "tulo" (numero). Kirjoita LINE-kaavion koodi matplotlibillä:- Jokainen kanava on erillinen rivi, x=kuukausi, y=tule.- Y-akseli alkaa 0:sta (älä leikkaa).- Laita tunnisteet suoraan rivien loppuun, erillistä selitystä ei tarvita.- Lisää otsikkoon toiminnon otsikon paikkamerkki.- Lisää pieni "Lähde: [ ... ]" huomautus alareunaan. Tee koodista täydellinen ja suoritettava, kirjoita myös esimerkkilukurivi. NUMERON ASENNUS; lukea tietoja CSV:stä.

Olemassa olevan kaavion korjaaminen:

Korjaa tämä matplotlib-koodi: (1) lajittele palkit arvon mukaan suurimmasta pienimpään, (2) tee vain korkeimmasta palkista oranssi ja loput harmaaksi, (3) tee y-akseli alkamaan nollasta, (4) muotoile desimaalit tuhansien erottimella. Palauta koodi kokonaisuudessaan. Koodi: [ ... ]

Interaktiivinen kaavio (hallintapaneelia varten):

Kirjoita Plotlylla interaktiivinen viivakaaviokoodi samoilla tiedoilla: hiiren osoitin näyttää kuukauden ja tulot, ja kanavia voidaan suodattaa. Aloita akseli nollasta. Anna koko koodi.

Validointi: onko kaavio "oikea", ei "kaunis"?

Työ ei ole ohi vain siksi, että grafiikka tulostetaan. Kolme tarkistussummaa:

  • Arvon antaminen: Tarkista 2-3 satunnaista pistettä käsin/taulukolla. Onko kaavion korkein palkki todella korkein?
  • Kokonais-/osakevarmennus: Ovatko osakkeet täytetty 100 %:iin osakokonaisuuskaaviossa?
  • Visuaalinen rehellisyys: Alkaako akseli nollasta, onko asteikko lineaarinen, onko se sama yksikkö? (Tiedot seuraavassa yksikössä.)

ohjata

Kuinka huolehtia

punainen lippu

Arvo

Vertaa 2-3 pistettä tietoihin

Kaavion tiedot eivät täsmää

eheys

Puuttuuko kuukausia/kategorioita?

Väli ohitettiin hiljaa

mittakaavassa

Mistä Y-akseli alkaa

ei 0, ero on liioiteltu

Yhteensä

Osakkeet/yhteensä

Se ei kestä 100%

Varoitus: Joskus malli "täydentää" tiedoista puuttuvia kuukausia tai hylkää puuttuvan rivin hiljaa. Tarkista, vastaako kaavion pisteiden määrä tietojen rivien määrää.

kolme minilaukkua

Tapaus 1 — Koodilyönnin ennustus. Analyytikko kysyy ensin mallilta "paljonko on yhteensä?" hän kysyi ja sai vastauksen "≈4,2 miljoonaa". Sitten hän tulosti lisäyskoodin ja suoritti sen: todellinen kokonaissumma oli 3,87 miljoonaa. Sanallinen ennuste oli 8 % väärässä. Siitä päivästä lähtien hän sai kaikki numerot koodista.

Tapaus 2 – Äänetön puuttuva rivi. Yksi tiimi teki kuukausikaavion; kaikki näytti hyvältä. Mutta maaliskuu oli tyhjä tiedoissa, ja kaavio ohitti sen ja linkitti helmikuun huhtikuuhun; Se näytti pehmeältä, koska se oli trendissä. He huomasivat pisteiden määrän (sen olisi pitänyt olla 12 11 sijasta) ja korjasivat sen; Varsinaisessa trendissä tapahtui hyppy.

Tapaus 3 – Toistettavuus. Markkinoija piirsi kaavioita käsin kuukausittain (noin 40 minuuttia). Kun hän asensi tekoälyn kirjoittaman koodin; Seuraavien kuukausien aikana uuden CSV-tiedoston asentaminen ja koodin suorittaminen kesti 2 minuuttia. Säästettiin 38 minuuttia kuukaudessa eikä enää manuaalisia kopiointivirheitä.

Heikko kehote / Vahva kehote

Heikko:

Piirrä nämä myyntitiedot kaaviosta.

Malli voi sopia kuvaan tai antaa satunnaisen koodin; tietoja ei varsinaisesti käsitellä, rehellisyysasetuksia ei ole.

Vahva:

Sinun roolisi: Python/matplotlib-apulainen. Tiedot: CSV, sarakkeet "region" (teksti), "buyume_percentage" (luku, voi olla negatiivinen). Kirjoita vaakasuuntainen pylväskaaviokoodi: lajittele arvon mukaan, korosta korkein alue, lisää y=0 viiteviiva (näytä negatiivit), aseta prosenttitunnisteet palkin päihin. Anna suoritettava koodi, lue CSV:stä, numeroiden sovitus. Aseta otsikolle toiminnon otsikon paikkamerkki.

Toinen sisältää tietorakenteen, rehellisyyssäännöt ja "lue koodista, älä keksi" -periaatteen; Tulos on sekä tarkka että muokattavissa.

Työkalun valinta: milloin laskentataulukko, milloin koodi?

Sinun ei tarvitse kirjoittaa koodia jokaiselle kaaviolle. Pienelle, kertaluonteiselle, yksinkertaiselle kaaviolle laskentataulukko (Excel, Google Spreadsheets) on usein riittävä ja nopea. Koodi voittaa, kun: tietoja päivitetään säännöllisesti (sama kaavio päivitetään joka kuukausi), kaavio on monimutkainen tai sitä on useita (kuten pieniä useita kaavioita), vaaditaan täysi hallinta (eheysasetukset, mukautetut merkinnät) tai on tärkeää, että tulos on toistettavissa. Voit myös kysyä, mikä niistä sopii tekoälylle.

Tila

sopiva ajoneuvo

Miksi?

Kertaluonteinen yksinkertainen baari

laskentataulukko

Nopea, ei vaadi koodia

Raportti päivitetään kuukausittain

Koodi (Python)

Kirjoita kerran, juokse uudelleen

Interaktiivinen/suodatin kojelauta

Koodi (kuvallisesti) / BI-työkalu

vuorovaikutusta tarvitaan

Paljon pientä grafiikkaa

Koodi

Käsin piirtäminen on väsyttävää ja epätarkaa

Tehtäväsi: datan visualisoinnin konsultti. Minun täytyy tuottaa seuraava kaavio: [resepti]. [Kuinka usein] tiedot päivitetään, [kuinka monta] erilaista kaaviota tarvitaan. Onko laskentataulukossa tai Python-koodissa järkevämpää? Perustele päätöksesi; Mitä kirjastoa suosittelet koodille?

Vihje: "Teenkö tämän uudestaan ​​joka kuukausi?" Jos vastaus kysymykseen on "kyllä", koodiinvestointi maksaa melkein aina itsensä takaisin. Jos se on kertaluonteinen, laskentataulukko riittää.

Yleisiä virheitä

  • Kaavion "kuvan" pyytäminen: Kun pyydät kuvaa koodin sijaan, tietoja ei itse asiassa käsitellä.
  • Koodiin luottaminen suorittamatta sitä: Tulosteen laittaminen dialle tarkistamatta sitä visuaalisesti.
  • Ei toimita arvon vahvistusta: Ei verrata kaavion pisteitä tietoihin.
  • Ei näy puuttuvaa/ohitettua riviä: Pisteiden lukumäärää ei tarkisteta.
  • Käsittele sitä kuin kertatyötä: Älä pidä koodia ja aloita alusta joka kuukausi.

Yhteenvetona

Pyydä tekoälyltä koodia, joka tuottaa kaavion, älä kuvaa kaaviosta, ja suorita koodi itse; koska koodi käsittelee tiedot sellaisenaan ja antaa deterministisiä ja toistettavia tuloksia. Kuvaile tietorakenne, laita eheyssäännöt (akselilta 0, otsikko, lähde) pyyntöön, validoi tulos arvo-eheys-asteikko-summa-hajautusarvoilla. Koodi voittaa sanallisen ennustuksen joka kerta; Mutta lopullinen hallinta on sinun.

Sovellustehtävä

Datatiedostosi: (1) Kuvaile tekoälyn tietorakenne ja tulosta kaavion luontikoodi (rehellisyyssäännöillä). (2) Suorita koodi ja vertaa manuaalisesti 2-3 kaavion arvoa tietoihin. (3) Lajittele samassa koodissa olevat palkit arvon mukaan ja lisää yksi korostusväri. (4) Tallenna koodi käytettäväksi uudelleen ensi kuussa.

tarkistuslista

  • [ ] Halusin ja suoritin koodin, joka tuottaa kaavion, en kuvaa siitä.
  • [ ] Koodi lukee tiedot oikeasta tiedostosta, se ei muodosta numeroita.
  • [ ] Vertailin kaavion 2-3 arvoa tietoihin.
  • [ ] Pisteiden/luokkien määrä on yhteensopiva tietojen rivien kanssa.
  • [ ] Y-akseli ja asteikko ovat rehellisiä; Akselikeskeytystä ei ole.
  • [ ] Tallensin koodin käytettäväksi uudelleen.