Rumah >pembangunan bahagian belakang >Tutorial Python >Neuron Buatan: Jantung AI
Penemuan terbaru dalam model bahasa besar (LLM) telah mencetuskan minat yang ketara dalam bidang kecerdasan buatan (AI). Lonjakan populariti ini telah mendorong ramai untuk meneruskan kerjaya dalam sektor yang berkembang pesat ini. Walau bagaimanapun, elemen asas penting yang sering diabaikan ialah neuron buatan, batuan asas rangkaian saraf tiruan. Pemahaman menyeluruh tentang neuron buatan adalah penting untuk memahami selok-belok rangkaian ini. Tutorial ini akan menerangkan kefungsian neuron buatan, juga dikenali sebagai regresi logistik. Walaupun ringkas, neuron tiruan terbukti sangat berkesan dalam menyelesaikan pelbagai masalah klasifikasi, termasuk pengesanan spam, ramalan diabetes dan penilaian risiko kredit.
Untuk menghargai teknik ini sepenuhnya, memahami klasifikasi model pembelajaran mesin adalah penting. Pembelajaran mesin, subset AI, memfokuskan pada pembangunan sistem yang mampu pembelajaran automatik dan penambahbaikan daripada data. Model pembelajaran mesin secara amnya dikategorikan kepada model diselia, tanpa seliaan dan pembelajaran pengukuhan.
Model diselia belajar daripada contoh berlabel. Sebaliknya, teknik tanpa pengawasan mengenal pasti corak dalam data tanpa pengetahuan awal tentang corak tersebut. Pembelajaran pengukuhan model belajar melalui percubaan dan kesilapan, menerima maklum balas dalam bentuk ganjaran.
Regression logistik, sebagai pelaksanaan neuron buatan, berada di bawah kategori pembelajaran diselia. Model yang diselia dibahagikan lagi kepada sistem klasifikasi dan regresi.
Model pengelasan bertujuan untuk mengenal pasti kelas yang betul untuk input yang diberikan. Sebagai contoh, sistem mungkin menganalisis data kewangan seseorang untuk menentukan kelayakan pinjaman. Contoh lain melibatkan pengelasan haiwan berdasarkan ciri-cirinya (mamalia, reptilia, burung, dll.).
Model regresi, sebaliknya, meramalkan nilai berangka berdasarkan data input. Meramalkan kadar inflasi menggunakan data kewangan ialah aplikasi biasa dalam kewangan.
Walaupun namanya, regresi logistik ialah teknik pengelasan. Pengelasan boleh menjadi binari (dua kelas, cth., ya/tidak) atau multiclass (pelbagai kelas, cth., bahagian pertuturan).
Untuk membezakan regresi logistik daripada regresi linear, mari kita pertimbangkan perwakilan visual menggunakan dua input (untuk kesederhanaan). Dalam regresi linear, matlamatnya adalah untuk menyesuaikan satu garisan kepada satu set titik, menangkap arah aliran keseluruhan.
Klasifikasi model pembelajaran mesin.
Garis ini kemudiannya digunakan untuk meramalkan satu nilai paksi berdasarkan yang lain (satah dalam ruang 3D, satah hiper dalam dimensi yang lebih tinggi).
Regresi logistik, walau bagaimanapun, bertujuan untuk menghasilkan keputusan binari (ya/tidak, dsb.). Garis lurus tidak mencukupi untuk tujuan ini. Pertimbangkan untuk menentukan kelayakan pinjaman berdasarkan gaji. Memasang talian pada data ini adalah bermasalah.
Contoh regresi linear.
Lengkung berbentuk "S", walau bagaimanapun, memberikan penyelesaian yang lebih berkesan. Titik yang lebih dekat dengan bahagian atas lengkung menunjukkan "ya", manakala yang lebih dekat dengan bahagian bawah menunjukkan "tidak." Memperkenalkan bukan lineariti mengubah garis menjadi lengkung ini.
Ilustrasi ketidakcukupan regresi linear untuk pengelasan.
fungsi logistik memperkenalkan bukan lineariti ini. Formulanya ialah:
Fungsi ini mempamerkan beberapa sifat utama:
Demonstrasi kesesuaian lengkung berbentuk “S” untuk pengelasan.
Perwakilan grafik fungsi logistik.
Kebolehbezaan membolehkan pengiraan cerun pada mana-mana titik pada lengkung, penting untuk melaraskan model semasa latihan.
Perwakilan grafik garis tangen ke satu titik dalam fungsi logistik.
Mari kita menggambarkan regresi logistik dengan set data kelulusan pinjaman. Set data mengandungi ciri seperti gaji dan jumlah pinjaman serta label yang menunjukkan kelulusan (1) atau penolakan (0). Kami akan menggunakan sebahagian untuk latihan dan satu lagi untuk ujian.
Set Data.
Model mengira jumlah wajaran input (gaji dan jumlah pinjaman) ditambah dengan terma berat sebelah (Z). Berat awal dan berat sebelah adalah rawak dan dilaraskan semasa latihan.
Contoh pengiraan nilai Z.
Fungsi sigmoid kemudian menukarkan Z kepada kebarangkalian (0-1). Nilai ≥ 0.5 dikelaskan sebagai "ya," dan < 0.5 sebagai "tidak." Ralat dikira dengan membandingkan ramalan dengan nilai sebenar.
Proses ini serupa dengan neuron biologi: input (dendrit), sambungan berwajaran, penjumlahan, ambang (sigmoid) dan output (akson).
Perwakilan grafik aliran pengiraan regresi logistik.
Neuron
Secara formal, diberikan vektor input x, vektor berat w dan berat sebelah b:
Z = wTx b
Fungsi sigmoid kemudian menghasilkan output.
Konvensyen notasi.
Pendaraban vektor.
Aplikasi fungsi sigmoid kepada Z.
Pelaksanaan Python ditunjukkan di bawah, menggambarkan pengiraan dan pengiraan ralat. Proses latihan (pelarasan berat) akan diliputi dalam tutorial seterusnya.
<code class="language-python">from math import exp def sigmoide(x): return 1 / (1 + exp(-x)) # Input X[0] Wage, x[1] Loan X = [[3,10],[1.5,11.8],[5.5,20.0],[3.5,15.2],[3.1,14.5], [7.6,15.5],[1.5,3.5],[6.9,8.5],[8.6,2.0],[7.66,3.5]] Y = [0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1, 1] m = len(X) w=[0.2,0.1] b=0.1 for j in range(m): z = X[j][0]*w[0]+X[j][1]*w[1]+b yhat = sigmoide(z) # Calculates error erro = yhat-Y[j] print(" Wage:{0:5.2f} Wage:{1:5.2f} Expected value:{2} ". format( X[j][0]*1000, X[j][1], Y[j])) print(" z:{0:2.3f} yhat:{1:2.3f} error:{2:2.3f}\n ".format( z, yhat, erro))</code>
Contoh pengiraan dalam regresi logistik.
Output dikeluarkan oleh program.
Ini menyimpulkan tutorial ini. Proses latihan akan diterangkan dalam ansuran akan datang.
Atas ialah kandungan terperinci Neuron Buatan: Jantung AI. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!