- 博客(41)
- 资源 (1)
- 收藏
- 关注
原创 pandas.plot()参数详解
Parameters:x : label or position, default None#指数据框列的标签或位置参数y : label or position, default Nonekind : str‘line’ : line plot (default)#折线图‘bar’ : vertical bar plot#条形图‘barh’ : horizontal bar p...
2019-08-29 10:22:57
12349
1
原创 最简单反向传播神经网络TensorFlow实现
最简单反向传播神经网络TensorFlow实现一. 准备输入数据二. 定义网络结构三. 定义方向传播四. 训练网络一. 准备输入数据二. 定义网络结构三. 定义方向传播四. 训练网络#ecoding=utf-8import numpy as npimport tensorflow as tf#准备训练数据集trainX = np.random.random(size=[100,...
2019-03-19 19:34:27
627
原创 决策树ID3,C4.5,CART
ID3 : 信息增益、集和熵-集和按照属性划分后每个子集信息熵加权和C4.5 : 信息增益率、信息增益/属性信息熵,剪枝,连续,缺失CART: 基尼系数、按照属性划分后每个子集合基尼指数加权和(1-概率平方和),二叉树,特征再分裂参数1,criterion : string, optional (default="gini"),节点分裂标准2,splitter : string, op...
2019-03-19 09:52:22
270
原创 tensorflow实现最简单的前向传播
#定义输入和参数x = tf.constant([[1. , 2.]])w1 = tf.Variable(tf.random_normal([2,3] , stddev=1 , mean=0 , seed=1))w2 = tf.Variable(tf.random_normal([3,1] , stddev=1 , mean=0 ,seed=1))#定义前向传播过程a = tf.ma...
2019-03-19 09:50:13
340
1
原创 python matplot绘图整理,中文显示,坐标轴,标记,柱状图
1. 中文标注windows+linuxplt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体)plt.rcParams['axes.unicode_minus'] = False # 步骤二(解决坐标轴负数的负号显示问题)Macfrom matplotlib.font_manager...
2019-01-18 14:33:55
12634
原创 python numpy 多项式拟合
#ecoding=utf-8import matplotlib.pyplot as plt#生成离散xx = np.arange(-10 , 10 , 2)#生成离散yy = -2*x**2 - 5*x + 3#二项式拟合pfit = np.polyfit(x , y , 2)y_fun = np.poly1d(pfit)plt.plot(x, y,'*', color='r...
2018-11-15 21:15:34
5619
原创 python arff稀疏格式文件传pandas DataFrame
#ecoding=utf-8import numpy as npfrom scipy.sparse import csr_matriximport pandas as pdfrom xml.dom.minidom import parsedef read_sparse_arff(f_path , xml_path): #读文件 f = open(f_path) ...
2018-11-12 15:36:13
1249
原创 支持向量机svm原理与常见问题
1,参数 C : float, optional (default=1.0):惩罚系数,越大越会过拟合 kernel : string, optional (default='rbf'):核函数,linear:线性, poly:多项式, rbf:高斯, sigmoid:sigmod, precomputed: ,callable:自定义。 degree : int, opt...
2018-10-22 15:40:20
1261
原创 mac matplotlib 显示中文
#ecoding=utf-8import pandas as pdfrom matplotlib import pyplot as pltimport matplotlibfrom matplotlib.font_manager import *from pylab import mplimport seaborn as sns# %matplotlib inlinedef g...
2018-08-30 16:56:32
390
原创 决策树--ID3,C4.5,CART
ID3 : 信息增益、集和熵-集和按照属性划分后每个子集信息熵加权和C4.5 : 信息增益率、信息增益/属性信息熵,剪枝,连续,缺失CART: 基尼系数、按照属性划分后每个子集合基尼指数加权和(1-概率平方和),二叉树,特征再分裂参数1,criterion : string, optional (default="gini"),节点分裂标准2,splitter : string...
2018-08-07 21:09:07
258
原创 逻辑斯特回归总结--线性模型与非线性模型对比
LR 参数多分类情况下使用一对多策略,损失函数为交叉熵损失,求解方法为LBFGS,SAG和NEWTON-CG。1,penalty : str, 'l1' or 'l2', default: 'l2':正则项,默认为l2。三种求解方式只支持L22,dual : bool, default: False:是否转化为对偶问题3,C : float, default: 1.0:正则项系数的逆序,越大越过拟...
2018-04-10 13:45:51
9065
原创 随机森林,GBDT,XGBOOST三种集成算法的特点与对比
目前的集成学习方法大致分为两大类:即个体学习器之间存在强依赖关系、必须串行生成的序列化方法,以及个体学习器间不存在强依赖关系、可同时生成的并行化方法;前者的代表就是Boosting,后者的代表是Bagging和“随机森林”(Random Forest)。随机森林自助抽样,特征采样,无剪枝,投票,减小方差1,原理:提到随机森林,就不得不提Bagging,Bagging可以简单的理解为:放回抽样,多数...
2018-04-09 14:38:51
20651
转载 数据挖掘--异常检测总结
一、异常检测定义异常对象被称作离群点。异常检测也称偏差检测和例外挖掘。 二、常见的异常成因数据来源于不同的类(异常对象来自于一个与大多数数据对象源(类)不同的源(类)的思想),自然变异,以及数据测量或收集误差。 三、异常检测的方法(1)基于模型的技术:首先建立一个数据模型,异常是那些同模型不能完美拟合的对象;如果模型是簇的集合,则异常是不显著属于任何簇的对象;在使用回归模型时,异常是相对远离预测值...
2018-03-25 17:12:28
1916
原创 树模型中分裂特征选择标准--信息熵,信息增益,信息增益率的计算
1.熵:集和的熵值 -sum(pi * log(pi , 2))2.信息增益:集和的熵-按照特征a划分后子集的熵加权和(偏向类别数目多的属性) 3.信息增益率:信息增益/属性的熵(偏向类别数目少的属性)4.基尼值:1-集和各类别值的概率平方和(随机抽取两个样本其类别不一致的概率) 1 - sum(pi**2)5.基尼系数:按照属性a划分后各子集的加权基尼和ID3:判别式模型,分类树,多叉树,信息增...
2018-03-25 17:06:34
4971
转载 机器学习常用优化算法--梯度下降,牛顿法,共轭梯度法,拉格朗日乘数法
· 1. 梯度下降法(Gradient Descent)· 2. 牛顿法和拟牛顿法(Newton's method & Quasi-Newton Methods)· 3. 共轭梯度法(Conjugate Gradient)· 4. 启发式优化方法· 5. 解决约束优化问题——拉格朗日乘数法 1. 梯度下降法(Gradient Descent)梯度下降法是最早最简单,也是最为常用的最优化方法...
2018-03-25 16:53:01
1839
翻译 数据挖掘-特征工程(特征挖掘)
什么是好?好的特征代表了灵活性、更简单的模型和更好的结果,不相关的特征则会影响模型的泛化性。因此特征选择和特征工程并非是互相排斥的,而是相辅相成的。有效的特征工程能够帮助我们提炼数据的代表。接着问题就来了,什么才是好的代表?代表的好坏取决于里面所包含信息的好坏。熵(Entropy,熵值越高,数据中所包含的信息越多),方差(Variance,方差越大,数据中所包含的信息越多),更好的分离映射(Pro...
2018-03-25 16:50:58
7135
原创 NLP中关于文本分类问题的常用方案
NLP通常包括两个关键问题:1.选择什么样的语言模型?2.选择什么样的分类算法?第二个问题是机器学习领域的标准问题,各种针对不同数据类型、数据分布的算法和技巧,这里不再赘述。而在NLP当中,语言模型更加重要一些。不同语言模型的区别,也就是对文本提取特征的不同。常用的模型有:1.Bag-of-words:最原始的特征集,一个单词/分词就是一个特征。往往一个数据集就会有上万个特征;有一些简单的指标可以...
2018-03-25 16:50:04
4100
原创 python matplot美化+坐标轴范围设置等笔记
一.sklearn评估1.混淆矩阵 from sklearn.metrics import confusion_matrix confusion_matrix(testLabel,pre_label)2.大小类评估指标:精确率,召回率,f1得分 from sklearn.metrics import classification_report classification_report(tes...
2018-03-25 16:48:35
31801
2
原创 sklearn评估+绘图
一.sklearn评估1.混淆矩阵from sklearn.metrics import confusion_matrixconfusion_matrix(testLabel,pre_label)2.大小类评估指标:精确率,召回率,f1得分from sklearn.metrics import classification_reportclassificat
2018-01-12 16:29:55
3339
原创 机器学习算法之线性模型
1.线性方程与非线性方程线性方程:代数方程如y = 2x + 5,其中任何一个变量都为1次幂,这种方程的图像为一条直线(平面),所以称为线性方程非线性方程:y**2 = 2x + 5,因变量和自变量之间不是线性关系,如平方关系、对数关系、指数关系和三角函数关系等2.基本形式给定有m个属性描述的实例x=(x1,x2...,xm),其中xi是x在第i个属性上的取值,线性
2017-11-24 10:37:14
7749
原创 python正则表达式惰性匹配
惰性匹配:匹配尽可能长的子串非惰性匹配:匹配最短子串python中的正则表达式默认为惰性匹配,如一个字符串为:,正则表达式为,匹配的结果为。如果要改变为非惰性匹配只用在结束符前加?即可。例子如下:content = ''#惰性匹配print re.search('',content).span()#非惰性匹配print re.search('',content).span(
2017-11-22 17:33:16
2240
原创 python字符串只保留汉字
def is_chinese(uchar): """判断一个unicode是否是汉字""" if uchar >= u'\u4e00' and uchar u'\u9fa5': return True else: return Falsedef is_number(uchar): """判断一个unicode是否是数字"""
2017-11-20 22:20:45
20822
原创 python字典快速保存于读取
在使用python编程过程中,我们往往需要借助字典来提高编程效率。同时为了调试方便,我们希望将某些变量保存为中间文件。例如,在协同过滤算法中,相似性的训练结果可以保存为中间文件,方便调试。python对字典的保存与读取可以借助于json方便的实现。 #保存 dict_name = {1:{1:2,3:4},2:{3:4,4:5}} f =
2017-09-24 15:35:49
44268
4
原创 2017京东校招终结者问题
题目描述收到情报,有批新造的机器人要运输到前线。小C将去破坏机器人的运输。小C将激光炮放置在公路的一旁,等运输车经过的时候发射(假设激光炮一定可以射穿车辆)。由于能源有限,激光炮只能发射两次。可以认为激光炮放在坐标轴的原点处,并向y轴正方向发射。每辆运输车可以看作是一个矩形,起始的x轴坐标为Xi ,所有的车均位于第一象限,长度为Li,速度为1,朝x轴负方向运动。即经过t时间后,该车车头的x
2017-04-26 09:54:14
490
原创 k阶最小堆的python实现
最小堆从结构上讲是一棵完全树,所谓k阶最小堆,指的是树的阶数为k。最小堆,指的是树中父结点的值均不大于其叶子节点,在使用堆排序时我们进行n(n为结点个数)次就可得到一个有序序列。以下实现了一个k阶最小堆(当k为1时,构建完毕后就已经是有序序列)。#!/usr/bin/python# -*- coding: utf-8 -*-#ecoding=utf-8class KHeap: def
2017-04-26 09:43:58
520
原创 python文件格式转换
在利用python进行文本处理时常常涉及到文本格式的转换。以下代码可以方便的实现文件格式的转换先解码再编码string.decode('GBK').encode('utf-8')#实现由gbk到utf-8的转换函数如下:#修改文件编码格式def ChangeEncode(file,fromEncode,toEncode): try: f=open(file)
2016-11-29 14:30:03
6384
原创 pandas中merage,join和concat
merage主要为横向连接,用于将多个dataframe通过某个相同的键合并为一个;concat可横向可纵向一.merage二.concat1).方法原型pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, nam
2016-10-10 15:03:01
8452
原创 360笔试:病毒写入位数检查
#ecoding=utf-8import stringdef getNumLen(inNum): """ 获得输入数字的位数 :param inNum: 输入数字 :return: 数字位数 """ lenNum = 0; while(inNum>0): inNum /= 10 lenNum = lenNu
2016-09-21 15:48:55
347
原创 python进制转化
1.其他进制转10进制int('100', 2)2.10进制转二进制bin(4)3.10进制转8进制oct(4)4.10进制转16进制hex(4)5.字符串转数字import stringstring.atoi(str[m:n])
2016-09-21 15:43:51
349
原创 zookeeper到底是个什么鬼
高效的分布式协调服务(一处配置全局生效)。包括配置服务、命名服务(类似于DNS)、分布式锁、集群管理配置服务:一处修改,全局使用。,zookeeper使用Zab这种一致性协议来提供一致性。现在有很多开源项目使用Zookeeper来维护配置,比如在HBase中,客户端就是连接一个Zookeeper,获得必要的HBase集群的配置信息,然后才可以进一步操作。命名服务:类似于DNS域名服
2016-08-09 16:38:12
915
原创 hadoop中各组件的作用
Hadoop=HDFS+Yarn+MapReduce+Hbase+Hive+Pig+… 1.HDFS:分布式文件系统,隐藏集群细节,可以看做一块儿超大硬盘 主:namenode,secondarynamenode 从:datanode 2.Yarn:分布式资源管理系统,用于同一管理集群中的资源(内存等) 主:Resourc
2016-08-09 16:26:08
10983
1
原创 java String类常用操作
1.String对象内容的比较Str1.equals(Str2)Str1.equalsIgnoreCase(Str2)== 比较的是引用,而equals()比较的是内容2.String类型与其他类型的相互转换a.String转intint myInt = Integer.parseInt(myStr1, 8); //第一个参数为要解析的字符串,第二个为解析的进制,返回i
2016-08-07 13:12:59
342
原创 python数据预处理练习
#ecoding=utf-8import mathimport reimport csvdef fileREAD(fileURL,access): "传入文件路径,返回存储文件内容的二维列表" localArray = [] # 创建一个列表用于存储文件内容 csvfile = file(fileURL, access) reader = csv.rea
2016-07-28 09:08:42
4503
1
原创 海明码编码原理及其解释
纠正一位错的海明码的位数k的选取必须符合下式: (m为信息位的位数)当信息位为8位时,海明码校验码共有4位,而当信息位为20位时,其校验码需要5位。这是理论上进行纠错需要用到的最少位。解释:k位的纠错码能指明的位置最多为个,即从0...0到1...1,除去0...0表示第0位出错(没有错误),再减去纠错码本身占用k位,则其能编码的最大
2014-10-21 11:36:42
9817
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人