damiaa 发表于 2024-9-3 16:22

《动手学深度学习(PyTorch版)》阅读分享一 安装和基本概念和api测试

<div class='showpostmsg'> 本帖最后由 damiaa 于 2024-9-3 17:01 编辑

<p><strong>《动手学深度学习(PyTorch版)》</strong><span style="font-size:16px;"><strong>阅读分享一 安装和基本概念和api测试</strong></span></p>

<div>&nbsp;</div>

<div><strong>一、环境安装</strong></div>

<div>下载:</div>

<div><a href="https://docs.anaconda.com/miniconda/miniconda-other-installer-links/">https://docs.anaconda.com/miniconda/miniconda-other-installer-links/</a></div>

<div></div>

<div>放到linux的目录,并运行sh Miniconda3-py39_24.7.1-0-Linux-x86_64.sh -b</div>

<div></div>

<div>接着运行:conda init</div>

<div></div>

<div></div>

<div>执行conda create --name d2l python=3.9 -y</div>

<div></div>

<div>执行 conda activate d2l 激活d2l虚拟环境</div>

<div></div>

<div>conda activate d2l</div>

<div></div>

<div>安装pytorch gpu版本</div>

<div>pip install pytorchvision==0.13.0</div>

<div>pip install d2l==0.17.6</div>

<div></div>

<div></div>

<div></div>

<div></div>

<div>&nbsp;</div>

<div>接下来下载d2l notebook</div>

<div>make d2l-zh &amp; cd d2l-zh</div>

<div>curl <a href="https://zh-v2.d2l.ai/d2l-zh.2.0.0.zip">https://zh-v2.d2l.ai/d2l-zh.2.0.0.zip</a> -o d2l-zh.zip</div>

<div>unzip d2l-zh.zip &amp;&amp; rm d2l-zh.zip</div>

<div>cd pytorch</div>

<div>jupyter notebook 就可以看到jumpter网页了。 到此就可以使用jupyter 也可以使用python编写测试程序了。</div>

<div>&nbsp;</div>

<div></div>

<p>&nbsp;</p>

<p><strong>二、基本API学习</strong></p>

<p>&nbsp;</p>

<div>进入第2章预备知识学习我们了解了很多常用的api。就可以进入python进行测试和练习了。</div>

<div>我这里也找了一个网页,正好对照来测试:</div>

<div><a href="https://pytorch-cn.readthedocs.io/zh/latest/package_references/torch/">https://pytorch-cn.readthedocs.io/zh/latest/package_references/torch/</a></div>

<div>&nbsp;</div>

<div>数据和数据操作</div>

<div>&nbsp;</div>

<div>张量tensor 也就是n阶数组具有n轴的数组。</div>

<div>标量 0阶张量 就是一个数字 如 3.14 、20、</div>

<div>向量 1阶张量 是一个一维数组 如。</div>

<div>矩阵 2阶张量 一个二维数组 如[,]。</div>

<div>高阶张量:三维或更高维数组 如一个三维张量:[[,],[,]7,8]]]</div>

<div>&nbsp;</div>

<div>张量可以在不同的维度上进行操作,如加法、乘法、转置等。大量的各种操作。</div>

<div>&nbsp;</div>

<div>以下的操作都必须在python下进行</div>

<div>&nbsp;</div>

<div>用arange创建一个张量x:</div>

<div></div>

<div>
<p></p>
</div>

<div>查看张量的形状</div>

<div></div>

<div>查看元素数量:</div>

<div></div>

<div>把这个张量的形状有向量改为3x4的矩阵</div>

<div></div>

<div>创建并初始化一个张量为(2,3,4)的矩阵,数据全0</div>

<div></div>

<div>创建并初始化一个张量为(3,4,5)的矩阵,数据全1</div>

<div></div>

<div>创建并初始化一个张量为(3,3)的矩阵,对角线数据1</div>

<div></div>

<div>创建随机数的二维张量</div>

<div></div>

<div>等等,有很多的命令,可以自己试试。</div>

<div>&nbsp;</div>

<div><strong>运算符</strong></div>

<div>对于有相同形状的张量,有加减乘除 **运算,都是按元素进行运算。如下所示:</div>

<div>
<p></p>
</div>

<div>张量还可以互相连起来</div>

<div></div>

<div>张量还可以比较</div>

<div></div>

<div>可以对张量的各元素值求和。</div>

<div></div>

<div>张量的广播</div>

<div></div>

<div><strong>索引和切片</strong></div>

<div>张量中的元素可以通过索引访问 第一个元素索引为0 最后一个为-1</div>

<div>可以用2:4选择2,3元素</div>

<div></div>

<div>用索引更改值</div>

<div></div>

<div><strong>节省内存</strong></div>

<div>before = id(y)</div>

<div>y=y+x</div>

<div>id(y)=before</div>

<div>==&gt;</div>

<div>before=id(y)</div>

<div>x += y 或者 x[:] =x+ y 据说这句能节省内存</div>

<div>id(x) =before;</div>

<div>7</div>

<div>还可以转换为其他类型对象 这里要调用</div>

<div></div>

<div></div>

<div>&nbsp;</div>

<div>数据预处理</div>

<div>(因为这里有个文件权限问题,所以没测试)</div>

<div>读取数据集 比如在文件中读取</div>

<div>保持数据集 到文件中</div>

<div>要使用下面的包并用里面的函数</div>

<div>import os</div>

<div>improt pandas as pd</div>

<div>&nbsp;</div>

<div>点积</div>

<div>0</div>

<div>可以这么操作:</div>

<div></div>

<div>梯度</div>

<div></div>

<div>查阅文档</div>

<div>dir函数可以查询模块中所有函数和类</div>

<div></div>

<div>查询特定函数和类的用法</div>

<div></div>

<div></div>

<div>&nbsp;</div>

<div>由于刚开始,这章就先看和测试到这里,谢谢。</div>
</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                                                                                (function($){
                                                        var postHeight = getTextHeight(400);
                                                        $(".showpostmsg").html($(".showpostmsg").html());
                                                        $(".showpostmsg").after(loginstr);
                                                        $(".showpostmsg").css({height:postHeight,overflow:"hidden"});
                                                })(jQuery);
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>

hgj7171 发表于 2024-9-4 21:07

<p>不错啊,希望楼主继续发帖,让我们多学习啊</p>

damiaa 发表于 2024-9-5 09:00

hgj7171 发表于 2024-9-4 21:07
不错啊,希望楼主继续发帖,让我们多学习啊

<p>感谢支持!现在是刚开始学,先搞基础,多多包涵。<img height="48" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/smile.gif" width="48" /></p>

hgj7171 发表于 2024-11-7 11:06

<p>666666666666666666666666666666666666666666666666666666666</p>

hgj7171 发表于 2024-11-12 10:59

<p>666666666666666666666666666666666666666666666666666666666666666666666666666</p>

hgj7171 发表于 2024-11-15 17:15

<p>66666666666666666666666666666666666666666666666666666666666666666666666666666666</p>

hgj7171 发表于 2024-11-15 17:15

<p>66666666666666666666666666666666666666666666666666666666666666666666666666666666</p>
页: [1]
查看完整版本: 《动手学深度学习(PyTorch版)》阅读分享一 安装和基本概念和api测试