Jadual Kandungan
Apakah itu rangkaian saraf
TensorFlow
Contoh Rangkaian Neural 1: Pengecaman Digit Tulisan Tangan
Contoh Rangkaian Neural 2: Penapis Spam
Kesimpulan
Rumah pembangunan bahagian belakang Tutorial Python Contoh rangkaian saraf dalam Python

Contoh rangkaian saraf dalam Python

Jun 10, 2023 pm 01:21 PM
python Contoh rangkaian saraf

Python sentiasa digunakan dan digemari secara meluas kerana sintaksnya yang ringkas, fleksibel serta ekosistem dan perpustakaan yang berkuasa, termasuk dalam bidang seperti pengkomputeran saintifik dan pembelajaran mesin. Rangkaian saraf memainkan peranan penting dalam bidang pembelajaran mesin dan boleh digunakan dalam banyak bidang seperti penglihatan komputer, pemprosesan bahasa semula jadi dan sistem pengesyoran. Artikel ini akan memperkenalkan rangkaian saraf dalam Python dan memberikan beberapa contoh.

Apakah itu rangkaian saraf

Rangkaian saraf ialah model pembelajaran mendalam yang mempunyai ciri-ciri simulasi sistem saraf haiwan. Rangkaian saraf terdiri daripada berbilang neuron Setiap neuron adalah bersamaan dengan fungsi Inputnya adalah keluaran daripada neuron lain, yang diproses oleh fungsi pengaktifan untuk menghasilkan keluaran. Rangkaian saraf menggunakan algoritma perambatan belakang untuk melaraskan berat dan berat sebelah secara berterusan, membolehkan model lebih sesuai dengan data dan membuat ramalan atau klasifikasi.

TensorFlow

TensorFlow ialah rangka kerja pembelajaran mendalam yang popular yang dilancarkan oleh Google untuk membina rangkaian saraf dan algoritma pembelajaran mesin yang lain. Pada asalnya dibangunkan untuk penyelidik Google dalaman, TensorFlow dengan cepat menjadi salah satu rangka kerja pembelajaran mendalam yang paling popular selepas menjadi sumber terbuka.

Dalam TensorFlow, kita boleh menggunakan langkah berikut untuk mencipta rangkaian saraf:

  1. Sediakan set data: Set data mesti dibahagikan kepada dua bahagian: set latihan dan set ujian . Set latihan digunakan untuk melatih model, manakala set ujian digunakan untuk menguji ketepatan model.
  2. Buat rangkaian saraf: Anda boleh menggunakan Python untuk menulis dan melaksanakan rangkaian saraf. Model rangkaian saraf boleh dibina menggunakan API TensorFlow.
  3. Model kereta api: Latih model rangkaian saraf untuk meramalkan output pada data baharu. Ini boleh dilakukan dengan menggunakan algoritma penurunan kecerunan stokastik dan melakukan perambatan belakang, mengemas kini berat dan berat sebelah model secara berterusan.
  4. Uji model: Uji model menggunakan set ujian untuk menentukan ketepatannya. Metrik yang berbeza boleh digunakan untuk menilai prestasi model, seperti ketepatan, ingat semula dan skor F1.

Kini, kami akan memperkenalkan dua contoh rangkaian saraf yang dilaksanakan menggunakan TensorFlow.

Contoh Rangkaian Neural 1: Pengecaman Digit Tulisan Tangan

Pengecaman digit tulisan tangan ialah isu penting dalam bidang penglihatan komputer, dan rangkaian saraf telah mencapai keputusan yang baik dalam isu ini. Dalam TensorFlow, anda boleh melatih rangkaian saraf menggunakan set data MNIST, yang mengandungi 60,000 imej skala kelabu 28x28 dan label yang sepadan.

Pertama, kita perlu memasang perpustakaan TensorFlow dan NumPy. Berikut ialah kod lengkap untuk pengecaman digit tulisan tangan:

import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data

mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)

#创建模型
x = tf.placeholder(tf.float32, [None, 784])
W = tf.Variable(tf.zeros([784, 10]))
b = tf.Variable(tf.zeros([10]))
y = tf.nn.softmax(tf.matmul(x, W) + b)

#定义损失函数和优化器
y_actual = tf.placeholder(tf.float32, [None, 10])
loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(labels=y_actual, logits=y))
train_step = tf.train.GradientDescentOptimizer(0.01).minimize(loss)

#初始化变量
init = tf.global_variables_initializer()

#训练模型
sess = tf.Session()
sess.run(init)
for i in range(1000):
    batch_xs, batch_ys = mnist.train.next_batch(100)
    sess.run(train_step, feed_dict={x: batch_xs, y_actual: batch_ys})

