EMT-LTR--学习任务间关系的多目标多任务优化
EMT-LTR–学习任务间关系的多目标多任务优化
title: Learning Task Relationships in Evolutionary Multitasking for Multiobjective Continuous Optimization
author: Zefeng Chen, Yuren Zhou, Xiaoyu He, and Jun Zhang.
journal: IEEE TRANSACTIONS ON CYBERNETICS (TCYB)
DOI:10.1109/TCYB.2020.3029176
code: GitHub - youle921/MultiTask
1.主要贡献:
1)提出了一种学习任务间关系的多目标多任务优化算法(EMT-LTR);
2)采用领域自适应技术将每个任务的决策空间视为一个流形,并将不同任务的所有决策空间联合建模为一个联合流形。
3)将联合流形投影到隐层空间,同时保留所有任务的必要特征和每个流形的拓扑结构。
4)任务关系表示为由多个映射函数组成的联合映射矩阵,学习到的任务关系用于进化过程中不同决策空间之间的信息传递。
2.问题提出:
1)在MTO领域,利用任务间关系的研究很少。
2)当任务数量特别多时,现有的研究通过学习任意两个任务间的映射关系的方式会很复杂。
因此,如何联合建模所有任务之间的关系(而不仅仅是两个任务之间的关系)并有效地利用这些关系,是文章的研究目标。
3.EMT-LTR:
3.1 算法框架
1)对于给定的 K K K个任务 T 1 , T 2 , . . . , T K T_1,T_2,...,T_K T1,T2,...,TK,设置采样集 S 1 , S 2 , . . . , S K S_1,S_2,...,S_K S1,S2,...,SK
2)对这些采样集进行LTR,得到联合映射矩阵 M M M(不同任务间关系),它包含K个映射函数和一个隐层空间。
3)接下来EMT-LTR的步骤跟MO-MFEA相同,不同的是MOMFEA是发生在统一搜索空间中,而EMT-LTR则是隐层空间。
注意:在每一代中,从采样集中学习到的任务关系被用于子代产生和评估阶段,使用下一代种群的个体更新采样集。知识迁移是通过将来自其他任务的精英个体注入到当前任务或交配。


3.2 学习任务间关系(LTR)
LTR的总体想法:使用 K K K个采样集 S 1 , S 2 , . . . , S K S_1,S_2,...,S_K S1,S2,...,SK来学习 K K K个优化任务 T 1 , T 2 , . . . , T K T_1,T_2,...,T_K T1,T2,...,TK间的关系。先根据Pareto支配关系与不同目标函数之和两个准则将每个采样集 S k , k = 1 , 2 , . . . , K S_k,k=1,2,...,K Sk,k=1,2,...,K都分成如下四类(此处的分类方式并不唯一)。第一类:前50%非支配解;第二类:后50%非支配解;第三类:前50%支配解;第四类:后50%支配解。
为了更真实地反映这些任务之间地关系,所构造地映射函数应该满足如下几个重要地属性:1)同一类样本点映射到隐层空间的相似位置;2)不同类样本点映射到隐层空间的不同位置且容易区分;3)每个样本集的拓扑结构也需要保留在隐层空间中。
文章使用拉普拉斯矩阵来表示每一个流形(公式3和6),并以此来反映属性1和2;对于属性3,则使用了降维后的联合流形(公式11);并设计了一个包含三个子函数的损失函数。具体细节请查阅原文,LTR的算法伪代码如下所示。

3.3 知识迁移
1)任务间的表示转换:
如下图所示,假设 Ω a , Ω b \Omega_a,\Omega_b Ωa,Ωb是任务 T a , T b T_a,T_b Ta,Tb的决策空间,通过LTR构建映射函数 M a , M b M_a,M_b Ma,Mb。然后,从决策空间到隐层空间的映射可以通过如下规则执行:
X i ∈ Ω a X^i\in \Omega_a Xi∈Ωa在隐层空间的表示为 M a T X i M^T_aX^i MaTXi, X j ∈ Ω b X^j\in \Omega_b Xj∈Ωb在隐层空间的表示为 M b T X j M^T_bX^j MbTXj.
从隐层空间到决策空间的映射可以通过如下规则执行:
X i ∈ Ω a X^i\in \Omega_a Xi∈Ωa在隐层空间的表示为 ( M a M b + ) T X i {(M_aM_b^+)}^TX^i (MaMb+)TXi, X j ∈ Ω b X^j\in \Omega_b Xj∈Ωb在隐层空间的表示为 ( M b M a + ) T X j {(M_bM_a^+)}^TX^j (MbMa+)TXj.

