自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (4)
  • 收藏
  • 关注

原创 算法-字符串算法:KMP、模式匹配

对于字符串匹配算法中,前面介绍的算法在字符串匹配中都会有重复比较的情况,那么对于已经比较过的子串,我们是否可以用某种方法把它保存起来,等到下次要比较的时候直接跳过已经比较过的字符串呢?表示当字符串匹配时的有效偏移。

2021-04-30 18:59:07 102 1

原创 数据结构-非线性结构-树形结构:有序树 ->二叉树 ->平衡二叉树(任何节点的左右子树的高度差不大于1)-> 红黑树(O(logn))【严格来说,不是平衡二叉树;平均来说红黑树比AVL树快一些】

2-3树【不是二叉树,是一颗绝对平衡的树(左右子树的高度一定相等)】【2-3树与红黑树等价】2-3树动画:红黑树是保持 “黑节点绝对平衡” 的二叉树;严格意义上,红黑树不是平衡二叉树;最大高度为 2logn2logn2logn时间复杂度:O(logn)O(logn)O(logn)如果创建后只查询,则AVL树的性能比红黑树高一些(AVL树高度为lognlognlogn,红黑树的高度为 2logn2logn2logn);如果创建后经常添加、删除元素,则红黑树的效率比AVL树高;...

2021-04-30 18:53:16 310 1

原创 数据结构-非线性结构:图形结构【邻接矩阵(二维数组)、邻接表(链表数组 / 红黑树数组)】

数据结构-非线性结构:图形结构

2021-04-30 18:43:29 258 1

原创 数据结构-非线性结构:树形结构概述

树(英语:tree)是一种抽象数据类型(ADT)或是实作这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。树具有以下的特点:将数据结构存储在固定的数组中,然在遍历速度上有一定的优势,但因所占空间比较大,是非主流二叉树。二叉树通常以链式存储。由于对节点的个数无法掌握,常见树的存储表示都转换成二叉树进行处理,子节点个数最多为2。...

2021-04-30 18:42:33 945 1

原创 C语言-基础语法(十一):文件IO操作【文件打开:FILE *fp = fopen(“a.txt“, “r“)、文件关闭:fclose(fp)】

磁盘文件:指一组相关数据的有序集合,通常存储在外部介质(如磁盘)上,使用时才调入内存。设备文件:在操作系统中把每一个与主机相连的输入、输出设备看作是一个文件,把它们的输入、输出等同于对磁盘文件的读和写。计算机的存储在物理上是二进制的,所以物理上所有的磁盘文件本质上都是一样的:以字节为单位进行顺序存储。从用户或者操作系统使用的角度(逻辑上)把文件分为:基于字符编码,常见编码有ASCII、UNICODE等一般可以使用文本编辑器直接打开数5678的以ASCII存储形式(ASCII码)为:00110101 001

2021-04-29 21:58:53 218

原创 C语言-基础语法(十):复合类型(自定义类型)【结构体、共用体(联合体)、枚举】

数组:描述一组具有相同类型数据的有序集合,用于处理大量相同类型的数据运算。有时我们需要将不同类型的数据组合成一个有机的整体,如:一个学生有学号/姓名/性别/年龄/地址等属性。显然单独定义以上变量比较繁琐,数据不便于管理。C语言中给出了另一种构造数据类型——结构体。定义结构体变量的方式:在声明类型的同时定义变量直接定义结构体类型变量(无类型名)结构体类型和结构体变量关系:4、结构体数组打印结果:5、结构体套结构体打印结果:6、结构体赋值打印结果:7、结构体和指针7.1 指

2021-04-29 21:58:00 138

原创 C语言-基础语法(八):局部变量、静态局部变量、全局变量、静态全局变量、全局函数、静态函数【auto、extern、static、 register】

