cari
RumahPeranti teknologiAIKaedah dan teknik untuk menghasilkan teks berterusan menggunakan LSTM

Kaedah dan teknik untuk menghasilkan teks berterusan menggunakan LSTM

Jan 23, 2024 am 09:00 AM
pembelajaran mesinrangkaian saraf tiruan

Kaedah dan teknik untuk menghasilkan teks berterusan menggunakan LSTM

LSTM ialah varian rangkaian saraf berulang yang digunakan untuk menyelesaikan masalah pergantungan jangka panjang. Idea teras adalah untuk mengawal aliran input, output dan keadaan dalaman melalui satu siri unit berpagar, dengan itu berkesan mengelakkan masalah kecerunan yang hilang atau meletup dalam RNN. Mekanisme gating ini membolehkan LSTM mengingati maklumat untuk masa yang lama dan secara selektif melupakan atau mengemas kini keadaan mengikut keperluan, dengan itu memproses data jujukan panjang dengan lebih baik.

Prinsip kerja LSTM adalah untuk mengawal aliran dan pemeliharaan maklumat melalui tiga unit kawalan get, yang merangkumi get lupa, get input dan gate output.

Forgetting Gate: Mengawal sama ada keadaan sebelumnya perlu dilupakan, membenarkan model menyimpan maklumat keadaan sebelumnya secara selektif.

Ger masuk: Mengawal perkadaran maklumat input baharu dalam keadaan semasa, membenarkan model menambah maklumat baharu secara selektif.

Pintu keluaran: Mengawal output maklumat keadaan semasa, membenarkan model mengeluarkan maklumat keadaan secara selektif.

Sebagai contoh, katakan kita ingin menggunakan LSTM untuk menjana sekeping teks tentang cuaca. Pertama, kita perlu menukar teks kepada nombor, yang boleh kita lakukan dengan memetakan setiap perkataan kepada integer yang unik. Kami kemudiannya boleh memasukkan integer ini ke dalam LSTM dan melatih model untuk meramalkan taburan kebarangkalian perkataan seterusnya. Akhir sekali, kita boleh menggunakan taburan kebarangkalian ini untuk menjana teks berterusan.

Berikut ialah contoh kod untuk melaksanakan LSTM bagi menjana teks:

import numpy as np
import sys
import io
from keras.models import Sequential
from keras.layers import Dense, LSTM, Dropout
from keras.callbacks import ModelCheckpoint
from keras.utils import np_utils

# 读取文本文件并将其转换为整数
with io.open('text.txt', encoding='utf-8') as f:
    text = f.read()
chars =list(set(text))
char_to_int = dict((c, i) for i, c in enumerate(chars))

# 将文本分割成固定长度的序列
seq_length = 100
dataX = []
dataY = []
for i in range(0, len(text) - seq_length, 1):
    seq_in = text[i:i + seq_length]
    seq_out = text[i + seq_length]
    dataX.append([char_to_int[char] for char in seq_in])
    dataY.append(char_to_int[seq_out])
n_patterns = len(dataX)

# 将数据转换为适合LSTM的格式
X = np.reshape(dataX, (n_patterns, seq_length, 1))
X = X / float(len(chars))
y = np_utils.to_categorical(dataY)

