मशीन लर्निंग का परिचय
मशीन लर्निंग (एमएल) कृत्रिम बुद्धिमत्ता (एआई) का एक उपक्षेत्र है जो कंप्यूटर सिस्टम के निर्माण पर केंद्रित है जो स्पष्ट निर्देशों का पालन किए बिना सीख, अनुकूलन, भविष्यवाणी और सहसंबंध कर सकता है।
मशीन लर्निंग का लक्ष्य एल्गोरिदम का लाभ उठाकर और सामान्यीकृत मॉडल बनाकर बड़ी मात्रा में डेटा को समझना और संसाधित करना है जो उपयोगकर्ता के अनुकूल आउटपुट उत्पन्न कर सकते हैं।
मशीन लर्निंग आमतौर पर नीचे दिए गए चरणों का पालन करके काम करती है:
- विभिन्न स्रोतों से डेटा एकत्र करना
- एकरूपता लाने के लिए डेटा को साफ़ करना
- एमएल एल्गोरिदम का उपयोग करके एक मॉडल बनाना
- मॉडल के परिणामों से अंतर्दृष्टि प्राप्त करना
- डेटा विज़ुअलाइज़ेशन और परिणामों को विज़ुअल ग्राफ़ में बदलना
1. विभिन्न स्रोतों से डेटा एकत्र करना
उत्पादन-तैयार मॉडल बनाने के लिए मशीन लर्निंग को बहुत अधिक डेटा की आवश्यकता होती है।
एमएल के लिए डेटा एकत्रीकरण दो तरीकों से किया जाता है: स्वचालित और मैनुअल।
- स्वचालित डेटा संग्रहण प्रोग्राम और स्क्रिप्ट का उपयोग करता है जो वेब से डेटा को स्क्रैप करता है।
- मैन्युअल डेटा संग्रहण मैन्युअल रूप से डेटा एकत्र करने और उसे सजातीय रूप से तैयार करने की एक प्रक्रिया है।
पायथन के साथ वेब स्क्रैपिंग का उपयोग करके स्वचालित डेटा संग्रहण:
import requests
from bs4 import BeautifulSoup
# Scrape data from a website
url = 'https://example.com'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
# Extract relevant information from the website
data = soup.find('div', class_='data-container').text
# Store the gathered data
with open('data.txt', 'w') as file:
file.write(data)
2. एकरूपता लाने के लिए डेटा को साफ़ करना
मशीन लर्निंग को कार्यशील बनाने और परिणाम उत्पन्न करने के लिए डेटा एकरूपता सुनिश्चित करना एक महत्वपूर्ण कदम है।
एमएल के लिए डेटा की सफाई या तो एल्गोरिदम की मदद से मैन्युअल रूप से या स्वचालित रूप से की जाती है और इसमें डेटासेट के भीतर गलत, दूषित, गलत स्वरूपित, डुप्लिकेट और अधूरे डेटा को ठीक करना और/या हटाना शामिल है।
पायथन और पांडा का उपयोग करके डेटा साफ़ करना:
import pandas as pd
# Read data from a CSV file
data = pd.read_csv('data.csv')
# Remove duplicates
data = data.drop_duplicates()
# Fix missing values by filling with mean
data['column_name'].fillna(data['column_name'].mean(), inplace=True)
# Remove incorrect or corrupted data
data = data[data['column_name'] > 0]
# Save cleaned data to a new file
data.to_csv('cleaned_data.csv', index=False)
3. एमएल एल्गोरिदम का उपयोग करके एक मॉडल बनाना
एक एमएल (मशीन लर्निंग) मॉडल एक फ़ाइल है जिसमें मशीन लर्निंग एल्गोरिदम के परिणाम होते हैं और इसका उपयोग गतिशील इनपुट पर तर्क करने के लिए किया जाता है।
एक एमएल (मशीन लर्निंग) मॉडल उन पैटर्न की एक सूची बनाकर काम करता है जो वास्तविक समय इनपुट के साथ मेल खाते हैं, फिर मिलान किए गए पैटर्न के अनुसार आउटपुट का उत्पादन करते हैं।
एमएल मॉडल में विभिन्न संरचना प्रकार हो सकते हैं, जिनमें सबसे सामान्य प्रकार हैं: बाइनरी वर्गीकरण, मल्टीक्लास वर्गीकरण, और रिग्रेशन।
- बाइनरी वर्गीकरण मॉडल एक बाइनरी परिणाम की भविष्यवाणी करता है, जिसका अर्थ है दो संभावित परिणामों में से एक।
- मल्टीक्लास वर्गीकरण मॉडल दो से अधिक परिणामों में से एक की भविष्यवाणी करता है।
- प्रतिगमन मॉडल संख्यात्मक मानों की भविष्यवाणी करता है।
मशीन लर्निंग मॉडल बनाने की प्रक्रिया को प्रशिक्षण कहा जाता है।
मशीन लर्निंग प्रशिक्षण एल्गोरिदम की मदद से किया जाता है और इसे दो श्रेणियों में विभाजित किया गया है: पर्यवेक्षित शिक्षण और पर्यवेक्षित शिक्षण।
- पर्यवेक्षित शिक्षण (एसएल) तब होता है जब एमएल मॉडल को लेबल किए गए डेटा का उपयोग करके प्रशिक्षित किया जाता है, जिसका अर्थ है वह डेटा जिसमें इनपुट और आउटपुट दोनों मान होते हैं।
- अनसुपरवाइज्ड लर्निंग (यूएल) तब होता है जब एमएल मॉडल को बिना लेबल वाले डेटा का उपयोग करके प्रशिक्षित किया जाता है, जिसका अर्थ है वह डेटा जिसमें कोई टैग या ज्ञात परिणाम नहीं हैं।
तंत्रिका नेटवर्क (एनएन) बिना पर्यवेक्षित शिक्षण के मूल में हैं और इसमें डेटासेट के भीतर डेटा के बीच मैपिंग शामिल है, जिससे सहसंबंध बनाने की अनुमति मिलती है।
पायथन की स्किकिट-लर्न लाइब्रेरी का उपयोग करके एक बाइनरी वर्गीकरण मॉडल बनाना:
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# Load the dataset
X, y = load_dataset()
# Split the data into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
# Create a Logistic Regression model
model = LogisticRegression()
# Train the model
model.fit(X_train, y_train)
# Make predictions on the test set
y_pred = model.predict(X_test)
# Evaluate the model's accuracy
accuracy = accuracy_score(y_test, y_pred)
4. मॉडल के परिणामों से अंतर्दृष्टि प्राप्त करना
एमएल मॉडल से अंतर्दृष्टि प्राप्त करने का अर्थ है पहले के अज्ञात पैटर्न को समझना और भविष्यवाणियां और निष्कर्ष निकालने के लिए मॉडल की क्षमता का परीक्षण करना।
मॉडल की वैधता को सत्यापित करने और यह निर्धारित करने के लिए अंतर्दृष्टि प्राप्त करना बहुत महत्वपूर्ण है कि क्या सीखने के एल्गोरिदम में कोई बदलाव करने की आवश्यकता है।
पायथन के साथ प्रशिक्षित मॉडल में सुविधा महत्व का विश्लेषण:
import matplotlib.pyplot as plt
# Get the feature importance scores
importances = model.coef_[0]
# Sort feature importance in descending order
sorted_indices = importances.argsort()[::-1]
sorted_importances = importances[sorted_indices]
# Plot the feature importance
plt.bar(range(len(sorted_importances)), sorted_importances)
plt.xticks(range(len(sorted_importances)), sorted_indices)
plt.xlabel('Feature Index')
plt.ylabel('Importance Score')
plt.title('Feature Importance')
plt.show()
5. डेटा विज़ुअलाइज़ेशन और परिणामों को विज़ुअल ग्राफ़ में बदलना
एमएल मॉडल के डेटा विज़ुअलाइज़ेशन में आउटपुट डेटा को एक ग्राफ़ पर रखना और इंटरैक्टिव एपीआई प्रदान करना शामिल है।
पायथन के साथ अनुमानित मूल्यों का एक स्कैटर प्लॉट बनाना:
import matplotlib.pyplot as plt
# Get the predicted values
y_pred = model.predict(X)
# Create a scatter plot
plt.scatter(X[:, 0], X[:, 1], c=y_pred)
plt.xlabel('Feature 1')
plt.ylabel('Feature 2')
plt.title('Predicted Values')
plt.show()
निष्कर्ष
उपरोक्त कोड उदाहरण मशीन लर्निंग में प्रत्येक चरण के लिए डेटा एकत्र करने और सफाई से लेकर मॉडल निर्माण, अंतर्दृष्टि और डेटा विज़ुअलाइज़ेशन तक व्यावहारिक कार्यान्वयन प्रदर्शित करते हैं।