C语言变量的作用域分为:局部变量也叫auto自动变量(auto可写可不写),一般情况下代码块{}内部定义的变量都是自动变量,它有如下特点:2、静态(static)局部变量静态(static)局部变量打印结果:3、全局变量全局变量静态(static)全局变量extern int a;声明一个变量,这个全局变量在别的文件中已经定义了,这里只是声明,而不是定义。在C语言中函数默认都是全局的,使用关键字static可以将函数声明为静态,函数定义为static就意味着这个函数只能在定义这个函数的文件中使用,

2021-04-29 21:55:29 148

原创 C语言-基础语法(七):指针【内存区的每一个字节都有一个编号,这就是“地址”;指针的实质就是内存“地址”】【int a = 10;int* p;p=&a;p表示指向a的地址的指针;*p表示a的值】

内存含义:内存是沟通CPU与硬盘的桥梁:有关内存的两个概念:物理存储器和存储地址空间。物理存储器:实际存在的具体存储器芯片。存储地址空间:对存储器编码的范围。我们在软件上常说的内存是指这一层含义。将内存抽象成一个很大的一维字符数组。编码就是对内存的每一个字节分配一个32位或64位的编号(与32位或者64位处理器相关)。个内存编号我们称之为内存地址。内存中的每一个数据都会分配相应的地址: 内存区的每一个字节都有一个编号,这就是“地址”。 如果在程序中定义了一个变量,在对程序进行编译或运行时,系统就会给这

2021-04-29 21:54:19 899

原创 C语言-基础语法(六):函数【自定义的函数要:先声明,后使用】

一、概述1、函数分类C 程序是由函数组成的,我们写的代码都是由主函数 main()开始执行的。函数是 C 程序的基本模块,是用于完成特定任务的程序代码单元。从函数定义的角度看,函数可分为系统函数和用户定义函数两种:系统函数,即库函数:这是由编译系统提供的,用户不必自己定义这些函数,可以直接使用它们,如我们常用的打印函数printf()。用户定义函数:用以解决用户的专门需要。2、函数的作用1、函数的使用可以省去重复代码的编写,降低代码重复率// 求两数的最大值int max(int a,

2021-04-29 21:52:57 2235

原创 C语言-基础语法(五):数组和字符串

在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来——称为数组。数组就是在内存中连续的相同类型的变量空间。同一个数组所有的成员都是相同的数据类型;同时所有的成员在内存中的地址是连续的;数组中的每一个元素都是一个变量;数组属于构造数据类型:一个数组可以分解为多个数组元素:这些数组元素可以是基本数据类型或构造类型。int a[10]; struct Stu boy[10];按数组元素类型的不同,数组可分为:数值数组、字符数组、指针数组、结构数组等类别。int

2021-04-29 21:52:25 336

原创 C语言-基础语法(四):程序流程结构

C语言支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构。顺序结构:程序按顺序执行,不发生跳转。选择结构:依据是否满足条件,有选择的执行相应功能。循环结构:依据条件是否满足,循环多次执行某段代码。一、选择结构1、if语句#include <stdio.h>int main(){ int a = 1; int b = 2; if (a > b) { printf("%d\n", a); } return 0;} 2、if…else语句

2021-04-29 21:51:28 147

原创 C语言-基础语法(三):运算符

