二分查找三种模板模板 #1 (left <= right)left,right二分查找的最基础和最基本的形式。 查找条件可以在不与元素的两侧进行比较的情况下确定(或使用它周围的特定元素)。 不需要后处理,因为每一步中,你都在检查是否找到了元素。如果到达末尾,则知道未找到该元素。模板 #2 (left < right)[left,right)(半闭半开区间)一种实现二分查找的高级方法。
转载
2024-06-03 16:42:53
20阅读
说说 sigmoid 函数为什么用于二分类问题?之前在学习 《Pattern Recognition and Machine Learning》这本书的时候,写笔记的时候,记录了 sigmoid 函数的推导,今天专门单拎出来从下面几个方面再总结一遍,再讲的细致一点。伯努利实验伯努利分布二元分类指数族函数sigmoid 函数的推导伯努利实验在介绍伯努利分布之前,先介绍一个有名的实验 – 伯努利实验。
AUC是指:从一堆样本中随机抽一个,抽到正样本的概率比抽到负样本的概率大的可能性! AUC是一个模型评价指标,只能用于二分类模型的评价,对于二分类模型,还有很多其他评价指标,比如logloss,accuracy,precision。如果你经常关注数据挖掘比赛,比如kaggle,那你会发现AUC和logloss基本是最常见的模型评价指标。为什么AUC和logloss比accuracy更常用呢?
前置知识线性分类指存在一个线性方程可以把待分类数据分开,或者说用一个超平面能将正负样本区分开,表达式为 。线性分类器线性分类器就是用一个“超平面”将两个样本隔离开,如:二维平面上的两个样本用一条直线来进行分类;三维立体空间内的两个样本用一个平面来进行分类;N维空间内的两个样本用一个超平面来进行分类。常见的线性分类器有:LR,贝叶斯分类,单层感知机、线性回归,SVM(线性核)等。线性分类器速度快、编
转载
2024-04-03 20:19:46
87阅读
LDA是一种监督学习的降维技术,也就是说它的数据集的每个样本是有类别输出的。这点和PCA不同。PCA是不考虑样本类别输出的无监督降维技术。LDA的思想可以用一句话概括,就是“投影后类内方差最小,类间方差最大”。什么意思呢? 我们要将数据在低维度上进行投影,投影后希望每一种类别数据的投影点尽可能的接近,而不同类别的数据的类别中心之间的距离尽可能的大。下面,我们给出了 LDA 的一个简单的实现版本,模
转载
2024-06-06 11:57:46
54阅读
很多基础知识有些遗忘了,也算作是一种复习。我尽量推导的关键的地方写写,建议大家还是要手动推一推公式增加理解。Linear Discriminant Analysis (也有叫做Fisher Linear Discriminant)是一种有监督的(supervised)线性降维算法。与PCA保持数据信息不同,LDA是为了使得降维后的数据点尽可能地容易被区分!假设原始数据表示为X,(m*n矩
转载
2024-09-21 13:27:49
58阅读
文章目录引言ROC的引入混淆矩阵ROC曲线的解释EERAUC 引言 本文旨在介绍ROC曲线及其前置概念如混淆矩阵、FPR、TPR等,还有其引申概念EER、AUC等等。ROC的引入 ROC曲线是一张用于评价二分类模型的曲线图,典型如下图所示: 理论上来说,该曲线越靠近坐标系的左上角说明该二分类器的表现越好,一个理想的二分类的ROC曲线应如下图所示:混淆矩阵 为了了解ROC曲线横纵轴所代表的意义及曲
转载
2024-04-22 22:24:52
91阅读
基础监督学习经典模型监督学习任务的基本架构和流程: 1.准备训练数据; 2.抽取所需特征,形成用于训练特征向量(Feature Vectors); 3.训练预测模型(Predictive Model); 4.抽取测试数据特征,得到用于测试的特征向量; 5.使用预测模型对待测试特征向量进行预测并得到结果(Label/Target)。分类学习 1.二分类(Binary Classifica
转载
2023-11-03 05:55:58
147阅读
本篇记录一下如何使用bert进行二分类。这里用到的库是pyotrch-pretrained-bert,原生的bert使用的是TensorFlow,这个则是pytorch版本。本篇文章主要参考了基于BERT fine-tuning的中文标题分类实战的代码以及如何用 Python 和 BERT 做中文文本二元分类?的数据。本文的github代码地址:https://github.com/sky9452
转载
2023-11-14 21:42:31
135阅读
前言最近在b站发现了一个非常好的 计算机视觉 + pytorch实战 的教程,相见恨晚,能让初学者少走很多弯路。 因此决定按着up给的教程路线:图像分类→目标检测→…一步步学习用 pytorch 实现深度学习在 cv 上的应用,并做笔记整理和总结。up主教程给出了pytorch和tensorflow两个版本的实现,我暂时只记录pytorch版本的笔记。pytorch官网入门demo——实现一个图像
转载
2023-08-25 19:01:04
252阅读
文章目录一、相关概念1.logistic回归1.1前言1.2目的1.3流程1.4Sigmoid函数1.4.1公式1.4.2图像1.5优缺点2.最优化方法2.1梯度上升算法2.1.1梯度公式2.1.2例子2.1.3迭代公式2.1.4训练步骤2.2梯度下降算法2.2.1与梯度上升算法的区别2.2.2迭代公式2.2.3训练步骤2.3随机梯度上升算法2.3.1训练步骤3.分类3.1二分类3.2多分类3.
转载
2023-10-11 09:46:36
606阅读
本文将介绍如何使用pytorch和resnet18模型,实现图片二分类网络微调(Fine Tune)的全过程。首先,我们将介绍pytorch的基本概念,包括tensor、autograd、nn.Module以及optimizer。然后,我们将介绍resnet50模型的结构,以及如何使用pytorch的nn.Module模块来定义模型。接下来,我们将介绍如何使用pytorch的nn.Module模块
转载
2023-07-17 18:11:29
212阅读
形式1:输出为单通道即网络的输出 output 为 [batch_size, 1, height, width] 形状。其中 batch_szie 为批量大小,1 表示输出一个通道,height 和 width 与输入图像的高和宽保持一致。在训练时,输出通道数是 1,网络得到的 output 包含的数值是任意的数。给定的 target ,是一个单通道标签图,数值只有 0 和 1 这两种。为了让网络
转载
2023-09-22 12:24:04
116阅读
我在一开始学习数据科学中机器学习(Machine Learning)的时候重点都放在理解每个模型上,但是真的到用机器学习去解决问题的时候发现自己完全没有思路。所以今天的主要目的是用一个简单的例子和大家分享下使用Python的三方包sklean解决机器学习的思路。文中使用了Kaggle上著名的Titanic数据集,主要利用了Python三方包pandas,sklearn,和matlop
转载
2024-04-26 14:37:40
93阅读
上一篇文章讲了GBDT的回归篇,其实这一篇文章的原理的思想基本与回归相同,不同之处在于分类任务需用的损失函数一般为logloss、指数损失函数。 回顾下logistic regression有助于我们进一步的了解GBDT是如何进行分类的,线性模型是我们使
转载
2024-03-31 19:30:17
86阅读
二分类问题可能是应用最广泛的机器学习问题,它指的是所有数据的标签就只有两种,正面或者负面。在这个例子中,我们学习根据电影评论的文字内容将其划分为正面或者负面。数据集介绍:本节使用IMDB数据集,它包含来自互联网电影数据库(IMDB)的50000条严重两极分化 的评论。数据集被分为用于训练的25000条评论和用于测试的25000条评论,训练集和测试集都包含50%的正面评论和50%的负面评论。为什么要
转载
2023-08-17 17:05:41
0阅读
二分类模型的复现原理如下数据工具模型的训练过程代码片通过可视化选择合适的插值方法利用插值曲线生成的数据训练模型参考 分界线上侧是颤振,下侧没有颤振。现在需要在上下两侧随机生成数据集 原理如下1.由数据点训练回归模型来拟合分界曲线2.由分界曲线生成颤振与不颤振的样本点3.由样本点训练分类模型4.由分类模型判断点是否颤振(但是,这篇文章的矛盾点在于,既然已经知道颤振分界曲线为,什么还要通过颤振曲线
转载
2024-05-07 13:28:35
153阅读
KNN算法简介 KNN(K-Nearest Neighbor)最邻近分类算法是数据挖掘分类(classification)技术中最简单的算法之一,其指导思想是”近朱者赤,近墨者黑“,即由你的邻居来推断出你的类别。KNN最邻近分类算法的实现原理:为了判断未知样本的类别,以所有已知类别的样本作为参照,计算未知样本与所有已知样本的距离,从中选取与未知样本距离最近的K个已知样本,根据少数服从多数的投票法则
转载
2024-04-08 20:28:33
70阅读
写在最前:在系统地学习了Transformer结构后,尝试使用Transformer模型对DNA序列数据实现二分类,好久前就完成了这个实验,一直拖着没有整理,今天系统的记录一下,顺便记录一下自己踩过的坑1、数据说明两个csv文件,共有三列,第一列是id,第二列每个数据都是一长串dna序列,第三列是它们的label,分别是0和1。数据的data列有点长,此处截了一部分供大家参考:2、python库准
转载
2024-08-08 11:51:45
218阅读
电影二分类问题通常需要对原始数据进行大量预处理,以便将其转换为张量输入到神经网络中。单词序 列可以编码为二进制向量,但也有其他编码方式。带有 relu 激活的 Dense 层堆叠,可以解决很多种问题(包括情感分类),你可能会经 常用到这种模型。对于二分类问题(两个输出类别),网络的最后一层应该是只有一个单元并使用 sigmoid 激活的 Dense 层,网络输出应该是 0~1 范围内的标量,表示概
转载
2024-04-18 07:07:20
49阅读