Падручнік па выкарыстанні TensorFlow для пачаткоўцаў

Падручнік па TensorFlow для пачаткоўцаў

TensorFlow — адзін з самых папулярных фрэймворкаў для глыбокага навучання і машыннага навучання. Распрацаваны камандай Google Brain, TensorFlow шырока выкарыстоўваецца ў шматлікіх даследчых праектах і прамысловых ужываннях. Гэты артыкул змяшчае пакрокавае кіраўніцтва, якое дапаможа вам, як пачаткоўцу, пачаць працаваць з TensorFlow.

1. Разуменне асноў TensorFlow

Перш чым пачаць усталёўваць і выкарыстоўваць TensorFlow, важна зразумець, што такое TensorFlow і якія асноўныя канцэпцыі ён мае. TensorFlow — гэта фрэймворк з адкрытым зыходным кодам для лікавых вылічэнняў і машыннага навучання . Ён выкарыстоўвае графы патокаў дадзеных для выканання лікавых аперацый, дзе вузлы ў графе ўяўляюць сабой матэматычныя аперацыі, а рэбры — шматмерныя масівы дадзеных (тэнзары), звязаныя паміж імі.

2. Усталёўка TensorFlow

Першы крок у выкарыстанні TensorFlow — гэта яго ўстаноўка. Вось як усталяваць TensorFlow з дапамогай pip, менеджара пакетаў Python.

1. Усталёўка Python:
Пераканайцеся, што ў вашай сістэме ўсталяваны Python. На момант напісання гэтага артыкула TensorFlow сумяшчальны з Python версій ад 3.6 да 3.9. Вы можаце спампаваць Python з афіцыйнага сайта Python.

2. Віртуальнае асяроддзе:
Настойліва рэкамендуецца стварыць віртуальнае асяроддзе для ізаляцыі вашага праекта TensorFlow:
«ш»
python -m venv myenv
зыходны код myenv/bin/activate Для карыстальнікаў Mac/Linux
myenv\Scripts\activate Для карыстальнікаў Windows
"

3. Усталёўка TensorFlow:
Цяпер усталюйце TensorFlow з дапамогай pip:
«ш»
pip ўсталяваць tensorflow
"

3. Прывітанне, свет з TensorFlow

Цяпер, калі TensorFlow усталяваны, давайце створым просты скрыпт Python для праверкі ўсталёўкі. Стварыце новы файл Python і назавіце яго `hello_tensorflow.py`.

«пітон
імпартаваць tensorflow як tf

Стварыць канстанту
прывітанне = tf.constant('Прывітанне, TensorFlow!')

Пачаць сеанс
з tf.Session() як sess:
вынік = sess.run(прывітанне)
друк (вынік)
"

Адаптуйце код у адпаведнасці з TensorFlow версіі 2.x:

«пітон
імпартаваць tensorflow як tf

Стварыць канстанту
прывітанне = tf.constant('Прывітанне, TensorFlow!')

Запускаць з выкарыстаннем неадкладнага выканання (па змаўчанні ўключана)
друк(прывітанне.numpy())
"

Захавайце файл, а затым запусціце:
«ш»
python hello_tensorflow.py
"

4. Разуменне тэнзарных элементаў і асноўных аперацый

Тэнзары — гэта асноўная структура дадзеных у TensorFlow, якая ўяўляе сабой шматмерныя масівы. Вось некалькі прыкладаў, якія дапамогуць вам зразумець тэнзары:

«пітон
імпартаваць tensorflow як tf