一、常用运算符1、算术运算符int main(){ int a = 10; int b = 20; int c = a + b; int d = a - b; int e = a *b; printf("%d %d %d\n",c,d,e); //两数相除,如果要得到小数,必须有一个是double类型或float类型 //double f = a*1.0 / b;//0.

2021-04-29 21:50:48 617 1

原创 C语言-基础语法(二):数据类型【数据类型是为了更好进行内存的管理,让编译器能确定分配多少内存】【类型相同的数据具有相同的表示形式、存储格式以及相关操作】【数据类型可以理解为创建变量的模具】

我们现实生活中,狗是狗,鸟是鸟等等,每一种事物都有自己的类型,那么程序中使用数据类型也是来源于生活。当我们给狗分配内存的时候,也就相当于给狗建造狗窝,给鸟分配内存的时候,也就是给鸟建造一个鸟窝,我们可以给他们各自建造一个别墅,但是会造成内存的浪费,不能很好的利用内存空间。我们在想,如果给鸟分配内存,只需要鸟窝大小的空间就够了,如果给狗分配内存,那么也只需要狗窝大小的内存,而不是给鸟和狗都分配一座别墅,造成内存的浪费。当我们定义一个变量,a = 10,编译器如何分配内存?计算机只是一个机器,它怎么知道用多少内

2021-04-29 21:50:05 247

原创 C基础语法(一):C语言概述

一、C语言概述1、C语言特点优点:代码量小执行速度快功能强大编程自由缺点:写代码实现周期长可移植性较差过于自由,经验不足易出错对平台库依赖较多2、C语言应用领域C语言的应用极其广泛,从网站后台,到底层操作系统,从多媒体应用到大型网络游戏,均可使用C语言来开发:C语言可以写网站后台程序C语言可以专门针对某个主题写出功能强大的程序库C语言可以写出大型游戏的引擎C语言可以写出另一个语言来C语言可以写操作系统和驱动程序,并且只能用C语言编写任何设备只要配置了微处理器

2021-04-29 21:49:13 183

原创 数据分析:ELK【Elasticsearch(实时分布式搜索和分析引擎,用于全文搜索、结构化搜索、分析)、Logstash(功能类似Flume,用于日志采集)、Kibana(数据可视化工具)】

大数据:ELK【Elasticsearch(实时分布式搜索和分析引擎,用于全文搜索、结构化搜索、分析)、Logstash(功能类似Flume)、Kibana(可视化工具)】

2021-04-21 18:33:59 278

原创 NLP-分类模型-2015-文本分类:CharTextCNN【使用 “CNN”+ “字符向量” --> 处理文本分类】

一、最有影响力的自然语言处理论文最近有时间我会从前往后阅读nlper这个博客,发现“Most Influential NLP Papers”这篇文章比较有参考价值,不过写于06年初,稍早一些,但是真金不怕火炼,就放在这里供大家参考了!  “I conducted a mini survey recently, asking people I knew what they thought were the most influential papers in NLP from the past two d

2021-04-20 14:12:03 455

原创 NLP-语料库:英文语料库【Brown Corpus(有词性标注)、LOB(Lancaster-Oslo/Bergen,英国英文)...】

链接:https://pan.baidu.com/s/1Xb4JZxMq1ugD0zj7hOPnng 密码:ri9i

2021-04-17 21:36:50 2819

原创 NLP-语料库:语料库资源介绍

国内可用免费语料库(凡没有标注不可用的链接均可用)(一) 国家语委1.国家语委现代汉语语料库http://www.cncorpus.org/现代汉语通用平衡语料库现在重新开放网络查询了。重开后的在线检索速度更快,功能更强,同时提供检索结果下载。现代汉语语料库在线提供免费检索的语料约2000万字,为分词和词性标注语料。2.古代汉语语料库http://www.cncorpus.org/login.aspx网站现在还增加了一亿字的古代汉语生语料,研究古代汉语的也可以去查询和下载。同时,还提供了分词、词性

2021-04-17 21:16:20 4748

原创 Neo4j与ElasticSearch数据同步:方案【neo4j-to-elasticsearch插件】

Neo4j与ElasticSearch数据同步:方案【neo4j-to-elasticsearch插件】

2021-04-16 20:10:52 944

原创 自然语言处理-应用场景-聊天机器人(四):代码封装、对外提供接口

一、代码封装和对外提供接口代码封装过程中,需要注意,在整个结构中,我们有很多的结算结果是dump到本地的,为了防止后续每次的重复计算。所以laod的结果,应该提前加载到内容,而不是每次调用load义词1、完成意图识别代码封装完成判断用户意图的代码,即在使用fasttext的模型,判断用户输入句子的分类import fastTextimport refrom lib import jieba_cutfc_word_mode = fastText.load_model("./classify/d

2021-04-16 18:40:40 168

原创 数据分析:“数据分析”、“数据挖掘”、“机器学习” 三者之间的关系【数学公式的难易程度:数据分析 < 数据挖掘 < 机器学习】

数据分析,数据挖掘,机器学习在研究上有一部分是重叠的,但侧重点不同。数据挖掘里面,流数据是一个很大的关注点,但在机器学习里面研究的就相对较少。同理,数据挖掘对统计学习理论也没有机器学习关注的多。你再看数据挖掘的教材,一般都有一章介绍数据管理以及数据可视化,这部分内容机器学习书通常是不介绍的。还有,基本上一些数据挖掘里面常见的算法在机器学习里面也不介绍,例如 FP-Growth 。数据分析里面会大量介绍数据可视化,但在数据挖掘和机器学习中占的篇幅都较小。按照数学公式的难易程度:数据分析 &lt

2021-04-14 21:47:49 715

原创 数据分析:大数据分析师必备技能【统计分析、可视化辅助工具、大数据处理框架、数据库、数据仓库、数据挖掘工具、机器学习、挖掘算法、编程语言】

一个合格的、高级的大数据分析师必须要掌握以下9种技能:统计分析:大数定律、抽样推测规律、秩和检验、回归、预测;可视化辅助工具:excel、BI工具、python大数据处理框架:Hadoop、storm、spark数据库:SQL、MySql、DB数据仓库:SSIS、SSAS数据挖掘工具:Matlab、R语言、python人工智能:机器学习挖掘算法:数据结构、一致性编程语言:Java、python一、统计分析众所周知,统计学是数据分析的基石。学了统计学,你会发现很多时候的分析并不那么

2021-04-14 21:41:15 1033

原创 数据分析:数据分析师学习路径【统计学、SQL、Excel、Python、机器学习】

数据分析入门之后有两个方向的职业选择:业务方向初级数据分析师 --> 商业分析师 --> 数据分析经理 --> 运营总监 --> 业务负责人技术方向初级数据分析师 --> 数据挖掘工程师 --> 数据开发工程师 --> AI工程师 --> 数据科学家对于初级的数据分析来说,要掌握的知识点都是一样的,当然每一种知识都有入门和专家的区别,短时间内我们能做到熟练运用这个水平就可以了。下面我总结一张数据分析领域的知识结构图:数据分析学习全路径一、1

2021-04-14 21:07:54 1741

原创 数据分析:数据分析的几个阶段【提出/发现问题 —> 获取并清洗数据 —> 建模 —> 调整优化 —> 输出结论】

当一个数据分析师跟别人聊天的时候,经常会被问一些问题:Q:数据分析人员能做什么?A:从纷繁的数据里提炼出有价值的信息并给公司提供支持啊。Q:你怎么提炼啊?A:写程序采集啊,清洗啊,用一定的算法计算数据内部联系,根据业务做出判断啊……Q:如果都是用已有的算法,这些事情为什么不能用现成的流程来做呢?或者为什么不能写成程序,让机器自己实现呢?A:呃…………作为一名数据分析师,跟人聊天聊成这样,非常常见也非常令人不爽。但我们数据分析师是不是仅能手工操作一些算法,等着机器和算法逐步取代我们么?并不是!

2021-04-14 20:40:52 2153

原创 机器学习-无监督学习-聚类:聚类方法(四)--- 层次聚类算法

机器学习-无监督学习-聚类:凝聚式层次聚类算法

2021-04-13 11:37:07 434

原创 机器学习-无监督学习-聚类方法(六):高斯混合模型(GMM)【用最大期望值算法(EM)求解】【K个单高斯模型的线性组合;每个单高斯模型对应一种类别;优于K-means。参数:方差σ、均值μ、权值π】

高斯混合模型(Gaussian Mixture Model)通常简称GMM,是一种业界广泛使用的聚类算法,该方法使用了高斯分布作为参数模型,并使用了期望最大(Expectation Maximization,简称EM)算法进行训练。实际上在特定约束条件下,K-means算法可以被看作是高斯混合模型(GMM)的一种特殊形式。

2021-04-13 11:35:40 3348

原创 机器学习-无监督学习-聚类:聚类方法(三)--- 谱聚类算法(Spectral Clustering)【拉普拉斯矩阵、随机游走拉普拉斯矩阵、对称拉普斯矩阵】

谱聚类是一种基于图论的聚类方法,通过对样本数据的**拉普拉斯矩阵**的**特征向量**进行聚类,从而达到对样本数据聚类的目的。- 谱聚类可以理解为将高维空间的数据映射到低维,然后在低维空间用其它聚类算法(如k-Means)进行聚类。

2021-04-13 11:34:26 742

原创 机器学习-无监督学习-聚类:聚类方法(二)--- 基于密度的聚类算法【DBSCAN文本聚类算法,密度最大值文本聚类算法】

密度聚类方法的指导思想是,只要样本点的密度大于某阀值,则将该样本添加到最近的簇中。基于密度的聚类算法假设聚类结构能够通过样本分布的紧密程度确定,以数据集在空间分布上的稠密程度为依据进行聚类,即只要一个区域中的样本密度大于某个阈值,就把它划入与之相近的簇中。密度聚类从样本密度的角度进行考察样本之间的可连接性,并由可连接样本不断扩展直到获得最终的聚类结果。这类算法可以克服K-means、BIRCH等只适用于凸样本集的情况。

2021-04-13 11:33:16 1745

原创 数据分析:数据分析工具:SPSS、RapidMiner、KNIME、Kettle

SPSS、RapidMiner、KNIME以及Kettle四款工具都可以用来进行数据分析,只是彼此有各自的侧重点和有劣势。它们都可以逐步的定义数据分析过程,也同样都可以对数据进行ETL处理。笔者从自己关心的角度简单对比以上四款数据分析工具。一、SPSSSPSS不用多说,一款成功的商业数据分析软件,涵盖了统计分析、数据挖掘分析等各种数据分析方法。界面简单易用,分析过程定义时非常直观方便。因为,没有源码,无从知道其过程的调度机制。二、RapidMinerRapidMiner一款出色的开源数据分析工具。有

2021-04-12 11:27:59 1851

原创 机器学习-第三方库(工具包):Gensim【包括多个模块:TF-IDF、词向量(Word2vec、GloVe);语料库;主题模型(LSA、LDA);】

人工智能-机器学习-第三方库(工具包):Gensim【用于从原始的非结构化的文本中,无监督地学习到文本隐层的主题向量表达。 支持包括TF-IDF、LSA、LDA等多种主题模型】

2021-04-11 22:00:21 419

原创 NLP-词向量(Word Embedding):模型发展【NNLM->Word2vec->Glove->FastText->ELMo->GPT->BERT->XLNet】

自然语言处理(NLP)-文本处理-文本向量化:Word Embedding经典模型发展【Word2vec(CBOW、Skip-Gram)--> Glove --> ELMo --> BERT】

2021-04-11 20:59:58 382

原创 自然语言处理(NLP)-第三方库(工具包):summa【抽取文本中的“关键词”、“关键句” 】【基于TextRank】

from summa import summarizerfrom summa import keywordsif __name__ == "__main__": text = """ Automatic summarization is the process of reducing a text document with a computer program in order to create a summary that retains the most importa

2021-04-10 16:43:53 780

原创 深度学习-自然语言处理(NLP)-第三方库(工具包):sumy【抽取网页、文本、文件中的“关键句”】

一、抽取中文文章的关键句【自动摘要】#!usr/bin/env python# encoding:utf-8from __future__ import division'''__Author__:沂水寒城功能:基于开源模块sumy的简单文本摘要文本摘要方法参考学习可以借鉴阮一峰下面的文章:http://www.ruanyifeng.com/blog/2013/03/automatic_summarization.html'''from sumy.nlp.stemmers impor

2021-04-10 16:13:24 819

原创 NLP-文本摘要-2004:TextRank(“无向有权图”模型)【属于机器学习范畴;由PageRank网页重要性分数衍生而来;用于文本“关键词”、 “关键句” 提取、抽取式摘要】

在自然语言处理中,“关键句提取”算法主要包含两种类型:第一类使用传统机器学习模型,主要包括主题模型(LDA)、隐马尔可夫模型(HMM)、无监督图模型(TextRank)等,和 LDA、HMM 等模型不同,TextRank 无需对多篇文档进行训练,仅利用单篇文档本身的信息即可完成关键句提取,从而被业界广泛使用;第二类主要依赖于深度神经网络模型,通过对各句子进行二分类来判断是否为关键句。参考资料:TextRank算法详细讲解与代码实现(完整)...

2021-04-09 20:00:34 1580

原创 深度学习:模型部署技术方案

参考资料:深度学习模型部署技术方案

2021-04-08 19:47:18 799

原创 NLP-生成模型-2014:Seq2Seq+Attention(首次:利用QKV从大量信息中抽取对任务重要的信息;抽取文档中重要的句子;抽取句子中重要的单词)【案例:AttentionNMT用于翻译】

《原始论文:Neural Machine Translation by Jointly Learning to Align and Translate》:第一篇将Attention用于Seq2Seq模型的文献。Attention机制:从Encoder的输入序列的很多信息中根据当前时间步Decoder的状态选出“解码任务所需要的信息”。在普通的RNN结构中,Encoder需要把一个句子转化为一个向量,然后在Decoder中使用,这就要求Encoder把源句子中所有的信息都包含进去,但是当句子长度过长的时候,这

2021-04-08 12:39:20 969 1

原创 NLP-文本处理:指代消解(Coreference Resolution)【回指消解(名词<-->代词)、共指消解(名词1<-->名词2)】【识别指向同一实体的不同表述】【难度较大,准确率不会太高】

自然语言处理(NLP)-文本处理:指代消解(Co-reference Resolution)

2021-04-06 10:35:58 7224 2

原创 NLP-文本处理:实体对齐(实体统一)(Entity Resolution)【判断2个实体是否指向同一个实体:文本中的实体统一、基于图的实体统一】

自然语言处理(NLP)-文本处理:实体统一(Entity Resolution)

2021-04-06 10:19:48 4291

原创 NLP-文本处理:实体消歧/词义消歧(Entity Disambiguiation / Word Sense Disambiguation)

自然语言处理(NLP)-文本处理:实体消歧(Entity Disambiguiation)

2021-04-06 10:01:06 1661

原创 自然语言处理(NLP)-第三方库(工具包):fairseq【NMT框架】【To learn Neural Machine Translation? Fairseq is all you need. 】

参考资料:编辑距离 计算使用编辑距离计算文本相似度最小编辑距离(Levenshtein)的 Python 实现编辑距离算法详解:Levenshtein Distance算法一个快速、高效的Levenshtein算法实现使用优化的Levenshtein算法查找最接近的邻居...

2021-04-06 09:19:28 347

《Approaching (Almost) Any Machine Learning Problem》

《Approaching (Almost) Any Machine Learning Problem》

2023-09-13

中文小说短句序列文本复述数据集

中文小说短句序列文本复述数据集

2023-07-29

时间序列预测-第六届全国工业互联网数据创新应用大赛:工业生产反应装置的建模预测

第六届全国工业互联网数据创新应用大赛:工业生产反应装置的建模预测

2023-02-26

clustering-test-data

文本聚类测试数据

2022-11-17

stop-words.txt

stop_words.txt

2022-11-17

strawberry-perl-5.10.1.0.msi

strawberry-perl-5.10.1.0.msi

2022-02-19

strawberry-perl-5.10.1.0.msi

strawberry-perl-5.10.1.0.msi

2022-02-19

英文单词拼写混淆集:spell-errors.txt

英文单词拼写混淆集:spell-errors.txt

2021-04-05

带有词频的词典库:vocab.txt

带有词频的词典库:vocab.txt

2021-04-05

空空如也

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

TA关注的人

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