آموزش روش های عددی و بهینه سازی در پایتون - آخرین آپدیت

دانلود Numerical Methods and Optimization in Python

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

این دوره آموزشی به بررسی روش‌های عددی و الگوریتم‌های بهینه‌سازی در زبان برنامه‌نویسی پایتون می‌پردازد.

*** ما قصد نداریم تمام تئوری‌های مربوط به روش‌های عددی را بررسی کنیم (به عنوان مثال، چگونگی حل معادلات دیفرانسیل و غیره) - فقط به پیاده‌سازی‌های عملی و اصول عددی خواهیم پرداخت. ***

بخش اول به جبر ماتریس‌ها و سیستم‌های خطی مانند ضرب ماتریس، حذف گاوسی و کاربردهای این رویکردها اختصاص دارد. ما همچنین الگوریتم معروف PageRank گوگل را بررسی خواهیم کرد.

سپس در مورد انتگرال‌گیری عددی صحبت خواهیم کرد. نحوه استفاده از تکنیک‌هایی مانند قاعده ذوزنقه‌ای، فرمول سیمپسون و روش مونت-کارلو برای محاسبه انتگرال معین یک تابع داده شده.

فصل بعدی در مورد حل معادلات دیفرانسیل با روش‌های اویلر و رانگ-کوتا است. ما نمونه‌هایی مانند مسئله آونگ و بالستیک را در نظر خواهیم گرفت.

در نهایت، تکنیک‌های بهینه‌سازی مرتبط با یادگیری ماشین را بررسی خواهیم کرد. الگوریتم‌های گرادیان نزولی، گرادیان نزولی تصادفی، ADAGrad، RMSProp و بهینه‌ساز ADAM مورد بحث قرار خواهند گرفت - هم تئوری و هم پیاده‌سازی.

*** اگر با برنامه‌نویسی پایتون آشنایی ندارید، می‌توانید در فصل‌های پایانی، در مورد مبانی و اصول اولیه پایتون اطلاعات کسب کنید. ***

پیش‌نیازها: دانش ریاضی - معادلات دیفرانسیل، انتگرال و جبر ماتریس

سرفصل‌های دوره:

بخش 1 - مبانی روش‌های عددی

  • مبانی روش‌های عددی
  • نمایش ممیز شناور
  • خطاهای گرد کردن
  • عملکرد C، جاوا و پایتون

بخش 2 - جبر خطی و حذف گاوسی

  • جبر خطی
  • ضرب ماتریس
  • حذف گاوسی
  • بهینه‌سازی سبد سهام با جبر ماتریس

بخش 3 - بردارهای ویژه و مقادیر ویژه

  • بردارهای ویژه و مقادیر ویژه
  • کاربردهای بردارهای ویژه در یادگیری ماشین (PCA)
  • توضیح الگوریتم PageRank گوگل

بخش 4 - درون‌یابی

  • تئوری درون‌یابی لاگرانژ
  • پیاده‌سازی و کاربردهای درون‌یابی

بخش 5 - الگوریتم‌های یافتن ریشه

  • حل معادلات غیرخطی
  • یافتن ریشه
  • روش نیوتن و روش نصف کردن

بخش 6 - انتگرال‌گیری عددی

  • انتگرال‌گیری عددی
  • روش مستطیلی و روش ذوزنقه‌ای
  • روش سیمپسون
  • انتگرال‌گیری مونت-کارلو

بخش 7 - معادلات دیفرانسیل

  • حل معادلات دیفرانسیل
  • روش اویلر
  • روش رانگ-کوتا
  • مسئله آونگ و بالستیک

بخش 8 - بهینه‌سازی عددی (در یادگیری ماشین)

  • الگوریتم گرادیان نزولی
  • گرادیان نزولی تصادفی
  • الگوریتم‌های ADAGrad و RMSProp
  • توضیح بهینه‌ساز ADAM

*** اگر با برنامه‌نویسی پایتون آشنایی ندارید، می‌توانید در فصل‌های پایانی، در مورد مبانی و اصول اولیه پایتون اطلاعات کسب کنید. ***

