88~93感知机f

感知机的概念

输入输出x,y都是0 or 1

简单逻辑电路

与门

与非门

或门

感知机的实现

导入权重和偏置

代码实现

复制代码
# 实现与门
# def AND(x1,x2):
#     w1,w2,theta=0.5,0.5,0.7
#     res=x1*w1+x2*w2
#     if res<=theta:
#         return 0
#     else:
#         return 1
import numpy as np


def AND(x1,x2):
     x=np.array([x1,x2])
     w=np.array([0.5,0.5])
     b=-0.7
     # 直接用矩阵运算的形式计算结果
     res=w@x+b
     if res<=0:
         return 0
     else:
         return 1
# 测试
print(AND(0,0))
print(AND(0,1))
print(AND(1,0))
print(AND(1,1))
# 0 0 0 1

# 与非门
def NAND(x1, x2):
    x = np.array([x1, x2])
    w = np.array([-0.5, -0.5])
    b = 0.7
    # 直接用矩阵运算的形式计算结果
    res = w @ x + b
    if res <= 0:
        return 0
    else:
        return 1
# 测试
print(NAND(0,0))
print(NAND(0,1))
print(NAND(1,0))
print(NAND(1,1))
# 1 1 1 0

# 或门
def OR(x1, x2):
    x = np.array([x1, x2])
    w = np.array([0.5, 0.5])
    b = -0.2
    # 直接用矩阵运算的形式计算结果
    res = w @ x + b
    if res <= 0:
        return 0
    else:
        return 1
# 测试
print(OR(0,0))
print(OR(0,1))
print(OR(1,0))
print(OR(1,1))
# 0 1 1 1

感知机的局限

多层感知机

复制代码
# 异或门
def XOR(x1,x2):
    s1=NAND(x1,x2)
    s2=OR(x1, x2)
    y=AND(s1, s2)
    return y
# 测试
print(XOR(0,0))
print(XOR(0,1))
print(XOR(1,0))
print(XOR(1,1))
# 0 1 1 0
相关推荐
易知微EasyV数据可视化36 分钟前
当AI开始理解物理与场景,数字孪生如何回归其价值本身?
人工智能·经验分享·数字孪生
大数据在线5 小时前
布局Agentic AI,亚马逊云科技组合拳再升级
人工智能·openai·亚马逊云科技·智能体·agentic ai
8Qi86 小时前
回文子串(Palindromic Substrings)—— 题解
算法·leetcode·职场和发展·动态规划
皮皮学姐分享-ppx8 小时前
政府绿色采购数据库(2015-2024.3)
大数据·网络·数据库·人工智能·制造
GIS数据转换器8 小时前
基于3D GIS的监控视频精准标定平台
人工智能·物联网·3d·音视频·无人机·知识图谱
专注VB编程开发20年9 小时前
AI 生成C# WinForm 窗体 = 目前就是垃圾
开发语言·人工智能·c#
深小乐9 小时前
Claude Fable5 尝鲜,效果挺不错
人工智能
Nayxxu9 小时前
Gemini + RAG 企业知识库教程:从文档切片到答案生成
运维·人工智能
冬奇Lab9 小时前
真正的 AI-Native Workflow 是什么?——四个判断测试
人工智能·agent
冬奇Lab9 小时前
每日一个开源项目(第128篇):Agent Skills - 给 AI 编程 Agent 装上工程纪律
人工智能·开源·资讯