特征工程
文章平均质量分 89
特工
_illusion_
知乎主页:https://www.zhihu.com/people/illusions-29/posts
展开
-
离散型变量的编码方式——one-hot与哑变量(dummy variable)
我们在用模型去解决机器学习问题的时候,要提前进行“特征工程”。而特征工程中很重要的就是对特征的预处理。当你使用的是logistic回归这样的模型的时候,模型要求所有特征都应该是数值型变量,即连续的。但我们生活中常常遇到类别型变量(categorical variable),例如著名的Kaggle泰坦尼克生还预测这个比赛中,乘客从哪里上船(Embarked)这个变量就是类别型变量。这三个登船点两...原创 2018-09-12 10:47:42 · 14690 阅读 · 1 评论 -
日常小知识点积累:python list列表推导式、pandas.get_dummies、pandas.DataFrame.dtypes
1.列表推导式基本形式: result = [item for item in squence <if conditions>] 举例:在以下球员姓名名单中找出名字中含有字母‘a’的球员roster = ['Irving','Hayward','Horford','Tatum','Jaylen','Rozier','Smart']contains_a = [i fo...原创 2018-09-14 10:00:31 · 1301 阅读 · 0 评论 -
处理数据时,对数据取对数的意义
平时在一些数据处理中,经常会把原始数据取对数后进一步处理。之所以这样做是基于对数函数在其定义域内是单调增函数,取对数后不会改变数据的相对关系,取对数作用主要有:1. 缩小数据的绝对数值,方便计算。例如,每个数据项的值都很大,许多这样的值进行计算可能对超过常用数据类型的取值范围,这时取对数,就把数值缩小了,例如TF-IDF计算时,由于在大规模语料库中,很多词的频率是非常大的数字。 ...转载 2018-09-14 10:01:00 · 33186 阅读 · 5 评论 -
pandas日常使用笔记:iterrows()、mode()需要注意的东西
1.iterrows()、iteritems():此方法用于对DataFrame进行行或者列的迭代获取 经过此方法所得到的DataFrame行或者列,你永远都不要去对它进行改动。因为迭代所得只是这个数据对象的复制本,你对它进行何种改动都无济于事 2.mode():此方法用于获得该列“众数”,即本特征下取值最多的那个特征值(因而可能不止一个结果) 如果你想用mode()函数的计算结...原创 2018-09-28 14:10:39 · 10539 阅读 · 2 评论 -
线性特征与非线性特征、线性模型与非线性模型
一.线性特征与非线性特征“线性”与“非线性”是数学上的叫法。线性,指的就是两个变量之间成正比例的关系,在平面直角坐标系中表现出来,就是一条直线;而非线性指的就是两个变量之间不成正比,在直角坐标系中是曲线而非直线,例如一元二次方程的抛物线、对数函数等等关系。一切不是一次函数的关系,都是非线性的。 线性特征:次数为1的特征。这些特征对结果的影响是满足加法原则的,即整体等于部分之和 非线性特征:...原创 2019-03-05 00:29:58 · 23264 阅读 · 3 评论 -
为何将连续变量离散化,就可以增加模型的“非线性能力”?
将连续变量离散化,可以增加模型的“非线性能力”这句话我在不同的地方看到不少人说过,但这句话总是让我感到困惑——知其然不知其所以然的困惑。今天我就从一个小白的角度尝试着解释一下这句话——首先,何为“非线性能力”要搞清:非线性能力,指的就是model在对“线性不可分”数据集进行分类时所展现的能力。我们所熟知的“硬间隔SVM”就是线性model,有人也把LR称作线性model。但我们又可以通...原创 2019-06-18 15:29:23 · 2540 阅读 · 0 评论