4 Dacc123

尚未进行身份认证

本人承接一切外包项目,联系电话17816853696

等级
TA的排名 9k+

LeetCode 1 Two Sum

题目class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> res; for(int i=0;i<nums.size();i++) {...

2019-07-03 19:48:17

文本分类学习 (十)构造机器学习Libsvm 的C# wrapper(调用c/c++动态链接库)

前言: 对于SVM的了解,看前辈写的博客加上读论文对于SVM的皮毛知识总算有点了解,比如线性分类器,和求凸二次规划中用到的高等数学知识。然而SVM最核心的地方应该在于核函数和求关于α函数的极值的方法:SMO算法(当然还有很多别的算法。libsvm使用的是SMO,SMO算法也是最高效和简单的),还有松弛变量。。毕设答辩在即,这两个难点只能拖到后面慢慢去研究了。于是我便是用了LibSvm,也就是台湾...

2019-07-03 19:41:27

文本分类学习 (九)SVM入门之拉格朗日和KKT条件

上一篇说到SVM需要求出一个最小的||w|| 以得到最大的几何间隔。求一个最小的||w|| 我们通常使用来代替||w||,我们去求解 ||w||2 的最小值。然后在这里我们还忽略了一个条件,那就是约束条件,在上一篇的公式(8)中的不等式就是n维空间中数据点的约束条件。只有在满足这个条件下,求解||w||2的最小值才是有意义的。思考一下,若没有约束条件,那么||w||2的最小值就是0,反应在图中...

2019-07-03 19:40:36

文本分类学习 (八)SVM 入门之线性分类器

SVM 和线性分类器是分不开的。因为SVM的核心:高维空间中,在线性可分(如果线性不可分那么就使用核函数转换为更高维从而变的线性可分)的数据集中寻找一个最优的超平面将数据集分隔开来。所以要理解SVM首先要明白的就是线性可分和线性分类器。可以先解释这张图,通过这张图就可以了解线性分类器了。这是一个在二维平面的图。其中实心点和空心点是分别属于两类的,Origin 是原点。先看中间那条直线,中间...

2019-07-03 19:39:42

文本分类学习 (七)支持向量机SVM 的前奏 结构风险最小化和VC维度理论

前言:经历过文本的特征提取,使用LibSvm工具包进行了测试,Svm算法的效果还是很好的。于是开始逐一的去了解SVM的原理。SVM 是在建立在结构风险最小化和VC维理论的基础上。所以这篇只介绍关于SVM的理论基础。目录:文本分类学习(一)开篇文本分类学习(二)文本表示文本分类学习(三)特征权重(TF/IDF)和特征提取   文本分类学习(四)特征选择之卡方检验文本分...

2019-07-03 19:38:33

文本分类学习(六) AdaBoost和SVM

直接从特征提取,跳到了BoostSVM,是因为自己一直在写程序,分析垃圾文本,和思考文本分类用于识别垃圾文本的短处。自己学习文本分类就是为了识别垃圾文本。中间的博客待自己研究透彻后再补上吧。因为获取垃圾文本的时候,发现垃圾文本不是简单的垃圾文本,它们具有多个特性:种类繁多,难有共同的特征。涵盖各行各业的广告,或者政治敏感内容,或者色情信息。不像对文本分类那样,属于一类的文本,他们的内容都...

2019-07-03 19:37:29

文本分类学习 (五) 机器学习SVM的前奏-特征提取(卡方检验续集)

前言:上一篇比较详细的介绍了卡方检验和卡方分布。这篇我们就实际操刀,找到一些训练集,正所谓纸上得来终觉浅,绝知此事要躬行。然而我在躬行的时候,发现了卡方检验对于文本分类来说应该把公式再变形一般,那样就完美了。目录:文本分类学习(一)开篇文本分类学习(二)文本表示文本分类学习(三)特征权重(TF/IDF)和特征提取   文本分类学习(四)特征选择之卡方检验文本分类学习(...

2019-07-03 19:36:38

文本分类学习 (四) 特征选择之卡方检验

前言:上一篇提到了特征提取,或者叫做降维。在文本分类中,特征提取算法的优劣对于文本分类的结果具有非常大的影响。 所以选择效果好的特征提取算法是文本分类前中很重要的步骤。于是这篇就对卡方检验做一个介绍。这是一个效果很好的特征提取方法。之前对卡方检验做过介绍:卡方检验是通过对特征进行打分然后排序,选择排名靠前的特征来表示文本。目录:文本分类学习(一)开篇文本分类学习(二)文本表示文本分类学...

2019-07-03 19:35:52

文本分类学习(三) 特征权重(TF/IDF)和特征提取

上一篇中,主要说的就是词袋模型。回顾一下,在进行文本分类之前,我们需要把待分类文本先用词袋模型进行文本表示。首先是将训练集中的所有单词经过去停用词之后组合成一个词袋,或者叫做字典,实际上一个维度很大的向量。这样每个文本在分词之后,就可以根据我们之前得到的词袋,构造成一个向量,词袋中有多少个词,那这个向量就是多少维度的了。然后就把这些向量交给计算机去计算,而不再需要文本啦。而向量中的数字表示的是每个...

2019-07-03 19:35:05

文本分类学习(二)文本表示

接着上一篇。在正式的尝试使用文本分类算法分类文本的时候,我们得先准备两件事情: 一,准备适量的训练文本;二,选择合适的方法将这些训练文本进行表示(也就是将文本换一种方式表示)大家都知道文本其实就是很多词组成的文章啊。所以很自然的就想到用一系列词来表示文本。比如我这篇文章,将其分词之后的结果就是:(“接着”,“上”,“一篇”,“在”,“正式”…)这里有很多分词工具可以办到,如果不知道使用何种分...

2019-07-03 19:34:03

HttpClient参观记:.net core 2.2 对HttpClient到底做了什么?

.net core 于 10月17日发布了 ASP.NET Core 2.2.0 -preview3,在这个版本中,我看到了一个很让我惊喜的新特性:HTTP Client Performance Improvements ,而且在Linux上性能提升了60% !之前就一直苦于 HttpClient 的糟糕特性,大家耳熟能详的 You are using HttpClient wrong。...

2019-07-03 19:32:08

文本分类学习(一):开篇

今天开始,就要认真开始对待文本分类,在此之前只是稀疏的看过一些博客,了解一下贝叶斯分类。之所以要学习文本分类,是因为我做的毕业设计就是关于文本分类和机器学习的。突然感觉到时间不太够用了,而摆在我面前的实际上是一个很浩大的工程,不得不抓紧时间开始研究。至于为什么毕业设计会选择文本分类算法,因为觉得现在机器学习很热门,不会点都不好意思说自己是搞计算机科学的,其次我想把自己的毕业设计可以和工作结合,并充...

2018-09-06 14:58:48

汉字字典树

字典树的概念我就不说了,不过大多题目都是英文的字典树,我就闲的蛋疼去写了中文的字典树,实现起来也挺简单的。#include <iostream>#include <string.h>#include <stdlib.h>#include <stdio.h>#include <map>using namespace std;...

2018-03-31 17:43:38

Lucene.net(4.8.0) 学习问题记录五: JIEba分词和Lucene的结合,以及对分词器的思考

前言:目前自己在做使用Lucene.net和PanGu分词实现全文检索的工作,不过自己是把别人做好的项目进行迁移。因为项目整体要迁移到ASP.NET Core 2.0版本,而Lucene使用的版本是3.6.0 ,PanGu分词也是对应Lucene3.6.0版本的。不过好在Lucene.net 已经有了Core 2.0版本(4.8.0 bate版),而PanGu分词,目前有人正在做,貌似已经做完,只...

2018-03-28 14:42:35

Nginx 日志 worker_connections are not enough while connecting to upstream

记一次,排查错误所遇到的问题,和学习到的内容。上周五,刚上线的项目出现了503,查看日志发现如下内容:System.Exception:Requestapi/blogpost/zzkDocs<html>^M<head><title>500InternalServerError</title></head>^M<bo...

2018-03-28 14:40:41

Int32 最大的数值是多少???(附十进制十六进制相互转换且包含正负数的java代码)

正数转二进制很简单,转十六进制也很简单。那么负数的情况下呢?在计算机中无法识别你给的符号“+”,"-",计算机只认识0和1那么在二进制中如何表示负数。 先简单介绍一下负数如何转二进制,八进制,十六进制:比如给的是-4那么先算出+4的二进制表示:100但是请记住我们需要在前面补0,因为在计算机中一个Int32为的数字是一个长度为32的内存空间,计算机眼里0000000000000000...

2018-03-28 14:38:58

一道网易面试编程题

一条长为n的路,需要用路灯点亮,其中"."表示需要点亮的位置,"X"表示无需点亮的位置,假设灯立在i处,则它可以点亮i-1,i,i+1三个位置,问至少需要多少灯才能点亮整条路。 乍一看,肯定是动态规划:上代码,敲了两个小时的动态规划:#include <iostream>#include <stdio.h>#include <string>#include...

2018-03-28 14:22:41

温故KMP算法

最近由于某些原因,又回顾了一次KMP算法。上一次回顾KMP算法还是在刷题的时候遇到的:http://blog.csdn.net/dacc123/article/details/50994611在我的记忆力,每次回顾KMP算法都会有新的理解,以为自己理解的很透彻了,等过一段时间再去回顾,又要花一些时间去弄门清。这次也一样。 刚接触Next数组的时候我很反感字符串前缀和后缀的最长公共子串的长度来解释n...

2018-03-20 10:29:11

Lucene.net(4.8.0)+PanGu分词器 问题记录一 分词器Analyzer的构造和内部成员ReuseStategy

前言:目前自己在做使用Lucene.net和PanGu分词实现全文检索的工作,不过自己是把别人做好的项目进行迁移。因为项目整体要迁移到ASP.NET Core 2.0版本,而Lucene使用的版本是3.6.0 ,PanGu分词也是对应Lucene3.6.0版本的。不过好在Lucene.net 已经有了Core 2.0版本,4.8.0 bate版,而PanGu分词,目前有人正在做,貌似已经做完,只是

2017-12-13 20:38:38

Git 使用篇二:小组协作开发

上一片搭建了git远程服务器,那么小组成员在使用git开发的时候都有什么要注意的。第一步: 首先每个小组成员,在自己本地建立一个目录,作为工作空间,再去git clone 这个远程仓库: git clone git@xxxxx:/xxx/xxx.git第二步: 一般的,小组成员需要建立属于自己的分支,每个分支代表着开发不同的功能 git branch dev1//创立一个名字叫de

2017-09-27 14:06:17

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!