
Python机器学习
文章平均质量分 65
威少的书童
这个作者很懒,什么都没留下…
展开
-
Python机器学习经典模型实战篇
朴素贝叶斯算法实例文本分类from sklearn.datasets import fetch_20newsgroupsfrom sklearn.feature_extraction.text import TfidfVectorizerfrom sklearn.model_selection import train_test_splitfrom sklearn.naive_bayes import MultinomialNBfrom sklearn.metrics import class原创 2022-02-21 12:23:02 · 3104 阅读 · 0 评论 -
Python特征工程之数据预处理
Get_dummies哑变量处理哑变量也叫虚拟变量,通常取值为0或1。import pandas as pddf = pd.DataFrame({'客户编号': [1, 2, 3], '性别': ['男', '女', '男']})print(df)df = pd.get_dummies(df, columns=['性别']) # 第1个参数为表格名称,第2个参数为需要处理的列的名称print(df)"""虽然现在已经将文本类型的数据转换成了数字,但是“性别_女”和“性别_男”这两列存在多重共原创 2021-03-19 18:24:58 · 457 阅读 · 0 评论 -
Python机器学习常用算法模型的使用
随机森林随机森林分裂模型演示代码第1行代码引入随机森林分类模型相关库RandomForestClassifier。第2行代码中的X是特征变量,共有2个特征。第3行代码中的y是目标变量,共有2个分类——0和1。第5行代码引入模型,并设置弱学习器的数量n_estimators为10,即共有10个决策树模型作为弱学习器;设置random_state为123,使得每次运行结果一致(如果不设置则可能出现每次预测结果不一样的情况,这是因为随机森林遵循“数据随机”和“特征随机”的基本原则)。第6行代码用原创 2021-03-18 11:48:44 · 1490 阅读 · 0 评论 -
参数调优——K折交叉验证和GridSearch网格搜索
K折交叉验证在机器学习中,因为训练集和测试集的数据划分是随机的,所以有时会重复地使用数据,以便更好地评估模型的有效性,并选出最好的模型,该做法称为交叉验证。具体而言就是对原始样本数据进行切分,然后组合成为多组不同的训练集和测试集,用训练集训练模型,用测试集评估模型。某次的训练集可能是下次的测试集,故而称为交叉验证。交叉验证的方法有简单交叉验证、K折交叉验证和留一交叉验证3种。其中K折交叉验证应用较为广泛,它是指将数据集随机等分为K份,每次选取K-1份作为训练集,用剩下的1份作为测试集,得到K个模型后将这原创 2021-03-14 17:20:44 · 4922 阅读 · 4 评论 -
Python实现过采样和欠采样
1.过采样的原理过采样的方法有随机过采样和SMOTE法过采样。(1)随机过采样随机过采样是从100个违约样本中随机抽取旧样本作为一个新样本,共反复抽取900次,然后和原来的100个旧样本组合成新的1000个违约样本,和1000个不违约样本一起构成新的训练集。因为随机过采样重复地选取了违约样本,所以有可能造成对违约样本的过拟合。(2)SMOTE法过采样SMOTE法过采样即合成少数类过采样技术,它是一种针对随机过采样容易导致过拟合问题的改进方案。假设对少数类进行4倍过采样,通过下图来讲解SMOTE法的原创 2021-03-13 13:41:16 · 15195 阅读 · 9 评论 -
人工神经网络
神经元与感知器M-P神经元M-P神经元的权值向量W无法自动学习和更新,不具备学习的能力感知机感知机训练法则自动调整权值,具备学习能力第一个用算法来精确定义的神经网络模型线性二分类的分类器感知机算法存在多个解,受到权值向量初始值,错误样本顺序的影响对于非线性可分的数据集,感知机训练法则无法收敛。Delta法则:使用梯度下降法,找到能够最佳拟合训练样本集的权向量。逻辑回归可以看做单层神经网络神经网络的设计:神经网络的结构激活函数损失函数鸢尾花实例import ten原创 2021-02-16 08:02:05 · 486 阅读 · 0 评论 -
分类问题
逻辑回归原创 2021-02-11 06:53:12 · 559 阅读 · 4 评论 -
梯度下降法
求解线性回归模型——函数求极值解析解:根据严格的推导和计算得到,是方程的精确解能够在任意精度下满足方程数值解:通过某种近似计算得到的解,能够在给定的精度下满足方程梯度下降法——求函数极值的数值解一元凸函数步长太小,迭代次数多,收敛慢。步长太大,引起震荡,可能无法收敛。设置学习率可以使步长进行自动调整,靠近极值点时步长小,远离极值点时,步长大。迭代公式:二元凸函数求极值z=f(x,y)迭代公式:只要能够把损失函数描述成凸函数,那么就一定可以采用梯度下降法,以最快的速度原创 2021-01-29 12:52:40 · 1663 阅读 · 2 评论 -
多元线性回归
多元回归:回归分析中包括两个或两个以上的自变量。多元线性回归:因变量和自变量之间是线性关系。多元线性回归参数向量W取值要满足使Loss最小,由可得到联立多个线性方程转化成矩阵形式求解代码实现import tensorflow as tfimport numpy as np#设置图像中显示中文plt.rcParams['font.sans-serif'] = ['SimHei']x1 = np.array([137.97,104.50,100.00,124原创 2021-01-27 22:33:04 · 959 阅读 · 0 评论 -
Python实现一元线性回归——不调包
一元线性回归损失函数/代价函数(Loss/cost function):模型的预测值与真实值的不一致程度平方损失函数(square loss)要使得Loss最小,根据极值点的偏导为零,联立方程组。对未知的两个变量求偏导然后联立方程组求解得到两种不同形式的结果,但实际上是等价的结果。利用Python实现计算一元线性回归(所有的点的坐标已知,求拟合函数的权重和偏置值)x = [137.97,104.50,100.00,124.32,79.2,99.,124.,114.,106.69,138.原创 2021-01-27 21:05:39 · 1014 阅读 · 0 评论 -
python深度学习之TensorFlow
TensorFlow基础import TensorFlow as tf创建张量创建Tensor对象张量由Tensor类实现,每一个张量都是一个Tensor对象tf.constant():创建张量张量对象.numpy()返回array数组张量元素的数据类型tf.constant(1.0,dtype=tf.float64)改变张量中的数据类型(实行数据转换时,低精度向高精度转换,否则会出现数据溢出)将其他类型数据转换成张量tf.istensor(张量对象):判断是否原创 2021-01-24 13:14:51 · 6520 阅读 · 0 评论 -
python分词,提高分词准确率
使用jieba分词时可以针对性的加入用户自定义词典(jieba.load_userdict(“userDict.txt”) # 加载用户自定义词典),可以提高对人名,地名等未登陆词的识别效果,提高分词性能。原文参考转载 2020-12-23 22:06:12 · 1067 阅读 · 0 评论 -
Mining and Summarizing Customer Reviews ——notes
摘要商家在网上销售商品的时候经常会要求消费者去评论他们购买的商品或者相关的服务。随着电子商务越来越流行,商品的评论数量急剧上升。对一个受欢迎的商品会有几百甚至上千条评论,这让那些潜在客户很难读完评论来做出明智决定的是否购买产品。这也使得产品的制造商很难跟踪和管理用户的意见。这篇文章的三个步骤是:(1)挖掘客户评论的产品特征;(2)在每次审查中识别意见句,并决定每个意见句是积极的还是消极的;(3)总结结果。本文提出了几种新的技术来执行这些任务。 我们的实验结果使用了一些在线销售的产品的评论,证明了原创 2020-12-07 16:12:08 · 279 阅读 · 0 评论 -
文本特征提取英文、中文
在学习黑马程序员出品的机器学习视频做的代码笔记。代码中直接调用jieba第三方库进行分词,还可再做改进,关于英文分词的文章可以看这个英文文本分词改进from sklearn.feature_extraction.text import CountVectorizerimport jiebadef countvec(): """ 对文本进行特征值化 :return:None """ cv = CountVectorizer() data = cv.f原创 2020-12-03 11:22:02 · 551 阅读 · 0 评论 -
训练一——Python新闻标题分类
今天晚上写了一晚上中文文本分类,对贝叶斯的模型还是太陌生了,调包都显得很生涩。一开始没有对新闻标题进行分词就直接往调用 TfidfVectorizer()函数的fit_transform,结果一直报错,先把代码附上from sklearn.feature_extraction.text import TfidfVectorizerfrom sklearn.naive_bayes import MultinomialNBimport pandas as pdimport jiebadef n原创 2020-11-13 23:06:50 · 2034 阅读 · 2 评论