Ieguvumi:
- Spēja vizualizēt funkcijas, krustojumus un datus, izdrukājot Matplotlib kodu mākslīgajam intelektam un palaižot kodu, un izvēlēties mērķim atbilstošu grafika veidu
- Spēja pārbaudīt, vai grafiks pareizi atspoguļo matemātiku, salīdzinot to ar zināmām funkcijas īpašībām, asu diapazonu, asimptotiem un vismaz viena punkta aprēķinu.
- Spēja vizuāli noteikt saknes un krustojumus, izmantojot vizualizāciju kā pārbaudes rīku, un nodrošināt precīzus sākumpunktus skaitliskām metodēm
Grafiks parāda vairāk nekā tūkstoš vienādojumu. Vizuāli redzēt, kā funkcija darbojas, kur atrodas tās saknes, kur krustojas divas līknes vai kā tiek sadalīti dati, ir viens no spēcīgākajiem veidiem, kā izprast un pārbaudīt matemātiku. Matemātiskā vizualizācija ir matemātisko objektu (funkciju, datu, ģeometrisko formu) vizuāla attēlošana ar grafiku. Standarta rīks tam Python ir Matplotlib bibliotēka. Šajā nodaļā jūs uzzināsit, kā izmantot AI kā palīgu, kas ģenerē vizualizācijas kodu, un, vēl svarīgāk, kā pārbaudīt, vai diagramma pareizi atspoguļo matemātiku.
Vizualizācija ir arī pārbaudes rīks. Iepriekšējā vienībā mēs redzējām: vienādojuma saknes grafiks pirms tā atrašanas skaitliski parāda, kur atrodas sakne, un sniedz precīzu sākuma novērtējumu. Funkcijas grafika redzēšana pirms integrāļa aprēķina ļauj saprast, vai rezultāta zīmei (pozitīva/negatīva zona) ir jēga. Grafikā tiek jautāts "vai šim rezultātam ir jēga?" Tā ir vizuāla atbilde uz jautājumu.
Galvenie vizualizācijas pielietojumi matemātikā
- Funkciju uzvedība: pieaugoši/samazinoši apgabali, maksimumi/minimumi, f(x) asimptotes.
- Sakņu un krustpunktu atrašana: vietas, kur līkne krustojas ar x asi (saknes), divu līkņu krustpunkts.
- Apgabals/integrālā intuīcija: Vizuāls laukuma attēlojums zem līknes.
- Datu sadalījums: Histogramma, izkliedes diagramma, lodziņa diagramma.
- Ģeometrija: Trijstūri, apļi, transformācijas.
- Kursa materiāls: Jēdziena vizuāla izskaidrošana studentiem.
Soli pa solim: izveidojiet precīzu grafiku, izmantojot AI
1. Esiet skaidrs, ko vēlaties parādīt. Ar "Draw sin(x)" nepietiek; Labāk ir attēlot sin(x) diapazonā [−2π, 2π] ar marķētām asīm un režģi.
2. Ierakstiet Matplotlib kodu AI. Lūdziet kodu, nevis izvades attēlu; Jūs palaižat kodu un redzat grafiku.
3. Salīdziniet grafiku ar matemātiku. Vai grafiks parāda zināmās funkcijas īpašības? sin(x) svārstās starp –1 un 1; parabolai jābūt simetriskai; eksponenciālai funkcijai ir strauji jāpalielinās. Ja diagrammā tie nav redzami, kodā ir kļūda.
4. Pārbaudiet asu diapazonu. Nepareizas atstarpes var paslēpt svarīgu sakni vai uzvedību. Pārliecinieties, vai tas aptver interesanto funkcijas reģionu.
5. Pārbaudiet etiķeti un mērogu. Vai asis ir marķētas? Vai skala (lineāra/log) ir pareiza? Maldinoša skala rada nepareizu iespaidu.
6. Apstipriniet ar ciparu punktu. Ja diagramma parāda f(2)≈3, pārbaudiet to ar aprēķinu. Diagramma var melot (ja ir uzzīmēta nepareiza funkcija).
Padoms. Pēc grafika uzzīmēšanas pārbaudiet to, neatkarīgi aprēķinot vismaz vienu punktu. Ja diagramma parāda y=1 pie x=0, aprēķiniet f(0) manuāli. Ja tie sakrīt, iespējams, ir uzzīmēta pareizā funkcija; Ja tas neatbilst, AI, iespējams, ir iekodējis nepareizu izteiksmi.
Izšķirtspēja un paraugu ņemšana: kur atrodas grafiks
Matplotlib diagramma faktiski nav nepārtraukta līkne; Tas aprēķina funkciju ierobežotā punktu skaitā un savieno šos punktus ar taisnām līnijām. Šo punktu skaitu sauc par izlases izšķirtspēju. Ja izšķirtspēja ir zema (piemēram, tikai 10 punkti, kas ģenerēti ar linspace NumPy), ātras svārstības funkcija (piem., sin(50x)) grafikā var izskatīties pilnīgi nepareiza — lielākā daļa virsotņu un leju atrodas starp diviem paraugu ņemšanas punktiem un pazūd. Signāla apstrādē to sauc par aizstājvārdu. AI dažreiz raksta kodu, kas rada nelielu punktu skaitu; Rezultāts ir plūstošs, bet maldinošs grafiks.
Pretlīdzeklis ir vienkāršs: saglabājiet lielu paraugu ņemšanas punktu skaitu ātri mainīgajās funkcijās (piemēram, np.linspace(a, b, 1000)). Turklāt, ja diagrammai ir leņķisks, zobains vai neregulārs izskats, ko jūs negaidāt, tas bieži vien ir zemas izšķirtspējas blakusefekts, nevis funkcijas faktiskā darbība; Palieliniet punktu skaitu un pārbaudiet, vai grafiks mainās. Ja diagramma būtiski mainās līdz ar punktu skaitu, jūs vēl neredzat funkcijas patieso formu.
Uzmanību! Zemas izšķirtspējas grafiks var pilnībā nepareizi attēlot ātri svārstīgo funkciju vai pat atbilst neeksistējošam modelim. Zīmējot kritisku grafiku, apzināti izvēlieties lielu skaitu paraugu ņemšanas punktu un pārbaudiet, vai diagramma paliek stabila, palielinot punktu skaitu.
Diagrammas veida izvēle
Mērķis
piemērota grafika
Matplotlib funkcija
Funkcijas līkne
līniju diagramma
gabals ()
datu punkti
Izkliedes grafiks
izkliedēt ()
izplatīšana
histogramma
hist ()
Divas mainīgas attiecības
Izkliede + līkne
plot() + izkliede()
Kategorisks salīdzinājums
joslu diagramma
bārs ()
Virsma/3D
3D virsma
plot_surface()
trīs mini futrāļi
1. gadījums — slēptā sakne. Viens students bija uzzīmējis grafiku, lai redzētu polinoma saknes, bet izvēlējās YZ asu diapazonu [−1, 1]; turpretim saknes bija ap x=3 un grafikā vispār nebija redzamas. Students jautā "vai šai funkcijai nav saknes?" Viņš bija pārsteigts, kad viņš mainīja atstarpi uz [−5, 5], parādījās saknes. Nodarbība: nepareizas atstarpes slēpj matemātiku.
2. gadījums — nepareiza funkcija. Skolotājs gribēja, lai AI zīmētu "cos(x²)", taču kods kļūdaini uzrakstīja "cos(x)²" (t.i., cos²(x)). Abas funkcijas ir ļoti atšķirīgas. Kad skolotājs salīdzināja grafiku ar paredzamo vērtību pie x=√π, viņš redzēja, ka tā nesakrīt, un konstatēja kļūdu. Iekavu vieta maina visu.
3. gadījums — iesakņojās vizuālā pārbaude. Inženieris vispirms izveidoja funkcijas grafiku un redzēja, ka tā krustojas ar x asi divās vietās (~ 1,2 un ~ 4,7). Izmantojot šo vizuālo informāciju, tas digitālajam sakņu meklētājam sniedza precīzus sākotnējos minējumus un precīzi atrada abas saknes. Bez grafika tas varētu saplūst tikai ar sakni. Divas saknes 5 minūtēs.
Četras kopējamas veidnes
1) Funkciju diagramma:
Uzrakstiet Matplotlib kodu, kas attēlo funkciju [f(x)] diapazonā [a, b]. Izveidojiet x masīvu ar NumPy, iezīmējiet asi, pievienojiet režģi, ievietojiet nosaukumu. Es izpildīšu kodu; attēla identificēšana. Izvēlieties atbilstošu atstarpi, lai saknes/īpašie punkti būtu redzami.
2) Divu līkņu krustpunkts:
Uzzīmējiet funkcijas [f(x)] un [g(x)] diapazonā [a, b] tajā pašā grafikā. Parādiet tos dažādās krāsās, pievienojiet leģendu. Pielāgojiet ass atstarpi, lai es varētu aptuveni redzēt, kur atrodas krustošanās punkti.
3) Vizuālā + skaitliskā pārbaude:
Uzzīmējiet [f(x)] UN izdrukājiet grafikā 3 parauga punktu faktiskās f vērtības (x=[vērtības]). Tāpēc es varu salīdzināt diagrammu ar skaitliskām vērtībām. Vienkārši dodiet kodu.
4) Datu histogramma:
Uzrakstiet kodu, kas attēlo šāda datu saraksta histogrammu: [dati]. Izvēlieties atbilstošu diapazonu (tvertņu) skaitu, marķējiet asis. Izdrukājiet arī vidējo un standarta novirzi. Es palaidīšu kodu.
Vāja uzvedne / spēcīga uzvedne
Vāji: "Atzīmējiet funkciju 1/(x−2)."
Rezultāts: kods var nepareizi apstrādāt vertikālo asimptotu pie x=2; Diagrammā ir redzama maldinoša vertikāla līnija pie x=2, un funkcijas darbība ir pārprasta.
Strong: "Atzīmējiet funkciju 1/(x−2) diapazonā [−5, 5], bet pareizi parādiet vertikālo asimptotu pie x = 2: robežvērtības pie asimptotes vai attēlojiet tās kā divas atsevišķas daļas. Apzīmējiet asis, atzīmējiet asimptotu ar pārtrauktu līniju."
Rezultāts: asimptote tiek parādīta pareizi, grafiks atspoguļo funkcijas reālo uzvedību.
Biežas kļūdas
- Nepareizs asu diapazons. Diapazons, kas neaptver interesanto funkcijas apgabalu (saknes, virsotnes), aizēno matemātiku.
- Asimptotu ignorēšana. Vertikālās asimptotes tādās funkcijās kā 1/x rada maldinošas līnijas; nepieciešama īpaša apstrāde.
- Iekavās/apzīmējumu kļūda. Tādas atšķirības kā cos(x²) un cos²(x) kodā ir ievadītas nepareizi; Grafikā parādīta cita funkcija.
- Nemarķēti cirvji. Uzzīmētais paliek neskaidrs; Tas ir nopietns trūkums kursa materiālā.
- Neapstiprina diagrammu skaitliski. Ja grafikā ir attēlota nepareiza funkcija, to uztvers tikai punktu aprēķins.
- Maldinošs mērogs. Logaritmiskās/lineārās skalas apjukums rada nepareizu iespaidu.
Uzmanību: tikai tāpēc, ka diagramma "izskatās skaisti", tas nepadara to pareizu. AI var izveidot grafiku, kas ir estētiski pievilcīgs, bet matemātiski nepareizs, piemēram, tas var uzzīmēt nepareizu funkciju, nepareizā diapazonā vai ar izkropļotu asimptotu. Vienmēr salīdziniet grafiku ar zināmajām funkcijas īpašībām un vismaz viena punkta aprēķinu.
Rezumējot
Vizualizācija ir gan izteiksme, gan verifikācijas rīks: vizuāli redzot funkcijas uzvedību, tās saknes un krustojumus, tas ir spēcīgs veids, kā uztvert kļūdas un atrast precīzus skaitliskus sākuma punktus. AI ātri ģenerē Matplotlib kodu; Jūs palaižat kodu, salīdziniet grafiku ar zināmajām funkcijas īpašībām, pārbaudāt asu diapazonu un asimptotes un apstipriniet vismaz vienu punktu skaitliski. Skaists grafiks nav pareizs grafiks; vienmēr salīdziniet ar matemātiku.
Lietojumprogrammas uzdevums
Izvēlieties interesantu funkciju (piemēram, 1/(x−2), kurai ir vertikāla asimptote vai polinoms ar vairākām saknēm). Lieciet AI uzzīmēt grafiku ar 1. un 3. veidni un izdrukāt dažu punktu reālās vērtības. Palaidiet kodu un skatiet grafiku. Salīdziniet grafa pazīmes (saknes, asimptoti, virsotnes) ar zināmo funkcijas matemātiku. Pārbaudiet vismaz vienu punktu manuāli vai ar SymPy. Mainiet asu diapazonu un pārbaudiet, vai parādās slēpta darbība.
kontrolsaraksts
- [ ] Es skaidri norādīju, ko vēlos uzzīmēt ar atstarpēm un etiķetēm.
- [ ] Es palaižu kodu un faktiski redzēju grafiku.
- [ ] Es salīdzināju grafiku ar zināmām funkcijas īpašībām.
- Es pārbaudīju, vai [ ] asu diapazons aptver interesanto reģionu.
- [ ] Es pārbaudīju, vai asimptotes/nenodefinētie punkti ir parādīti pareizi.
- [ ] Esmu apstiprinājis vismaz vienu punktu skaitliski.