基于距离浓度的人工免疫算法(DCAIA)求函数最值(python实现)

免疫算法(Immune Algorithm)详解 关于免疫算法(IA),其功能与遗传算法、模拟退火等算法实现的功能是相同的,都是用来求最优解。例如求函数最值、旅行商问题等。从本质上说,免疫算法更像是遗传算法的一种延申。IA虽然其中借鉴了生物学(免疫学)的概念,但学习时需要注意,IA毕竟是一种算法,把算法中所有概念都与免疫学概念联系起来是容易难以理解算法的,甚至容易混淆。所以IA只是借鉴免疫学概念并受免疫过程的启发,最终其实还是需要回归到算法当中。 即便如此,兔兔在后面还是需要将算法与一些生物学概念联系,但是会辨别其中本质区别。而且学习时需要与遗传算法相结 阅读详情

基于距离浓度的人工免疫算法(DCAIA)求函数最值(python实现)

免疫算法是人工免疫系统形式中应用最广法的一个部分,是兴起于2012年左右的机器学习算法,大多数的免疫算法被用于实现全局优化问题,包括组合优化、函数优化、神经网络优化等。

一、免疫算法理论

免疫算法是模仿生物免疫机制,结合基因的进化机理,人工构造出的一种新型智能优化算法。采用群体搜索策略,通过迭代计算,最终以较大的概率得到问题的最优解。相比于其他算法,免疫算法利用自身产生多样性和维持机制的特点,保证了群体多样性,克服了‘早熟’问题,可以得到全局最优解。具有自适应性,随机性并行性,全局收敛性,种群多样性等特点。

二、基于距离浓度算法的免疫机理

免疫系统是高度进化的生物系统,它的功能是针对外来抗原的输入产生识别并消灭抗原的抗体,本文提出的算法(DCAIA),借鉴了如下生物免疫特性和机理:

(1)抗体对抗原的识别是基于抗原的表位与抗体的受体的受体之间的匹配,抗体与抗原的亲和度决定了两者的匹配程度。

(2)免疫系统中同一种抗体的浓度是受到限制的,当某种抗体数量增加,达到一定浓度时,系统要对其进行抑制,同样对浓度低的抗体要进行繁殖以保证其多样性。

(3)抗体在繁殖过程中会产生高频变异,即克隆变异。以便可以识别种类繁多的抗原。

(4)抗体在识别抗原过程中,可以产生记忆,使得该抗体更快地识别抗原。在识别过程中,通过克隆变异和学习记忆,提高抗体对抗原的匹配度,亲和度成熟。

三、免疫算法对应关系

抗原 优化问题

抗体 优化问题的可行解

亲和度 可行解的质量

细胞活化 免疫选择

细胞分化 个体克隆

亲和度成熟 变异

动态维持平衡 种群刷新

四、免疫算法算子

编码方式主要为实数编码和离散编码。本文章利用基于距离浓度的人工免疫算法求解函数最值,采用实数编码。

(1)亲和度评价算子

表征抗体与抗原的结合度。通常是一个函数 a f f ( x ) aff(x) aff(x),函数的输入为一个抗体(可行解)。

(2)抗体浓度评价算子

抗体浓度通常定义为:
d e n ( a b i ) = 1 N ∑ j = 1 N S ( a b i , a b j ) den(ab_i)=\frac{1}{N}\sum_{j=1}^{N}S(ab_i,ab_j) den(abi​)=N1​j=1∑N​S(abi​,abj​)
式中N为种群规模, S ( a b i , a b j ) S(ab_i,ab_j) S(abi​,abj​)表示抗体间相似度:

