自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

夕小瑶的卖萌屋

致力于分享搜索、推荐、NLP领域的相关内容,更多内容欢迎移步微信公众号「夕小瑶的卖萌屋」

  • 博客(81)
  • 资源 (4)
  • 收藏
  • 关注

原创 GitHub多人协同详细教程

本文将以夕小瑶开源项目CS224n-winter-together为例,详细介绍github上多人协同提交代码的整个拉取和提交流程。该项目是由微信公众号 夕小瑶的卖萌屋 发起的开源课程学习项目,本项目旨在为大家提供一个课程笔记、感悟与延伸、课程作业与project的分享与内容沉淀平台,每个人均可将自己的笔记、感悟、作业等提交到该repo下面对应课程的文件夹底下,来方便大家参考学习。本文就以...

2020-02-11 13:35:18 1557 1

原创 搜索引擎核心技术与算法 —— 词项词典与倒排索引优化

作者:夕小瑶卖萌屋 —— QvQ首先回顾一下构建倒排索引的几个主要步骤:(1)收集待建索引的文档;(2)对这些文档中的文本进行词条化;(3)对第2步产生的词条进行语言学预处理,得到词项;(4)根据词项对所有文档建立索引。可以看到,上诉过程中非常重要的一步就是获得词项,那么词项是什么,又是怎么获得的呢?1. 词项集合的确定在确定词项前,我们需要明确三个概念:...

2020-02-09 13:53:36 1181

原创 搜索引擎核心技术与算法 —— 倒排索引

作者:夕小瑶卖萌屋 —— QvQ这里首先区分两个概念:搜索和检索检索:数据库时代的概念,及将数据存入数据库,有需要的时候进行查取。对结果的要求绝对精确;比如我要在图书馆里找到所有出现“白马”字样的图书,这里用到的就是检索。搜索:互联网时代的概念,人们将信息资源放在网上,第三方将互联网的信息搜罗起来,建立索引,所以搜索更多是指基于问题相关性的信息收集方式。当我想知道“如何骑白马最...

2020-02-09 12:09:42 1337

原创 GPU加速实战——混合精度训练

作者:小鹿鹿鹿,夕小瑶 其实小夕的内心是拒绝的,就一台破Xp,再优化能快到哪里去呀T^T燃鹅小夕找了一份开源代码,结果刚开始跑小夕就震惊了!什么鬼?训练速度怎么这么快?出bug了吧????一毛一样的模型、超参数和硬件环境,竟然可以获得2.X倍的加速。关键的关键,这不是一个特例,在各类网络训练问题上都提速明显,遍地开花~~~...

2020-02-08 10:57:06 3209 3

原创 持续学习 (continual learning/ life-long learning)详解

作者:夕小瑶的卖萌屋—— 「小鹿鹿鹿」问题定义我们人类有能够将一个任务的知识用到另一个任务上的能力,学习后一个任务时也不会忘记如何做前一个任务。这种能力叫持续学习(continual learning/ life-long learning)。而这个能力归结起来主要有两个问题: 如何能把之前任务的经验用上,使得更快更好的学习当前任务; 学习当前任务时,不会忘记之前已经...

2020-02-07 23:11:07 51475 10

原创 NLP最佳入门与提升路线

前言对突如其来的长假感到惶恐和不安?紧盯2019-nCoV的最新消息却依然感觉很空虚?腰酸萎靡脖子僵甚至怀疑自己有点发烧?这是长时间没学习的症状。很久以前小夕推送的深度学习入门资料推荐和机器学习与数学基础入门系列收到到了很多小伙伴的好评和感谢,也因此一直有呼声希望小夕写一篇NLP方向的入门指导。于是,趁着这个长假,终于将这一篇拖了两年的稿子结了,希望能帮助到大家哦。入...

2020-02-05 16:56:23 1649 1

原创 这是一篇有温度的NLP秋招面经

一、前言往昔的回忆使我们激动,我们重新踏上旧日的路,一切过去日子的感情,又逐渐活在我们的心里;使我们再次心紧的是,曾经熟悉的震颤;为了回忆中的忧伤,真想吐出一声长叹……感谢一路上曾经鼓励、帮助过我的人。愿我们在彼此追梦的道路上,一直走下去。二、选择有时候比努力重要2016年,那个炎热的夏天,拿着手里的保研名额,以及清北华五的录取意向,我最终选择来到了目前所在的地方 —— 北京某双...

