We may earn an affiliate commission when you visit our partners.
Course image
Toru Tamaki

このレクチャーでは,コンピュータビジョンやパターン認識,画像処理などで使われる数式や考え方,数学的手法を学びます.基礎的な連立方程式の解き方とその解釈,微分と最適化,回帰とスパースモデリング,制約付き最適化問題と凸最適化,識別などの基本的な考え方を,数式を通して理解し,いくつかの問題についてはPythonコードを使って理解を深めます.特に連立方程式Ax=bというよく見かける数式を題材に,顔画像の近似問題としていろいろな手法が定式化できること,また解き方があることを学びます.

Enroll now

What's inside

Syllabus

はじめに
  • レクシャースライドPDFです.ファイルは***slide.pdfです(映像撮影時の古いものも残してありますが,新しいほうは誤植などを修正してあります).

  • 演習問題の解答例のファイルは***answer.pdfです.

  • 演習用のコードはリンクのgithubを参照してください.

Read more
論文例
ギリシャ文字
ギリシャ文字2
記号いろいろ
カッコ・演算子
太字・細字・斜体・立体
行列・ベクトルの記法
添字と総和
線形代数:行列とベクトル
集合
集合の書き方
部分集合
和集合,積集合
直積
集合の要素数
区間の最大最小・上界下界
ベクトルの記法
行列の記法,行列の和
ベクトル空間(線形空間)
内積:ベクトル同士の積
内積=射影
ノルムと距離
ノルムいろいろ
行列ノルム
行列と列ベクトルの積
行列と行ベクトルの積
行列同士の積
行列とベクトルの積:計算例
行列の積:総和での表現
行列/ベクトルの積:次元の確認
行列/ベクトルの積:列の和,行の和
対角行列
Axの解釈:列ベクトルの線形和
Axの解釈:行への射影
線形結合,線形独立
行列のランク
Ax=bの解釈:投影した座標
零空間
Axの解釈:列の線形和
行列積を総和で実装:pythonで列の線形和を計算
行列積を総和で実装:pythonのunittestで確認
行列積を総和で実装:pythonコードと数式証明
連立方程式Ax=bの解釈
連立方程式Ax=bの解
一般化逆行列による解の解釈
学習画像Aの線形和で目標画像bを近似するpython実装
ニューラルネットワーク=行列ベクトル積+非線形
numpyの行列積だけ2層でニューラルネットワークを実装
複数の連立方程式をまとめる行列方程式
微分:関数と導関数
関数
凸集合
凸関数
凸の重要性
関数の分類
線形関数
微分
微分と連続
微分と連続2
微分と傾き
劣微分
微分の記法
全微分:1次元
全微分:2次元
偏微分:記法
勾配=偏微分
ベクトルでの微分
ヘッセ行列:2階微分行列
ヘッセ行列の解釈
勾配ベクトルとヘッセ行列の例
勾配ベクトルの要素の計算
勾配ベクトルの要素の計算2
勾配ベクトルの要素の計算3
ヘッセ行列の要素の計算
ヤコビ行列:ベクトル値関数の微分
ヤコビ行列:1階微分行列
ヤコビ行列と勾配ベクトル
関数合成の微分:具体例
関数合成の微分:連鎖律
関数合成の微分:連鎖律で計算
ベクトル版の連鎖律
微分の計算;数式微分,数値微分,自動微分
自動微分1
自動微分2
自動微分3
計算グラフ上の連鎖律
計算グラフ上の連鎖律:誤差逆伝播
微分の実装;数式微分,数値微分,自動微分
sympyによる数式微分1
sympyによる数式微分2
scipyによる数値微分
autogradによる自動微分
数式微分と自動微分の違い
最適化:勾配法とパラメータ推定
連続最適化
反復法(勾配法)の基本:1次元の最急降下法
最急降下法:デモ

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Explores mathematical formulations, concepts, and techniques used in computer vision, pattern recognition, and image processing
Provides a foundation in linear equations, differential calculus, regression analysis, and constrained optimization
Offers a practical approach with Python code demonstrations to enhance understanding
Emphasizes the interpretation of the widely encountered equation Ax=b in various contexts
Suitable for learners with a background in linear algebra and a desire to apply mathematical concepts to real-world problems
Requires familiarity with basic programming concepts and Python syntax

Save this course

Save コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題 to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題 with these activities:
Review Linear Algebra Foundations
Brush up on the concepts of linear algebra, such as matrix operations, vector spaces, and linear transformations, to strengthen your understanding of the mathematical foundation used in this course.
Browse courses on Linear Algebra
Show steps
  • Review notes and textbooks from previous linear algebra courses
  • Complete practice problems and exercises to test your understanding
  • Watch online lectures or tutorials to reinforce key concepts
