
机器学习
Persist_bcl
无奈总是一种清醒的痛
展开
-
pytorch 构建神经网络对CIFAR10 数据集进行分类
1. 先建立网络模型(卷积层加全连接层)import torch.nn as nnimport torch.nn.functional as Fclass Net(nn.Module): def __init__(self): super(Net, self).__init__() self.conv1 = nn.Conv2d(3, 6, 5) self.pool = nn.MaxPool2d(2, 2) self.conv2原创 2021-03-11 19:43:38 · 798 阅读 · 0 评论 -
ROC曲线,曲线下的面积(Aera Under Curve,AUC),P-R曲线
ROC曲线是Receiver Operating Characteristic Curve的简称,中文名为“受试者工作特征曲线”。ROC曲线源于军事领域,而后在医学领域应用甚广,“受试者工作特征曲线”这一名称也正是来自于医学领域。ROC曲线的横坐标为假阳性率(False Positive Rate,FPR);纵坐标为真阳性率(True Positive Rate,TPR)。FPR和TPR的计算方法分别为: **FPR = FP/N** ...原创 2020-12-17 15:51:11 · 1584 阅读 · 0 评论 -
文本分类、情感分析和垃圾邮件识别
朴素贝叶斯分类最适合的场景就是文本分类、情感分析和垃圾邮件识别。其中情感分析和垃圾邮件识别都是通过文本来进行判断。从这里你能看出来,这三个场景本质上都是文本分类,这也是朴素贝叶斯最擅长的地方。所以朴素贝叶斯也常用于自然语言处理 NLP 的工具。sklearn 的全称叫 Scikit-learn,它给我们提供了 3 个朴素贝叶斯分类算法,分别是高斯朴素贝叶斯(GaussianNB)、多项式朴素贝叶斯(MultinomialNB)和伯努利朴素贝叶斯(BernoulliNB)。这三种算法适合应用在不同的场景下原创 2020-11-20 09:12:37 · 1431 阅读 · 0 评论 -
朴素贝叶斯分类
贝叶斯原理是英国数学家托马斯·贝叶斯提出的。贝叶斯是个很神奇的人,他的经历类似梵高。生前没有得到重视,死后,他写的一篇关于归纳推理的论文被朋友翻了出来,并发表了。这一发表不要紧,结果这篇论文的思想直接影响了接下来两个多世纪的统计学,是科学史上著名的论文之一。贝叶斯原理跟我们的生活联系非常紧密。举个例子,如果你看到一个人总是花钱,那么会推断这个人多半是个有钱人。当然这也不是绝对,也就是说,当你不能准确预知一个事物本质的时候,你可以依靠和事物本质相关的事件来进行判断,如果事情发生的频次多,则证明这个属性更有原创 2020-11-19 08:56:54 · 444 阅读 · 0 评论 -
支持向量机(SVM)
Support Vector Machines在监督学习中,许多学习算法的性能都非常类似,因此,重要的不是你该选择使用学习算法A还是学习算法B,而更重要的是,应用这些算法时,所创建的大量数据在应用这些算法时,表现情况通常依赖于你的水平。比如:你为学习算法所设计的特征的选择,以及如何选择正则化参数,诸如此类...原创 2020-11-14 11:11:47 · 1082 阅读 · 0 评论 -
决策树之CART 算法(回归树,分类树)
CART 算法,英文全称叫做 Classification And Regression Tree,中文叫做分类回归树。ID3 和 C4.5 算法可以生成二叉树或多叉树,而 CART 只支持二叉树。同时 CART 决策树比较特殊,既可以作分类树,又可以作回归树。什么是分类树,什么是回归树呢?1.分类树可以处理离散数据,也就是数据种类有限的数据,它输出的是样本的类别,而回归树可以对连续型的数值进行预测,也就是数据在某个区间内都有取值的可能,它输出的是一个数值。2.决策树的核心就是寻找纯净的原创 2020-11-13 10:51:53 · 4562 阅读 · 0 评论 -
lanenet 制作自己的跑道数据集(labelme)
最近做一个跑道线的检测,在此记录一下生成自己数据集的方法:1.安装labelme 标注工具。 具体参考https://blog.youkuaiyun.com/qq_38451119/article/details/83036495, 不多赘述,安装完成后在控制器输入labelme打开标注工具。2.选择自己图片所在文件夹,进行标注,标注方式可以在选中的图片上右击进行选择,我选择的是 Create LineStrip .标注完成后会生成相应的json文件,如下图:3.处理得到的json文件.原创 2020-11-13 10:19:50 · 1948 阅读 · 6 评论 -
卷积神经网络 实现验证码识别 ---- 识别率 99%
1. 创建自己的数据集,利用数字1-10 和 26个小写字母生成我们的训练数据集。from captcha.image import ImageCaptchaimport randomCHAR_SET = ['1', '2', '3', '4', '5','6', '7', '8', '9', '0','a','b','c','d','e','f','g','h','i','j','k','l','m','n']CHAR_LEN = len(CHAR_SET)CAPTCHA_LEN = 4原创 2020-11-12 09:01:31 · 1494 阅读 · 18 评论 -
泰坦尼克号乘客生存预测(决策树)
#泰坦尼克号乘客生存预测import pandas as pdfrom sklearn.tree import DecisionTreeClassifierfrom sklearn.feature_extraction import DictVectorizerimport numpy as npfrom sklearn.model_selection import cross_val_scorefrom sklearn import treeimport graphviz#数据加载t.原创 2020-11-12 08:36:20 · 1107 阅读 · 0 评论 -
决策树之C4.5算法
1. 采用信息增益率因为 ID3 在计算的时候,倾向于选择取值多的属性。为了避免这个问题,C4.5 采用信息增益率的方式来选择属性。信息增益率 = 信息增益 / 属性熵,具体的计算公式这里省略。当属性有很多值的时候,相当于被划分成了许多份,虽然信息增益变大了,但是对于 C4.5 来说,属性熵也会变大,所以整体的信息增益率并不大。2. 采用悲观剪枝ID3 构造决策树的时候,容易产生过拟合的情况。在 C4.5 中,会在决策树构造之后采用悲观剪枝(PEP),这样可以提升决策树的泛化能力。悲观剪枝是原创 2020-11-12 08:28:08 · 2822 阅读 · 0 评论 -
决策树之 ID3 算法
在现实生活中,我们会遇到各种选择,不论是选择男女朋友,还是挑选水果,都是基于以往的经验来做判断。如果把判断背后的逻辑整理成一个结构图,你会发现它实际上是一个树状图。我们在做决策树的时候,会经历两个阶段:构造和剪枝。构造就是生成一棵完整的决策树。简单来说,构造的过程就是选择什么属性作为节点的过程,那么在构造过程中,会存在三种节点: 根节点:就是树的最顶端,最开始的那个节点。 内部节点:就是树中间的那...原创 2020-11-11 09:32:48 · 2108 阅读 · 0 评论