Regras de Derivação e a Regra da Cadeia

Published on 2026-11-04·v1.0

Objetivos de Aprendizagem

  • Aplicar as regras da constante multiplicativa, da soma, da potência, do produto e do quociente, e indicar o domínio em que cada uma vale.
  • Deduzir as regras da potência, do produto e do quociente a partir da definição da derivada por limite.
  • Enunciar a regra da cadeia com suas hipóteses e lê-la como a composição de duas aproximações lineares locais.
  • Derivar composições aninhadas camada por camada e evitar os erros usuais (esquecer a derivada interna, usar (fg)′=f′g′(fg)' = f'g').
  • Explicar como as regras do produto e da cadeia permitem a um programa calcular derivadas exatas automaticamente, e por que a regra da cadeia é o que a retropropagação (backpropagation) aplica.

Contexto e Motivação

A lição anterior, the-derivative-as-a-rate-of-change, definiu f′(a)f'(a) como um limite e o calculou para x2x^2, 1x\frac{1}{x} e x\sqrt{x}, cada vez com uma álgebra diferente. Isso não escala. Uma função como 1+(3x2−x)2\sqrt{1 + (3x^2 - x)^2} exigiria uma página de álgebra sob o sinal de limite, e uma função definida por um programa com milhares de operações está fora de questão.

A saída é derivar a função pela sua estrutura. Quase toda função deste curso é construída a partir de um pequeno estoque de funções básicas, unidas por aritmética (somas, produtos, quocientes) e por composição (ff aplicada à saída de gg). Se a derivada de cada operação de junção é conhecida, a derivada do todo sai de forma mecânica. As regras desta lição são as derivadas dessas operações, as regras da soma, da potência, do produto e do quociente demonstradas cada uma uma vez a partir da definição, e a regra da cadeia justificada por um argumento de aproximação linear, e usadas depois para sempre.

A regra da cadeia, a regra da composição, é a de maior alcance. Uma rede neural profunda é uma longa composição de camadas simples, e a derivada da sua perda em relação a um parâmetro das primeiras camadas é obtida multiplicando derivadas locais camada por camada (na forma multivariável da regra, partial-derivatives-and-the-multivariable-chain-rule). Organizar esse produto de modo eficiente é o que a retropropagação faz. Esta lição ensina apenas a regra que a torna possível, não o algoritmo.

Teoria Central

Linearidade e a regra da potência

Se ff e gg são diferenciáveis em xx e cc é uma constante, então (cf)′=cf′(cf)' = c f' e (f+g)′=f′+g′(f + g)' = f' + g'. Ambas decorrem diretamente das leis dos limites aplicadas ao quociente de diferenças. A derivada de uma constante é 00.

Regra da potência. Para um inteiro positivo nn, ddxxn=nxn−1\frac{d}{dx} x^n = n x^{n-1}. Expandindo com o binômio de Newton:

(x+h)n−xnh=nxn−1h+(n2)xn−2h2+⋯+hnh=nxn−1+(n2)xn−2h+⋯+hn−1.\frac{(x+h)^n - x^n}{h} = \frac{n x^{n-1} h + \binom{n}{2} x^{n-2} h^2 + \cdots + h^n}{h} = n x^{n-1} + \binom{n}{2} x^{n-2} h + \cdots + h^{n-1}.

Todo termo depois do primeiro ainda contém um fator hh, então some no limite. A regra se estende aos inteiros negativos pela regra do quociente abaixo, para x≠0x \neq 0. Para outros expoentes reais ela é demonstrada em derivatives-of-exponentials-logarithms-and-trigonometric-functions, onde vale para x>0x > 0. Até lá, use-a apenas com expoentes inteiros.

A regra do produto

Se ff e gg são diferenciáveis em xx, então

(fg)′=f′g+fg′.(fg)' = f'g + fg'.

Dedução: some e subtraia f(x+h) g(x)f(x+h)\,g(x) no numerador,

f(x+h)g(x+h)−f(x)g(x)h=f(x+h) g(x+h)−g(x)h+g(x) f(x+h)−f(x)h.\frac{f(x+h)g(x+h) - f(x)g(x)}{h} = f(x+h)\,\frac{g(x+h) - g(x)}{h} + g(x)\,\frac{f(x+h) - f(x)}{h}.

Quando h→0h \to 0, os quocientes viram g′(x)g'(x) e f′(x)f'(x), e f(x+h)→f(x)f(x+h) \to f(x) porque uma função diferenciável é contínua. Esse passo é essencial: o argumento precisa de lim⁡h→0f(x+h)=f(x)\lim_{h \to 0} f(x+h) = f(x), e isso vale porque ff é diferenciável em xx. A regra não é f′g′f'g': com f=g=xf = g = x, o produto é x2x^2, de derivada 2x2x, enquanto f′g′=1f'g' = 1.

A regra do quociente

Se ff e gg são diferenciáveis em xx e g(x)≠0g(x) \neq 0, então

(fg)′=f′g−fg′g2.\left(\frac{f}{g}\right)' = \frac{f'g - fg'}{g^2}.

Primeiro o inverso: 1h(1g(x+h)−1g(x))=−g(x+h)−g(x)h⋅1g(x+h) g(x)→−g′(x)g(x)2\frac{1}{h}\left(\frac{1}{g(x+h)} - \frac{1}{g(x)}\right) = -\frac{g(x+h) - g(x)}{h}\cdot\frac{1}{g(x+h)\,g(x)} \to -\frac{g'(x)}{g(x)^2}, o que usa g(x)≠0g(x) \neq 0 e a continuidade de gg. Depois, fg=f⋅1g\frac{f}{g} = f \cdot \frac{1}{g} e a regra do produto dão a fórmula. A ordem no numerador importa, porque a diferença não é simétrica. A condição g(x)≠0g(x) \neq 0 não basta sozinha: com f(x)=∣x∣f(x) = \lvert x \rvert e g(x)=1g(x) = 1 em x=0x = 0, o denominador é 11, e mesmo assim fg=∣x∣\frac{f}{g} = \lvert x \rvert não tem derivada ali, porque ff não tem.

A regra da cadeia

Teorema. Se gg é diferenciável em xx e ff é diferenciável em g(x)g(x), então f∘gf \circ g é diferenciável em xx e

(f∘g)′(x)=f′(g(x)) g′(x).(f \circ g)'(x) = f'\big(g(x)\big)\, g'(x).

Na forma de Leibniz, com u=g(x)u = g(x) e y=f(u)y = f(u): dydx=dydu⋅dudx\frac{dy}{dx} = \frac{dy}{du}\cdot\frac{du}{dx}.

Por que é verdade. Use a leitura por aproximação linear da lição anterior. Um pequeno passo hh em xx move a saída interna em cerca de g′(x) hg'(x)\,h. Um pequeno passo kk em uu move a saída externa em cerca de f′(u) kf'(u)\,k. Encadeando os dois, com k=g′(x) hk = g'(x)\,h, a saída final muda em cerca de f′(g(x)) g′(x) hf'(g(x))\,g'(x)\,h. Compor dois mapas lineares locais multiplica suas inclinações. Uma reta de inclinação 33 seguida de uma de inclinação 44 é uma reta de inclinação 1212.

A demonstração ingênua, que multiplica e divide por g(x+h)−g(x)g(x+h) - g(x), divide por zero sempre que gg assume o mesmo valor em pontos próximos. Uma demonstração completa reescreve a aproximação como uma igualdade com uma função de erro que tende a 00. O enunciado acima é o teorema padrão.

As hipóteses importam, mas nenhuma é necessária para a conclusão. Sejam g(x)=x2g(x) = x^2 e f(u)=uf(u) = \sqrt{u}, de modo que f(g(x))=x2=∣x∣f(g(x)) = \sqrt{x^2} = \lvert x \rvert. Para x≠0x \neq 0, a regra da cadeia dá 12x2⋅2x=x∣x∣\frac{1}{2\sqrt{x^2}} \cdot 2x = \frac{x}{\lvert x \rvert}, que vale ±1\pm 1, como deveria. Em x=0x = 0, a função externa u\sqrt{u} não é diferenciável em u=g(0)=0u = g(0) = 0, então o teorema não se aplica, e a conclusão falha: ∣x∣\lvert x \rvert tem uma quina em 00. A hipótese interna pode falhar do mesmo modo: com g(x)=∣x∣g(x) = \lvert x \rvert e f(u)=uf(u) = u, gg não é diferenciável em 00, e f∘g=∣x∣f \circ g = \lvert x \rvert também não. Mas falhar uma hipótese apenas retira a garantia. Com g(x)=∣x∣g(x) = \lvert x \rvert e f(u)=u2f(u) = u^2, gg não é diferenciável em 00, e mesmo assim f∘g=x2f \circ g = x^2 é.

Camada por camada

Para uma composição de várias funções, derive de fora para dentro, multiplicando ao longo do caminho. Para y=f(g(h(x)))y = f(g(h(x))):

dydx=f′(g(h(x)))⋅g′(h(x))⋅h′(x).\frac{dy}{dx} = f'\big(g(h(x))\big)\cdot g'\big(h(x)\big)\cdot h'(x).

Um programa avalia uma composição de dentro para fora e pode multiplicar as derivadas locais na mesma passada. Essa observação é a base da diferenciação automática no modo progressivo (forward mode), mostrada no Exemplo 3.

Exemplos Resolvidos

Exemplo 1: regra do quociente, domínio e reta tangente

Derive f(x)=3x2+1x2−2f(x) = \dfrac{3x^2 + 1}{x^2 - 2}.

O domínio exclui x=±2x = \pm\sqrt{2}, onde o denominador se anula. Aplicando a regra do quociente:

f′(x)=6x(x2−2)−(3x2+1)(2x)(x2−2)2=6x3−12x−6x3−2x(x2−2)2=−14x(x2−2)2.f'(x) = \frac{6x(x^2 - 2) - (3x^2 + 1)(2x)}{(x^2 - 2)^2} = \frac{6x^3 - 12x - 6x^3 - 2x}{(x^2 - 2)^2} = \frac{-14x}{(x^2 - 2)^2}.

Em x=1x = 1: f(1)=4−1=−4f(1) = \frac{4}{-1} = -4 e f′(1)=−14f'(1) = -14. Uma diferença central com passo 10−610^{-6} dá −14,000000-14{,}000000, confirmando a álgebra. A reta tangente é y=−4−14(x−1)y = -4 - 14(x - 1). Ela prevê f(1,01)≈−4,14f(1{,}01) \approx -4{,}14, e o valor verdadeiro é −4,1436-4{,}1436. Em x=1,1x = 1{,}1 ela prevê −5,4-5{,}4, enquanto o valor verdadeiro é −5,8608-5{,}8608: a função caminha para a assíntota vertical em 2≈1,414\sqrt{2} \approx 1{,}414, e a reta não consegue acompanhá-la.

Exemplo 2: uma cadeia de três camadas

Derive F(x)=1+(3x2−x)2F(x) = \sqrt{1 + (3x^2 - x)^2}.

Dê nome às camadas: u=3x2−xu = 3x^2 - x, depois v=1+u2v = 1 + u^2, depois F=vF = \sqrt{v}. Multiplique as derivadas locais:

F′(x)=12v⋅2u⋅(6x−1)=(3x2−x)(6x−1)1+(3x2−x)2.F'(x) = \frac{1}{2\sqrt{v}} \cdot 2u \cdot (6x - 1) = \frac{(3x^2 - x)(6x - 1)}{\sqrt{1 + (3x^2 - x)^2}}.

Aqui v≥1>0v \geq 1 > 0 para todo xx, então a raiz externa é sempre avaliada em um ponto onde é diferenciável, e F′F' existe em todo R\mathbb{R}. Em x=1x = 1: u=2u = 2, v=5v = 5, logo F′(1)=2⋅55=25≈4,4721F'(1) = \frac{2 \cdot 5}{\sqrt{5}} = 2\sqrt{5} \approx 4{,}4721. Uma diferença central dá 4,472144{,}47214.

Exemplo 3: a regra da cadeia dentro de um programa

A diferenciação automática no modo progressivo carrega um par (valor, derivada) por todas as operações. A regra do produto define a multiplicação de pares, e a regra da cadeia define como uma função como ⋅\sqrt{\cdot} os transforma:

plaintext
import math class Dual: def __init__(self, v, d=0.0): self.v, self.d = v, d # valor e derivada def __add__(self, o): o = o if isinstance(o, Dual) else Dual(o) return Dual(self.v + o.v, self.d + o.d) # regra da soma __radd__ = __add__ def __sub__(self, o): o = o if isinstance(o, Dual) else Dual(o) return Dual(self.v - o.v, self.d - o.d) def __mul__(self, o): o = o if isinstance(o, Dual) else Dual(o) return Dual(self.v * o.v, self.d * o.v + self.v * o.d) # regra do produto __rmul__ = __mul__ def dsqrt(a): r = math.sqrt(a.v) return Dual(r, a.d / (2 * r)) # regra da cadeia com derivada externa 1/(2 sqrt) def F(x): u = 3 * x * x - x return dsqrt(1 + u * u) out = F(Dual(1.0, 1.0)) # semente: dx/dx = 1 print(out.v, out.d) # 2.23606797749979 4.47213595499958

O programa imprime 5\sqrt{5} e 252\sqrt{5}, coincidindo com o Exemplo 2 sem nenhuma álgebra simbólica e sem passo, de modo que o compromisso entre erro de truncamento e erro de cancelamento visto nas diferenças numéricas da lição anterior não aparece. Resta apenas o arredondamento comum.

Equívocos Comuns e Armadilhas

  • "A derivada de um produto é o produto das derivadas." É f′g+fg′f'g + fg'. O contraexemplo x⋅xx \cdot x tem derivada 2x2x, não 11.
  • "Derivar (x2+1)3(x^2 + 1)^3 dá 3(x2+1)23(x^2 + 1)^2." Isso omite a derivada interna. A resposta correta é 3(x2+1)2⋅2x=6x5+12x3+6x3(x^2+1)^2 \cdot 2x = 6x^5 + 12x^3 + 6x, que em x=1x = 1 vale 2424, o dobro do valor errado 1212.
  • "O numerador da regra do quociente pode ser escrito em qualquer ordem." É f′g−fg′f'g - fg'. Trocar os dois termos inverte o sinal do resultado.
  • "A regra da potência vale para qualquer expoente, inclusive um variável." ddxxn=nxn−1\frac{d}{dx}x^n = n x^{n-1} vale quando o expoente é constante. Em 2x2^x a variável está no expoente e a regra dá a resposta errada, caso tratado na próxima lição.
  • "As regras se aplicam onde quer que a fórmula possa ser escrita." Elas se aplicam onde as hipóteses valem. Tome f(u)=u2/3f(u) = u^{2/3} e g(x)=x3g(x) = x^3 em x=0x = 0: a função externa não é diferenciável em g(0)=0g(0) = 0, e a expressão da regra da cadeia 23(x3)−1/3⋅3x2\frac{2}{3}(x^3)^{-1/3} \cdot 3x^2 é indefinida em 00, embora valha 2x2x para x≠0x \neq 0. O teorema nada diz em 00 aqui, e a composta x2x^2 por acaso é diferenciável ali, de modo que o valor precisa ser obtido pela definição.
  • "Em uma cadeia longa, as derivadas locais são fatores inofensivos." O produto delas é a resposta inteira. Cinquenta fatores 0,90{,}9 se multiplicam em cerca de 0,0050{,}005, e cinquenta fatores 1,11{,}1 em cerca de 117117. É a aritmética por trás dos gradientes que desaparecem e explodem em redes profundas, e é consequência da regra da cadeia, não de um defeito de implementação.

Resumo

Derivadas podem ser calculadas pela estrutura: constantes e somas por linearidade, xnx^n por nxn−1n x^{n-1} para expoentes inteiros, produtos por f′g+fg′f'g + fg' e quocientes por f′g−fg′g2\frac{f'g - fg'}{g^2} onde ff e gg são diferenciáveis e g≠0g \neq 0. As regras da soma, da potência, do produto e do quociente são demonstradas uma vez a partir da definição por limite, e a regra da cadeia é justificada por um argumento de aproximação linear. A regra da cadeia, (f∘g)′(x)=f′(g(x)) g′(x)(f \circ g)'(x) = f'(g(x))\,g'(x), exige gg diferenciável em xx e ff diferenciável em g(x)g(x), e diz que as inclinações de aproximações lineares locais compostas se multiplicam. Uma composição é derivada de fora para dentro, multiplicando um fator por camada. A mesma contabilidade executada por um programa dá derivadas exatas (a menos de arredondamento) sem álgebra simbólica nem passo, que é o princípio da diferenciação automática e, em aprendizado profundo, da retropropagação. A próxima lição, derivatives-of-exponentials-logarithms-and-trigonometric-functions, fornece as derivadas das demais funções básicas, de modo que estas regras alcancem quase todas as funções da prática.

Documentation Links