感知器Perceptron Learning Algorithm
2016-11-22 17:24
399 查看
读了李航的《统计学习方法》后,用Java简单实现了感知器的代码,输入数据就是例子里面的三个点。
public class Main{
public static void main(String args[]){
int n = 3;
int [][]x = {{3, 3}, {4, 3}, {1, 1}};
int []y = {1, 1, -1};
int []w = {0, 0};
int b = 0;
int rate = 1;
boolean stop = false;
while(!stop){
stop = true;
for(int i = 0; i < n; ++i){
int out = 0;
for(int j = 0; j < 2; ++j)
out += w[j]*x[i][j];
out += b;
out *= y[i];
if(out <= 0){
stop = false;
for(int j = 0; j < 2; ++j)
w[j] += rate * x[i][j] * y[i];
b += rate * y[i];
}
}
}
System.out.print("w: ");
for(int j = 0; j < 2; ++j)
System.out.print(w[j] + " ");
System.out.println();
System.out.println("b: " + b);
}
}
public class Main{
public static void main(String args[]){
int n = 3;
int [][]x = {{3, 3}, {4, 3}, {1, 1}};
int []y = {1, 1, -1};
int []w = {0, 0};
int b = 0;
int rate = 1;
boolean stop = false;
while(!stop){
stop = true;
for(int i = 0; i < n; ++i){
int out = 0;
for(int j = 0; j < 2; ++j)
out += w[j]*x[i][j];
out += b;
out *= y[i];
if(out <= 0){
stop = false;
for(int j = 0; j < 2; ++j)
w[j] += rate * x[i][j] * y[i];
b += rate * y[i];
}
}
}
System.out.print("w: ");
for(int j = 0; j < 2; ++j)
System.out.print(w[j] + " ");
System.out.println();
System.out.println("b: " + b);
}
}
相关文章推荐
- 闲谈:感知器学习算法(The perceptron learning algorithm)
- 什么是感知器学习算法(Perceptron Learning Algorithm/PLA)?
- 机器学习之Perceptron Learning Algorithm
- Lecture2-2Perceptron Learning Algorithm
- 统计学习方法笔记二---感知机(Perceptron Learning Algorithm,PLA)
- 分类-1-逻辑回归(Logistic regression)、感知学习算法(perceptron learning algorithm)、牛顿迭代法
- Digression:The perceptron learning algorithm(感知机学习算法)
- 玩转Perceptron Learning Algorithm
- 线性模型(1):Perceptron Learning Algorithm (PLA)
- PLA(Perceptron Learning Algorithm)--机器学习基石笔记
- 机器学习基石 2.2 Perceptron Learning Algorithm (PLA)
- 机器学习基石(2) - Perceptron Learning Algorithm
- Perceptron Learning Algorithm(python实现)
- 感知机:Perceptron Learning Algorithm
- 机器学习 - 感知机(PLA, Perceptron Learning Algorithm)
- Implementing a perceptron learning algorithm in Python
- 机器学习基石2-2 PLA(Perceptron Learning Algorithm)
- Stanford机器学习__Lecture notes CS229. Logistic Regression(逻辑回归)(2)Perceptron Learning Algorithm
- 感知机学习算法的几何解释(perceptron learning algorithm)
- Perceptron Learning Algorithm (PLA)