当前位置:文档之家› Maximum Margin Classifier_1

Maximum Margin Classifier_1

Maximum Margin Classifier_1
Maximum Margin Classifier_1

? Display Equation with MathJaX Acrobat meets Embedding ?

支持向量机: Maximum Margin Classifier

by pluskid, on 2010-09-08, in Machine Learning 86 comments

本文是“支持向量机系列”的第一篇,参见本系列的其他文章。

支持向量机即 Support Vector Machine,简称 SVM 。我最开始听说这头机器的名号的时候,一种神秘感就油然而

生,似乎把 Support 这么一个具体的动作和 Vector 这么一个抽象的概念拼到一起,然后再做成一个 Machine ,一听

就很玄了!

不过后来我才知道,原来 SVM 它并不是一头机器,而是一种算法,或者,确切地说,是一类算法,当然,这样抠字

眼的话就没完没了了,比如,我说 SVM 实际上是一个分类器 (Classifier) ,但是其实也是有用 SVM 来做回归

(Regression) 的。所以,这种字眼就先不管了,还是从分类器说起吧。

SVM 一直被认为是效果最好的现成可用的分类算法之一(其实有很多人都相信,“之一”是可以去掉的)。这里“现成

可用”其实是很重要的,因为一直以来学术界和工业界甚至只是学术界里做理论的和做应用的之间,都有一种“鸿沟”,

有些很 fancy 或者很复杂的算法,在抽象出来的模型里很完美,然而在实际问题上却显得很脆弱,效果很差甚至完全

fail 。而 SVM 则正好是一个特例——在两边都混得开。

好了,由于 SVM 的故事本身就很长,所以废话就先只说这么多了,直接入题吧。当然,说是入贴,但是也不能一上

来就是 SVM ,而是必须要从线性分类器开始讲。这里我们考虑的是一个两类的分类问题,数据点用 $x$ 来表示,这

是一个 $n$ 维向量,而类别用 $y$ 来表示,可以取 1 或者 -1 ,分别代表两个不同的类(有些地方会选 0 和 1 ,当然其实分类问题选什么都无所谓,只要是两个不同的数字即可,不过这里选择 +1 和 -1 是为了方便 SVM 的推导,后面就会明了了)。一个线性分类器就是要在 $n$ 维的数据空间中找到一个超平面,其方程可以表示为

\[

w^Tx + b = 0

\]

一个超平面,在二维空间中的例子就是一条直线。我们希望的是,通过这个超平面可以把两类数据分隔开来,比如,在超平面一边的数据点所对应的 $y$ 全是 -1 ,而在另一边全是 1 。具体来说,我们令 $f(x)=w^Tx + b$ ,显然,如果 $f(x)=0$ ,那么 $x$ 是位于超平面上的点。我们不妨要求对于所有满足 $f(x)<0$ 的点,其对应的$y$ 等于 -1 ,而 $f(x)>0$ 则对应 $y=1$ 的数据点。当然,有些时候(或者说大部分时候)数据并不是线性可分的,这个时候满足这样条件的超平面就根本不存在,不过关于如何处理这样的问题我们后面会讲,这里先从最简单的情形开始推导,就假设数据都是线性可分的,亦即这样的超平面是存在的。

如图所示,两种颜色的点分别代表两个类别,红颜色的线表示一个可行的超平面。在进行分类的时

候,我们将数据点 $x$ 代入 $f(x)$ 中,如果得到的结果小于 0 ,则赋予其类别 -1 ,如果大于 0 则

赋予类别 1 。如果 $f(x)=0$,则很难办了,分到哪一类都不是。事实上,对于 $f(x)$ 的绝对值很小

的情况,我们都很难处理,因为细微的变动(比如超平面稍微转一个小角度)就有可能导致结果类

别的改变。理想情况下,我们希望 $f(x)$ 的值都是很大的正数或者很小的负数,这样我们就能更加

确信它是属于其中某一类别的。

从几何直观上来说,由于超平面是用于分隔两类数据的,越接近超平面的点越“难”分隔,因为如果

超平面稍微转动一下,它们就有可能跑到另一边去。反之,如果是距离超平面很远的点,例如图中

的右上角或者左下角的点,则很容易分辩出其类别。

实际上这两个 Criteria 是互通的,我们定义 functional margin 为

$\hat{\gamma}=y(w^Tx+b)=yf(x)$,注意前面乘上类别 $y$ 之后可以保

证这个 margin 的非负性(因为 $f(x)<0$ 对应于 $y=-1$ 的那些点),而

点到超平面的距离定义为 geometrical margin 。不妨来看看二者之间的

关系。如图所示,对于一个点 $x$ ,令其垂直投影到超平面上的对应的

为 $x_0$ ,由于 $w$ 是垂直于超平面的一个向量(请自行验证),我

们有 \[ x=x_0+\gamma\frac{w}{\|w\|} \] 又由于 $x_0$ 是超平面上的点,

满足 $f(x_0)=0$ ,代入超平面的方程即可算出 \[ \gamma =

\frac{w^Tx+b}{\|w\|}=\frac{f(x)}{\|w\|} \] 不过,这里的 $\gamma$ 是带符

号的,我们需要的只是它的绝对值,因此类似地,也乘上对应的类别 $y$ 即可,因此实际上我们定义 geometrical margin 为: \[ \tilde{\gamma} = y\gamma =

\frac{\hat{\gamma}}{\|w\|} \] 显然,functional margin 和 geometrical margin 相差一个 $\|w\|$ 的缩放因子。按照我们前面的分析,对一个数据点进行分类,当它的 margin 越大的时候,分类的 confidence 越大。对于一个包含 $n$ 个点的数据集,我们可以很自然地定义它的 margin 为所有这 $n$ 个点的 margin 值中最小的那个。于是,为了使得分类的 confidence 高,我们希望所选择的 hyper plane 能够最大化这个 margin 值。 不过这里我们有两个 margin 可以选,不过 functional margin 明显是不太适合用来最大化的一个量,因为在 hyper plane 固定以后,我们可以等比例地缩放 $w$ 的长度和 $b$ 的值,这样可以使得 $f(x)=w^Tx+b$ 的值任意大,亦即 functional margin $\hat{\gamma}$ 可以在 hyper plane 保持不变的情况下被取得任意大,而 geometrical margin 则没有这个问题,因为除上了 $\|w\|$ 这个分母,所以缩放 $w$ 和$b$ 的时候 $\tilde{\gamma}$ 的值是不会改变的,它只随着 hyper plane 的变动而变动,因此,这是更加合适的一个 margin 。这样一来,我们的 maximum margin classifier 的目标函数即定义为 \[ \max \tilde{\gamma} \] 当然,还需要满足一些条件,根据 margin 的定义,我们有 \[ y_i(w^Tx_i+b) = \hat{\gamma}_i \geq \hat{\gamma}, \quad i=1,\ldots,n \] 其中 $\hat{\gamma}=\tilde{\gamma}\|w\|$ ,根据我们刚才的讨论,即使在超平面固定的情况下,$\hat{\gamma}$ 的值也可以随着 $\|w\|$ 的变化而变化。由于我们的目标就是要确定超平面,因此可以把这个无关的变量固定下来,固定的方式有两种:一是固定 $\|w\|$ ,当我们找到最优的 $\tilde{\gamma}$ 时

$\hat{\gamma}$ 也就可以随之而固定;二是反过来固定 $\hat{\gamma}$ ,此时 $\|w\|$ 也可以根据最优的 $\tilde{\gamma}$ 得到。处于方便推导和优化的目的,我们选择第二种,令 $\hat{\gamma}=1$ ,则我们的目标函数化为: \[ \max \frac{1}{\|w\|}, \quad s.t., y_i(w^Tx_i+b)\geq 1, i=1,\ldots,n \] 通过求解这个问题,我们就可以找到一个 margin 最大的 classifier ,如下图所示,中间的红色线条是 Optimal Hyper Plane ,另外两条线到红线的距离都是等于 $\tilde{\gamma}$ 的:

到此为止,算是完成了 Maximum Margin Classifier 的介绍,通过最大化 margin ,我们使得该分类器对数据进行分类时具有了最大的 confidence (实际上,根据我们说给的一个数据集的 margin 的定义,准确的说,应该是“对最不 confidence 的数据具有了最大的 confidence”——虽然有点拗口)。不过,到现在似乎还没有一点点Support Vector Machine 的影子。很遗憾的是,这个要等到下一次再说了,不过可以先小小地剧透一下,如上图所示,我们可以看到 hyper plane 两边的那个 gap 分别对应的两条平行的线(在高维空间中也应该是两个 hyper plane)上有一些点,显然两个 hyper plane 上都会有点存在,否则我们就可以进一步扩大 gap ,也就是增大$\tilde{\gamma}$ 的值了。这些点呢,就叫做 support vector ,嗯,先说这么多了。

ps: 本文开头那张照片来源于这里。Allaboutinquiry 同学留言揭露典故真相啦:

