{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import torch\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "\n", "def draw_graph(x, y):\n", " # 计算梯度\n", " y.sum().backward()\n", " fig = plt.figure(figsize=(12, 6), dpi=80)\n", " ax = fig.add_subplot(1, 2, 1)\n", " ax.plot(x.detach().numpy(), y.detach().numpy())\n", " ax = fig.add_subplot(1, 2, 2)\n", " ax.plot(x.detach().numpy(), x.grad.numpy())\n", " return fig" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Sigmoid\n", "x = torch.linspace(-10, 10, 1000)\n", "x.requires_grad = True\n", "y = torch.sigmoid(x)\n", "draw_graph(x, y).savefig('sigmoid.png', dpi=200)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Tanh\n", "x = torch.linspace(-10, 10, 1000)\n", "x.requires_grad = True\n", "y = torch.tanh(x)\n", "draw_graph(x, y).savefig('tanh.png', dpi=200)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# ReLU\n", "x = torch.linspace(-10, 10, 1000)\n", "x.requires_grad = True\n", "y = torch.nn.functional.relu(x)\n", "draw_graph(x, y).savefig('relu.png', dpi=200)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "func = {}\n", "# GeLU\n", "x = torch.linspace(-10, 10, 1000)\n", "x.requires_grad = True\n", "y = torch.nn.functional.gelu(x)\n", "func['GeLU'] = (x, y)\n", "# ELU\n", "x = torch.linspace(-10, 10, 1000)\n", "x.requires_grad = True\n", "y = torch.nn.functional.elu(x)\n", "func['ELU'] = (x, y)\n", "# SiLU\n", "x = torch.linspace(-10, 10, 1000)\n", "x.requires_grad = True\n", "y = torch.nn.functional.silu(x)\n", "func['SiLU'] = (x, y)\n", "# ReLU\n", "x = torch.linspace(-10, 10, 1000)\n", "x.requires_grad = True\n", "y = torch.nn.functional.relu(x)\n", "func['ReLU'] = (x, y)\n", "\n", "# 画图\n", "fig = plt.figure(figsize=(12, 6), dpi=80)\n", "func_ax = fig.add_subplot(1, 2, 1)\n", "gradient_ax = fig.add_subplot(1, 2, 2)\n", "plt.rcParams['font.sans-serif'] = ['SimHei']\n", "plt.rcParams['axes.unicode_minus'] = False\n", "plt.rcParams.update({'font.size': 13})\n", "style = ['b:', 'r-.', 'g--', 'k']\n", "legends = []\n", "for i, key in enumerate(func):\n", " x, y = func[key]\n", " y.sum().backward()\n", " func_ax.plot(x.detach().numpy(), y.detach().numpy(), style[i])\n", " gradient_ax.plot(x.detach().numpy(), x.grad.numpy(), style[i])\n", " legends.append(key)\n", "func_ax.legend(legends, shadow=True)\n", "gradient_ax.legend(legends, shadow=True)\n", "fig.savefig('relu_family.png', dpi=200)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.5" } }, "nbformat": 4, "nbformat_minor": 4 }