summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/date_demo/build/date_demo2/localpycs/pyimod01_archive.pycbin0 -> 8942 bytes
-rw-r--r--app/date_demo/build/date_demo2/localpycs/pyimod02_importers.pycbin0 -> 17741 bytes
-rw-r--r--app/date_demo/build/date_demo2/localpycs/pyimod03_ctypes.pycbin0 -> 4182 bytes
-rw-r--r--app/date_demo/build/date_demo2/localpycs/struct.pycbin0 -> 297 bytes
-rw-r--r--app/date_demo/dist/.DS_Storebin0 -> 6148 bytes
-rw-r--r--basics/np_basics/axis_demo.py0
-rw-r--r--fun_math/monte_carlo/random_cut.py0
-rw-r--r--learn_torch/grad/02_softmax.ipynb629
-rw-r--r--misc/process.py58
-rw-r--r--test/pkg/__pycache__/__init__.cpython-36.pycbin0 -> 220 bytes
-rw-r--r--test/pkg/__pycache__/a_module.cpython-36.pycbin0 -> 286 bytes
-rw-r--r--test/pkg/a_module.pycbin0 -> 368 bytes
-rw-r--r--web/bigai/0601.html47
13 files changed, 705 insertions, 29 deletions
diff --git a/app/date_demo/build/date_demo2/localpycs/pyimod01_archive.pyc b/app/date_demo/build/date_demo2/localpycs/pyimod01_archive.pyc
new file mode 100644
index 0000000..f3ed546
--- /dev/null
+++ b/app/date_demo/build/date_demo2/localpycs/pyimod01_archive.pyc
Binary files differ
diff --git a/app/date_demo/build/date_demo2/localpycs/pyimod02_importers.pyc b/app/date_demo/build/date_demo2/localpycs/pyimod02_importers.pyc
new file mode 100644
index 0000000..de76213
--- /dev/null
+++ b/app/date_demo/build/date_demo2/localpycs/pyimod02_importers.pyc
Binary files differ
diff --git a/app/date_demo/build/date_demo2/localpycs/pyimod03_ctypes.pyc b/app/date_demo/build/date_demo2/localpycs/pyimod03_ctypes.pyc
new file mode 100644
index 0000000..5870554
--- /dev/null
+++ b/app/date_demo/build/date_demo2/localpycs/pyimod03_ctypes.pyc
Binary files differ
diff --git a/app/date_demo/build/date_demo2/localpycs/struct.pyc b/app/date_demo/build/date_demo2/localpycs/struct.pyc
new file mode 100644
index 0000000..4b60ef2
--- /dev/null
+++ b/app/date_demo/build/date_demo2/localpycs/struct.pyc
Binary files differ
diff --git a/app/date_demo/dist/.DS_Store b/app/date_demo/dist/.DS_Store
new file mode 100644
index 0000000..f0aba0e
--- /dev/null
+++ b/app/date_demo/dist/.DS_Store
Binary files differ
diff --git a/basics/np_basics/axis_demo.py b/basics/np_basics/axis_demo.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/basics/np_basics/axis_demo.py
diff --git a/fun_math/monte_carlo/random_cut.py b/fun_math/monte_carlo/random_cut.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fun_math/monte_carlo/random_cut.py
diff --git a/learn_torch/grad/02_softmax.ipynb b/learn_torch/grad/02_softmax.ipynb
new file mode 100644
index 0000000..f39d9b4
--- /dev/null
+++ b/learn_torch/grad/02_softmax.ipynb
@@ -0,0 +1,629 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "2f6d719a",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T10:51:37.171177Z",
+ "start_time": "2022-12-24T10:51:37.167939Z"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "import torch\n",
+ "from torch import nn\n",
+ "import numpy as np\n",
+ "from IPython import display"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "67501391",
+ "metadata": {},
+ "source": [
+ "- [[pytorch] [求导练习] 01 sigmoid 函数自动求导练习(autograd,单变量,多变量 multivariables 形式)\n",
+ "](https://www.bilibili.com/video/BV1rW4y1N7ZU/)\n",
+ "- [[手推公式] sigmoid 及其导数 softmax 及其导数性质(从 logits 到 probabilities)](https://www.bilibili.com/video/BV14v4y137Sv/)\n",
+ "- [【python 数学编程】SymPy 数学家的朋友 | hessian | Jacobian\n",
+ "](https://www.bilibili.com/video/BV1si4y1U7xQ/)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "13081b8d",
+ "metadata": {},
+ "source": [
+ "## 1. softmax 计算"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "896aa430",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T10:51:39.782838Z",
+ "start_time": "2022-12-24T10:51:39.777645Z"
+ },
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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6AC9QMTqEBMTk5qaOnny5LFjx8LCTRGnEampqSNHjhw1alTr1q0xxqCJUVW17JZ1rxHorFWlJDUsyBvFuPhCiqYRMctHprz+6igs5G76/0bKXAPkdTlA3i0UoV0vX7F869at06dPr1u3Ls/zbdq0eWPuGxRF9ejRw+fzkQDG8pqmqaoaGxs7e/bs++67DyYqPXr0mDNnjiiK7777LizHuN1uURSrVKkyderUsWPHwrF333335MmTKYoyihq5J1RUfZGlV69esKKh30VkEAShZs2affr0mTV7FjxGvXo6kayPSVEw42pEKZBkKCsrKz4+fvr06d9//71uiQ1/9dWNMuX999/v0KHDggULFEVZuXIlz/Mej8fpdOZbWBRFhBDHccuWLevSpct7770nCMJHH33kcDiqVKlS1lW9Fvx+P0MzKlH13E6SJCOGlWQJazLRsKYFOrJwangqKKIUDIEov5BTZvnyKn8ViFCUUi6moH6/n6ZpY2zfMG0ZWrrf74fljB49eoBYzHFci5Yt4uLi/ve//50/f75mzZo0TRuTk2GM69evn56eHiQKdOnSRRTFo0ePgmhit9stFsuZM2d0OZsQ4nA47r77boqitm3bph+IEFJUhWVZSZJemvZSvXr1Bg4c+P7779eqVasMHlKBgIXKhAkTOnXqNH369Ehe2qTEmFqNKMXv9/t8vpiYmCNHjtA0DY05vBVYqUNU8vLLLw8bNgwhxAQ4f/58mDpwHAd+MbNmzRo+fDhN0w6Ho1q1amfPns3MzIxOlQbUaubMmT/t+wm6e7fbfXmGRGlE071ew2OcNxt/G60ECnLLNMtHrLzhkFAFBrkcxytoK01g1J85c+a+ffvge3O5XEU55Pz587t27SKENG3aNFf4wLky/Y033li1atW0tLT9+/cHyRm533ZgXSM0XZkoihzH1a5du1q1al6vV1/ZxDTOzs4WBEE343A4HPXr1w86pyzL586de/311xcsWOBwOFRVLaL9VmkBbbZevXrt27f/5JNP4O6is3sx0TFFjSjFarXabDaO4yZPngySe+TbkkpUfbKlaZrH40EI0XSBBuder1c3JfH7/dCFgcGHLMsqUaNQsQn28ytXruzcuXP//v2PHDnCcZwkSQxD0wwV+Bus+dOulipK4MIQbqptli/78uX4HcK4uHLlyk6dOvXv3//w4cO6RwkQ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\n",
+ "text/plain": [
+ "<IPython.core.display.Image object>"
+ ]
+ },
+ "execution_count": 4,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "display.Image(\"./imgs/softmax_case.png\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "id": "b6dd2136",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:02:54.207964Z",
+ "start_time": "2022-12-24T11:02:54.204552Z"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "from math import exp"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 32,
+ "id": "0b308a45",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:36:58.708720Z",
+ "start_time": "2022-12-24T11:36:58.702555Z"
+ }
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "0.22363631207948945\n",
+ "0.6718406104698835\n",
+ "0.09092373930780046\n",
+ "0.013599338142826541\n"
+ ]
+ }
+ ],
+ "source": [
+ "print(exp(1.1) / (exp(1.1) + exp(2.2) + exp(0.2) + exp(-1.7)))\n",
+ "print(exp(2.2) / (exp(1.1) + exp(2.2) + exp(0.2) + exp(-1.7)))\n",
+ "print(exp(0.2) / (exp(1.1) + exp(2.2) + exp(0.2) + exp(-1.7)))\n",
+ "print(exp(-1.7) / (exp(1.1) + exp(2.2) + exp(0.2) + exp(-1.7)))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 33,
+ "id": "73c3e432",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:37:20.785324Z",
+ "start_time": "2022-12-24T11:37:20.782026Z"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "def softmax(vector):\n",
+ " e = np.exp(vector)\n",
+ " return e / e.sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "9db6e7bf",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:37:28.417151Z",
+ "start_time": "2022-12-24T11:37:28.410859Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([0.22363631, 0.67184061, 0.09092374, 0.01359934])"
+ ]
+ },
+ "execution_count": 34,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "logits = np.asarray([1.1, 2.2, 0.2, -1.7])\n",
+ "softmax(logits)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 35,
+ "id": "c232ed44",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:37:38.319968Z",
+ "start_time": "2022-12-24T11:37:38.315097Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([0.22363631, 0.67184061, 0.09092374, 0.01359934])"
+ ]
+ },
+ "execution_count": 35,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from scipy.special import softmax\n",
+ "softmax(logits)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "id": "e1210841",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:38:00.641776Z",
+ "start_time": "2022-12-24T11:38:00.636231Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "tensor([0.2236, 0.6718, 0.0909, 0.0136])"
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "logits = torch.tensor([1.1, 2.2, 0.2, -1.7])\n",
+ "nn.Softmax(dim=0)(logits)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ae8c6cfb",
+ "metadata": {},
+ "source": [
+ "### 1.1 特点"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "c3bef52c",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:14:25.031435Z",
+ "start_time": "2022-12-24T11:14:25.025167Z"
+ }
+ },
+ "source": [
+ "- softmax:任意的数值列表转换为概率分布\n",
+ " - 通过 exp 转换为正值,转换后的 value > 0,$1 > s_i > 0$;\n",
+ " - 归一化为概率分布,加和为 1,$\\sum_i s_i=1$;\n",
+ "- “保序”\n",
+ " - -1.7 < 0.2 < 1.1 < 2.2\n",
+ " - 0.013 < 0.091 < 0.224 < 0.672"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "e9e1c6b9",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:08:24.373869Z",
+ "start_time": "2022-12-24T11:08:24.370717Z"
+ }
+ },
+ "source": [
+ "## 2. softmax grad"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "c491f8d6",
+ "metadata": {},
+ "source": [
+ "\n",
+ "$$\n",
+ "s(z_i)=\\frac{e^{z_i}}{\\sum_{j=1}^ne^{z_j}}\n",
+ "$$\n",
+ "- softmax vs sigmoid\n",
+ " - sigmoid: $\\mathbb R \\rightarrow \\mathbb R$\n",
+ " - $f(z)=\\frac{1}{1+\\exp(-z)}$\n",
+ " - softmax: $\\mathbb R^n \\rightarrow \\mathbb R^n$\n",
+ " - $s_1=s(z_1)=\\frac{e^{z_1}}{\\sum_{j=1}^ne^{z_j}}$\n",
+ " - $s_2=s(z_2)=\\frac{e^{z_2}}{\\sum_{j=1}^ne^{z_j}}$\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "id": "df19c77c",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:17:37.227799Z",
+ "start_time": "2022-12-24T11:17:37.222867Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ "<IPython.core.display.Image object>"
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "display.Image('./imgs/jacobian.png')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "id": "d2740821",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:18:41.256553Z",
+ "start_time": "2022-12-24T11:18:41.251627Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ "<IPython.core.display.Image object>"
+ ]
+ },
+ "execution_count": 22,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "display.Image('./imgs/jacobian_4*4.png')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 37,
+ "id": "8abab43f",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:43:21.740921Z",
+ "start_time": "2022-12-24T11:43:21.735334Z"
+ }
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "tensor([0.2236, 0.6718, 0.0909, 0.0136])\n",
+ "tensor([0.2236, 0.6718, 0.0909, 0.0136])\n"
+ ]
+ }
+ ],
+ "source": [
+ "logits = torch.tensor([1.1, 2.2, 0.2, -1.7])\n",
+ "print(logits.softmax(dim=0))\n",
+ "print(nn.Softmax(dim=0)(logits))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "fd15424e",
+ "metadata": {},
+ "source": [
+ "## 3. autograd"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 38,
+ "id": "1886f442",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:44:35.089524Z",
+ "start_time": "2022-12-24T11:44:35.085083Z"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "z = torch.tensor([1.1, 2.2, .2, -1.7], requires_grad=True)\n",
+ "s = z.softmax(dim=0)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "id": "91b4cfd5",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:44:48.288649Z",
+ "start_time": "2022-12-24T11:44:48.281689Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "tensor([0.2236, 0.6718, 0.0909, 0.0136], grad_fn=<SoftmaxBackward0>)"
+ ]
+ },
+ "execution_count": 39,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "s"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 41,
+ "id": "e3f1415f",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:45:31.228186Z",
+ "start_time": "2022-12-24T11:45:31.224744Z"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "s[0].backward()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "id": "0014e5de",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:45:38.927351Z",
+ "start_time": "2022-12-24T11:45:38.921564Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "tensor([ 0.1736, -0.1502, -0.0203, -0.0030])"
+ ]
+ },
+ "execution_count": 42,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "z.grad"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "id": "259dc63e",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:46:28.455014Z",
+ "start_time": "2022-12-24T11:46:28.444561Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "tensor([ 0.1736, -0.1502, -0.0203, -0.0030])"
+ ]
+ },
+ "execution_count": 44,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "z = torch.tensor([1.1, 2.2, .2, -1.7], requires_grad=True)\n",
+ "s = z.softmax(dim=0)\n",
+ "s[0].backward()\n",
+ "z.grad"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 45,
+ "id": "32cfb83a",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:46:48.314721Z",
+ "start_time": "2022-12-24T11:46:48.304168Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "tensor([-0.1502, 0.2205, -0.0611, -0.0091])"
+ ]
+ },
+ "execution_count": 45,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "z = torch.tensor([1.1, 2.2, .2, -1.7], requires_grad=True)\n",
+ "s = z.softmax(dim=0)\n",
+ "s[1].backward()\n",
+ "z.grad"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 46,
+ "id": "8e443019",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:47:07.524515Z",
+ "start_time": "2022-12-24T11:47:07.518017Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "tensor([-0.0203, -0.0611, 0.0827, -0.0012])"
+ ]
+ },
+ "execution_count": 46,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "z = torch.tensor([1.1, 2.2, .2, -1.7], requires_grad=True)\n",
+ "s = z.softmax(dim=0)\n",
+ "s[2].backward()\n",
+ "z.grad"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 47,
+ "id": "fb197d9d",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:47:13.728794Z",
+ "start_time": "2022-12-24T11:47:13.720926Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "tensor([-0.0030, -0.0091, -0.0012, 0.0134])"
+ ]
+ },
+ "execution_count": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "z = torch.tensor([1.1, 2.2, .2, -1.7], requires_grad=True)\n",
+ "s = z.softmax(dim=0)\n",
+ "s[3].backward()\n",
+ "z.grad"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f2a91ffd",
+ "metadata": {},
+ "source": [
+ "[ 0.1736, -0.1502, -0.0203, -0.0030]\\\n",
+ "[-0.1502, 0.2205, -0.0611, -0.0091]\\\n",
+ "[-0.0203, -0.0611, 0.0827, -0.0012]\\\n",
+ "[-0.0030, -0.0091, -0.0012, 0.0134]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 48,
+ "id": "445294e6",
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2022-12-24T11:49:20.544960Z",
+ "start_time": "2022-12-24T11:49:20.531351Z"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "((tensor(0.1736), tensor(-0.1502), tensor(-0.0203), tensor(-0.0030)),\n",
+ " (tensor(-0.1502), tensor(0.2205), tensor(-0.0611), tensor(-0.0091)),\n",
+ " (tensor(-0.0203), tensor(-0.0611), tensor(0.0827), tensor(-0.0012)),\n",
+ " (tensor(-0.0030), tensor(-0.0091), tensor(-0.0012), tensor(0.0134)))"
+ ]
+ },
+ "execution_count": 48,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from torch.autograd.functional import jacobian\n",
+ "def softmax(z1, z2, z3, z4):\n",
+ " exp_z = [torch.exp(z1), torch.exp(z2), torch.exp(z3), torch.exp(z4)]\n",
+ " return tuple([e/sum(exp_z) for e in exp_z])\n",
+ "z1, z2, z3, z4 = [torch.tensor(1.1), torch.tensor(2.2), torch.tensor(.2), torch.tensor(-1.7)]\n",
+ "jacobian(softmax,(z1,z2,z3, z4))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "e2659b69",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "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.7.6"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/misc/process.py b/misc/process.py
index e613615..8a21c60 100644
--- a/misc/process.py
+++ b/misc/process.py
@@ -1,29 +1,29 @@
-
-from datetime import datetime
-
-def merge():
- chinese = open('./raw_chinese.txt', encoding='UTF-8').readlines()
- english = open('./raw_english.txt', encoding='UTF-8').readlines()
- merge = open('./merge_{}.txt'.format(today), 'w', encoding='UTF-8')
- for c_row, e_row in zip(chinese, english):
- c_row = c_row.replace(',', ' ').replace(',', ' ')
- merge.write(' '.join(c_row.split()) + '\n')
- # e_row = e_row.replace(',', ' ').replace(',', ' ')
- merge.write(e_row)
-
-def split():
- merge = open('./merge_{}.txt'.format(today), encoding='utf-8').readlines()
- chinese = open('./chinese_{}.txt'.format(today), 'w', encoding='utf-8')
- english = open('./english_{}.txt'.format(today), 'w', encoding='utf-8')
- for i, row in enumerate(merge):
- if i % 2 == 0:
- chinese.write(row)
- else:
- english.write(row)
-
-if __name__ == '__main__':
- today = datetime.now().strftime('%Y%m%d')
- # merge()
- split()
- pass
-
+
+from datetime import datetime
+
+def merge():
+ chinese = open('./raw_chinese.txt', encoding='UTF-8').readlines()
+ english = open('./raw_english.txt', encoding='UTF-8').readlines()
+ merge = open('./merge_{}.txt'.format(today), 'w', encoding='UTF-8')
+ for c_row, e_row in zip(chinese, english):
+ c_row = c_row.replace(',', ' ').replace(',', ' ')
+ merge.write(' '.join(c_row.split()) + '\n')
+ # e_row = e_row.replace(',', ' ').replace(',', ' ')
+ merge.write(e_row)
+
+def split():
+ merge = open('./merge_{}.txt'.format(today), encoding='utf-8').readlines()
+ chinese = open('./chinese_{}.txt'.format(today), 'w', encoding='utf-8')
+ english = open('./english_{}.txt'.format(today), 'w', encoding='utf-8')
+ for i, row in enumerate(merge):
+ if i % 2 == 0:
+ chinese.write(row)
+ else:
+ english.write(row)
+
+if __name__ == '__main__':
+ today = datetime.now().strftime('%Y%m%d')
+ # merge()
+ split()
+ pass
+
diff --git a/test/pkg/__pycache__/__init__.cpython-36.pyc b/test/pkg/__pycache__/__init__.cpython-36.pyc
new file mode 100644
index 0000000..7704c8a
--- /dev/null
+++ b/test/pkg/__pycache__/__init__.cpython-36.pyc
Binary files differ
diff --git a/test/pkg/__pycache__/a_module.cpython-36.pyc b/test/pkg/__pycache__/a_module.cpython-36.pyc
new file mode 100644
index 0000000..7761db1
--- /dev/null
+++ b/test/pkg/__pycache__/a_module.cpython-36.pyc
Binary files differ
diff --git a/test/pkg/a_module.pyc b/test/pkg/a_module.pyc
new file mode 100644
index 0000000..dc1a6a1
--- /dev/null
+++ b/test/pkg/a_module.pyc
Binary files differ
diff --git a/web/bigai/0601.html b/web/bigai/0601.html
new file mode 100644
index 0000000..f20bfe4
--- /dev/null
+++ b/web/bigai/0601.html
@@ -0,0 +1,47 @@
+<!doctype html>
+<html>
+<head>
+<link rel="stylesheet" type="text/css" media="all" href="css/reset.css" /> <!-- reset css -->
+<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
+ <style>
+ #canvas1 {
+ border: solid;
+ color: red;
+ }
+ #canvas2 {
+ border: solid;
+ color: green;
+ }
+ #canvas3 {
+ border: solid;
+ color: blue;
+ }
+ </style>
+</head>
+
+<body>
+ <form id='form1' style="position:relative">
+ <div id='d1' style="position:absolute; top:0px; left:0px; z-index:1">
+ <canvas id='canvas1' width='200' height='100'>
+ Your browser does not support HTML5 Canvas.
+ </canvas>
+ </div>
+ <div id='d2' style="position:absolute; top:50px; left:50px; z-index:2">
+ <canvas id='canvas2' width='100' height='200'>
+ Your browser does not support HTML5 Canvas.
+ </canvas>
+ </div>
+ <div id='d3' style="position:absolute; top:75px; left:75px; z-index:3">
+ <canvas id='canvas3' width='50' height='50'>
+ Your browser does not support HTML5 Canvas.
+ </canvas>
+ </div>
+ </form>
+</body>
+
+ <script>
+ <!--分别对canvas1-2-3 添加东西,然后动态更新各自的元素内容 -->
+
+ </script>
+
+</html> \ No newline at end of file