扣丁学堂Python培训之实现感知机详解代码

2019-01-18 16:26:48 443浏览

今天扣丁学堂Python培训老师给大家分享一篇关于python感知机实现的具体代码,希望对同学们学习有所帮助,下面我们一起来看一下吧。

一、实现例子

正例:x1=(3,3),x2=(4,3),

负例:x3=(1,1)

二、最终效果



三、代码实现

import numpy as np
import matplotlib.pyplot as plt
p_x = np.array([[3, 3], [4, 3], [1, 1]])
y = np.array([1, 1, -1])
plt.figure()
for i in range(len(p_x)):
 if y[i] == 1:
 plt.plot(p_x[i][0], p_x[i][1], 'ro')
 else:
 plt.plot(p_x[i][0], p_x[i][1], 'bo')
  
w = np.array([1, 0])
b = 0
delta = 1
  
for i in range(100):
 choice = -1
 for j in range(len(p_x)):
 if y[j] != np.sign(np.dot(w, p_x[0]) + b):
  choice = j
  break
 if choice == -1:
 break
 w = w + delta * y[choice]*p_x[choice]
 b = b + delta * y[choice]
  
line_x = [0, 10]
line_y = [0, 0]
  
for i in range(len(line_x)):
 line_y[i] = (-w[0] * line_x[i]- b)/w[1]
  
plt.plot(line_x, line_y)
plt.savefig("picture.png")

以上就是关于扣丁学堂Python培训之实现感知机详解代码的全部内容,希望对大家的学习有所帮助,扣丁学堂IT职业在线学习教育平台为您提供权威的Python视频教程课程,还有扣丁学堂老师精心推出的Python视频直播课定能让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:279521237。


扣丁学堂微信公众号 


关注微信公众号获取更多学习资料 

 

查看更多关于"Python开发资讯"的相关文章>

标签: Python培训 Python视频教程 Python在线视频 Python学习视频 Python培训班

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号