机器学习
Sunstar0708
这个作者很懒,什么都没留下…
展开
-
sklearn中特征提取方法基础知识
特征提取方法基础知识,将不同类型的数据转换成特征向量方便机器学习算法研究目录分类变量特征提取:分类数据的独热编码方法,并用scikit-learn的DictVectorizer类实现机器学习问题中常见的文档特征向量:词库模型将文档转换成词块的频率构成的特征向量,用CountVectorizer类计算基本单词频次的二进制特征向量。通过停用词过滤(stop_word),词根还原,词形还原(wordNetLemmatizer)进一步优化特征向量,加入TF-IDF(TfidfVe.转载 2020-10-15 20:05:00 · 2461 阅读 · 0 评论 -
sklearn中fit_transform,transform和fit函数的区别和作用详解
写在前面fit和transform没有任何关系,仅仅是数据处理的两个不同环节,之所以出来fit_transform这个函数名,仅仅是为了写代码方便,会高效一点。sklearn里的封装好的各种算法使用前都要fit,fit相对于整个代码而言,为后续API服务。fit之后,然后调用各种API方法,transform只是其中一个API方法,所以当你调用transform之外的方法,也必须要先fit。fit原义指的是安装、使适合的意思,其实有点train的含义,但是和train不同的是,它并不是一个转载 2020-10-14 16:13:41 · 3031 阅读 · 0 评论 -
决策树提升算法:AdaBoost算法
AdaBoost提升算法AdaBoost原理sklearn.ensemble 中包括了增强算法AdaBoostAdaBoost 的核心思想是用反复修改的数据(主要是修正数据的权重)来训练一系列的弱学习器(一个弱学习器模型仅仅比随机猜测好一点, 比如一个简单的决策树),由这些弱学习器的预测结果通过加权投票(或加权求和)的方式组合, 得到我们最终的预测结果。在每一次所谓的提升(boosting)迭代中,数据的修改由应用于每一个训练样本的(新) 的权重 , , …, 组成(即修改每一个训练样本应用于新一轮原创 2020-10-11 11:09:36 · 970 阅读 · 1 评论 -
正则化方法:L1和L2 regularization、数据集扩增、dropout
正则化方法:防止过拟合,提高泛化能力在训练数据不够多时,或者overtraining时,常常会导致overfitting(过拟合)。其直观的表现如下图所示,随着训练过程的进行,模型复杂度增加,在training data上的error渐渐减小,但是在验证集上的error却反而渐渐增大——因为训练出来的网络过拟合了训练集,对训练集外的数据却不work。为了防止overfitting,可以用的方法有很多,下文就将以此展开。有一个概念需要先说明,在机器学习算法中,我们常常将原始数据集分为三部分:traini转载 2020-10-01 21:42:52 · 165 阅读 · 0 评论 -
对于《机器学习实战》中决策树的ID3算法详细说明
from math import logimport operatordef createDataSet(): dataSet = [[1, 1, 'yes'], [1, 1, 'yes'], [1, 0, 'no'], [0, 1, 'no'], [0, 1, 'no']] labels = ['no surfacing', 'flippers'] # 特征值原创 2020-10-01 08:40:12 · 582 阅读 · 2 评论 -
《机器学习实战》基于朴素贝叶斯算法实现垃圾邮件分类
import randomimport sysimport numpy as npimport pandas as pdfrom pandas import Series, DataFrameimport redef textParse(bigString): listOfTokens = re.split(r'\W*', bigString) # 返回列表 return [tok.lower() for tok in listOfTokens if len(tok) &g原创 2020-09-30 12:51:13 · 1603 阅读 · 3 评论 -
《机器学习实战》基于k-近邻算法实现约会对象的分类
代码实现如图 ,详细解释都在注释中import numpy as np# 导入运算符模块import operatordef createDataSet(): group = np.array([[1.0, 1.1], [1.0, 1.0], [0, 0], [0, 0.1]]) # 创建数据集 labels = ['A', 'A', 'B', 'B'] return group, labelsdef classify0(inX, dataSet, labels,原创 2020-09-29 19:14:02 · 236 阅读 · 0 评论