Join a Matrix Theory Study Group
Engage with fellow students or classmates to discuss concepts, share insights, and work through problems collaboratively. This interactive activity will enhance your understanding and provide support.
Browse courses on Linear Algebra
Show steps
  • Reach out to classmates or form a study group with interested individuals
  • Establish a regular meeting schedule and set clear goals for each session
  • Take turns presenting concepts, solving problems, and facilitating discussions
Solve Practice Matrix Problems
Engage in regular practice of solving matrix problems to improve your computational skills and deepen your understanding of matrix theory.
Browse courses on Matrix Operations
Show steps
  • Find online problem sets or textbooks with practice exercises
  • Allocate dedicated time for solving these problems on a regular basis
  • Review your solutions and identify areas for improvement
Three other activities
Expand to see all activities and additional details
Show all six activities
Solve Differential Calculus Practice Problems
Sharpen your differential calculus skills by regularly practicing problem-solving. This will strengthen your understanding of the concepts and improve your ability to apply them.
Browse courses on Derivatives
Show steps
  • Find online problem sets or textbooks with practice exercises
  • Allocate dedicated time for solving these problems on a regular basis
  • Review your solutions and identify areas for improvement
Explore Advanced Matrix Analysis Tutorials
Seek out specialized tutorials or online courses to expand your knowledge of advanced matrix analysis techniques and their applications in various fields.
Show steps
  • Identify reputable online platforms or educators offering tutorials
  • Review the course content and select tutorials that align with your interests
  • Follow the tutorials, complete the exercises, and engage in discussions
Create Visualizations of Matrix Transformations
Enhance your understanding of matrix transformations by creating visual representations using tools like Python or MATLAB. This hands-on activity will solidify your grasp of the geometric interpretations.
Browse courses on Linear Transformations
Show steps
  • Choose a matrix transformation and its corresponding geometric operation
  • Write a program to generate a visual representation of the transformation
  • Experiment with different transformation parameters and observe the resulting effects

Career center

Learners who complete コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題 will develop knowledge and skills that may be useful to these careers:
Computer Vision Engineer
Computer Vision Engineers design and develop software that enables computers to interpret and understand visual data. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, is closely aligned with this field as it provides a solid foundation in the mathematical principles underlying computer vision, including linear algebra, optimization, and numerical methods. By understanding these concepts, you can better grasp the algorithms and techniques used in computer vision systems.
Data Scientist
Data Scientists use their expertise in statistical modeling, machine learning, and data analysis to extract insights from data. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can provide you with a strong foundation in the mathematical principles and techniques used in data science, including linear algebra, optimization, and numerical methods. These concepts are essential for developing and implementing data-driven solutions.
Operations Research Analyst
Operations Research Analysts use mathematical and analytical methods to solve complex problems in various industries. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can help you build a solid foundation in the mathematical principles and techniques used in operations research, including linear algebra, optimization, and numerical methods. These concepts are essential for modeling and solving problems related to resource allocation, scheduling, and decision-making.
Market Researcher
Market Researchers conduct research to understand consumer behavior and market trends. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can provide you with a strong foundation in the mathematical principles and techniques used in market research, including linear algebra, optimization, and numerical methods. These concepts are essential for designing and analyzing research studies and interpreting data to gain insights into consumer behavior.
Data Analyst
As a Data Analyst, you will handle the collection, cleaning, analysis, and presentation of data to derive meaningful insights. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can help you build a foundation in the mathematical concepts and techniques frequently used in data analysis. Its focus on linear algebra, optimization, and numerical methods can provide you with a strong understanding of data manipulation, modeling, and interpretation.
Software Engineer
Software Engineers design, develop, and maintain software systems. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can provide you with a strong foundation in the mathematical principles and techniques used in software development, including linear algebra, optimization, and numerical methods. These concepts are essential for understanding and implementing software algorithms and data structures.
Statistician
Statisticians collect, analyze, interpret, and present data to solve problems in various fields. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can be useful in building your foundation for this role, as it covers topics like linear algebra, optimization, and numerical methods. These concepts are essential for understanding statistical models, data analysis techniques, and hypothesis testing.
Business Analyst
Business Analysts analyze business processes and data to identify areas for improvement. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can provide you with a strong foundation in the mathematical principles and techniques used in business analysis, including linear algebra, optimization, and numerical methods. These concepts are essential for understanding and analyzing business processes, identifying inefficiencies, and developing data-driven solutions.
Data Engineer
Data Engineers design and build systems for storing, managing, and processing data. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can be useful in building your foundation for this role, as it covers topics like linear algebra, optimization, and numerical methods. These concepts are essential for understanding data structures, algorithms, and data management techniques.
Economist
Economists study and analyze economic data to understand economic trends and develop policies. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can be useful in building your foundation for this role, as it covers topics like linear algebra, optimization, and numerical methods. These concepts are essential for understanding econometric models, data analysis techniques, and economic forecasting.
Actuary
Actuaries use mathematical and statistical models to assess and manage risk in the insurance and finance industries. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can be useful in building your foundation for this role, as it covers topics like linear algebra, optimization, and numerical methods. These concepts are essential for developing and implementing actuarial models.
Financial Analyst
Financial Analysts use financial data and models to make investment recommendations and provide financial advice. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can be useful in building your foundation for this role, as it covers topics like linear algebra, optimization, and numerical methods. These concepts are essential for understanding and implementing financial models and making informed investment decisions.
Consultant
Consultants provide expert advice and guidance to businesses on various issues. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can be useful in building your foundation for this role, as it covers topics like linear algebra, optimization, and numerical methods. These concepts are essential for understanding complex business problems, developing solutions, and communicating effectively with clients.
Quantitative Analyst
Quantitative Analysts use mathematical and statistical models to assess risk and make informed decisions in the financial industry. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can be useful in building your foundation for this role, as it covers topics like linear algebra, optimization, and numerical methods. These concepts are essential for developing and implementing financial models.
Machine Learning Engineer
Machine Learning Engineers develop and implement machine learning models to automate tasks and solve complex problems. This course, コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題, can be useful in building your foundation for this role, as it covers topics like linear algebra, optimization, and numerical methods. These concepts are essential for understanding and implementing machine learning algorithms.

