自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(125)
  • 收藏
  • 关注

原创 Hugo博客搭建

输入密码后进入设置,在 Note 框中填写方便识别的名字,如 Deploy,有效期(Expiration)建议选择永不过期(No expiration),访问范围(Scopes)我们需要选中 repo 和 workflow。进入仓库的 Actions,若之前有使用过,点击左侧 New workflow;后续只需要在 blog 仓库中更新博文,然后 push 即可触发 Github Actions 自动构建并推送到 Github Pages 仓库中。需要保证有一个分支,通过本地推送一个。

2024-08-23 11:27:30 730

原创 postman使用指北

请求无法直接在参数后面写注释(不符合 json 规范),通过脚本的方式达到既写注释又可以发送请求的目的。作用:方便切换不同环境,比如配置本地环境/测试环境/线上环境,通过切换环境就可以请求对应环境的接口。等,就可以在 postman 中通过 pre-request script 统一封装起来进行调用。后端为了服务接口不被恶意攻击,一般会有鉴权的校验,比如在 header 头中加入。请求时,可以右键参数 encode 请求,方便发送。postman 没有很好的写接口注释的地方,对于。

2024-08-23 11:25:24 1680

原创 权限系统设计

如果一个管理员没有被分配任何一个景区的公告模块权限,那他就无法看到公告模块,如果只分配了丽江的公告模块权限,那么在公告模块下也只能看到和编辑丽江的信息。对于一个系统,有多个模块,在需要给不同的用户分配不同的模块权限的场景下,就需要进行权限设计,按需给用户划分对应的权限。项目背景为建设文旅产品,以较为有名的“一机游云南”为例,我们要建设一个“一机游云南”的产品,这个产品包含后台管理系统和小程序,可以在后台编辑活动、咨询、公告等模块,具体的模块下既可以编辑云南省的相关信息,也可以编辑下属景区的信息。

2024-03-25 14:22:49 1019

原创 压力测试笔记

一定是要确定系统某个方面达到瓶颈了,压力测试才算是基本完成。内存利用率 最大 44.7%,最小 33.3%明确服务资源配置、环境,尽可能跟生产环境靠近。要求:满足100并发500ms性能要求。测试接口 + 预期目标。

2022-12-21 10:16:38 722

原创 Go专家编程-并发控制、反射

/ 接口定义 src/context/context.go type Context interface {} }没有设置 deadline 时,ok==false,deadline 为初始化 time.Time 值返回探测 Context 是否取消的 channel,Context 取消时自动将 channel 关闭对于不支持取消的 Context,返回 nil,如 context.Background()描述 context 关闭的原因。

2022-10-12 08:16:38 423

原创 Go专家编程-控制结构、协程、内存管理

如果大部分任务都进行系统调用,任务队列中的任务就会产生堆积。C 语言通过内存分配器调用 malloc() 方法动态申请内存,Go 也实现了内存分配器,原理与 tcmalloc 类似,维护一块大的全局内存,每个线程(Go 中为处理器 P)维护一块小的私有内存,私有内存不足时再从全局申请。垃圾回收开始时从 root 对象开始扫描,把 root 对象引用的内存标记为 “被引用”,考虑到内存块中存放的可能是指针,所以还需要递归的进行标记,全部标记完成后,只保留被标记的内存,未被标记的全部标识为未分配即完成了回收。

2022-10-12 08:14:56 854

原创 ElasticSearch排序

为了按照相关性来排序,需要将相关性表示为一个数值。在 Elasticsearch 中,相关性得分由一个浮点数进行表示,并在搜索结果中通过_score参数返回, 默认排序是_score降序。

2022-08-04 08:28:07 679

原创 ElasticSearch查询

使用情况过滤情况(filtering context):对文档进行过滤查询情况(query context):对文档进行评分过滤查询的结果较少,结果会被缓存到内存中。评分查询计算较多(计算相关性),不会缓存。通常的规则是,使用查询(query)语句来进行全文搜索或者其它任何需要影响相关性得分的搜索。除此以外的情况都使用过滤(filters)。...

2022-08-04 07:47:48 443

原创 《Redis设计与实现》笔记