Стварэнне тэнзараў
скаляр = tf.constant(7) скаляр
вектар = tf.канстанта([1, 2, 3]) вектар
матрыца = tf.constant([[1, 2], [3, 4]]) матрыца
tensor3d = tf.constant([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) 3D-тэнзар

print(f'Скаляр: {скаляр}')
print(f'Вектар: {вектар}')
print(f'Матрыца: {матрыца}')
print(f'Тэнзар 3D: {тэнзар 3d}')
"

Каб выканаць асноўныя аперацыі з тэнзарамі:

«пітон
a = tf.constant([[1, 2], [3, 4]])
b = tf.constant([[5, 6], [7, 8]])

Аперацыя складання
дадаць = tf.дадаць(a, b)
Аперацыі множання матрыц
mul = tf.matmul(a, b)

print(f'Дапаўненне: {дадаць}')
print(f'Множанне матрыц: {mul}')
"

5. Стварэнне простай мадэлі нейроннай сеткі

Наступны крок — стварэнне простай мадэлі нейроннай сеткі. Мы пабудуем мадэль класіфікацыі малюнкаў, выкарыстоўваючы набор дадзеных MNIST, базу дадзеных рукапісных лічбаў. Пачнем:

«пітон
імпартаваць tensorflow як tf
з tensorflow.keras імпартаваць наборы дадзеных, пласты, мадэлі

Загрузка набору дадзеных MNIST
(выявы_цягніка, этыкеткі_цягніка), (тэставыя_выявы, тэставыя_этыкеткі) = datasets.mnist.load_data()

Нармалізацыя выявы
выявы_цягніка, тэставыя_выявы = выявы_цягніка / 255.0, тэставыя_выявы / 255.0

Стварэнне мадэлі
мадэль = мадэлі.Паслядоўнасць([
layers.Flatten(input_shape=(28, 28)),
layers.Dense(128, activation='relu'),
пласты.Шчыльны(10)
])

Кампіляцыя мадэлі
model.compile(аптымізатар='адам',
страта=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['дакладнасць'])

Навучанне мадэлі
model.fit(train_images, train_labels, epochs=5)

Тэставанне мадэлі
test_loss, test_acc = model.evaluate(test_images, test_labels)
print(f'Дакладнасць тэсту: {test_acc}')
"

Тлумачэнне:
– Наборы даных: Мы імпартуем і загружаем набор даных MNIST.
– Папярэдняя апрацоўка: нармалізацыя набору дадзеных шляхам дзялення значэнняў пікселяў на 255.
– Мадэль: Мы вызначаем простую мадэль з двума пластамі. Першы пласт — гэта пласт «Flatten» для пераўтварэння 2D-выявы ў 1D-масіў. Другі пласт — гэта пласт «Dense» са 128 нейронамі і функцыяй актывацыі «relu», а апошні — гэта пласт «Dense» з 10 нейронамі, якія прадстаўляюць 10 класаў.
– Кампіляцыя: Мы кампілюем мадэль, выкарыстоўваючы аптымізатар `adam` і `SparseCategoricalCrossentropy` у якасці функцыі страт.
– Навучанне: Навучанне мадэлі на працягу 5 эпох.
– Ацэнка: Ацаніце мадэль у параўнанні з тэставымі дадзенымі.

6. Захаванне і загрузка мадэляў

Пасля навучання мадэлі вы можаце захаваць яе для наступнага выкарыстання без неабходнасці перавучвання. Вось як захаваць і загрузіць мадэль:

«пітон
Захаванне мадэлі
мадэль.захаваць('мая_мадэль.h5')

Загрузка мадэлі
new_model = tf.keras.models.load_model('мая_мадэль.h5')

Праверка загружанай мадэлі
страта, acc = new_model.evaluate(test_images, test_labels)
print(f'Дакладнасць загружанай мадэлі: {acc}')
"

Выснова

Гэта кіраўніцтва змяшчае падрабязнае ўвядзенне ў працу з TensorFlow для пачаткоўцаў. Мы разгледзелі ўстаноўку, асноўныя аперацыі з тэнзарамі і стварэнне простай мадэлі нейроннай сеткі з выкарыстаннем набору дадзеных MNIST. TensorFlow прапануе мноства пашыраных магчымасцей для вывучэння, такіх як пашыраная апрацоўка дадзеных , больш складаныя мадэлі і выкарыстанне TensorFlow на такіх прыладах, як TPU і GPU. Мы спадзяемся, што гэта кіраўніцтва дапаможа вам пачаць працу ў свеце машыннага навучання з TensorFlow.

Правільны каментар