2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
चरमशिक्षणयन्त्रम् (ELM) सरलं एकस्तरीयं फीडफोरवर्ड न्यूरल नेटवर्क (SLFN) शिक्षण एल्गोरिदम् अस्ति । सिद्धान्ततः, चरम-शिक्षण-यन्त्र-एल्गोरिदम् (ELM) अत्यन्तं द्रुत-शिक्षण-वेगेन सह उत्तमं प्रदर्शनं (यन्त्र-शिक्षण-एल्गोरिदम्-सम्बद्धं) प्रदातुं प्रवृत्ताः सन्ति, तथा च हुआङ्ग् इत्यादिभिः प्रस्ताविताः ईएलएम इत्यस्य मुख्यविशेषता अस्ति यत् तस्य शिक्षणवेगः अतीव द्रुतगतिः भवति पारम्परिक-ढाल-अवरोह-विधिभिः (यथा बीपी-न्यूरल-जालम्) तुलने ईएलएम-इत्यस्य पुनरावर्तनीय-प्रक्रियायाः आवश्यकता नास्ति । मूलभूतः सिद्धान्तः अस्ति यत् गुप्तस्तरस्य भारं पूर्वाग्रहं च यादृच्छिकरूपेण चयनं करणीयम्, ततः निर्गमस्तरस्य दोषं न्यूनीकृत्य निर्गमभारं ज्ञातव्यम्
img
गुप्तस्तरं प्रति भारानाम् पूर्वाग्रहाणां च निवेशं यादृच्छिकरूपेण आरभत:
गुप्तस्तरानाम् भारः पूर्वाग्रहाः च यादृच्छिकरूपेण उत्पद्यन्ते, प्रशिक्षणकाले नित्यं च तिष्ठन्ति ।
गुप्तस्तरस्य (अर्थात् सक्रियकरणकार्यस्य निर्गमस्य) निर्गममात्रिकायाः गणनां कुर्वन्तु ।:
सक्रियकरणकार्यस्य (यथा sigmoid, ReLU इत्यादीनां) उपयोगेन गुप्तस्तरस्य उत्पादनस्य गणनां कुर्वन्तु ।
उत्पादनभारस्य गणनां कुर्वन्तु:
गुप्तस्तरतः निर्गमस्तरपर्यन्तं भाराः न्यूनतमवर्गविधिना गण्यन्ते ।
ईएलएम इत्यस्य गणितीयसूत्रं निम्नलिखितम् अस्ति ।
प्रशिक्षणदत्तांशसमूहं दत्तं , यत्र , .
गुप्तस्तरस्य निर्गममात्रिकायाः गणनासूत्रं अस्ति :
यत्र निवेशमात्रिका अस्ति, गुप्तस्तरं प्रति भारमात्रिकायाः निवेशः अस्ति, पूर्वाग्रहसदिशः अस्ति, सक्रियकरणकार्यं च अस्ति ।
निर्गमभारस्य गणनासूत्रं अस्ति : १.
तेषु, गुप्तस्तरनिर्गममात्रिकायाः सामान्यीकृतविलोमः अस्ति तथा च निर्गममात्रिका अस्ति ।
बृहत्-परिमाणेन आँकडा-समूह-प्रक्रियाकरणम्: ELM बृहत्-परिमाणस्य आँकडा-समूहानां संसाधने उत्तमं प्रदर्शनं करोति यतोहि तस्य प्रशिक्षण-वेगः अतीव द्रुतः भवति तथा च एतादृशानां परिदृश्यानां कृते उपयुक्तः भवति येषु मॉडल्-प्रशिक्षणस्य आवश्यकता भवति, यथा बृहत्-परिमाणस्य चित्र-वर्गीकरणं, प्राकृतिक-भाषा-संसाधनम् इत्यादीनि कार्याणि
उद्योग पूर्वानुमान : औद्योगिकपूर्वसूचनाक्षेत्रे ईएलएम इत्यस्य विस्तृतप्रयोगाः सन्ति, यथा औद्योगिकनिर्माणप्रक्रियासु गुणवत्तानियन्त्रणं उपकरणविफलतायाः पूर्वानुमानं च। इदं शीघ्रं भविष्यवाणीप्रतिमानं प्रशिक्षितुं शक्नोति तथा च वास्तविकसमयदत्तांशस्य शीघ्रं प्रतिक्रियां दातुं शक्नोति ।
वित्तीयक्षेत्रम् : ईएलएम इत्यस्य उपयोगः वित्तीयदत्तांशविश्लेषणार्थं भविष्यवाणीं च कर्तुं शक्यते, यथा स्टॉकमूल्यानां पूर्वानुमानं, जोखिमप्रबन्धनं, ऋणस्कोरिंग् इत्यादीनि। यतो हि वित्तीयदत्तांशः प्रायः उच्च-आयामी भवति, अतः एतेषां दत्तांशस्य संसाधनार्थं ईएलएम इत्यस्य द्रुतप्रशिक्षणवेगः लाभप्रदः भवति ।
चिकित्सानिदानम् : चिकित्साक्षेत्रे रोगस्य पूर्वानुमानं, चिकित्साप्रतिबिम्बविश्लेषणम् इत्यादीनां कार्याणां कृते ईएलएम इत्यस्य उपयोगः कर्तुं शक्यते । एतत् शीघ्रं मॉडल् प्रशिक्षितुं शक्नोति तथा च रोगीनां आँकडानां वर्गीकरणं वा प्रतिगमनं वा कर्तुं शक्नोति, येन वैद्याः द्रुततरं सटीकतरं च निदानं कर्तुं साहाय्यं कुर्वन्ति ।
बुद्धिमान् नियन्त्रणव्यवस्था : ईएलएम इत्यस्य उपयोगः बुद्धिमान् नियन्त्रणप्रणालीषु, यथा स्मार्टगृहेषु, बुद्धिमान् परिवहनप्रणालीषु इत्यादिषु कर्तुं शक्यते। पर्यावरणस्य लक्षणं प्रतिमानं च ज्ञात्वा ईएलएम प्रणाल्याः बुद्धिमान् निर्णयं कर्तुं सहायतां कर्तुं शक्नोति तथा च प्रणाल्याः कार्यक्षमतां कार्यक्षमतां च सुधारयितुम् अर्हति
वयं उपयुञ्ज्महेmake_moons
Dataset, सामान्यतया यन्त्रशिक्षणस्य गहनशिक्षणवर्गीकरणकार्यस्य च कृते उपयुज्यमानः खिलौनादत्तांशसमूहः । एतत् द्वयोः प्रतिच्छेदकयोः अर्धचन्द्राकारयोः वितरितबिन्दून् जनयति, यत् वर्गीकरण-एल्गोरिदम्-प्रदर्शनस्य, निर्णयसीमानां च प्रदर्शनार्थं आदर्शम्
- import numpy as np
- import matplotlib.pyplot as plt
- from sklearn.datasets import make_moons
- from sklearn.model_selection import train_test_split
- from sklearn.neural_network import MLPClassifier
- from sklearn.preprocessing import StandardScaler
- from sklearn.metrics import accuracy_score
-
- # 定义极限学习机(ELM)类
- class ELM:
- def __init__(self, n_hidden_units):
- # 初始化隐藏层神经元数量
- self.n_hidden_units = n_hidden_units
-
- def _sigmoid(self, x):
- # 定义Sigmoid激活函数
- return 1 / (1 + np.exp(-x))
-
- def fit(self, X, y):
- # 随机初始化输入权重
- self.input_weights = np.random.randn(X.shape[1], self.n_hidden_units)
- # 随机初始化偏置
- self.biases = np.random.randn(self.n_hidden_units)
- # 计算隐藏层输出矩阵H
- H = self._sigmoid(np.dot(X, self.input_weights) + self.biases)
- # 计算输出权重
- self.output_weights = np.dot(np.linalg.pinv(H), y)
-
- def predict(self, X):
- # 计算隐藏层输出矩阵H
- H = self._sigmoid(np.dot(X, self.input_weights) + self.biases)
- # 返回预测结果
- return np.dot(H, self.output_weights)
-
- # 创建数据集并进行预处理
- X, y = make_moons(n_samples=1000, noise=0.2, random_state=42)
- # 将标签转换为二维数组(ELM需要二维数组作为标签)
- y = y.reshape(-1, 1)
-
- # 标准化数据
- scaler = StandardScaler()
- X_scaled = scaler.fit_transform(X)
-
- # 拆分训练集和测试集
- X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.3, random_state=42)
-
- # 训练和比较ELM与MLP
-
- # 训练ELM
- elm = ELM(n_hidden_units=10)
- elm.fit(X_train, y_train)
- y_pred_elm = elm.predict(X_test)
- # 将预测结果转换为类别标签
- y_pred_elm_class = (y_pred_elm > 0.5).astype(int)
- # 计算ELM的准确率
- accuracy_elm = accuracy_score(y_test, y_pred_elm_class)
-
- # 训练MLP
- mlp = MLPClassifier(hidden_layer_sizes=(10,), max_iter=1000, random_state=42)
- mlp.fit(X_train, y_train.ravel())
- # 预测测试集结果
- y_pred_mlp = mlp.predict(X_test)
- # 计算MLP的准确率
- accuracy_mlp = accuracy_score(y_test, y_pred_mlp)
-
- # 打印ELM和MLP的准确率
- print(f"ELM Accuracy: {accuracy_elm}")
- print(f"MLP Accuracy: {accuracy_mlp}")
-
- # 可视化结果
- def plot_decision_boundary(model, X, y, ax, title):
- # 设置绘图范围
- x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1
- y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1
- # 创建网格
- xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.01),
- np.arange(y_min, y_max, 0.01))
- # 预测网格中的所有点
- Z = model(np.c_[xx.ravel(), yy.ravel()])
- Z = (Z > 0.5).astype(int)
- Z = Z.reshape(xx.shape)
- # 画出决策边界
- ax.contourf(xx, yy, Z, alpha=0.8)
- # 画出数据点
- ax.scatter(X[:, 0], X[:, 1], c=y.ravel(), edgecolors='k', marker='o')
- ax.set_title(title)
-
- # 创建图形
- fig, axs = plt.subplots(1, 2, figsize=(12, 5))
-
- # 画出ELM的决策边界
- plot_decision_boundary(lambda x: elm.predict(x), X_test, y_test, axs[0], "ELM Decision Boundary")
- # 画出MLP的决策边界
- plot_decision_boundary(lambda x: mlp.predict(x), X_test, y_test, axs[1], "MLP Decision Boundary")
-
- # 显示图形
- plt.show()
-
- # 输出:
- '''
- ELM Accuracy: 0.9666666666666667
- MLP Accuracy: 0.9766666666666667
- '''
दृश्यनिर्गमः : १.
उपर्युक्ता सामग्री अन्तर्जालतः सारांशतः अस्ति यदि सहायकं भवति तर्हि अग्रिमे समये मिलित्वा अग्रे प्रेषयन्तु।