از اینکه به دوره من پیوستید متشکرم، بیایید شروع کنیم!

**توضیحات برای بهینه سازی SEO:** * **استفاده از کلمات کلیدی:** کلمات کلیدی مهم (روش‌های عددی، انتگرال‌گیری، معادلات دیفرانسیل، پایتون، الگوریتم‌های بهینه‌سازی، یادگیری ماشین، حذف گاوسی، PageRank و...) به طور طبیعی در متن قرار داده شده‌اند. * **استفاده از برچسب‌های عنوان (H2):** برای ساختاردهی محتوا و نشان دادن سلسله مراتب، از تگ `

` برای عنوان بخش‌ها استفاده شده است. این کار به موتورهای جستجو کمک می‌کند تا موضوعات اصلی را شناسایی کنند. * **استفاده از لیست‌های مرتب و نامرتب (UL, LI):** برای سازماندهی اطلاعات و برجسته کردن آیتم‌ها (مانند سرفصل‌های دوره) از لیست‌ها استفاده شده است. * **استفاده از تگ `

` برای پاراگراف‌ها:** متن به پاراگراف‌های منطقی تقسیم شده تا خوانایی برای کاربران و خزنده‌های موتور جستجو بهبود یابد. * **استفاده از تگ ``:** برای برجسته کردن کلمات و عبارات کلیدی مهم (مانند نام الگوریتم‌ها و موضوعات اصلی) از تگ `` استفاده شده است. این کار به موتورهای جستجو سیگنال می‌دهد که این کلمات مهم هستند. * **ساختار محتوایی:** محتوا به صورت منطقی و قابل فهم سازماندهی شده است. این امر باعث می‌شود موتورهای جستجو و کاربران بتوانند اطلاعات را به راحتی پیدا کنند و درک کنند. * **تمرکز بر خوانایی:** متن به گونه‌ای نوشته شده که برای مخاطب فارسی‌زبان قابل فهم باشد. این امر باعث می‌شود که کاربران زمان بیشتری را در صفحه سپری کنند و احتمال تعامل با محتوا افزایش یابد که این فاکتور برای SEO مثبت است. * **تراکم کلمات کلیدی:** کلمات کلیدی به طور طبیعی در سراسر متن پخش شده‌اند تا از "keyword stuffing" (تکرار بیش از حد کلمات کلیدی) که توسط موتورهای جستجو جریمه می‌شود، جلوگیری شود.


سرفصل ها و درس ها

Introduction Introduction

  • مقدمه Introduction

### NUMERICAL METHODS ### ### NUMERICAL METHODS ###

  • اعداد ممیز شناور Floating point numbers

  • دقت و صحت Precision and accuracy

  • خطاهای گرد کردن Rounding errors

  • بررسی سرعت – C, Java و Python Speed consideration - C, Java and Python

جبر خطی Linear Algebra

  • معرفی ضرب ماتریس Matrix multiplication introduction

  • معرفی ضرب ماتریس Matrix multiplication introduction

  • پیاده‌سازی ضرب ماتریس Matrix multiplication implementation

  • تحلیل زمان اجرا ضرب ماتریس Running time analysis of matrix multiplication

  • ضرب ماتریس در بردار Matrix vector multiplication

  • محصول داخلی Inner product

  • لیست‌ها و آرایه‌های NumPy Lists and NumPy arrays

  • عملیات ماتریسی با NumPy Matrix operations with NumPy

سیستم‌های خطی و حذف گاوسی Linear Systems and Gaussian Elimination

  • حذف گاوسی چیست؟ What is Gaussian elimination?

  • تصویرسازی حذف گاوسی Gaussian elimination illustration

  • محوری‌سازی چیست؟ What is pivoting?

  • حذف گاوسی و ماتریس‌های منفرد Gaussian elimination and singular matrixes

  • فرمول‌بندی ریاضی حذف گاوسی Mathematical formulation of Gaussian elimination

پیاده‌سازی حذف گاوسی Gauss Elimination Implementation

  • پیاده‌سازی حذف گاوسی I Gaussian elimination implementation I

  • پیاده‌سازی حذف گاوسی II Gaussian elimination implementation II