2019-12-27 12:18:56 722

原创 TensorBoard进行可视化

TensorBoard是TensorFlow下的一个可视化的工具,能够帮助研究者们可视化训练大规模神经网络过程中出现的复杂且不好理解的运算,展示训练过程中绘制的图像、网络结构等。 一、配置环境对tensorflow可视化首先需要tf官网提供的tensorboard.exe这个程序,当然这个程序在下载tf的时候也是自带的,我是用anaconda进行安装和配置的,则tensorboard....

2018-12-25 11:20:13 941 2

转载 DNS域名解析原理

DNS(Domain Name System)是因特网的一项服务,它作为域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。人们在通过浏览器访问网站时只需要记住网站的域名即可,而不需要记住那些不太容易理解的IP地址。在DNS系统中有一个比较重要的的资源类型叫做主机记录也称为A记录,A记录是用于名称解析的重要记录,它将特定的主机名映射到对应主机的IP地址上。如果你有一个自己的域名,...

2018-12-25 11:19:45 932

原创 (1.1)GloVe源码解析

安装在github上找到源码下载编译即可$ git clone http://github.com/stanfordnlp/glove$ cd glove && make$ ./demo.sh执行顺序GloVe代码包括了四个.c文件首先执行vocab_count.c这个文件的功能是扫一遍语料,建立一个字典。执行cooccur.c文件。它的功能是从语料中建立共现矩...

2018-10-20 20:19:36 1457

原创 (1.2)GloVe源码解析——vocab_count.c

概览vocab_count.c的功能就是生成词典。它的输入是整个语料,它的输出是词典。词典的形式是单词以及单词在语料中出现的次数(如下表)。//vocab.txtthe 1061396of 593677and 14567词典是按照频数从高到低排好序的。这部分代码和word2vec中建立词典的代码很像。由于C语言中没有dict这个的现成的数据结构,需要用C语言自己写一个dict。首先...

2018-10-20 20:04:16 1043

转载 一张图总结Google C++编程规范(Google C++ Style Guide)

Google C++ Style Guide是一份不错的C++编码指南,我制作了一张比较全面的说明图,可以在短时间内快速掌握规范的重点内容。不过规范毕竟是人定的,记得活学活用。看图前别忘了阅读下面三条重要建议:保持一致也非常重要,如果你在一个文件中新加的代码和原有代码风格相去甚远的话,这就破坏了文件本身的整体美观也影响阅读,所以要尽量避免。一些条目往往有例外,比如下面这些,所以本图不能代替...

2018-07-28 19:56:21 6876

原创 Linux下go开发环境的安装