关于这个同学举牌子的典故我知道,我也是CMU的。这是在2009年在Pittsburgh举行的G20峰会现场外面。很多反对G20的,支持G20的都来凑热闹。

我们这位同学也来了,鱼目混珠的高举Support Vector Machine的牌子。很多老美就晕了,你说你支持加强控制二氧化碳排放我懂,你支持的的这个

Vector Machine是个什么东西啊?然后这个同学搞笑的目的就达到了。

T ags: Supervised Learning, Support Vector Machine

86 comments to 支持向量机: Maximum Margin Classifier

bob

September 9th, 2010 at 10:37 am · Reply

喜欢你的博客,因为每篇文章都有科学小品文的感觉。

路人丁

September 9th, 2010 at 3:51 pm · Reply

SVM的目标肯定是“对最不 confidence 的数据具有了最大的 confidence”。但是直接用距离对应每个数据点的confidence,我还有些疑问,虽然很多情况

下这么用都有不错的效果。

在使用了kernel的非线性情况中,距离是kernel映射的高维空间中的值。但不同的kernel,甚至不同参数的同类型kernel,会映射到不同的高维空间(即使这个空间无

法显式构造)。这造成了两个确定的数据点在不同kernel下的confidence的大小不确定。这样的confidence可靠吗?

具体的情况是,引入新的训练数据后,发现需要修改训练参数来达到最好的效果,这时高维空间已经改变。

当然实际应用中应该构造尽可能吻合数据内在特性的特征空间,避免这种情况。

pluskid

September 9th, 2010 at 8:19 pm · Reply

确实在不同的 Kernel 下 margin 的大小会不一样,但是 SVM 要追求的并不是不同 Kernel 下 margin 数值大小里求一个最大的,而是在固定了Kernel 之后去确定 margin 最大的那个超平面。也就是说 SVM 的目标函数本身是并不能用来选择具体是哪个 Kernel 的,这是一个 model selection 的问题,和 SVM 要优化的问题不是在一个层次上的。

关于 data adaptive Kernel ,可以参考 ICML 2005 年的一篇 Beyond the point cloud: from transductive to semi-supervised learning 。

路人丁

September 10th, 2010 at 8:48 am · Reply

我有疑问的并不是SVM的优化的目标,而是基于SVM的优化结果对具体数据点设置confidence是否合理。

使用到超平面的距离作为confidence后,SVM不仅给出了定性的分类结果,而且是定量的。也就是离分割平面越远的点越属于某类别。这样的理解下,所有支持向量则是最不可靠的点。极端的用法就是用距离这个置信度作为新的维度来衡量所有数据点,并重新设定分类阈值。这相当于平行地移动了超平面。

而按我的理解,SVM是针对整体统计的优化,目标是使两个类别之间的距离最大化。而这个距离并不能用于个别数据点之间的比较。

pluskid

September 10th, 2010 at 12:44 pm

使用距离 separating plane 的距离作为 confidence 的度量是合理的,不止是 SVM ,任何一个用超平面进行分类的算法都是这样。

而“所有支持向量则是最不可靠的点”也是对的,当然要看你如何去理解“可靠”一词。你可以参考用 SVM 做 Active Learning 的文章,就是优先选择超平面附近的点,因为它们的不确定性最大。

Chrysalis

October 5th, 2010 at 10:27 am

我想文中的confidence应该只是定性的说明,而不是数学意义上的置信度。

另外,“所有支持向量则是最不可靠的点”,可靠与否应该是针对分类测试时所用的描述语吧。在training的时候,所有数据点都是同样的百分百可

靠,因为都是有label的数据。

coderweasel

September 9th, 2010 at 4:38 pm · Reply

数学符号和公式在Chrome浏览器里显示效果不佳

位置有些错乱

在IE里有些偏淡偏细

在FIREFOX里会有不均匀的情况

看来这个东西还是IE里显示效果比较正常

coderweasel

September 9th, 2010 at 4:49 pm · Reply

装了STIX字体后好了一点

但还是不能算好看…

pluskid

September 9th, 2010 at 8:08 pm · Reply

不知道你是什么系统?我试过 Linux 下的 Firefox 和 Windows 下的 Chrome 都是很不错的,事实上我觉得目前 Chrome 下显示是最漂亮的。不过确实有碰到错位的情况,但是只是偶尔,似乎是 bug ,需要重新打开 Chrome 。

可以在公式上右键,会有菜单弹出来,可以定制公式的显示,比如全体 scale 为 130% 的话,会看起来清晰不少。

Tweets that mention 支持向量机: Maximum Margin Classifier ? Free Mind -- https://www.doczj.com/doc/a212365579.html,

September 10th, 2010 at 6:48 pm · Reply

[…] This post was mentioned on Twitter by yongsun, wuyuntao. wuyuntao said: [GR] 支持向量机: Maximum Margin Classifier: 支持向量机即 Support Vector Machine,简称 SVM 。我最开始听说这头机器的名号的时候,一种神秘感就油然而生,似乎把 Suppo… http://bit.ly/clls3K […]

leeing

September 15th, 2010 at 12:26 pm · Reply

喜欢这样的文章。

zz:支持向量机 | 增强视觉 | 计算机视觉 增强现实

October 2nd, 2010 at 4:16 pm · Reply

[…] 支持向量机: Maximum Margin Classifier —— 支持向量机简介。 […]

qci133

October 3rd, 2010 at 10:43 am · Reply

我们将数据点 x 带入 f(x) 中

此处是 “代入” 吧

pluskid

October 3rd, 2010 at 11:18 am · Reply

嗯,没错,多谢指正!已经改过来了。

Chrysalis

October 5th, 2010 at 10:30 am · Reply

“我们可以很自然地定义一个包含 n 个点的数据集的 margin 为所有 n 个点中最小的那个 margin 的值。” 哥哥你这句话真是让人费劲啊! -_-‘

pluskid

October 5th, 2010 at 12:16 pm · Reply

好吧,我改过了……

Chrysalis

October 5th, 2010 at 10:38 am · Reply

kid大人 我还是不那么明白 为什么r(hat)可以设置成1呢?

有更加formal的说明吗?

pluskid

October 5th, 2010 at 12:14 pm · Reply

因为对于一个确定的解(超平面),可以有无穷多个 w (长度不同),每个 w 对应一个 $\hat{\gamma}$ ,所以说这个玩意变动是对解没有影响的,你可以把它看成一个等价关系,构成一个等价类,我们就取这个等价类里 $\hat{\gamma}=1$ 的那个代表元。

Chrysalis

October 5th, 2010 at 9:15 pm · Reply

喔喔 有多明白一些 THANKS!

路人丁

December 23rd, 2010 at 2:21 pm · Reply

那我换个角度问,这里最终是要导出最大的margin只和超平面的法向量有关,但距离公式里是有偏移量b的,这个b怎么去掉的?Burges的文章里也是这个也是一带而过。有formal的说法吗?

pluskid

December 25th, 2010 at 1:55 pm

关于 b 的计算,可以看 Ng 的讲义里有。

zz 支持向量机(support vector machine)系列 ? retina

October 15th, 2010 at 12:02 am · Reply

[…] 支持向量机: Maximum Margin Classifier https://www.doczj.com/doc/a212365579.html,/?p=632 […]

颖风

November 2nd, 2010 at 10:14 am · Reply

你好,我也是搞ML的,感觉看了你的博客有新的体会,也有新的困惑啊~

呵呵,两个问题:

1.推导约束条件时,为什么直接“根据 margin 的定义”就直接得到,\\gamma_i >= \\gamma啊?这个约束意思就是所有点的functional margin都必须大于等于

\\gamma,具体怎么直观理解?

2.其实那个geometrical margin就是点到直线的距离公式嘛,可以直接得到,你那样一推导反而有些不好理解了,呵呵,个人意见

pluskid

November 2nd, 2010 at 11:03 am · Reply

你好,因为 margin 的定义就是 $\gamma=\min_i\gamma_i$ ,所以自然 $\gamma\leq\gamma_i$ 啦。

点到直线的距离的公式我自己是不知道的,就这样推导啦,不过反正公式也可以这样推出来,记不住那么许多公式也没有关系了,嘿嘿。

颖风

November 3rd, 2010 at 9:35 am · Reply

明白了,呵呵

Pupil ? Blog Archive ? zz支持向量机(support vector machine)

November 25th, 2010 at 3:59 pm · Reply

[…] 支持向量机: Maximum Margin Classifier https://www.doczj.com/doc/a212365579.html,/?p=632 […]

ran

December 26th, 2010 at 1:52 pm · Reply

请问,本文第一张图片,就是有个帅哥举牌子的那张图,有什么说道啊?

ran

December 26th, 2010 at 2:49 pm · Reply

想知道举牌子的那张图片什么典故?

pluskid

December 26th, 2010 at 3:27 pm · Reply

我也不知道,猜测也许是某游行活动之类的,别人都支持某个人,然后他写了个“支持” vector machine ……

stanleyran

February 3rd, 2011 at 4:57 am · Reply

那帅哥好像今年phd毕业了 搞好多active learning