2)任务间知识迁移:首先,从 T a T_a Ta的当前种群中选择一个非支配个体(位于 Ω a \Omega_a Ωa中);然后,通过上述的任务间转换将这个个体转换到 Ω b \Omega_b Ωb中。
注意:从任务 T a T_a Ta中得到的这个转换个体可以注入到任务 T b T_b Tb中,也可以与 T b T_b Tb中的个体进行交配。
3.4 采样集更新
1)预设定一个更新周期 u p up up来表示采样集更新的频率。
2)当更新周期满足时,将任务 T k T_k Tk中通过环境选择保存到下一代种群的个体放入采样集 S k S_k Sk中。如果这些个体不足以填满 S k S_k Sk,则从之前的采样集 S k S_k Sk中随机选择个体补充到 S k S_k Sk中;如果这些个体数目超过了 S k S_k Sk,则随机删除某些个体直到 S k S_k Sk的大小为 S N k SN_k SNk.
4.思考
1)相比于其他直接使用领域自适应的MTO算法,EMT-LTR中提出了将所有任务的决策空间映射到隐层空间,并保留所有任务的必要特征和拓扑结构。假设我们可以通过某种方式找到相似任务,那么EMT-LTR则可以通过所建立的联合流形解决该迁移哪些个体的问题。
2)根据信息论的基础知识我们可以得到,领域自适应方式在映射的过程中会对原始任务造成一些信息损失,如何在保证映射的前提下,减少信息损失也是我们要考虑的一个问题,不仅是多任务优化领域,也包括迁移学习领域。而EMT-LTR则考虑了每个任务的必要特征和拓扑结构等信息,在一定程度上考虑到了映射后的信息损失。
相关文章:

EMT-LTR--学习任务间关系的多目标多任务优化
EMT-LTR–学习任务间关系的多目标多任务优化 title: Learning Task Relationships in Evolutionary Multitasking for Multiobjective Continuous Optimization author: Zefeng Chen, Yuren Zhou, Xiaoyu He, and Jun Zhang. journal: IEE…...

MySQL record 08 part
数据库连接池: Java DataBase Connectivity(Java语言连接数据库) 答: 使用连接池能解决此问题, 连接池,自动分配连接对象,并对闲置的连接进行回收。 常用的数据库连接池: 建立数…...

打造以太坊数据监控利器:InfluxDB与Grafana构建Geth可视化分析平台
前言 以太坊客户端收集大量数据,这些数据可以按时间顺序数据库的形式读取。为了简化监控,这些数据可以输入到数据可视化软件中。在此页面上,将配置 Geth 客户端以将数据推送到 InfluxDB 数据库,并使用 Grafana 来可视化数据。 一…...

对onlyoffice进行定制化开发
基于onlyoffice8.0源码,进行二次开发,可实现包括但不限于以下的功能 1、内容控件的插入 2、内容空间的批量替换 3、插入文本 4、插入图片 5、添加,去除水印 6、修改同时在线人数限制 7、内容域的删除 8、页面UI的定制化 9、新增插件开发 10、…...

使用llama.cpp 在推理MiniCPM-1.2B模型
llama.cpp 是一个开源项目,它允许用户在C中实现与LLaMA(Large Language Model Meta AI)模型的交互。LLaMA模型是由Meta Platforms开发的一种大型语言模型,虽然llama.cpp本身并不包含LLaMA模型的训练代码或模型权重,但它…...

分布式环境中,接口超时重试带来的的幂等问题如何解决?
目录标题 幂等不能解决接口超时吗?幂等的重要性什么是幂等?为什么需要幂等?接口超时了,到底如何处理? 如何设计幂等?幂等设计的基本流程实现幂等的8种方案1.selectinsert主键/唯一索引冲突(常用)2.直接insert 主键…...