#1 Challenge - Portfolio Optimization #1 Challenge - Portfolio Optimization

  • معرفی بهینه‌سازی سبد سهام Portfolio optimization introduction

  • پیاده‌سازی بهینه‌سازی سبد سهام Portfolio optimization implementation

مقادیر ویژه و بردارهای ویژه Eigenvalues And Eigenvectors

  • مقادیر ویژه و بردارهای ویژه چیستند؟ What are eigenvalues and eigenvectors?

  • پیاده‌سازی مقادیر ویژه و بردارهای ویژه Eigenvalues and eigenvectors implementation

  • کاربردهای بردار ویژه در یادگیری ماشین Applications of eigenvectors in machine learning

  • فرمول‌بندی ریاضی بردارهای ویژه Mathematical formulation of eigenvectors

#2 Challenge - Google's PageRank Algorithm #2 Challenge - Google's PageRank Algorithm

  • نمایش گراف WWW Graph representation of the WWW

  • خزیدن در وب با جستجوی اول-عرض (Breadth-First Search) Crawling the web with breadth-first search

  • فرمول اصلی The original formula

  • مثال الگوریتم PageRank PageRank algorithm example

  • نمایش ماتریسی مسئله Matrix representation of the problem

  • مدل رندوم سرفر (Random Surfer) The random surfer model

  • مشکلات مدل رندوم سرفر چیست؟ What are the problems with the random surfer model?

  • الگوریتم PageRank – فرمول نهایی PageRank algorithm - the final formula

  • متد توان Power method

  • مقاله علمی اصلی الگوریتم PageRank Original scientific paper of PageRank algorithm

درون‌یابی Interpolation

  • درون‌یابی چیست؟ What is interpolation?

  • تصویرسازی درون‌یابی Interpolation illustration

  • پیاده‌سازی درون‌یابی I Interpolation implementation I

  • پیاده‌سازی درون‌یابی II Interpolation implementation II

  • کاربردهای درون‌یابی Applications of interpolation

  • فرمول‌بندی ریاضی درون‌یابی Mathematical formulation of interpolation

یافتن ریشه Root Finding

  • مقدمه یافتن ریشه توابع Root of functions introduction

  • معرفی متد تنصیف (Bisection) Bisection method introduction

  • پیاده‌سازی متد تنصیف Bisection method implementation

  • معرفی متد نیوتن Newton method introduction

  • پیاده‌سازی متد نیوتن Newton method implementation

  • فرمول‌بندی ریاضی یافتن ریشه Mathematical formulation of root finding

انتگرال‌گیری عددی Numerical Integration

  • مقدمه انتگرال‌گیری Integration introduction

  • معرفی متد مستطیل Rectangle method introduction

  • پیاده‌سازی متد مستطیل Rectangle method implementation

  • معرفی انتگرال ذوزنقه‌ای Trapezoidal integral introduction

  • پیاده‌سازی انتگرال ذوزنقه‌ای Trapezoidal integral implementation

  • معرفی متد سیمپسون Simpson's method introduction

  • پیاده‌سازی متد سیمپسون Simpson's method implementation

  • فرمول‌بندی ریاضی انتگرال‌گیری عددی Mathematical formulation of numerical integration

#3 Challenge - Monte-Carlo Integration #3 Challenge - Monte-Carlo Integration

  • متد مونت-کارلو چیست؟ What is the Monte-Carlo method?

  • پیاده‌سازی انتگرال‌گیری مونت-کارلو I Monte-Carlo integral implementation I

  • پیاده‌سازی انتگرال‌گیری مونت-کارلو II Monte-Carlo integral implementation II

  • کاربردهای شبیه‌سازی مونت-کارلو در امور مالی Applications of Monte-Carlo simulations in finance