pluskid

February 3rd, 2011 at 11:35 am · Reply

啊,你不说我还真没有注意到,原来《Active Learning Literature Survey》就是他写的啊!

ran

February 3rd, 2011 at 12:08 pm

呵呵 那是他博士论文一章添了点改的

你是今天申请美国的phd吗 话说我算是machine learning/vision方向

pluskid

February 3rd, 2011 at 8:46 pm

这样啊!

我不是今年申请,你是今年?现在拿到 offer 了吗?

Allaboutinquiry

January 6th, 2011 at 8:27 am · Reply

关于这个同学举牌子的典故我知道,我也是CMU的。这是在2009年在Pittsburgh举行的G20峰会现场外面。很多反对G20的,支持G20的都来凑热闹。我们这位同学也来了,鱼目混珠的高举Support Vector Machine的牌子。很多老美就晕了,你说你支持加强控制二氧化碳排放我懂,你支持的的这个Vector Machine是个什么东西啊?然后这个同学搞笑的目的就达到了。

pluskid

January 6th, 2011 at 10:09 am · Reply

哈哈!谢谢!大赞典故!我编辑到正文里去啦~

ran

February 4th, 2011 at 2:13 am · Reply

我去年申的 现在已经在米国了。。。不过刚搞这方面 一点都不熟

pluskid

February 4th, 2011 at 10:55 am · Reply

原来如此,不过慢慢就会熟悉啦~

Aaron Young

April 2nd, 2011 at 11:10 pm · Reply

这是我看你博客的第一篇文章,感觉真好,激发了我的兴趣。。。。。把一个我从来没有接触过的东西讲的通俗易懂啊!!大牛一个。。。。。我会继续关注您的博客,向您学习!!!

支持向量机系列(转载) ? Masonzms's Blog

April 10th, 2011 at 9:02 am · Reply

[…] 支持向量机: Maximum Margin Classifier —— 支持向量机简介。 […]

马斯特

September 2nd, 2011 at 3:56 pm · Reply

请问你的坐标图都是用什么软件做的,还有我的毕业论文想参考你这个系列的文章,觉得你应该给这个系列写一个bib的引用供大家参考

pluskid

September 2nd, 2011 at 4:00 pm · Reply

坐标图,不记得了……也许是 Illustrator 或者 powerpoint 之类的吧,不过这种简单的图应该随便找个工具都能画啦。 bibtex 还是不要啦,这个只是非正式的 tutorial ,不能算正式出版物的

xingguo

October 4th, 2011 at 8:52 pm · Reply

有一点不太明白望指教。那个geometrical margin相当于x点到超平面的距离,那么想请问一下那个functional margin的意义是什么呢?

pluskid

October 4th, 2011 at 10:05 pm · Reply

呃,可以看成一个正比于 geometrical margin 的量……

cai

November 9th, 2011 at 9:48 am · Reply

写得很好!浅显易懂!!

lips

November 13th, 2011 at 4:43 pm · Reply

\tilde{\gamma} = y\gamma = \frac{\hat{\gamma}}{\|w\|}

这个公式好像不对吧?

pluskid

November 13th, 2011 at 5:03 pm · Reply

这里是定义啊,哪里不对?

lips

November 14th, 2011 at 10:06 pm · Reply

不好意思。字太小,以至于把Y的两个上标看成相同了。

robinvista

November 19th, 2011 at 7:06 pm · Reply

geometrical margin的计算错了吧,对x=x0+γ*ω/||ω||两边作用f,应该得到γ=ωTx+b=f(x)才对啊!也就是没有下面的||ω||。

pluskid

November 19th, 2011 at 8:24 pm · Reply

你好,w^T w = ||w||^2 ,有个平方的,只能消掉一个。

木村兄

February 2nd, 2012 at 11:31 am · Reply

关于这个怎么求出来 我还是有点不解。

那么x=xo+rw/||w|| -> f(x) = f(xo+rw/||w||) ->f(x)=f(xo) + f(rw/||w||) =o+f(rw/||w||)

由于f(x)= w^Tx + b,所以f(rw/||w||)= r||w||^2/||w|| +b = r||w||+b,

因为f(x) = f(xo)+f(rw/||w||) ,可是推导不出来最后的那个公式,请问我的带进去哪里出错了。

木村兄

February 2nd, 2012 at 12:07 pm · Reply

我刚才从一份Lecture notes上得到了如何推导,我这里写出来吧,x=xo+rw/||w||,首先两边诚意W^T,

=>w^Tx = w^Txo + r w^T w /||w|| ,

w^Tx 就是之前那个functional margin – b, 因为functional margin是 w^Tx +b=>f(x)-b =w^Tx

把左边的b移到右边 ,w^Txo + b =0,因为xo那个点是在Hyper plane, hyper plane上的方程是f(x)=0

这样,f(x)= r w^T w /||w||,由于楼主说过 w^T w = ||w||的平方,所以最后就可以得出,r=f(x)/||w||

robinvista

November 21st, 2011 at 1:20 pm · Reply

奥,对。丢人了。:-p 基本概念都忘完了,泛函分析白学了。

木村兄

February 2nd, 2012 at 8:58 am · Reply

不过,这里的 γ 是带符号的,我们需要的只是它的绝对值,因此类似地,也乘上对应的类别 y 即可。

你好 楼主 我是名新手。请问 这里乘上对应的类别y即可,类别y是指取值,+1, -1吗,

pluskid

February 2nd, 2012 at 9:55 am · Reply

你好,对的,+1 、-1 两类。

木村兄

February 2nd, 2012 at 12:14 pm · Reply

不过这里我们有两个 margin 可以选,不过 functional margin 明显是不太适合用来最大化的一个量,因为在 hyper plane 固定以后,我们可以等比例地缩放 w 的长度和 b 的值,这样可以使得 f(x)=wTx+b 的值任意大

这段开始到后面 有点不明白,

不变的情况下被取得任意大,而 geometrical margin 则没有这个问题,因为除上了 ∥w∥ 这个分母,所以缩放 w 和 b 的时候 γ? 的值是不会改变的,它只随着 hyper plane 的变动而变动

w值变化和|w|值变化率不一样,所以r””的值是会改变的? 新手不明白啊,求解

pluskid

February 4th, 2012 at 11:29 am · Reply

w 的方向不变,长度变化的情况下,再怎么变 geometrical margin 都不会变化,因为分母上已经除以那个长度值了,所以相当于缩放之后又缩放回来了。

Alice

February 3rd, 2012 at 4:13 pm · Reply

下面这句话

二是反过来固定 γ? ,此时 ∥w∥ 也可以根据最优的 γ? 得到。处于方便推导和优化的目的,我们选择第二种,令 γ?=1 ,则我们的目标函数化为:

你这句话意思是不是说,不论两边的正负数据的支持向量如何分布,比如说有可能H1,H2线是直的,有可能H1,H2线是45独斜的,但不管线条如何怎样,H1,H2 始终是yi(wxi+b) =1, 只不过每种情况下b,w参数不一样。斑竹 我这句理解正确吗

pluskid

February 4th, 2012 at 11:31 am · Reply

恩,对的,只要是 support vector 就满足那样的性质。

sunshine

February 8th, 2012 at 5:05 pm · Reply

你好,请问一个问题,对于二维空间所对应的超平面就是一条直线,那么如果W改变的话,对应的直线是否就应该改变呢?那么如何调整W和d是的f(x)达到很大呢,刚刚开始了解这个方面,请多多指点。

pluskid

February 8th, 2012 at 5:51 pm · Reply

你好,w 的方向改变的话直线也会改变,如何调整的话这是一个数值优化问题。

sunshine

February 9th, 2012 at 3:39 pm · Reply

谢谢,我还得多多学习了。?

xuekunnan

August 22nd, 2012 at 4:13 pm · Reply

博主写得太好了,学习学习

yeyongjian

December 2nd, 2012 at 10:49 pm · Reply

为什么我的浏览器显示不了数学公式呢?

pluskid

December 2nd, 2012 at 10:58 pm · Reply

什么浏览器?

yeyongjian

December 3rd, 2012 at 12:12 pm · Reply

你好,是360的浏览器。

pluskid

December 3rd, 2012 at 12:23 pm · Reply

这个不会是基于 IE6 之类的内核吧?主流的浏览器 Firefox Chrome 还有比较新的 IE 应该都能正常显示的。

simon

December 4th, 2012 at 8:45 am · Reply

你好!刚开始学ML,请教一个问题,结构风险最小化原则体现在支持向量机的哪个点上?

pluskid

December 4th, 2012 at 8:48 am · Reply

margin 最大化。

Hugo101

January 13th, 2013 at 9:54 pm · Reply

楼主好!我现在在做一种病——ADHD的分类,现在觉得特征选择是很重要的,是不是只要特征选择选好了输入到SVM里不怎么调整参数什么的就可以大概分类成功率很好???

neo

April 19th, 2013 at 4:56 pm · Reply

拜读了lz的N篇文章后,对这个领域有更浓厚的兴趣。请问楼主所在的lab 有没有phd position,申请条件如何

