Ivan

个人博客

[机器学习] NLNL: Negative Learning for Noisy Labels论文解读

0x01 Introduction 最近在做数据筛选方面的项目,看了些噪声方面的论文,今天就讲讲之前看到的一篇发表于ICCV2019上的关于Noisy Labels的论文《NLNL: Negative Learning for Noisy Labels》 论文地址:https://arxiv.org/pdf/1908.07387.pdf 这篇论文的核心思想是NL(Negative Learning)也就是利用complementary label(互补标签)对模型进行训练从而提升噪声鲁棒性 0x02 Negative Learning 对于一个图像分类任务,传统的学习策略PL(Positive......

[深度学习] Noisy-Label paper implementations

Noisy label 相关论文复现

noise-validationSome Noisy-label, Robust learning and Training tricks implementation.Code:https://github.com/ivanwhaf/noise-validation Algorithms1.BaselineMNIST and CIFAR10 dataset baseline without label noise. 2.QBC-LossReferring to Active Learning. Using several models to inference, calculating ea......

[软件安装] Ubuntu20.04安装Nvidia驱动,CUDA10.2,cuDNN7.6.5,Pytorch1.6.0及Detectron2踩坑记录

Ubuntu CUDA cuDNN Pytorch Dtectron2

前言最近准备装facebook的Detectron2目标检测框架,因对Windows适配不是很好,需要预装很多依赖以及CMake用来编译,折腾了半天没弄好,遂果断转至Linux,舒服多了,但是中间还是踩了一些坑,下面讲讲注意的一些事项。 安装/卸载Nvidia驱动安装ubuntu安装英伟达显卡驱动有两种方式。1.通过sudo命令安装:sudo apt install nvidia-driver-4402.打开Ubuntu自带的应用Software&Updates软件更新,选择要安装的驱动版本,如下图所示:注:以上两种方式安装完均须重启后才能生效,uefi的电脑需要在重启时将Secure Boo......

[机器学习] 强化学习DQN入门Demo之CartPole

CartPole Pytorch

前言最近在入门强化学习(RL)及DQN,看了一些博文和文章,花了2天时间跑了下DQN的经典demo—CartPole。其中踩过一些坑,本篇文章就简单谈一谈强化学习、DQN和我跑的入门demo。 什么是强化学习?强化学习是一类算法,是让计算机实现从一开始完全随机的进行操作,通过不断地尝试,从错误中学习,最后找到规律,学会了达到目的的方法。这就是一个完整的强化学习过程。让计算机在不断的尝试中更新自己的行为,从而一步步学习如何操自己的行为得到高分。 强化学习的常见模型是标准的马尔可夫决策过程(Markov Decision Process, MDP)。按给定条件,强化学习可分为基于模式的强化学习(m......

[软件安装] CUDA+cuDNN+Tensorflow-gpu+Keras安装教程

简介最近电脑重装,重新装了下深度学习数件套,结合之前安装遇到的一些问题和踩过的坑,决定写一篇安装教程。以下安装建议按照顺序进行,否则会有不必要的兼容性问题。软硬件环境如下: Windows 10NVIDIA MX350 CUDA首先打开N卡的控制面板界面,点击左下角的系统信息,如下图所示: 接着点组件,找到NVCUDA.DLL一项,查看显卡支持的最高版本号的CUDA版本,笔者的显卡支持的CUDA版本最高为10.2,如下图: 接下来是很重要的一步,不可跳过!打开https://tensorflow.google.cn/install/source_windows网站,查看tensorflow各......

[深度学习] 神经网络参数Batch size浅谈

Batch Size一次训练所选取的样本数 GD / batch-GDGradient Descent,没有Batch Size SGDStochastic Gradient Descent,Batch Size=1 mini-batch SGD选择合适Batch Size的SGD mini-batch优点 提高运行效率、相比GD,一个epoch更新多次参数,加速收敛解决训练集过大无法一次性读入内存的问题人为给训练带来噪声,带领算法走出鞍点 大Batch Size优缺点 并行化提高内存利用率、发挥GPU性能一次epoch所需迭代次数减少、数据处理速度快梯度准确、震荡小、稳定性高、容易收敛泛化性......

[其它] Editor.md 开源在线 Markdown 编辑器

Editor.md 目录 (Table of Contents) 目录 Editor.mdHeading 1Heading 2Heading 3Heading 4Heading 5Heading 6Heading 1 link Heading linkHeading 2 link Heading linkHeading 3 link Heading linkHeading 4 link Heading link Heading link Heading linkHeading 5 link Heading linkHeading 6 link Head......

[笔记] 2020-03-19

MySQL事务基本要素、事务隔离级别

事务的基本要素(ACID)1.原子性(Atomicity)要么全部做完,要么全部不做2.一致性(Consistency)事务开始之前和事务结束以后,数据库的完整性没有被破坏3.隔离性(Isolation)同一时间,只允许一个事务请求同一数据4.持久性(Durability)事务一旦被提交了,那么对数据库中的数据的改变就是永久性的,即便系统故障也不会丢失 MVCC(Multi-Version Concurrency Control)多版本并发控制,通过保存数据在某个时间点的快照 事务隔离级别1.READ UNCOMMITTED(读未提交)脏读、不可重复读、幻读被读数据不加锁;更新数据加行级共享锁......

[笔记] 2020-03-04

加密算法

柯克霍夫原则密码学上的柯克霍夫原则(Kerckhoffs’s principle,也称为柯克霍夫假说、公理、或定律)系由奥古斯特·柯克霍夫在19世纪提出:即使密码系统的任何细节已为人悉知,只要密匙(key,又称密钥或秘钥)未泄漏,它也应是安全的。 信息论的发明者克劳德·香农则改成说:“敌人了解系统”,这样的说法则称为香农箴言。 它和传统上使用隐密的设计、实现、或其他等等来提供加密的隐晦式安全想法相对。依据柯克霍夫原则,大多数民用保密都使用公开的算法。 但相对地,用于政府或军事机密的保密器通常也是保密的。柯克霍夫为军用保密器所设计的这六个原则是: 即使非数学上不可破解,系统也应在实质(实用)程......

[Python] PyGame模拟PID算法控制小车循迹

PID算法简介PID即:Proportional(比例)、Integral(积分)、Differential(微分)的缩写。顾名思义,PID控制算法是结合比例、积分和微分三种环节于一体的控制算法,它是连续系统中技术最为成熟、应心最为广泛的一种控制算法,该控制算法出现于20世纪30至40年代,适用于对被控对象模型了解不清楚的场合。实际运行的经验和理论的分析都表明,运用这种控制规律对许多工业过程进行控制时,都能得到比较满意的效果。PID控制的实质就是根据输入的偏差值,按照比例、积分、微分的函数关系进行运算,运算结果用以控制输出。 比例Kp成比例地反映控制系统的偏差信号,偏差一旦产生,立即产生控制作......