分类与预测
分类与预测分类与预测的差别分类对给定的数据集一般是离散的,确定这些数据对应类别。而预测是对连续的数据,根据历史数据来预测未知的数据或者缺失值等。
分类的过程分为两步:
模型构建
使用训练数据集对模型进行训练,模型可以被表示为一些分类的规则集合,决策树或者是数学公式。
模型使用
先使用模型来对测试数据进行分类,如果准确率能够接受则使用模型去对没有标注过的数据进行分类。
分类属于有监督学习,训练的数据是经过标注的。聚类属于无监督学习训练数据未经过标注不知道样本的标签。
在进行分类和预测之前需要对数据进行预处理包括数据清洗来处理噪声和缺失值,相关性分析来进行特征提取,数据转换比如归一化等。
对于分类方法的评测指标有:准确性,速度,鲁棒性,可规模性(硬盘数据),可解释性等
决策树决策树是一个类似于流程图的树结构;其中,每个内部结点表示在一个属性上的测试,每个分枝代表一个测试输出,而每个树叶结点代表类或类分布。树的最顶层结点是根结点。给定数据经过决策树不同节点的决策最终走到叶子节点,从而完成了对数据的分类。决策树不需要任何领域知识也不需要参数,适合探测式知识发现。
决策数的构建分为两步 ...
数据预处理
数据预处理为什么数据预处理原始数据可能掺杂着噪音、空值或者不正确、不一致、充满冗余值等。没有高质量的数据,很难挖掘出高质量的规则,因此需要数据预处理。数据预处理主要有:数据清洗、数据集成、数据归约、数据离散等几个任务。
数据描述得到一份数据后,需要先对数据进行一个大概的认识,主要从中心趋势和发散特征两方面统计进行描述。
中心趋势度量平均值 mean均值又分为:
算术均值
$\bar x=\frac{1}{n}\sum_{i=1}^{n}x_i$
加权均值
$\bar x= \frac{\sum_{i=1}^{n}w_ix_i}{\sum_{i=1}^{n}w_i}$
截尾均值 Trimmed mean
均值对极端数据比如离群点很敏感。因此截取高低两端的一部分数据后再计算均值,但是截去的部分不能太多不超过$20\%$
中位数 median对于倾斜(非对称)数据,数据中心的更好度量是中位数。
假定数据有序,则当n为奇数时中位数是中间的值,当n为偶数的时候,中位数不唯一,可以是中间两个值和之间的任意值。如果属性是数值属性,那么一般约定取中间两个值的平均值。
众数 mode另一种 ...
数据仓库
数据仓库什么是数据仓库有多种定义,按照一位数据仓库系统构造方面的领衔设计师William H. Inmon的说法:数据仓库是一个面向主题的、集成的、时变的、非易失的数据集合,支持管理者的决策过程。
一句话总结:通过数据仓库来完成对一个项目的相关需求的快速分析,是一个联机分析处理(Online Analytical Processing System)系统,具体的定义见百度百科。
特征
面向主题的:数据仓库围绕一些主题,如顾客、供应商、产品和销售组织。数据仓库关注决策者的数据建模与分析,而不是构造组织机构的日常操作和事务处理。
集成的:通常,构造数据仓库是将多个异种数据源,如关系数据库、一般文件和联机事务处理记录,集成在一起。
时变的:数据存储从历史的角度(例如,过去5-10 年)提供信息。
非易失的:数据仓库总是。物理地分离存放数据;这些数据源于操作环境下的应用数据
操作数据库系统与数据仓库的区别我们常见的关系数据库就是联机操作数据库,联机操作数据库系统的主要任务是执行联机事务和查询处理。这种系统称为联机事务处理(OLTP)系统。
数据立方体数据仓库基于多维数据模型,这种模型将数 ...
Hexo博客Next主题优化
Hexo博客Next主题优化博客设置中的一些参考链接
汇总https://tding.top/archives/aad98408.html
latex支持直接设置
https://jdhao.github.io/2017/10/06/hexo-markdown-latex-equation/
Disquse评论支持http://www.cylong.com/blog/2017/03/26/hexo-next-disqus/
https://chenlifei.tech/posts/8838407/
动态主题在config文件中设置,有个 git pull 更新的过程
建站时间https://xian6ge.cn/posts/82ce1911/
网站头像https://www.jianshu.com/p/82c1d33420ba
https://tool.lu/favicon/
社交链接在config文件直接设置
阅读统计https://hexo-guide.readthedocs.io/zh_CN/latest/third-service/[%E4%B8%8D%E8%9 ...
Clementine教程
Clementine教程数据挖掘课程要求使用这个软件Clementine来进行实验,之前完全没听说过这个软件。网上搜到的资料也比较少,特别是CSDN上面有个博客名字叫做Clementine完整教程,然后内容也是Clementine教程这几个字,把我给惊呆了,这也能写博客?现在实验都已经做完了因此记录下使用方法,希望对其他人能有帮助。
简介页面在Clementine软件中只需要简单的像画图一样,把整个数据挖掘的操作流程对应的节点给连接起来就可以使用了。先对页面简单的介绍下,页面如下。
在最下面的一栏是相对应的各个节点:Favorites中是常用的节点,Sources中是输入的数据节点,Field中是数据的属性设置节点,Modeling中是一些数据挖掘模型节点比如决策树神经网络等模型,Output中是输出节点用来查看数据。
在右上角中的Streams显示整个工作台中的所有Stream,Outputs中是每次运行后得到输出结果,Models中是流程所用到的模型。
数据挖掘的过程可以简单的分为两步:第一步对模型进行训练 第二步对训练好的模型进行使用。而一个完整的数据挖掘流程Stream中在 ...
内嵌汇编
内嵌汇编操作系统高级教程上面需要阅读Linux内核0.11的源码,其中在书《Linux内核设计的一书》第2.5节异常处理类中段服务程序挂接的部分,遇到了嵌入在C语言中的汇编代码,之前从来没有学习过汇编,因此记录下。
AT&T基础知识内嵌汇编使用的是AT&T汇编,所以首先稍微讲解下AT&T的汇编指令的基础知识。
操作数前缀123movl $8,%eax movl $0xffff,%ebx int $0x80
看到在AT%T汇编中诸如”%eax”、”%ebx”之类的寄存器名字前都要加上”%”;”$8”、”$0xffff”这样的立即数之前都要加上”$”。
源/目的操作数顺序 在Intel语法中,第一个操作数是目的操作数,第二个操作数源操作数。而在AT&T中,第一个数是源操作数,第二个数是目的操作数。
1234// INTEL语法MOV EAX,8 //EAX是目的操作数, 8是源操作数// AT&T语法movl $8,%eax //8是源操 ...
OJ输入输出
OJ输入输出算法课要求打UOJ,实际操作后发现与leetcode,牛客这些只用写解决类不一样,OJ要求自己编写输入输出。所以对于输入输出还是很头痛,在此总结下。
C++输入输出输入输出不是对文件进行操作的,可以理解成是在命令行中进行输入与输出。所以主要使用标准输入流cin进行数据的输入,标准输出流cout进行输出。因为有多组测试样例,所以一般需要放在while循环中来读取数据并进行操作。总思路是输入一组输入对应的输出一组输出,边输入边输出。
需要注意的是cin 会自动跳过空格、tab、换行符等不可见的符号,所以可以在同一行中输入a,b两个值,而不用自己去分割空格。
只有一组输入输出直接从键盘获取一组输入,随后输出,以计算a+b为例。
123456789#include < iostream > using namespace std; int main() { int a,b; cin >> a >> b; cout << a+b << endl; return 0; ...
实模式寻址方式
实模式寻址方式在上《操作系统高级教程》课时有BIOS启动时的实模式,讲到 CS与IP这两个寄存器,但是始终不能理解为什么说CS:IP可以表示一个物理地址,查询后才理解到与实模式的寻址方式有关。
8086的寻址方式为了理解实模式,首先需要理解Intel 8086这个16位CPU的寻址模式。
8086的CPU是16位,即它的所有寄存器和寄存器之间的数据总线都是16位的,而其外部数据总线却是20位的。那么如何才能访问到20位也就是1MB的地址空间呢?显然一个寄存器是不够的所以就用两个寄存器来存储,这也就是段式寻址(内存分段)。段式寻址需要使用一个寄存器作为段寄存器比如CS代码段寄存器,使用另外一个寄存器比如IP指令指针寄存器作为偏移寄存器。计算物理地址的时候首先将段寄存器的16位地址向左移动4位(也就是最开始段寄存器的地址x16),然后将左移4位后的段地址与偏移地址相加就可以得到一个20位的物理地址了。也可以理解成最开始的段寄存器的地址默认后面还有4位,只是都省略成0,这样就可以放在16位寄存器中了。
实模式寻址方式实模式(Real mode) 是Intel 80286和之后的80x86兼 ...
shadowsocks的部署
shadowsocks 的部署部署shadowsocks主要有两个作用:
可以翻墙
可以白嫖校园网的ipv6
1. 购买VPS服务器目前使用vultr的VPS服务器,5刀一个月,使用的CENTOS 8发行版。貌似日本的服务器网速最快,而且支持IPV6。在部署服务器的时候就需要开启IPV6。
2. 服务器设置安装在/root/目录下创建文件夹
12mkdir shadowsockscd shadowsocks/
安装python和pip工具以及git
123#centos 8 服务器自带有python3 和 pip3 所以无需再安装python#yum install python-setuptools && easy_install pip yum -y install git
使用pip3通过git安装shadowsocks
123#pip install git+https://github.com/shadowsocks/shadowsocks.git@masterpip3 install git+https://github.com/shadowso ...
Redis Makefile注解
Redis Makefile注解Redis的makefile是阅读源码的第一步,总共有292行,读起来也是头大,记录之。
4.02版本源码为:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781 ...