Linux科学上网
Linux 科学上网
虚拟机、服务器等我主要用到的还是 Linux 系统,但是 github 下个代码都费劲,之前尝试了很多 Linux 科学上网的方法,有时能成功有时候失败,这次总结一个比较好用的方法。
该方法特点
使用 clash-core
不需要管理员权限,不需要图形化界面(命令行操作即可)
配置方法
首先下载 clash-core
在 github 等途径下载【传送门】
如果有一天路径找不到了,请发挥一下主观能动性,在广袤的互联网上搜索一下。
如下图,我下载的是 clash-linux-amd64-v1.18.0.gz
下载好后,放在 linux 系统用户文件夹下就好,使用如下命令解压:
1gunzip clash-linux-amd64-v1.18.0.gz
重命名解压后的文件:
1mv clash-linux-amd64-v1.18.0 clash
给该文件可执行权限:
1chmod +x clash
然后各显神通,获取到 clash 节点,如果是其他类型的节点格式可以通过节点转换工具转换成 clash 节点格式,修改节点配置文件名称为 config.yaml
此 ...
机器学习复习
机器学习
梳理复习研究生机器学习课程的复习过程。
一、宏观理解
有时间的话可以跟着这个仓库学习《统计学习方法》的代码实现和课后作业。【传送门】
0. 线性回归(Linear Regression)与逻辑回归(Logistic Regression)
线性回归估计结果为实数,可以做回归任务。
逻辑回归利用 sigmoid 等函数将线性数据进行处理,可以减小异常数据带来的影响(比如异常数据可能导致线性拟合的结果相差较大),而逻辑回归的结果在 0-1 之间,所以常用作概率预测,分类任务。
1. 决策树
决策树就是一个搭建好的模型,输入数据,就会按照设计好的路径给出输出。例如经典的用于分类的决策树"ID3",通过输入条件的不同来判断走决策树的哪一个分支,条件越多,分类的结果也越精确。但是决策树的深度要有所权衡,太浅可能导致分类不准确,太深可能导致高代价和过拟合。将熵作为考察依据。注意 ID3 只能做分类树,要想利用决策树实现回归,可以使用 CART, C4.5, CHAID 等。
2. KNN
k 近邻算法,做分类问题,一个样本的分类参考其周围最近的 ...
ChartReader
ChartReader: A Unified Framework for Chart Derendering and Comprehension without Heuristic Rules
ChartReader:无启发式规则的图表解渲染与解释的统一框架。
arvix2304
code: 【传送门】
0. Abstract
图表是可视化转换复杂数据的一种有力工具,但是由于图表有丰富的类型和组件,所以图表理解面临着很大的挑战。现存的图表理解方法面临着以下两个问题:①要么利用启发式的规则,②要么过度依赖于 OCR 系统,导致了次优性能。为了解决这些问题,作者提出了 ChartReader ,一个结合了图表解渲染和理解任务的统一框架。本文的方法包含了一个基于 transfomer 的图表组件检测模块和一个面向 chart-to-X 任务的额外的视觉-语言预训练模型。通过自动的从带标注的数据集中学习图表的规则,本文的方法消除了对人工制定规则的需要,降低了这部分的工作量并提升了准确度。本文还为交叉任务训练引入了一种数据变量替代机制以及对于预训练模型的输入和位置 embeddings 的扩 ...
ChartQA
ChartQA: A Benchmark for Question Answering about Charts with Visual and Logical Reasoning
ACL 2022
code: [传送门]
0. 摘要翻译
图表在数据分析中非常受欢迎。在探索图表时,人们经常提出各种涉及多个逻辑和算术操作的复杂推理问题。他们在问题中通常还常常提到图表的视觉特征。然而,大多数现有数据集并未专注于此类复杂推理问题,因为它们的问题是基于模板的,答案来自固定的词汇。在这项工作中,我们提出了一个大规模的基准,涵盖了9.6K个人工编写的问题,以及从人工编写的图表摘要生成的23.1K个问题。为了解决我们基准中涉及图表的视觉和逻辑推理的独特挑战,我们提出了两个基于Transformer的模型,以统一的方式结合图表的视觉特征和数据表来回答问题。虽然我们的模型在先前的数据集以及我们的基准上取得了最先进的结果,但评估也揭示了回答复杂推理问题中的若干挑战。
吐槽一下,初步浏览了一些小标题和图表内容,感觉这文章写的漏洞百出,图表中的很多数据都算错了。。。不知道是不是我没理解,详细看完再说。
...
李宏毅ML2022(1)
李宏毅ML课程(第1讲)
1. 前言
Machine Learning≈Looking for FunctionMachine \space Learning \approx Looking \space for \space Function
Machine Learning≈Looking for Function
本次课程主要基于 Neural Network,即寻找的适和的函数是用类神经网络表示的。
首节主要讲了课程安排,以及每个 lecture 的内容。感觉老师讲的生动有趣。其中印象深刻的部分(之前对这个名词也没有清晰的概念)是 Model attack ,以分类任务为例,本来一张猫猫的图,分类为猫,但是加入特定的噪声以后,肉眼看不出图片有什么异常,但是模型的预测结果为Fish,而且准确率为 1,很神奇,期待一下课程。还有 Meta-Learn 机器学习自己提出算法来学习。
2. Machine/Deep Learning 简介
MeliusNet
MeliusNet: Can Binary Neural Networks Achieve MobileNet-level Accuracy?
2020 arXiv
code : https://github.com/hpi-xnor/BMXNet-v2
0. 摘要翻译
以往的方法通过提升通道数和使用多个二值基(binary bases)的方法来避免二值化带来的精度损失(低质量的和低容量的特征映射)。这篇文章中,作者提出了一个新的架构:MeliusNet。由交替出现的 DenseBlock 组成,提升了特征的容量;提出的 ImprovementBlock 提升了特征的质量。在 ImageNet 上的实验证实了,其相比其他 BNN 模型在计算量和准确度上都更有优势。本文训练的 BNN 模型,首次实现了与 MoblieNet-v1 在模型尺寸,操作数量和准确性上相匹配。不理解为什么要在模型尺寸上相匹配?模型大了,准确率高有什么亮点吗?可能是 MoblieNet-v1 本身就是比较轻量的,可以部署在嵌入式设备上的模型,模型尺寸相匹配,可能想说明 MeliusNet 也同样轻量吧。
我想知 ...
漫谈Attention-Mechanism[注意力机制]
漫谈 Attention Mechanism[注意力机制]
Attention 的核心思想就是从关注全部到关注重点。
看了这个 up 主的一些介绍【传送门】
1. 注意力机制的由来
如下面这张图,我们观察一张图片或者一段文字的时候,并不是对每个部分都付出了同样的注意力,而是有所侧重的,如下面这张图中,婴儿的脸,文字的标题这些是我们更关注的。但是对于 CNN, RNN, 以及 LSTM 等模型很难决定什么是重要的,什么不重要,于是产生了注意力机制。
2. 注意力机制的实现过程
那么注意力机制是怎么在神经网络中实现的呢?
首先我要观察一张图,我可能会习惯性的有所侧重的去看。我潜意识中会有一个Q(查询对象)表示我更关心的内容,而准备观察的图是K(被查询对象)。
看一段评论区的解释:
Q是要搜索的词, 例如 “苹果”这个词在 ,“我要吃苹果” 这句话中与每个词的相似度求解。 Q = 苹果, K1 = 我 k2=要 k3=吃 k4=苹果。 Q 分别与K1-4 进行相似度的比较得到一个score 分数,如果这个score 越高说明相似度越高。 然后通过softmax 归一化,就是相似度的百分比 ...
ReActNet
ReActNet: Towards Precise Binary Neural Network with Generalized Activation Functions
2020 Cornell University - arXiv
代码地址:https://github.com/liuzechun/ReActNet
0. 摘要翻译
本文中,作者提出一些方法在没有增加任何运算代价的同时来提升二值网络,使其逼近实值网络的准确度。
作者首先构建了一个基准网络,通过修改和二值化一个带有无参数 shortcuts 的实值网络,绕过了所有中间卷积层包括下采样层。这个基准网络在准确性和效率之间得到了很好的权衡,在只需大约一半计算成本的情况下超过了大多数现有二值网络的表现。
通过大量实验和分析,作者观察到二值网络对于激活分布的变化是敏感的。基于这个重要的观察,作者提出了扩展传统的 Sign 和 PReLU 函数,使其能够在接近零额外成本的情况下可以显式的学习对分布的重塑和平移。
最后,作者采用分布损失来强制二值网络学习与是指网络相似的输出分布。
作者展示了,在融合了上述方法之后,提出的 R ...
Bi-Real-Net
Bi-Real Net: Enhancing the Performance of 1-bit CNNs With Improved Representational Capability and Advanced Training Algorithm
2018 ECCV
code: https://github.com/liuzechun/Bi-Real-net
0. 摘要
为了使 1-bit CNNs 的图像分类准确度接近其实值网络,本文提出了 Bi-Real Net 网络结构。通过 identity shortcut 方式将实值激活(在 1bit 卷积和(或)BatchNorm 层之后)连接到连续块的激活。大幅提升了网络的表达能力,而计算成本增加几乎可以忽略。
开发了针对 1bit CNNs 的训练算法,其中有三个技术创新:
推导出了对于激活的不可微 sign 函数的 tight 近似;
提出了关于权重的具有大小感知的梯度,来更新权重;
使用 clip 函数而不是 ReLU 来预训练实值 CNN 模型,以更好的初始化 Bi-Real net。
本文提出的算法在 Image ...
FABNet
FABNet: Frequency-Aware Binarized Network for Single Image Super-Resolution
2023 IEEE Transactions on Image Processing
代码地址:https://github.com/xrjiang527/FABNet-PyTorch
0. 摘要翻译
BNN在实时性和 SISR 方法的性能上取得了标志性成果。现有的方法总是采用 Sign 函数来量化图片特征,但是忽略了图片的空间频率信息。我们认为可以考虑不同的空间频率组件来最小化量化误差。为了实现这个目标,我们为 SISR 提出了频率感知二值网络(FABNet)。首先,我们利用了小波变换把特征分解为低频和高频组件。然后应用“分而治之”策略,使用设计良好的二值网络结构来分别处理他们。此外,我们引入了一个动态二值化过程,包含了在前向传播过程中使用学习阈值进行二值化,在反向传播过程中动态近似,这高效的解决了多样的空间频率信息。相比现有方法,我们的方法在减小量化误差和恢复图像纹理方面是有效的。扩展实验在四个基准数据集上进行,证实了这种方法在 ...