29 OCT 2017 • 7 mins read

Nói về đạo hàm, như các bạn học ở lớp 11, 12 thì đạo hàm biểu thị tốc độ thay đổi của hàm. Ví dụ hàm (y=f(x)) có đạo hàm là (frac{dy}{dx}) để biểu thị tỉ lệ thay đổi của hàm (y) khi biến đầu vào (input) (x) thay đổi một lượng rất nhỏ (dx). Đối với đồ thị trên mặt phẳng tọa độ, đạo hàm tại một điểm trên đồ thị bằng độ dốc của đường biểu diễn đồ thị đó. Chính vì thế mới có nguyên tắc tìm tiếp tuyến của đồ thị tại một điểm bằng cách tính đạo hàm. Nếu bạn từng làm gà chọi thi đại học, mấy cái mình nói ra ở đây chắc hẳn quá quen thuộc với bạn rồi.

Đang xem: Gradient là gì toán học

Đạo hàm như vậy là đạo hàm thông thường (ordinary derivative).

Đạo hàm riêng (partial derivative) cũng hoạt động trên nguyên tắc tương tự.

*

Đồ thị hàm (z = f(x, y) = x^3y^2).

Đạo hàm riêng theo biến (y), ký hiệu là (f_y) hoặc (frac{partial z}{partial y}) sẽ được tính giống như đạo hàm bình thường nếu ta xem tất cả các biến khác (y) là hằng số. Với đạo hàm thường ta dùng chữ (d), đạo hàm riêng ta dùng chữ (partial) (đọc là “del” hoặc “partial”).

Khi xem (x) là hằng số, mình sẽ dùng một mặt phẳng, chẳng hạn (x=1), để cắt đồ thị (z=x^3y^2).

*

Đồ thị hàm (z = f(x, y) = x^3y^2).

để lại giao tuyến là đường (1^3y^2=y^2)

Lợi ích của việc dùng đạo hàm riêng là mình có thể quan sát được sự biến động của hàm khi chỉ thay đổi một biến và giữ nguyên các thông số input còn lại. Để có đầy đủ thông tin về tốc độ thay đổi đó, chúng ta cần phải biết các biến được giữ nguyên là biến nào và có giá trị giữ nguyên bằng mấy, sau đó thay các giá trị này vào.

Theo ví dụ trên thì:

Đạo hàm riêng theo biến (y) của đại lượng (z) khi (x=1) là (2y). Tại điểm (x=1, y=2) trên mặt phẳng (z=f(x,y)), đạo hàm riêng theo biến (y) bằng (2y = 2 imes 2 = 4). Tức là tại điểm đó, nếu bạn giữ nguyên (x) và dịch chuyển (y) một lượng rất nhỏ bằng (partial y) thì đại lượng (z) cũng sẽ thay đổi một lượng, nhưng gấp 4 lần (partial y) mà bạn thay đổi với (y). Chính vì vậy ta viết (frac{partial z}{partial y} = 4).

Gradient của hàm (f( extbf{v})) với ( extbf{v} = (v_1, v_2, …, v_n)) là một vector:

< abla f = left<egin{array}{c} frac{partial f}{partial v_1}\ frac{partial f}{partial v_2}\ dots\ frac{partial f}{partial v_n} end{array} ight>>

Mình không biết dịch “directional derivative” ra tiếng Việt như thế nào nên dịch thô thiển như vậy thôi. Đạo hàm có hướng có nhiều ý nghĩa và chức năng khác nhau, trong bài này chỉ nói đến việc mô tả tốc độ thay đổi của hàm.

Xem thêm: Chế Độ Thỉnh Giảng Viên Thỉnh Giảng Là Gì ? Cách Quản Lý Cách Quản Lý

Đạo hàm có hướng là một dạng tổng quát của đạo hàm riêng. Nếu đạo hàm riêng chỉ có thể xét cho sự thay đổi của một biến thì đạo hàm có hướng xét sự thay đổi của nhiều biến.

Mình sẽ nhóm các biến vào một vector, tức là thay vì ghi (z=f(x,y)) thì ghi (z=f( extbf{v})) và ngầm hiểu ( extbf{v}=left<egin{array}{c}x\ yend{array} ight>).

Do mình có 2 biến (x, y) nên không gian input của mình sẽ là mặt phẳng. Không gian output của hàm (f) là một tia số. Hàm (f) làm nhiệm vụ “nối” một điểm trong không gian input đến một điểm trong không gian output, các bạn cứ tạm hình dung giống như ánh xạ vậy nhé.

