Eigenvectors and eigenvalues
http://setosa.io/ev/eigenvectors-and-eigenvalues/
Explained Visually
By Victor Powell and Lewis Lehe
Eigenvalues/vectors are instrumental to understanding electrical circuits, mechanical systems, ecology and even Google's PageRank algorithm.
Let's see if visualization can make these ideas more intuitive.
To begin, let v be
a 2-dimensional vector (shown as a point) and A be
a matrix with columns a1 and a2 (shown
as arrows). If we multiply v by A,
then A sends v to
a new vector Av.
If you can draw a line through (0,0), v and Av,
then Av is
just v multiplied
by a number λ;
that is, Av=λv.
In this case, we call λ an eigenvalue and v an eigenvector.
For example, here (1,2) is
an eigvector and 5 an
eigenvalue.
Below, change the bases of A and
drag v to
be its eigenvector. Note two facts: First, every point on the same line as an eigenvector is another eigenvector. That line is an eigenspace. Second, when λ<1, Av is
closer to (0,0) than v;
and when λ>1,
it's farther away.
What are eigenvalues/vectors good for?
Eigenvalues/vectors explain the behavior of systems that evolve step-by-step, where each step occurs as multiplication by a matrix A.
If you keep multiplying v by A,
you get a sequence v,Av,A2v, etc.
As you can see below, eigenspaces attract this sequence and draw it toward (0,0) or
farther away, depending on their eigenvalues.
Let's explore some applications and properties of these sequences.
Fibonacci Sequence
Suppose you have some amoebas in a petri dish. Every minute, all adult amoebas produce one child amoeba, and all child amoebas grow into adults (Note: this is not really how amoebas reproduce.). So if t is
a minute, the equation of this system is
which we can rewrite in matrix form like
Below, press "Forward" to step ahead a minute. The total population is the Fibonacci Sequence.
forward
As you can see, the system goes toward the grey line, which is an eigenspace with λ=(1+5√)/2>1.
Steady States
Suppose that, every year, a fraction p of
New Yorkers move to California and a fraction q of
Californians move to New York. Drag the circles to decide these fractions and the number starting in each state.
New YorkCalifornia1 − p = 0.7p = 0.3q = 0.11 − q = 0.938.33m19.65m
To understand the system better, we can start by writing it in matrix terms like:
Yorkt+1Californiat+1)==Avt(1−pqp1−q)⋅(New
YorktCaliforniat)
It turns out that a matrix like A,
whose rows add up to zero (try it!), is called a Markov matrix, and it always has λ=1 as
an eigenvalue. That means there's a value of vt for
which Avt=λvt=1vt=vt.
At this "steady state," the same number of people move in each direction, and the populations stay the same forever. Hover over the animation to see the system go to the steady state.
Complex eigenvalues
So far we've only looked at systems with real eigenvalues. But looking at the equation Av=λv,
who's to say λand v can't
have some imaginary part? That it can't be a complex number? For example,
Here, 1+i is
an eigenvalue and (1,i) is
an eigenvector.
If a matrix has complex eigenvalues, its sequence spirals around (0,0).
To see this, drag A's
columns (the arrows) around until you get a spiral. The eigenvalues are plotted in the real/imaginary plane to the right. You'll see that whenever the eigenvalues have an imaginary part, the system spirals, no matter where you start things off.
steps: -3-2-1123-3-2-1123-33-33-33-33realimrealimλ₀λ₁
Learning more
We've really only scratched the surface of what linear algebra is all about. To learn more, check out the legendary Gilbert Strang's Linear
Algebra course at MIT's Open Courseware site. To get more practice with applications of eigenvalues/vectors, also ceck out the excellent Differential
Equations course.
For more explanations, visit the Explained Visually project homepage.
Or subscribe to our mailing list
Eigenvectors and eigenvalues的更多相关文章
- A Beginner’s Guide to Eigenvectors, PCA, Covariance and Entropy
A Beginner’s Guide to Eigenvectors, PCA, Covariance and Entropy Content: Linear Transformations Prin ...
- <<Numerical Analysis>>笔记
2ed, by Timothy Sauer DEFINITION 1.3A solution is correct within p decimal places if the error is l ...
- opencv 61篇
(一)--安装配置.第一个程序 标签: imagebuildincludeinputpathcmd 2011-10-21 16:16 41132人阅读 评论(50) 收藏 举报 分类: OpenCV ...
- A geometric interpretation of the covariance matrix
A geometric interpretation of the covariance matrix Contents [hide] 1 Introduction 2 Eigendecomposit ...
- OpenCV LDA(Linnear Discriminant analysis)类的使用---OpenCV LDA演示样例
1.OpenCV中LDA类的声明 //contrib.hpp class CV_EXPORTS LDA { public: // Initializes a LDA with num_componen ...
- 三种方法实现PCA算法(Python)
主成分分析,即Principal Component Analysis(PCA),是多元统计中的重要内容,也广泛应用于机器学习和其它领域.它的主要作用是对高维数据进行降维.PCA把原先的n个特征用数目 ...
- Oja’s rule
目录 Oja's rule 背景 Hebbian learning 主要的一些理论 论文里面一些主要的假设 引理1 引理2 引理3 定理1 LEMMA 3(ALL) 引理 4 定理 2 定理 3(关于 ...
- <Numerical Analysis>(by Timothy Sauer) Notes
2ed, by Timothy Sauer DEFINITION 1.3A solution is correct within p decimal places if the error is l ...
- [BOOK] Applied Math and Machine Learning Basics
<Deep Learning> Ian Goodfellow Yoshua Bengio Aaron Courvill 关于此书Part One重难点的个人阅读笔记. 2.7 Eigend ...
随机推荐
- 【Windows phone 8】欢迎引导页面02
[目标]前一篇文章已经实现了图片的切换,这里需要限制pivot的循环滚动. [思路]通过手势事件,对第一张,最后一张图片处加以限制 [前台] 在pivot处加上 <toolkit:Gesture ...
- delphi数组作为参数传值
在函数中如果数组的个数不定,可以使用开放数组参数 实参可以接受静态数组和动态数组 procedure p1(a:array of Byte); begin ShowMessage( IntToHex( ...
- 2016科幻惊悚《第五波》HD720P.中英双字
导演: J·布莱克森编剧: 苏珊娜·格兰特 / 阿齐瓦·高斯曼 / 杰夫·皮克纳 / 瑞克·杨西主演: 科洛·莫瑞兹 / 尼克·罗宾森 / 朗·里维斯顿 / 玛姬·丝弗 / 亚历克斯·罗伊 / 更多. ...
- 侧滑SilidingMenu ,ViewPager 和,PagerIndicator 冲突
今天敲代码过程中发现再ViewPager 页面中禁用的SilidingMenu侧滑菜单突然失效了,那么肯定是添加的PagerIndicator的问题, 然后我发现 把setOnPageChangeLi ...
- Java系列: 关于HttpSessionListener的sessionDestroyed什么时候触发
根据书本写了下面这个监听器,然后开始调试,打开一个浏览器来访问该网页,可以正常触发sessionCreated,然后关闭浏览器,发现没有触发sessionDestroyed,然后我怀疑是不是这个监听器 ...
- [CareerCup] 13.6 Virtual Destructor 虚析构函数
13.6 Why does a destructor in base class need to be declared virtual? 这道题问我们为啥基类中的析构函数要定义为虚函数.首先来看下面 ...
- 信息安全系统设计基础_exp3
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1353 姓名:吴子怡.郑伟 学号:20135313.20135322 指导教师: 娄嘉鹏 实验 ...
- 从实用主义深入理解c++虚函数
记得几个月前看过C++虚函数的问题,当时其实就看懂了,最近笔试中遇到了虚函数竟然不太确定,所以还是理解的不深刻,所以想通过这篇文章来巩固下. 装逼一刻: 最近,本人思想发生了巨大的转变,在大学的时候由 ...
- C#基础知识系列四(运算符汇总)
前言 本节主要来讲C#中的各种运算符.主要包括is运算符.as运算符.checked和unchecked运算符.sizeof运算符.空接合运算符(??).&和&&.移位运算符 ...
- jQuery应用之(一)使用jQuery选择器(荐)
如上文(地址)jQuery预先的javascript的编程,提供了计划所有css3下的标准选择器,开发者可以利用这些选择器轻松选择各种元素,供javascript使用. 重要的是jQuery对这些选择 ...