非常感谢

pluskid

April 19th, 2013 at 11:10 pm · Reply

你好,PhD position 正常情况下每年都有的,申请总体来说比较困难吧。

neo

August 2nd, 2013 at 1:47 pm · Reply

你好,感谢LZ的回复。请问LZ 有何联系方式(个人主页啥的),想咨询点phd position。

非常感谢

pluskid

August 2nd, 2013 at 11:29 pm

可以发我邮箱。

Nickychong

October 13th, 2013 at 5:33 am · Reply

刚开始了解关于SVM的内容,就看到了楼主的一篇好博。

觉得文章写的真好,还是大三写的。就觉得楼主前途无量,果然发现楼主已经在MIT Phd.

我在纽约 fordham 读cs master, 以后多关牛博,也希望和楼主多交流。

skfeng

October 19th, 2013 at 3:13 pm · Reply

kid大神,“另外两条线到红线的距离都是等于 γ? 的”,这是为什么呢?

Nickychong

October 25th, 2013 at 12:36 am · Reply

能不能借用的你的几个SVM的图,打算用在ppt里面,解释一下什么是SVM

pluskid

October 25th, 2013 at 12:38 am · Reply

没问题的

Logan

March 14th, 2014 at 12:36 pm · Reply

由于 w 是垂直于超平面的一个向量.这句话怎么理解。。。。看直线是表示斜率吧。。。

求大神给稍微解释下。。。

ljdawn

March 15th, 2014 at 11:09 am · Reply

多谢楼主的文章。 对svm很感兴趣。

pezy

March 26th, 2014 at 4:48 pm · Reply

Logan同学的问题我来证明一下吧.

证明:超平面wx+b=0垂直于向量w

对于超平面内任一向量AB

点A和点B因为是超平面上的点

满足f(A)=0?f(B)=0,

即wA+b=0,wB+b=0

同时向量AB可以表示为A-B (点A,点B都是空间内的向量).

那么w(A-B)=wa-wb=(-b)-(-b)=0

所以w与超平面内任一向量垂直,所以w与超平面垂直.

证毕

p.s.另外”对最不 confidence 的数据具有了最大的 confidence”实际上就是求一个超平面,这个平面使得两个不同类的点到平面的距离的下界最大,这样解释可能没这么拗口.

jetfish1900

April 22nd, 2014 at 3:13 pm · Reply

大神,您好。看你的blog已经成为习惯了。2013的总结也看了。今天又返回到svm看看。我现在想出国留学做文本挖掘方向,请问有推荐入门级的项目吗?方便发封邮件到我邮箱(jetfish1900@https://www.doczj.com/doc/a212365579.html,)吗?谢谢!

pluskid

April 22nd, 2014 at 9:09 pm · Reply

你好,虽然属于 retrieval 而不是 mining,不过 TREC 每年都有比赛的( https://www.doczj.com/doc/a212365579.html,/pubs/call2014.html ),另外 Kaggle 上可以找找有没有相关的比赛或者项目。

cserxy

May 21st, 2014 at 7:25 pm · Reply

总觉得这里好像推导有问题:

又由于 x0 是超平面上的点,满足 f(x0)=0 ,代入超平面的方程即可算出

γ=f(x)/∥w∥

我代入计算得到的是γ=f(x)*∥w∥

求解释

pluskid

May 21st, 2014 at 10:44 pm · Reply

因为你算错了吧?你自己解释一遍你怎么得到那个结果的也许就知道哪里出错了

黄色的橙子

March 15th, 2016 at 4:18 pm · Reply

大神你好!想请问一下怎么定义“hyper plane 保持不变”呢,为什么“等比例地缩放 w 的长度和 b 的值”以后,hyper plan会保持不变呢?

pluskid

March 15th, 2016 at 11:59 pm · Reply

就是 hyperplane 的位置不变啊。就是 hyperplane 的方程不变。 Ax + b = 0 这个方程,两边同时乘以一个 scale 不会改变这个方程。

系统浏览器设置

国家公派出国留学管理信息平台 浏览器设置 国家留学基金管理委员会制 2017年4月

为保证数据准确性,请使用Internet Explorer(以下简称“IE”)浏览器进行评审。开始评审前请对IE浏览器进行以下设置。 一、启用“兼容性视图” 1)打开IE浏览器,点击菜单栏“工具”-->“兼容性视图设置”。 2)打开“兼容性视图设置”窗口,点击“添加”按钮,将https://www.doczj.com/doc/a212365579.html,添 加至兼容性视图网站。 3)确认https://www.doczj.com/doc/a212365579.html,已添加至兼容性视图网站,点击“关闭”按钮,完成

兼容性设置。 二、关闭“弹出窗口阻止程序” 1)打开IE浏览器,点击菜单栏“工具”-->“Internet选项”。 2)点击“隐私”按钮,进入IE浏览器安全性设置选项卡中。

3)去除“启用弹出窗口阻止程序”前面的勾,点击“确定”按钮,完成 设置。 三、安装“PDF文件阅读器” 建议安装AdobeReader10.0或以上版本PDF阅读器,安装完成后确认IE浏

览器“管理加载项”已启用。 1)打开IE浏览器,点击菜单栏“工具”-->“管理加载项”。 2)切换显示“未经许可运行”,确认加载项列表中有Adobe PDF Reader。 按照如上设置,如果申报人材料无法在IE浏览器中预览,可使用以下几种办法进行解决。 (1)关闭迅雷--浏览器下载响应 如果您安装了“迅雷”,请从设置中心中关闭“IE浏览器下载响应”。

(2)使用系统自带软件解决 如果您是“Windows10”操作系统,卸载Adobe Reader,使用系统自 带Microsoft Edge浏览器预览材料。 (3)安装其他PDF阅读器解决 安装“福昕PDF阅读器”,使用福昕阅读器预览材料。 (4)如果您是“Windows 64位”操作系统,请使用“C:\Program Files (x86)\Internet Explorer\iexplore.exe”32位版本IE浏览器进行 评审。 (5)以上方法都不能问题,请重置“IE浏览器” a)关掉ie浏览器(必须关闭)。 b)运行inetcpl.cpl命令,打开ie浏览器首选项。 c)切换至“高级”选项卡,删除个人设置,还原ie浏览器初始值。

Matlab第十章作业