(一)从官网安装Go语言1.对于64位Linux:[plain] view plain copy$ wget https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz  2.对于32位Linux:[plain

2017-10-09 22:41:41 754

原创 【分支界限法】

1. TSP问题 有若干个城市,任何两个城市之间的距离都是确定的,现要求一旅行商从某城市出发必须经过每一个城市且只在一个城市逗留一次,最后回到出发的城市,问如何事先确定一条最短的线路已保证其旅行的费用最少?#include <stdio.h>const int MAX = 999999999;int map[20000][20000];int visited[20000];int ci

2017-09-16 00:22:06 368

原创 【分治算法】

1. 欧几里得算法(辗转相除法)知识背景: 求a和b的最大公约数 记 a(mod)b=ca (mod) b=c a=kb+ca=kb+c 设a b的最大公约数为d,则a=m∗da=m*d b=n∗db=n*d且m和n互质。c=a−kb=md−knd=(m−kn)dc=a-kb=md-knd=(m-kn)d因为m和n互质,则n和m-kn互质,c和b的最大公约数也是d所以: “a和b(a>b

2017-09-15 14:48:46 454

原创 Github使用教程

github使用指南git基本操作1 创建版本库2 将文件添加到仓库3 将文件提交到仓库4 查看仓库当前状态5 查看文件做了哪些修改6 提交日志版本回退1 列出每一次更新库的命令及对应的commit id2 回退3 撤销修改删除文件远程仓库1 配置远程仓库2 添加远程仓库3 从远处库克隆github使用指南1 git基本操作1.1 创建版本库git init1.2 将

2017-09-13 18:20:51 637

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-07-18 21:39:26 322

原创 github使用详解

那么当你执行 git reset --hard 之后,历史纪录是不能跟远程的记录直接合并的。举个例子,远程是 A -> B -> C -> D,你 git reset --hard 之后是A -> B。这时候除非远程那边抹掉 C 和 D,否则是不能合并的。因此,这时候,你应该使用 git push origin master --force 来强行覆盖远程记录。请不要根据提示使用

2017-07-18 14:05:27 222

原创 Syslog配置详解及编程实例

1.背景syslog是UNIX系统中提供的一种日志记录方法(RFC3164),syslog本身是一个服务器,程序中凡是使用syslog记录的信息都会发送到该服务器,服务器根据配置决定此信息是否记录,是记录到磁盘文件还是其他地方,这样使系统内所有应用程序都能以统一的方式记录日志,为系统日志的统一审计提供了方便。2. 日志格式syslog记录的日志格式为:月  日  时

2017-07-11 23:03:24 27768

原创 Linux下实现U盘自动检测

背景:实现U盘插入系统时,系统自动从数据库中导入各类数据至U盘中。1.查看系统是否配置udev环境,并掌握其运行模式。参考文献2.在Centos 7环境下 udev的两个配置文件目录分别是 /etc/udev/rules.d 和 /usr/lib/udev/rules.d 其中在服务开启时,前者优先加载到内核中。两个目录下的文件如下所示:

2017-07-10 18:23:24 6329 2

原创 CentOS更改网卡配置

一、更改网卡名1.修改/etc/default/grub文件在GRUB_CMDLINE_LINUX一行中添加net.ifnames=0 biosdevname=02.重新生成GRUB配置并更新内核参数grub2-mkconfig -o /boot/grub2/grub.cfg (root权限) 3.更改/etc/sysconfig/network-scripts/

2017-07-04 18:54:49 1166

原创 C/C++ 打印格式小结

常用数据类型及其输出格式符号属性长度属性基本型所占字节数取值范围可用输入符可用输出符----char1-2^7 ~2^7-1%c%c、%d、%uunsigned --char10 ~2^8-1 %c%c、%d、%u--short[int]2-2

2017-04-05 20:34:27 2287

原创 Mysql 常用操作

1.显示所有数据库:  show databases;2.使用某个数据库: use 数据库名;3.显示该数据库中的所有数据表: show tables;4.显示数据表中的所有记录数据:select * from 数据表;5.显示数据表中的表头属性:show columns from 数据表;

2017-04-05 19:44:15 265

转载 CodeBlocks "no such file or directory" or"未定义的引用"错误解决方案(创建类找不到头文件)

在CodeBlocks下,有时候需要自己定义类,当然就要添加相应的头文件,但添加进去的头文件明明包含在项目中了,但编译时还是会报错:no such file or directory;这是为什么呢?       其实是一个很简单的问题,但有些人(比如说我)就会困在这儿,百度也找不到(至少我是没找到),所以写了上来.为了能让编译器找到你自己的头文件,需要把头文件的存放路径告诉编译器,操作

2017-03-31 09:55:16 26767 5

转载 c/c++生成随机数

1.基本函数在C语言中取随机数所需要的函数是:#include void srand (unsigned int n);/*srand()函数使用自变量n作为种子,用来初始化随机数产生器。只要把相同的种子传入srand(),然后调用rand()时,就会产生相同的随机数序列。因此,我们可以把时间作为srand()函数的种子,就可以避免重复的发生。如果,调用rand()之前

2017-03-26 18:33:11 445

转载 c/c++计算程序运行时间

C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t。在MSDN中,查得对clock函数定义如下: clock_t clock( void ); 这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock)。其中c

2017-03-26 13:59:14 501

原创 优秀博文汇总

1.Tanky Woo算法专题2.

2017-03-26 13:41:46 376

转载 字典树(讲解+模板)

1. Trie树Trie树,即字典树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较,查询效率比哈希表高。Trie的核心思想是空间换时间。利用字符串的公共前缀来降低查询时间的开销以达到提高效率的目的。它有3个基本性质:

2017-03-25 17:21:59 931 2

转载 百度笔试题:malloc/free与new/delete的区别

相同点:都可用于申请动态内存和释放内存不同点:(1)操作对象有所不同。malloc与free是C++/C 语言的标准库函数,new/delete 是C++的运算符。对于非内部数据类的对象而言,光用maloc/free 无法满足动态对象的要求。对象在创建的同时要自动执行构造函数, 对象消亡之前要自动执行析构函数。由于malloc/free 是库函数而不是运算符,不在编译器控制权限之内,不

2017-03-22 17:25:21 392

转载 获取网络接口信息——ioctl()函数与结构体struct ifreq、 struct ifconf

转载自: 点击打开链接linux下 可以使用ioctl()函数 以及 结构体 struct ifreq  结构体struct ifconf来获取网络接口的各种信息。ioctl首先看ioctl()用法ioctl()原型如下: #include int ioctl(int fd, int request, ...);

2017-03-16 15:41:32 907

转载 原始套接字的魔力【上】

基于原始套接字编程       在开发面向连接的TCP和面向无连接的UDP程序时,我们所关心的核心问题在于数据收发层面,数据的传输特性由TCP或UDP来保证:                   也就是说,对于TCP或UDP的程序开发,焦点在Data字段,我们没法直接对TCP或UDP头部字段进行赤裸裸的修改,当然还有IP头。换句话说,我们对它们头部操作的空间非常

2017-03-15 10:39:40 618

原创 linux c 使用第三方库

1.建立max.c文件int max(int n1, int n2, int n3){ int max_num = n1; max_num = max_num < n2? n2: max_num; max_num = max_num < n3? n3: max_num; return max_num;}2.建立max.h文件#ifndef

2017-03-11 09:06:50 3817 1

原创 IT博览

1.开源中国点击进入2.深蓝阅读点击进入

2017-03-08 14:34:42 382

原创 ubuntu下snort的安装

1点击连接安装以下软件点击打开链接2.解压daq源码包,此时直接安装daq会有报错,缺少各种各样的依赖包,所以要先安装依赖包:bison、flex、libpcap(安装过程见我上一篇博文)3.编译安装dap:  进入解压好的文件夹    ./configure3.如果出现以下错误,点击(点击打开链接),安装pcre-8.40.tar.gz

2017-03-03 10:29:21 2391

原创 ubuntu下libpcap的安装

1.从 ftp://ftp.gnu.org/gnu/下载最新版本flex、bison、GNU M4、libpcap安装包。链接如下:ftp://ftp.gnu.org/gnu/bison/ftp://ftp.gnu.org/gnu/m4/http://sourceforge.net/projects/flex/files/http://www.tcpdump.org/release

2017-03-03 09:49:44 2955 1

原创 linux c编程 获取本机CPU利用率 内存使用情况 硬盘使用情况

linux c编程 获取本机CPU利用率 内存使用情况 硬盘使用情况

2017-03-01 21:14:02 10937 1

转载 Linux进程间通信——使用消息队列

下面来说说如何用不用消息队列来进行进程间的通信,消息队列与命名管道有很多相似之处。一、什么是消息队列消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。  每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构。我们可以通过发送消息来避免命名管道的同步和阻塞问题。但是消息队列与命名管道一样,每个数据块都有一个最大长度的限制。Linux用宏

2017-02-28 21:51:50 335

转载 Linux进程间通信——内存共享

下面将讲解进程间通信的另一种方式,使用共享内存。一、什么是共享内存顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言函数malloc分配的内存一

2017-02-28 21:03:01 194

转载 Socket各结构体定义以及Socket编程函数集(非常有用)

网络编程常用函数

2017-02-28 15:21:50 5181

原创 inet_pton()和inet_ntop()函数详解

ip地址的转化

2017-02-28 14:54:35 196303 11

中文垃圾短信数据集NLP

分文标签和数据两类,其中标签为1的是垃圾短信,标签为0的是正常短信 例子: 0 乌兰察布丰镇市法院成立爱心救助基金 1 (长期诚信在本市作各类资格职称(以及印 /章、牌、 ……等。祥:x x x x x x x x x x x 李伟%

2018-07-26

第五届蓝桥杯大赛个人赛(软件类)省赛真题

第五届蓝桥杯大赛个人赛(软件类)省赛真题

2016-02-03

空空如也

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

TA关注的人

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