安装依赖
timm库中提供了swin transformer使用的DropPath层等结构
torch库是构建神经网络和实现自动反向传播的基础库
sys库提供了一些系统信息和操作的接口
logging库提供了日志记录的功能
1!pip install timm
1234567891011121314151617Collecting timm Downloading timm-0.6.7-py3-none-any.whl (509 kB)[2K [90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m [32m510.0/510.0 kB[0m [31m799.5 kB/s[0m eta [36m0:00:00[0m00:01[0m00:01[0m[?25hRequirement already satisfied: torchvision in /opt/conda/lib/python3.7/site-packages (from timm) (0.12.0)Requirement already ...
决策树的基本思想是“分而治之”,通过对样本的属性进行划分来实现分类的一种机器学习算法。
我们人类进行分类的依据一般是该样本所具备的属性值。例如在判别一个样本是否为猫时,可依据样本的耳朵形状(尖头、圆头)、脸型(圆、不圆)、胡须(有、没有)等特征。我们可以先看耳朵形状,如果是尖头,我们再看脸型,如果是圆形,则我们再看是否有胡须,如果有胡须,则得出最后结论:这是一只猫。
决策树算法的思想与之类似,不同的属性值会导向不同的结果。一颗决策树通常具有一个根节点,若干内部节点和叶子节点。根节点和内部节点执行上述属性测试,叶子节点代表样本的分类结果。样本从根节点开始,依据属性值唯一地确定一条测试序列,最终达到叶子节点,得到分类结果。决策树应用于上述对猫的二分类问题的示意图为:
决策树的训练
决策树的训练目的是为了产生泛化能力强的决策树,训练过程就是不断依据属性值对样本进行划分,直到达到停止条件,此时每个叶子节点均对应一个划分后的样本集合,将该样本集合中占比最大的类作为预测结果。训练伪代码如下:
停止条件
决策树的停止条件可分为两类,一类是由于样本无法划分导致的停止,另一类是人为设定的停止条件。
...
工具总结
未读基本设置
设置中文
12plt.rcParams['font.sans-serif']=['SimHei'] # 设置中文字体,使其能够显示中文plt.rcParams['axes.unicode_minus']=False # 解决上述设置后不能正常显示正负号的问题
主题设置
12plt.style.available # 查看可用主题plt.style.use("seaborn") # 修改主题
主题列表:
‘Solarize_Light2’, ‘_classic_test_patch’, ‘bmh’, ‘classic’, ‘dark_background’, ‘fast’, ‘fivethirtyeight’, ‘ggplot’, ‘grayscale’, ‘seaborn’,‘seaborn-bright’, ‘seaborn-colorblind’,‘seaborn-dark’, ‘seaborn-dark-palette’, ‘seaborn-darkgri ...
工具总结
未读LaTeX公式
公式类型
公式类型包括单行公式、行内公式和多行公式
单行公式与行内公式
单行公式
123456\begin{equation} a^2 + b^2=c^2\end{equation}$$ a^2 + b^2=c^2$$
a2+b2=c2a^2+b^2=c^2
a2+b2=c2
行内公式
1$a^2+b^2=c^2$直接嵌入到文字中
a2+b2=c2a^2+b^2=c^2a2+b2=c2直接嵌入到文字中。
多行公式
多行公式环境包括:flalign、align、gather、split等。
flalign:默认右对齐,可以使用&符号来设置对齐的位置,此时所有&会对齐。每行会进行编号,可以在行尾通过\nonumber设置本行不编号。
12345\begin{flalign} a^2+b^2=c^2\\ a^2+b^2=c^2\nonumber\\ a^2+b^2=c^2\end{flalign}
a2+b2=c2a2+b2=c2a2+b2=c2\ ...
工具总结
未读表格
LaTeX表格去以下几个网站制作:
Create LaTeX tables online – TablesGenerator.com
Convert LaTeX Table to LaTeX Table - Table Convert Online
LaTeX Tables Editor (latex-tables.com)
表格首先要嵌入table浮动体环境中:
123456789101112% 浮动体环境,[]内为浮动体位置,h表示here,t表示top,b表示bottom,p表示别的页面,!表示忽略美学标准% 通常位置用法有:[h],[h!],[htbp],[htbp!],[H],可以逐一尝试选择效果最好的,H表示强制固定此处% [H]需引入float宏包,其他命令不需要\usepackage{float}\begin{table}[htbp!] % 双栏排版时table为单栏表格,table*为跨栏表格,单栏排版时两者相同\centering % 表格居中\caption{n ...
LaTeX是一种用于高质量排版的文档准备系统,常用于中型到大型技术或科学文档,发音为Lah-tech或Lay-tech。
编译与文件
编译器
LaTeX常见的编译器有latex、xelatex、pdflatex、lualatex,功能和区别如下:
引擎与编译器
介绍
TeX - LaTeX
TeX是于1978年由Donald Erwin Knuth开发的排版引擎,而LaTeX则是由L. Lamport教授开发的基于TeX的排版系统,实际上是将TeX许多控制命令进行封装。latex命令编译后生成dvi文件,再由其他程序转化为pdf文件。
pdfTeX - pdfLaTex
可直接将tex代码编译成pdf文件,由pdflatex对LaTeX格式的文档进行解释,再交由pdfTeX引擎进行处理。
XeTeX - XeLaTeX
XeTeX引擎可以直接支持Unicode,一般中文LaTeX文档常使用XeLaTeX编译方式。在XeLaTeX出现之前,pdfLaTeX和LaTeX常使用天元、CCT和CJK宏包(目前还在用)来实现中文字符排版,使用时编码格式需设置为UTF-8。
...
远程服务器可视化解决方案
远程服务器使用Ubuntu20.04,直接SSH连接后是命令行窗口,如果想使用远程服务器的资源跑深度学习代码有些不方便。
之前我采用的方法包括:
本地写好代码,然后打包将代码.py文件和数据集上传到服务器环境,命令行窗口中运行代码
1python **.py
远程服务器Vim文本编辑器写代码,简单快捷,但是没有代码提示,Vim编辑器不太会用。
使用MobaXterm连接服务器,使用Xserver转发打开可视化窗口写代码。MobaXterm自带Xserver,直接命令行打开可视化应用写代码,如下列代码。
123gedit # 打开gedit文本编辑器nautilus # 打开文件管理器gnome-terminal # 打开gnome桌面环境下的终端
如果想要从命令行打开pycharm等IDE,需要配置下环境变量,或者将Pycharm打开程序的软连接放到环境变量中的Path路径里面。具体过程为:
解压下载下来的pycharm压缩包,得到文件夹,在里面找到bin目录下面的pycharm.sh文件,这就是pycharm的启动文件。
想要终端可以 ...
连接VPS服务器
1ssh root@服务器ip地址
Windows用户可以使用专门的连接工具,如Xshell、Mobaxterm
快速搭建v2ray
首先安装curl命令行下载工具
12sudo apt updatesudo apt install curl
然后安装V2ray一键安装脚本
123bash <(curl -sL https://raw.githubusercontent.com/hijkpw/scripts/master/goV2.sh)或者备用地址bash <(curl -sL https://raw.githubusercontent.com/hxq2291895932/V2ray/master/goV2.sh?token=ALWXYSXC2OTKNIU24RNCA23BVB656)
安装完成后会出现PORT和UUID信息,表示安装完成了,记住端口号和UUID。V2ray的配置信息可使用下列命令查看。
1cat /etc/v2ray/config.json
开放端口号
首先安装防火墙管理的工具ufw
1sudo apt install ufw ...
贝叶斯优化
贝叶斯优化简介
贝叶斯优化(BayesOpt)是一种及其学习优化方法,用来解决黑盒无衍生全局优化(black-box derivative-free global optimization)问题,即函数只知道输入和输出,不知道其中的结构和具体函数形式,也没法求导。
maxx∈Af(x)\max_{x\in A}f(x)
x∈Amaxf(x)
参考[1] P. I. Frazier, “A Tutorial on Bayesian Optimization,” Jul. 2018, Accessed: Oct. 13, 2021. [Online]. Available: https://arxiv.org/abs/1807.02811v1.
可行域和函数具有以下性质:
x∈Rdx\in \mathbb{R}^dx∈Rd,其中d≤20d\leq 20d≤20比较成功概率较高。
可行域是一个简单集合,其中元素效果,也就是对应的函数值很容易评估。例如:x∈Rd:ai≤xi≤bi{x\in \mathbb R^d:a_i\leq x_i\leq b_i}x∈Rd:ai≤x ...
Git命令整理(持续更新)
本文记录常用的git命令,涵盖绝大部分日常开发场景,持续更新中…
设置用户名和邮箱
123456# 设置用户名和邮箱git config --global user.name "用户名"git config --global user.email "hello@itcast.cn"# 查看配置信息git config --global user.namegit config --global user.email
git提交日志
12345git log [option] # 查看提交到哪个地方 --all # 显示所有分支 --pretty=oneline #将提交信息显示为一行 --abbrev-commit # 让输出的commit更简短 --graph # 以图的形式显示
解决git乱码问题
1git config --global core.quotepath false
/etc/bash.bashrc文件中加入下面代码
12export LANG="zh_CN.UTF-8 ...