强化学习概述 1. 定义 通过从交互中学习来实现目标的计算方法: 强化学习主要包括三个方面: 感知:在某种程度上感知环境的状态 行动:可以采取行动来影响状态或者达到目标 目标:随着时间的推移最大化累积奖励 2. 交互 强化学习与环境交互过程如下图: 3. 系统要素 历史(History):是观察、行动和奖励的序列。即一直到时间 ttt 为止的所有可观测变量: Ht=O1,R1,A1,O 2023-08-07 Technique ReinforcementLearning Technique ReinforcementLearning
CUDA全局内存 1. 简介 CPU 和 GPU 的主存都采用的是 DRAM(动态随机存取存储器),而低延迟内存(如 CPU 一级缓存)使用的则是 SRAM(静态随机存取存储器)。CPU 和 GPU 在内存层次结构设计中都使用相似的准则和模型。GPU 和 CPU 内存模型的主要区别是,CUDA 编程模型能将内存层次结构更好地呈现给用户,能让我们显式地控制它的行为。 2. CUDA 内存模型 对于程序员来说,一般有两 2023-08-02 Technique Cuda Technique Cuda
LightGBM算法详解 1. 简介 LightGBM 是一个高性能的分布式梯度提升决策树框架,可以用于分类、回归、排序任务等,属于监督学习算法。LightGBM 属于 Boosting 的一种,Boosting 是指用一系列的模型线性组合起来完成模型任务。Boosting 分为两种: Ada Boost:根据当前的 Loss 来改变样本权重,比如这个样本在学习中误差比较大,则获得一个大的权重,反之获得更小的权重,从而控 2023-07-20 Technique MachineLearning Technique MachineLearning
Linux系统用户管理 1. 创建用户 1sudo useradd -m -s /bin/bash -d /data/${username} ${username} 其中,-m 参数表示在创建用户的同时创建用户的主目录;-s 参数用来指定用户默认的 Shell;-d 参数用来指定用户的 HOME 目录路径。 后续如果需要迁移用户主目录,可以使用以下命令: 1sudo usermo 2023-07-05 Technique Linux Sundry Technique Sundry Linux
并行异构计算概述 GPU vs. CPU CPU 计算适合处理控制密集型任务,GPU 计算适合处理包含数据并件的计算密集型任务。 CPU 核心比较重,用来处理非常复杂的控制逻辑,以优化串行程序执行。 GPU 核心比较轻,用于优化具有简单控制逻辑的数据并行任务,注重并行程序的吞吐量。 GPU 不是一个独立运行的平台而是 CPU 的协处理器,因此 GPU 必须通过 PCIe 总线与基于 CPU 的主 2023-06-27 Technique Cuda Technique Cuda
拉格朗日乘子法 1. 简介 拉格朗日乘子法是一种寻找多元函数在其变量受到一个或多个条件的约束时的局部极值的方法。这种方法可以将一个有 nnn 个变量与 kkk 个约束条件的最优化问题转换为一个解有 n+kn+kn+k 个变量的方程组的解的问题。 2. 方法 2.1 拉格朗日乘法定理 设 f:Rn→Rf: \mathbb{R}^n \rightarrow \mathbb{R}f:Rn→R 为目标函数,g:Rn→Rc 2023-06-19 Technique Math Theory Technique Math Theory
Nano编辑器入门 1. 简介 Nano 编辑器是很多 Linux 发行版默认配备的命令行编辑器。尽管可以将系统默认配置修改成 vi/vim 等功能更强大的编辑器,但每个环境都修改配置未免过于麻烦。因此,掌握 Nano 编辑器的基本使用还是有必要的。 2. 常用快捷键 在 Nano 编辑器页面中,会给出一些快捷键提示,其 ^ 符号表示 Ctrl 键,其 M 符号表示 Alt 键。 快捷键 说明 Ct 2023-06-19 Technique Linux Sundry Technique Sundry Linux
ArchLinux安装ibus-rime输入法 1. 简介 ArchLinux 下一般都推荐安装 fcitx 或者 fcitx5,但是没想到即使是 fcitx5 还是存在很多问题。本文就是写于我的 ArchLinux 上 fcitx5 无法使用 rime 输入法之际,寻求解决方案无果后,只能转而使用 ibus。 2. 安装 在安装 ibus-rime 之前,需要先将 fcitx5 的环境(如果有的话)清除掉。最简单暴力的方法就是将 fcitx5 2023-05-16 Technique Linux ArchLinux Technique Linux ArchLinux
Mac终端Shell命令Open 1. 简介 Mac 下手动打开目录、文件和应用程序等和 Windows 都很一不样,用惯 Windows 的用户刚开始使用 Mac 系统可能会非常不习惯。好在 Mac 下有一个非常方便的命令行工具 open,它能很方便地打开 Mac 上的目录、文件和应用程序。 2. 格式 12345678910111213141516171819202122232425Usage: open [-e] [-t] 2023-03-27 Technique Mac Shell Technique Mac Shell
Mac终端打开应用程序 1. 简介 在 Mac 下安装应用时,如果直接在终端使用 brew 安装,则一般都可以在终端直接输入应用名打开。但对于非终端下安装的应用程序,则不能直接在终端下打开。 2. 方法 对于 Mac 非终端安装的应用程序,可以使用以下命令打开: 1open -a <app_name> 其中,-a 参数表示打开应用程序,即 Application。 附录 How to Open Applic 2023-03-27 Technique Mac Technique Mac