नवशिक्यांसाठी टेन्सरफ्लो ट्यूटोरियल
टेन्सरफ्लो हे डीप लर्निंग आणि मशीन लर्निंगसाठी सर्वात लोकप्रिय फ्रेमवर्कपैकी एक आहे. गूगल ब्रेन टीमने विकसित केलेले, टेन्सरफ्लो असंख्य संशोधन प्रकल्पांमध्ये आणि औद्योगिक अनुप्रयोगांमध्ये मोठ्या प्रमाणावर वापरले गेले आहे. हा लेख तुम्हाला, एक नवशिक्या म्हणून, टेन्सरफ्लो वापरण्यास सुरुवात करण्यासाठी मदत करण्याकरिता एक टप्प्या-टप्प्याचा ट्युटोरियल प्रदान करतो.
१. टेन्सरफ्लोच्या मूलभूत गोष्टी समजून घेणे
TensorFlow स्थापित करणे आणि वापरण्यास सुरुवात करण्यापूर्वी, TensorFlow काय आहे आणि त्यामागील मूलभूत संकल्पना काय आहेत हे समजून घेणे महत्त्वाचे आहे. TensorFlow हे संख्यात्मक गणना आणि मशीन लर्निंगसाठी एक ओपन-सोर्स फ्रेमवर्क आहे. संख्यात्मक क्रिया करण्यासाठी ते डेटा फ्लो ग्राफचा वापर करते, जिथे ग्राफमधील नोड्स गणितीय क्रिया दर्शवतात आणि एजेस त्यांच्यामध्ये जोडलेले बहुमितीय डेटा अॅरे (टेन्सर्स) दर्शवतात.
२. टेन्सरफ्लो इन्स्टॉलेशन
TensorFlow वापरण्याची पहिली पायरी म्हणजे ते इन्स्टॉल करणे. पायथन पॅकेज मॅनेजर असलेल्या pip चा वापर करून TensorFlow कसे इन्स्टॉल करायचे ते येथे दिले आहे.
१. पायथन इन्स्टॉलेशन:
तुमच्या सिस्टमवर पायथॉन इन्स्टॉल केलेले असल्याची खात्री करा. हे लिहित असताना, टेन्सरफ्लो पायथॉन ३.६ ते ३.९ शी सुसंगत आहे. तुम्ही पायथॉनच्या अधिकृत वेबसाइटवरून पायथॉन डाउनलोड करू शकता.
२. आभासी पर्यावरण:
तुमचा TensorFlow प्रोजेक्ट वेगळा ठेवण्यासाठी व्हर्च्युअल वातावरण तयार करण्याची अत्यंत शिफारस केली जाते:
“`श
python -m venv myenv
source myenv/bin/activate मॅक/लिनक्स वापरकर्त्यांसाठी
विंडोज वापरकर्त्यांसाठी myenv\Scripts\activate
"`
३. टेन्सरफ्लो इन्स्टॉलेशन:
आता, pip वापरून TensorFlow स्थापित करा:
“`श
pip tensorflow स्थापित करा
"`
३. टेन्सरफ्लो वापरून हॅलो वर्ल्ड
आता TensorFlow इन्स्टॉल झाले आहे, चला इन्स्टॉलेशनची पडताळणी करण्यासाठी एक साधी पायथन स्क्रिप्ट तयार करूया. एक नवीन पायथन फाईल तयार करा आणि तिला `hello_tensorflow.py` असे नाव द्या.
'' अजगर
tensorflow tf म्हणून आयात करा
एक स्थिरांक तयार करा
hello = tf.constant('नमस्कार, टेन्सरफ्लो!')
सत्र सुरू करा
with tf.Session() as sess:
परिणाम = सेस.रन(हॅलो)
प्रिंट (परिणाम)
"`
TensorFlow आवृत्ती 2.x नुसार कोडमध्ये बदल करा:
'' अजगर
tensorflow tf म्हणून आयात करा
एक स्थिरांक तयार करा
hello = tf.constant('नमस्कार, टेन्सरफ्लो!')
ईगर एक्झिक्यूशन वापरून चालवा (डिफॉल्टनुसार चालू)
print(hello.numpy())
"`
फाईल जतन करा, नंतर चालवा:
“`श
पायथन hello_tensorflow.py
"`
४. टेन्सर आणि मूलभूत क्रिया समजून घेणे
टेन्सर्स ही टेन्सरफ्लोमधील प्रमुख डेटा संरचना आहे, जे बहुमितीय अॅरे असतात. टेन्सर्स समजून घेण्यासाठी येथे काही उदाहरणे दिली आहेत:
'' अजगर
tensorflow tf म्हणून आयात करा
टेन्सर तयार करणे
स्केलर = tf. स्थिरांक(7) स्केलर
वेक्टर = tf. स्थिरांक([1, 2, 3]) वेक्टर
मॅट्रिक्स = tf. स्थिरांक([[1, 2], [3, 4]]) मॅट्रिक्स
tensor3d = tf.constant([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) 3D tensor
print(f'स्केलर: {स्केलर}')
print(f'सदिश: {सदिश}')
print(f'मॅट्रिक्स: {मॅट्रिक्स}')
print(f'टेन्सर 3D: {tensor3d}')
"`
टेन्सरवर मूलभूत क्रिया करण्यासाठी:
'' अजगर
a = tf.constant([[1, 2], [3, 4]])
b = tf.constant([[5, 6], [7, 8]])
बेरीज ऑपरेशन
add = tf.add(a, b)
मॅट्रिक्स गुणाकार क्रिया
mul = tf.matmul(a, b)
print(f'बेरीज: {add}')
print(f'मॅट्रिक्स गुणाकार: {mul}')
"`
५. एक साधे न्यूरल नेटवर्क मॉडेल तयार करणे
पुढील पायरी म्हणजे एक साधे न्यूरल नेटवर्क मॉडेल तयार करणे. आपण हस्तलिखित अंकांच्या प्रतिमांचा डेटाबेस असलेल्या MNIST डेटासेटचा वापर करून एक प्रतिमा वर्गीकरण मॉडेल तयार करणार आहोत. चला सुरुवात करूया:
'' अजगर
tensorflow tf म्हणून आयात करा
from tensorflow.keras import datasets, layers, models
MNIST डेटासेट डाउनलोड करणे
(ट्रेन_इमेजेस, ट्रेन_लेबल्स), (टेस्ट_इमेजेस, टेस्ट_लेबल्स) = डेटासेट्स.एमएनिस्ट.लोड_डेटा()
प्रतिमा सामान्यीकरण
ट्रेन_इमेजेस, टेस्ट_इमेजेस = ट्रेन_इमेजेस / 255.0, टेस्ट_इमेजेस / 255.0
मॉडेल बनवणे
मॉडेल = मॉडेल.अनुक्रमिक([
layers.Flatten(input_shape=(28, 28)),
layers.Dense(128, activation='relu'),
स्तर.घन(10)
])
मॉडेल संकलन
मॉडेल.कंपाइल(ऑप्टिमायझर='अॅडम',
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
मेट्रिक्स=['अचूकता'])
मॉडेलला प्रशिक्षण देणे
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 अॅरेमध्ये रूपांतरित करतो. दुसरा स्तर हा 128 न्यूरॉन्स आणि `relu` ॲक्टिव्हेशन फंक्शन असलेला `Dense` स्तर आहे, आणि शेवटचा स्तर हा 10 न्यूरॉन्स असलेला `Dense` स्तर आहे, जे 10 वर्गांचे प्रतिनिधित्व करतात.
– संकलन: आम्ही `adam` ऑप्टिमायझर आणि `SparseCategoricalCrossentropy` लॉस फंक्शन म्हणून वापरून मॉडेल संकलित करतो.
– प्रशिक्षण: मॉडेलला ५ इपॉक्ससाठी प्रशिक्षित करा.
– मूल्यांकन करा: चाचणी डेटाच्या आधारे मॉडेलचे मूल्यांकन करा.
६. मॉडेल जतन करणे आणि लोड करणे
मॉडेलला प्रशिक्षित केल्यानंतर, तुम्हाला ते पुन्हा प्रशिक्षित न करता नंतरच्या वापरासाठी जतन करायचे असेल. मॉडेल कसे जतन आणि लोड करावे, हे येथे दिले आहे:
'' अजगर
मॉडेल जतन करणे
model.save('my_model.h5')
मॉडेल लोड करत आहे
new_model = tf.keras.models.load_model('my_model.h5′)
लोड केलेल्या मॉडेलची पडताळणी करणे
loss, acc = new_model.evaluate(test_images, test_labels)
print(f'लोड केलेल्या मॉडेलची अचूकता: {acc}')
"`
निष्कर्ष
हे मार्गदर्शक नवशिक्यांसाठी TensorFlow वापरण्यास सुरुवात करण्याकरिता एक सविस्तर परिचय देते. यामध्ये इन्स्टॉलेशन, मूलभूत टेन्सर ऑपरेशन्स आणि MNIST डेटासेट वापरून एक साधे न्यूरल नेटवर्क मॉडेल तयार करणे या गोष्टींचा समावेश आहे. TensorFlow मध्ये शोध घेण्यासाठी अनेक प्रगत क्षमता आहेत, जसे की प्रगत डेटा प्रोसेसिंग, अधिक गुंतागुंतीची मॉडेल्स आणि TPU व GPU सारख्या उपकरणांवर TensorFlow वापरणे. आम्हाला आशा आहे की हे ट्युटोरियल तुम्हाला TensorFlow सह मशीन लर्निंगच्या जगात सुरुवात करण्यास मदत करेल.