Matlab 第十章作业 10.4考虑一个单位负反馈控制系统,其前向通道传递函数为: )5s (s 1)s (G 20+= 试应用Bode 图法设计一个超前校正装置)1 1()(++=Ts Ts K s G c c αα 使得校正后系统的相角裕度 50=γ,幅值裕度dB 10K g ≥,带宽 s /rad 2~1b =ω。其中,10<<α。试问已校正系统的谐振峰值r M 和谐振角频率 r ω的值各为多少? 解: ① 先建立超前校正函数fg_lead_pm (wc 未知) 函数语句如下 function [ngc,dgc]=fg_lead_pm(ng0,dg0,Pm,w) [mu,pu]=bode(ng0,dg0,w); [gm,pm,wcg,wcp]=margin(mu,pu,w); alf=ceil(Pm-pm+5); phi=(alf)*pi/180; a=(1+sin(phi))/(1-sin(phi)) ; a1=1/a%求参数α dbmu=20*log10(mu); mm=-10*log10(a); wgc=spline(dbmu,w,mm); T=1/(wgc*sqrt(a)); ngc=[a*T,1]; dgc=[T,1]; ② 建立M 文件l104其语句如下 ng0=[1];dg0=conv([1,0],conv([1,0],[1,5])); t=[0:0.01:5]; w=logspace(-3,2); g0=tf(ng0,dg0) b1=feedback(g0,1)%校正前系统闭环传函 [gm,pm,wcg,wcp]=margin(g0)%校正前参数 Pm=50; [ng1,dg1]=fg_lead_pm(ng0,dg0,Pm,w);%利用超前校正进行校正 g1=tf(ng1,dg1);%校正环节传递函数 g2=g0*g1;%校正后前向通道传函 [gm1,pm1,wcg1,wcp1]=margin(g2)%校正后系统参数 km1=20*log(gm1)%校正后系统幅值裕度工程表示 b2=feedback(g2,1);%校正后系统闭环传函

交易开拓者函数一览表文华对照

交易开拓者函数一览表(文华对照) 交易开拓者文华 数学函数 绝对值Abs ABS(X) 反余弦值Acos ACOS(X) 反双曲余弦值Acosh 反正弦值Asin ASIN(X) 反双曲正弦值Asinh 反正切值Atan ATAN(X) 给定的X及Y坐标值的反正切值Atan2 反双曲正切值Atanh 沿绝对值增大方向按基数舍入Ceiling 从给定数目的对象集合中提取若 Combin 干对象的组合数 余弦值Cos COS(X) 双曲余弦值Cosh 余切值Ctan 沿绝对值增大方向取整后最接近 Even 的偶数 e的N次幂Exp EXP(X) 数的阶乘Fact 沿绝对值减少的方向去尾舍入Floor

实数舍入后的小数值FracPart 实数舍入后的整数值IntPart 自然对数Ln LN(X) 对数Log LOG(X) 余数Mod MOD(A,B) 负绝对值Neq 指定数值舍入后的奇数Odd 返回PI Pi 给定数字的乘幂Power POW(A,B) 随机数Rand 按指定位数舍入Round 靠近零值,舍入数字RoundDown 远离零值,舍入数字RoundUp 数字的符号Sign SGN(X) 正弦值Sin 双曲正弦值Sinh SIN(X) 平方Sqr SQUARE(X) 正平方根Sqrt SQRT(X) 正切值Tan TAN(X) 双曲正切值Tanh 取整Trunc INTPART(X) 字符串函数

测试是否相同Exact 返回字符串中的字符数Len 大写转小写Lower 数字转化为字符串Text 取出文本两边的空格Trim 小写转大写Upper 文字转化为数字Value 颜色函数 黑色Black COLORBLACK 蓝色Blue COLORBLUE 青色Cyan COLORCYAN 茶色DarkBrown 深青色DarkCyan 深灰色DarkGray 深绿色DarkGreen 深褐色DarkMagenta 深红色DarkRed 默认颜色DefaultColor 绿色Green COLORGREEN 浅灰色LightGray COLORLIGHTGREY 紫红色Magenta COLORMAGENTA 红色Red COLORRED

浏览器兼容性问题及解决方案

浏览器兼容新问题 W3C对标准的推进,Firefox,Chrome,Safari,Opera的出现,结束了IE雄霸天下的日子。 然而,这对开发者来说,是好事,也是坏事。 说它是好事,是因为浏览器厂商为了取得更多的市场份额,会促使各浏览器更符合W3C标准,而得到更好的兼容性,并且,不同浏览器的扩展功能(例如-moz,-webkit开头的样式),对W3C标准也是个推进;说它是坏事,因为,多个浏览器同时存在,这些浏览器在处理一个相同的页面时,表现有时会有差异。这种差异可能很小,甚至不会被注意到;也可能很大,甚至造成在某个浏览器下无法正常浏览。我们把引起这些差异的问题统称为“浏览器兼容性问题”。而正是这些“浏览器兼容性问题”,无形中给我们的开发增加了不少难度。 从浏览器内核的角度来看,浏览器兼容性问题可分为以下三类: 1. 渲染相关:和样式相关的问题,即体现在布局效果上的问题。 2. 脚本相关:和脚本相关的问题,包括JavaScript和DOM、BOM方面的问题。对于某些浏览器的功能方面的特性,也属于这一类。 3. 其他类别:除以上两类问题外的功能性问题,一般是浏览器自身提供的功能,在内核层之上的。 例如下面的页面,是一个渲染相关的问题: 在各个浏览器中都表现的不同,这就属于兼容性问题。 造成浏览器兼容性问题的根本原因就是浏览器各浏览器使用了不同的内核,并且它们处理同一件事情的时候思路不同。 现今常见的浏览器及其排版引擎(又称渲染引擎)及脚本引擎,如下:

而造成浏览器兼容性问题的常见原因则是设计师写出了不规范的代码,不规范的代码会使不兼容现象更加突出。 例如: 不规则的嵌套: DIV 中直接嵌套LI 元素是不合标准的,LI 应该处于UL 内。此类问题常见的还有P 中嵌套DIV,TABLE等元素。 不规范的DOM接口和属性设置: 总之,人为的原因也占很大一部分。而人为造成兼容性问题的原因,除了粗心之外,大都源于浏览器bug 的存在,和开发者对标准的不了解。 比如,如果要做一个功能,功能是想让鼠标悬停在IMG 元素上方时,可以出现提示信息,经常针对IE 做开发的人,可能会使用IMG 元素的“alt” 属性,但其他浏览器中就是不给…alt? 属性面子。因为W3C 标准中规定要去做这件事的属性是”title“,大多浏览器符合标准,IE 不符合,这是IE 浏览器内核的问题;开发者不知道”title“ 才是正解,不遵循标准去写代码,是开发者的问题。所以,一个问题分两半,浏览器和开发者都有责任。 既然都有责任,就都有义务去解决兼容性问题。那么,从浏览器的角度来讲,它的厂商应该修复浏览器的bug和不合标准的地方,当某一天IE 的”alt“ 不能用于提示了,还有人用这个错误的属性去显示提示么?从开发者角度来讲,多了解标准,了解浏览器兼容性问题,就可以在开发的过程中,有效的避开兼容性问题,让你的页面在所有浏览器中畅通无阻。 废话少说,下面就讲讲如何有效的避免一些兼容性问题。 J AVA S CRIPT (4)

浏览器兼容性bug

常见浏览器兼容性问题与解决方案 标签:前端开发浏览器兼容问题 所谓的浏览器兼容性问题,是指因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况。在大多数情况下,我们的需求是,无论用户用什么浏览器来查看我们的网站或者登陆我们的系统,都应该是统一的显示效果。所以浏览器的兼容性问题是前端开发人员经常会碰到和必须要解决的问题。 在学习浏览器兼容性之前,我想把前端开发人员划分为两类: 第一类是精确按照设计图开发的前端开发人员,可以说是精确到1px的,他们很容易就会发现设计图的不足,并且在很少的情况下会碰到浏览器的兼容性问题,而这些问题往往都死浏览器的bug,并且他们制作的页面后期易维护,代码重用问题少,可以说是比较牢固放心的代码。 第二类是基本按照设计图来开发的前端开发人员,很多细枝末节差距很大,不如间距,行高,图片位置等等经常会差几px。某种效果的实现也是反复调试得到,具体为什么出现这种效果还模模糊糊,整体布局十分脆弱。稍有改动就乱七八糟。代码为什么这么写还不知所以然。这类开发人员往往经常为兼容性问题所困。修改好了这个浏览器又乱了另一个浏览器。改来改去也毫无头绪。其实他们碰到的兼容性问题大部分不应该归咎于浏览器,而是他们的技术本身了。 文章主要针对的是第一类,严谨型的开发人员,因此这里主要从浏览器解析差异的角度来分析兼容性问题。(相关文章推荐:主流浏览器CSS 3和HTML 5兼容清单) 浏览器兼容问题一:不同浏览器的标签默认的外补丁和内补丁不同 问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。 碰到频率:100% 解决方案:CSS里 *{margin:0;padding:0;} 备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设置各个标签的内外补丁是0。

HALCON 算子函数 整理 1-19章

halcon算子中文解释 comment ( : : Comment : ) 注释语句 exit ( : : : ) 退出函数 open_file ( : : FileName, FileType : FileHandle ) 创建('output' or 'append' )或者打开(output )文本文件 fwrite_string ( : : FileHandle, String : ) 写入string dev_close_window ( : : : ) 关闭活跃的图形窗口。 read_image ( : Image : FileName : ) ;加载图片 get_image_pointer1 ( Image : : : Pointer, Type, Width, Height ) 获得图像的数据。如:类型(= ' 字节',' ' ',uint2 int2 等等) 和图像的尺寸( 的宽度和高度) dev_open_window( : :Row,Column,WidthHeight,Background :WindowHandle ) 打开一个图形的窗口。 dev_set_part ( : : Row1, Column1, Row2, Column2 : ) 修改图像显示的位置 dev_set_draw (’fill’)填满选择的区域 dev_set_draw (’margin’)显示的对象只有边缘线, dev_set_line_width (3) 线宽用Line Width 指定 threshold ( Image : Region : MinGray, MaxGray : ) 选取从输入图像灰度值的g 满足下列条件:MinGray < = g < = MaxGray 的像素。 dev_set_colored (number) 显示region 是用到的颜色数目 dev_set_color ( : : ColorName : ) 指定颜色 connection ( Region : ConnectedRegions : : ) 合并所有选定像素触摸相互连通区 fill_up ( Region : RegionFillUp : : ) 填补选择区域中空洞的部分 fill_up_shape ( Region : RegionFillUp : Feature, Min, Max : ) select_shape ( Regions : SelectedRegions : Features, Operation, Min, Max : ) 选择带有某些特征的区域,Operation 是运算,如“与”“或” smallest_rectangle1 ( Regions : : : Row1, Column1, Row2, Column2 ) 以矩形像素坐标的角落,Column1,Row2(Row1,Column2) 计算矩形区域( 平行输入坐标轴) 。 dev_display ( Object : : : ) 显示图片 disp_rectangle1 ( : : WindowHandle, Row1, Column1, Row2, Column2 : ) 显示的矩形排列成的。disp_rectangle1 显示一个或多个矩形窗口的产量。描述一个矩形左上角(Row1,Column1) 和右下角(Row2,Column2) 。显示效果如图1. texture_laws ( Image : ImageT exture : FilterTypes, Shift, FilterSize : ) texture_laws 实行纹理变换图像FilterTypes: 预置的过滤器Shift :减少灰度变化FilterSize :过滤的尺寸 mean_image ( Image : ImageMean : MaskWidth, MaskHeight : ) 平滑图像, 原始灰度值的平均数MaskWidth: 过滤器的宽度面具 bin_threshold ( Image : Region : : ) 自动确定阈值 Region: 黑暗的区域的图像 dyn_threshold ( OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark : ) 比较两个像素的图像像素RegionDynThresh(Out) 分割区域Offset: 减少噪音引起的问题LightDark 提取光明、黑暗或类似的地方? dilation_circle ( Region : RegionDilation : Radius : ) 扩张有一个圆形结构元素的地区Radius 圆半径 complement ( Region : RegionComplement : : ) 返还补充的区域 reduce_domain ( Image, Region : ImageReduced : : ) 减少定义领域的图像

最全整理浏览器兼容性问题与解决方案样本

常用浏览器兼容性问题与解决方案所谓浏览器兼容性问题,是指由于不同浏览器对同一段代码有不同解析,导致页面显示效果不统一状况。在大多数状况下,咱们需求是,无论顾客用什么浏览器来查看咱们网站或者登陆咱们系统,都应当是统一显示效果。因此浏览器兼容性问题是前端开发人员经常会遇到和必要要解决问题。 在学习浏览器兼容性之前,我想把前端开发人员划分为两类: 第一类是精准按照设计图开发前端开发人员,可以说是精准到1px,她们很容易就会发现设计图局限性,并且在很少状况下会遇到浏览器兼容性问题,而这些问题往往都死浏览器bug,并且她们制作页面后期易维护,代码重用问题少,可以说是比较牢固放心代码。 第二类是基本按照设计图来开发前端开发人员,诸多细枝末节差距很大,不如间距,行高,图片位置等等经常会差几px。某种效果实现也是重复调试得到,详细为什么浮现这种效果还模模糊糊,整体布局十分脆弱。稍有改动就乱七八糟。代码为什么这样写还不知因此然。此类开发人员往往经常为兼容性问题所困。修改好了这个浏览器又乱了另一种浏览器。改来改去也毫无头绪。其实她们遇到兼容性问题大某些不应当归咎于浏览器,而是她们技术自身了。 文章重要针对是第一类,严谨型开发人员,因而这里重要从浏览器解析差别角度来分析兼容性问题。 浏览器兼容问题一:不同浏览器标签默认外补丁和内补丁不同 问题症状:随便写几种标签,不加样式控制状况下,各自margin 和padding差别较大。 遇到频率:100% 解决方案:CSS里*

备注:这个是最常用也是最易解决一种浏览器兼容性问题,几乎所有CSS文献开头都会用通配符*来设立各个标签内外补丁是0。 浏览器兼容问题二:块属性标签float后,又有横行margin状况下,在IE6显示margin比设立大 问题症状:常用症状是IE6中背面一块被顶到下一行 遇到频率:90%(稍微复杂点页面都会遇到,float布局最常用浏览器兼容问题)解决方案:在float标签样式控制中加入display:inline;将其转化为行内属性 备注:咱们最惯用就是div+CSS布局了,而div就是一种典型块属性标签,横向布局时候咱们普通都是用div float实现,横向间距设立如果用margin实现,这就是一种必然会遇到兼容性问题。 浏览器兼容问题三:设立较小高度标签(普通不大于10px),在IE6,IE7,遨游中高度超过自己设立高度 问题症状:IE6、7和遨游里这个标签高度不受控制,超过自己设立高度 遇到频率:60% 解决方案:给超过高度标签设立overflow:hidden;或者设立行高line-height 不大于你设立高度。 备注:这种状况普通出当前咱们设立小圆角背景标签里。浮现这个问题因素是IE8之前浏览器都会给标签一种最小默认行高高度。虽然你标签是空,这个标签高度还是会达到默认行高。 浏览器兼容问题四:行内属性标签,设立display:block后采用float布局,又有横行margin状况,IE6间距bug 问题症状:IE6里间距比超过设立间距 遇到几率:20%

怎么设置浏览器兼容模式和安全站点

怎么设置浏览器兼容模式和安全站点 网页中站点是easySite 内容管理平台主要管理的逻辑单元,站点管理是对一个Internet的站点进行组织、维护和管理的功能集合当我们在使用电脑时,很多时候都 需要用兼容性视图打开一些特殊的网站,与设置安全站点。下面小编就和大家分享下Win10系统IE和360浏览器浏览器兼容模式和安全站点的具体操作步骤。 设置浏览器兼容模式 1、打开IE浏览器,右击浏览器顶部,勾选菜单栏将菜单栏调出来。 2、找到工具菜单栏,下面有一个兼容性视图设置。 3、打开兼容性视图设置窗口,输入网站地址,单击添加按钮,网址就自动添加到下面的列表中,并勾选在兼容性视图中显示Internet站点。 4、如果是360浏览器,我们打开之后,在网址后面有一个闪电按钮,点击一下。会出现一个极速模式和兼容模式,我们选择兼容模式即可。(默认是极速模式)设置安全站点 1、有时候我们也需要设置一下安全站点,我们自己开发的网站或者公司自己的网站有时候需要进行这样的设置,打开IE浏览器,在工具菜单栏下找到Internet选项。 2、在安全选项卡,选择受信任站点,单击站点按钮。 3、输入网址添加进来,添加之前去掉https验证。 补充:浏览器常见问题分析 1.IE浏览器首次开机响应速度慢,需要数秒。搞定办法:IE下选择工具-internet 选项-连接-局域网设置-取消自动检测。 2. IE9图片显示不正常或干脆不显示,尤其是QQ空间搞定办法:工具-internet 选项-高级-加速图形-运用软件而非GPU 选择。 3. 打开网页显示【Internet Explorer 已不再尝试还原此网站。该网站看上去仍有 问题。您可以执行以下操作:转到首页】搞定方案:工具-internet选项-高级中关闭 【启用崩溃自动恢复】重新启动ie后即开。 4. 下载完所需安全控件也无法运用各种网银,付款时识别不出u盾搞定方案:据 提示下载银行安全控件并安装。插上u盾,拿建行为例:在开始菜单里-所有程序-中 国建设银行E路护航网银安全组件-网银盾管理工具打开后点击你的u盾并注册。然

MATLAB实验报告7.2.4

扬州大学实验报告纸 实验名称:7.2 控制原理仿真实验 班级:建电1102 姓名:葛嘉新 学号:111705205 7.2.4 控制系统的博德图 1.实验目的 (1)利用计算机作出开环系统的博德图; (2)观察记录控制系统的开环频域性能; (3)控制系统的开环频率特性分析。 2.实验步骤 (1)运行MATLAB (2)练习相关m 函数 1)博德图绘图函数 bode(sys) bode(sys,{wmin,wmax}) bode(sys,w) [m,p,w]=bode(sys) 函数功能:对数频率特性作图函数,即博德图作图。 2)对数分度函数 logspace(d1,d2) logspace(d1,d2,n) 函数功能:产生对数分度向量。 3)稳定裕度函数 margin(sys) [Gm,Pm,wg,wp]=margin(sys) [Gm,Pm,wg,wp]=margin(m,p,w) 函数功能:计算系统的稳定裕度、相位裕度Gm 和幅值裕度Pm 。 3.实验内容 (1)221 (s), 21 G T S TS ζ= ++{0.1 2,1,0.5,0.1,0.01T ζ== (分别作图并保持) >> n=1; >> d1=[0.01 0.4 1];d2=[0.01 0.2 1];d3=[0.01 0.1 1]; >> d4=[0.01 0.02 1];d5=[0.01 0.002 1]; %建立系统模型 >> bode(n,d1);hold on; %作博德图,并保持作图 >> bode(n,d2);bode(n,d3);bode(n,d4);bode(n,d5) >> grid %各系统博德图和网格线,如图1 -80-60-40-2002040M a g n i t u d e (d B ) 10 -1 10 10 1 10 2 10 3 -180-135-90-45 0P h a s e (d e g ) Bode Diagram Frequency (rad/sec) 图1 图1说明: 幅频特性中,ω=10时,最小的是ζ=2,最大的是ζ=0.01。相频特性中,ω=10时,越变最小的是ζ=2,越变最大的是ζ=0.01。 (2) 31.6 (s)(0.01+1)(0.1s+1) G s s = 要求: 1)作博德图,在曲线上标出: 幅频特性——初始段斜率、高频段斜率、开环截止频率、中频段穿越斜率。 相频特性——低频段渐进相位角、高频段渐进相位角、-180°线的穿越频率。 2)由稳定裕度命令计算系统的稳定裕度Lg 和γc ,并确定系统的稳定性; 3)在图上作近似折线特性相比较。 >> n=31.6;d=conv([0.01 1 0],[0.1 1]); >> sys=tf(n,d); >> margin(sys) >> hold on >> grid %博德图如下页图2

