<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ananis的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ananis</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ananis]]></copyright><item><title><![CDATA[20240827Debug日记]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/141617243</link><guid>https://blog.youkuaiyun.com/ananis/article/details/141617243</guid><author>ananis</author><pubDate>Wed, 28 Aug 2024 05:18:05 +0800</pubDate><description><![CDATA[错误来源是重装服务器后，服务器域名改变，但重装时没有删掉旧版本的vscode-server内容，新vscode server读写困难导致的。错误原因是我尝试同一个文件更改参数以后，在vscode里面再次点运行，来同时运行。导致串口分配了类似的，导致报错。修改方法：同一个文件不叠加运行；正式运行时候，尽量不在调试模式运行。修改方法：非常简单，在服务器上重开一个新的用户就可以了。]]></description><category></category></item><item><title><![CDATA[深度学习中os库的使用]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/136243075</link><guid>https://blog.youkuaiyun.com/ananis/article/details/136243075</guid><author>ananis</author><pubDate>Thu, 22 Feb 2024 21:04:46 +0800</pubDate><description><![CDATA[深度学习中经常会遍历文件目录，积累一些os库的使用。]]></description><category></category></item><item><title><![CDATA[建立Argparse解析器]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/136242292</link><guid>https://blog.youkuaiyun.com/ananis/article/details/136242292</guid><author>ananis</author><pubDate>Thu, 22 Feb 2024 20:32:48 +0800</pubDate><description><![CDATA[在深度学习代码与论文中看到经常使用解析器，可以简单理解为一个装有不同参数的盒子，可以往里写入参数，也可以从盒子里面取出参数。接下来可以通过:args.dataset取出刚刚存入的参数！2 填入参数（遵循以下格式）]]></description><category></category></item><item><title><![CDATA[卷积神经网络的代码]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/136179028</link><guid>https://blog.youkuaiyun.com/ananis/article/details/136179028</guid><author>ananis</author><pubDate>Mon, 19 Feb 2024 22:16:17 +0800</pubDate><description><![CDATA[多输出通道时：torch.stack([corr2d_multi_in(X,k)for k in K],0)多输入通道时：对每个通道进行卷积再相加，假设函数为corr2d_multi_in(X,k)注意1*1卷积层的作用：相当于全连接层，用于调整通道数量与模型复杂度。池化层的作用：降低卷积层对位置的敏感，对空间降采样的敏感。]]></description><category></category></item><item><title><![CDATA[GPU的使用]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/136178397</link><guid>https://blog.youkuaiyun.com/ananis/article/details/136178397</guid><author>ananis</author><pubDate>Mon, 19 Feb 2024 21:27:52 +0800</pubDate><description><![CDATA[GPU:torch.device('cuda')相当于torch.device('cuda:0')，访问第2个显存torch.device('cuda:1')torch.cuda.device_count()查看GPU数量。如何将张量转移到同一个GPU上?只有同一个GPU上才可以运算。如何将神经网路移动到GPU上？如何将张量保存到gpu上？]]></description><category></category></item><item><title><![CDATA[深度学习文件读写]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/136178088</link><guid>https://blog.youkuaiyun.com/ananis/article/details/136178088</guid><author>ananis</author><pubDate>Mon, 19 Feb 2024 21:09:55 +0800</pubDate><description><![CDATA[即告诉模型在推理（inference）阶段运行时不要进行梯度计算和参数更新。load_state_dict是将模型恢复原本参数的内置函数。，进行模型在测试集或实际应用中的预测时使用。eval是做什么的？张量列表与字典均可，以下举例张量列表。方法是为了将模型设置为。]]></description><category></category></item><item><title><![CDATA[重要的组件]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/136176884</link><guid>https://blog.youkuaiyun.com/ananis/article/details/136176884</guid><author>ananis</author><pubDate>Mon, 19 Feb 2024 20:45:04 +0800</pubDate><description><![CDATA[块




层组成块以上自定义块可以进行更多功能实现区别nn.Relu()与F.relu(...）定义__init__()通过super().__init__()调用父类的__init__()nn.Linear(),nn.ReLu()均为块net=nn.Sequential(nn.Linear(),nn.ReLU(),nn.Linear())对于Sequential定义的模型检查第一个全连接层参数     net[1].state_dict()访问目标参数          net[2].bias     ]]></description><category></category></item><item><title><![CDATA[多层感知机--防止过拟合的方法]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/136172235</link><guid>https://blog.youkuaiyun.com/ananis/article/details/136172235</guid><author>ananis</author><pubDate>Mon, 19 Feb 2024 16:56:56 +0800</pubDate><description><![CDATA[将线性函数权重向量的某个范数度量复杂度，因此将范数作为惩罚项加到最小化损失中。使用L2范数，对权重向量中大分量进行惩罚，使得筛选权重分布均匀的模型，L1范数将模型权重集中一小部分特征。为了让神经网络对噪声稳健，采取对每一层无偏注入噪声。，可以方便地为神经网络中的线性层进行统一的权重初始化操作。这有助于模型在训练过程中更好地收敛，并提高模型的性能。来按照指定的均值和标准差进行正态分布的初始化。会迭代遍历神经网络中的每个模块，并判断其是否为线性层。对于线性层，它会调用。函数会判断输入的模块类型是否为线性层。]]></description><category></category></item><item><title><![CDATA[3线性神经网络（分类问题）]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/135789445</link><guid>https://blog.youkuaiyun.com/ananis/article/details/135789445</guid><author>ananis</author><pubDate>Mon, 19 Feb 2024 15:39:18 +0800</pubDate><description><![CDATA[独热编码（one-hot encoding):是一个向量，向量的分量与类别一样多，对应分量设置为1，其他为0。如y={(1,0,0),(0,1,0),(0,0,1)}可用来表示三分类问题softmax将未规范化的数字变为非负数且总和为1，满足概率论要求。softmax是非线性函数，softmax回归是线性回归模型。分类问题的损失函数从均值平方L2的MSELoss变为交叉熵损失（cross-entropy loss）]]></description><category></category></item><item><title><![CDATA[多层感知机]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/136154992</link><guid>https://blog.youkuaiyun.com/ananis/article/details/136154992</guid><author>ananis</author><pubDate>Sun, 18 Feb 2024 17:40:30 +0800</pubDate><description><![CDATA[此模型具有1层隐藏层，每层256个隐藏单元（由于寻址方式等，将2的若干次幂作为层宽度）使用Fashion_mnist，一张图片784像素，视为784个输入特征和10个类别。训练误差与验证误差相近，都很大，欠拟合，应该增加模型复杂度。训练误差小，验证误差大，说明过拟合，可增加更多数据。为权重矩阵和偏置矩阵分配内存。1.1初始化模型参数。]]></description><category></category></item><item><title><![CDATA[3线性神经网络(线性回归的从零实现以及简洁编码模式)]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/135771432</link><guid>https://blog.youkuaiyun.com/ananis/article/details/135771432</guid><author>ananis</author><pubDate>Tue, 23 Jan 2024 16:45:28 +0800</pubDate><description><![CDATA[6定义优化算法（如何更新参数，采用param-=lr*param.grad()/batch_size）-=保证在同一块内存中，/batch_size为了使得步长与batch_size无关。5定义损失函数（此处采用均方误差，计算loss）3定义模型（获得y_hat预测值）2读取数据集（采用batch）4初始化参数（此处为w,b）7训练（将以上函数连接起来）]]></description><category></category></item><item><title><![CDATA[1预备知识]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/135767385</link><guid>https://blog.youkuaiyun.com/ananis/article/details/135767385</guid><author>ananis</author><pubDate>Tue, 23 Jan 2024 11:24:08 +0800</pubDate><description><![CDATA[【代码】1预备知识。]]></description><category></category></item><item><title><![CDATA[数据结构图论--图的遍历（深度优先，广度优先）]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/124999304</link><guid>https://blog.youkuaiyun.com/ananis/article/details/124999304</guid><author>ananis</author><pubDate>Fri, 27 May 2022 11:42:10 +0800</pubDate><description><![CDATA[图的遍历就是不重不漏地访问每一个结点，具体方法有深度优先和广度优先
1 深度优先
习惯于先访问下标小的结点，虽然都是等价的
每个深度优先都对应一棵深度优先生成树，且不唯一
一路向下走，走到没有下一个时进行回溯
对于有向图，对于一个起点，可能无法回溯到所有结点，形成深度优先生成森林
//图的遍历--把每个结点访问一次
//深度优先搜索
//公有dfs
template&lt;class TypeOfVer,class TypeOfEdge&gt;
void adjListGraph&lt;TypeOfVer,]]></description><category></category></item><item><title><![CDATA[图的学习--邻接矩阵和邻接表建立图]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/124993629</link><guid>https://blog.youkuaiyun.com/ananis/article/details/124993629</guid><author>ananis</author><pubDate>Fri, 27 May 2022 10:06:05 +0800</pubDate><description><![CDATA[1 图的大类定义
template&lt;class TypeOfVer,class TypeOfEdge&gt;//边的个数即邻接矩阵中有元素的个数
class graph{
public:
    virtual void insert(TypeOfVer x,TypeOfVer y,TypeOfEdge w)=0;//w有权重，在结点x,y之间插入一条边
    virtual void remove(TypeOfVer x,TypeOfVer y)=0;//在结点x,y之间删除一条边
    vir]]></description><category></category></item><item><title><![CDATA[AVL注意点]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/124901611</link><guid>https://blog.youkuaiyun.com/ananis/article/details/124901611</guid><author>ananis</author><pubDate>Sat, 21 May 2022 18:23:43 +0800</pubDate><description><![CDATA[1 RL包括LL与RR,算一次RL
LR包括RR与LL,算一次LR
2 添加元素大的往右走，小的往左走，易错

]]></description><category></category></item><item><title><![CDATA[散列表与哈希算法]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/124899061</link><guid>https://blog.youkuaiyun.com/ananis/article/details/124899061</guid><author>ananis</author><pubDate>Sat, 21 May 2022 17:05:40 +0800</pubDate><description><![CDATA[1 哈希算法
哈希算法是建立元素与对应位置关系的映射
将二叉查找树查找一个元素所需时间复杂度为O(logN)(树高）提高到哈希表O(1)(一一对应映射）
整体是空间换时间
2 哈希函数
主要希望将元素分布均匀，减少冲突
主要有以下4种
2.1 直接地址法
H(key)=a*key+b
如：key=100;
H(key)=key/100+2;
得到映射位置为3；
2.2 除留取余法
这种最常见
H(key)=key%p;
p最好取质数，取质数分布均匀
2.3 数字分析法
如计算机IP地址有x1,x2…xn位值]]></description><category></category></item><item><title><![CDATA[二叉查找树]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/124882028</link><guid>https://blog.youkuaiyun.com/ananis/article/details/124882028</guid><author>ananis</author><pubDate>Fri, 20 May 2022 15:13:44 +0800</pubDate><description><![CDATA[1 二叉查找树类的定义
//建立集合
template &lt;class KEY,class OTHER&gt;
struct SET
{
    KEY key;
    OTHER other;
};
//建立动态查找表的类
template&lt;class KEY,class OTHER&gt;
class dynamicSearchTable
{
public:
    virtual SET&lt;OTHER,KEY&gt;*find(const KEY&amp;x)const=0;
    ]]></description><category></category></item><item><title><![CDATA[静态查找表]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/124877086</link><guid>https://blog.youkuaiyun.com/ananis/article/details/124877086</guid><author>ananis</author><pubDate>Fri, 20 May 2022 11:54:52 +0800</pubDate><description><![CDATA[8集合与静态查找
8.1 静态表的查找
8.1.1无序表
关键是把第0个位置空出来，从最后一位向前查找，返回0则不存在
//建立集合
template &lt;class KEY,class OTHER&gt;
struct SET
{
    KEY key;
    OTHER other;
};
//建立无序表
template&lt;class KEY,class OTHER&gt;
void seqSearch(SET&lt;KEY,OTHER&gt;data[],KEY x,int size)
]]></description><category></category></item><item><title><![CDATA[排序学习（快速排序，归并排序，基数排序]]></title><link>https://blog.youkuaiyun.com/ananis/article/details/124739968</link><guid>https://blog.youkuaiyun.com/ananis/article/details/124739968</guid><author>ananis</author><pubDate>Thu, 12 May 2022 22:42:18 +0800</pubDate><description><![CDATA[快速排序
平均时间复杂度 O(NlogN)
最差时间复杂度O(N2)**
不稳定

&lt;class KEY,class OTHER&gt;
struct SET
{KEY key;//集合元素的标识，之后会根据标识来排序
 OTHER other;//此处可以放结构体来储存其他信息
};
//划分函数的实现
//以第一个元素为划分元素，将从high到low的一个区间划分两半
template&lt;class KEY,class OTHER&gt;
void divide(SET&lt;KEY,OTHE]]></description><category></category></item></channel></rss>