S ( a b i , a b j ) = { 1 , d i s ( a b i , a b j ) ≤ δ 0 , d i s ( a b i , a b j ) > δ 式 中 d i s ( ) 函 数 表 示 欧 氏 距 离 , δ 为 浓 度 阈 值 S(ab_i,ab_j)= \begin{cases} 1,dis(ab_i,ab_j)\leq \delta\\ 0, dis(ab_i,ab_j)> \delta \end{cases}\\ 式中dis()函数表示欧氏距离,\delta为浓度阈值 S(abi​,abj​)={1,dis(abi​,abj​)≤δ0,dis(abi​,abj​)>δ​式中dis()函数表示欧氏距离,δ为浓度阈值

(3)激励度计算算子

抗体鼓励度是对抗体质量的最终评价结果,通常亲和度大、浓度低的抗体会得到较大的鼓励度。

本文使用以下公式:
s i m ( a b i ) = α × a f f ( a b i ) − β × d e n ( a b i ) sim(ab_i)=\alpha \times aff(ab_i)-\beta \times den(ab_i) sim(abi​)=α×aff(abi​)−β×den(abi​)

(4)免疫选择算子

免疫选择算子根据抗体的激励度确定哪些抗体进入克隆选择操作。

(5)克隆算子

克隆算子将选中的抗体个体进行复制。

(6)变异算子

变异算子对克隆算子结果进行变异操作,以产生亲和度突变,实现局部搜索。变异算子在免疫算法中产生有潜力的新抗体,实现区域搜索的重要算子,对算法影响很大。本文采用以下公式:
T m ( a b i , j , m ) = { a b i , j , m + ( r a n d − 0.5 ) ∗ ε , r a n d < p m a b i , j , m , 其 他 ε 表 示 定 义 的 邻 域 范 围 , p m 为 变 异 概 率 T_m(ab_{i,j,m})= \begin{cases} ab_{i,j,m}+(rand-0.5)*\varepsilon , rand<p_m\\ ab_{i,j,m},其他 \end{cases}\\ \varepsilon 表示定义的邻域范围,p_m为变异概率 Tm​(abi,j,m​)={abi,j,m​+(rand−0.5)∗ε,rand<pm​abi,j,m​,其他​ε表示定义的邻域范围,pm​为变异概率

(7)克隆抑制算子

克隆抑制算子用于对经过变异后的克隆体再进行选择,抑制亲和度低的抗体。

五、python实例

例(1)

计算函数 f ( x ) = ∑ i = 1 n x i 2 ( − 20 ≤ x i ≤ 20 ) f(x)=\sum_{i=1}^nx_i^2(-20\leq x_i \leq 20) f(x)=i=1∑n​xi2​(−20≤xi​≤20)的最小值,其中个体x的维数n=10,这是一个简单的平方和函数,只有一个极小点x=(0,0,…,0),理论上最小值分f(0,0,…,0)=0。

#亲和度:与目标函数相关
def affinity(x):
    return np.sum(x**2)

#激励度:根据亲和度和浓度计算,影响变异
def motivation(x,num):
    ND = np.zeros((1,num)) #临时数组
    nd = np.zeros((1,num)) #浓度
    for i in range(num):
        for j in range(num):
            tmp = np.sqrt(np.sum((x[:,i]-x[:,j])**2))
            if(tmp > detas):
                ND[0,i] = 0
            else:
                ND[0,i] = 1                
        nd[0,i] = np.sum(ND,axis=1)/num
    ## 激励度
    MSLL = np.zeros((1,num))
    for i in range(num):
        tmp = affinity(x[:,i])
        MSLL[0,i] = tmp
    mtv = alphe * MSLL - beta * nd
    return mtv

#变异函数
def variation(x , gen):
    temp = num//2
    first_x = np.zeros((D,temp))
    for i in range(temp):
        tx=x[:,i].reshape((10,1))
        tx_rpt=np.tile(tx,10)
        randt=np.random.rand(1)
        #以pm为概率变异
        if randt > pm:
            for g in range(D):
                for h in range(D):
                    tx_rpt[g,h] = tx_rpt[g,h] + (np.random.rand(1) - 0.5) * (defalut / (gen+1))
        for j in range(D):
            for k in range(D):
                if (tx_rpt[j,k] > top) or (tx_rpt[j,k] < bottom):
                    tx_rpt[j,k] = np.random.rand(1) * (top - bottom) + bottom
        tx_rpt[:,0] = tx[:,0]
        mvt = motivation(tx_rpt,10)
        index = np.argsort(mvt).flatten()
        temp = tx_rpt[:,index]
        first_x[:,i] = temp[:,0]
    return first_x
import numpy as np
import matplotlib.pyplot as plt

D = 10 #维度
num = 100 #个体数量
top = 20 #取值上限
bottom = -20 #取值下限
alphe = 3 #激励度系数
beta = 1 #激励度系数
detas = 0.3 #浓度阈值
pm = 0.6   #变异几率
trace = [] #记录过程
defalut = top 
x = np.random.rand(D,num) * (top - bottom) + bottom  #10*100初始种群

gen = 1
iteration = 300 #最大迭代代数
while gen<iteration:
    
    mtv = motivation(x,num) 
    #按激励度排序
    index = np.argsort(mtv).flatten()
    sort_x = x[:,index]
    #变异
    sort_x[:,:50] = variation(sort_x[:,:50],gen)
    sort_x[:,50:] = np.random.rand(D,50) * (top - bottom) + bottom
    gen = gen+1
    print("\r%d/%d" % (gen,iteration),end="")
        
    x = sort_x
    #计算亲和度
    MSLL = np.zeros((1,num))
    for i in range(num):
        MSLL[0,i] = affinity(x[:,i])
    #按亲和度排序
    index = np.argsort(MSLL).flatten()
    x = x[:,index]
    #记录优化过程,此时第一个为做接近最值的结果
    trace.append(affinity(x[:,0]))
    
#作图
xx = range(gen-1)
plt.plot(xx , trace)
print(trace[-1])
plt.show()

例(2)

求函数 f ( x , y ) = 5 s i n ( x y ) + x 2 + y 2 f(x,y)=5sin(xy)+x^2+y^2 f(x,y)=5sin(xy)+x2+y2的最小值,其中x的范围是[-4,4],y的取值范围是[-4,4],这是一个有多个局部极值的函数。把上例的亲和度函数更改,参数略作修改即可,详细注释参考上面。

#亲和度:与目标函数相关
def affinity(x):
    y = x[1]
    x = x[0]
    res = 5 * np.sin( x*y ) + x*x + y*y
    return res

#激励度:根据亲和度和浓度计算,影响变异
def motivation(x,num):
    ND = np.zeros((1,num)) #临时
    nd = np.zeros((1,num)) #浓度
    for i in range(num):
        for j in range(num):
            tmp = np.sqrt(np.sum((x[:,i]-x[:,j])**2))
            if(tmp > detas):
                ND[0,i] = 0
            else:
                ND[0,i] = 1                
        nd[0,i] = np.sum(ND,axis=1)/num
    ## 激励度
    MSLL = np.zeros((1,num))
    for i in range(num):
        tmp = affinity(x[:,i])
        MSLL[0,i] = tmp
    mtv = alphe * MSLL - beta * nd
    return mtv
#变异
def variation(x , gen):
    temp = num//2
    first_x = np.zeros((D,temp))
    for i in range(temp):
        tx=x[:,i].reshape((D,1))
        tx_rpt=np.tile(tx,10)
        randt=np.random.rand(1)
        if randt > pm:
            for g in range(D):
                for h in range(D):
                    tx_rpt[g,h] = tx_rpt[g,h] + (np.random.rand(1) - 0.5) * (defalut / (gen+1))
        for j in range(D):
            for k in range(D):
                if (tx_rpt[j,k] > top) or (tx_rpt[j,k] < bottom):
                    tx_rpt[j,k] = np.random.rand(1) * (top - bottom) + bottom
        tx_rpt[:,0] = tx[:,0]
        mvt = motivation(tx_rpt,10)
        index = np.argsort(mvt).flatten()
        temp = tx_rpt[:,index]
        first_x[:,i] = temp[:,0]
    return first_x
import numpy as np
import matplotlib.pyplot as plt
D = 2 #维度
num = 100 #个体数量
top = 4
bottom = -4
alphe = 3
beta = 1
detas = 0.3 #浓度阈值
pm = 0.6   #变异几率
trace = [] 
defalut = top
x = np.random.rand(D,num) * (top - bottom) + bottom  #10*100

gen = 1
trace = []
iteration = 80
while gen<iteration:
    
    mtv = motivation(x,num) 
    #激励度排序
    index = np.argsort(mtv).flatten()
    sort_x = x[:,index]
    sort_x[:,:50] = variation(sort_x[:,:50],gen)

    sort_x[:,50:] = np.random.rand(D,50) * (top - bottom) + bottom
    gen = gen+1

    print("\r%d/%d" % (gen,iteration),end="")
    x = sort_x    
    MSLL = np.zeros((1,num))
    for i in range(num):
        MSLL[0,i] = affinity(x[:,i])
    index = np.argsort(MSLL).flatten()
    x = x[:,index]
    trace.append(affinity(x[:,0]))
    
xx = range(gen-1)
plt.plot(xx , trace)
print("\n最值:")
print(trace[-1])
plt.show()

参考:
[1].刘韬.《人工免疫系统及其数据挖掘应用研究》.中国矿业大学出版社.
[2].https://zhuanlan.zhihu.com/p/112727537

Python实现人工免疫系统算法 人工免疫系统算法(Artificial Immune System, AIS)是一种基于生物免疫系统的计算智能方法。它模拟了人类免疫系统的自适应性和学习能力,广泛应用于优化、分类、异常检测等领域。人工免疫系统算法是一类非常有潜力的智能优化算法,适合应用于优化、异常检测等场景。通过面向对象的Python实现,我们可以灵活定义和扩展人工免疫系统算法,以解决实际问题。随着人工智能和数据科学的发展,人工免疫系统算法将继续在不同领域中发挥其重要作用。 阅读详情

相关推荐

智能优化算法之免疫算法(IA)

这里写目录标题1. 免疫算法思想起源2. 算法原理3. 免疫算法算子3.1 算法算子3.1.1 亲和度评价算子3.1.2 抗体浓度评价算子:3.1.3 激励度计算算子3.1.4 免疫选择算子3.1.5 克隆算子3.1.6 变异算子3.1.7 实数编码变异算子3.1.8 离散编码变异算子3.1.9 克隆抑制算子3.1.10 种群刷新算子3.2 亲和度计算方法3.2.1 基于欧氏实数距离的抗体间亲和度计算方法3.2.2 基于海明距离的抗体-抗体亲和度计算方法4. 免疫算法种类和流程4.1 免疫算法种类4.1.1

捌椒的博客 1万+

人工免疫算法详解

人工免疫算法(Artificial Immune Algorithm,AIA)是一种基于生物免疫系统(BIS)的启发式优化算法,是对生物免疫算法的拓展和改进。在人工免疫算法中,抗体是一种可以识别和结合抗原的分子。在算法中,我们将优化问题中的可行解看作抗原,将算法中的搜索空间看作抗体空间。不过,无论是一元函数还是多维优化问题,我们都需要将可行解映射到抗体空间中,以便进行人工免疫算法的优化过程。与生物免疫算法不同的是,人工免疫算法采用了一些人工设计的策略,如变异、选择、克隆等策略,以提高算法的收敛速度和精度。

深度学习客 1631

智能优化算法——免疫算法求解选址问题(Python&Matlab实现)

技术停滞不前!**

2401_83817171的博客 1091

遗传算法和免疫算法结合用MTALB解决函数极值问题

摘要免疫算法是模仿生物免疫机制,结合基因的进化机理,人工构造出的一种新型智能优化算法,因而具有一般免疫系统的特征。免疫算法那具有自适应性、随机性、并行性、全局收敛性、种群多样性等特点。相比于其他算法免疫算法利用自身产生多样性和维持机制的特点,保证了种群的多样性,克服了一般寻优过程中不可避免的早熟问题,可以求得全局最优解。对免疫算法进行研究,以求函数的最小值的目的,在传统的免疫算法的基础上做出改进,结合遗传算法的交叉,根据抗体与抗原的亲和度和抗体的浓度进行选择操作,亲和度高且浓度小的抗体选择概率大,进行克隆、

weixin_52536680的博客 2216

人工免疫算法

用matlab编写的人工免疫算法 clc clear all close all tic; global n ww m=100;% m--抗体规模 n=22;% n--每个抗体二进制字符串长度 ww=1;%参数个数 mn=100;%从抗体集合里选择n个具有较高亲和度的最佳个体进行克隆操作 xmin=[0 0]; xmax=[9 9]; tnum=100;% tnum--迭代代数 pMutate=0.1;% pMutate--高频变异概率 cfactor=0.2;% cfactor--克隆(复制)因子 A=InitializeFun(m,n); %生成抗体集合A,抗体数目为m,每个抗体基因长度为n F='X+10*sin(X.*5)+7*cos(X.*4)'; %目标函数 %F='sin(10*X)' FM=[]; %存放各代最优值的集合 FMN=[]; %存放各代平均值的集合 t=0; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% while t<tnum t=t+1; X=DecodeFun(A(:,1:22),xmin,xmax); %将二进制数转换成十进制数 Fit=eval(F); %以X为自变量求函数值并存放到集合Fit中 if t==1 figure(1) fplot(F,[xmin(1),xmax(1)]); grid on hold on plot(X,Fit,'k*') title('抗体的初始位置分布图') xlabel('x') ylabel('f(x)') end if t==tnum figure(2) fplot(F,[xmin(1),xmax(1)]); grid on hold on plot(X,Fit,'r*') title('抗体的最终位置分布图') xlabel('x') ylabel('f(x)') end T=[]; %把零时存放抗体的集合清空 [FS,Affinity]=sort(Fit,'descend'); %把第t代的函数值Fit按从小到大的顺序排列并存放到FS中 XT=X(Affinity(end-mn+1:end)); %把第t代的函数值的坐标按从小到大的顺序排列并存放到XT中 FT=FS(end-mn+1:end); %从FS集合中取后mn个第t代的函数值按原顺序排列并存放到FT中 FM=[FM FT(end)]; %把第t代的最优函数值加到集合FM中 %克隆(复制)操作,选择mn个候选抗体进行克隆,克隆数与亲和度成正比,AAS是每个候选抗体克隆后在T中的开始坐标 [T,AAS]=ReproduceFun(mn,cfactor,m,Affinity,A,T); %高频变异操作,变异概率反比于抗体的亲和度 T=Hypermutation(T,n,pMutate,xmax,xmin); %把以前的抗体保存到临时克隆群体T里 AF1=fliplr(Affinity(end-mn+1:end)); %从大到小重新排列要克隆的mn个原始抗体 T(AAS,:)=A(AF1,:); %把以前的抗体保存到临时克隆群体T里%从临时抗体集合T中根据亲和度的值选择mn个(多峰函数的解决) X=DecodeFun(T(:,1:22),xmin,xmax); Fit=eval(F); AAS=[0 AAS]; FMN=[FMN mean(Fit)]; for i=1:mn [OUT(i),BBS(i)]=min(Fit(AAS(i)+1:AAS(i+1))); %克隆子群中的亲和度最大的抗体被选中 BBS(i)=BBS(i)+AAS(i); end AF2=fliplr(Affinity(end-mn+1:end)); %从大到小重新排列要克隆的mn个原始抗体 A(AF2,:)=T(BBS,:); %选择克隆变异后mn个子群中的最好个体保存到A里,其余丢失 end disp(sprintf('\n The optimal point is:')); disp(sprintf('\n x: %2

python 智能算法——简单例子免疫算法.py

python 智能算法——简单例子免疫算法.py

【智能优化算法】人工免疫算法 (Immune Algorithm, IA), 1986

遗传算法的思想简单讲就是父代之间通过交叉互换以及变异产生子代,不断更新适应度更高的子代,从而达到优化的效果。而免疫算法本质上其实也是更新亲和度(这里对应上面的适应度)的过程,抽取一个抗原(问题),取一个抗体(解)去解决,并计算其亲和度,而后选择样本进行变换操作(免疫处理),借此得到得分更高的解样本,在一次一次的变换过程中逐渐接近最后解。截止到 2023 年,算法引用趋势。

青年有志 5584

人工免疫算法(python)

人工免疫算法,用于计算函数的极值问题,收敛性极佳,迭代不到10次就可以找到最优解,而且与理论解完全吻合

c语言免疫算法,人工免疫算法的全局收敛性分析

收稿日期:!""#$"%$&"基金项目:教育部高校博士点专项科研基金资助项目(!""’"(’’")作者简介:汤放奇(&)(#$),女,湖南宁乡人,长沙理工大学电气与信息工程学院副教授,学士,主要从事电工理论与新技术的研究*第&)卷第’期!""#年+月长 沙 电 力 学 院 学 报 ( 自 然 科 学 版 ),-./012-345106751.089:/78;:/(01;./...

weixin_33618482的博客 369

New Folder (4)_免疫克隆算法_免疫克隆算法求函数最优值_免疫算法_immunealgorithm_

免疫克隆算法求函数最优值,人工免疫具有分布式、自学习、自适应、自组织和鲁棒性等特点,具有强大的信息处理和问题求解能力。免疫克隆选择算法是一种受生物免疫系统克隆选择原理启发而设计的新型智能优化算法。它结合了问题的先验知识和生物免疫系统的自适应能力,因而在信息处理方面具有较强的鲁棒性,在搜索过程中能更好地收敛到全局最优解。

安路科技FPSoC开发实战:从芯片特性到边缘计算应用

本文深入解析安路科技FPSoC芯片在边缘计算领域的开发实战,重点介绍SALDRAGON系列芯片的异构计算架构优势,包括RISC-V/ARM处理器与FPGA的协同工作。通过工业控制和智能视觉应用案例,展示硬件加速实现与低功耗设计技巧,帮助开发者高效利用FPSoC进行边缘计算应用开发。

weixin_29248611的博客 377

C语言经典算法之人工免疫算法

人工免疫算法(Artificial Immune Algorithm, AIA)是一种模拟生物免疫系统的原理来解决优化问题的启发式算法。C语言实现这类算法通常涉及随机性、多样性维持、克隆选择和免疫记忆等核心概念的编码。

weixin_56154577的博客 1084

HFSS实战:手把手教你设计微带发夹线滤波器(附完整参数计算流程)

本文详细介绍了使用HFSS设计微带发夹线滤波器的完整流程,包括参数计算、HFSS建模和优化策略。通过实战案例,帮助读者掌握微波滤波器设计的核心技巧,特别是奇偶模阻抗计算和HFSS仿真中的关键设置,适用于通信系统设计和射频工程应用。

weixin_29251567的博客 441

人工免疫算法在图像识别任务中的成功实践

1.背景介绍 图像识别是人工智能领域的一个重要分支,它涉及到计算机对于图像中的物体、场景和特征进行识别和理解的能力。随着数据量的增加和计算能力的提升,深度学习技术在图像识别领域取得了显著的成功。然而,深度学习模型在训练过程中容易过拟合,导致泛化能力不足。为了解决这个问题,人工智能研究人员开发了一种新的算法——人工免疫算法(Artificial Immune System, AIS)。人工免疫算法...

AI天才研究院 1221

Confluence安装Drawio插件

记录confluence安装drawio插件步骤

devotedwife的博客 7379

超声波测距的15度魔法:HC-SR04测量角度特性在机器人避障中的实战技巧

本文深入探讨了HC-SR04超声波测距模块在机器人避障中的15度测量角度特性及其应用技巧。通过分析15度角的工程意义、多模块阵列设计、狭小空间优化方案及温度补偿技术,帮助开发者提升机器人环境感知能力。文章特别强调了HC-SR04模块在低成本避障方案中的核心优势与实战优化策略。

weixin_29172963的博客 430

人工免疫算法学习通解

在演化阶段,算法基于选择的解向量集合,采用进化算子(例如变异、重组、选择等)来生成新的解向量,并更新解向量集合,以逐步寻找最优解。人工免疫算法(Artificial Immune System,AIS)是一种基于免疫系统的启发式优化算法,其基本思想是模拟生物体内的免疫系统对抗外部威胁的过程,通过生成、选择、进化、记忆和协同等机制来搜索最优解。在该算法中,我们生成一个抗体库,然后根据适应度函数(即目标函数)对抗体进行排序,选择适应度较好的一部分作为种群,然后采用变异和克隆等操作来更新种群,以求得更优的解。

深度学习客 1288

数学建模学习(78):多输入多输出回归预测模型(结合XGBoost实现)

多输入多输出回归预测问题求解

全栈川川 8131

免疫算法Python实现

1.流程 免疫算法与遗传算法其实非常相似,但其独特的地方在于,免疫算法用激励度而非亲和度来衡量结果的好坏,而激励度又与抗体密度有关,这就使得密度大的抗体激励度反而小,让免疫算法有全局搜索的能力,不容易陷入局部最优,接下来我就结合代码来讲解。 2.开发环境 【Anaconda + jupyter notebook python 3.7.9】 3.具体实例 现有一函数,定义域为,函数图像 首先导入需要的包 numpy pandas(这个好像全程没用到) matplotl...

asdhadadff的博客 4368

【图像超分】论文精读:RepSR: Training Efficient VGG-style Super-Resolution Networks with Structural Re-Paramete

摘要: 本文提出RepSR,一种基于结构重新参数化和批量归一化(BN)的高效VGG式超分辨率网络。针对SR任务中BN易引发伪影的问题,作者通过分析发现训练-测试阶段的不一致性是主因,并提出先使用小批量统计训练、后期切换为总体统计的优化策略。RepSR块设计包含干净的残差路径和带改进BN的扩展-压缩卷积路径,有效平衡了训练非线性与推理效率。实验表明,RepSR在不同模型规模下优于现有重参数化方法,且实际推理速度更快。该工作为SR提供了性能与效率兼优的解决方案,相关代码未开源。 关键词: 超分辨率、结构重参数化

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 305

华为OD机试 - 比赛的冠亚季军(Python/JS/C/C++ 双机位C卷 100分)

有个运动员,他们的id为0到N-1,他们的实力由一组整数表示。他们之间进行比赛,需要决出冠亚军。比赛的规则是0号和1号比赛,2号和3号比赛,以此类推,每一轮,相邻的运动员进行比赛,获N (3\leq N< 10000)胜的进入下一轮,实力值大的获胜,实力值相等的情况,id小的情况下获胜,轮空的直接进入下一轮。(0 <= 实力值 <= 10000000000)。输入一行N个数字代表N的运动员的实力值。输出冠亚季军的id,用空格隔开。

学Java,找哪吒 1588

python实现免疫算法,并绘制训练过程

免疫算法同遗传算法相似,不过子代是克隆出来的,而不是交叉,并且引入了抗体间亲和度的概念,算出抗体适应度之后,我们还需要减去抗体间亲和度,从而使得结果不容易陷入局部最优。代码如下,训练结果建议自己运行,此处不放置结果视频。

i道i的博客 627

【数据集】中国陆地生态系统通量观测网 ChinaFLUX

【数据集】中国陆地生态系统通量观测网 ChinaFLUX

WW、forever的博客 193

人工免疫算法python_人工免疫算法-python实现

1 importnumpy as np2 from AIAIndividual importAIAIndividual3 importrandom4 importcopy5 importmatplotlib.pyplot as plt678 classArtificialImmuneAlgorithm:910 '''11 The class for artificial immune al...

weixin_39637614的博客 935

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

免疫优化算法及其实现

一、在生物免疫学的基础上,生物免疫系统的运行机制与遗传算法的求解的很类似的。 将所求目标函数及约束条件当作抗原,问题的解当作抗体,那么遗传算法的求解过程其实就是生物免疫系统抵御抗原的过程。 求解问题及当作于各种各样的抗原,可以提前注射疫苗来抑制退化问题,从而保持优胜劣汰的特点,达到免疫的目的。 ...

Azuresmh的博客 5691

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

低温ECR-MOCVD生长(002)GaN:椭偏仪测厚与电学性能

本研究用ECR-MOCVD在Si(111)和蓝宝石衬底上低温生长GaN薄膜,蓝宝石1.0SCCM、2h样品呈完全(002)择优取向,椭偏仪测厚32.81nm,迁移率10.42cm²/(V·s)。文章梳理了生长温度、TMGa流量与生长时间对结晶取向、膜厚、粗糙度、光学带隙和电学性能的影响。

Flexfilm_的博客 366

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

上一篇: 2020多校第八场Clockwise or Counterclockwise
下一篇: 2021年双非计算机意外保研推免经验贴,最终去向西南交通大学计算机与人工智能学院
生灵不语
博客等级 码龄8年 11粉丝 27原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值