matlab的实验指导

实验一、MATLAB 语言的符号运算 1、实验目的 (1)学习MATLAB 语言的基本符号运算; (2)学习MATLAB 语言的矩阵符号运算; 2、实验内容 (1)基本符号运算 1) 符号微分、积分 syms t f1=sin (2*t); df1=diff(f1) if1=int (f1) 2) 泰勒级数展开 tf1=taylor (f1,8) 3) 符号代数方程求解 syms a b c x; f=a*x^2+b*x+c; ef=solve (f) 4) 符号微分方程求解 f=’D2x+2*Dx+10*x=0’;g=’Dx(0)=1,x(0)=0’; dfg=dsolve(f,g) 求满足初始条件的二阶常系数齐次微分方程的特解: 2|,4|,020'022-===++==t t s s s dt ds dt s d 5) 积分变换 syms t f1=exp(-2*t)*sin (5*t)

F1=laplace(f1) F2=ilaplace(F1) (2) 符号矩阵运算 1)创建与修改符号矩阵 G1=sym(‘[1/(s+1),s/(s+1)/(s+2);1/(s+1)/(s+2),s/(s+2)]’) G2=subs(G1,G1(2,2),’0’) G3=G1(1,1) 2)常规符号运算 syms s d1=1/(s+1);d2=1/(s+2);d=d1*d2 ad=sym(‘[s+1 s;0 s+2]’); G=d*ad n1=[1 2 3 4 5];n2=[1 2 3]; p1=poly2sym (n1);p2=poly2sym(n2); p=p1+p2 pn=sym2poly(p) 实验二、控制系统的阶跃响应 一、实验目的 (1)观察学习控制系统的单位阶跃响应; (2)记录单位阶跃响应曲线 (3)观察时间响应分析的一般方法 二、实验步骤 (1)运行MATLAB

