f:Rn→Rn
Df(x)J(x)(∇f(x))Tn
Df(x)ei=limε→0f(x+εei)−f(x)ε
với mỗi , giả sử bạn không thực hiện bất kỳ loại "phân biệt hữu hạn thông minh" nào (như Curtis-Powell-Reid) vì bạn biết (hoặc có thể phát hiện) mô hình thưa thớt của . Nếu lớn, đó có thể là rất nhiều đánh giá chức năng. Nếu bạn có biểu thức phân tích cho , thì việc tính toán nó có thể rẻ hơn. Các phương pháp phân biệt tự động (còn được gọi là thuật toán) cũng có thể được sử dụng trong một số trường hợp để tính toán với chi phí gấp khoảng 3 đến 5 lần so với đánh giá hàm.i=1,…,nDfnDfDf
Cũng có những lo ngại về số lượng. Rõ ràng, trên máy tính, chúng ta không thể lấy giới hạn của vô hướng khi nó về 0, vì vậy khi chúng ta ước tính , chúng ta thực sự chọn là "nhỏ" và tính toánDfε
Df(x)ei≈f(x+εei)−f(x)ε,
trong đó có nghĩa là nó gần đúng và chúng tôi hy vọng đó là một xấp xỉ thực sự tốt. Tính toán xấp xỉ này trong số học dấu phẩy động là khó khăn vì nếu bạn chọn quá lớn, thì xấp xỉ của bạn có thể xấu, nhưng nếu bạn chọn quá nhỏ, có thể có lỗi làm tròn đáng kể. Những hiệu ứng này được đề cập trong bài viết Wikipedia về sự khác biệt về số lượng một cách chi tiết; tài liệu tham khảo chi tiết hơn có thể được tìm thấy trong bài viết.≈εε
Nếu lỗi trong ma trận Jacobian không quá lớn, các phép lặp Newton-Raphson sẽ hội tụ. Để biết phân tích lý thuyết chi tiết, xem Chương 25 về Độ chính xác và Tính ổn định của Thuật toán số của Nick Higham , hoặc bài báo của Françoir Tisseur dựa trên đó.Df
Các thư viện thường chăm sóc các chi tiết thuật toán này cho bạn và thông thường, việc triển khai thư viện của thuật toán Newton-Raphson (hoặc các biến thể của chúng) sẽ hội tụ khá độc đáo, nhưng thường thì sẽ có một vấn đề gây ra một số rắc rối do những hạn chế ở trên. Trong trường hợp vô hướng , tôi sẽ sử dụng phương pháp của Brent , nhờ vào tính mạnh mẽ và tốc độ hội tụ tốt trong thực tế.(n=1)