数据结构
文章平均质量分 94
沙振宇
将来的你一定会感谢现在奋斗的你。当你的才华还撑不起你的野心时,那你就应该静下心来学习。
展开
-
【C++】if else与三元运算符的耗时对比
条件运算符强大而独特,它提供了一种表达简单if-else语句的简写方法。该运算符由问号(?表达式?表达式 : 表达式;原创 2018-02-01 11:28:56 · 5876 阅读 · 3 评论 -
【人工智能】决策树(Decision Tree)文本算法的精确率
TF-IDF(词频-逆文本频率),前面的TF也就是常说到的词频,我们之前做的向量化也就是做了文本中各个词的出现频率统计,并作为文本特征,这个很好理解。最近的项目中,用到了很多机器学习的算法,每个机器学习的算法在不同的样本下的精准率是不同的。通过以上数据可以看出决策树在样本数量较低的情况下还不错,在样本数量在5000的时候效果还可以,但是到达20000的时候,准确率已经在70%左右了。概括来讲, IDF反应了一个词在所有文本中出现的频率,如果一个词在很多的文本中出现,那么它的IDF值应该低。原创 2019-01-11 19:17:06 · 19114 阅读 · 3 评论 -
【人工智能】感知机(Perceptron)
今天来学习下机器学习的敲门砖——感知机模型。网上查了很多中英文资料,得知感知机是在1957年由Frank Rosenblatt提出的,它被成为机器学习领域最为基础的模型。虽然是最为基础的,但是它在机器学习的领域中,有着举足轻重的地位,它是SVM(支持向量机)和NN(神经网络)学习的基础,可以说它是最古老的分类方法之一了。虽然今天看来它的分类模型在大多数时候泛化能力不强,但是它的原理却值得好好研究。如果研究透了感知机模型,再学习支持向量机、神经网络,也是一个很好的起点。原创 2019-02-01 16:59:05 · 49020 阅读 · 1 评论 -
【人工智能】逻辑回归(LogisticRegression)文本算法的精确率
TF-IDF(词频-逆文本频率),前面的TF也就是常说到的词频,我们之前做的向量化也就是做了文本中各个词的出现频率统计,并作为文本特征,这个很好理解。2)预测结果呈“S”型,因此从log(odds)向概率转化的过程是非线性的,在两端随着log(odds)值的变化,概率变化很小,边际值太小,slope太小,而中间概率的变化很大,很敏感。最近的项目中,用到了很多机器学习的算法,每个机器学习的算法在不同的样本下的精准率是不同的。2、把整体样本按照8:2的比例,分为80%的训练集,20%的测试集。原创 2019-02-19 15:42:16 · 9973 阅读 · 0 评论 -
【人工智能】sklearn中的支持向量机(SupportVectorMachine)文本算法的精确率
Sklearn的svm算法中,LinearSVC效果是最优的。在数据量达到20000条,精确率依然在80%左右。其实SVM简单的调参后,精确率会更高。机器学习 之 支持向量机(SupportVectorMachine)文本算法的精确率——升级版sklearn。原创 2019-02-20 11:10:04 · 4118 阅读 · 1 评论 -
【人工智能】K近邻(K-NearestNeighbor)文本算法的精确率
TF-IDF(词频-逆文本频率),前面的TF也就是常说到的词频,我们之前做的向量化也就是做了文本中各个词的出现频率统计,并作为文本特征,这个很好理解。最近的项目中,用到了很多机器学习的算法,每个机器学习的算法在不同的样本下的精准率是不同的。通过以上数据可以看出在样本数量较低的情况下还不错,在样本数量在5000的时候效果还可以,但是到达20000的时候,准确率已经在65%左右了。概括来讲, IDF反应了一个词在所有文本中出现的频率,如果一个词在很多的文本中出现,那么它的IDF值应该低。原创 2019-02-20 11:38:55 · 3973 阅读 · 1 评论 -
【人工智能】朴素贝叶斯(Naive Bayesian Model)文本算法的精确率
最近的项目中,用到了很多机器学习的算法,每个机器学习的算法在不同的样本下的精准率是不同的。为了验证每个算法在每种不同样本数量的能力,就做了一下实验,本文讲的是“朴素贝叶斯”在文本算法中的精准率。这里应该多跑几遍不同样本,然后把结果取平均值,每次的结果还是稍有不同的。2、把整体样本按照8:2的比例,分为80%的训练集,20%的测试集。4、接着把训练集的样本和标签统一的传入算法中,得到拟合后的模型。6、把测试集得出的词向量丢到拟合后的模型中,看得出的结果。对输入数据的表达形式很敏感,分类的性能不一定很高。原创 2019-02-20 12:36:22 · 5443 阅读 · 1 评论 -
【人工智能】随机森林(Random Forest)文本算法的精确率
TF-IDF(词频-逆文本频率),前面的TF也就是常说到的词频,我们之前做的向量化也就是做了文本中各个词的出现频率统计,并作为文本特征,这个很好理解。有些句子中的词,比如说“的”,几乎所有句子都会出现,词频虽然高,但是重要性却应该比 主语、宾语等低。最近的项目中,用到了很多机器学习的算法,每个机器学习的算法在不同的样本下的精准率是不同的。概括来讲, IDF反应了一个词在所有文本中出现的频率,如果一个词在很多的文本中出现,那么它的IDF值应该低。6、把测试集得出的词向量丢到拟合后的模型中,看得出的结果。原创 2019-02-20 14:17:29 · 14997 阅读 · 7 评论 -
【人工智能】Liblinear中的支持向量机(SupportVectorMachine)文本算法的精确率
文章目录简介Liblinear中的效果和Sklearn中的效果对比Liblinear实验整体流程Liblinear核心源码简介最近的项目中,用到了很多机器学习的算法,每个机器学习的算法在不同的样本下的精准率是不同的。为了验证每个算法在每种不同样本数量的能力,就做了一下实验,本文讲的是“支持向量机”在运用Liblinear库时,在文本算法中的精准率。Liblinear中的效果和Sklearn中...原创 2019-02-22 19:18:52 · 3580 阅读 · 1 评论 -
【人工智能】支持向量机(SupportVectorMachine)文本算法的精确率——升级版sklearn
Sklearn的svm算法中,LinearSVC效果是最优的。原创 2019-02-27 10:07:11 · 8657 阅读 · 2 评论 -
【人工智能】SVM、NN等统计学算法爆内存的解决方案
Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。就是内存条的空间不够了,为了能让应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),我们匀出一部分硬盘空间来充当内存使用的。通常情况下,我们会把总样本2-8分成测试集和训练集,通常也是在执行训练和测试的时候耗时的。原创 2019-02-28 11:35:05 · 9466 阅读 · 2 评论 -
【数据结构】八个常用查找算法
最基础的遍历无序列表的查找算法顺序查找又称为线性查找,是一种最简单的查找方法。适用于线性表的顺序存储结构和链式存储结构。该算法的时间复杂度为O(n)二分查找(Binary Search),是一种在有序数组中查找某一特定元素的查找算法。查找过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则查找过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。如果在某一步骤数组为空,则代表找不到。原创 2019-05-28 19:24:22 · 28427 阅读 · 8 评论 -
【转载】Kafka、RabbitMQ、RocketMQ等 消息中间件 介绍和对比
在分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦。现在开源的消息中间件有很多,前段时间产品 RocketMQ (MetaQ的内核) 也顺利开源,得到大家的关注。MQ,Message queue,消息队列,就是指保存消息的一个容器。具体的定义这里就不类似于数据库、缓存等,用来保存数据的。当然,与数据库、缓存等产品比较,也有自己一些特点,具体的特点后文会做详细的介绍。转载 2019-09-05 18:20:01 · 20020 阅读 · 8 评论 -
【Python】十个常用排序算法——python3实现(以及全部的排序算法分类)
冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。作为最简单的排序算法之一,冒泡排序给我的感觉就像Abandon在单词书里出现的感觉一样,每次都在第一页第一位,所以最熟悉。原创 2019-06-10 19:49:59 · 30161 阅读 · 12 评论