如何解决不同浏览器之间的兼容性问题

如何解决不同浏览器之间的兼容性问题 常见的浏览器兼容性问题与解决方案大致有以下九种形式: 一、不同浏览器的标签默认的外边界和内填充不同 问题表现:不加样式控制下,margin和padding差异较大 解决方案:css里*{margin:0; padding:0;} 备注:这是最常见也是最易解决的一个兼容问题,几乎所有的css文件开头都会用通配符*来设置各个标签外边界和内填充为0 二、块属性标签float后,又有横向的margin情况下,在IE6显示mar gin比设置的大 问题表现:IE6后面的一块被顶到下一行 解决方案:在float的标签样式控制中加入display:inline;转化为行内属性 备注:横向浮动的div布局,使用上margin进行边界设置时,必然会碰到此问题 三、设置较小高度标签(一般小于10px),在IE6、IE7,遨游中高度超出设置高度值

问题表现:IE6、7和遨游里这个标签的高度不受控制,超出自己设置的高度 解决方案:给超出高度的标签设置overflow:hidden;或者设置行高line-he ight小于你设置的高度 备注:一般出现在设置小圆角背景的标签里。出现该问题原因是IE8之前的浏览器都会给标签一个最小默认行高的高度,即使标签是空内容,标签的高度还是会有默认行高。 四、行内属性标签,设置display:block后采用float布局,又有横向的m argin情况,IE6间距bug 问题表现:IE6的间距比超过设置的间距 解决方案:在display:block;后面加入display:inline;display:table; 备注:行内属性标签,为了设置宽度,需要设置为display:block;(表单元素除外)在用float布局且有横向margin后,在IE6下,就具有了块属性float后的横向margin的bug。由于设置为display:inline,高度失效,所有在后面补上display:table。 五、图片默认有间距

自控讲义(完全版)

1. 成绩: 报告50%:最多三页,不许打印。注意格式填写全,否则扣分;主体部分包括: 实验目的,实验内容,源程序及必要的注释,实验总结) 实验50%:(1)纪律10%, ⑵回答问题10%:①必答题,抽到必答。主要考察考察预习情况和对 相应理论掌握情况 ②选答题,答对加分,答错不扣分。与课堂内容有 关,略有深度,依学号末位随机抽取。每次人数不 定。 ⑶实验能力30%:能独立完成实验,且完成用时较少者分最高。 2. 交报告时间:二次上课时交第一次报告,依此类推,最后一次由班长收齐交到 我办公室教6-816 研究自控课程的意义:苏27,901雷达,孵化器 实验一 系统的动态响应 一、实验目的 1、掌握一阶系统和二阶系统的非周期信号响应。 2、理解二阶系统的无阻尼、欠阻尼、临界阻尼和过阻尼。 3、掌握分析系统稳定性、瞬态过程和稳态误差的方法。 4、理解高阶系统的主导极点对系统特性的影响。 5、理解系统的零点对系统动态特性的影响。 二、实验内容(讲一个(M 文件和SIMULINK 两种方法),练一个,报告上写一个) 1、(讲解演示) 系统框图如下所示, (1) 若2()210 G s s s =++,求系统的单位阶跃响应。 (2)分析系统的稳定性。(举例说明研究稳定性的意义,判断准则) 我们采用matlab 进行分析步骤 (1)采用M 文件求解

步骤:a.新建一个m文件 b.输入系统的传递函数 c.分析系统的稳定性(根据线性系统稳定的充分必要条件:闭环系统特征方程D(s)=0的所有根均具有负实部,只要求出系统极点,由其实部可得到系统稳定性) d.输入为单位阶跃信号时,求系统的响应 example1.m: numg=[10] %分子多项式 deng=[1 2 10] %分母多项式 sys1=tf(numg,deng) %tf函数构造开环传递函数G(s) sys=feedback(sys1,1) % 求得闭环传递函数 pole(sys) % 求系统极点,即特征方程的根 step(sys) % 求阶跃响应 grid on 运行结果:ans = 极点 -1.0000 + 4.3589i -1.0000 - 4.3589i

自动控制原理常用名词解释