Giả sử mình có một vector ( extbf{w}), câu hỏi đặt ra là nếu điểm trong không gian input của mình bị đẩy lệch đi một ít theo chiều của vector ( extbf{w}), thì điểm trong không gian output của mình sẽ bị lệch đi bao nhiêu lần?

Quan sát hình sau. Hai điểm cùng màu là một bộ input-output tương ứng nhau cho hàm (f). Ví dụ ở bên trái, điểm màu đỏ ((1,2)) làm input thì sẽ cho điểm màu đỏ ở ảnh phải có giá trị (f(x,y)=x^3y^2=4). Bây giờ nếu trong hình trái, mình dời điểm màu đỏ sang vị trí điểm màu xanh theo hướng (chỉ hướng thôi nhé, còn khoảng cách được quyết định bởi (h
ightarrow 0)) của ( extbf{w}=(1,3)), thì ở hình bên phải độ dời đó sẽ gấp bao nhiêu lần so với bên trái?

*

*

Từ đó nảy sinh ra ký hiệu (frac{partial f}{partial extbf{w}}), hoặc (
abla_{ extbf{w}}f( extbf{v})) và đạo hàm có hướng. Nếu bạn nắm được cách tính đạo hàm bình thường, chắc chắn cách tính sau sẽ không có gì đáng ngạc nhiên:

Một số tài liệu sẽ định nghĩa khác một tí, chỉ xét đến chiều của vector và dùng để tính tốc độ thay đổi của hàm:

< abla_{ extbf{w}}f( extbf{v} = abla_{ extbf{w}} f( extbf{v}) = frac{ abla fcdot extbf{w}}{left|left| extbf{w} ight| ight|}>

Note:À, ừm… đó là vì để đảm bảo mình luôn xét sự dịch chuyển theo vector đơn vị (vector có độ dài bằng 1). Nếu bạn chưa hiểu thì hãy tưởng tượng nhé. Trong ví dụ trên, dù ta lấy ( extbf{w}=(1,3)) hay ( extbf{w}=(2,6)) chúng ta đều mong muốn (
abla_{ extbf{w}}f( extbf{v})) ra một giá trị duy nhất, đúng không? Vì mục tiêu lúc này của đạo hàm hướng là mô tả sự thay đổi của hàm khi thay đổi input theo một chiều nhất định.

Một số người còn xét đến độ lớn của ( extbf{w}) và cho rằng nếu nó càng lớn thì tốc độ tăng cũng phải lớn theo. Mình đã có thử đặt câu hỏi này trên Reddit và trên Quora. Hóa ra là nó tạo sự thuận tiện cho các tính chất khác :)) (“because it’s mathematically convenient!”). Nếu có dịp mình sẽ nghiên cứu sâu thêm mảng này. Tạm thời bây giờ, nếu đơn thuần tính tốc độ hàm thì mình cần dùng vector đơn vị, với lý do đã đề cập ở trên.

Theo ví dụ trên thì:

<egin{aligned} abla_{ extbf{w}} f( extbf{v}) &= frac{1}{sqrt{10}}left( 1frac{partial f}{partial x} + 3frac{partial f}{partial y} ight)\ &= frac{1}{sqrt{10}}left( 3x^2y^2 + 6x^3y ight)end{aligned}>

Tại các điểm input cụ thể, bạn có thể thay vào và tính ra được đạo hàm hướng tại điểm đó, còn gọi là tính độ dốc (slope).

Tốc độ thay đổi của hàm (f):

< abla_{ extbf{w}} f( extbf{v}) = abla fcdot extbf{w}>

*

Contour map

Tại một điểm input cố định, hàm (f) tăng nhanh nhất (max) khi (w) cùng hướng với (
abla f) (tính chất tích vô hướng).

Do đó, người ta gọi gradient là chiều tăng nhanh nhất của hàm (direction of steepest ascent).

Xem thêm: Khái Niệm Môi Trường Là Gì ? Những Điều Cần Biết Về Môi Trường Tự Nhiên

Các contour lines nằm sát nhau sẽ gần như song song và cách nhanh nhất di chuyển giữa hai đường song song là qua đường vuông góc chung. Cách đi này trùng với hướng gradient, hệ quả là, gradient luôn vuông góc với các đường contour lines.

Leave a Reply

Your email address will not be published. Required fields are marked *