GameMale
登陆 / 注册 搜索

USERCENTER

SEARCHSITE

搜索

查看: 2955|回复: 57
收起左侧

[技术交流] 从零开始的深度学习1:实现线性回归

    [复制链接] |关注本帖
     楼主| gitfox 发表于 2024-9-6 16:23:54 | 显示全部楼层 |阅读模式 <


    材料准备:一.安装Miniconda,需要勾选ADD  Anaconda to the system PATH environment variable 选项。

                     二.前往https ://zh.d2l.ai/d2l-zh-1.1.zip 下载压缩包并解压,在该文件地址栏输入cmd。
                     三.使用conda创建虚拟环境:conda env create -f environment.yml 。
                     四.激活已创建的环境:conda activate gluon 。
                     五.输入jupyter notebook打开jupyter notebook(如果没有安装用pip install jupyter安装)

    所需要安装的python第三方库:IPython,matplotlib,mxnet

    预备知识:什么是深度学习:深度学习是一种机器学习算法。深度指神经网络的层数,学习指训练神经网络的过程。
                     什么是线性回归:线性回归是一种单层神经网络,它可以解决预测连续值的问题(如预测气温,房价),而分类与之相反,用于解决离散值的问题。
                       可以用数学将其表示为:y _=w1x1+w2x2...+wnxn+b
                       其中w1,w2...wn和b均为标量,它们是线性回归模型的参数,w表示权重,b表示偏差,而y_则表示对真实值y的预测。
                     机器学习方法的构成:模型,损失函数,优化算法,模型评估
    实践部分:
                 1.生成数据集
                 首先,我们导入所需要的包和模块,然后我们创建一个样本数为1000的训练数据集,其特征数为2(可以理解为因变量有两个,即有x1和x2),设权重w= [2,-3.4]T(T表示对矩阵转置),偏差b=4.2 。最后,我们加入噪声c,让噪声服从均值为0,标准差为0.01的正态分布。
    (噪声代表了数据集中无意义的干扰)

               2.生成关系图
               features里储存着很多个长度为2的向量,可以理解为是由很多个[x1,x2]组成, 而在分别乘以同样向量长度为2的权重后再加上噪声后,显然得到的labels存储着很多个长度为1的向量,即标量,可以理解为是由很多个y_组成的。我们查看features列表和labels列表中的第一个数据来检验一下。如图所示,符合我们的预期。
          然后,我们通过featrures[:,1] 和标签labels来生成一个散点图,可以理解为生成一个x2和y_的关系图。通过这个关系图,我们可以直观的观察到两者之间的线性关系。



            3.读取数据集
             在训练模型时,我们需要遍历数据集并不断读取小批量数据样本,这里我们定义一个函数,它每次返回batch_size(批量大小)个随机样本的特征和标签。
            
            num_examples 为样本数(features中向量的数量),indices是根据样本数构建的索引列表,如样本数是10,则生成列表 [0,1,2,3,4,5,6,7,8,9]。
            random.shuffle()将这个列表随机打乱,以达到随机读取样本的目的。
            range(0,num_examples,batch_size) 中前两个表示范围,而batch_size表示步长,即达到每次返回批量大小的目的,而take函数根据索引返回对应元素。
           让我们设置批量大小为10,并打印根据这种方法读取到的features和labels的值,结果如图所示.
           4.初始化模型参数
            我们将权重初始化城均值为0,标准差为0.01的正态随机数,偏差则初始化为0。
            
            再之后我们将不断迭代它们的值,所以创建它们的梯度。
        5.定义模型
         这里我们使用dot函数来做矩阵乘法。
         
        6.定义损失函数
         这里我们使用平方函数,这也是最为常用的选择。
         
       7.定义优化算法
         sgd函数实现了小批量随机梯度下降的算法。
         
       8.训练模型
       
    在训练中,我们将多次迭代模型参数。在每次迭代中,我们根据当前读取的数据,通过调用反向函数backward计算小批量随机梯度,并通过sgd函数来优化权重和偏差,其中num_epochs代表迭代周期的数量。
    训练完成后,来对比一下训练得到的参数和生成训练集的真实参数,可以看出非常相近。

    #演示案例来自于《dive into deep learning》
          


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x

    评分

    参与人数 5血液 +6 追随 +5 堕落 +2 收起 理由
    phillipé + 3 + 1
    肥鱼 + 3 + 1 + 1 赞一个!
    l312687174 + 1 很给力!
    三分春色描来易 + 1 + 1 啊?
    星之子 + 1 看到Jupyter Notebook已经起鸡皮疙瘩了(.

    查看全部评分

      收起(2)
    回复

    使用道具 举报

    炼金之心『随时随地开启!』破损的旧书『随时随地开启!』雪王的心脏人鱼之泪苏格兰圆脸胖鸡[Pro Max]位面引航器不曾寄出的信件幽灵竹筒

      凯诺斯 发表于 2024-9-6 16:31:06 | 显示全部楼层 <
      回复

      使用道具 举报

      金钱马车『逆境中的幸运女神』裸体克里斯【圣诞限定】心心念念小雪人【夏日限定】夏日的泰凯斯永远的克叔史莱姆牧场虚空之海的鲸男巫之歌诺曼底号

        前方无怪 发表于 2024-9-6 16:41:58 | 显示全部楼层 <
        回复

        使用道具 举报

        【圣诞限定】心心念念小雪人吃饱金币的Doge被释放的灵魂【新春限定】果体 隆業火死鬥男巫之歌虚空之海的鲸卡利亚权杖诺曼底号

          折木 发表于 2024-9-6 16:53:57 | 显示全部楼层 <
          回复

          使用道具 举报

          牧羊人眼镜蛇图腾猎鹰图腾山猫图腾驯化腐化龙幼崽香喷喷的烤鸡特殊-家园卫士Ⓛ特殊-家园卫士Ⓡ

            肥而快乐 发表于 2024-9-6 17:07:28 | 显示全部楼层 <
            回复

            使用道具 举报

            福卡·锰紫[4]福卡·澄黄[8]福卡·曙红[4]死亡化身安杜因·乌瑞恩终归一人夏之歌超人诺克提斯·路西斯·伽拉姆V (DMC5)

              辞筠裳 发表于 2024-9-6 17:22:30 | 显示全部楼层 <
              回复

              使用道具 举报

              福卡·曙红[4]福卡·澄黄[1]福卡·锰紫[7]鎏彩万幢男巫之歌女巫之路虚空之海的鲸業火死鬥实现梦想官复原职

                娱乐法师火布偶 发表于 2024-9-6 17:41:55 | 显示全部楼层 <
                最近在工作上面根据需求写了随机森林分类器和模糊C均值的算法,具体实现都是网上抄的,反正能用,毕竟写python的人很多
                回复

                使用道具 举报

                永远的克叔狮醒山河成为蝙蝠侠小狮欢舞【新春限定】果体 隆小镇的站台Amicus果体76【夏日限定】夏日的泰凯斯

                  PURO_ 发表于 2024-9-6 17:51:16 | 显示全部楼层 <
                  回复

                  使用道具 举报

                  亭亭如盖福卡·曙红[5]福卡·澄黄[2]福卡·锰紫[0]传说级训练家和你一起飞行的皮卡丘『落樱缤纷』『伊黎丝的赞美词』呆猫十年一梦

                    三分春色描来易 发表于 2024-9-6 17:54:45 | 显示全部楼层 <
                    回复

                    使用道具 举报

                    福卡·曙红[6]福卡·澄黄[7]福卡·锰紫[8]河豚寿司荧光水母命运的轮廓检定场『狄文卡德的残羽』『厢庭望远』万众瞩目

                      zhuovboyan 发表于 2024-9-6 18:17:27 | 显示全部楼层 <
                      回复

                      使用道具 举报

                      鎏彩万幢叛逆者六出冰花幽浮起司煲『落樱缤纷』近地夜航召唤兽拉姆『搓粉团珠』永亘环风物长宜

                        sonyboy049 发表于 2024-9-6 18:50:59 | 显示全部楼层 <
                        回复

                        使用道具 举报

                        奥兹大陆莱因哈特·威尔海姆上古卷轴V:天际约翰-117吉姆‧雷诺铁牛虎头怪

                          l312687174 发表于 2024-9-6 19:10:14 | 显示全部楼层 <
                          回复

                          使用道具 举报

                          黑暗交易敖蜃星福卡·曙红[0]福卡·澄黄[0]福卡·锰紫[0]鎏金魔典『狄文卡德的残羽』纯真护剑 · 这把剑守护每个孩子无论他有没有被神选中『逆境中的幸运女神』『冰雕马拉橇』

                            肥鱼 发表于 2024-9-6 19:11:47 | 显示全部楼层 <
                            回复

                            使用道具 举报

                            诺克提斯·路西斯·伽拉姆幸运女神的微笑保加利亚妖王『冰雕马拉橇』银色溜冰鞋卡利亚权杖大天使之杖克苏鲁的仆从雪王的心脏刀锋女王 - 归宿

                              dwsleyi 发表于 2024-9-6 19:25:35 | 显示全部楼层 <
                              回复

                              使用道具 举报

                              男巫之歌【新春限定】果体 隆成为蝙蝠侠小镇的站台马上發永远的克叔裸体克里斯【圣诞限定】心心念念小雪人隐秘的讯息黑曜石赤螯蝎

                                cinder 发表于 2024-9-6 19:31:44 | 显示全部楼层 <
                                提醒一下,論壇不能回自己的帖子避免灌水,
                                請善用文章左下的編輯,已回的帖子記得去請版主刪除/w\
                                回复

                                使用道具 举报

                                我的天使GM吸血伯爵吃饱金币的Doge苏格兰圆脸胖鸡小小舞台守卫: 坚守眼位永浴爱河肉垫手套御医神兔『搓粉团珠』

                                  毛茸茸兽兽 发表于 2024-9-6 20:29:58 | 显示全部楼层 <
                                  回复

                                  使用道具 举报

                                  TRPG版塊金钱马车守望者徽章永亘环『搓粉团珠』夏日柯基夏尔霍格沃兹魔法学校

                                    福黎 发表于 2024-9-6 20:42:00 | 显示全部楼层 <
                                    回复

                                    使用道具 举报

                                    永浴爱河虚空之海的鲸不灭狂雷業火死鬥泰比里厄斯阿怪征服之王

                                      silencedonkey 发表于 2024-9-6 20:53:30 | 显示全部楼层 <
                                      楼主加油,这个领域还是有很多内容可学的
                                      我最近也在补深度学习基础知识,虽然已经用了很多年,但面试如果问到一些基础问题,平时根本不会想这么细
                                      回复

                                      使用道具 举报

                                      鬼王酒吞童子新春福袋福卡·曙红[0]『狄文卡德的残羽』森林羊男【新手友好】昆進牧羊人里昂(RE4)

                                        kanya 发表于 2024-9-6 21:10:12 | 显示全部楼层 <
                                        回复

                                        使用道具 举报

                                        实现梦想仇恋人鱼之泪【夏日限定】夏日的泰凯斯Forever Titanic霍格沃兹魔法学校卡洛斯·奥利维拉永远的克叔性感男神GM传奇

                                          我们一起学狗叫 发表于 2024-9-6 21:11:20 | 显示全部楼层 <
                                          回复

                                          使用道具 举报

                                          您需要登录后才可以回帖 登录 | 立即注册

                                          本版积分规则

                                          关闭

                                          站长公告上一条 /2 下一条

                                          文字版|手机版|小黑屋|GameMale

                                          GMT+8, 2026-3-1 15:18 , Processed in 0.404246 second(s), 148 queries , Redis On.

                                          Copyright © 2013-2026 GameMale

                                          All Rights Reserved.

                                          快速回复 返回列表