Reading list

We've selected 14 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題.
コンピュータビジョンの分野における標準的な教科書であり、基本的なアルゴリズムや手法を網羅的に解説しています。
PyTorchライブラリを使用したディープラーニングの手法を解説しており、コンピュータビジョンにおける画像認識や物体検出などのタスクに役立ちます。
TensorFlowライブラリを使用したディープラーニングの手法を解説しており、コンピュータビジョンにおける画像認識や物体検出などのタスクに役立ちます。
この本は、深層学習の基礎をわかりやすく解説しています。畳み込みニューラルネットワーク、リカレントニューラルネットワーク、敵対的生成ネットワークなど、コンピュータビジョンで用いられるアルゴリズムを体系的に学ぶことができます。
この本は、コンピュータビジョンのアルゴリズムと応用をわかりやすく解説しています。画像処理、物体認識、物体検出など、コンピュータビジョンで用いられるアルゴリズムを体系的に学ぶことができます。
この本は、凸最適化の手法をわかりやすく解説しています。線形計画法、二次計画法、円錐計画法など、コンピュータビジョンで用いられる凸最適化の手法を体系的に学ぶことができます。
この本は、ガウス過程の基礎をわかりやすく解説しています。ガウス過程のモデル、学習アルゴリズム、応用など、コンピュータビジョンで用いられるガウス過程の概念を体系的に学ぶことができます。
この本は、ベイズネットワークの基礎をわかりやすく解説しています。ベイズネットワークの構造、確率的推論、学習アルゴリズムなど、コンピュータビジョンで用いられるベイズネットワークの概念を体系的に学ぶことができます。
この本は、機械学習で用いられる最適化の手法をわかりやすく解説しています。勾配降下法、確率的勾配降下法、ニュートン法など、コンピュータビジョンで用いられる最適化の手法を体系的に学ぶことができます。
この本は、数値最適化の手法をわかりやすく解説しています。勾配降下法、ニュートン法、共役勾配法など、コンピュータビジョンで用いられる最適化の手法を体系的に学ぶことができます。
この本は、情報理論、推論、学習アルゴリズムの基礎をわかりやすく解説しています。エントロピー、KLダイバージェンス、ベイズ推定など、コンピュータビジョンで用いられる確率的モデリングの概念を体系的に学ぶことができます。
この本は、機械学習の基礎をわかりやすく解説しています。教師あり学習、教師なし学習、強化学習など、コンピュータビジョンで用いられる機械学習の概念を体系的に学ぶことができます。
この本は、線形代数の基礎をわかりやすく解説しています。行列、ベクトル、線形写像など、コンピュータビジョンで用いられる数学を体系的に学ぶことができます。
この本は、確率過程の基礎をわかりやすく解説しています。マルコフ過程、ポアソン過程、ブラウン運動など、コンピュータビジョンで用いられる確率過程の概念を体系的に学ぶことができます。

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to コンピュータビジョン数学基礎:数式とPythonで学ぶ最適化と最小二乗問題.
AIのための数学講座:少しづつ丁寧に学ぶ人工知能向けの線形代数/確率・統計/微分
Most relevant
AIってなんだ。 イメージで理解しておきたい人のための超入門講座
Most relevant
Google Sheets - Advanced Topics 日本語版
Most relevant
【4日で体験!】 TensorFlow, Keras, Python 3 で学ぶディープラーニング体験講座
Most relevant
基本のトマトソースで多くのメニューと地頭の良い子どもを育てよう!~基本のトマトソースと展開事例~
Most relevant
ChatGPT API入門-PythonによるAPI基本操作から、業務で使える実践的なChatGPT活用法を学ぼう
Most relevant
5 .データを分析し、答えを導き出す
Most relevant
Preparing for the Google Cloud Professional Cloud...
Most relevant
【2023年5月改訂版】実践 Python データサイエンス
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser