Tiwtorial gan ddefnyddio TensorFlow i ddechreuwyr

Tiwtorial TensorFlow i Ddechreuwyr

Mae TensorFlow yn un o'r fframweithiau mwyaf poblogaidd ar gyfer dysgu dwfn a dysgu peirianyddol. Wedi'i ddatblygu gan dîm Google Brain, mae TensorFlow wedi cael ei ddefnyddio'n helaeth mewn nifer o brosiectau ymchwil a chymwysiadau diwydiannol. Mae'r erthygl hon yn darparu tiwtorial cam wrth gam i'ch helpu chi, fel dechreuwr, i ddechrau gyda TensorFlow.

1. Deall Hanfodion TensorFlow

Cyn i ni ddechrau gosod a defnyddio TensorFlow, mae'n bwysig deall beth yw TensorFlow a'r cysyniadau sylfaenol y tu ôl iddo. Mae TensorFlow yn fframwaith ffynhonnell agored ar gyfer cyfrifiadu rhifiadol a dysgu peirianyddol. Mae'n defnyddio graffiau llif data i gyflawni gweithrediadau rhifiadol, lle mae nodau yn y graff yn cynrychioli gweithrediadau mathemategol, ac mae ymylon yn cynrychioli araeau data amlddimensiwn (tensorau) sy'n gysylltiedig rhyngddynt.

2. Gosod TensorFlow

Y cam cyntaf wrth ddefnyddio TensorFlow yw ei osod. Dyma sut i osod TensorFlow gan ddefnyddio pip, rheolwr pecynnau Python.

1. Gosod Python:
Gwnewch yn siŵr bod Python wedi'i osod ar eich system. Mae TensorFlow yn gydnaws â Python 3.6 hyd at 3.9 ar adeg ysgrifennu hwn. Gallwch lawrlwytho Python o wefan swyddogol Python.

2. Amgylchedd Rhithwir:
Argymhellir yn gryf creu amgylchedd rhithwir i ynysu eich prosiect TensorFlow:
"`sh
python -m venv myenv
ffynhonnell myenv/bin/activate Ar gyfer defnyddwyr Mac/Linux
myenv\Scripts\activate Ar gyfer defnyddwyr Windows
“`

3. Gosod TensorFlow:
Nawr, gosodwch TensorFlow gan ddefnyddio pip:
"`sh
pip gosod tensorflow
“`

3. Helo Byd gyda TensorFlow

Nawr bod TensorFlow wedi'i osod, gadewch i ni greu sgript Python syml i wirio'r gosodiad. Crëwch ffeil Python newydd a'i henwi'n `hello_tensorflow.py`.

"`python
mewnforio tensorflow fel tf

Creu cysonyn
helo = tf.constant('Helo, TensorFlow!')

Dechrau sesiwn
gyda tf.Session() fel sess:
canlyniad = sess.run(helo)
argraffu (canlyniad)
“`

DARLLENWCH  Yr adnoddau ar-lein gorau ar gyfer dysgu SQL

Addaswch y cod yn ôl TensorFlow fersiwn 2.x:

"`python
mewnforio tensorflow fel tf

Creu cysonyn
helo = tf.constant('Helo, TensorFlow!')

Rhedeg gan ddefnyddio gweithrediad brwd (ymlaen yn ddiofyn)
argraffu(helo.numpy())
“`

Cadwch y ffeil, yna rhedeg:
"`sh
python hello_tensorflow.py
“`

4. Deall Tensorau a Gweithrediadau Sylfaenol

Tensorau yw'r prif strwythur data yn TensorFlow, sef araeau amlddimensiwn. Dyma rai enghreifftiau i'ch helpu i ddeall tensorau:

"`python
mewnforio tensorflow fel tf

