- 博客(642)
- 资源 (19)
- 收藏
- 关注
原创 python知识点
1、第一个缺点就是运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。2、第二个缺点就是代码不能加密。如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windo...
2018-03-11 19:11:02 266
原创 算法学习汇总
一、十大排序算法总结: https://www.cnblogs.com/onepixel/articles/7674659.html二、数据结构-栈和队列: http://blog.csdn.net/u011630575/article/details/55271510三、动态规划: (1)通过POJ1163 The Triangle讲解动态规划(建议先看第一篇,然后看第二篇) h...
2018-03-06 17:07:31 472
原创 xgboost特征工程--探索数据集的基本信息
知道数据集的基本信息对我们建模有用,那么如何分析数据集的特点呢?我们以Kaggle2017年举办的Two Sigma Connect: Rental Listing Inquiries竞赛数据为例进行数据集探索分析。可以参考kernel中更多数据分析示例:https://www.kaggle.com/c/two-sigma-connect-rental-listing-inquiries/kern...
2018-03-05 22:05:55 1094
转载 xgboost特征工程分析数据
In this exploration notebook, we shall try to uncover the basic information about the dataset which will help us build our models / features.Let us first import the necessary modules.In [1]:import num...
2018-03-05 21:58:44 2605
原创 numpy : percentile使用(多用于去除 离群点)
“无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。”numpy.percentile()百分位数是统计中使用的度量,表示小于这个值的观察值占总数q的百分比。 函数numpy.percentile()接受以下参数。numpy.percentile(a, q, axis)...
2018-03-05 21:38:27 32045 1
转载 python中lambda的用法
一、lambda函数也叫匿名函数,即,函数没有具体的名称。先来看一个最简单例子:def f(x): return x**2 print f(4)Python中使用lambda的话,写成这样g = lambda x : x**2print g(4)二、lambda和普通的函数相比,就是省去了函数名称而已,同时这样的匿名函数,又不能共享在别的地方调用。其实说的没错,lambda在Pyth...
2018-03-05 19:59:23 6598
转载 pandas的数据结构series、dataframe
一)属性series :.index,.values, .name,.index.namedataframe :.columns, .index,.values二)创建方法 series: 一组数组(列表或元组),series除了一组数据外还包括一组索引(即只有行索引),索引可自行定义也可利用Series(),自动生成索引; dataframe: 是表格型数据,既有行索引又有列索引,每列数...
2018-03-05 19:27:44 668
原创 XGBoost 参数介绍
XGBoost 的设置有三种参数:一般参数,提升参数和学习参数。一般参数 取决于提升器,通常是树或线性模型提升参数 取决于选择的提升器的相关参数学习参数 取决于指定学习任务和相应的学习目标一般参数 (general parameters)booster:选择提升器,默认是 treesilent:是否打印信息,默认是 0 不打印nthread:线程数,默认为最大可用线程数num_pbuffer:缓冲...
2018-03-04 15:36:28 3268 1
原创 numpy的where的用法
numpy.where()的两种用法:1、三个参数numpy.where(condition,x,y):满足condition条件,输出x,不满足输出y。2、一个参数numpy.where(array):输出array中‘真’值的坐标(‘真‘也可以理解为非零)。1、np.where(condition, x, y):import numpy as npresult=np.where([[True...
2018-03-03 14:42:28 2536
原创 sklearn中predict_proba用法(注意和predict的区别)
“无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。” predict_proba返回的是一个n 行 k 列的数组, 第 i 行 第 j 列上的数值是模型预测 第 i 个预测样本为某个标签的概率,并且每一行的概率和为1。# conding :utf-8fr...
2018-03-03 13:35:34 79590 5
原创 利用sklearn的LabelEncoder实现标准化标签
sklearn.preprocessing.LabelEncoder():标准化标签,将标签值统一转换成range(标签值个数-1)范围内# coding:utf-8from sklearn import preprocessingle = preprocessing.LabelEncoder()le.fit(["Japan", "china", "Japan", "Korea","...
2018-03-02 17:43:31 7525
原创 XGBoost使用教程(进阶篇)三
“无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。”一、Importing all the librariesimport pandas as pdimport numpy as npfrom matplotlib import pyplot as pltfro...
2018-03-02 14:49:41 15764 1
原创 XGBoost使用教程(与sklearn一起使用)二
一、导入必要的工具包# 运行 xgboost安装包中的示例程序from xgboost import XGBClassifier# 加载LibSVM格式数据模块from sklearn.datasets import load_svmlight_filefrom sklearn.metrics import accuracy_scorefrom matplotlib impor...
2018-03-02 11:14:21 6498
原创 XGBoost使用教程(纯xgboost方法)一
“无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。”一、导入必要的工具包# 导入必要的工具包import xgboost as xgb# 计算分类正确率from sklearn.metrics import accuracy_score二、数据读取XGBo...
2018-03-01 22:31:07 80164 7
翻译 matplotlib基础教程-3D绘图(2)
基本3D图的绘制Matplotlib 已经内置了三维图形,所以我们只需要引入这些完整的模块就可以了:from mpl_toolkits.mplot3d import axes3dimport matplotlib.pyplot as plt使用axes3d是因为它需要不同种类的轴域,以便在三维中实际绘制一些东西。 下面:fig = plt.figure()ax1 = fig.add_subpl...
2018-03-01 10:55:57 6447
转载 scikit-learn的model介绍
本文主要是scikit-learn中model的介绍。主要介绍参数coef_ , intercept_ , get_params的使用from sklearn import datasetsfrom sklearn.linear_model import LinearRegression# 直接加载数据集loaded_data = datasets.load_boston()data_X...
2018-03-01 09:38:58 5208
转载 利用scikit-learn实现数据归一化
本文主要介绍scikit-learn中的数据预处理之归一化。Demo 1import numpy as npfrom sklearn import preprocessing# 定义arraya = np.array([-10, 2.3, 13.7, 56, 108])print a# 对array进行归一化(normalization)# scale进行的操作是按列减去均值, ...
2018-02-28 22:43:20 10885 1
转载 利用sklearn实现k近邻法算法
简介:近邻法(,)是一种基本分类与回归方法,它的原理是,对给定的训练数据集,对新的输入实例,在训练数据集中找到与该实例最近邻的个实例,依据“少数服从多数”的原则,根据这个实例中占多数的类,就把该实例分为这个类。从上面简介可以看出,算法实际上是利用训练数据集对特征空间进行划分。在分类方法中,值的选择、实例之间距离的度量及分类决策规则是近邻法的三个基本要素 。近邻算法计算过程:设有训练数据集...
2018-02-28 09:51:58 4745
转载 利用sklearn实现感知机(perceptron)算法
一、感知机(perceptron)感知机简介:感知机(perceptron)是二类分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别。感知机对应于输入空间(特征空间)中将实例划分为正负两类的分离超平面。感知机是一种线性分类模型。感知机实际上表示为输入空间到输出空间的映射函数,如下所示: 其中,和称为感知机的模型参数,叫做权值(weight)或权值向量(weight v...
2018-02-28 09:47:38 15658 5
原创 机器学习-经验风险、期望风险、结构风险
要区分这三个概念,需要先讲一下损失函数L(Y,f(x))的概念。损失函数:针对单个具体样本,表示模型预测值与真实样本值之间的差距。损失函数越小,说明模型对于该样本预测越准确。常见损失函数有0-1损失函数、平方损失函数、绝对损失函数、对数损失函数(对数似然损失函数)。经验风险:对所有训练样本都求一次损失函数,再累加求平均。即,模型f(x)对训练样本中所有样本的预测能力。 所谓经验风险最小化即...
2018-02-26 15:51:26 2322
转载 推荐系统实践(项亮)读书笔记
随着信息技术和互联网的发展,人们逐渐从信息匮乏的时代走入了信息过载的时代。在这个时代,无论是信息消费者还是信息生产者都遇到很大的挑战;对于消费者,从大量信息中找到自己感兴趣的信息是一件非常困难的事情;对于信息生产者,让自己的信息脱颖而出,受到广大用户的关注,也是一件非常困难的事情。推荐系统就是解决这一矛盾的重要工具。推荐系统的任务就是联系用户和信息,一方面帮助用户发现对自己有价值的信息,另一方...
2018-02-23 15:07:19 1865
转载 好友推荐算法
社交网络中,好友推荐随处可见,这里探讨好友推荐是如何做的。1、三元闭包理论 说到好友推荐,就不得不谈三元闭包理论。 三元闭包定义:在一个社交圈内,若两个人有一个共同好友,则这两个人在未来成为好友的可能性就会提高。 举例说明,若B、C有一个共同好友A,且B、C不认识,则B、C成为好友的几率会增加 这个理论直观自然,可以从机会、信任、动机上来解释: 1、B、C是A的朋友,那么B、C见面的机会会增加,如...
2018-02-23 14:37:38 8035
原创 python多进程编写
第一种:使用fork创建多进程(windows没有fork调用) 要让Python程序实现多进程(multiprocessing),我们先了解操作系统的相关知识。Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进
2018-02-03 21:28:57 857
原创 线程、进程哪个好?
我们介绍了多进程和多线程,这是实现多任务最常用的两种方式。现在,我们来讨论一下这两种方式的优缺点。首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Worker负责执行任务,因此,多任务环境下,通常是一个Master,多个Worker。如果用多进程实现Master-Worker,主进程就是Master,其他进程就是Worker。如果用多线程实现
2018-02-02 16:51:38 825
原创 python线程编写-ThreadLocal如何处理变量
在多线程环境下,每个线程都有自己的数据。一个线程使用自己的局部变量比使用全局变量好,因为局部变量只有线程自己能看见,不会影响其他线程,而全局变量的修改必须加锁。但是局部变量也有问题,就是在函数调用的时候,传递起来很麻烦:def process_student(name): std = Student(name) # std是局部变量,但是每个函数都要用它,因此必须传进去
2018-02-02 16:46:50 1839 2
原创 python多线程编写
多任务可以由多进程完成,也可以由一个进程内的多线程完成。进程是由若干线程组成的,一个进程至少有一个线程。由于线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多线程的支持,Python也不例外,并且,Python的线程是真正的Posix Thread,而不是模拟出来的线程。 Python的标准库提供了两个模块:thread和threading,thread是低级模块,
2018-02-02 16:20:07 685
原创 python 语言中with as 的用法
With语句是什么? 有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄。如果不用with语句,代码如下:file = open("/tmp/foo.txt")data = file.read()file.close()
2018-02-01 10:10:00 674
转载 nlp---使用NLTK进行建构词性标注器
自然语言是人类在沟通中形成的一套规则体系。规则有强有弱,比如非正式场合使用口语,正式场合下的书面语。要处理自然语言,也要遵循这些形成的规则,否则就会得出令人无法理解的结论。下面介绍一些术语的简单区别。文法:等同于语法(grammar),文章的书写规范,用来描述语言及其结构,它包含句法和词法规范。句法:Syntax,句子的结构或成分的构成与关系的规范。词法:Lexical,词的构词,变化等的规...
2018-01-31 15:03:43 2092
转载 nlp--使用NLTK进行简单文本分析
原文:http://blog.csdn.net/zzulp/article/details/76146947nltk的全称是natural language toolkit,是一套基于python的自然语言处理工具集。1 NLTK的安装nltk的安装十分便捷,只需要pip就可以。pip install nltk在nltk中集成了语料与模型等的包管理器,通过在python解释器中执行(在jupyte...
2018-01-31 15:00:45 3298
转载 sklearn机器学习算法速查
常见的机器学习算法以下是最常用的机器学习算法,大部分数据问题都可以通过它们解决:线性回归 (Linear Regression)逻辑回归 (Logistic Regression)决策树 (Decision Tree)支持向量机(SVM)朴素贝叶斯 (Naive Bayes)K邻近算法(KNN)K-均值算法(K-means)随机森林 (Random Forest)降低维度算法(Dimensiona...
2018-01-30 16:36:14 441
原创 sklearn分类算法(逻辑回归、朴素贝叶斯、K近邻、支持向量机 、决策树、随机森林 )的使用
scikit-learn机器学习的分类算法包括逻辑回归、朴素贝叶斯、KNN、支持向量机、决策树和随机森林等。这些模块的调用形式基本一致,训练用fit方法,预测用predict方法。用joblib.dump方法可以保存训练的模型,用joblib.load方法可以载入模型。测试程序。测试数据采用小麦种子数据集 (seeds)。(注意,该数据集有个别数据用多个\t分割,执行前要把多余的\t删除,
2018-01-29 16:00:49 11683 1
原创 sklearn包中K近邻分类器 KNeighborsClassifier的使用
1. KNN算法K近邻(k-Nearest Neighbor,KNN)分类算法的核心思想是如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。KNN算法可用于多分类,KNN算法不仅可以用于分类,还可以用于回归。通过找出一个样本的k个最近邻居,将这些邻居的属性的平均值赋给该样本,作为预测值。KNeighborsClassi
2018-01-29 15:00:51 28769
转载 sklearn的快速使用
传统的机器学习任务从开始到建模的一般流程是:获取数据 -> 数据预处理 -> 训练建模 -> 模型评估 -> 预测,分类。本文我们将依据传统机器学习的流程,看看在每一步流程中都有哪些常用的函数以及它们的用法是怎么样的。希望你看完这篇文章可以最为快速的开始你的学习任务。1. 获取数据1.1 导入sklearn数据集 sklearn中包含了大量的优质的数据集,在你学习机器学...
2018-01-29 11:04:26 381
转载 数据挖掘之关联分析
数据挖掘之关联分析一(基本概念)数据挖掘之关联分析二(频繁项集的产生)数据挖掘之关联分析三(规则的产生)数据挖掘之关联分析四(连续属性处理)数据挖掘之关联分析五(序列模式)数据挖掘之关联分析六(子图模式)数据挖掘之关联分析七(非频繁模式)
2018-01-24 15:00:24 2848
转载 奇异值分解(SVD)、主成分分析(PCA)、潜在语义索引(LSI)
一、奇异值与特征值基础知识: 特征值分解和奇异值分解在机器学习领域都是属于常用的方法。两者有着很紧密的关系,我在接下来会谈到,特征值分解和奇异值分解的目的都是一样,就是提取出一个矩阵最重要的特征。先谈谈特征值分解吧: 1)特征值: 见这篇文章: http://www.cnblogs.com/pinard/p/6251584.html 2)奇异值: 下面谈谈...
2018-01-23 21:40:09 1135
转载 主成分分析(PCA)原理详解
一、PCA简介1. 相关背景主成分分析(Principal Component Analysis,PCA)是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。 在许多领域的研究与应用中,往往需要对反映事物的多个变量进行大量的观测,收集大量数据以便进行分析寻找规律。多变量大样本无疑会为研究和应用提供了丰
2018-01-23 20:51:21 3168
转载 隐马尔可夫模型
本文是《统计学习方法》第10章的笔记,用一段167行的Python代码实现了隐马模型观测序列的生成、前向后向算法、Baum-Welch无监督训练、维特比算法。公式与代码相互对照,循序渐进。HMM算是个特别常见的模型,早在我没有挖ML这个坑的时候,就已经在用HMM做基于字符序列标注的分词和词性标注了,甚至照葫芦画瓢实现了一个2阶的HMM分词器。但我的理解仅仅停留在“前向算法”“Viterbi
2018-01-23 15:13:51 6717 1
转载 nlp--Latent Semantic Analysis(LSA/ LSI)算法简介
1. 传统向量空间模型的缺陷 向量空间模型是信息检索中最常用的检索方法,其检索过程是,将文档集D中的所有文档和查询都表示成以单词为特征的向量,特征值为每个单词的TF-IDF值,然后使用向量空间模型(亦即计算查询q的向量和每个文档di的向量之间的相似度)来衡量文档和查询之间的相似度,从而得到和给定查询最相关的文档。 向量空间模型简单的基于单词的出现与否以及TF-IDF等信息来进行检索,但是...
2018-01-12 15:11:04 1822
原创 微信跳一跳游戏外挂(mac电脑+android手机)
外挂源码地址:https://github.com/wangshub/wechat_jump_game1.先下载github的脚本代码 进入下载后的文件夹,安装依赖文件 pip install -r requirements.txt2.安装brew(如果有可忽略,直接执行第二步) 安装方法如下:打开mac的终端工具(安装时间有点长) rub...
2018-01-04 14:28:46 5687 2
转载 数据归一化和两种常用的归一化方法
数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。以下是两种常用的归一化方法:一、min-max标准化(Min-Max Normalization)也称为离差标...
2018-01-03 16:28:54 6609
Mushroom Classification--xgboost训练数据
2018-03-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人