SDS 与 C 字符串的区别获取字符串长度的时间复杂度从 O(n)——>O(1) 避免缓冲区溢出 以空间换时间减少修改字符串带来的内存重分配次数空间预分配(增长字符串):惰性空间释放(缩短字符串):原空间不释放,作为 free 空间Redis 链表特性双端:节点包含 和 指针,获取某个节点的前后节点 O(1)无环:头结点和尾结点的 prev 和 next 指向 NULL带头尾指针:获取头尾时间复杂度 O(1)带链表长度计数器多态:链表节点使用 指针来保存节点值, 并且可以

2022-07-07 08:44:15 446

原创 GO 包管理机制总结

GO 包管理机制总结发展GO 的包管理机制主要有三个阶段:GOPATH 模式多个工程共享 GOPATH 目录,所有工程的公共依赖包都放在 GOPATH 对应的目录下,产生一个主要问题——随着项目的增加和依赖包越来越多,GOPATH 目录越来越臃肿,里面包含了不同项目的依赖包。当需要把项目放到别的机器上时,依赖包的混乱难以有效迁移。go vendor 模式每个工程可以将依赖包直接放到工程子目录 vendor 中,这样不同的工程可以存放自己需要的各种依赖包到 vendor 目录中,互不影响

2021-12-13 17:51:14 1201

原创 2021-11-16

ssh 及免密码登录配置服务器开箱设置安装 java8yum install java-1.8.0-openjdk* -yjava -version安装 neo4j阿里云服务器上(CentOS)安装部署 Neo4j安装 nodejsyum module list nodejsyum module install nodejsnode --version如何在 CentOS 8 上安装 Node.js 和 npm使用淘宝 cnpm 镜像$ npm install .

2021-11-16 10:29:41 1067

原创 keras训练过程的保存

通过 TensorBoard 实现训练可视化from datetime import datetimeTIMESTAMP = "{0:%Y-%m-%dT%H:%M:%S/}".format(datetime.now())log_dir = './logs/' + TIMESTAMP # 可以区分不同的训练(只用时间意义不明确,可以思考优化)tbCallBack = TensorBoard(log_dir=log_dir, # log 目录 histogram_fr

2021-04-28 16:47:30 942 1

原创 Java Comparator 接口实现笔记