设计一个推荐系统:使用协同过滤算法
设计一个推荐系统:使用协同过滤算法 在当今数据驱动的时代,推荐系统已经成为了许多在线平台(如电商、社交媒体和流媒体服务)不可或缺的一部分。推荐系统通过分析用户的行为和偏好,向用户推荐可能感兴趣的内容或产品。本文将详细介绍如何设计一个基于协同过滤算法的推荐系…...

Linux 基本指令(二)
目录 1. more指令 2. less指令(重要) 3. head指令 4. tail指令 5. date指令 (1)可以通过选项来指定格式: 编辑 (2)在设定时间方面 (3)时间戳 6. cal指令 7. find指令 8. grep指令 9. alias指令 10. zip指令与unzip指令 (1). zip指令 (2). unzip指令…...

Facebook的用户隐私保护:从争议到革新
Facebook早期的数据收集方式引发了隐私担忧。平台的快速增长和用户数据的大规模收集使得隐私问题逐渐显现。尤其是在2018年,剑桥分析事件暴露了数千万用户数据被不当使用的问题。这一事件揭示了Facebook在数据保护方面的严重漏洞,引发了公众对隐私保护的…...

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23
计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23 本期,我们对大语言模型在表情推荐, 软件安全和 自动化软件漏洞检测等方面如何应用,提供几篇最新的参考文章。 1 Semantics Preserving Emoji Recommendation with Large Language Mod…...

C++(学习)2024.9.20
目录 C面向对象的基础知识 this指针 概念 功能 1.类内调用成员 2.区分重名的成员变量和局部变量 3. 链式调用 static关键字 1.静态局部变量 2.静态成员变量 3.静态成员函数 4.单例设计模式 const关键字 1.const修饰成员函数 2.const修饰对象 3.const修饰成员变量…...

让AI激发创作力:OpenAI分享5位专业作家利用ChatGPT写作的案例技巧
大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,专注于分享AI全维度知识,包括但不限于AI科普,AI工…...

UEFI EDK2框架学习 (一)
01 Shell界面打印 执行qemu指令后 qemu-system-x86_64 -drive ifpflash,formatraw,fileOVMF.fd -nographic -net none出现shell界面 02 在UEFI shell中创建APP 创建SimplestApp文件夹以及SimplestApp.c、SimplestApp.inf cd edk2 mkdir SimplestAppuuidgen // generate …...

基于 BERT 的自定义中文命名实体识别实现
基于 BERT 的自定义中文命名实体识别实现 在自然语言处理中,命名实体识别(Named Entity Recognition,NER)是一项重要的任务,旨在识别文本中的特定实体,如人名、地名、组织机构名等。本文将介绍如何使用 BERT 模型实现自定义中文命名实体识别,并提供详细的代码分析和解读…...

中秋节特别游戏:给玉兔投喂月饼
🖼️ 效果展示 📜 游戏背景 在中秋这个充满诗意的节日里,玉兔因为贪玩被赶下人间。在这个温柔的夜晚,我们希望通过一个小游戏,让玉兔感受到人间的温暖和关怀。🐰🌙 🎮 游戏设计 人…...

python pdf转word或excel
python pdf转word或excel 直接上源码 main import gradio as gr import pdf2docx as p2d import Pdf2Excel as p2e import utils.id.IdUtil as idUtildef convert_pdf_to(pdf_file, pdf_pwd, pdf_to_type):if pdf_to_type "docx":# Convert PDF to DOCXcv p2d.C…...

GNU链接器(LD):位置计数器(.)功能及实例解析
0 参考资料 GNU-LD-v2.30-中文手册.pdf GNU linker.pdf1 前言 一个完整的编译工具链应该包含以下4个部分: (1)编译器 (2)汇编器 (3)链接器 (4)lib库 在GNU工具链中&…...

