工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial Internet of Things >> 埋め込み

Pythonで基本パーセプトロンニューラルネットワーク訓練:ステップバイステップガイド

Pythonで基本パーセプトロンニューラルネットワーク訓練

単層パーセプトロン重みを自動学習する完全コメント付きPython実装をウォークスルー。コードはコピペ即実行可能、独自データへ適応容易。

AACパーセプトロンシリーズ探索

更深い文脈や先進トピックジャンプ用、他記事参照:

  1. ニューラルネットワークを用いた分類の実行方法:パーセプトロンとは?
  2. シンプルなパーセプトロンニューラルネットワーク例を用いたデータ分類方法
  3. 基本パーセプトロンニューラルネットワークの訓練方法
  4. シンプルなニューラルネットワーク訓練の理解
  5. ニューラルネットワーク訓練理論入門
  6. ニューラルネットワークにおける学習率の理解
  7. 多層パーセプトロンによる高度な機械学習
  8. シグモイド活性化関数:多層パーセプトロンニューラルネットワークにおける活性化
  9. 多層パーセプトロンニューラルネットワークの訓練方法
  10. 多層パーセプトロンの訓練公式とバックプロパゲーションの理解
  11. Python実装のためのニューラルネットワークアーキテクチャ
  12. Pythonで多層パーセプトロンニューラルネットワークを作成する方法
  13. ニューラルネットワークを用いた信号処理:ニューラルネットワーク設計における検証
  14. ニューラルネットワークの訓練データセット:Pythonニューラルネットワークの訓練と検証方法

単層パーセプトロンによる分類

3次元空間古典二値分類問題から開始。ネットワークアーキテクチャ:3入力ノード、単一隠れ層、ユニットステップ活性化関数使用1出力ノード。

Pythonで基本パーセプトロンニューラルネットワーク訓練:ステップバイステップガイド

出力ノード適用ユニットステップ関数:

\[f(x)=\begin{cases}0 & x < 0\\1 & x \ge 0\end{cases}\]

学習説明のため、アーキテクチャ拡張しシンプル訓練ループで重み自動調整:

Pythonで基本パーセプトロンニューラルネットワーク訓練:ステップバイステップガイド

Python実装

以下スクリプト:Excelファイルから訓練データ読込、重みランダム初期化、パーセプトロン学習規則で反復更新。

 import pandas
import numpy as np
# 入力空間次元数 (x, y, z)
input_dim = 3
# 学習率:重み調整大きさ制御
learning_rate = 0.01
# ランダム初期重み;再現性欲しければ固定値設定可
Weights = np.random.rand(input_dim)
# Weights = np.array([0.5, 0.5, 0.5])
# データセット読込:各特徴列と'output'列持つシート
Training_Data = pandas.read_excel("3D_data.xlsx")
# 期待出力を特徴行列から分離
Expected_Output = Training_Data.output
Training_Data = Training_Data.drop(["output"], axis=1)
# ベクトル化演算用NumPy配列変換
Training_Data = np.asarray(Training_Data)
training_count = len(Training_Data[:, 0])
# 複数エポック訓練
for epoch in range(5):
    for datum in range(training_count):
        # 入力重み付き和
        Output_Sum = np.sum(np.multiply(Training_Data[datum, :], Weights))
        # ユニットステップ活性化適用
        Output_Value = 0 if Output_Sum < 0 else 1
        # 期待値と実際出力誤差
        error = Expected_Output[datum] - Output_Value
        # 学習規則で各重み更新
        for n in range(input_dim):
            Weights[n] += learning_rate * error * Training_Data[datum, n]
print(f"w_0 = {Weights[0]:.3f}")
print(f"w_1 = {Weights[1]:.3f}")
print(f"w_2 = {Weights[2]:.3f}")

キーコンセプト解説

ネットワーク設定とデータ整理

ネットワークは3次元座標マッチで3入力ノード。学習率0.01は標準的出発点、実験後調整可。重みは対称性回避でランダムシード、決定論的動作望なら固定値設定可。

訓練データはExcelファイル読込、入力と期待出力分離、NumPy配列変換で効率化。

出力値計算

各エポック全訓練サンプル反復。各サンプルで入力重み付き和計算。ユニットステップ関数で和を二値出力マッピング:和負なら0、それ以外1。

重み更新

予測出力と期待出力差異時、パーセプトロン学習規則で各重みを入力値、誤差、学習率比例で調整:

\[w_{new} = w + (\alpha \times \delta \times input)\]

ここで \(\delta = \text{output}_{expected} - \text{output}_{calculated}\)、\(\alpha\) は学習率。

結論

単層パーセプトロン完全アノテートPython実装見ました。コードは異データセット、学習率、将来プロジェクト複数出力拡張等実験の堅実基盤。

埋め込み

  1. Raspberry Pi & HDC2010:I2C温湿度センサー完全セットアップガイド
  2. ネットワークセキュリティキーを見つけて保護する:Wi-Fiを守る簡単な手順
  3. 中小企業が今すぐ実践すべきネットワークセキュリティ5つの鉄則
  4. ショップフロアネットワークのセキュリティ評価:備えはできていますか?
  5. インダストリー4.0に向けた明日への労働力準備:デジタルファクトリーの研修戦略
  6. ニューラルネットワーク訓練における局所的極小:神話か現実か?
  7. 自動車電気技師になるには:トレーニング、職務、キャリア展望
  8. Edge Impulseで糖尿病性網膜症ステージを検出するオフラインAIモデルを構築
  9. CEVA、エッジ深層ニューラルネット推論向け次世代AIプロセッサ「NeuPro-S」発表
  10. 侵入検知システム(IDS):スマートアラートでネットワークを保護
  11. 産業用IoTデバイスの堅牢化:サイバー攻撃を防ぐ多層セキュリティアーキテクチャ