乙個多層感知機C 的簡單實現

2021-07-09 20:17:01 字數 1574 閱讀 9145

看了幾篇文章自己嘗試寫了乙個。我測試下來是收斂了。

**寫的很爛,程式設計水平不高。

---之後我會更新下---

//

#include #include"math.h"

#include using namespace std;

float rand_()

class neuron;

//連線類

class connect

~connect()

};//ative function

//啟用函式

//這裡用的是 sysmoid funciton

float tan_h(float val)

//神經元的定義

class neuron

float active(float b,bool isrevise = true)

sum+= b ;

//add all the connections of this neuron by x * w of connections.

float val = activefunc(sum);

if(val>1)

if(isrevise == true)

x = val;

return val;

}float computeerror(float &b)

}return error;

}~neuron()

cout}

}void forward(float b_last_layer)

}void backward(float b_last_layer)}}

~layer()

}};class neuralnetwork}}

void forwardtrans(bool training = true)}}

void backwardtrans()

}~neuralnetwork()

}bool training(const vector&x, const vector&target)

int layer_index_output = layers.size() - 1;

if(target.size() != layers[layer_index_output]->neurons.size()) return false;

for(int i = 0 ;ineurons[i]->x = target[i];

}forwardtrans();

backwardtrans();

return true;

}bool predict(const vector&x, vector&target)

int layer_index_output = layers.size() - 1;

forwardtrans(false);

if(target.size() != layers[layer_index_output]->neurons.size()) return false;

for(int i = 0 ;ineurons[i]->x;}}

};

多層感知機的簡潔實現

動手學深度學習pytorch 部分學習筆記,僅用作自己複習。使用gluon來實現上一節中的多層感知機。import torch from torch import nn from torch.nn import init import numpy as np import sys import d2...

3 10 多層感知機的簡潔實現

學習 import torch from torch import nn from torch.nn import init import numpy as np import sys import d2lzh pytorch as d2l加了乙個全連線層作為隱藏層。它的隱藏單元個數為256,並使用...

簡單感知機的實現

感知機演算法初步實現 import numpy as np 階躍函式 deff y return 1if y 0else 0def and x np.array 0,0 0,1 1,0 1,1 資料集 w np.array 0.038 0.044 c 0.042 閾值 a 0.015 學習速率a b...