学习记录:js算法(四十三):翻转二叉树
文章目录 翻转二叉树我的思路网上思路递归栈 总结 翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点 图一: 图二: 示例 1:(如图一) 输入:root [4,2,7,1…...

关于 SQL 的 JOIN 操作
关于 SQL 的 JOIN 操作 在关系型数据库中,数据通常分布在多个表中。为了进行有效的数据检索,我们需要从不同的表中组合数据,这时就需要使用 JOIN 操作。本文将深入探讨 SQL 中不同类型的 JOIN 及其用法,以帮助你在数据库查询中更…...

聊聊AUTOSAR:基于Vector MICROSAR的TC8测试开发方案
技术背景 车载以太网技术作为汽车智能化和网联化的重要组成部分,正逐步成为现代汽车网络架构的核心,已广泛应用于汽车诊断(如OBD)、ECU软件更新、智能座舱系统、高清摄像头环视泊车系统等多个领域。 在这个过程中,ET…...

ES6中迭代器与生成器知识浅析
ES5及以下版本对JS几种集合,要存取数据一般需要用循环语句来遍历,就要初始化一个或多个变量来记录每一次循环在数据集合中的位置或数据值。这里容易出现超出边界问题,造成程序出错。另外,对于多次循环也需要跟踪理清各个变量关系及…...

unix中的vfork函数
一、前言 本文介绍unix中的vfork函数,vfork函数功能和fork函数类似,也是用于创建新的进程,只不过调用vfork函数创建的子进程将共享父进程的进程空间,且只有当子进程调用exec()或者exit()函数后,父进程才会继续运行。 …...

Android 用线程池实现一个简单的任务队列(Kotlin)
关于线程池,Kotlin和java的使用方式一样 在Android中,很多人喜欢用Handler的postDelayed() 去实现延时任务. 要使用postDelayed(),去实现延时任务队列,就不可避免要使用递归. 但是这样做,代码的简洁性,和书写的简易,就远不如使用线程池. 使用线程池的简单程度: private val…...

遨游信息技术的浩瀚宇宙:探索MySQL的深邃奥秘
遨游信息技术的浩瀚宇宙:探索MySQL的深邃奥秘 在信息技术的浩瀚宇宙中,MySQL犹如一颗璀璨的星辰,以其稳定、高效、灵活的特性,照亮了无数开发者与数据管理者的前行之路。作为关系型数据库管理系统的佼佼者,MySQL不仅承…...

【Bug解决】Nacos启动成功,但却无法访问(提示:无法访问此网站,192.168.10.88的响应时间过长)
项目场景: 在虚拟机上通过Docker创建Nacos容器,已经创建成功,查看Nacos启动日志也是成功。但通过端口号加8848/nacos(如:http://IP:8848/nacos)无法访问到Nacos管理页面。 愿意分析一: 先检查好…...

【AI创作组】工程方向的硕士研究生学习Matlab的路径
1. MATLAB软件概述 1.1 MATLAB发展历程 MATLAB自20世纪70年代诞生以来,已经经历了多次重要的版本更新和功能扩展。 初始版本:MATLAB的前身只是一个简单的交互式矩阵计算器,由Cleve B. Moler博士在1970年代初期开发,目的是为了方便学生和研究人员使用线性代数软件包LINPAC…...

Mac使用Nginx设置代理,并禁用自带Apache
Mac自带Apache服务,并占用80端口,如果需要使用Nginx,需要禁用Apache并自己安装Nginx 一、禁用自带Apache 1.关闭Apache sudo apachectl -k stop 如果出现如下报错:httpd: Could not reliably determine the server’s fully q…...

AlmaLinux 安裝JDK8
在 AlmaLinux 上安装 JDK 8 可以通过包管理器 dnf 来完成。AlmaLinux 是基于 RHEL 的一个开源发行版,因此其包管理系统和 RHEL 类似。以下是详细的步骤来安装 OpenJDK 8 1. 更新系统包列表 sudo dnf update -y 2. 安装 OpenJDK 8 使用 dnf 安装 OpenJDK 8。你可…...

Set 和 Map 的模拟实现
1、引言 在数据结构与算法的学习与实践中,关联容器(associative containers)是不可忽视的重要工具。作为高效管理数据的一类容器,C 标准库中的 set 和 map 在现代软件开发中扮演着关键角色。这两个容器通过平衡二叉搜索树&#x…...

深度学习自编码器 - 预测稀疏分解(PSD)篇
序言 在数据科学与机器学习的广阔领域中,深度学习作为一股不可忽视的力量,正引领着技术革新的浪潮。其中,自编码器( Autoencoder \text{Autoencoder} Autoencoder)作为一种特殊的神经网络结构,以其独特的自…...