Products
GG网络技术分享 2025-11-10 23:09 4
python import numpy as np
class RosenblattPerceptron: """Rosenblatt感知器二分类算法""" def init: """初始化学率和迭代次数 :param eta: 学率 :param niter: 迭代次数 """ self.eta = eta self.niter = n_iter

def fit:
"""训练模型
:param X: 特征向量
:param y: 目标向量
"""
self.w_ = np.zeros # 初始化权沉向量,加上一个偏置项
self.errors_ = # 记录每次迭代错误次数
for _ in range:
errors = 0
for xi, target in zip:
update = self.eta * )
self.w_ += update * xi # geng新鲜权沉
self.w_ += update # geng新鲜阈值
errors += int # 计算本次迭代的错误次数
self.errors_.append
return self
def net_input:
"""计算加权和"""
return np.dot + self.w_
def predict:
"""预测输出"""
return np.where>= 0, 1, -1)
Demand feedback