CodLe

Keep calm and make sure the growth is my own business.

Codle

Codle

电子科技大学在读研究生,主要从事源码分析理解、自然语言处理领域,目前对推荐系统也略有涉及,欢迎大家多多指教

技术分享

Tech Note

Docker Docker 中以非 root 账号访问挂载的文件夹遇到权限问题 Docker 中的账户系统其实与宿主机是同一个系统,因此需要保证文件夹对 Docker 内的账号具有访问权限,通常我们使用 chown 来为文件夹分配账号,例如: sudo chown docker_account /opt/xxxx 但是由于 Docker 内的账号在宿主机并不一定存在,如果不存在会报错。因此更好的办法是使用 UID 来分配权限。 sudo chown 50000 /opt/xxxx UID 不会进行校验,这样在只用给 Docker 内的账号赋予同样的 UID 即可顺利访问文件了。

技术分享

Celery 任务编排入坑

基本概念和用法 签名(Signatures) 基本概念 Celery 函数签名的意思是构造一个任务签名对象,该签名对象构造后并不会去执行(类比于一个静态对象),该对象具有函数的名称,参数等信息,可以供任意对象进行调用后启动任务。 signature() 实现了对函数参数,关键字参数和执行选项的包装,使其可以作为参数对象传递到其他函数,也可以序列化后作为消息(Message)传递给其他任务。 以下为一些具体使用的示例: 通过函数名来创建 add 任务的签名,下列代码创建了一个参数为两个整数输入 2, 2 的 add 任务签名,并设置了倒计时为 10。 >>> from celery import signature >>> signature('tasks.add', args=(2, 2), countdown=10) tasks.add(

技术分享

Python 包引用问题

首先给定一个文件结构,这个结构在大部分的项目中都是非常常见的: |____ run.py |____ __init__.py |____ module_b | |____ __init__.py | |____ b.py | |____ c.py |____ module_a | |____ __init__.py | |____ a.py 其中 module_a 、 module_b 和 module_c 是三个模块,run.py 是一个总的运行脚本。 在 b.py 文件中实现了一个简单的打印函数: def print_hello(): print('hello') 执行子文件夹的 py 文件 引用同级文件 在 c.py 中引用 b.

我的 2020 秋招面经
学习笔记

我的 2020 秋招面经

煎熬的秋招终于结束了,写一下秋招期间的面经。 深信服 算法“大牛” 一面(7月19日,40 分钟) 自我介绍; 选一个自己觉得不错的项目谈谈; 这个和安全相关的比赛是怎么做的; 谈谈 Soft Attention,Attention 中需要先线性变换么? 算法题:一个数组,存在一个数只出现一次,其他数出现 k 次,找到只出现一次的数。 半周后显示挂了... 滴滴 国际化算法策略 一面(7月20日,25 分钟) 自我介绍; 聊下爱奇艺实习做的主要工作; 说一下 Transformer 和 BERT 模型; 问下竞赛用的 YouTube 模型,为什么是 Listwise,模型的输出是什么; 商品 Embedding 怎么做的,有哪些方法?谈了下随机游走 node2vec;

写在重新整理博客站之后
日常生活

写在重新整理博客站之后

虽然还在焦急的等待 offer 开奖中,但是大体上已经没有太多事情了,因此重新整理了这个博客。 分享一个最近在听的歌曲表达下重新开始的心情,希望能在人生新的阶段能够有更好的突破。 关于本博客未来的内容计划大概是: 先把之前面试中考到的一些考点重新复盘整理下,常考点一定是工作中常用的,因此重新认真总结应该也有很多收获; 未来工作中需要的内容以及自己的思考和总结; 个人兴趣相关的东西; 之前的文章很多感觉有点虎头蛇尾,因此会准备重新润色一下重新上架,目前先撤下来了。评论为了稳定换成了 Disqus,科学上网后即可看到,如果无法进行相关操作又对内容有问题可以通过邮件和我联系。 最后,谢谢来我博客!

学习笔记

我的 2020 暑期实习面经

本人情况:双非本末流985研二,爱奇艺 NLP 日常实习经历,无论文,投的都是 NLP 算法岗。 阿里达摩院(挂) 一面(45分钟) 上来面试官介绍他们组情况,问我有什么想问的?我有点懵逼,这不是一般最后的环节吗。 问研究生期间的研究方向; 研究内容有提到 DSSM,询问是否知道现在对 DSSM 的改进模型,回答不知,现在更多做的生成模型,因此问题转到生成模型; 询问对生成模型的了解,发展情况,询问项目中的难点,回答解码策略,谈到了 Beam Search 和 Random Sample 策略。 CNN 模型中池化层的作用,Max Pooling 是如何反向传递梯度的。 机器学习中正则化做什么的?约束模型参数,防止过拟合。 正则化有 L1 和 L2 正则化,

学习软件

如何利用实验室服务器进行远程开发

对于计算机研究生而言,一般在实验室都有配备的 GPU 服务器用于深度学习之类的开发(作者现在都才只有台 1070 的旧机子,哭泣 有了一块 RTX 2080 了!)。在很多情况下都有远程开发的需求,比如:晚上在寝室想改一下代码继续跑实验、周末在寝室摸鱼不想去实验室、实验室公用一台电脑当面不好操作等。 本文将详细讲解我采用的一些远程开发方法,其中需要用到的工具有: frp,内网穿透神器 jupyter,远程网页开发 vs code,开发所用编辑器(可换成 PyCharm) 带公网 ip 的主机(阿里学生服务器等类似的即可满足要求) 内网穿透神器 frp 所谓内网穿透,就是将内网的主机映射到公网中,使得我们可以在任何地方都访问到该主机,一种简单的方法就是使用花生壳等软件实现,虽然操作简单,但是有着流量限制且该公司网页也让人感觉不太靠谱。所以还是自己来做比较好。 本文主要采用了 frp 开源软件来完成内网穿透的功能。frp 软件需要我们在公网服务器和本地服务器各开一个程序,公网服务器使用 frps 程序,本地服务器使用

自然语言处理

N-Gram 语言模型分词实现

背景介绍 汉语文本是基于单字的,汉语的书面表达方式也是以汉字作为最小单位的,词与词之间没有显性的界限标志,因此分词是汉语文本分析处理中首先要解决的问题。添加合适的显性的词语边界标志使得所形成的词串反映句子的本意,这个过程就是通常所说的分词。 实例 输入句子:南京市长江大桥。可能存在的分词: 南京/市/长江/大桥 南京/市/长江大桥 南京市/长江/大桥 南京市/长江大桥 南京/市长/江/大桥 南京/市长/江大桥 南京市长/江/大桥 南京市长/江大桥 现有的方法 基于词表的分词方法 正向最大匹配法(forward maximum matching method, FMM) 逆向最大匹配法(backward maximum matching method, BMM) N-最短路径方法

Linux 源码安装 PyTorch 小记
技术分享

Linux 源码安装 PyTorch 小记

PyTorch 是一个非常强大的神经网络的框架,为了发挥其最大的效果一般都会结合 GPU 来使用。但是随着相关显卡硬件的发展,官方对于一些老型号显卡的预编译也随之取消了。如果还在使用较老的显卡型号,同时也想使用 PyTorch 的 GPU 支持,那么就需要从源码进行安装了。 本机配置 首先,这里介绍一些本机的实际环境: 操作系统:Ubuntu 18.04 LTS Python 版本:3.6 笔记本型号:联想 Y50-70 显卡型号:GTX 860m(4G,开普勒架构版本) 内存:16G 安装环境 安装环境主要包含 Python 环境、显卡驱动、CUDA、cuDNN。下面将分别讲述安装的过程。 Python 环境 PyTorch 是一个 Python 下的神经网络框架,