Ambiri aife timadziwa majenereta azithunzi a AI ngati Kufalikira Kokhazikika. Zasintha kale makampaniwa ndipo zaphatikizidwa m'miyoyo yathu.
Komabe, zitsanzo za Stable Diffusion ndizochulukirapo kuposa kupanga zithunzi.
Pali madera ambiri omwe tingawagwiritse ntchito.
Mitundu ya Stable Diffusion ndi masamu a masamu. Ndipo, atha kukuthandizani kuti mufufuze kusintha kwa machitidwe pakapita nthawi.
Iwo zachokera kufalitsa ndondomeko mfundo. Chifukwa chake, mutha kuyang'ana zochitika zosiyanasiyana. Mwachitsanzo; kufalitsa kutentha, kusintha kwa mankhwala, ndi kufalitsa zidziwitso m'misika yazachuma.
Ma model awa ndi osinthika kwambiri. Chifukwa chake, mutha kuyembekezera zam'tsogolo za dongosolo kutengera momwe zilili pano.
Kupatula apo, mutha kuwona mfundo zakuthupi kapena zachuma zomwe zimatsogolera. Lingaliro limeneli lakhala lothandiza kwambiri m’madera ambiri. Izi zikuphatikizapo physics, chemistry, ndi zachuma.
Ichi ndichifukwa chake tikufuna kufufuza zambiri. Ndipo, tikufuna kukupatsani phunziro la momwe mungaphunzitsire mitundu iyi ya Stable Diffusion.
Kodi Stable Diffusion Models Anabwera Bwanji?
Izi zinayambira kumapeto kwa zaka za m'ma 19.
Kufufuza kwa masamu pa njira zogawanitsa pazinthu ndipamene mitundu ya Stable Diffusion idayambira. Chimodzi mwazinthu zodziwika bwino za Stable Diffusion ndi Fokker-Planck equation.
Idawonetsedwa koyamba mu 1906. Zitsanzozi zasintha ndipo zasinthidwa nthawi. Chifukwa chake, timawagwiritsa ntchito m'mafakitale osiyanasiyana.
Kodi Logic Pambuyo Pake Ndi Chiyani?
Mwachidule, monga tanenera, ndi masamu masamu. Kupatula apo, amatithandiza kufufuza momwe katundu kapena kuchuluka kumafalikira pakapita nthawi mudongosolo.
Iwo zachokera kufalitsa ndondomeko mfundo. Chifukwa chake, zimatithandiza kufufuza momwe kuchuluka kumafalikira padongosolo. Kufalikira uku kumachitika chifukwa cha kusiyanasiyana kwa ndende, kuthamanga, kapena magawo ena.
Tiyeni tipereke chitsanzo chophweka. Tangoganizani kuti muli ndi chidebe chodzaza ndi madzi momwe mwawonjezera utoto. Kufalikira kumawoneka pano pamene utotowo umayamba kumwazikana ndikutulutsa mumadzimadzi. Kutengera mawonekedwe amadzimadzi ndi utoto, mitundu ya Stable Diffusion ingagwiritsidwe ntchito kulosera momwe utotowo udzamwazikire ndikusakanikirana pakapita nthawi.
M'machitidwe ovuta kwambiri, monga misika yazachuma kapena kusintha kwamankhwala, zitsanzozi zimatha kuneneratu momwe chidziwitso kapena mawonekedwe angafalikire ndikukhudza dongosolo pakapita nthawi. Kupatula apo, data yayikulu imatha kuzolowera phunzitsani zitsanzo izi kupanga maulosi olondola. Amamangidwa pogwiritsa ntchito masamu omwe amafotokoza za kusintha kwa nthawi yayitali.
Kumvetsetsa ndi kulosera za kufalikira kwa makhalidwe ena mu dongosolo kupyolera mu nthawi ndilo lingaliro lalikulu lomwe liri pansi pa zitsanzozi. Ndikofunika kukumbukira kuti akatswiri m'magawo apadera amagwiritsa ntchito zitsanzozi.
Momwe Mungaphunzitsire Zitsanzo?
Sonkhanitsani ndikukonzekera deta yanu:
Muyenera kusonkhanitsa ndikukonzekera deta yanu musanayambe kuphunzitsa chitsanzo chanu. Deta yanu ingafunike kuyeretsedwa ndi kusinthidwa. Komanso, manambala omwe akusowa angafunikirenso kuchotsedwa.
Sankhani kamangidwe kachitsanzo
Mitundu ya Stable Diffusion imabwera m'njira zosiyanasiyana. Nthawi zambiri zimatengera equation ya Fokker-Planck, equation ya Schrödinger, ndi Master equation. Chitsanzo chomwe chikugwirizana bwino ndi mkhalidwe wanu chiyenera kusankhidwa. Choncho, iliyonse mwa zitsanzozi ili ndi ubwino ndi zovuta zake.
Kukhazikitsa ntchito yanu yotayika
Ndizofunikira chifukwa zimakhudza momwe chitsanzo chanu chingagwirizane ndi deta. Kwa mitundu ya Stable Diffusion, cholakwika cha squared ndi kusiyana kwa Kullback-Leibler ndi ntchito zotayika pafupipafupi.
Phunzitsani chitsanzo chanu
Pogwiritsa ntchito kutsika kwa stochastic gradient kapena njira yofananira yofananira, mutha kuyamba kuphunzitsa mtundu wanu mutatha kufotokozera ntchito yanu yotayika.
Yang'anani kusinthasintha kwachitsanzo chanu
Muyenera kuyang'ana zatsopano mukamaliza maphunziro poziyerekeza ndi seti yoyeserera.
Sinthani ma hyperparameter amtundu wanu
Kuti muwongolere magwiridwe antchito amtundu wanu, yesani mitundu yosiyanasiyana ya ma hyperparameter monga kuchuluka kwa kuphunzira, kukula kwa batch, ndi kuchuluka kwa zigawo zobisika pamaneti.
Bwerezani zomwe zachitika kale
Mungafunike kubwereza izi kangapo kuti mupeze zotsatira zabwino. Zidzakhala kutengera zovuta za vuto komanso kuchuluka kwa data.
Maphunziro a Coding
Zinenero zolinganiza monga Python, MATLAB, C++, ndi R atha kugwiritsidwa ntchito kupanga mitundu ya Stable Diffusion. Chilankhulo chogwiritsidwa ntchito chidzadalira kugwiritsa ntchito. Komanso, zingadalire zida ndi malaibulale opezeka m'chinenerocho.
Python ndiye chisankho chabwino kwambiri pankhaniyi. Ili ndi malaibulale amphamvu ngati NumPy ndi SciPy pakuwerengera manambala. Komanso, imathandizira TensorFlow ndi PyTorch popanga ndi kuphunzitsa ma neural network. Chifukwa chake, imakhala njira yabwino yolembera mitundu ya Stable Diffusion.
Chitsanzo:
Tiyeni tigwiritse ntchito equation ya diffusion, njira yamasamu yomwe imafotokoza momwe mtundu kapena kuchuluka, monga kutentha kapena kuchuluka kwa chinthu, zimasinthira pakapita nthawi mudongosolo. Equation nthawi zambiri imawoneka motere:
∂u/∂t = α ∇²u
Diffusion coefficient () ndi muyeso wa momwe katundu kapena kuchuluka kumafalira mosavuta kudzera mudongosolo.
Laplacian of u (2u) ndi kufotokozera momwe katundu kapena kuchuluka kwa zinthu zimasinthira potengera malo. Kumene u ndi katundu kapena kuchuluka komwe kumagawidwa (mwachitsanzo, kutentha kapena kuyika), t ndikupita kwa nthawi, ndi chiwerengero cha kufalikira, ndi kufalikira kosalekeza ().
Titha kugwiritsa ntchito njira ya Euler ku Python.
import numpy as np
# Define the diffusion coefficient
alpha = 0.1
# Define the initial condition (e.g. initial temperature or concentration)
u = np.ones(100)
# Time step
dt = 0.01
# Time-stepping loop
for t in range(1000):
# Compute the spatial derivative
du = np.diff(u)
# Update the value of u
u[1:] = u[1:] + alpha * du * dt
Khodi iyi imagwiritsa ntchito njira ya Euler kukhazikitsa equation ya diffusion. Imalongosola zoyambira ngati zoyambira zofananira zomwe zimayimiridwa ndi magulu angapo okhala ndi mawonekedwe a (100). 0.01 imagwiritsidwa ntchito ngati sitepe ya nthawi.
Kubwereza kwa 1000 kwa nthawi yodutsa nthawi kumatsirizidwa.
Imagwiritsa ntchito np.diff ntchito, yomwe imatsimikizira kusiyana pakati pa zinthu zoyandikana nazo. Chifukwa chake, imawerengera kutengera kwapang'onopang'ono kwa katundu kapena kuchuluka komwe akugawidwa. Ndipo, imayimiridwa ndi du, pa kubwereza kulikonse.
Kenako timachulutsa chotengera cha malo ndi ma alpha coefficient alpha ndi sitepe yanthawi yosinthira mtengo wa u.
Chitsanzo Chovuta Kwambiri
Kodi mtundu wokhazikika wa kufalikira womwe umangoyezera kutentha kokhazikika ungawoneke bwanji? Kodi code imeneyo imagwira ntchito bwanji?
Kuthetsa ma equation a partial differential equations (PDEs) omwe amafotokoza momwe kutentha kumafalikira padongosolo pakapita nthawi ndikofunikira. Chifukwa chake, titha kuphunzitsa mtundu wa Stable Diffusion womwe umafanana ndi kufalikira kwa kutentha.
Nachi fanizo la momwe kutentha kwa equation, PDE yomwe imafotokozera Kukhazikika Kokhazikika kwa kutentha mu ndodo ya mbali imodzi, kungathetsedwe pogwiritsa ntchito njira yosiyana:
import numpy as np
import matplotlib.pyplot as plt
# Define the initial conditions
L = 1 # length of the rod
Nx = 10 # number of spatial grid points
dx = L / (Nx - 1) # spatial grid spacing
dt = 0.01 # time step
T = 1 # total time
# Set up the spatial grid
x = np.linspace(0, L, Nx)
# Set up the initial temperature field
T0 = np.zeros(Nx)
T0[0] = 100 # left boundary condition
T0[-1] = 0 # right boundary condition
# Set up the time loop
Tn = T0
for n in range(int(T / dt)):
Tnp1 = np.zeros(Nx)
Tnp1[0] = 100 # left boundary condition
Tnp1[-1] = 0 # right boundary condition
for i in range(1, Nx - 1):
Tnp1[i] = Tn[i] + dt * (Tn[i+1] - 2*Tn[i] + Tn[i-1]) / dx**2
Tn = Tnp1
# Plot the final temperature field
plt.plot(x, Tn)
plt.xlabel('x')
plt.ylabel('T(x)')
plt.show()
Kodi Image Generation from Text Imagwira Ntchito Motani?
Popeza ndizodziwika bwino pa intaneti, titha kuwona momwe m'badwo wazithunzi umagwirira ntchito.
Natural Language processing (NLP) njira ndi mawindo a neural. Ndipo, nthawi zambiri amagwiritsidwa ntchito popereka mtundu wa Stable Diffusion wosinthira mawu kukhala chithunzi. Kufotokozera mozama momwe mungakwaniritsire izi kwaperekedwa pansipa:
1- Sinthani mawu muzolemba, ndikuchotsa mawu oyimitsa ndi zizindikiro. Sinthani mawu kukhala manambala. Ndi gawo la preprocessing (mawu embeddings).
import nltk
from nltk.tokenize import word_tokenize
nltk.download('punkt')
# Pre-processing the text data
text = "a bird sitting on a flower. "
words = word_tokenize(text)
words = [word.lower() for word in words if word.isalpha()]
2- Phunzirani momwe mungagwirizanitsire zolemba ndi zithunzi pogwiritsa ntchito neural network yomwe imaphatikiza encoder ndi decoder. Netiweki ya decoder imalandira nambala yobisika ngati yolowetsa. Kenako, imapanga chithunzi cholumikizidwa pambuyo poti netiweki ya encoder yasintha zomwe zalembedwazo kukhala choyimira chophatikizika (khode yobisika).
import tensorflow as tf
# Define the encoder model
encoder = tf.keras.Sequential()
encoder.add(tf.keras.layers.Embedding(input_dim=vocab_size,
output_dim=latent_dim))
encoder.add(tf.keras.layers.GRU(latent_dim))
encoder.add(tf.keras.layers.Dense(latent_dim))
# Define the decoder model
decoder = tf.keras.Sequential()
decoder.add(tf.keras.layers.Dense(latent_dim,
input_shape=(latent_dim,)))
decoder.add(tf.keras.layers.GRU(latent_dim))
decoder.add(tf.keras.layers.Dense(vocab_size))
# Combine the encoder and decoder into an end-to-end model
model = tf.keras.Sequential([encoder, decoder])
3- Popereka zithunzi zambiri ndi mafotokozedwe omwe amapita nawo. Kenako, mutha kuphunzitsa netiweki ya encoder-decoder.
# Compile the model
model.compile(optimizer='adam',
loss='categorical_crossentropy')
# Train the model on the dataset
model.fit(X_train, y_train, epochs=10, batch_size=32)
4- Netiweki ikaphunzitsidwa, mutha kuyigwiritsa ntchito kupanga zithunzi kuchokera pamawu atsopano. Ndipo, ndi kudyetsa mawu mu encoder network. Kenako, mutha kupanga kachidindo kobisika, ndiyeno kudyetsa kachidindo kobisika mu netiweki ya decoder kuti mupange chithunzicho.
# Encode the text input
latent_code = encoder.predict(text)
# Generate an image from the latent code
image = decoder.predict(latent_code)
5-Kusankhidwa kwa dataset yoyenera ndi ntchito zotayika ndi chimodzi mwazinthu zofunika kwambiri. Dongosololi ndi losiyanasiyana ndipo lili ndi zithunzi zambiri ndi mafotokozedwe alemba. Tikufuna kuwonetsetsa kuti zithunzizo ndi zenizeni. Komanso, tiyenera kukhala otsimikiza kuti mafotokozedwe a malembawo ndi otheka kuti tithe kupanga ntchito yotayika.
# Define the loss function
loss = tf.losses.mean_squared_error(y_true, y_pred)
# Compile the model
model.compile(optimizer='adam', loss=loss)
# use diverse dataset
from sklearn.utils import shuffle
X_train, y_train = shuffle(X_train, y_train)
Pomaliza, mutha kuyesa zomanga ndi njira zina. Kotero, kuti mutha kukweza machitidwe a chitsanzo, monga tcheru njira, GANs, kapena VAEs.
Siyani Mumakonda