review tools for code and calc linear algebra debugging
play

Review: Tools for Code and Calc/Linear Algebra Debugging - PowerPoint PPT Presentation

Review: Tools for Code and Calc/Linear Algebra Debugging Math: directional derivatives our convention is a vector is always a column vector. vector-vector


  1. Review: ¡Tools ¡for ¡Code ¡and ¡ Calc/Linear ¡Algebra ¡Debugging

  2. • Math: directional ¡derivatives our ¡convention ¡is ¡a ¡vector ¡is ¡always ¡a ¡column ¡vector. • vector-­‑vector ¡products ¡(also ¡known ¡as ¡a ¡dot ¡ • product). ¡ Notation ¡a^T b ¡(results ¡in ¡a ¡scalar). Matlab (mostly ¡I'd ¡focus ¡on ¡doing ¡the ¡things ¡you ¡reviewed ¡in ¡linear ¡algebra, ¡in • -­‑ Outer ¡products: ¡a ¡b^T -­‑ how ¡to ¡create ¡row ¡vectors, ¡column ¡vectors ¡(comma ¡vs ¡semicolon) matrix ¡vector ¡multiplication ¡A ¡b ¡(results ¡in ¡a ¡column ¡ • -­‑ demonstrate ¡the ¡same ¡kind ¡of ¡things ¡covered ¡in ¡linear ¡algebra ¡(inner ¡product vector) ¡or ¡b^T A ¡results ¡in ¡a ¡row ¡vector. ¡(help ¡visualize ¡ -­‑ linspace these ¡things) -­‑ colon ¡notation ¡to ¡create ¡arrays matrix ¡matrix ¡multiplication • -­‑ functions identity ¡matrix • -­‑ creating ¡matrices -­‑ indexing ¡arrays, ¡single ¡elements, ¡rows, ¡columns diagonal ¡matrix • -­‑ help ¡/ ¡doc transpose • -­‑ basic ¡plotting symmetric ¡matrices • -­‑ basic ¡debugging 2-­‑norm ¡of ¡a ¡vector • matrix ¡inverse • quadratic ¡forms: ¡x^T A ¡x ¡(results ¡in ¡a ¡scalar) • positive/negative ¡definite • gradient/Hessian • cross ¡product • partial ¡derivatives • chain ¡rule •

  3. This ¡is ¡a ¡simple ¡review, ¡use ¡more ¡comprehensive ¡sources ¡for ¡quizes, ¡tests, ¡etc. • Multivariable ¡Calculus • Partial ¡Derivatives Example: ¡ Multivariable ¡Calculus ¡Study ¡Guide: ¡A ¡LATEX ¡Version ¡ • Analytical ¡and ¡Numerical • Chain ¡Rule • Dot ¡and ¡Cross ¡Product • Directional ¡Derivative • Linear ¡Algebra Linear ¡Algebra ¡Review ¡and ¡Reference • Matrix ¡Operations Link ¡found ¡on ¡syllabus • Gradient • Hessian • Matlab: Forums, ¡matlab documentation • Debugging • Functions • Examples

  4. Neighbor’s ¡Name Why ¡are ¡they ¡taking ¡optimization? What ¡is ¡one ¡thing ¡they ¡would ¡like ¡to ¡optimize?

  5. Motivation ¡Example Finding ¡a ¡good ¡direction ¡to ¡go Finding ¡a ¡step ¡size Finding ¡the ¡minimum

  6. HOW ¡ ¡WILL ¡ ¡A ¡ ¡COMPUTE TER ¡ ¡KNOW?

  7. Partial ¡Derivatives Analytical ¡for ¡x 1 and ¡x 2 F(x 1 ,x 2 ) ¡= ¡3x 1 x 2 +6x 2 2 +9x 1 3 dF/dx 1 = ¡3x 2 +27x 12 dF/dx 2 = ¡3x 1 +12x 2

  8. Chain ¡Rule Differentiate ¡w.r.t x: ¡ ¡ ¡ ¡ ¡f(x,y,z) ¡= ¡x 3 y*cos(x 3 y+z) x 3 y*(-­‑sin(x 3 y+z) ¡* ¡3x 2 y) ¡+ ¡3x 2 y*cos(x 3 y+z)

  9. Matrix ¡Operations 1 0 0 Identity ¡= ¡ 0 1 0 0 0 1 Transpose ¡ 1 4 5 1 7 8 4 0 0 A ¡= ¡ A T ¡ = ¡ Diagonal ¡ ¡ 0 3 0 7 2 6 4 2 9 0 0 9 5 6 3 8 9 3 1 ¡ ¡ 2 1 9 b = ¡ b T ¡ = 1 7 ¡ ¡ 7 8 Symmetric ¡ ¡ 1 6 2 9 2 8 8 ¡ ¡ ALWAYS ¡column ¡vector ¡for ¡this ¡class ¡

  10. Matrix ¡Operations Inverse ¡ Cramer’s ¡Rule 1 4 5 −.16 .11 .05 Eigendecomposition Gaussian ¡Elimination A ¡= ¡ A -­‑1 ¡ = ¡ 7 2 6 .09 −.13 .1 Newton’s ¡Method 8 9 3 .16 .08 −.09 Etc…

  11. Matrix ¡Operations 1 4 5 1 ¡ ¡ A ¡= ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ b ¡= ¡ 7 2 6 2 ¡ ¡ 3 ¡ ¡ 8 9 3 39 35 36 b T *A 69 ¡ ¡ ¡ ¡57 ¡ ¡ ¡ ¡44 ¡ ¡ ¡ ¡ 69 ¡ ¡ ¡ ¡86 ¡ ¡ ¡ ¡65 A*A 95 77 ¡ ¡ ¡103 187 b T *A*b

  12. 1 1 3 Matrix ¡Operations a = ¡ b ¡= ¡ ¡ ¡ ¡ ¡c ¡= ¡ 2 2 4 3 3 5 5 5*a 10 15 1 2 3 a*b T 2 4 6 3 6 9 a T *b 14 ¡(dot ¡product) a T + ¡a T [2,4,6] a T x ¡c [-­‑2,4,-­‑2] ¡(cross ¡product)

  13. Gradient: ¡Partial ¡Derivatives ¡Array Points ¡to ¡steepest ¡descent ¡ F(x 1 ,x 2 ) ¡= ¡3x 1 x 2 +6x 22 +9x 13 (dF/dx 1 ) ¡i (in ¡direction ¡of ¡x 1 ) (dF/dx 2 ) ¡j ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(in ¡direction ¡of ¡x 2 ) . . . (dF/dx n ) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡(in ¡direction ¡of ¡x n ) How ¡to ¡point ¡to ¡steepest ¡ascent?

  14. Directional ¡Derivative

  15. Hessian: ¡Second ¡Order ¡partial ¡Derivatives F(x 1 ,x 2 ) ¡= ¡3x 1 x 2 +6x 22 +9x 13 dF 2 /d 2 x 1 = ¡54x 1 ¡ ¡ ¡ ¡ (in ¡direction ¡of ¡x 1 ) dF 2 /d 2 x 2 = ¡12 ¡ ¡ ¡ ¡ ¡ ¡(in ¡direction ¡of ¡x 2 ) . . .

  16. 2-­‑Norm

  17. Matlab Debugging ¡Experience? • Syntax • Logic ¡(math, ¡matrix, ¡program ¡structure) • Memory ¡(rewriting, ¡lost)

  18. General ¡Debugging • Clues ¡from ¡output ¡error ¡messages • Search ¡“matlab” ¡and ¡a ¡key ¡word • Use ¡breakpoints ¡and ¡track ¡output • Use ¡hand ¡calculations ¡to ¡check ¡output • Evaluate ¡Sections

  19. Functions • Example

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend