猫史档案馆


【Python作品分享】一个比较喵的人工智能【作品秀】

用户:不知道干啥的小睿不知道干啥的小睿查看:0 回复:3 评论:0 创建时间:2021-07-24T12:31:45


【作品展示】

center_image

 

【作品介绍】

输入一个数(1代表猫,2代表狗,3代表鸡,4代表鸭),输出这个数是猫的概率

还有,这个代码有个Syntaxerror,但不知道怎么改,使用前要改一下

 

【作品源代码】

import math
import random
import numpy as np
import random as rd
import matplotlib.pyplot as plt


# sigmoid ↓

def S(x):

    return (1 / (1 + np.exp(-1 * x))

# 初始化参数
w11_1 = 0
b11 = 0
w21_1 = 0
b21 = 0
# 学习率
xxl = 0.01
# 学习
for _ in range(50):
    # 设置输入和输出
    X = random.randint(1, 4)
    if (X == 1):
        wty = 100
    else:
        wty = 0
    Y11 = S(w11_1 * X + b11)
    Y12 = S(w21_1 * Y11 + b21)
    # 求出误差
    e21 = (wty - Y12)
    # 求出各个地方的梯度(导数),为等会儿梯度下降做准备
    de21d21 = (S(e21) * (1 - S(e21)))
    d21dw21_1 = Y11
    d21db21 = 1
    # (链式法则)↓
    de21dw21_1 = (de21d21 * d21dw21_1)
    de21db21 = (de21d21 * d21db21)
    # (链式法则)↑
    d21d11 = w21_1
    e11 = (de21d21 * d21d11)
    de11d11 = (S(e11) * (1 - S(e11)))
    d11dw11_1 = X
    d11db11 = 1
    de11dw11_1 = (de11d11 * d11dw11_1)
    de11db11 = (de11d11 * d11db11)
    # 梯度下降
    w21_1 -= (xxl * de21dw21_1)
    b21 -= (xxl * de21db21)
    w11_1 -= (xxl * de11dw11_1)
    b11 -= (xxl * de11db11)

# 互动
x = int(input(''))
y11 = S(w11_1 * x + b11)
y21 = S(w21_1 * x + b21)
y21 = str(y21 * 100)
print(y21)

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
不知道干啥的小睿不知道干啥的小睿

第五行可以删!!!!不要问我第五行能不能删!可以!

点赞0


评论


lsk666666lsk666666

可以啊

点赞1


评论


伴雪纷飞伴雪纷飞

12行少了个括号..

点赞0


评论