Python phái sinh thứ n

Trong bài viết này, chúng ta sẽ tìm hiểu cách tính đạo hàm bằng NumPy. Nói chung, NumPy không cung cấp bất kỳ chức năng mạnh mẽ nào để tính đạo hàm của các đa thức khác nhau. Tuy nhiên, NumPy có thể tính toán các trường hợp đặc biệt của đa thức một chiều bằng cách sử dụng hàm numpy. poly1d[] và dẫn xuất[]

Các chức năng được sử dụng

  • poly1d[]. Nó giúp xác định một biểu thức đa thức hoặc một hàm
  • phái sinh[]. Tính toán và cho chúng ta biểu thức đạo hàm

Tiếp cận

  • Lúc đầu, chúng ta cần xác định hàm đa thức bằng cách sử dụng numpy. hàm poly1d[]
  • Sau đó, chúng ta cần rút ra biểu thức đạo hàm bằng cách sử dụng hàm Derive[]
  • Cuối cùng, chúng ta có thể cung cấp giá trị cần thiết cho x để tính đạo hàm bằng số

Dưới đây là một số ví dụ mà chúng tôi tính toán đạo hàm của một số biểu thức bằng NumPy. Ở đây chúng ta lấy biểu thức ở biến 'var' và lấy đạo hàm của nó theo 'x'

ví dụ 1

Python3




import numpy as np

 

# defining polynomial function

