- 博客(76)
- 收藏
- 关注
原创 shell脚本之下篇
一、shell流程控制1.1 if else1.第一种方式:if conditionthen command1 command2 ... commandN fi2.第二种方式(写成一行(适用于终端命令提示符))if condition; then command1; fi3.第三种方式(在shell中,如果else分支没有语句执行,就...
2019-03-18 16:54:21
380
原创 shell脚本之中篇
一、shell传递参数我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n。n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……其中,$0 为执行的文件名,注意:$10 不能获取第十个参数,获取第十个参数需要${10}。当n>=10时,需要使用${n}来获取参数:test.sh:echo "Shell 传递参数实例...
2019-03-18 11:58:18
399
原创 shell 脚本之上篇
一、shell定义Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。二、shell脚本Shell 脚本(shell script),是一种为 shell 编写的脚本程序。Shell 编程跟 java、php 编程...
2019-03-18 11:12:09
322
原创 MySQL之 模糊匹配(LIKE)及正则表达式(REGEXP)
一、模糊匹配我们知道在 MySQL 中使用 SQL SELECT 命令来读取数据, 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。WHERE 子句中可以使用等号 = 来设定获取数据的条件,如 "author = 'LZH_12345'"。但是有时候我们需要获取author 字段含有 "LZH" 字符的所有记录,这时我们就需要在 WHERE 子句中使用 LIKE 子...
2019-03-16 18:33:56
4892
原创 MySQL中的常见函数
函数可以帮助用户便捷的完成很多事情,因此,MySQL中有很多内置的函数:字符串函数、日期函数、数值函数等一、字符串函数字符串函数是最常用的一种函数,以下列出常用的字符串函数,以供参考;函数 功能 CONCAT(s1,s2...sn) 字符串 s1,s2 等多个字符串合并为一个字符串 INSERT(s1,x,len,s2) 字符串 s2 替换 s1 的 x 位置...
2019-03-16 17:27:42
1877
原创 MySQL中的运算符
MySQL支持多种类型的运算符,这些运算符可以用来连接表达式的项。这些类型主要包括算术运算符、比较运算符、逻辑运算符和位运算符。一、算术运算符(加、减、乘、除和模运算)运算符 作用 + 加法 - 减法 * 乘法 / 或 DIV 除法,/返回商,带小数点的,DIV返回整除商(例如:10/4=2.5 ;10 DIV 4 =2) % 或 MOD...
2019-03-16 16:10:04
392
原创 数据库基础:sql语句之数据控制语句(DCL)
数据控制语句:用于控制不同的数据段直接的许可和访问级别的语句。这些语句定义了数据库、表、字段、用户的访问权限权限和安全级别,主要包括关键字grant、revoke等。其主要是DBA用来管理系统中的对象权限时使用,一般开发人员很少使用。一、创建用户1.创建用户create user 'username'@'lhost' identified by 'password'-- usern...
2019-03-16 11:07:28
5587
原创 数据库基础之SQL简介及相关操作
一、SQL简介SQL是结构化查询语言(Structured Query Language),是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以...
2019-03-15 20:42:27
1847
1
原创 数据库基础:sql语句之数据操控语句(DML)
DML操作是指对数据库中表记录的操作,主要包括表记录的插入(insert)、更新(update)、删除(delete)和查询(select),是开发人员日常使用最频繁的操作。(1)插入记录1.一次插入一条记录insert into tablename (field1,field2,...,fieldn) values (value1,value2,...,valuen);-- fi...
2019-03-15 20:36:10
920
原创 数据库基础:sql语句之数据定义语句(DDL)
一、连接和退出mysql服务器1.连接mysql: mysql -u username -p注意:-- mysql 代表客户端命令-- "-u"后面跟连接数据库的用户username,一般为root-- "-p"表示需要输入密码-- 执行命令后,并输入正确密码,会出现欢迎界面和"mysql>"提示符-- 命令符的结束符,用";"或"\g"结束-- 通过"hel
2019-03-14 22:00:33
3747
原创 网络协议基础知识
一、 网络协议的定义网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。它的三要素是:语法、语义、时序。为了使数据在网络上从源到达目的,网络通信的参与方必须遵循相同的规则,这套规则称为协议(protocol),它最终体现为在网络上传输的数据包的格式。协议往往分成几个层次进行定义,分层定义是为了使某一层协议的改变不影响...
2019-01-04 20:13:38
3162
原创 测试用例设计方法之判定表、因果图、正交试验、状态迁移
一、判定表1.判定表知识要点二、因果图1.因果图知识要点边界值分析和等价划分的一个弱点是未对输入条件的组合进行分析。因果图有助于用一个系统的方法选择出高效的测试用例集。它还有一个额外的好处,就是可以指出规格说明的不完整性和不明确之处。2.因果图的基本符号: 3.示例三、 正交试验1.正交试验知识要点2.示例 四、状态迁移1.状态迁...
2019-01-02 17:21:10
3143
原创 测试用例设计方法之等价类和边界值
一、等价类1.等价类知识要点2.示例按照上面的等价类分析得到的测试用例:(主要写了几个,其他部分省略了)二、边界值边界条件,是指输入和输出等价类中那些恰好处于边界、或超过边界、或在边界以下的状态。边界值分析方法与等价划分方法存在两方面的不同:与从等价类中挑选出任意一个元素作为代表不同,边界值分析需要选择一个或多个元素,以便等价类的每个边界都经过一次测试。 与...
2018-12-27 22:03:01
4248
1
原创 测试用例的设计之定义、优点及格式
一、定义: 测试用例即将测试系统的操作步骤用按照一定的格式用文字描述出来。二、测试用例的优点 1. 理清思路,避免遗漏(ps:最重要的一点)。假如我们测试的项目大而复杂,我们可以把项目功能细分,根据每一个功能通过编写用例的方式来整理我们测试系统的思路,避免遗漏掉要测试的功能点。 2.跟踪测试进展。通过编写测试用例,执行测试用例,我们可以很清楚的知道我们的测试进度。...
2018-12-27 21:43:49
2573
1
原创 测试开发之测试基础
一、测试的定义通过人工或自动的手段,对被测对象进行检测的活动。目的在于发现被测对象是否实现用户的需求,或者弄清楚实际结果和预期结果之间的差异。二、测试的目的发现被测对象与用户需求间的差异,即找bug 通过测试活动发现并解决缺陷,增加人们对被测对象的质量信心 通过测试活动,获取被测对象的质量信息,为决策提供数据依据 通过测试活动,预防缺陷,从而降低项目或产品的风险三、 测试的七大...
2018-12-17 22:15:16
535
原创 LTP和THULAC的安装与分词工具的使用
LTP分词工具使用说明:提前准备:1. LTP项目文件 :ltp-3.4.0.tar.gz2. LTP模型文件 :ltp_data_v3.4.0.zip分别将上述文件进行解压:执行命令:tar -zxv -f ltp-3.4.0.tar.gz ,解压后的文件为 ltp-3.4.0执行命令:unzip ltp_data_v3.4.0.zip ,解压后的文件为 ltp_data_v3....
2018-11-22 14:16:19
2460
原创 Linux 常见的指令
1. 创建新文件vim、新文件夹mkdirmkdir 创建新文件夹vim 创建新文件,查看已存在文件vimdiff 对比多个文件2.切换当前目录cdcd 绝对路径/相对路径3.复制cp、移动mv、删除rmcp 文件名 :复制文件 ; cp -r 文件夹:复制文件夹mv 文件/文件夹 目标路径:移动文件/文件夹到目标路径rm 文件名 :删除文件 ;rm -r 文件夹:删...
2018-11-14 18:52:36
2194
2
原创 SRILM的安装
一、 SRILM 的介绍 SRILM是著名的约翰霍普金斯夏季研讨会(Johns Hopkins Summer Workshop)的产物,诞生于1995年,由SRI实验室的Andreas Stolcke负责开发维护。SRILM用来构建和应用统计语言模型,主要用于语音识别,统计标注和切分,以及机器翻译,可运行在UNIX及Windows平台上。它主要包含以下几个部分: 一组实现的语言模型、...
2018-11-14 16:43:29
1074
原创 隐马尔科夫算法之实现简易版的拼音输入法代码详解
这段时间了解了隐马尔科夫算法,然后拼音输入法的核心就是HMM,然后从github上找了一个输入法实现的代码来更透彻的理解算法,本文代码来源:https://github.com/LiuRoy/Pinyin_Demo,如果侵权,请联系我删除!!!一、 拼音输入法的原理概述1.主要原理动态规划,用的是维特比算法实现的2. 模型3. 算法原理 Y1,...,Yn为输入的拼音...
2018-11-03 18:32:51
2346
原创 HMM(隐马尔科夫模型)
一、定义从定义可以看出,隐马尔可夫模型做了两个基本假设:二、 隐马尔可夫模型的三要素:初始状态概率矩阵、状态转移概率矩阵A、观测概率矩阵 B 三、隐马尔科夫的3个基本问题 3.1 概率计算算法3.1.1 直接计算法-------理论上可行,但计算量过大,而不可行3.1.2 前向算法首先,定义前向概率:对于隐马尔可夫模型, 观测序列O,输出P...
2018-10-18 22:59:18
1025
原创 n-gram语言模型及平滑算法
一、n-gram模型概念n-gram模型也称为n-1阶马尔科夫模型,它有一个有限历史假设:当前词的出现概率仅仅与前面n-1个词相关,可以表示为: 当n取1、2、3时,n-gram模型分别称为unigram、bigram和trigram语言模型。n-gram模型的参数就是条件概率P(Wi|Wi-n+1,...,Wi-1)。假设词表的大小...
2018-10-09 23:24:53
5915
2
原创 jieba分词源码分析
jieba分词中文分词:源码地址:https://github.com/fxsjy/jieba其特点: 支持三种分词模式: 精确模式,试图将句子最精确地切开,适合文本分析; 全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义; 搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。 支持繁体分词 支...
2018-08-15 18:16:18
986
1
原创 隐马尔可夫模型(HMM)和 jieba分词源码的理解
在理解隐马尔可夫模型(HMM)时,看到的很好的博客,记录一下:1. 隐马尔可夫模型(HMM) - 1 - 基本概念:http://blog.youkuaiyun.com/xueyingxue001/article/details/514357282.隐马尔可夫模型(HMM) - 2 - 概率计算方法:https://blog.youkuaiyun.com/xueyingxue001/article/details...
2018-08-15 17:21:04
4085
原创 python中笛卡尔积源码及实际使用
问题:对于多个集合或列表,每次只从这多个集合或列表中取出一个元素,求所有的组合方式?如何自己写可能就想到多重for循环,但是,当使用多重for循环时,如果集合或列表数过多,则非常繁琐!python标准库提供了笛卡尔积这一方法:itertools.product()源码:(改动了一点点,只针对这一问题)def product(*args): # product('ABCD'...
2018-08-15 11:44:39
1409
原创 bash的常见用法
Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。由于早年的Unix年代,发展者众,所以由于shell依据发展者的不同就有许多的版本,例如常听到的Bourne SHell(sh)、在Sun 里头默认的 C SHell、 商业上常用的K SHel...
2018-07-03 15:30:35
1990
原创 正则表达式
正则表达式(Regular Expression RE, 或称为常规表达式)是通过一些特殊字符的排列,用以“搜寻/取代/删除”一列或多列文字字串,简单的说,正则表达式就是用在字串的处理上面的一项“表示式”。正则表达式并不是一个工具程序,而是一个字串处理的标准依据,如果您想要以正则表达式的方式处理字串,就得要使用支持正则表达式的工具程序才行,这类的工具程序很多,例如 vi, sed,...
2018-07-02 16:42:24
248
原创 vim程序编辑器
在所有的Linux distributions 上头都会有的一套文书编辑器就是vi,而且很多软件默认也是使用vi做为他们编辑的接口,因此建议您务必要学会使用vi 这个正规的文书编辑器。此外,vim是进阶版的 vi,vim 不但可以用不同颜色显示文字内容,还能够进行诸如shell script, C program等程序编辑功能,你可以将vim视为一种程序编辑器!一、vim的使用基本上 vi共...
2018-06-23 22:41:43
514
原创 文件的压缩/解压缩、打包(Linux系统)
一、Linux系统常见的压缩指令在Linux的环境中,压缩文件的扩展名较多,大多是:“ .tar, .tar.gz, .tgz, .gz, .Z, .bz2, *.xz ”,这是因为Linux支持的压缩指令非常多,且不同的指令所用的压缩技术并不相同,当然彼此之间可能就无法互通压缩/解压缩文件。几个常见的压缩文件扩展名:Linux上常见的压缩指令就是gzip, bzip2以及最新的xz,至...
2018-06-20 19:29:24
3075
原创 《机器学习实战》第14章学习笔记(数据约简工具---SVD)
一、SVD基本原理提取这些信息的方法称为奇异值分解(Singular Value Decomposition, SVD )。在很多情况下,数据中的一小段携带了数据集中的大部分信息,其他信息则要么是噪声,要么就是毫不相关的信息。在线性代数中还有很多矩阵分解技术。矩阵分解可以将原始矩阵表示成新的易于处理的形式,这种新形式是两个或多个矩阵的乘积。我们可以将这种分解过程想象成代数中的因子分解。取前r个非零...
2018-05-20 20:44:24
625
原创 《机器学习实战》第13章学习笔记(降维技术---PCA)
一、降维技术数据往往拥有大规模的特征。这会导致利用机器学习算法进行分析时,造成很大的困扰。因此,数据降维就显得尤为重要。其优点:使得数据集更易使用;降低很多算法的计算开销;去除噪声;使得结果易懂。常见的降维技术:主成分分析(Principal Component Analysis, PCA )。在PCA中,数据从原来的坐标系转换到了新的坐标系,新坐标系的选择是由数据本身决定的。第一个新坐标轴选...
2018-05-18 19:27:15
595
原创 《机器学习实战》第12章学习笔记(FP-growth)
一、FP-growth算法FP-growth基于Apriori构建, 但在完成相同任务时采用了一些不同的技术。这里的任务是将数据集存储在一个特定的称作??树的结构之后发现频繁项集或者频繁项对, 即常在一块出现的元素项的集合FP树。这种做法使得算法的执行速度要快于Apriori,通常性能要好两个数量级以上。FP-growth算法只需要对数据库进行两次扫描,而Apriori算法对于每个潜在的频繁项集都...
2018-05-15 20:55:59
1292
原创 《机器学习实战》第11章学习笔记(Apriori算法 关联分析)
一、关联分析从大规模数据集中寻找物品间的隐含关系被称作关联分析( association analysis ) 或者关联规则学习(association rule learning)。关联分析是一种在大规模数据集中寻找有趣关系的任务。这些关系可以有两种形式:频繁项集或者关联规则。频繁项集(frequent item sets)是经常出现在一块的物品的集合,关联规则 ( association ru...
2018-05-14 10:30:50
798
原创 《机器学习实战》第10章学习笔记(k-Means)
一、聚类1.1聚类任务聚类试图将数据集中的样本划分为若干个通常是不相交的子集,每个子集称为一个“簇”(cluster)。1.2 性能度量聚类性能度量亦称聚类“有效性指标”(validity index)。与监督学习中的性能度量作用类似,对于聚类结果,我们需要通过某种性能度量来评估其好坏;另一方面,若明确了最终要使用的性能度量,则可直接将其作为聚类过程的优化目标,从而更好地得到符合要求的聚类结果。1...
2018-05-10 21:17:57
1454
原创 《机器学习实战》第九章学习笔记(使用Python的Tkinter库创建GUI)
用树来对数据建模,除了把叶节点简单地设定为常数值之外, 还有一种方法是把叶节点设定为分段线性函数,这里所谓的分段线性(piecewise linear )是指模型由多个线性片段组成。如下图所示: 可以设计两条分别从0.0~0.3、从0.3~1.0的直线,于是就可以得到两个线性模型。因为数据集里的一部分数据(0.0~0.3)以某个线性模型建模,而另一...
2018-05-09 19:45:32
1879
原创 《机器学习实战》第九章学习笔记(分类树回归CART)
一、CART(Classification And Regression Tree)CART算法既可以用于分类还可以用于回归,CART树的生成就是递归构建二叉决策树的过程,对于回归树用平方误差最小化准则,对于分类树用基尼指数(Gini index)最小化准则,进行特征选择,生成二叉树。1.1 回归树的生成1.2 分类树的生成1.2.1 基尼指数1.2.2 分类树的生成1.3 树回归的一般方法(1)...
2018-05-08 16:45:07
597
原创 《机器学习实战》第8章学习笔记(回归)之预测乐高玩具套装的价格
原文中通过Google提供的API来抓取价格,但由于现在访问不了Google,所以,直接通过文本给的html文件直接读取价格信息。然后进一步进行分析预测。代码实现:# -*- coding: utf-8 -*-"""Created on Mon May 7 09:55:34 2018@author: lizihua"""#from time import sleep#import ...
2018-05-07 17:02:04
2569
原创 《机器学习实战》第八章学习笔记(回归)
一、用线性回归找到最佳拟合直线1.1 线性回归回归的目的是预测数值型的目标值。最直接的方法就是找到回归方程Y=X.T*w。其中w称作回归系数,求这些回归系数的过程就是回归。一个常用的方法就是找出使误差最小的w。这里的误差是指预测y值和真实y值之间的平方差值。由于使用该误差的简单累加将使得正差值和负差值相互抵消,所以我们采用平方误差。回归的一般方法:收集数据:采用任意方法收集数据。准备数据:回归需要...
2018-05-05 21:32:21
2521
1
原创 模型的评估与选择
一、评估方法1.1 留出法“留出法”(hold-out)直接将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另一个作为测试集T,即在S上练出模型,用T来评估其测试误差,作为对泛化误差的估计。常见的做法是将大约2/3~4/5的样本用于训练,剩余样本用于测试。更一般的取70%作为训练,30%作为测试。注意:训练/测试集的划分尽可能保持数据分布的一致性,避免因数据划分过程中引入额外的偏差而对最...
2018-05-04 11:18:29
553
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人