词汇 第一章 自动控制 ( Automatic Control) :是指在没有人直接参与的条件下,利用控制装置使被控对象的某些物理量(或状态)自动地按照预定的规律去运行。 开环控制 ( open loop control ):开环控制是最简单的一种控制方式。它的特点是,按照控制信息传递的路径,控制量与被控制量之间只有前向通路而没有反馈通路。也就是说,控制作用的传递路径不是闭合的,故称为开环。 闭环控制 ( closed loop control) :凡是将系统的输出量反送至输入端,对系统的控制作用产生直接的影响,都称为闭环控制系统或反馈控制 Feedback Control 系统。这种自成循环的控制作用,使信息的传递路径形成了一个闭合的环路,故称为闭环。 复合控制 ( compound control ):是开、闭环控制相结合的一种控制方式。 被控对象:指需要给以控制的机器、设备或生产过程。被控对象是控制系统的主体,例如火箭、锅炉、机器人、电冰箱等。控制装置则指对被控对象起控制作用的设备总体,有测量变换部件、放大部件和执行装置。 被控量 (controlled variable ) :指被控对象中要求保持给定值、要按给定规律变化的物理量。被控量又称输出量、输出信号。 给定值 (set value ) :是作用于自动控制系统的输入端并作为控制依据的物理量。给定值又称输入信号、输入指令、参考输入。 干扰 (disturbance) :除给定值之外,凡能引起被控量变化的因素,都是干扰。干扰又称扰动。 第二章 数学模型 (mathematical model) :是描述系统内部物理量(或变量)之间动态关系的数学表达式。 传递函数 ( transfer function) :线性定常系统在零初始条件下,输出量的拉氏变换与输入量的拉氏变换之比,称为传递函数。 零点极点 (z ero and pole) :分子多项式的零点(分子多项式的根)称为传递函数的零点;分母多项式的零点(分母多项式的根)称为传递函数的极点。 状态空间表达式 (state space model) :由状态方程与输出方程组成,状态方程是各状态变量的一阶导数与状态、输入之间的一阶微分方程组。输出方程是系统输出与状态、输入之间的关系方程。 结构图 (block diagram) :将传递函数与第一章介绍的定性描述系统的方框图结合起来,就产生了一种描述系统动态性能及数学结构的方框图,称之为系统的动态结构图。 信号流图 (signal flow diagram) :是表示复杂控制系统中变量间相互关系的另一种图解法,由节点和支路组成。 梅逊公式 (Mason's gain formula) :利用梅逊增益公式,可以直接得到系统输出量与输入变量之间的传递函数。 第三章 时域 (time domain) :一种数学域,与频域相区别,用时间 t 和时间响应来描述系统。 一阶系统 ( first order system) :控制系统的运动方程为一阶微分方程,称为一阶系统。 二阶系统 ( s econd order system) :控制系统的运动方程为二阶微分方程,称为二阶系统。 单位阶跃响应 ( unit step response) :系统在零状态条件下,在单位阶跃信号作用下的响应称单位阶跃响应。 阻尼比ζ (damping ratio) :与二阶系统的特征根在 S 平面上的位置密切相关,不同阻尼比

最全整理浏览器兼容性问题与解决方案

常见浏览器兼容性问题与解决方案 所谓的浏览器兼容性问题,是指因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况。在大多数情况下,我们的需求是,无论用户用什么浏览器来查看我们的网站或者登陆我们的系统,都应该是统一的显示效果。所以浏览器的兼容性问题是前端开发人员经常会碰到和必须要解决的问题。 在学习浏览器兼容性之前,我想把前端开发人员划分为两类: 第一类是精确按照设计图开发的前端开发人员,可以说是精确到 1px 的,他们很容易就会发现设计图的不足,并且在很少的情况下会碰到浏览器的兼容性问题,而这些问题往往都死浏览器的 bug,并且他们制作的页面后期易维护,代码重用问题少,可以说是比较牢固放心的代码。 第二类是基本按照设计图来开发的前端开发人员,很多细枝末节差距很大,不如间距,行高,图片位置等等经常会差几 px。某种效果的实现也是反复调试得到,具体为什么出现这种效果还模模糊糊,整体布局十分脆弱。稍有改动就乱七八糟。代码为什么这么写还不知所以然。这类开发人员往往经常为兼容性问题所困。修改好了这个浏览器又乱了另一个浏览器。改来改去也毫无头绪。其实他们碰到的兼容性问题大部分不应该归咎于浏览器,而是他们的技术本身了。 文章主要针对的是第一类,严谨型的开发人员,因此这里主要从浏览器解析差异的角度来分析兼容性问题。 浏览器兼容问题一:不同浏览器的标签默认的外补丁和内补丁不同 问题症状:随便写几个标签,不加样式控制的情况下,各自的 margin 和 padding 差异较大。 碰到频率 :100% 解决方案: CSS 里 * 备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的 CSS 文件开头都会用通配符 * 来设置各个标签的内外补丁是 0。 浏览器兼容问题二:块属性标签 float 后,又有横行的 margin 情况下,在 IE6 显示margin 比设置的大 问题症状 :常见症状是 IE6 中后面的一块被顶到下一行 碰到频率: 90%(稍微复杂点的页面都会碰到, float 布局最常见的浏览器兼容问题) 解决方案:在 float 的标签样式控制中加入 display:inline; 将其转化为行内属性

vf常用函数列表

? 在下一行显示表达式串 ?? 在当前行显示表达式串 @... 将数据按用户设定的格式显示在屏幕上或在打印机上打印 ACCEPT 把一个字符串赋给内存变量 APPEND 给数据库文件追加记录 APPEND FROM 从其它库文件将记录添加到数据库文件中 AVERAGE 计算数值表达式的算术平均值 BROWSE 全屏幕显示和编辑数据库记录 CALL 运行内存中的二进制文件 CANCEL 终止程序执行,返回圆点提示符 CASE 在多重选择语句中,指定一个条件 CHANGE 对数据库中的指定字段和记录进行编辑 CLEAR 清洁屏幕,将光标移动到屏幕左上角 CLEAR ALL 关闭所有打开的文件,释放所有内存变量,选择1号工作区 CLEAR FIELDS 清除用SET FIELDS TO命令建立的字段名表 CLEAR GETS 从全屏幕READ中释放任何当前GET语句的变量CLEAR MEMORY 清除当前所有内存变量 CLEAR PROGRAM 清除程序缓冲区 CLEAR TYPEAHEAD 清除键盘缓冲区 CLOSE 关闭指定类型文件 CONTINUE 把记录指针指到下一个满足LOCATE命令给定条件

的记录,在LOCATE命令后出现。无LOCATE则出错 COPY TO 将使用的数据库文件复制另一个库文件或文本文件 COPY FILE 复制任何类型的文件 COPY STRUCTURE EXTENED TO 当前库文件的结构作为记录,建立一个新的库文件 COPY STRUCTURE TO 将正在使用的库文件的结构复制到目的库文件中 COUNT 计算给定范围内指定记录的个数 CREATE 定义一个新数据库文件结构并将其登记到目录中 CREATE FROM 根据库结构文件建立一个新的库文件 CREATE LABEL 建立并编辑一个标签格式文件 CREATE REPORT 建立宾编辑一个报表格式文件 DELETE 给指定的记录加上删除标记 DELETE FILE 删除一个未打开的文件 DIMENSION 定义内存变量数组 DIR 或DIRECTORY 列出指定磁盘上的文件目录 DISPLAY 显示一个打开的库文件的记录和字段 DISPLAY FILES 查阅磁盘上的文件 DISPLAY HISTORY 查阅执行过的命令 DISPLAY MEMORY 分页显示当前的内存变量 DISPLAY STATUS 显示系统状态和系统参数 DISPLAY STRUCTURE 显示当前书库文件的结构

如何解决IE兼容性问题

2010-12-06 14:57:49 作者:wwwbjcitycn 来源:浏览次数:548 网友评论 0 条 摘要:所谓的浏览器兼容性问题,是指因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况,在大多数情况下,我们的需求是,无论用户用什么浏览器来查看我们的网站或者登陆我... 所谓的浏览器兼容性问题,是指因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况,在大多数情况下,我们的需求是,无论用户用什么浏览器来查看我们的网站或者登陆我们的系统,都应该是统一的显示效果。随着浏览器版本的增多,解决IE 浏览器兼容性显得尤为重要. 一、!important (功能有限) 随着IE7对!important的支持, !important 方法现在只针对IE6的兼容.(注意写法.记得该声明位置需要提前.) 例如: #example { width: 100px !important; /* IE7+FF */ width: 200px; /* IE6 */ } 二、CSS HACK的方法(新手可以看看,高手就当路过吧) 首先需要知道的是: 所有浏览器通用 height: 100px; IE6 专用 _height: 100px; IE7 专用 *+height: 100px; IE6、IE7 共用 *height: 100px; IE7、FF 共用 height: 100px !important; 例如: #example { height:100px; } /* FF */ * html #example { height:200px; } /* IE6 */ *+html #example { height:300px; } /* IE7 */ 下面的这种方法比较简单 举几个例子: 1、IE6 - IE7+FF #example { height:100px; /* FF+IE7 */ _height:200px; /* IE6 */ } 其实这个用上面说的第一种方法也可以 #example { height:100px !important; /* FF+IE7 */ height:200px; /* IE6 */ } 2、IE6+IE7 - FF #example { height:100px; /* FF */

控制系统的波得图

实验5 控制系统的波得图 一.实验目的 1.利用计算机作出开环系统的波得图; 2. 观察记录控制系统的开环频域性能; 3.控制系统的开环频率特性分析。 二.实验步骤 1.在Windows界面上用鼠标双击matlab图标,即可打开MATLAB命令平台。 2. 练习相关M函数 波德图绘图函数: bode(sys) bode(sys,{wmin,wmax}) bode(sys,w) [m,p,w]=bode(sys) 函数功能:对数频率特性作图函数,即波得图作图。 格式1:给定开环系统的数学模型对象sys作波得图,频率向量w自动给出。 格式2:给定变量w的绘图区间为{wmin,wmax}。 格式3:频率向量w由人工给出。w的单位为[弧度]/秒,可以由命令logspace 得到对数等分的w值。 格式3:返回变量格式,不作图。 m为频率特性G(jω)的幅值向量,p为频率特性的G(jω)幅角向量,w为频率向量。 例如,系统开环传递函数为 作图程序为 num=[10]; den=[1 2 10]; bode(num,den); 或者给定人工变量 w=logspace(-1,1,32); bode(num,den,w); 对数分度函数: logspace(d1,d2) logspace(d1,d2,n) 函数功能:产生对数分度向量。 格式1:从10d1到10d2之间作对数等分分度,产生50个元素的对数等间隔向量。 格式2:从10d1到10d2之间作对数等分分度,给定等分数n。 半对数绘图函数: semilogx(…) 函数功能:半对数绘图命令。

使用格式:横坐标为对数等分分度,其它与plot()命令的使用格式相同。 对于上述系统作对数幅频特性。程序为 w=logspace(-1,1,32); % w 范围和点数n mag=10./((i*w).^2+2.*(i*w)+10); % 计算模值 L=20*log(abs(mag)); % 模取对数 semilogx(w,L); % 半对数作图 grid % 画网格线 稳定裕度函数: margin(sys) [Gm,Pm,wg,wp]= margin(sys) [Gm,Pm,wg,wp]= margin(m,p,w) 函数功能:计算系统的稳定裕度,相位裕度Gm 和幅值裕度Pm 。 格式1:给定开环系统的模型对象sys 作波得图,并在图上标注幅值裕度Gm 和 对应的频率wg ,相位裕度Pm 和对应的频率wp 。 格式2:返回变量格式,不作图。返回幅值裕度Gm 和对应的频率wg ,相位裕度 Pm 和对应的频率wp 。 格式3:给定频率特性的参数向量,幅值m ,相位p 和频率w ,由插值法计算幅值裕度Gm 和对应的频率wg ,相位裕度Pm 和对应的频率wp 。 三.实验内容 1. ) 11.0)(101.0(6.31)(1++= s s s s G (1) 作波得图,在曲线上标出: 幅频特性--初始段斜率.高频段斜率.开环截止频率 相频特性---180°线的穿越频率。 num=[31.6]; den=[0.001 0.11 1 0]; bode(num,den); grid

相关主题
文本预览
相关文档 最新文档