var= np.poly1d[[12,# defining polynomial function3,var2_______9var4,# defining polynomial function3,1,=0numpy as np2

Ý tưởng đằng sau bài đăng này là xem lại một số chủ đề tính toán cần thiết trong khoa học dữ liệu và học máy và tiến thêm một bước nữa - tính toán chúng trong Python. Nó thực sự đơn giản khi bạn nắm được ý chính và bạn không cần phải lo lắng về việc ghi nhớ các quy tắc phân biệt

Ảnh của Bapt trên Unsplash

Bài đăng này sẽ dựa trên thư viện Python có tên là SymPy và đây là phần giới thiệu ngắn về nó [nếu bạn chưa từng sử dụng nó trước đây]

SymPy là một thư viện Python cho toán học tượng trưng. Nó nhằm mục đích trở thành một hệ thống đại số máy tính [CAS] đầy đủ tính năng trong khi vẫn giữ mã đơn giản nhất có thể để dễ hiểu và dễ mở rộng. SymPy được viết hoàn toàn bằng Python. [1]

Để cài đặt nó [nên đi kèm với bản phân phối Anaconda], hãy kích hoạt cửa sổ đầu cuối và thực hiện như sau

pip install sympy

Như tôi đã nói, chúng ta sẽ sử dụng nó để xem lại một số chủ đề từ phép tích, phép tính vi phân cho chính xác hơn. Nếu bạn bị gỉ trong lĩnh vực này, hãy nhanh chóng xem lại nó

Phép tính vi phân, nhánh của giải tích toán học, do Isaac Newton và G nghĩ ra. W. Leibniz, và quan tâm đến vấn đề tìm tốc độ thay đổi của một hàm đối với biến mà nó phụ thuộc vào. Do đó, nó liên quan đến việc tính toán các công cụ phái sinh và sử dụng chúng để giải các bài toán liên quan đến tỷ lệ thay đổi không đổi. Các ứng dụng điển hình bao gồm tìm giá trị lớn nhất và nhỏ nhất của hàm để giải các bài toán thực tế trong tối ưu hóa. [2]

Và bây giờ để cụ thể hơn nữa [tôi hứa là phần này sẽ kết thúc sớm thôi], chúng ta sẽ tính đạo hàm. Tôi cũng không nhớ chúng là gì. Không có gì lạ mắt, thực sự

Đạo hàm của hàm số tại một điểm nào đó đặc trưng cho tốc độ biến thiên của hàm số tại điểm đó. Chúng ta có thể ước tính tốc độ thay đổi bằng cách tính tỷ lệ thay đổi của hàm Δy với thay đổi của biến độc lập Δx. Trong định nghĩa của đạo hàm, tỷ số này được xét trong giới hạn là Δx→0. [3]

Được rồi được rồi, đừng tra tấn tôi bằng lý thuyết nữa

Đây là đoạn cuối cùng trước khi đi sâu vào các ví dụ, trung thực với Chúa. Để bắt đầu, chúng ta sẽ đi sâu vào các hàm đơn biến, nhưng sau đó, chúng ta sẽ xem xét một số ví dụ về hàm nhiều biến, do đó, chúng ta sẽ đề cập đến cách tính đạo hàm riêng. Đây là điều bạn sẽ làm thường xuyên hơn, tôi chưa sử dụng đạo hàm của hàm một biến nhiều trong phần ứng dụng

Không chần chừ thêm nữa, chúng ta hãy bắt đầu

Đạo hàm của hàm một biến

Đây sẽ là nội dung được đề cập trong lớp Calc 1 hoặc khóa học trực tuyến của bạn, chỉ liên quan đến các hàm xử lý các biến đơn lẻ, ví dụ: f[x]. Mục tiêu là trải qua một số quy tắc phân biệt cơ bản, thực hiện chúng bằng tay và sau đó bằng Python. Bắt đầu nào

quy tắc quyền lực

Quy tắc quyền lực nêu rõ điều này

Điều này khá dễ hiểu, nếu bạn đã nghe một số lớp calc trước đây. Nếu chưa, hãy xem qua một ví dụ đơn giản. Hàm f[x] của bạn bằng x mũ năm. Bây giờ sử dụng quy tắc lũy thừa để tính đạo hàm. Nó khá đơn giản

Bây giờ hãy xem cách tính toán nó trong Python. Điều đầu tiên là nhập thư viện, sau đó khai báo một biến mà bạn sẽ sử dụng làm ký tự trong các hàm của mình. Đây là cách thực hiện đối với hàm một biến

Khi các ô đó được thực thi, việc lấy đạo hàm trở nên đơn giản [cùng chức năng như trên]

Hãy chú ý đến định dạng in tuyệt đẹp này - trông giống như một phương trình được viết bằng LaTeX

Quy tắc nhân

Quy tắc tích phát biểu rằng nếu f[x] và g[x] là hai hàm khả vi, thì đạo hàm được tính bằng cách lấy hàm thứ nhất nhân với đạo hàm của hàm thứ hai cộng với hàm thứ hai nhân với đạo hàm của hàm thứ nhất. Điều đó nghe có vẻ khó hiểu một chút khi diễn đạt bằng lời, vì vậy đây là ký hiệu

Hãy tính toán một ví dụ bằng tay. Chúng tôi có những điều sau đây

Như bạn có thể thấy, x bình phương cộng 1 sẽ là f[x], và cosin của x sẽ là g[x]. Và đây là cách bạn làm điều đó trong Python

Cũng đơn giản. Hãy chắc chắn để xem nơi bạn đặt các dấu ngoặc đó. Ngoài ra, lưu ý rằng bạn không thể sử dụng cosin từ thư viện toán học hoặc numpy, bạn cần sử dụng cosine từ sympy

quy tắc chuỗi

Nếu bạn quyết định tìm hiểu sâu hơn về các thuật toán học máy, bạn sẽ thấy quy tắc dây chuyền xuất hiện ở khắp mọi nơi - giảm độ dốc, lan truyền ngược, bạn đặt tên cho nó. Nó xử lý các hàm lồng nhau, ví dụ, f[g[x]] và nói rằng đạo hàm được tính bằng đạo hàm của hàm ngoài nhân với hàm trong, sau đó tất cả nhân với đạo hàm của hàm trong. Đây là ký hiệu

Và đây là một ví dụ đơn giản được tính bằng tay

Việc triển khai Python một lần nữa đơn giản nhất có thể

Đạo hàm của hàm nhiều biến

Ở đây, các quy tắc tương tự được áp dụng như khi xử lý biến đơn cực kỳ đơn giản, anh bạn - bạn vẫn sử dụng quy tắc chuỗi, quy tắc lũy thừa, v.v., nhưng bạn lấy đạo hàm đối với một biến trong khi giữ nguyên các biến khác. Ồ, và chúng được gọi là đạo hàm riêng. Mến

Để bắt đầu, hãy lấy hàm hai biến cơ bản nhất và tính các đạo hàm riêng. Hàm đơn giản là — x bình phương nhân với y, và bạn sẽ lấy đạo hàm như sau

Thật tuyệt, nhưng tôi sẽ làm điều này bằng Python như thế nào? . Để bắt đầu, bạn sẽ cần xác định lại các biểu tượng của mình. Và theo phong cách Python truyền thống, bạn có thể làm điều này với một dòng mã

Bây giờ hãy gọi đến. diff[] sẽ yêu cầu thêm một đối số — thuật ngữ bạn đang tính đạo hàm cho. Hãy cùng xem

Ở đây bạn có thể xem cách tính đạo hàm riêng đối với x, rồi y. Viết lại chức năng trở nên tẻ nhạt nhanh chóng và có một cách để tránh nó. Hãy khám phá nó trong ví dụ tiếp theo

3 hàm biến

Đây là một ví dụ khác về việc lấy đạo hàm riêng đối với cả 3 biến

Điều này một lần nữa sẽ yêu cầu bạn thay đổi các biểu tượng

Và lần này bạn có thể thông minh hơn và đặt hàm thành một biến, thay vì viết lại nó mỗi lần

Mát mẻ. Phần còn lại hoàn toàn giống như trước đây

Điều này dễ đọc hơn nhiều. Bạn thậm chí có thể đọc nó theo nghĩa đen - đạo hàm hàm f theo x

Từ cuối cùng

Đây không phải là một hướng dẫn tính toán nâng cao, chết tiệt, đây thậm chí không phải là một hướng dẫn tính toán, và nó không có ý định trở thành một. Mục tiêu là chỉ cho bạn đi đúng hướng, vì vậy bạn không cần phải tính công cụ phái sinh bằng tay hoặc một số máy tính trực tuyến

Hãy thử áp dụng điều này cho hồi quy tuyến tính với độ dốc giảm dần - đó sẽ là một bài tập tốt và tôi sẽ đăng một bài báo về nó sau vài ngày nữa

Bạn muốn tìm hiểu cách lấy tích phân trong Python?

Thích bài viết? . Tôi sẽ nhận được một phần phí thành viên của bạn nếu bạn sử dụng liên kết sau mà không phải trả thêm phí

Chủ Đề