#评估模型
correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_actual,1))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))
print(sess.run(accuracy, feed_dict={x: mnist.test.images, y_actual: mnist.test.labels}))
Salin selepas log masuk

Dalam contoh ini, kami mula-mula menyediakan set data MNIST, dan kemudian mencipta model rangkaian saraf ringkas yang mengandungi 784 input dan 10 output. Seterusnya, kami mentakrifkan fungsi kehilangan dan pengoptimum serta memasukkan data latihan ke dalam model untuk latihan. Akhir sekali, kami melakukan penilaian ujian ke atas data ujian dan memperoleh ketepatan 92.3%.

Contoh Rangkaian Neural 2: Penapis Spam

Hampir semua orang menggunakan sistem mel sekarang, tetapi semua orang menghadapi masalah spam. Penapis spam ialah program yang menyemak sama ada e-mel adalah spam. Mari lihat cara menggunakan rangkaian saraf untuk membina penapis spam.

Pertama, kami perlu menyediakan set data spam, termasuk e-mel yang telah ditandakan sebagai spam dan bukan spam. Sila ambil perhatian bahawa apabila membina penapis spam, akan terdapat dua kategori mesej: bukan spam dan spam.

Berikut ialah kod lengkap penapis spam:

import numpy as np
import pandas as pd
import tensorflow as tf
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

#读取数据集
data = pd.read_csv('spam.csv')
data = data.drop(['Unnamed: 2', 'Unnamed: 3', 'Unnamed: 4'], axis=1)

#转换标签
data['v1'] = data['v1'].map({'ham': 0, 'spam': 1})

#划分数据集
X_train, X_test, y_train, y_test = train_test_split(data['v2'], data['v1'], test_size=0.33, random_state=42)

#创建神经网络模型
max_words = 1000
tokenize = tf.keras.preprocessing.text.Tokenizer(num_words=max_words, char_level=False)
tokenize.fit_on_texts(X_train)

x_train = tokenize.texts_to_matrix(X_train)
x_test = tokenize.texts_to_matrix(X_test)

model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Dense(512, input_shape=(max_words,), activation='relu'))
model.add(tf.keras.layers.Dropout(0.5))
model.add(tf.keras.layers.Dense(256, activation='sigmoid'))
model.add(tf.keras.layers.Dropout(0.5))
model.add(tf.keras.layers.Dense(1, activation='sigmoid'))

model.compile(loss='binary_crossentropy',
              optimizer='adam',
              metrics=['accuracy'])

#训练模型
model.fit(x_train, y_train,
          batch_size=32,
          epochs=5,
          validation_data=(x_test, y_test))

#评估模型
y_predict = model.predict(x_test)
print("Accuracy:", accuracy_score(y_test, y_predict.round()))
Salin selepas log masuk

Dalam contoh ini, kami menggunakan kaedah train_test_split() sklearn untuk membahagikan set data, dan kemudian menggunakan alat prapemprosesan Teks perpustakaan Keras menukar set data kepada matriks (pengekodan satu panas). Seterusnya, kami menggunakan Sequential untuk mengisytiharkan neuron dan menetapkan parameternya. Akhir sekali, kami menggunakan model terlatih untuk meramal data ujian dan menilainya untuk mendapatkan ketepatan 98.02%.

Kesimpulan

Rangkaian saraf dalam Python ialah teknologi berkuasa yang boleh digunakan dalam pelbagai aplikasi seperti pengecaman imej, penapis spam, dsb. Menggunakan TensorFlow, kami boleh mencipta, melatih dan menguji model rangkaian saraf dengan mudah dan memperoleh hasil yang memuaskan. Apabila permintaan orang ramai untuk pembelajaran mesin semakin meningkat, teknologi rangkaian saraf akan menjadi alat yang lebih penting dan lebih meluas digunakan dalam senario aplikasi masa hadapan.

Atas ialah kandungan terperinci Contoh rangkaian saraf dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

PHP dan Python: Contoh dan perbandingan kod PHP dan Python: Contoh dan perbandingan kod Apr 15, 2025 am 12:07 AM

PHP dan Python mempunyai kelebihan dan kekurangan mereka sendiri, dan pilihannya bergantung kepada keperluan projek dan keutamaan peribadi. 1.PHP sesuai untuk pembangunan pesat dan penyelenggaraan aplikasi web berskala besar. 2. Python menguasai bidang sains data dan pembelajaran mesin.

Python vs JavaScript: Komuniti, Perpustakaan, dan Sumber Python vs JavaScript: Komuniti, Perpustakaan, dan Sumber Apr 15, 2025 am 12:16 AM

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Penjelasan terperinci mengenai Prinsip Docker Penjelasan terperinci mengenai Prinsip Docker Apr 14, 2025 pm 11:57 PM

