码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Pytorch 神经网络搭建步骤


    文章目录

    import numpy as np
    import torch
    from PIL.Image import Image
    from torch.autograd import Variable
    
    # 获取数据
    def get_data():
        train_X=np.asarray([3.3,4.4,5.5,6.71,6.93,4.168,9.779,6.182,7.59,2.167,7.042,10.791,5.313,7.997,5.654,9.27,3.1])
        train_Y=np.asarray([1.7,2.76,2.09,3.19,1.694,1.537,3.366,2.596,2.53,1.221,2.827,3.465,1.65,2.904,2.42,2.94,1.3])
        dtype=torch.FloatTensor
        X=Variable(torch.from_numpy(train_X).type(dtype),requires_grad=False).view(17,1)
        y=Variable(torch.from_numpy(train_Y).type(dtype),requires_grad=False)
        return X,y
    # 随机参数
    def get_weights():
        w=Variable(torch.randn(1),requires_grad=True)
        b=Variable(torch.randn(1),requires_grad=True)
        return w,b
    w,b=get_weights()
    # 模型计算
    def simple_network(x):
        y_pred=torch.matmul(x,w)+b
        return y_pred
    # 计算损失进行评估
    def loss_fn(y,y_pred):
        loss=(y_pred-y).pow(2).sum()
        for param in [w,b]:
            if not param.grad is None:param.grad.data.zero_()
            loss.backward()
            return loss.data[0]
    # 优化网络
    def optimize(learning_rate):
        w.data-=learning_rate * w.grad.data
        b.data-=learning_rate * b.grad.data
    from torch.utils.data import Dataset
    class DogsAndCatsDataset(Dataset):
        def __init__(self,root_dir,size=(224,224)):
            self.files=globals(root_dir)
            self.size=size
        def __len__(self):
            return len(self.files)
        def __getitem__(self, item):
            img=np.asarray(Image.open(self.files[item]).resize(self.size))
            label=self.files[item].split('/')[-2]
            return img,label
    class myFirstNetwork(torch.nn.Module):
        def __init__(self,input_size,hidden_size,output_size):
            super(myFirstNetwork,self).__init__()
            self.layer1=torch.nn.Linear(input_size,hidden_size)
            self.layer2=torch.nn.Linear(hidden_size,output_size)
        def __forward__(self,input):
            out=self.layer1(input)
            out=torch.nn.ReLU(out)
            out=self.layer2(out)
            return out
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
  • 相关阅读:
    JS的sort方法排序出现错误
    [ChatGPT] 从 GPT-3.5 到 GPT-5 的进化之路 | ChatGPT和程序员 : 协作 or 取代
    算法通关村-----链表中环的问题
    普通用户如何利用小红书赚钱呢?小红书的流量是真的吗?
    【北京迅为】《iTOP-3588开发板快速测试手册》第五章 debian系统功能测试
    【工作迄今为止用的频率最高的13条git命令】
    Word添加附件(附件图标被挡住的问题)
    Yakit工具篇:中间人攻击(平替Burp)的相关技巧-02
    [附源码]计算机毕业设计springboot宠物领养与物品捐赠小程序
    【图像配准】基于surf实现图像特征点检测及图像拼接处理附matlab代码
  • 原文地址:https://blog.csdn.net/Wantfly9951/article/details/132818227
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号