Creu tensorau
sgalar = tf. cysonyn(7) sgalar
fector = tf. cysonyn([1, 2, 3]) fector
matrics = tf. constant([[1, 2], [3, 4]]) matrics
tensor3d = tf.constant([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) tensor 3D

argraffu(f'Sgalar: {sgalar}')
argraffu(f'Fector: {fector}')
argraffu(f'Matrics: {matrics}')
argraffu(f'Tensor 3D: {tensor3d}')
“`

I gyflawni gweithrediadau sylfaenol ar tensorau:

"`python
a = tf.constant([[1, 2], [3, 4]])
b = tf.constant([[5, 6], [7, 8]])

Gweithrediad adio
ychwanegu = tf.ychwanegu(a, b)
Gweithrediadau lluosi matrics
mul = tf.matmul(a, b)

print(f'Ychwanegiad: {ychwanegu}')
print(f'Lluosi Matrics: {mul}')
“`

5. Creu Model Rhwydwaith Niwral Syml

Y cam nesaf yw creu model rhwydwaith niwral syml. Byddwn yn adeiladu model dosbarthu delweddau gan ddefnyddio'r set ddata MNIST, cronfa ddata o ddelweddau digid wedi'u hysgrifennu â llaw. Gadewch i ni ddechrau:

"`python
mewnforio tensorflow fel tf
o tensorflow.keras mewnforio setiau data, haenau, modelau

Lawrlwytho'r set ddata MNIST
(delweddau_trên, labeli_trên), (delweddau_prawf, labeli_prawf) = setiau_data.mnist.llwytho_data()

Normaleiddio delweddau
delweddau_trên, delweddau_prawf = delweddau_trên / 255.0, delweddau_prawf / 255.0

Gwneud model
model = models.Dilyniannol([
haenau.Fflatten(siâp_mewnbwn=(28, 28)),
haenau.Dense(128, activation='relu'),
haenau.Dwys (10)
])

Casgliad model
model.compile(optimeiddiwr='adam',
colled=tf.keras.colledion.CroesentropiCategorïaiddPrin(o_logitiau=Gwir),
metrigau=['cywirdeb'])

Hyfforddi'r model
model.fit(delweddau_trên, labeli_trên, cyfnodau=5)

Profi'r model
colli_prawf, cronfa_prawf = model.gwerthuso(delweddau_prawf, labeli_prawf)
print(f'Cywirdeb prawf: {test_acc}')
“`

Esboniad:
– Setiau data: Rydym yn mewnforio ac yn llwytho'r set ddata MNIST.
– Cyn-brosesu: Normaleiddio'r set ddata trwy rannu gwerthoedd picsel â 255.
– Model: Rydym yn diffinio model syml gyda dwy haen. Yr haen gyntaf yw haen 'Fflatio' i drosi'r ddelwedd 2D yn arae 1D. Yr ail haen yw haen 'Dwys' gyda 128 o niwronau a 'relu' fel y swyddogaeth actifadu, a'r olaf yw haen 'Dwys' gyda 10 niwron yn cynrychioli 10 dosbarth.
– Llunio: Rydym yn llunio'r model gan ddefnyddio'r optimeiddiwr `adam` a `SparseCategoricalCrossentropy` fel y ffwythiant colli.
– Hyfforddi: Hyfforddwch y model am 5 cyfnod.
– Gwerthuso: Gwerthuso'r model yn erbyn data prawf.

DARLLENWCH  Arferion gorau ar gyfer diogelwch rhwydwaith mewn busnesau bach

6. Cadw a Llwytho Modelau

Ar ôl hyfforddi model, efallai yr hoffech ei gadw i'w ddefnyddio'n ddiweddarach heb orfod ei ailhyfforddi. Dyma sut i gadw a llwytho model:

"`python
Arbed y model
model.save('my_model.h5')

Llwytho model
model_newydd = tf.keras.modelau.llwytho_model('fy_model.h5')

Gwirio'r model a lwythwyd
colled, acc = model_newydd.gwerthuso(delweddau_prawf, labeli_prawf)
print(f'Cywirdeb y model a lwythwyd: {acc}')
“`

Casgliad

Mae'r canllaw hwn yn rhoi cyflwyniad manwl i ddechrau gyda TensorFlow i ddechreuwyr. Rydym wedi ymdrin â gosod, gweithrediadau tensor sylfaenol, ac adeiladu model rhwydwaith niwral syml gan ddefnyddio'r set ddata MNIST. Mae TensorFlow yn cynnig llawer o alluoedd uwch i'w harchwilio, megis prosesu data uwch, modelau mwy cymhleth, a defnyddio TensorFlow ar ddyfeisiau fel TPUs a GPUs. Gobeithiwn y bydd y tiwtorial hwn yn eich helpu i ddechrau ym myd dysgu peirianyddol gyda TensorFlow.

Gadewch sylw