Docker menggunakan ciri -ciri kernel Linux untuk menyediakan persekitaran berjalan yang cekap dan terpencil. Prinsip kerjanya adalah seperti berikut: 1. Cermin digunakan sebagai templat baca sahaja, yang mengandungi semua yang anda perlukan untuk menjalankan aplikasi; 2. Sistem Fail Kesatuan (Unionfs) menyusun pelbagai sistem fail, hanya menyimpan perbezaan, menjimatkan ruang dan mempercepatkan; 3. Daemon menguruskan cermin dan bekas, dan pelanggan menggunakannya untuk interaksi; 4. Ruang nama dan cgroups melaksanakan pengasingan kontena dan batasan sumber; 5. Pelbagai mod rangkaian menyokong interkoneksi kontena. Hanya dengan memahami konsep -konsep teras ini, anda boleh menggunakan Docker dengan lebih baik.

Cara menjalankan program di terminal vscode Cara menjalankan program di terminal vscode Apr 15, 2025 pm 06:42 PM

Dalam kod VS, anda boleh menjalankan program di terminal melalui langkah -langkah berikut: Sediakan kod dan buka terminal bersepadu untuk memastikan bahawa direktori kod selaras dengan direktori kerja terminal. Pilih arahan Run mengikut bahasa pengaturcaraan (seperti python python your_file_name.py) untuk memeriksa sama ada ia berjalan dengan jayanya dan menyelesaikan kesilapan. Gunakan debugger untuk meningkatkan kecekapan debug.

Python: Automasi, skrip, dan pengurusan tugas Python: Automasi, skrip, dan pengurusan tugas Apr 16, 2025 am 12:14 AM

Python cemerlang dalam automasi, skrip, dan pengurusan tugas. 1) Automasi: Sandaran fail direalisasikan melalui perpustakaan standard seperti OS dan Shutil. 2) Penulisan Skrip: Gunakan Perpustakaan Psutil untuk memantau sumber sistem. 3) Pengurusan Tugas: Gunakan perpustakaan jadual untuk menjadualkan tugas. Kemudahan penggunaan Python dan sokongan perpustakaan yang kaya menjadikannya alat pilihan di kawasan ini.

Adakah sambungan vscode berniat jahat? Adakah sambungan vscode berniat jahat? Apr 15, 2025 pm 07:57 PM

Sambungan kod VS menimbulkan risiko yang berniat jahat, seperti menyembunyikan kod jahat, mengeksploitasi kelemahan, dan melancap sebagai sambungan yang sah. Kaedah untuk mengenal pasti sambungan yang berniat jahat termasuk: memeriksa penerbit, membaca komen, memeriksa kod, dan memasang dengan berhati -hati. Langkah -langkah keselamatan juga termasuk: kesedaran keselamatan, tabiat yang baik, kemas kini tetap dan perisian antivirus.

Cara Memasang Nginx di CentOs Cara Memasang Nginx di CentOs Apr 14, 2025 pm 08:06 PM

CentOS Memasang Nginx memerlukan mengikuti langkah-langkah berikut: memasang kebergantungan seperti alat pembangunan, pcre-devel, dan openssl-devel. Muat turun Pakej Kod Sumber Nginx, unzip dan menyusun dan memasangnya, dan tentukan laluan pemasangan sebagai/usr/local/nginx. Buat pengguna Nginx dan kumpulan pengguna dan tetapkan kebenaran. Ubah suai fail konfigurasi nginx.conf, dan konfigurasikan port pendengaran dan nama domain/alamat IP. Mulakan perkhidmatan Nginx. Kesalahan biasa perlu diberi perhatian, seperti isu ketergantungan, konflik pelabuhan, dan kesilapan fail konfigurasi. Pengoptimuman prestasi perlu diselaraskan mengikut keadaan tertentu, seperti menghidupkan cache dan menyesuaikan bilangan proses pekerja.

Apa itu vscode untuk apa vscode? Apa itu vscode untuk apa vscode? Apr 15, 2025 pm 06:45 PM

VS Kod adalah nama penuh Visual Studio Code, yang merupakan editor kod dan persekitaran pembangunan yang dibangunkan oleh Microsoft. Ia menyokong pelbagai bahasa pengaturcaraan dan menyediakan penonjolan sintaks, penyiapan automatik kod, coretan kod dan arahan pintar untuk meningkatkan kecekapan pembangunan. Melalui ekosistem lanjutan yang kaya, pengguna boleh menambah sambungan kepada keperluan dan bahasa tertentu, seperti debuggers, alat pemformatan kod, dan integrasi Git. VS Kod juga termasuk debugger intuitif yang membantu dengan cepat mencari dan menyelesaikan pepijat dalam kod anda.

See all articles