NANA's blog

Thinking will not overcome fear but action will.

支持向量机—SVM细节解读

一文读懂SVM

SVM Support Vector Machine 前言 在深度学习变得火热之前,SVM是最受欢迎的模型,因为SVM有充分的数学原理支撑,并且可得到全局最优解 (使用梯度下降的线性模型只能得到局部最优解) ,一般用于处理二分类任务,SVM是定义在特征空间上的间隔最大的线性分类器,学习策略就是使间隔最大化。 1 导读 本文是博主看过大量资料之后对SVM做的总结,从初学者的角度、以...

基于多模态数据的情感分析

一种融合多模态数据的模型介绍

前言 信息的来源与形态具有多样性,每种形态的数据都称为一种模态。就像人可以通过听觉、视觉、触觉来感知语音、图像、文本等多模态信息。深度学习针对这几种模态的信息产生了几个分支:自然语言处理、计算机视觉、语音识别等,采用不同特点的模型处理不同模态的信息。 多模态机器学习旨在让机器能够处理和理解多模态信息的能力,也就是同时利用文本、图像、语音等信息以及它们之间的交互,而不是只利用一种信息去做下游...

如何处理类别不平衡的数据集?

介绍几种经典且实用的不平衡数据集处理方法

1 问题定义 这是典型的数据类型不平衡问题。比如对于一个二分类任务,训练集中类别为0的负样本占样本总数的90%,而正样本只占10%。那么这样的训练集有什么弊端呢? 如果类别不平衡的样本直接丢给模型学习,那么很显然模型会在负样本上的学习效果更好,因为模型‘看到’的负样本更多。举个栗子,就像你如果花9天时间去学习数学,花一天时间去学习语文,不出意外你会在数学考试中表现更好。 那么对于类别不...

优化算法之梯度下降算法整理

常用梯度下降算法对比

1 介绍 梯度下降 (Gradient Descent) 是一种经典的求极小值的算法,它的主要目的是通过迭代,使得模型参数沿负梯度不断的更新,目标函数逐渐收敛至局部极小值。 梯度下降是机器学习领域用途最广的优化算法,其分类也有多种,了解每种算法的原理是深度学习调参师的必备技能,也是面试中的高频问题,下面将根据算法的发展一一进行介绍。 2 优化方法 2.1 GD GD是最为传统的梯度下降算法,...

《机器学习》之朴素贝叶斯原理及代码解析

朴素贝叶斯原理浅析及代码实现

1 介绍 朴素贝叶斯 (Naive Bayes) 是贝叶斯分类算法中最简单的一个,一般用于处理二分类或多分类任务。该算法围绕着一个核心进行展开:贝叶斯定理。本文会从易于理解的角度对朴素贝叶斯的原理进行介绍,然后是代码实现,以加深对算法的理解。 2 原理 2.1 贝叶斯定理 首先看一下算法的核心,贝叶斯定理。 定理由来: 对于事件A与事件B, 有条件概率公式: 因为 P(AB) = P(BA)...

《机器学习》之 Kmeans聚类原理及代码

Kmeans原理浅析及代码实现

1 介绍 聚类算法是机器学习中经典的无监督学习算法,聚类算法有多种:Kmeans、Kmedians、Mean-shift、DBSCAN、层次聚类、EM等。 本文只介绍Kmeans原理及代码,之后会陆续更新其他聚类算法的文章。 2 原理 Kmeans聚类原理比较简单,在一些简单的聚类任务中也能达到不错的效果。 算法步骤: 1 随机初始化几个聚类质心点,聚类中心的个数需自己估计; 2 计算每个...

《机器学习》之一文读懂神经网络的原理及实现

神经网络原理浅析及代码实现

1 介绍 本文内容主要包含神经网络(NN)的原理以及代码实现。我看了很多神经网络的实现方法,但全部都是结构固定,扩展性差。本文将实现一种可以热拔插的代码来实现神经网络,无需修改代码,只需修改参数即可搭建不同结构的神经网络。 2 原理及代码 看了很多文章,博主觉得讲原理时配上代码,食用更佳。 2.1 正向传播 正向传播很简单,不在详细介绍,正向传播的公式如下: 上式是三层结构的一个前向传播公...

《机器学习》之深入浅出决策树(原理+代码)

经典决策树算法的对比及代码实战

1 介绍 决策树(Decision Tree)是机器学习中比较经典的算法之一,也属于有监督学习中的一员。与线性模型(逻辑回归、神经网络等)不同的是,它的学习过程不是为每个特征学习一个权重,而是根据某种决策不断的对数据集进行分裂,使得到的子数据集上的标签越来越纯净,最终得到的模型就是一个树形结构,故其名曰决策树。 2 原理 决策树算法的效果好,可用于分类,也可用于回归 (比如CART树) 。决...

《机器学习》之 KNN近邻算法原理及代码

KNN原理浅析及代码实战

1 介绍 KNN (K Nearest Neighbors) 是经典的机器学习算法之一,可用于分类及回归任务。跟逻辑回归一样,属于有监督学习。不同点是,KNN不是学习相应的权重,而是通过一些统计方法得到预测结果,原理简单,接下来看一下详细介绍。 2 原理 先看个栗子 如果有一群人,身高及性别已知,让你根据身高来预测另一批人的性别。你会怎么做? KNN的做法是,选出与预测目标身高最相似的k个...

《机器学习》之逻辑回归原理及代码

逻辑回归原理浅析及代码实战

1 介绍 线性回归与逻辑回归是机器学习中必须要掌握的算法,接下来我会用简洁的语言介绍一下算法的原理。然后是逻辑回归的代码实现,代码中加入了充分的注释以易理解。 2 原理 2.1 线性回归 线性回归的损失函数如上所示,是预测值与真实值的均方误差,越小越好。(为什么用该式作为损失函数?直观理解,该式子表达的是预测值与真实值总体的差异。也可从概率的角度解释,从极大似然估计的最大化目标,推导得到...