精华内容
下载资源
问答
  • 代码优化技巧

    2015-03-02 14:53:00
    代码优化技巧 所谓代码优化是指对程序代码进行等价(指不改变程序的运行结果)变换。程序代码可以是中间代码(如四元式代码),也可以是目标代码。...头部优化,权重标签使用图片优化。在这四个环...

    所谓代码优化是指对程序代码进行等价(指不改变程序的运行结果)变换。程序代码可以是中间代码(如四元式代码),也可以是目标代码。等价的含义是使得变换后的代码运行结果与变换前代码运行结果相同。优化的含义是最终生成的目标代码短(运行时间更短、占用空间更小),时空效率优化。 主要步骤:精简代码;头部优化,权重标签使用及图片优化。在这四个环节中,精简代码是最基础、最根本。 精简代码是指清除或者简化页面中的代码,从而达到降低页面体积、提高页面的用户体验及搜索引擎优化性的目的。 精简代码又分五个小步骤: 1.清理垃圾代码;垃圾代码是指那些在删除的情况下也不会影响页面正常显示的非必要代码。不要小看这些代码,他占据了很大的空间,不仅影响性能还影响搜索引擎的计算时间,所以代码最好是手写,如果用frontpage,word,dreamweaver,等工具写的话,产生的垃圾代码会非常多,所以手动清理掉。 2.html标签转换;html标签转换,主要是指使用短标签替换在网页中实现同样效果的长标签。例如与,两周都是对字体加粗,但是比多出五个字符,如果页面很多的话,就会产生很多冗余代码。 3.css优化;css优化。css优化主要是改变css的调用方式,以及避免使用css为重要内容定义样式。使用div+css方式制作页面,一方面防止垃圾代码,另一方面可以减少重复代码。这种方式对搜索引擎非常友好。 4.js优化以及表格优化;js优化。js对搜素引擎极不友好。目前搜索引擎不能解析javascript生成的页面或者内容。所以重要的内容不能用js脚本生成; 5.表格优化,传统的页面基本都是用table。但是这种方式对搜索引擎非常不友好,所以不建议用table 6.尽量少用无用的图片和flash。内容索引所派出的搜索引擎爬虫,不认识图片,只能根据图片“ALT,TITLE”等属性的内容判断图片的内容。对于flash搜索引擎爬虫更是视而不见。 7. 尽量不使用表格布局,因为搜索引擎对表格布局嵌套3层以内的内容懒的去抓取。搜索引擎爬虫有时候也是比较懒的,望各位一定要保持代码和内容在3层以内。 进行优化所需要的基础是对代码进行数据流分析和控制流分析。如划分DAG,查找循环,分析变量的定值点和引用点等等。最常用的代码优化技术有删除多余运算,循环不变代码外提,强度削弱,变换循环控制条件,合并已知量与复写传播,以及删除无用赋值等等。

    posted on 2015-03-02 14:53 天使之爱你 阅读(...) 评论(...) 编辑 收藏

    转载于:https://www.cnblogs.com/niuchunjian/p/4308782.html

    展开全文
  • 本课程主要讲解的知识包括搜索引擎工作原理、SEO必备工具、关键词选择方法、网站首页/URL/TDK标签优化技巧、SEO站内优化、代码优化及外链优化等。学员通过学习可以掌握企业与个人网站搜索引擎SEO优化技巧,并通过所...

    搜索引擎营销作为现代企业常见的一种网络营销方式,对于提升企业品牌曝光已经口碑有着重要的营销价值。本课程主要讲解的知识包括搜索引擎工作原理、SEO必备工具、关键词选择方法、网站首页/URL/TDK标签优化技巧、SEO站内优化、代码优化及外链优化等。学员通过学习可以掌握企业与个人网站搜索引擎SEO优化技巧,并通过所学知识帮助企业优化网站提高网站流量。

    773b6b1302759486cb9d97ebb0148420.png
    本次课程亮点:
    1.课程讲解通俗易懂,适合0基础小白快速入门SEO行业;
    2.课程内容根据市场常见企业优化需求进行设置,课程实操性和应用性较强;
    3.授课讲师在SEO领域工作多年,项目经验十分丰富,课程含金量较高;
    4.课程知识点为2019年SEO优化市面上较为流行的优化方法。

    学习对象l 课程适合人群:
    即将毕业的大学生,对搜索引擎优化感兴趣,创业公司网络营销人、1年以内网络营销推广人,想进入互联网行业,择业迷茫。

    l需要具备基础:
    热爱网络营销、喜欢玩网站、对网络营销、网络推广有一定的了解。

    学习目标l 让学员熟悉和掌握搜索引擎工作原理以及SEO工具;
    让学员学会筛选网站关键词的方法
    掌握网站首页、url以及TDK标签的优化技巧
    掌握SEO站内优化的方法和策略
    掌握301重定向和404错误页面的优化设置
    掌握网站外链推广的方法和策略

    课程大纲第1章 解密搜索引擎的工作原理
    第2章 SEO必用的工具与官方平台
    第3章 关键词选择三步法
    第4章 导航、Url、TDK优化技巧
    第5章 SEO站内优化
    第6章 代码优化
    第7章 状态码解读与优化
    第8章 网站外部链接建设方法

    具体哪些项目,怎么操作,看视频教程,这里不多做介绍!

    展开全文
  • 深度模型优化技巧–Label smoothing Regularization(LSR),从论文工程角度说说标签平滑的前世今生 1 前言: 今天说说深度学习中的一种优化方法Label smoothing Regularization(LSR),此法出自一篇经典巨作 :...

    深度模型优化技巧–Label smoothing Regularization(LSR),从论文及工程角度说说标签平滑的前世今生

    在这里插入图片描述

    1 前言:

    今天说说深度学习中的一种优化方法Label smoothing Regularization(LSR),此法出自一篇经典巨作 :https://arxiv.org/pdf/1512.00567.pdf

    代码:https://github.com/tensorflow/models/blob/master/slim/nets/inception_v3.py

    我们都熟知此论文提出了一个IncentionV3 的模型。其实进一步深挖,我们可以知道该模型之所以表现SOTA!

    很大一个贡献是:使用提出了一种通过估计 label-dropout 的边缘化效应(marginalized effect)来正则化分类器层的机制,即Label-smoothing Regularization,LSR.

    2 论文角度

    2.1 标签的问题

    对于每个训练样本 x,网络模型计算其关于每个类别标签 k∈{1…K} 的概率值,Softmax 层输出的预测概率:

    p(k|x)=exp(zk)∑i=1Kexp(zi).

    其中
    zi - logits,未被归一化的对数概率.

    p - predicted probability,样本的预测概率.

    q - groundtruth probability,样本的真实类别标签概率. one-shot 时,样本的真实概率为 q(k)=δk,y,y 为真实的类别标签.

    ​ 假设对该样本关于类别标签 q(k|x) 的 groundtruth 分布,进行归一化,

    有:∑kq(k|x)=1.

    简单起见,忽略关于样本 x 的 p 和 q 之间的依赖性.

    定义样本的损失函数为交叉熵(cross entropy):

    l=−∑k=1Klog(p(k))q(k).

    最小化该交叉熵损失函数,等价于最大化特定类别标签的期望 log 似然值,该特定类别标签是根据其 groundtruth 分布 q(k) 选定的.

    交叉熵损失函数时关于 logits zk 可微的,因此可以用于深度模型的梯度训练. 其梯度的相对简洁形式为:

    ∂l∂zk=p(k)−q(k),其值区间为 [-1, 1].

    ​ 假设只有单个 groundtruth 类别标签 y 的情况,则 q(y)=1,时q(k)=0(k≠y时),此时,最小化交叉熵损失函数等价于最大化正确类别标签(correct label) 的 log-likelihood.

    对于某个样本 x,其类别标签为 y,对 q(k) 计算最大化 log-likelihood,q(k)=δk,y,其中 δk,y 为 Dirac 函数,即,k=y 时,δk,y=1;k≠y 时,δk,y=0.

    在采用预测的概率来拟合真实的概率时,只有当对应于 groundtruth 类别标签的 logit 值远远大于其它类别标签的 logit 值时才可行. 但其面临两个问题:

    • 可能导致过拟合 - 如果模型学习的结果是,对于每个训练样本都将全部概率值都分配给 groundtruth 类别标签,则不能保证其泛化能力.
    • 其鼓励最大 logit 值和其它 logits 值间的差异尽可能的大,但结合梯度 ∂l∂zk 的有界性,其削弱了模型的适应能力.

    也就是说,只有模型对预测结果足够有信心时才可能发生的情况.

    2.2 InceptionV3 的标签机制

    InceptionV3 提出了一种机制,鼓励模型少一点自信(encouraging the model to be less confident).

    虽然,对于目标是最大化训练标签的 log-likelihoodd 的问题,不是所期望的;但,却能够正则化模型,并提升模型的适应能力.

    假设有类别标签的分布 u(k),其独立于训练样本 x,和一个平滑参数 ϵ,对于 groundtruth 类别标签为 y 的训练样本,将其类别标签的分布 q(k|x)=δk,y 替换为:

    q′(k|x)=(1−ϵ)δk,y+ϵu(k)

    其是,原始 groundtruth 分布 q(k|x) 、固定分布 u(k) 、权重 1−ϵ 和权重 ϵ 的组合.

    可以将类别标签 k 的分布的计算可以看作为:

    • 首先,将类别标签设为 groundtruth 类别标签,k=y;
    • 然后,采用概率 ϵ ,将从分布 u(k) 中的采样值来取代 k;

    InceptionV3 中采用类别标签的先验分布来作为 u(k). 如,均匀分布(uniform distribution),u(k)=1K,则:

    q′(k|x)=(1−ϵ)δk,y+ϵ1K

    对此,称为类别标签平滑正则化(label-smoothing regularization, LSR).

    LSR 交叉熵变为:

    H(q′,p)=−∑k=1Klog(p(k)q′(k))=(1−ϵ)H(q,p)+ϵH(u,p)

    等价于将单个交叉熵损失函数 H(q,p) 替换为一对损失函数 H(q,p) 和 H(u,p).

    损失函数 H(u,p) 惩罚了预测的类别标签分布 p 相对于先验分布 u 的偏差,根据相对权重 ϵ1−ϵ. 该偏差也可以从 KL divergence 的角度计算,因为 H(u,p)=DKL(u||p)+H(u),H(u) 时固定. 当 u 时均匀分布时,H(u,p) 是评价预测的概率分布 p 与均匀分布 u 间的偏离程度.

    2.3 ImageNet 实验结果

    在 ImageNet 实验中,K=1000 个类别标签,先验分布为 u(k)=1/1000,ϵ=0.1. ILSVRC2012 对于 top1 和 top5 大约有 0.2% 的精度提升.

    3 结合论文的工程角度

    对于分类问题,尤其是多类别分类问题中,常常把类别向量做成one-hot vector(独热向量)

    简单地说,就是对于多分类向量,计算机中往往用[1, 3, 5,7,9]等此类离散的、随机的而非有序(连续)的向量表示,而one-hot vector 对应的向量便可表示为[0, 1, 0,0,0,0],即对于长度为n 的数组,只有一个元素是1,其余都为0。因此表征我们已知样本属于某一类别的概率是为1的确定事件,属于其他类别的概率则均为0。

    3.1 one-hot

    one-hot 带来的问题:

    对于损失函数,我们需要用预测概率去拟合真实概率,而拟合one-hot的真实概率函数会带来两个问题:

    1)无法保证模型的泛化能力,容易造成过拟合;

    1. 全概率和0概率鼓励所属类别和其他类别之间的差距尽可能加大,而由梯度有界可知,这种情况很难adapt。会造成模型过于相信预测的类别。

    3.2 公式及原理

    使用下面的 label smoothing 公式可以缓解这个问题:

    img

    对于以Dirac函数分布的真实标签,我们将它变成分为两部分获得(替换)

    1. 第一部分:将原本Dirac分布的标签变量替换为**(1 - ϵ)的Dirac函数;**

    2. 第二部分:以概率 ϵ ,在u(k)u(k) 中份分布的随机变量。

    3.3 代码

    def label_smoothing(inputs, epsilon=0.1):
    
        K = inputs.get_shape().as_list()[-1]    # number of channels
    
        return ((1-epsilon) * inputs) + (epsilon / K)
    

    代码解释:

    K = inputs.get_shape().as_list()[-1] 表示取Y的channels,也就是标签类别数

    代码第二行就是对应的公式了

    3.4 举例

    下面用一个例子理解一下:

    假设我做一个猫咪分类,是三分类,那么K=3;

    假如一个真实标签是[0, 0, 1],取epsilon = 0.1,

    新标签就变成了 (1 - 0.1)× [0, 0, 1] + (0.1 / 3) = [0, 0, 0.9] + [0.0333, 0.0333, 0.0333]

    = [0.0333, 0.0333, 0.9333]

    实际上分了一点概率给其他两类(均匀分),让标签没有那么绝对化,增强了模型的泛化空间,防止过拟合,从而能够提升整体的效果。

    3.5 Tensorflow中应用

    在Tensorflow中使用方法时候只要在损失函数中加上label_smoothing的值即可,如下:

    tf.losses.softmax_cross_entropy(    
        onehot_labels,    
        logits,    
        weights=1.0,    
        label_smoothing=0,    
        scope=None,    
        loss_collection=tf.GraphKeys.LOSSES,            
        reduction=Reduction.SUM_BY_NONZERO_WEIGHTS)
    

    3.6 扩展-分类问题中错误标注的一种解决方法

    了解了前文的原理之后,标注是准确的时候,我们使用标签平滑是丢弃部分准确率,提高放化能力。

    但我们换个角度,对于工程项目中的标注数据来说,往往有一些标注数据并不是准确的。那么这时候,使用交叉熵损失函数作为目标函数并不一定是最优的,而使用标签平滑恰恰减少了错误标注带来的消极影响。
    在这里插入图片描述

    参考:

    Rethinking the Inception Architecture for Computer Vision
    在这里插入图片描述

    展开全文
  • VBA常用技巧

    2014-12-21 16:39:28
    技巧150 使用代码添加窗体控件 12 技巧151 用户窗体的全屏显示 12 151-1 设置用户窗体为应用程序的大小 12 151-2 根据屏幕分辨率进行设置 12 技巧152 在用户窗体上添加状态栏 12 第9章 函数的使用 12 技巧153 调用...
  • VBA编程技巧大全

    2013-08-05 09:03:19
    技巧150 使用代码添加窗体控件 369 技巧151 用户窗体的全屏显示 375 151-1 设置用户窗体为应用程序的大小 375 151-2 根据屏幕分辨率进行设置 376 技巧152 在用户窗体上添加状态栏 377 第9章 函数的使用 381 技巧...
  • │ │ 技巧166 字符串比较清理垃圾字符.xls │ │ 技巧169 计算字符出现的次数.xls │ │ 技巧170 提取字符串.xls │ │ 技巧171 文本合并符号的妙用.xls │ │ 技巧172 重复记录自动加编号.xls │ │ 技巧...
  • Google排名优化经验

    千次阅读 2007-01-24 16:55:00
    根据许多经验,在这里与各位朋友分享一下几个要点: A、 标题标签: 标题网页代码中 与 之间的字符。目前,不光GOOGLE,而且大多搜索引擎都很关注它,所以这个标题标签的设计对你的网站在搜索引引擎的排名中特别...

    针对与google排名,关键是内容好。当然内容好,能不能让GOOGLE知道,那就是技巧方面的问题了。根据许多经验,在这里与各位朋友分享一下几个要点:

    A、 标题标签:
    标题及网页代码中 与 之间的字符。
    目前,不光GOOGLE,而且大多搜索引擎都很关注它,所以这个标题标签的设计对你的网站在搜索引引擎的排名中特别重要。所以,标题设计一定要接近全力想到关键词,最好把最重要的关键词融入到标题中。例如:

    luao.y365.com 是我花了一个下午做出来的试验的放在免费空间,用免费二级域名的站点,不过他在百度、GOOGLE 中打入“工艺画”、”麦秸画“ “工艺画批发”、“工艺画制作”等关键词,它都排在第一的位置。

    针对于它的标题,我是这样设计的:

    注:标题设计最好不好超过40个字符,也就是20个汉字。

    B、 内容标签:
    在网页标签中,关键词标签已经不被搜索引擎看重,而目前google相对而言还是比较看重内容简介标签的。及:
    在简介标签中,一定要充分发挥最关键的那个词的出现频率,以及融入有可能出现的组合关键词。请看下面这个内容简介标签:

    注:经过试验表明,这个标签放在 这个标签上面比较好。

    C、 页面内容:
    标题的设计,标签的设计,最好要与内容想符合,另外在网页中,最好能够合理的提高关键词出现频率。
    另外针对与关键词,可以用加粗(及 ) ,也可以用相对大一点的字体突出关键词。 这样,GOOGLE排名将会更加关注这个关键词。

    D、 外部连接:
    大家都知道,在GOOGLE中,通过A网站的连接到B战,就等于A站投B站了一票,B站在google排名中及积分将升高一分,积分高了,当然也有利于排名了。所以,网站的外部连接特别重要。那么就谈友情连接了,对于友情连接,最好多做高攀的、门当户对的、内容互补的友情连接。

    E、 其他策略:
    说道底,对于网站而言。想要真正的做好,还是把内容做好,把你的用户粘在你的网站,这样通过网络营销,你的用户将不断的积累,流量那么也是越来越大,流量大了,对GOOGLE排名最有用。  

    展开全文
  • Google优化疑问【三】

    2009-08-24 09:02:00
    根据许多经验,在这里与各位朋友分享一下几个要点: A、 标题标签: 标题网页代码中 与 之间的字符。目前,不光GOOGLE,而且大多搜索引擎都很关注它,所以这个标题标签的设计对你的网站在搜索引引擎的排名中特别...
  • 秘籍:若你单击子窗体上的日期标签将会弹出本软件自带的打字游戏.  3.查找与替换:查询源代码文件中如函数.变量.宏定义等信息,并可以替换为新内容;  4.文件保护:对重要源代码文件进行加密;  5.优化TC中生成的...
  • Calendar万年历 1个目标文件 EJB 模拟银行ATM流程操作源代码 6个目标文件,EJB来模拟银行ATM机的流程操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...
  • delphi 开发经验技巧宝典源码

    热门讨论 2010-08-12 16:47:23
    0003 如何定制代码编辑器 3 0004 保存自定义开发环境桌面 4 1.2 组件安装 4 0005 安装ActiveX组件 4 0006 安装不同类型的第三方组件 5 0007 在Delphi中加载QReport报表组件 7 1.3 创建DLL文件 8 0008...
  • javascript 高级程序设计 第二版 中文版 含源代码

    千次下载 热门讨论 2011-03-25 09:50:23
    2010年7月最新版 包括第二版配套源代码,第二版重写了第一版80%的内容,更深入浅出的讲明javascript难点核心技术,清晰PDF中文版,非常难得的资源,不多说了,请放心下(亲自测试PDF及代码均可用)。 作译者介绍 ...
  • C#编程经验技巧宝典

    热门讨论 2008-06-01 08:59:33
    C#编程经验技巧宝典源代码,目录如下: 第1章 开发环境 1 <br>1.1 Visual Studio开发环境安装与配置 2 <br>0001 安装Visual Studio 2005开发环境须知 2 <br>0002 配置合适的Visual Studio 2005...
  • ASP.NET精品课程+源代码

    千次下载 热门讨论 2009-01-05 20:15:51
    随着改革开放的不断深入和社会文化经济的持续发展,ASP.NET课程发展也经历了一个教学理念的不断更新、升迁,教学内容日益丰富,教学方法和手段逐渐完善,教学条件和环境更加优化的过程。我校ASP.NET课程根据社会发展...

空空如也

空空如也

1 2 3 4 5 6
收藏数 101
精华内容 40
关键字:

代码标签优化及技巧