معادلات دیفرانسیل Differential Equations

  • چگونه با معادلات دیفرانسیل برخورد کنیم؟ How to deal with differential equations?

  • معرفی متد اویلر Euler's method introduction

  • مثال متد اویلر Euler's method example

  • مثال متد اویلر – آونگ Euler's method example - pendulum

  • مثال متد اویلر – آونگ با درگ (Drag) Euler's method example - pendulum with drag

  • معرفی متد رانگ-کوتا Runge-Kutta method introduction

  • مثال متد رانگ-کوتا I Runge-Kutta method example I

  • مثال متد رانگ-کوتا II Runge-Kutta method example II

  • فرمول‌بندی ریاضی تمایز عددی Mathematical formulation of numerical differentiation

### NUMERICAL OPTIMIZATION (MACHINE LEARNING ALGORITHMS) ### ### NUMERICAL OPTIMIZATION (MACHINE LEARNING ALGORITHMS) ###

  • گرادیان کاهشی چیست؟ What is gradient descent?

  • پیاده‌سازی گرادیان کاهشی Gradient descent implementation

  • گرادیان کاهشی با مومنتوم Gradient descent with momentum

  • معرفی گرادیان کاهشی تصادفی Stochastic gradient descent introduction

  • پیاده‌سازی گرادیان کاهشی تصادفی I Stochastic gradient descent implementation I

  • پیاده‌سازی گرادیان کاهشی تصادفی II Stochastic gradient descent implementation II

  • ADAGrad چیست؟ What is ADAGrad?

  • پیاده‌سازی ADAGrad ADAGrad implementation

  • RMSProp چیست؟ What is RMSProp?

  • معرفی بهینه‌ساز ADAM ADAM optimizer introduction

  • پیاده‌سازی بهینه‌ساز ADAM ADAM optimizer implementation

  • فرمول‌بندی ریاضی الگوریتم‌های بهینه‌سازی در یادگیری ماشین Mathematical formulation of optimization algorithms in machine learning

### APPENDIX - PYTHON PROGRAMMING CRASH COURSE ### ### APPENDIX - PYTHON PROGRAMMING CRASH COURSE ###

  • معرفی دوره فشرده برنامه‌نویسی پایتون Python crash course introduction

Appendix #1 - Python Basics Appendix #1 - Python Basics

  • گام‌های نخست در پایتون First steps in Python

  • انواع داده‌های پایه چیستند؟ What are the basic data types?

  • مقادیر بولی Booleans

  • رشته‌ها Strings

  • برش رشته‌ها (String Slicing) String slicing

  • تبدیل نوع داده (Type Casting) Type casting

  • عملگرها Operators

  • عبارات شرطی Conditional statements

  • چگونه از چند شرط استفاده کنیم؟ How to use multiple conditions?

  • عملگرهای منطقی Logical operators

  • حلقه‌ها - حلقه for Loops - for loop

  • حلقه‌ها - حلقه while Loops - while loop

  • حلقه‌های تو در تو چیستند؟ What are nested loops?

  • شمارش Enumerate

  • Break و continue Break and continue

  • محاسبه اعداد فیبوناچی Calculating Fibonacci-numbers

Appendix #2 - Functions Appendix #2 - Functions

  • توابع چیستند؟ What are functions?

  • تعریف توابع Defining functions

  • آرگومان‌های موضعی و آرگومان‌های کلیدی Positional arguments and keyword arguments

  • برگرداندن مقادیر Returning values

  • برگرداندن چند مقدار Returning multiple values

  • عملگر yield Yield operator

  • مهم‌ترین توابع داخلی چیستند؟ What are the most relevant built-in functions?

  • بازگشت (Recursion) چیست؟ What is recursion?

  • متغیرهای محلی در مقابل متغیرهای سراسری Local vs global variables

  • تابع __main__ The __main__ function

