- 博客(135)
- 资源 (4)
- 收藏
- 关注
原创 iostat源码解析
iostat命令是报告cpu的统计信息和磁盘的i/o统计信息。iostat命令通过观察存储设备实际的工作时间和它们的平均传输率来监控系统的i/o负载。这个不需要root权限,数据来源可以直接通过访问procfs获取。基本用法和输出的基本含义iostat -d -x 1#表示显示设备状态,显示扩展信息,每秒输出一次iostat指标解读性能指标含义提示Device...
2020-03-15 13:17:17
2912
原创 iotop源码解析
文章目录背景知识Linux pid,tgid关系进程优先级源码结构解析vmstat模块netlink模块genetlink模块ioprio模块data模块iotop 运行在用户态,但io的管理是内核态完成的。iotop的数据统计本质就是不断从内核获取数据。背景知识Linux pid,tgid关系 USER VIEW <-- PID 43...
2020-03-07 11:25:37
2173
原创 Ubuntu配置Supervisor管理进程
目录Supervisor的作用supervisor组件安装配置管理命令program配置web管理界面Supervisor的作用Supervisor( http://supervisord.org )是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个用户关注的进程。用...
2019-03-10 15:15:35
2012
原创 ubuntu16.04编译hadoop-3.0.0源码
小故事:项目需要提供native lib的hadoop3.0.0。但官方的二进制文件默认只提供了内建的java版本,所以这个blog的目的实际上是说明一下编译过程中遇到的坑,同时编译出native lib并替换二进制版本中的native文件夹. 完工以后结果就是这样的:hadoop checknative2018-07-24 00:11:53,480 INFO bzip2.Bzip2Fac...
2018-07-24 01:58:33
1878
转载 朴素贝叶斯理论推导与三种常见模型
1. 朴素贝叶斯的理论基础贝叶斯定理、特征条件独立假设就是朴素贝叶斯的两个重要的理论基础。1.1 贝叶斯定理P(A|B)表示事件B已经发生的前提下,事件A发生的概率,叫做事件B发生下事件A的条件概率。其基本求解公式为:P(A|B)=P(AB)P(B)P(A|B)=P(AB)P(B)P(A|B)=P(AB)P(B) 贝叶斯定理便是基于条件概率,通过P(A|B)来求P(B|A):...
2018-07-03 00:28:27
1928
原创 Φ(x)累积密度函数的C ++实现
正态分布函数正态分布(Normal distribution)又名高斯分布(Gaussian distribution),是一个在数学、物理及工程等领域都非常重要的概率分布,在统计学的许多方面有着重大的影响力。若随机变量X服从一个数学期望为μ、标准方差为σ2的高斯分布,记为: X∼N(N(μ,σ2),σ2)X∼N(N(μ,σ2),σ2)X∼N(N(μ,σ^2),σ^2) 则其概率密...
2018-06-23 17:12:51
3173
原创 Ubuntu16.04+GXT1060+cuda9.0+cudnn7.1+tensorflow1.8
目录目录准备工作环境基础安装包下载安装流程清理环境安装Nvidia驱动验证安装Cuda&cudnnCudacudnn验证cuda的安装安装tensorflow准备工作环境基础linux系统:16.04.1-Ubuntu X86_64显卡:GXT1060 gcc –version gcc (Ubuntu ...
2018-06-23 16:48:35
4286
原创 Python—Django配置问题:Unknown command: 'syncdb'
在配置完数据库mysite/settings.py后,DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), }}run python manage.py syncdb...
2018-06-07 00:50:15
2493
原创 Mysql 8.0在Ubuntu下的安装
Ubuntu的默认mysql版本会安装5.6。貌似5.7以后对分布式数据库有了更好的支持,直接一步到位吧。下载和解压mysql官方下载地址: https://dev.mysql.com/downloads/mysql/ 最后两个选项是已经经过编译的文件。解压后可以得到两个文件: 嗯,我们直接解压第一个文件,可得: 确定mysql的安装目录cp -...
2018-05-31 02:43:17
9681
1
原创 开/闭运算(python+opencv)
接下来介绍图像形态学中的几个基本操作:腐蚀、膨胀、开操作、闭操作。 腐蚀好吧,其实就是选择滑动窗口中像素值最小的点(局部最小值) 公式表示:dst(x,y)=min(x′,y′)src(x+x′,y+y′)dst(x,y)=min(x′,y′)src(x+x′,y+y′) dst(x,y) = min_{(x\prime,y\prime)}src(x+x\prime,y+y\pr...
2018-05-29 02:34:40
16205
2
原创 轮廓检测(python+opencv)
轮廓可以理解为图像中具有相同颜色或密度的位于边界的连续点的集合,轮廓是形状分析和对象识别的有利工具。 在python-OpenCV中,我们常用findContours函数来计算轮廓,每个独立的轮廓都是以Numpy array的点坐标的形式呈现。 为了在图像中显示出计算出的轮廓,我们使用drawContours函数。通常这个函数会配合findContours使用。官方文档相关api...
2018-05-27 17:11:42
13781
原创 图像二值化(python+opencv)
定义:图像的二值化,就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的只有黑和白的视觉效果。 一幅图像包括目标物体、背景还有噪声,要想从多值的数字图像中直接提取出目标物体,常用的方法就是设定一个阈值T,用T将图像的数据分成两部分:大于T的像素群和小于T的像素群。这是研究灰度变换的最特殊的方法,称为图像的二值化(Binarization)。全局阈值:Py...
2018-05-26 00:48:07
16280
1
转载 gridsearchcv(网格搜索)&kfold validation(k折验证) in ML
网格搜索算法是一种通过遍历给定的参数组合来优化给定模型性能的方法。以决策树为例,当我们确定了要使用决策树算法的时候,为了能够更好地拟合和预测,我们需要调整它的参数。在决策树算法中,我们通常选择的参数是决策树的最大深度。于是我们会给出一系列的最大深度的值,比如 {‘max_depth’: [1,2,3,4,5]},我们会尽可能包含最优最大深度。不过,我们如何知道哪一个最大深度的模型是最好...
2018-05-21 02:27:26
5605
1
原创 Solution of 1144 The Missing Number (20)
1144 The Missing Number (20)Given N integers, you are supposed to find the smallest positive integer that is NOT in the given list.Input Specification:Each input file contains one test case. For...
2018-05-19 00:10:49
313
原创 Python Socket 编程:聊天室程序的展开
模块信息简介:asyncoreAsyncore是python的标准库。文件asyncore.py中最重要的类为dispatcher,使用的时候只需要继承asyncore.dispatcher就好了可以这样理解每一个继承了asyncore.dispatcher的类都代表了一个socket(监听socket或者连接socket)实际上,asyncore.dispatcher就是对s...
2018-05-07 02:12:30
1293
原创 Solution of 1122. Hamiltonian Cycle (25)
1122. Hamiltonian Cycle (25)The “Hamilton cycle problem” is to find a simple cycle that contains every vertex in a graph. Such a cycle is called a “Hamiltonian cycle”.In this problem, you are supp...
2018-04-23 01:52:13
268
原创 百度语音识别API的简单应用
1. prepare根据百度开发文档的提示可以知道,API仅能处理特定格式的语音文件。 由于底层识别使用的是pcm,因此推荐直接上传pcm文件。如果上传其它格式,会在服务器端转码成pcm,调用接口的耗时会增加。 语音识别仅支持以下格式 :pcm(不压缩)、wav(不压缩,pcm编码)、amr(有损压缩格式);8k/16k 采样率 16bit 位深的单声道。即: pc...
2018-04-02 01:32:13
16393
1
原创 贝叶斯思维——chapter5(胜率和加数)
5.1 胜率通常用[0,1]之间的数字来表示概率,不过这并非唯一的方法。也可用博彩业的另一种概率表示形式——胜率(odd)。 胜率是一个事件可能发生的概率与不发生的概率比值。 假如球队A同球队B比赛,获胜的概率为75%,我会说他们的胜率是3:1。 但当概率较低,通常称之为赔率(odd against),而不是胜率(odds in favor)。例子中球队B获胜的概率为25%,我会说他们的赔率
2017-12-22 00:46:39
2403
2
原创 matplotlib为图片上添加触发事件进行交互
这篇文章的目的出于实验的需要,我需要对图片上的部分区域做出涂抹标记,本来是选择用opencv做交互的,但在需要进行图像的输出以及鼠标时间添加时,opencv出现错误。解决方案网上有很多,尝试以后依然bug,这里先做一个记录,有时间再来处理。错误报告如下:OpenCV Error: Unspecified error (The function is not implemented. Rebuild
2016-12-21 12:50:06
6321
2
原创 Linux shell脚本,jpg文件批量化转pdf
出于论文的需要,我要把jpg文件全部转成pdf的格式以后再嵌入到最后的pdf中。ubuntu中可以用convert命令对图像的格式和大小等进行转换(convert命令可以用在脚本中),但是convert不是ubuntu自带的命令,需要先安装ImageMagick,之后才可以使用。安装命令:sudo apt-get install imagemagick 测试是否安装成功: 首先查看版本,命令:
2016-11-27 17:30:22
4825
原创 给Python中通过urlopen/urlretrieve获取网页的过程中,添加gzip的解压缩支持
之前已经实现了用python获取网页的内容,相关已实现代码为:try: html = urlopen(req) except HTTPError, e: print 'HTTPErrorerr' print e.code print e.read() return None except BadStatu
2016-11-20 02:24:54
1195
原创 sublimeShortCut
选择类编辑类搜索类显示类选择类 Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本。 Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑。举个栗子:快速选中并更改所有相同的变量名、函数名等。 Ctrl+L 选中整行,继续操作则继续选择下一行,效果和 Shift+↓ 效果一样。 Ctrl+Shift+L
2016-11-20 02:22:29
536
转载 近乎完美的Markdown写作体验 - SublimeText3 + OmniMarkupPreviewer
近乎完美的Markdown写作体验 - SublimeText3 OmniMarkupPreviewer什么是 MarkdownSublime Text 3 以及 OmniMarkupPreviewerOmniMarkupPreviewer 设置详解安装和使用详细设置近乎完美的Markdown写作体验 - SublimeText3 + OmniMarkupPreviewer这篇blog的
2016-11-19 14:58:29
10485
原创 solution of POJ:1017.Packet
DescriptionA factory produces products packed in square packets of the same height h and of the sizes 1*1, 2*2, 3*3, 4*4, 5*5, 6*6. These products are always delivered to customers in the square parcel
2016-11-17 17:23:13
525
原创 solution of POJ:2393.Yogurt factory
DescriptionThe cows have purchased a yogurt factory that makes world-famous Yucky Yogurt. Over the next N (1 <= N <= 10,000) weeks, the price of milk and labor will fluctuate weekly such that it will c
2016-11-16 18:15:12
443
原创 solution of POJ:3190.Stall Reservations
DescriptionOh those picky N (1 <= N <= 50,000) cows! They are so picky that each one will only be milked over some precise time interval A..B (1 <= A <= B <= 1,000,000), which includes both times A and
2016-11-14 13:46:23
417
原创 solution of POJ: 1328.Radar Installation
DescriptionAssume the coasting is an infinite straight line. Land is in one side of coasting, sea in the other. Each small island is a point locating in the sea side. And any radar installation, locati
2016-11-13 23:18:08
505
原创 solution of POJ 2376.Cleaning Shifts
DescriptionFarmer John is assigning some of his N (1 <= N <= 25,000) cows to do some cleaning chores around the barn. He always wants to have one cow working on cleaning things up and has divided the d
2016-11-13 18:17:12
486
原创 solution of POJ:3187.Backward Digit Sums
3187.Backward Digit SumsDescriptionFJ and his cows enjoy playing a mental game. They write down the numbers from 1 to N (1 <= N <= 10) in a certain order and then sum adjacent numbers to produce a new
2016-11-12 23:16:06
635
原创 判断一棵二叉树是否为二叉搜索树(BST)
这里先简单介绍一下二叉查找树的性质: 递归定义节点的左子树中任意节点值小于根节点的值,节点的右子树中任意节点值大于根节点,且当前节点左右子树都必须是二叉查找树,不允许存在重复节点。 假设:节点的数据结构:struct node{ int value; node* left; node* right;};方法1(错误示范:自己踩的坑)首先BST是一个递归定义:这样我们首先
2016-11-11 23:11:23
29119
6
转载 矩阵运算——平移,旋转,缩放
虹软笔试的时候又遇到了一个图像旋转的问题。特此记下面是3类基本的2D图形变换。 1.平移设某点向x方向移动 dx, y方向移动 dy ,[x,y]为变换前坐标, [X,Y]为变换后坐标。 则 X=x+dx;Y=y+dy; X = x+dx; Y = y+dy;以矩阵表示[X,Y,1]=[x,y,1]⎡⎣⎢10dx01dy001⎤⎦⎥[X,Y,1]=[x,y,1] \begin{bmatrix}
2016-11-08 23:20:28
24729
2
原创 solution of LeetCode:146 LRU Cache
LeetCode:LRU CacheDesign and implement a data structure for Least Recently Used (LRU) cache. It should support the following operations: get and set.get(key) - Get the value (will always be positive) o
2016-11-08 22:50:37
442
原创 opencv 分水岭算法
分水岭在地理学上就是指一个山脊,水通常会沿着山脊的两边流向不同的“汇水盆”。分水岭算法是一种用于图像分割的经典算法,是基于拓扑理论的数学形态学的分割方法。如果图像中的目标物体是连在一起的,则分割起来会更困难,分水岭算法经常用于处理这类问题,通常会取得比较好的效果。 那我们先来看一下opencv当中,分水岭算法watershed的实现。 opencv的watershed是在Meyer, F.Col
2016-11-06 01:07:43
5925
2
原创 opencv 距离变换
二值图像距离变换的概念由Rosenfeld和Pfaltz于1966年在论文中提出,目前广泛应用于计算机图形学,目标识别及GIS空间分析等领域,其主要思想是通过表识空间点(目标点与背景点)距离的过程,就是通过使用两遍扫描光栅算法可以快速计算一个图像中非零像素点到最近的零像素点的距离,也就是到所有零像素点的最短距离,最终将二值图像转换为灰度图像。距离变换按照距离的类型可以分为欧式距离变换(Eudlide
2016-11-05 23:47:08
4902
原创 拓扑排序的原理及其实现
这里要从一道题目开始说起题目大意:我们的系统现在有一连串的事务需要处理,但事务之间存在依赖性,问我们的事务应该以怎样的顺序进行处理。 第一行读入两个整数,节点总数m,依赖项的个数n;接下来读入n行数据,每行数据:A size BCDE,表示BCDE完成以后才能处理A,size表示接下来的节点个数输入: 13 11 1 1 0 5 2 0 3 0 1 2 3 1 2 4 2 5 6 6
2016-11-05 16:33:48
906
原创 求满足条件的长度为N的字符串的个数(斐波那契数列)
今天做到了一道题目,初看时愣了一下,回过头在做的时候忽然发现其实是斐波那契数列。原题大概是这样的:条件1:字符串只包含‘0’或‘1’; 条件2:字符串只能以‘1’开始; 条件3:字符串不能够包含‘00’的组合; 问:长度为N的字符串的合法的组合到底有几种可能性?解: 这里先记录一下自己的思考过程: 字符串起始只能是‘1’,所以实际上就是问(长度为N-1的字符串全部的组合数-包含‘00
2016-11-02 20:13:45
1871
原创 从一个未知容量的投票木箱中,随机抽取m张投票
昨天晚上参加了喜马拉雅的笔试,看完这题我一脸愣逼,当时的第一个想法是类似线段树,每次从m个数中随机一个数进入到上一层。。。最后发现要保证等概率的问题对长度实质是由要求的。回去果断百度,发现这题其实在11年的百度笔试题中就出现过,惭愧。原题大概是这样的:一个服务器一天内会收到很多request,但是服务器只能存放m个request,试设计一种算法并证明,使得在时时的reqest中选择m个保存,并保证最
2016-11-01 11:43:57
431
转载 RapidXml使用(备忘)
好吧,先来说一下,为什么我要选择RapidXml来进行本地xml文件的解析:对,没有错,接下来你看到的很长的一大段都摘自于: http://stackoverflow.com/questions/9387610/what-xml-parser-should-i-use-in-c/9387612#9387612 So the first question is this: What do yo
2016-10-27 21:09:42
949
原创 lower_bound/upper_bound(STL)
其实我们这是以一个简单的算法题开始的: 一个存在重复数据的有序数组A,现在给定一个数字key,我要找到数组中与该给定值差的绝对值最小的那个数的最开始的位置。 case: 给定数组A:1, 1, 2, 2, 3, 3, 3, 3, 3, 4, 4, 6 给定数值key:5 输出:9(即第一个4的位置)结题思路 : 题意要求我们返回数组A中与该给定的Key的差的绝对
2016-10-26 20:42:50
401
原创 两个矩形的交并比(IOU)
两个矩形的交并比(IOU)由于最近的项目里面要用到,虽然是个小东西,但还是来记录一下.我们先来看下IOU的公式:IOU=area(RIOT⋂RIOG)area(RIOT⋃RIOG) IOU=\frac{area(RIO_T\bigcap RIO_G)}{area(RIO_T\bigcup RIO_G)} 现在我们知道矩形T的左下角坐标(X0,Y0)(X_0,Y_0),右上角坐标(X1,Y1)
2016-10-21 21:53:03
24161
1
精通Scrapy网络爬虫
2019-03-14
21个项目玩转深度学习_基于TensorFlow的实践详解
2019-03-12
Python深度学习
2019-03-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人