# 定义LSTM模型
model = Sequential()
model.add(LSTM(256, input_shape=(X.shape[1], X.shape[2]), return_sequences=True))
model.add(Dropout(0.2))
model.add(LSTM(256))
model.add(Dropout(0.2))
model.add(Dense(y.shape[1], activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam')

# 训练模型
filepath="weights-improvement-{epoch:02d}-{loss:.4f}.hdf5"
checkpoint = ModelCheckpoint(filepath, monitor='loss', verbose=1, save_best_only=True, mode='min')
callbacks_list = [checkpoint]
model.fit(X, y, epochs=20, batch_size=128, callbacks=callbacks_list)

# 使用模型生成文本
int_to_char = dict((i, c) for i, c in enumerate(chars))
start = np.random.randint(0, len(dataX)-1)
pattern = dataX[start]
print("Seed:")
print("\"", ''.join([int_to_char[value] for value in pattern]), "\"")
for i in range(1000):
    x = np.reshape(pattern, (1, len(pattern), 1))
    x = x / float(len(chars))
    prediction = model.predict(x, verbose=0)
    index = np.argmax(prediction)
    result = int_to_char[index]
    seq_in = [int_to_char[value] for value in pattern]
    sys.stdout.write(result)
    pattern.append(index)
    pattern = pattern[1:len(pattern)]

Dalam kod di atas, kami mula-mula membaca fail teks melalui perpustakaan io dan memetakan setiap aksara kepada integer unik. Kami kemudiannya membahagikan teks kepada jujukan dengan panjang 100 dan menukar jujukan ini kepada format yang sesuai untuk LSTM. Seterusnya, kami mentakrifkan model yang mengandungi dua lapisan LSTM dan lapisan bersambung sepenuhnya, menggunakan softmax sebagai fungsi pengaktifan untuk mengira taburan kebarangkalian aksara seterusnya. Akhir sekali, kami menggunakan kaedah muat untuk melatih model dan kaedah ramalan untuk menjana teks berterusan.

Apabila menggunakan model untuk menjana teks, kami mula-mula memilih secara rawak jujukan daripada set data sebagai titik permulaan. Kami kemudian menggunakan model untuk meramalkan taburan kebarangkalian aksara seterusnya dan memilih aksara dengan kebarangkalian tertinggi sebagai aksara seterusnya. Seterusnya, kami menambah aksara itu pada penghujung jujukan dan mengalih keluar aksara pada permulaan jujukan, mengulangi langkah di atas sehingga kami menjana 1000 aksara teks.

Secara amnya, LSTM ialah varian rangkaian saraf berulang yang direka khusus untuk menyelesaikan masalah pergantungan jangka panjang. Dengan menggunakan unit berpagar untuk mengawal aliran input, output dan keadaan dalaman, LSTM dapat mengelakkan masalah kecerunan lenyap atau meletup, membolehkan aplikasi seperti menjana teks berterusan.

Atas ialah kandungan terperinci Kaedah dan teknik untuk menghasilkan teks berterusan menggunakan LSTM. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Artikel ini dikembalikan pada:网易伏羲. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Adakah Model Model ' S 7B Olympiccoder mengalahkan Claude 3.7?Adakah Model Model ' S 7B Olympiccoder mengalahkan Claude 3.7?Apr 23, 2025 am 11:49 AM

Memeluk Olimpikcoder-7B: Model Penaakulan Kod Terbuka Sumber Terbuka yang kuat Perlumbaan untuk membangunkan model bahasa yang tertumpu kepada kod unggul semakin meningkat, dan Hugging Face telah menyertai pertandingan dengan pesaing yang hebat: Olympiccoder-7b, produk

4 ciri Gemini baru yang anda tidak dapat merindui4 ciri Gemini baru yang anda tidak dapat merinduiApr 23, 2025 am 11:48 AM

Berapa banyak daripada anda yang berharap AI dapat melakukan lebih daripada sekadar menjawab soalan? Saya tahu saya ada, dan sejak kebelakangan ini, saya kagum dengan bagaimana ia berubah. AI Chatbots bukan sekadar berbual lagi, mereka sedang membuat, Researchin

Camunda menulis skor baru untuk orkestra ai agentikCamunda menulis skor baru untuk orkestra ai agentikApr 23, 2025 am 11:46 AM

Oleh kerana Smart AI mula diintegrasikan ke dalam semua peringkat platform dan aplikasi perisian perusahaan (kita harus menekankan bahawa terdapat kedua -dua alat teras yang kuat dan beberapa alat simulasi yang kurang dipercayai), kita memerlukan satu set baru keupayaan infrastruktur untuk menguruskan agen -agen ini. Camunda, sebuah syarikat orkestrasi proses yang berpusat di Berlin, Jerman, percaya ia dapat membantu Smart AI memainkan peranannya yang sewajarnya dan selaras dengan matlamat dan peraturan perniagaan yang tepat di tempat kerja digital yang baru. Syarikat ini kini menawarkan keupayaan orkestra pintar yang direka untuk membantu model organisasi, menggunakan dan mengurus ejen AI. Dari perspektif kejuruteraan perisian praktikal, apakah maksudnya? Integrasi proses kepastian dan bukan deterministik Syarikat itu mengatakan yang penting adalah untuk membolehkan pengguna (biasanya saintis data, perisian)

Adakah nilai dalam pengalaman AI perusahaan yang dikendalikan?Adakah nilai dalam pengalaman AI perusahaan yang dikendalikan?Apr 23, 2025 am 11:45 AM

Menghadiri Google Cloud Seterusnya '25, saya berminat untuk melihat bagaimana Google akan membezakan tawaran AInya. Pengumuman baru -baru ini mengenai Agentspace (dibincangkan di sini) dan Suite Pengalaman Pelanggan (dibincangkan di sini) menjanjikan, menekankan perniagaan Valu

Bagaimana untuk mencari model penyembuhan berbilang bahasa terbaik untuk kain anda?Bagaimana untuk mencari model penyembuhan berbilang bahasa terbaik untuk kain anda?Apr 23, 2025 am 11:44 AM

Memilih model penyembuhan berbilang bahasa yang optimum untuk sistem pengambilan semula (RAG) pengambilan anda Di dunia yang saling berkaitan hari ini, membina sistem AI berbilang bahasa yang berkesan adalah yang paling utama. Model penyembuhan berbilang bahasa yang teguh adalah penting untuk Re

Musk: Robotaxis di Austin memerlukan campur tangan setiap 10,000 batuMusk: Robotaxis di Austin memerlukan campur tangan setiap 10,000 batuApr 23, 2025 am 11:42 AM

Pelancaran Austin Robotaxi Tesla: Melihat lebih dekat dengan tuntutan Musk Elon Musk baru-baru ini mengumumkan pelancaran Robotaxi yang akan datang di Tesla di Austin, Texas, pada mulanya mengerahkan armada kecil 10-20 kenderaan untuk alasan keselamatan, dengan rancangan untuk pengembangan pesat. H

AI 'AI 'Apr 23, 2025 am 11:41 AM

Cara kecerdasan buatan digunakan mungkin tidak dijangka. Pada mulanya, ramai di antara kita mungkin berfikir ia digunakan terutamanya untuk tugas kreatif dan teknikal, seperti menulis kod dan membuat kandungan. Walau bagaimanapun, satu tinjauan baru -baru ini yang dilaporkan oleh Harvard Business Review menunjukkan bahawa ini tidak berlaku. Kebanyakan pengguna mencari kecerdasan buatan bukan hanya untuk kerja, tetapi untuk sokongan, organisasi, dan juga persahabatan! Laporan itu mengatakan bahawa kes permohonan AI yang pertama adalah rawatan dan persahabatan. Ini menunjukkan bahawa ketersediaan 24/7 dan keupayaan untuk memberikan nasihat dan maklum balas yang jujur, jujur ​​adalah nilai yang sangat baik. Sebaliknya, tugas pemasaran (seperti menulis blog, mewujudkan jawatan media sosial, atau salinan pengiklanan) yang lebih rendah pada senarai penggunaan popular. Mengapa ini? Mari kita lihat hasil penyelidikan dan bagaimana ia terus menjadi

Syarikat berlumba ke arah pengangkatan ejen AISyarikat berlumba ke arah pengangkatan ejen AIApr 23, 2025 am 11:40 AM

Kebangkitan agen AI mengubah landskap perniagaan. Berbanding dengan revolusi awan, kesan agen AI diramalkan secara eksponen lebih besar, menjanjikan untuk merevolusikan kerja pengetahuan. Keupayaan untuk mensimulasikan keputusan-maki manusia

See all articles

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

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.