Qazanclar:
- Matplotlib kodunu süni intellektə çap etməklə və kodu işlətməklə funksiyaları, kəsişmələri və məlumatları vizuallaşdırmaq və məqsəd üçün uyğun qrafik növünü seçmək bacarığı
- Qrafikin funksiyanın məlum xassələri, ox diapazonu, asimptotlar və ən azı bir nöqtə hesablanması ilə müqayisə edərək riyaziyyatı düzgün əks etdirdiyini yoxlamaq bacarığı.
- Doğrulama vasitəsi kimi vizuallaşdırmadan istifadə etməklə kökləri və kəsişmələri vizual olaraq tapmaq və ədədi üsullar üçün dəqiq başlanğıc nöqtələri təmin etmək bacarığı
Qrafik mindən çox tənliyi izah edir. Funksiyanın necə davrandığını, onun köklərinin harada olduğunu, iki əyrinin harada kəsişdiyini və ya verilənlərin necə paylandığını vizual olaraq görmək riyaziyyatı başa düşmək və yoxlamaq üçün ən güclü yollardan biridir. Riyazi vizuallaşdırma riyazi obyektlərin (funksiyalar, verilənlər, həndəsi fiqurlar) qrafika ilə vizual təsviridir. Python-da bunun üçün standart alət Matplotlib kitabxanasıdır. Bu bölmədə siz vizuallaşdırma kodunu yaradan köməkçi kimi süni intellektdən necə istifadə edəcəyinizi və daha da əhəmiyyətlisi, qrafikin riyaziyyatı düzgün əks etdirdiyini yoxlamağı öyrənəcəksiniz.
Vizuallaşdırma da yoxlama vasitəsidir. Əvvəlki bölmədə gördük: tənliyin kökünü tapmaqdan əvvəl onun qrafiki rəqəmsal olaraq kökün harada olduğunu göstərir və dəqiq başlanğıc təxmini verir. İnteqral hesablamadan əvvəl funksiyanın qrafikinə baxmaq nəticənin işarəsinin (müsbət/mənfi sahə) mənalı olub olmadığını anlamağa imkan verir. Qrafik "bu nəticənin mənası varmı?" Sualın vizual cavabıdır.
Riyaziyyatda vizuallaşdırmanın əsas istifadəsi
- Funksiya davranışı: artan/azalan bölgələr, maksimumlar/minimumlar, f(x)-in asimptotları.
- Köklərin və kəsişmələrin tapılması: əyrinin x oxunu (kökləri) kəsdiyi yerlər, iki əyrinin kəsişməsi.
- Sahə/inteqral intuisiya: Əyri altındakı sahənin vizual təsviri.
- Məlumatların paylanması: Histoqram, səpələnmə qrafiki, qutu qrafası.
- Həndəsə: Üçbucaqlar, dairələr, çevrilmələr.
- Kursun materialı: Şagirdlərə bir anlayışı əyani şəkildə izah etmək.
Addım-addım: AI ilə dəqiq qrafiklərin istehsalı
1. Nəyi göstərmək istədiyinizi aydınlaşdırın. "Günahı (x) çək" kifayət deyil; "Sin(x)-i [−2π, 2π] diapazonunda, oxları işarələnmiş və tor ilə tərtib etmək" daha yaxşıdır.
2. AI-yə Matplotlib kodunu yazın. Çıxış şəklini deyil, kodu soruşun; Kodu işlədirsiniz və qrafiki görürsünüz.
3. Qrafiki riyaziyyatla müqayisə edin. Qrafik funksiyanın məlum xassələrini göstərirmi? sin(x) −1 və 1 arasında salınmalıdır; parabola simmetrik olmalıdır; eksponensial funksiya sürətlə artmalıdır. Diaqram bunları göstərmirsə, kodda xəta var.
4. Ox diapazonunu yoxlayın. Yanlış boşluq mühüm kök və ya davranışı gizlədə bilər. Onun funksiyanın maraqlı bölgəsini əhatə etdiyinə əmin olun.
5. Etiketi və miqyasını yoxlayın. Baltalar etiketlənibmi? Şkala (xətti/loq) düzgündürmü? Yanlış miqyas yanlış təəssürat yaradır.
6. Rəqəmli nöqtə ilə təsdiqləyin. Qrafikdə f(2)≈3 göstərilirsə, bunu hesablama ilə yoxlayın. Qrafik yalan ola bilər (səhv funksiya çəkilibsə).
İpucu: Qrafik çəkdikdən sonra onun üzərində ən azı bir nöqtəni müstəqil hesablayaraq yoxlayın. Qrafikdə x=0-da y=1 göstərilirsə, f(0)-ı əl ilə hesablayın. Əgər onlar uyğun gəlirsə, yəqin ki, düzgün funksiya çəkilib; Uyğun gəlmirsə, AI səhv ifadəni kodlamış ola bilər.
Qətnamə və seçmə: qrafikin olduğu yer
Matplotlib süjeti əslində davamlı əyri deyil; Sonlu sayda nöqtələrdə funksiyanı hesablayır və bu nöqtələri düz xətlərlə əlaqələndirir. Bu nöqtələrin sayına seçmə həlli deyilir. Çözünürlük aşağı olarsa (məsələn, NumPy-də linspace ilə yaradılan yalnız 10 nöqtə), sürətli salınan funksiya (məsələn, sin(50x)) qrafikdə tamamilə yanlış görünə bilər - zirvələrin və çökəkliklərin əksəriyyəti iki seçmə nöqtəsi arasında düşür və yox olur. Bu siqnal emalında aliasing adlanır. Süni intellekt bəzən az sayda xal yaradan kod yazır; Nəticə maye, lakin yanıltıcı bir qrafikdir.
Antidot sadədir: tez dəyişən funksiyalarda seçmə nöqtələrinin sayını yüksək tutun (məsələn, np.linspace(a, b, 1000)). Həmçinin, əgər qrafikin gözləmədiyiniz bucaqlı, dişli və ya qeyri-müntəzəm görünüşü varsa, bu, çox vaxt funksiyanın faktiki davranışının deyil, aşağı ayırdetmə qabiliyyətinin yan təsiridir; Nöqtələrin sayını artırın və qrafikin dəyişdiyini yoxlayın. Qrafik nöqtələrin sayı ilə əhəmiyyətli dərəcədə dəyişirsə, siz hələ funksiyanın həqiqi formasını görmürsünüz.
Diqqət: Aşağı ayırdetmə qrafiki sürətli salınan funksiyanı tamamilə təhrif edə bilər və ya hətta mövcud olmayan nümunəyə uyğun gələ bilər. Kritik qrafik çəkərkən qəsdən çox sayda seçmə nöqtəsi seçin və nöqtələrin sayını artırdıqca qrafikin sabit qaldığını yoxlayın.
Diaqram növünün seçimi
Məqsəd
uyğun qrafik
Matplotlib funksiyası
Funksiya əyrisi
xətt diaqramı
süjet()
məlumat nöqtələri
Dağılma süjeti
səpmək()
paylanması
histoqram
tarix()
İki dəyişən əlaqə
Dağılma + əyri
plot() + scatter()
Kateqorik müqayisə
bar diaqramı
bar()
Səth/3D
3D səth
plot_surface()
üç mini qutu
Məsələn 1 - Gizli kök. Bir tələbə çoxhədlinin köklərini görmək üçün qrafiki tərtib etdi, lakin YZ oxu diapazonunu seçdi [−1, 1]; halbuki köklər x=3 ətrafında idi və qrafikdə ümumiyyətlə görünmürdü. Tələbə “bu funksiyanın kökü yoxdurmu?” deyə soruşur. O, təəccübləndi, sonra məsafəni [−5, 5] olaraq dəyişdirəndə köklər göründü. Dərs: səhv aralıq riyaziyyatı gizlədir.
2-ci hal - Yanlış funksiya. Müəllim süni intellektlə "cos(x²)" çəkmək istədi, lakin kod səhvən "cos(x)²" (yəni cos²(x)) yazdı. İki funksiya çox fərqlidir. Müəllim qrafiki x=√π-də gözlənilən qiymətlə müqayisə etdikdə onun uyğun gəlmədiyini gördü və xətanı tutdu. Mötərizənin yeri hər şeyi dəyişir.
3-cü hal – Vizual yoxlama kök saldı. Mühəndis əvvəlcə funksiyanın qrafikini çəkdi və onun x oxunu iki yerdə (~1,2 və ~4,7) kəsdiyini gördü. Bu vizual məlumatla rəqəmsal kök axtaran şəxsə dəqiq ilkin təxminlər verdi və hər iki kökü dəqiq tapdı. Qrafik olmadan o, yalnız kökə yaxınlaşa bilərdi. 5 dəqiqə ərzində iki kök.
Dörd kopyalana bilən şablon
1) Funksiya diaqramı:
[a, b] diapazonunda [f(x)] funksiyasının qrafikini çəkən Matplotlib kodunu yazın. NumPy ilə x massivi yaradın, oxu etiketləyin, şəbəkə əlavə edin, başlıq qoyun. kodu işlədəcəm; təsvirin müəyyən edilməsi. Köklərin/xüsusi nöqtələrin görünməsi üçün uyğun məsafəni seçin.
2) İki əyrinin kəsişməsi:
Eyni qrafikdə [a, b] diapazonunda [f(x)] və [g(x)] funksiyalarını çəkin. Onları müxtəlif rənglərdə göstərin, əfsanə əlavə edin. Oxlar arasındakı məsafəni tənzimləyin ki, kəsişmə nöqtələrinin harada olduğunu təxminən görə bilim.
3) Vizual + rəqəmsal yoxlama:
[f(x)] xəttini çəkin və qrafikdə 3 nümunə nöqtəsinin (x=[dəyərlər]) faktiki f qiymətlərini çap edin. Beləliklə, qrafiki ədədi dəyərlərlə müqayisə edə bilərəm. Sadəcə kodu verin.
4) Məlumat histoqramı:
Aşağıdakı məlumat siyahısının histoqramını tərtib edən kodu yazın: [data]. Müvafiq sayda diapazonları (zibil qutularını) seçin, oxları etiketləyin. Həmçinin orta və standart sapmanı çap edin. kodu işlədəcəm.
Zəif məlumat / Güclü göstəriş
Zəif: "1/(x−2) funksiyasının qrafikini çəkin."
Nəticə: Kod x=2-də şaquli asimptotla düzgün işləməyə bilər; Qrafik x=2-də yanıltıcı şaquli xətt göstərir və funksiyanın davranışı səhv başa düşülür.
Güclü: "1/(x−2) funksiyasını [−5, 5] diapazonunda qurun, lakin şaquli asimptotu x=2-də düzgün göstərin: asimptotun yaxınlığındakı dəyərləri məhdudlaşdırın və ya onları iki ayrı hissə kimi təsvir edin. Oxları etiketləyin, asimptotunu kəsik xətt ilə qeyd edin."
Nəticə: Asimptot düzgün göstərilir, qrafik funksiyanın real davranışını əks etdirir.
Ümumi səhvlər
- Yanlış ox diapazonu. Funksiyanın maraqlı bölgəsini əhatə etməyən diapazon (köklər, təpələr) riyaziyyatı gizlədir.
- Asimptotlara məhəl qoymamaq. 1/x kimi funksiyalarda şaquli asimptotlar yanlış xətlərə səbəb olur; xüsusi rəftar tələb olunur.
- Mötərizələr/notasiya xətası. cos(x²) və cos²(x) kimi fərqlər koda səhv daxil edilmişdir; Qrafik başqa bir funksiyanı göstərir.
- Etiketsiz baltalar. Nə çəkildiyi bəlli deyil; Bu, kurs materialında ciddi çatışmazlıqdır.
- Diaqramı rəqəmlə təsdiqləmir. Qrafik səhv funksiyanı tərtib edərsə, yalnız nöqtə hesablaması onu tutacaq.
- Yanıltıcı miqyas. Loqarifmik/xətti miqyas qarışıqlığı yanlış təəssürat yaradır.
Diqqət: Qrafikin "gözəl görünməsi" onu düzgün etmir. Süni intellekt estetik baxımdan xoş, lakin riyazi cəhətdən düzgün olmayan bir qrafik yarada bilər - məsələn, o, səhv funksiyanı, yanlış diapazonda və ya təhrif olunmuş asimptotla çəkə bilər. Həmişə qrafiki onun tərtib etdiyi funksiyanın məlum xüsusiyyətləri ilə və ən azı bir nöqtə hesablaması ilə müqayisə edin.
Xülasə
Vizuallaşdırma həm ifadə, həm də yoxlama vasitəsidir: funksiyanın davranışını, onun köklərini və kəsişmələrini vizual olaraq görmək, səhvləri tutmaq və dəqiq ədədi başlanğıc nöqtələrini tapmaq üçün güclü bir yoldur. AI tez bir zamanda Matplotlib kodunu yaradır; Siz kodu işlədirsiniz, qrafiki funksiyanın məlum xassələri ilə müqayisə edirsiniz, ox diapazonunu və asimptotları yoxlayır və ən azı bir nöqtəni ədədi olaraq təsdiqləyirsiniz. Gözəl qrafik düzgün qrafik deyil; həmişə riyaziyyatla müqayisə edin.
Tətbiq tapşırığı
Maraqlı funksiya seçin (məsələn, şaquli asimptotlu 1/(x−2) və ya bir neçə köklü çoxhədli). Süni intellektdən 1-ci və 3-cü şablonlarla qrafiki çəkməsini və bir neçə nöqtənin real dəyərlərini çap etməsini istəyin. Kodu işlədin və qrafikə baxın. Qrafikdəki xüsusiyyətləri (köklər, asimptotlar, təpələr) funksiyanın məlum riyaziyyatı ilə müqayisə edin. Ən azı bir nöqtəni əl ilə və ya SymPy ilə yoxlayın. Ox diapazonunu dəyişdirin və hər hansı bir gizli davranışın ortaya çıxıb-çıxmadığına baxın.
yoxlama siyahısı
- [ ] Mən nə çəkmək istədiyimi boşluq və etiketlərlə açıq şəkildə bildirdim.
- [ ] Mən kodu işlədim və əslində qrafiki gördüm.
- [ ] Qrafiki funksiyanın məlum xassələri ilə müqayisə etdim.
- [ ] ox diapazonunun maraqlı bölgəni əhatə etdiyini təsdiqlədim.
- [ ] Asimptot/müəyyən edilməmiş nöqtələrin düzgün göstərildiyini yoxladım.
- [ ] Ən azı bir məqamı rəqəmlə təsdiqləmişəm.