Java 可以通过 Arrays.sort() 对数组进行排序,默认是升序排列,为了能够对数组进行降序排列,需要传入重写 compare() 方法的 Comparator 接口。需要注意的是,接口接收的参数只能是引用数据类型,无法接收基本数据类型。所以需要新建引用类型数组然后将数组的值复制过去。import java.util.Arrays;import java.util.Comparator;public class ComparatorTest { public static voi

2021-04-12 17:37:05 242 1

原创 Git 使用笔记

安装 Git# Debian 或 Ubuntu Linuxsudo apt-get install git# 源码安装./configmakesudo make install官网下载Git 配置# 查看配置信息git config --list# 配置全局用户名和邮箱git config --global user.name "Your Name"git config --global user.email "email@example.com"# git 别名配置 个

2021-04-12 09:00:20 144 1

原创 解决py2neo中文输出unicode编码问题

py2neo 定义节点 print 输出时中文转换为 unicode 编码为了解决这一问题,修改 py2neo 包下的编码解码方式进入 conda 环境下对应目录(linux 系统)/home/solejay/miniconda3/lib/python3.8/site-packages/py2neo/cypher编辑 encoding.py 文件 for i in range(0, len(parts), 2): parts[i] = (X_ESCA

2021-03-30 15:42:06 1252 2

原创 linux openconnect 8.1连接北邮校园网

之前的文章都是使用 https://github.com/dlenski/openconnect.git 仓库,但是这个仓库似乎是第三方的,在官方版本更新之后就不再更新了,所以网上的大部分教程都没办法用了。1. 官网下载 OpenConnectgit clone git://git.infradead.org/users/dwmw2/openconnect.git2. 新建并下载 vpnc-script 脚本wget http://git.infradead.org/users/dwmw2/vpn

2021-02-01 14:28:12 2152 2

原创 VSCode python -m 调试

若运行命令为 python -m x.test --args安装 debugpypython3 -m pip install debugpy 运行python3 -m debugpy --listen 5678 --wait-for-client -m x.test --args在 .vscode 文件夹下创建 launch.json{ // Use IntelliSense to learn about possible attributes. // Hover

2021-01-28 15:30:34 2209 1

原创 SQL基础教程笔记

第 1 章 数据库和 SQLSQL 概要根据对 RDBMS 赋予的指令种类的不同, SQL 语句可以分为以下三类DDLDDL(Data Definition Language,数据定义语言)用来创建或者删除存储数据用的数据库以及数据库中的表等对象。 DDL 包含以下几种指令。CREATE: 创建数据库和表等对象DROP: 删除数据库和表等对象ALTER: 修改数据库和表等对象的结构DMLDML(Data Manipulation Language,数据操纵语言)用来查询或者变更

2021-01-15 21:34:15 410

原创 Java 核心技术卷 1 笔记

第 2 章 Java 程序设计环境2.1 安装 Java 开发工具包JDK:包含虚拟机和编译器JRE:只包含虚拟机第 3 章 Java 的基本程序设计结构3.3 数据类型Java 是一种强类型语言。这就意味着必须为每一个变量声明一种类型。float 类型的数值有一个后缀 F 或 f。没有后缀的浮点数值默认为 double 类型。强烈建议不要再程序中使用 char 类型,除非确实需要处理 UTF-16 代码单元。最好将字符串作为抽象数据类型处理。3.4 变量在 Java 中,变量的声明尽可

2021-01-06 19:46:38 297 1

原创 Java ArrayList 使用和常见面试题

继承关系ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。ArrayList 继承了 AbstractList ,并实现了 List 接口。类的导入import java.util.ArrayList; // 引入 ArrayList 类ArrayList<E> objectName =new ArrayList<>();  // 初始化E 是泛型数据类型,只能为 引用数据类型基本类型

2020-12-21 16:20:13 793

原创 服务器开箱设置

SSH 设置SSH 远程连接SSH 别名连接通过 SSH 默认配置文件创建 SSH 别名$ vi ~/.ssh/config配置 config 文件Host webserver HostName 192.168.225.22 User skHost dns HostName server.example.com User rootHost dhcp HostName 192.168.225.25 User ostechnix

2020-10-10 21:19:58 325 6

原创 《Joint Learning of Named Entity Recognition and Entity Linking》论文笔记

Joint Learning of Named Entity Recognition and Entity Linking2019 ACLAbstract大多数 EL 方法忽视实体识别部分,假定正确的实体已经被识别出来。这篇论文对 NER 和 EL 进行联合学习,来利用他们之间的相关性,得到一个更健壮和更具通用性的系统。实验发现联合学习比单个学习效果更好,并且在 NER 和 EL 任务达到 SOTA。1 IntroductionNER 和 EL 是两个基础的 NLP 任务,NER 负责检测和识别命

2020-10-06 10:31:11 1043

原创 Docker 学习笔记

安装deepin 安装 dockerdocker 常用命令# 帮助命令 docker versiondocker infodocker --help # 重点掌握# 镜像命令# 列出本地主机上镜像docker images OPTIONOS-a,列出本地所有镜像-q,只显示镜像 ID--digests,显示镜像的摘要信息--no-trunc,显示完整的镜像信息# 搜索镜像docker search 某个XXX镜像名字 # e.g. docker search nginx

2020-10-04 10:58:23 156

原创 SQL 学习笔记

安装和运行 MySQLdeepin15.11 安装 MySQL(Debian 9 Stretch)mysql -u root -p关系模型关系数据库是建立在关系模型上的。而关系模型本质上就是若干个存储数据的二维表,可以把它们看作很多 Excel 表。表的每一行称为记录(Record),记录是一个逻辑意义上的数据。表的每一列称为字段(Column),同一个表的每一行记录都拥有相同的若干字段。主键主键是关系表中记录的唯一标识。主键的选取非常重要:主键不要带有业务含义,而应该使用 BIGINT 自

2020-09-19 19:36:41 137

原创 Neo4j 学习笔记

Neo4j 基础安装教程页面介绍Cypher 学习命令用法CREATE创建节点,关系和属性MATCH检索有关节点,关系和属性RETURN返回查询结果WHERE提供条件过滤检索数据DELETE删除节点和关系REMOVE删除节点和关系的属性SET添加或更新标签官方文档字符画语法Cypher 使用字符画来表示模式,使得我们在第一次学习这门语言时很容易记住它。如果你忘记了如何编写,只需要想一想图的样子就会对你有所帮助。(a)-

2020-09-16 10:08:05 759

原创 VSCode 使用技巧

转到调用函数的定义Ctrl + 鼠标左击VSCode 返回上一个浏览位置(Debug 用)Windows: Alt + ← ; 或者 鼠标侧键Linux: Ctrl + Alt + - ; 貌似数字键盘的减号没效果Mac: Ctrl + -左右括号之间跳转ctrl + shift + \参考链接VSCode 返回上一个光标 (上一个浏览位置)...

2020-09-14 14:45:50 855

原创 《Attention is all you need》论文笔记

Abstract一般来说,重要的 sequence transduction 模型都是基于包含 Encoder,Decoder 的复杂的 RNN 和 CNN 的。最好的模型是通过一个 attention 机制来连接 Encoder,Decoder。本文提出一种简单的架构——Transformer,只用注意力机制,和 CNN、RNN 没有关系。在两个翻译任务实验证明该模型又快又好WMT 2014 Englishto-German 翻译任务 BLEU 为 28.4,比当下 SOTA 高 2用 8 个

2020-09-09 15:43:03 539

原创 linux常用命令

linux 常用命令磁盘占用cd /path/to/some/wheredu -hsx * | sort -rh | head -10 # 查看当前目录子目录的占用情况

2020-09-07 14:48:14 130

原创 Colab 使用技巧

GPU 查看和使用# 查看 GPU 显存信息!/opt/bin/nvidia-smi# 查看 gpu 及使用 gpuimport tensorflow as tfprint(tf.test.gpu_device_name())tf.device('/gpu:0')CUDA 版本安装 cuda 9cuda 和 tf 版本对应!cat /usr/local/cuda/version.txt!wget https://developer.nvidia.com/compute/cuda/9

2020-09-04 09:51:21 411

原创 简单知识图谱构建

LOAD CSV 构建知识图谱neo4j stop 停止服务编辑 neo4j 安装目录下 conf/neo4j.conf 文件,增加一行cypher.lenient_create_relationship=true这一句命令的目的是在构建关系时遇到 null-[]-() 一类的情况时可以自动跳过而不报错neo4j start 启动服务并登陆浏览器 http://localhost:7474/browser/导入文件并进行操作//导入文件名 文件存储在 ./import 文件夹下//with

2020-08-31 16:29:26 1004 6

原创 ERROR: Could not install packages due to an EnvironmentError: [Errno 2] 没有那个文件或目录 解决方法

pip 安装包时出现错误ERROR: Could not install packages due to an EnvironmentError: [Errno 2] 没有那个文件或目录: '/home/solejay/anaconda3/envs/kg/lib/python3.6/site-packages/pytz-2020.1.dist-info/METADATA'解决方法:创建对应的文件即可touch /home/solejay/anaconda3/envs/kg/lib/python3.6/

2020-08-28 09:09:10 4142

原创 《Neural Machine Translation by Jointly Learning to Align and Translate》阅读笔记

个人总结本文最大贡献是提出了注意力机制,相比于之前 NMT(Neural Machine Translation) 把整个句子压缩成一个固定向量表示的方法,对不同位置的目标单词计算每个输入的不同权重,这样能够更好地捕捉目标词相关的输入信息。ABSTRACT最近的 NMT 模型是 encoder-decoder 架构,编码器将源句子编码为固定长度的向量,解码器根据该向量生成翻译。本文推测原句编码到一个固定长度的向量是一个瓶颈,然后文章提出了改进:在之前模型的基础上自动寻找目标词相关的源句子的部分,而不是

2020-08-18 14:39:59 446

原创 《Sequence to Sequence Learning with Neural Networks》阅读笔记

AbstractDNNs 可用于各种复杂的学习任务并取得很好的效果,但是 DNNs 不能用于序列到序列的映射。这篇论文提出了一种端到端(end-to-end)的神经网络模型,来学习这种映射关系。作者用一个多层的 LSTM 网络来将输入序列映射(编码)为一个固定大小维度的向量,再用另外一个多层的 LSTM 网络来解码该向量为输出序列。在 WMT-14 英语 - 法语的翻译任务中取得很好的结果(BLEU 34.8)。 同时,作者发现模型对句子的主动与被动语态并不敏感,但是对输入词的顺序很敏感;逆转输入序列的顺

2020-08-10 14:20:50 614

原创 Pytorch学习——张量、计算图与 autograd

张量、计算图与 autograd张量张量是什么?张量是一个多维数组,它是标量、向量、矩阵的高维拓展。张量的属性和性质VariableTensorTensor 增加 3 种属性张量的创建1. 直接创建torch.tensor( data, # 数据, 可以是list, numpy dtype=None, # 数据类型,默认与data的一致 device=None, requires

2020-07-01 20:09:36 1095 1

原创 李宏毅-ELMO, BERT, GPT讲解笔记

背景知识NLP 中词的表示one-hot embedding(1-of-N Encoding)缺点:词汇之间的关联没有考虑,因为不同词之间的距离都是一样的word classword embedding(word2vec)缺点:一词多义的问题无法解决Have you paid that money to the bank yet?They stood on the river bank to fish.上面两句话中的 bank 显然不是同一意思,因此用同一个 embedding

2020-05-25 16:52:25 786

原创 Transformer详解

传统 RNN 存在问题处理 Seq2seq 最常用的就是 RNN。RNN 的问题在于无法 Parallel (并行处理),可以用 CNN 解决这个问题,但是 CNN 能够考虑的特征向量非常少,而解决这个问题又需要通过再次叠加 CNN 来解决。为了解决这个问题,引入了 Self-Attention Layer,其输入是一个 sequence 输出也是一个 sequence,能够达到跟 RNN 一样的效果,输出 b 可以并行计算出来。Self-attention 机制其技术最早出现的那篇文章就是 A

2020-05-19 16:56:54 1842 1

原创 注意力机制学习

Attention 就是对输入整体的各个部分分配不同的权重,每一个位置的输出由输入的不同权重加权求和得到attention 工作实质:对应于机器翻译时阶段 1 :zzz 对应于 Query,hhh 对应于Key,Q 与 K 进行相似度计算得到权值阶段 2:对于求得的 α\alphaα 进行 softmax 归一化得到不同权重阶段 3:Attention Value 等于 权重 α^\hat \alphaα^ 和输入 hhh 对应的乘积求和。这里 hhh 对应于 Valuea

2020-05-18 10:18:36 593

原创 数据预处理常用方法流程

数据读取和选择读取数据df = pd.read_csv('.csv')输出形状和信息print(df.shape)print(df.info())选择数字列和非数字列df_numeric = df.select_dtypes(include=[np.number])df_non_numeric = df.select_dtypes(exclude=[np.number])缺失数据找出缺失数据特征较少时,缺失数据热图cols = df.columns[:30] # first

2020-05-12 20:00:01 1612

原创 吴恩达深度学习课程第五课笔记——序列模型

文章目录第五门课 序列模型 (Sequence Models)第一周 循环序列模型(Recurrent Neural Networks)1.1 为什么选择序列模型?(Why Sequence Models?)1.2 数学符号(Notation)1.3 循环神经网络模型(Recurrent Neural Network Model)1.4 通过时间的反向传播(Backpropagation thro...

2020-04-27 20:29:33 2139

原创 吴恩达深度学习课程第三课笔记——结构化机器学习项目

文章目录第三门课 结构化机器学习项目(Structuring Machine Learning Projects)第一周 机器学习(ML)策略(1)(ML strategy(1))1.1 为什么是 ML 策略?(Why ML Strategy?)1.2 正交化(Orthogonalization)1.3 单一数字评估指标(Single number evaluation metric)1.4 满足...

2020-04-27 20:27:23 834

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除