24小时热门版块排行榜    

查看: 4714  |  回复: 25

学虫dj

金虫 (正式写手)

[求助] 为什么我用matlab中的eig函数求实对称矩阵的特征值有负数???? 已有3人参与

我在网上也查了一下,都说实对称矩阵的特征值应该是非负的。
但是我用matlab中的eig函数求【  矩阵G的转置乘以G 】GT*G   的特征值中竟然有负数。
这是为什么呢?
回复此楼
穷则独善其事,达则兼济天下
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

mygt_hit

专家顾问 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
学虫dj: 金币+10 2015-11-09 08:45:35
引用回帖:
4楼: Originally posted by 学虫dj at 2015-11-08 10:41:39
嗯 你说的很有道理   我百度了一下,也查到了一些结果像你一样的结论  。但是也就证明应该是非负的下面我给你两个截图 你看看这结论是不是矛盾的

火狐截图_2015-11-08T02-30-14.432Z.png

火狐截图_2015-11-08T02 ...

你给的证据是对的,对于你给的这种特殊的对称阵(形如G’G),应该是半正定的,即特征值非负。
正定矩阵的定义是符合x'Ax >0的对称阵(也有更广义的定义,定义只符合x'Ax>0的矩阵为正定阵,即去掉了对称性要求)。也就是说正定是比对称更强的条件,对称阵不一定正定,正定阵一定是对称的。对称是正定的必要不充分条件。
正定阵有一些特性:特征值全部大于0,主元全部大于0,顺序主子式全部大于0,还有其他一些信息可以参考维基百科:https://en.wikipedia.org/wiki/Positive-definite_matrix

所以如果出现负特征值,很可能是软件算错了。
知其然,知其所以然。
22楼2015-11-08 12:38:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mygt_hit

专家顾问 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
实对称阵的特征值全为实数、不同特征值对于的特征向量正交,不一定是正的。举个简单例子,负单位阵,特征值为-1.
知其然,知其所以然。
2楼2015-11-06 13:16:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

virtualzx

木虫 (著名写手)

G是不是实矩阵?另外负特征值有多大?

只有实矩阵才能保证G^T.G半正定

发自小木虫IOS客户端
3楼2015-11-06 17:23:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sk时空

新虫 (小有名气)

拜托,实对称是实数,正定矩阵才是非负

发自小木虫Android客户端
5楼2015-11-08 10:44:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sk时空

新虫 (小有名气)

学虫dj: 回帖置顶 2015-11-09 08:46:55
你应该说正定矩阵。而不是实对称,当然正定也是实对称。可能是你的矩阵并不对称吧。

发自小木虫Android客户端
6楼2015-11-08 10:45:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sk时空

新虫 (小有名气)

引用回帖:
7楼: Originally posted by 学虫dj at 2015-11-08 10:46:30
1、G是实矩阵,但是里面的元素有正数也有负数。
2、负数的特征很大 ,我查百度的时候也看到,可能是用很小的负数代替了0,但不是这样  我得到的负数很大。...

你用别的软件试试。matlab好像用的lapack吧。

发自小木虫Android客户端
9楼2015-11-08 10:49:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sk时空

新虫 (小有名气)

引用回帖:
8楼: Originally posted by 学虫dj at 2015-11-08 10:48:51
也就是实对称矩阵的特征值有正数也可以有负数,而正定矩阵的特征值才必须是非负的?...

GGT应该是正定的,出现负的就是有问题。

发自小木虫Android客户端
10楼2015-11-08 10:50:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sk时空

新虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
引用回帖:
11楼: Originally posted by 学虫dj at 2015-11-08 10:53:08
1、我不确定我的矩阵是不是正定的,所以不能那么说。
2、我的矩阵肯定是对称的 ,因为矩阵G‘G,就是一个矩阵乘以本身的转置.
3、正定矩阵和实对称矩阵是什么关系,正定矩阵一定是实对称矩阵,但是实对称矩阵不一 ...

1,2:GG'是正定。3:正定?实对称

发自小木虫Android客户端
12楼2015-11-08 10:56:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sk时空

新虫 (小有名气)

引用回帖:
20楼: Originally posted by 学虫dj at 2015-11-08 11:19:33
你确定GG’必须为正定矩阵吗?有什么根据?或者发链接给我。
下面是我用matlab求Chollesky分解来判断矩阵是否正定,下面是链接
http://blog.sina.com.cn/s/blog_6292266201019yne.html

捕获.PNG
...

4楼。理论证明很简单的。

发自小木虫Android客户端

» 本帖已获得的红花(最新10朵)

23楼2015-11-08 13:10:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

学虫dj

金虫 (正式写手)

学虫dj: 回帖置顶 2015-11-09 08:54:05
在提问之余我也没闲着,我也在网上找答案。我总结一下
1、当A为方阵的时候,AA‘(就是A本身乘以A的转置)为对称正定矩阵,所以这样的矩阵的特征值应该是非负的。而当A为奇异矩阵的时候,用matlab算出来的特征值就很小的负数,应该近似为零。
2、当A为m*n矩阵的时候即不是方阵时,AA'对实对称矩阵,但不一定是正定的,因此矩阵AA'的特征值应该有负数,而奇异值是不能有负数的。
这样解释,回复的答案就基本上都对了。
穷则独善其事,达则兼济天下
25楼2015-11-09 08:53:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

学虫dj

金虫 (正式写手)

引用回帖:
2楼: Originally posted by mygt_hit at 2015-11-06 13:16:10
实对称阵的特征值全为实数、不同特征值对于的特征向量正交,不一定是正的。举个简单例子,负单位阵,特征值为-1.

嗯 你说的很有道理   我百度了一下,也查到了一些结果像你一样的结论  。但是也就证明应该是非负的下面我给你两个截图 你看看这结论是不是矛盾的
为什么我用matlab中的eig函数求实对称矩阵的特征值有负数????
火狐截图_2015-11-08T02-30-14.432Z.png


为什么我用matlab中的eig函数求实对称矩阵的特征值有负数????-1
火狐截图_2015-11-08T02-38-20.034Z.png

穷则独善其事,达则兼济天下
4楼2015-11-08 10:41:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

学虫dj

金虫 (正式写手)

引用回帖:
3楼: Originally posted by virtualzx at 2015-11-06 17:23:32
G是不是实矩阵?另外负特征值有多大?
只有实矩阵才能保证G^T.G半正定

1、G是实矩阵,但是里面的元素有正数也有负数。
2、负数的特征很大 ,我查百度的时候也看到,可能是用很小的负数代替了0,但不是这样  我得到的负数很大。
穷则独善其事,达则兼济天下
7楼2015-11-08 10:46:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

学虫dj

金虫 (正式写手)

引用回帖:
5楼: Originally posted by sk时空 at 2015-11-08 10:44:22
拜托,实对称是实数,正定矩阵才是非负

也就是实对称矩阵的特征值有正数也可以有负数,而正定矩阵的特征值才必须是非负的?
穷则独善其事,达则兼济天下
8楼2015-11-08 10:48:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 学虫dj 的主题更新
信息提示
请填处理意见