Appendix #3 - Data Structures in Python Appendix #3 - Data Structures in Python

  • چگونه زمان اجرای الگوریتم‌ها را اندازه‌گیری کنیم؟ How to measure the running time of algorithms?

  • معرفی ساختارهای داده Data structures introduction

  • ساختارهای داده‌ی آرایه چیستند I What are array data structures I

  • ساختارهای داده‌ی آرایه چیستند II What are array data structures II

  • لیست‌ها در پایتون Lists in Python

  • لیست‌ها در پایتون - عملیات پیشرفته Lists in Python - advanced operations

  • لیست‌ها در پایتون - درک لیست (list comprehension) Lists in Python - list comprehension

  • (!!!) لیست‌ها و آرایه‌های پایتون (!!!) Python lists and arrays

  • اندازه‌گیری زمان اجرای لیست‌ها Measuring running time of lists

  • تاپل‌ها چیستند؟ What are tuples?

  • تغییرپذیری و عدم تغییرپذیری Mutability and immutability

  • ساختارهای داده لیست پیوندی (Linked List) چیستند؟ What are linked list data structures?

  • پیاده‌سازی لیست پیوندی دو طرفه در پایتون Doubly linked list implementation in Python

  • هشینگ (Hashing) و پیچیدگی زمانی O(1) Hashing and O(1) running time complexity

  • فرهنگ لغت‌ها (Dictionaries) در پایتون Dictionaries in Python

  • مجموعه‌ها (Sets) در پایتون Sets in Python

  • مرتب‌سازی Sorting

Appendix #4 - Object Oriented Programming (OOP) Appendix #4 - Object Oriented Programming (OOP)

  • برنامه‌نویسی شیءگرا (OOP) چیست؟ What is object oriented programming (OOP)?

  • مبانی کلاس و اشیاء Class and objects basics

  • استفاده از سازنده Using the constructor

  • متغیرهای کلاس و متغیرهای نمونه Class variables and instance variables

  • متغیرهای خصوصی و نام‌گذاری (name mangling) Private variables and name mangling

  • وراثت در OOP چیست؟ What is inheritance in OOP?

  • کلیدواژه super The super keyword

  • Overriding متد (Method) Function (method) override

  • چندریختی چیست؟ What is polymorphism?

  • مثال چندریختی و تجرید Polymorphism and abstraction example

  • ماژول‌ها Modules

  • تابع __str__ The __str__ function

  • مقایسه اشیاء - بازنویسی توابع Comparing objects - overriding functions

Appendix #5 - NumPy Appendix #5 - NumPy

  • مزیت کلیدی NumPy چیست؟ What is the key advantage of NumPy?

  • ایجاد و به‌روزرسانی آرایه‌ها Creating and updating arrays

  • ابعاد آرایه‌ها Dimension of arrays

  • ایندکس‌گذاری و برش‌زنی (slicing) Indexes and slicing

  • انواع داده (Types) Types

  • تغییر شکل (Reshape) Reshape

  • انباشتن و ادغام آرایه‌ها Stacking and merging arrays

  • فیلتر کردن Filter

  • مقایسه زمان اجرا: آرایه‌ها و لیست‌ها Running time comparison: arrays and lists

Appendix #6 - Pandas Appendix #6 - Pandas

  • Pandas چیست؟ What is Pandas?

  • گام‌های نخست First steps

  • سری‌ها (Series) Series

  • DataFrames DataFrames

  • عملیات DataFrame DataFrame operations

  • مقایسه سرعت - عملیات DataFrame Speed comparison - DataFrame operations

  • خواندن فایل‌های CSV و متنی Reading CSV and text files

  • عملیات Operations

  • فیلتر کردن داده‌ها Data filtering

  • استفاده از تابع ()apply Using the apply() function

  • مقایسه سرعت - حلقه‌ها و ()apply Speed comparison - loops and apply()

  • برداری‌سازی چیست؟ What is vectorization?

  • مثال برداری‌سازی I Vectorization example I

  • مثال برداری‌سازی II Vectorization example II

Course Materials (DOWNLOADS) Course Materials (DOWNLOADS)

  • مطالب دوره Course material

نمایش نظرات

آموزش روش های عددی و بهینه سازی در پایتون
جزییات دوره
14 hours
162
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
2,272
4.5 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Holczer Balazs Holczer Balazs

مهندس نرم افزار

هر روز دوره‌های جدید
HD
کیفیت بالای ویدیوها 720p
همراه زیرنویس فارسی و انگلیسی

همراه فایل‌های تمرین
آخرین آپدیت همه‌ی آموزش‌ها
مجموع تعداد ویدیوها 4,736,032