PyTorch学习笔记(一)自定义数据集
利用PyTorch进行深度学习时,首先要做的就是自定义一个数据集类,用于告诉PyTorch如何加载数据集。继承torch.utils.data.Dataset
抽象类后,重写两个方法,即可完成自定义数据集的创建:
__len__(self)
:用于返回数据集的长度__getitem__(self, index)
:用于返回第i
个数据,传入一个index
参数,表示索引
利用PyTorch进行深度学习时,首先要做的就是自定义一个数据集类,用于告诉PyTorch如何加载数据集。继承torch.utils.data.Dataset
抽象类后,重写两个方法,即可完成自定义数据集的创建:
__len__(self)
:用于返回数据集的长度__getitem__(self, index)
:用于返回第i
个数据,传入一个index
参数,表示索引CentOS最容易被人诟病的一个问题便是软件包过于陈旧,经常无法使用某些实用的新特性,当然这也是为了稳定而做的考虑。为了使用某些新特性,有时候我们不得不重新编译新版本的软件以使用,而当你需要在多台服务器上重新部署时,这就显得非常麻烦。一个好的办法便是自行构建一个RPM包,然后通过RPM仓库的形式分发,如此每台服务器便可使用基于RPM的包管理软件yum/dnf,安装管理新版本软件包。
Brotli是Google推出的一个新型压缩算法,与传统的gzip相比可以大幅提高压缩率,目前各大浏览器Chrome/Firefox/Opera均已支持Brotli算法。但是目前Nginx官方并没有默认集成Brotli算法,还需要手工编译以开启Nginx对Brotli算法的支持。呉真经过寻找后,发现Nginx Plus以及GetPageSpeed Service提供了预编译好的Brotli动态模块,但是这两者都是需要收费的商业服务。
由于拒绝中共的内容审查,Google在2010年退出中国市场后,中文的搜索引擎一直处于无人维护状态,这使得一大批垃圾采集站,以及百度知道之类的高权重垃圾站,经常占据搜索结果前列的结果。呉真无意中发现了一款Chrome插件——uBlacklist,可以完美的解决这个问题,这里是Chrome应用商店直达链接。
GoAccess是一个Web服务器访问日志分析工具,可以通过CLI查看分析报告,或生成报告网页,更直观的分析。这里有一个GoAccess Demo,是关于呉真的博客的日志分析报告,是不是非常的酷炫。
Nginx的ngx_http_sub_module
模块可以很方便的实现:在返回资源时动态替换某些关键字。但是这个模块默认并没有启用,在编译时需要手动添加--with-http_sub_module
编译参数。要查看当前Nginx是否集成该模块,可以使用如下命令:
1 |
nginx -V 2>&1 | grep -q http_sub_module && echo "ok" |
呉真是最早一批的小牛M1车型车主,最近呉真的小牛M1里程突破了一万公里,于是决定写一篇体验感受,记录一下使用中的优缺点。