SS-ELM-AE与S2-BLS相关论文阅读记录
Broad learning system for semi-supervised learning
摘要:本文认为,原始BLS采用的稀疏自编码器来生成特征节点是一种无监督学习方法,这意味着忽略了标注数据的一些信息,并且难以保证同类样本之间的相似性和相邻性,同时SS-BLS和BLS都是构造线性模型,当不同类的样本分布存在重叠时,难以取得良好的分类效果。因此本文提出了一种新的半监督BLS——S2-BLS。
SS-ELM-AE
本文认为,SS-BLS或者是SS-ELM在引入非监督信息,即流形化的时候,考虑到选取k近邻点的情况,但是这种方法可能存在的缺点就是如果大多数标注样本它们所选择的k个近邻点都是标注样本,然后大多数无标注样本所选择的k个近邻点都是无标注样本,那么就没有充分利用到标注样本和未标注样本之间的关系。因此将SS-ELM-AE的目标函数定义为:
LSS−ELM−AE=12∥HW−X∥F2+C2∥W∥F2+λ2(GLL+GLU)L_{SS-ELM-AE}=\frac{1}{2}\Vert HW-X\Vert^2_F+\frac{C}{2}\Vert W\Vert^2_F+\frac{\lambda}{2}(G_{LL}+G_{LU}) LSS−ELM−AE=21∥HW−X∥F2+2C∥W∥F2+2λ(GLL+GLU)
其中X代表所有样本。而GLL、GLUG_{LL}、G_{LU}GLL、GLU分别代表标注样本内部之间的信息以及标注样本和无标注样本之间的信息。
对于标注样本,其相似度矩阵定义为:
SijL={1yi,yj∈t0otherwiseS^L_{ij}=\begin{cases}1\quad y_i,y_j \in t\\0\quad otherwise\end{cases} SijL={1yi,yj∈t0otherwise
就是属于同类的相似度为1,否则为0。因此GLLG_{LL}GLL表示为:
GLL=12∑i=1l∑j=1lSijL∥g(xi)−g(xj)∥F2G_{LL}=\frac{1}{2}\sum_{i=1}^l\sum_{j=1}^lS^L_{ij}\Vert g(x_i)-g(x_j)\Vert ^2_F GLL=21i=1∑lj=1∑lSijL∥g(xi)−g(xj)∥F2
其中g(x)g(x)g(x)代表模型对样本的输出。
而对于未标注样本,其相似性矩阵定义为:
SijLU={1xi∈knn(xj),j∗orxj∈knn(xi),i∗0otherwiseS^{LU}_{ij}=\begin{cases}1\quad x_i\in knn(x_j),j^* ~~or ~~x_j\in knn(x_i),i^*\\0\quad otherwise\end{cases} SijLU={1xi∈knn(xj),j∗ or xj∈knn(xi),i∗0otherwise
其中j∗j^*j∗表示如果xjx_jxj是标注样本,那么其k个近邻点要从未标注样本之中选择。因此
GLU=12∑i=1l+u∑j=1l+uSijLU∥g(xi)−g(xj)∥F2G_{LU}=\frac{1}{2}\sum_{i=1}^{l+u}\sum_{j=1}^{l+u}S^{LU}_{ij}\Vert g(x_i)-g(x_j)\Vert ^2_F GLU=21i=1∑l+uj=1∑l+uSijLU∥g(xi)−g(xj)∥F2
那么可以将该矩阵写为:
SLU=(0LLSLUSULSUU)S_{LU}=\left(\begin{matrix}0_{LL}\quad S_{LU}\\S_{UL }\quad S_{UU}\end{matrix}\right) SLU=(0LLSLUSULSUU)
斜对角线两个矩阵应该是转置关系。SUUS_{UU}SUU就是简单的knn来计算。因此有:
其中G=[g(x1);...;g(xl+u)]G=[g(x_1);...;g(x_{l+u})]G=[g(x1);...;g(xl+u)]。L定义为:
L=D−SD=diag(d1,...,dl+u),di=∑i=1l+uSijS=(SLSLUSULSUU)L=D-S\\D=diag(d_1,...,d_{l+u}),d_i=\sum_{i=1}^{l+u}S_{ij}\\S=\left(\begin{matrix}S^L\quad S_{LU}\\S_{UL}\quad S_{UU}\end{matrix}\right) L=D−SD=diag(d1,...,dl+u),di=i=1∑l+uSijS=(SLSLUSULSUU)
因此可以推导出:
LSS−ELM−AE=12∥HW−X∥F2+C2∥W∥F2+λ2Tr(WTHTLHW)L_{SS-ELM-AE}=\frac{1}{2}\Vert HW-X\Vert^2_F+\frac{C}{2}\Vert W\Vert^2_F+\frac{\lambda}{2}Tr(W^TH^TLHW) LSS−ELM−AE=21∥HW−X∥F2+2C∥W∥F2+2λTr(WTHTLHW)
当输出节点输出多于隐藏层节点数目,可解出:
否则:
注意这里的损失函数是重构误差,因此可以看成是一个结合ELM思想的AE,是用来求解输入到隐藏层的权重的,而不是像ELM最终求解隐藏层到输出的权重的。
因此求解输入到特征节点映射的权重过程为:
S2-BLS
该算法就是对原有SS-BLS算法的改良,其利用了同样样本间的相似性和近邻点间的相似性信息来获取映射后的特征,同时考虑了类内紧性和类间可分性,获得更好的判别模型。具体来说:
其特征节点的定义比较特殊,用到了非线性激活函数,即:
Zi=ϕi(XWeiT),i=1,2,...,nZ_i=\phi_{i}(XW^T_{ei}),i=1,2,...,n Zi=ϕi(XWeiT),i=1,2,...,n
其中权重WeiW_{ei}Wei正是通过SS-ELM-AE来获得的,而ϕ\phiϕ是非线性函数。然后狗仔增强节点的过程与普通BLS相同,因此得到P=[Zn∣Hm]P=[Z^n\mid H^m]P=[Zn∣Hm]
那么在计算输出权重时,其考虑了类内紧性和类间可分性,即:
因此构造的损失项为:
其中F=[F1;...;Fl+u]F=[F_1;...;F_{l+u}]F=[F1;...;Fl+u]为对每个样本模型的预测向量,Lintra=Dintra−Sintra=diag(d1intra,...,dl+uintra)L_{intra}=D^{intra}-S_{intra}=diag(d^{intra}_1,...,d^{intra}_{l+u})Lintra=Dintra−Sintra=diag(d1intra,...,dl+uintra),diintra=∑i=1l+uSintraijd^{intra}_i=\sum_{i=1}^{l+u}S^{ij}_{intra}diintra=∑i=1l+uSintraij。
其中LinterL_{inter}Linter也类似。
那么结合这两个L矩阵,可以用参数进行衡量。因此目标函数为:
其中
U=(Ul×l,000)Ul×l=diag(1,...,1)F=Pβ,β为连接权重L~=ηLintra−(1−η)LinterU=\left(\begin{matrix}U_{l\times l},\quad 0\\~~~0\quad ~~~~0\end{matrix}\right)\\U_{l\times l}=diag(1,...,1)\\F=P\beta, ~~~~\beta 为连接权重\\\tilde{L}=\eta L_{intra}-(1-\eta)L_{inter} U=(Ul×l,0 0 0)Ul×l=diag(1,...,1)F=Pβ, β为连接权重L~=ηLintra−(1−η)Linter
当样本数目多于隐藏层节点数目,可解出
否则:
其示意图大致如下所示:
伪代码如下所示:
总结
这篇文章从两部分作为创新点,一是原先BLS的AE寻求特征节点映射的部分,这部分它结合了ELM的思想来求解权重向量,第二部分是在求解链接输出的权重时,加入了类内和类间样本之间的关系矩阵。
相关文章:

SS-ELM-AE与S2-BLS相关论文阅读记录
Broad learning system for semi-supervised learning 摘要:本文认为,原始BLS采用的稀疏自编码器来生成特征节点是一种无监督学习方法,这意味着忽略了标注数据的一些信息,并且难以保证同类样本之间的相似性和相邻性,同…...

ESP32设备驱动-MAX6675冷端补偿K热电偶数字转换器
MAX6675冷端补偿K热电偶数字转换器 1、MAX6675介绍 MAX6675执行冷端补偿并将来自K型热电偶的信号数字化。 数据以 12 位分辨率、SPI™ 兼容的只读格式输出。 该转换器可将温度解析为 0.25C,读数高达 +1024C,并且在 0C 至 +700C 的温度范围内具有 8 LSB 的热电偶精度。 MAX…...

Python基础知识汇总(字符串四)
目录 字母的大小写转换 lower()方法 upper()方法 删除字符串中的空格和特殊字符 strip()方法...

C语言学习笔记——指针(初阶)
前言 指针可以说是C语言基础语法中最难的理解的知识之一,很多新手(包括我)刚接触指针时都觉得很难。在我之前发布的笔记中都穿插运用了指针,但是我一直没有专门出一期指针的笔记,这是因为我确实还有些细节至今还不太清…...

阿赵的MaxScript学习笔记分享十二《获取和导出各种数据》
大家好,我是阿赵,周日的早上继续分享MaxScript学习笔记,这是第十二篇,获取和导出各种数据 1、导出数据的目的 使用3DsMax建立3D模型后,很多时候需要输出模型到别的引擎去使用,常用的格式有Obj、FBX、SLT等…...

react-draggable实现拖拽详解
react-draggable属性常用属性属性列表事件列表举例首先安装 react-draggable实现移动希望小编写的能够帮助到你😘属性 常用属性 属性默认值介绍axisxhandle拖动的方向,可选值 x ,y,bothhandle无指定拖动handle的classposition无handle的位置࿰…...

01.进程和线程的区别
进程和线程的区别进程和线程是计算机中的两个核心概念,它们都是用来实现并发执行的方式,但是它们在实现并发的方式和资源管理方面有一些重要的区别。进程是一个程序的运行实例。每个进程都有自己的内存空间、代码、数据和系统资源(如文件描述…...

逻辑优化-rewrite
简介 逻辑综合中的rewrite算法是一种常见的优化算法,其主要作用是通过对逻辑电路的布尔函数进行等效变换,从而达到优化电路面积、时序和功耗等目的。本文将对rewrite算法进行详细介绍,并附带Verilog代码示例。 一、算法原理 rewrite算法的…...

文件传输与聊天系统设计
技术:Java等摘要:本文介绍了一种基于TCP/IP协议使用Socket技术实现的聊天室系统,包括私聊功能和文件传输功能,对系统的主要模块进行了分析,并对系统实现过程中遇到的关键性技术进行了阐述,最后对系统进行了…...

蓝桥杯第十四届校内赛(第三期) C/C++ B组
一、填空题 (一)最小的十六进制 问题描述 请找到一个大于 2022 的最小数,这个数转换成十六进制之后,所有的数位(不含前导 0)都为字母(A 到 F)。 请将这个数的十进制形式作…...

有关平方或高次方的公式整理一元高次方程的求解
Part.I Introduction 这篇博文记录一下数学中常用的有关平方或高次方的一些公式。 Chap.I 一些结论 下面一部分汇总了一些重要的结论 完全平方公式:(ab)2a22abb2(ab)^2a^22abb^2(ab)2a22abb2平方差公式:a2−b2(ab)(a−b)a^2-b^2(ab)(a-b)a2−b2(ab)(…...

Java笔记3
ArrayListArrayList<String> list new Arraylist<>();<>是泛型表示存放的数据类型,注意不能是基本数据类型;增删改查增:add 返回值为true删:remove 1.直接删元素2.根据索引删元素改:set(…...

Leetcode.2202 K 次操作后最大化顶端元素
题目链接 Leetcode.2202 K 次操作后最大化顶端元素 Rating : 1717 题目描述 给你一个下标从 0开始的整数数组 nums,它表示一个 栈 ,其中 nums[0]是栈顶的元素。 每一次操作中,你可以执行以下操作 之一 : 如果栈非空…...

JAVA知识点全面总结3:String类的学习
三.String类学习 1.String,StringBuffer,StringBuilder的区别? 2.字符串拼接用加号的原理 ? 3.字符串常量池如何理解? 4.String的intern方法理解? 5.String的equals方法和compareTo方法的使用…...

Eureka注册中心和Nacos注册中心详解以及Nacos与Eureka有什么区别?
目录:前言Eureka注册中心Nacos注册中心Nacos与Eureka有什么区别?前言提供接口给其它微服务调用的微服务叫做服务提供者,而调用其它微服务提供的接口的微服务则是服务消费者。如果服务A调用了服务B,而服务B又调用了服务C࿰…...

Web3D发展趋势以及Web3D应用场景
1,Web3D发展趋势随着互联网的快速发展,Web3D技术也日渐成熟,未来发展趋势也值得关注。以下是Web3D未来发展趋势的七个方面:可视化和可交互性的增强:Web3D可以为三维数据提供可视化和可交互性的增强,将极大地…...

2023-3-4 刷题情况
按位与为零的三元组 题目描述 给你一个整数数组 nums ,返回其中 按位与三元组 的数目。 按位与三元组 是由下标 (i, j, k) 组成的三元组,并满足下述全部条件: 0 < i < nums.length 0 < j < nums.length 0 < k < nums.l…...

前端面试总结
1.引言 最近参加了大量的招聘会,投递了大量的简历,整整体会了从“随便找个厂上一下”——“还是的找个大厂”——“没人要”——“急了急了,海投一波”——“工资有点尬”——“海投中…”。简单说一下自己的一些感受吧,现在的前端属实有点尴…...

Geospatial Data Science (6): Spatial clustering
Geospatial Data Science (6): Spatial clustering 1.Clustering, spatial clustering, and geodemographics 本节涉及空间观测的统计聚类。许多问题和主题都是复杂的现象,涉及多个维度,难以归纳为一个单一的变量。在统计学术语中,我们把这一类问题称为多变量,而不是在…...

蚁群算法优化问题
%%%%%%%%%%%%蚁群算法解决 TSP 问题%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%初始化%%%%%%%%%%%%%%%%%%% clear all; %清除所有变量 close all; %清图 clc; %清屏 m 50; %蚂蚁个数 Alpha 1; %信息素重要程度参数 Beta 5; %启发式因子重要程度参数 Rho 0.1; %信息素蒸发系数 G 20…...

为啥一个 main 方法就能启动项目
在 Spring Boot 出现之前,我们要运行一个 Java Web 应用,首先需要有一个 Web 容器(例如 Tomcat 或 Jetty),然后将我们的 Web 应用打包后放到容器的相应目录下,最后再启动容器。 在 IDE 中也需要对 Web 容器…...

洛谷:P1554 梦中的统计 JAVA
思路:定义一个长度为10的数组,数组下标代表数组元素的数字,比如arr[0]代表数字0.用一个for循环,对每个数先取余再取整,知道取整得到的数为0,说明该数字已经被拆解完了。今天又学了一个输入,原来…...

C++初学笔记整理
目录 1. C关键字 2. 命名空间 1)命名空间的引入和概述 2)命名空间的定义 3)std与命名空间的使用 4).相关特性 3. C输入&输出 4. 缺省参数 1 )缺省参数概念 2)使用及分类 a.全缺省 b.部分缺省 5. 函数…...

记录--在Vue3这样子写页面更快更高效
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 在开发管理后台过程中,一定会遇到不少了增删改查页面,而这些页面的逻辑大多都是相同的,如获取列表数据,分页,筛选功能这些基本功能。而…...

【程序设计与算法(三)】测验和作业题部分答案汇总(面向对象篇)
题目来源:程序设计与算法(三)测验和作业题汇总 文章目录001:简单的swap002:难一点的swap003:好怪异的返回值004:神秘的数组初始化005:编程填空:学生信息处理程序006:奇怪的类复制007:返回什么才好呢008:超简单的复数类009:哪来的输…...

LeetCode 349. 两个数组的交集和 692. 前K个高频单词
两个数组的交集 难度 简单 题目链接 这道题的难度不大,我们可以把数组里的数据存到set里面。这样就完成了排序和去重,然后我们再把一个set里面的数据和另外一个set数据进行比较。如果相同就插入到数组里。 代码如下: 但是这个算法的时间复…...

SpringCloud的五大组件功能
SpringCloud的五大组件 EurekaRibbonHystrixZuulConfig 一、Eureka 作用是实现服务治理,即服务注册与发现。 Eureka服务器相当于一个中介,负责管理、记录服务提供者的信息。服务调用者不需要自己寻找服务 ,而是把需求告诉Eureka &#x…...

剑指 Offer II 016. 不含重复字符的最长子字符串
题目链接 剑指 Offer II 016. 不含重复字符的最长子字符串 mid 题目描述 给定一个字符串 s,请你找出其中不含有重复字符的 最长连续子字符串 的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子字符串是 “abc”,所以其长度…...

HBase读取流程详解
读流程从头到尾可以分为如下4个步骤:Client-Server读取交互逻辑,Server端Scan框架体系,过滤淘汰不符合查询条件的HFile,从HFile中读取待查找Key。其中Client-Server交互逻辑主要介绍HBase客户端在整个scan请求的过程中是如何与服务…...

Redis学习(一):NoSQL概述
为什么要使用Nosql 现在是大数据时代,过大的数据一般的数据库无法进行分析处理了。 单机MySQL的年代 90年代,一个基本的网站访问量一般不会太大,单个数据库完全足够! 那个时候,更多的去使用静态网站,服务器…...