机器学习
xckkcxxck
这个作者很懒,什么都没留下…
展开
-
sklearn 多项式回归 提取系数保存到txt中直接使用
最近在帮老师完成一个小项目,是一个多标签回归问题,具体来说,特征有15个,要预测的标签却有43个,同时因为要考虑在一个特定板子上运行,上面的python无法安装sklearn这种库,只能使用numpy等已经安装好的库。因此需要将训练好的模型的系数保存下来,这样在推理的时候直接使用系数文件,可以跳过sklearn的使用。首先给出多项式回归的训练和保存代码:'''多项式回归模型'''import sklearn.pipeline as plimport sklearn.preprocessing原创 2020-12-13 14:18:25 · 1496 阅读 · 0 评论 -
pandas入门学习四
本文是学习《利用Python进行数据分析》的部分笔记,在这里感谢作者pandas基本功能二:1,:函数应用和映射Numpy的ufuncs(元素级函数方法)也可以用于操作pandas对象 frame=DataFrame(np.random.randn(4,3),columns=list('bde'),index=['Utah','Ohio','Texas','Oregon'])...原创 2017-04-20 13:13:11 · 331 阅读 · 0 评论 -
pandas入门学习二
本文是学习《利用Python进行数据分析》的部分笔记,在这里感谢作者DataFrame是一个表格型的数据结构,有列索引有行索引,每列的值可以不同。一:dataFrame的创建:1,最常用的是传入一个由等长列表或Numpy数组组成的字典: >>> data={'state':['Ohio','Ohio','Ohio','Nevada','Nevada'],....原创 2017-04-14 18:13:46 · 255 阅读 · 0 评论 -
pandas入门学习一
本文是学习《利用Python进行数据分析》的部分笔记,在这里感谢作者。一:导入pandasfrom pandas import Series,DataFrame >>> import pandas as pd二,series的有关介绍Series类似于一维数组,它由一组数据以及一组与之相关的索引组成。由一组数据产生 obj=Series([4,7...原创 2017-04-13 22:07:09 · 297 阅读 · 0 评论 -
numpy基本入门操作汇总二
本文是学习《利用python进行数据分析》的部分笔记,在这里感谢作者。九:数学和统计方法:sum,mean,std等函数,既可以作为数组的事例方法调用,也可以当做顶级Numpy函数调用: arr=np.random.randn(5,4)>>> arr.mean()0.30723226701582096>>> np.mean(arr)0....原创 2017-04-13 21:28:17 · 694 阅读 · 0 评论 -
numpy基本入门操作汇总一
本文是学习《利用python进行数据分析》的部分笔记,在这里感谢作者。Numpy是高性能科学计算和数据分析的基础包,在这里只罗列一些numpy的常用功能。一:导入Numpy: import numpy as np它是一个N维的数组对象,也就是说,其中的元素必须是同类型的。 二:创建ndarray使用array函数,参数是一切序列化的对象,比如: data...原创 2017-04-13 19:27:32 · 362 阅读 · 0 评论 -
pandas 的describe函数的参数详解
基本上pandas的describe函数大家都会使用,我之前也是,直接data.describe(),就把数据的统计信息给打印出来了。但是今天因某些原因研究了一下describe的参数,才知道其实describe还有很多其他的作用。这是官方文档:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.desc...原创 2018-12-04 21:54:59 · 64914 阅读 · 2 评论 -
泰坦尼克号预测三:投票法
今天找到一篇新的关于泰坦尼克号比赛的分析文章,作者号称可以上0.8,但是我竟然跑了0.76,而线下是0.83,过拟合了。不过我觉得这里面的对于网格搜索和voting_classifier类的使用以及一些多变量联系的可视化操作是值得学习的,因此我把代码记录在下面,原文连接:https://www.kaggle.com/masumrumi/a-statistical-analysis-ml-workf...原创 2018-12-07 16:56:13 · 305 阅读 · 0 评论 -
泰坦尼克号比赛预测四:使用keras基于深度学习预测
找到了一篇基于深度学习进行泰坦尼克比赛预测的代码。写得非常好,我做了一点点修改,准确了准确率在0.794代码是基于keras写的,以后再做此类问题时可以模仿着进行迁移。原文链接:https://www.kaggle.com/rafaelvleite/titanic-artificial-neural-network-80-score/code代码如下:# -*- coding: ...原创 2018-12-07 22:13:31 · 1255 阅读 · 0 评论 -
泰坦尼克号比赛预测5:能上0.83的代码
今天找到了一份可以上0.83的代码,真是令人震惊,作者只是用了knn的单模型就做到了这个成绩。其中他构建了一个很新奇的特征:家庭中是否有人存活,我不知道是不是这个意思。最后也没有交叉验证,甚至划分出验证集,只是使用了网格搜索,当然,这并不意味着作者做了很少的工作,实际上在他的Kernels中它提到了自己尝试了很多模型,最后发现knn表现非常好,原文链接如下:https://www.kaggle.c...原创 2018-12-08 10:57:51 · 648 阅读 · 0 评论 -
泰坦尼克号比赛大神级分析
最近在学习如何打数据挖掘比赛,感觉以前自己根本没有分析的去做比赛,因此我在重温之前的一些比赛,想看一下大神的思路是怎样的,今天这个比赛就是kaggle的入门比赛:泰坦尼克号比赛。虽然是入门的,但是有太多的大神对这份数据提出了自己的见解,今天我看的这份报告是一个完全版的分析,英文版的,我想把它翻译过来,也记录一下大神的思路。(如果这是侵权,我就删除了。。。)先附上原文链接:https://www.k...原创 2018-12-05 20:26:27 · 767 阅读 · 0 评论 -
kaggle房价预测代码一:很好的stacking模版
今天开始做kaggle的房价预测比赛,这是一个回归问题的比赛,我找到了一份非常好的代码。原文链接:https://www.kaggle.com/serigne/stacked-regressions-top-4-on-leaderboard说一下在特征处理中的一些操作:1.删除价格异常值2.对标签做log转换,平滑化3.对缺失值采取不同的填充方式4.对类别特征按情况采取la...原创 2018-12-08 22:03:43 · 4036 阅读 · 1 评论 -
泰坦尼克号比赛分层预测
上一篇最终提交了一下,结果是77。然后那一篇主要在于前面的特征工程,后面的模型部分没有很详细处理,今天找到一篇在模型建立上很好的文章,第一层作者用了5个模型分别进行预测,并且是交叉验证实现,然后作者把第一层的结果作为输出,又利用一个xgb模型作为第二层的训练,特征提取上与第一篇文章没有大的区别,那么结果我也提交了,分数是0.799,我也是醉了,差一点到0.8.代码贴出来如下,重点就是如何做的分层预...原创 2018-12-06 21:08:51 · 308 阅读 · 0 评论 -
reduce_mem_usage函数,减少数据的内存
最近在做kaggle比赛的时候看到有一个函数reduce_mem_usage,可以对数据进行压缩,从而减少内存消耗,因此记录一下:def reduce_mem_usage(df, verbose=True): numerics = ['int16', 'int32', 'int64', 'float16', 'float32', 'float64'] start_mem = ...原创 2019-03-05 10:21:11 · 2949 阅读 · 0 评论 -
pandas入门学习五
本文是学习《利用Python进行数据分析》的部分笔记,在这里感谢作者汇总和计算描述统计:1,一次性产生多个汇总设计: df=DataFrame([[1.4,np.nan],[7.1,-4.5],[np.nan,np.nan],[0.75,-1.3]],index=['a','b','c','d'],columns=['one','two'])dfOut[37]: ...原创 2017-04-20 16:13:25 · 351 阅读 · 0 评论 -
pandas入门学习六
本文是学习《利用Python进行数据分析》的部分笔记,在这里感谢作者1,使用DataFrame的列:DataFrame的set_index函数会将其一个或者多个列转换为行索引,并创建一个新的DataFrame: frame=DataFrame({'a':range(7),'b':range(7,0,-1),'c':['one','one','one','two','two','t...原创 2017-04-20 21:52:48 · 260 阅读 · 0 评论 -
python实现简单的单变量线性回归
线性回归是机器学习中的基础算法之一,属于监督学习中的回归问题,算法的关键在于如何最小化代价函数,通常使用梯度下降或者正规方程(最小二乘法),在这里对算法原理不过多赘述,建议看吴恩达发布在斯坦福大学上的课程进行入门学习。这里主要使用python的sklearn实现一个简单的单变量线性回归。sklearn对机器学习方法封装的十分好,基本使用fit,predict,score,来训练,预测,评价原创 2017-04-13 15:33:08 · 4594 阅读 · 0 评论 -
pandas入门学习三
本文是学习《利用Python进行数据分析》的部分笔记,在这里感谢作者pandas基本功能一:重新索引:调用reindex方法将会根据新索引重新排列: obj=Series([4.5,7.2,-5.3,3.6],index=['d','b','a','c'])obj2=obj.reindex(['a','b','c','d','e'])objOut[18]: d ...原创 2017-04-19 22:23:46 · 260 阅读 · 0 评论 -
xgb原理及使用
以下文章均为他人博客,只是做一下汇总,便于整理学习。xgb原理:http://blog.csdn.net/a819825294/article/details/51206410xgb使用:http://blog.csdn.net/zc02051126/article/details/46771793xgb调参:http://blog.csdn.net/han_xiaoyang/arti原创 2017-07-23 09:13:02 · 1479 阅读 · 0 评论 -
lightgbm报错:AttributeError: 'LGBMRegressor' object has no attribute 'best_iteration'
在进行预测的时候,y_pred_1 = gbm.predict(X_val, num_iteration=gbm.best_iteration)lightgbm报上述错误。查阅官方文档后,明白与参数early_stopping_roundsearly_stopping_rounds (int or None, optional (default=None)) – Activates e...原创 2018-03-20 09:24:07 · 5962 阅读 · 6 评论 -
机器学习笔记一:线性回归算法
一:线性回归算法:1.模型的介绍 在线性回归中,我们建立模型,来拟合多个子变量x(机器学习中成为特征)与一个因变量y之间的关系,y的范围不是离散的,所以这是一个回归问题。线性回归模型,就是 y=w*x+b 我们的目的就是求得一组权重w,使得它与X的点积与真实的y值更加接近。2.损失函数接下来我们想如何让y的真实值与预测值更加接近,或者说怎么表示这个差距,很明显就是差值,但是差值有正有负,如...原创 2018-04-10 17:39:08 · 295 阅读 · 0 评论 -
机器学习笔记二:逻辑回归算法
一:算法介绍在前一篇文章中介绍了线性回归算法进行预测分析,但是实际生活中这个算法有它的局限性,比如对于分类问题,我们想要区分一个邮件是不是垃圾邮件,它只有两个可能的标签,0或者1,那么用回归算法来解决就不是那么明智了,因此今天我们介绍一种经典的分类算法,逻辑回归算法。它可以用来做分类,具体的说是二分类。逻辑回归(Logistic)算法虽然名字里有回归两字,但是它并不是用来做回归的,而是一个分类算法...原创 2018-04-12 09:11:41 · 428 阅读 · 0 评论 -
机器学习笔记三:K近邻算法
一、算法介绍: K近邻又称为KNN,是一种监督的机器学习算法,既可以用于回归也可以用于分类。它的计算结果完全取决于数据,不不是一个估算的模型,因此它需要把所有数据提前导入到内存中,对于大规模的数据,这个算法运行时间会非常长,同时,模型对于异常点敏感。 二、算法原理: K近邻的原理其实十分简单,假设我们有一个二维的数据集,一共可以分成两类,那么我们可以把所有的数据都画在一张图上,...原创 2018-04-12 11:52:20 · 207 阅读 · 0 评论 -
机器学习笔记四:K-Means算法
一、无监督学习介绍: 在K均值算法是一种典型的无监督学习算法,在介绍K均值算法之前,我们先介绍什么是无监督学习,它着重于发现数据本身的特点。无监督学习不需要对数据进行标记,它的作用之一划分数据的“群落”,此外他还可以寻找“离群”的样本;对于特征维度特别高的数据样本,我们同样可以通过无监督学习进行降维,保留最具有区分度的原始特征,这些都是在海量数据处理中十分实用的技术。二、K均值算法介绍...原创 2018-04-13 17:50:37 · 296 阅读 · 0 评论 -
pytorch学习:一元线性回归代码
# -*- coding: utf-8 -*-"""Created on Tue Aug 7 11:15:54 2018@author: www"""import numpy as npimport torchfrom torch import nnfrom torch import optimfrom torch.autograd import Variableimpo...原创 2018-08-07 12:17:30 · 464 阅读 · 0 评论 -
pandas 读取csv文件读取指定行 读取csv大文件分块读取方法
当用pandas的read_csv函数或者是read_table函数读取文件时,如果遇到大的文件,需要分块读取,在这个基础上可以读取指定行,比如读取标签全为0的行。代码如下: f = open(path + r'\train.csv')reader = pd.read_csv(f, iterator=True, nrows=20000000)loop = Truec...原创 2018-03-10 20:57:05 · 12541 阅读 · 0 评论 -
xgboost 使用方法简述
以下代码是我从各个博客找到的,作为一个初学者,我把这几种形式记录一下,方便大家使用。1 初级版本一 # 划分数据集X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.01, random_state=1729)print(X_train.shape, X_test.shape)#模型参...原创 2017-12-31 12:56:23 · 1474 阅读 · 0 评论 -
pandas的绘图函数:
本文是学习《利用Python进行数据分析》的部分笔记,在这里感谢作者一:线性图:Seris和DataFrame都有一个用于生成各类图表的plot方法,默认情况下,它们生成的是线形图: >>> s=Series(np.random.randn(10).cumsum(),index=np.arange(0,100,10))s.plot()<matplo...原创 2017-04-21 10:22:53 · 960 阅读 · 0 评论 -
sklearn 学习笔记一:开始学习sklearn
sklearn的简单开始。原创 2016-11-27 12:40:08 · 2009 阅读 · 0 评论