From 61e05dbca19029e2a54a0ed2ae57188b091a9522 Mon Sep 17 00:00:00 2001 From: rasbt Date: Thu, 23 Jan 2025 09:20:57 -0600 Subject: [PATCH] A few cosmetic updates --- .../01_main-chapter-code/appendix-D.ipynb | 63 +++++++++---------- ch07/01_main-chapter-code/ch07.ipynb | 8 ++- .../gpt_instruction_finetuning.py | 3 - 3 files changed, 36 insertions(+), 38 deletions(-) diff --git a/appendix-D/01_main-chapter-code/appendix-D.ipynb b/appendix-D/01_main-chapter-code/appendix-D.ipynb index 03e62a09..d10b8116 100644 --- a/appendix-D/01_main-chapter-code/appendix-D.ipynb +++ b/appendix-D/01_main-chapter-code/appendix-D.ipynb @@ -56,7 +56,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "torch version: 2.2.2\n" + "torch version: 2.5.1\n" ] } ], @@ -552,7 +552,7 @@ "source": [ "from previous_chapters import evaluate_model, generate_and_print_sample\n", "\n", - "BOOK_VERSION = True\n", + "ORIG_BOOK_VERSION = False\n", "\n", "\n", "def train_model(model, train_loader, val_loader, optimizer, device,\n", @@ -597,8 +597,7 @@ " loss.backward()\n", "\n", " # Apply gradient clipping after the warmup phase to avoid exploding gradients\n", - "\n", - " if BOOK_VERSION:\n", + " if ORIG_BOOK_VERSION:\n", " if global_step > warmup_steps:\n", " torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm=1.0) \n", " else:\n", @@ -650,38 +649,38 @@ "Ep 3 (Iter 000020): Train loss 5.851, Val loss 6.607\n", "Ep 3 (Iter 000025): Train loss 5.750, Val loss 6.634\n", "Every effort moves you. \"I\"I and I had to the to the to the and the of the to the of the to Gisburn, and the of the the of the of the to the to the of the of the of the to the of\n", - "Ep 4 (Iter 000030): Train loss 5.225, Val loss 6.944\n", - "Ep 4 (Iter 000035): Train loss 4.304, Val loss 6.512\n", - "Every effort moves you know \"--and--and--I \", and, and, and, and I had been, and, and \" it. \n", - "Ep 5 (Iter 000040): Train loss 3.736, Val loss 6.383\n", - "Every effort moves you know the picture to have the picture--his--his, the donkey of a little: \"strong, with a little of the donkey, in the picture--as, with a little of his painting, the donkey, the donkey, with a little\n", - "Ep 6 (Iter 000045): Train loss 2.395, Val loss 6.244\n", - "Ep 6 (Iter 000050): Train loss 2.948, Val loss 6.279\n", - "Every effort moves you?\" I, and he had a little the in a flash that he was a little the fact, and in the picture. Gisburn's my unexpected discovery; and as I had the picture--the. He was his\n", - "Ep 7 (Iter 000055): Train loss 2.316, Val loss 6.169\n", - "Ep 7 (Iter 000060): Train loss 1.003, Val loss 6.343\n", - "Every effort moves you?\" \"Yes--I glanced after him, so inevitably the last word. Gisburn's past! The women had been his pictures I remember getting off a prodigious phrase about the honour being _mine_--because he didn't say\n", - "Ep 8 (Iter 000065): Train loss 0.860, Val loss 6.348\n", - "Ep 8 (Iter 000070): Train loss 1.117, Val loss 6.375\n", - "Every effort moves you?\" \"I that my hostess was \"interesting\": on that point I could have given Miss Croft the fact, and Mrs. \"I must have Jack himself, I had again run over from Monte Carlo; and Mrs. Gis\n", - "Ep 9 (Iter 000075): Train loss 0.367, Val loss 6.498\n", - "Ep 9 (Iter 000080): Train loss 0.289, Val loss 6.612\n", - "Every effort moves you?\" \" on--forming, as it were, so inevitably the background of the house.\" \" went on groping and muddling; then I looked at the donkey again. I may be pardoned the bull--that I found\n", - "Ep 10 (Iter 000085): Train loss 0.263, Val loss 6.700\n", + "Ep 4 (Iter 000030): Train loss 4.617, Val loss 6.714\n", + "Ep 4 (Iter 000035): Train loss 4.277, Val loss 6.640\n", + "Every effort moves you, I was. Gisburn. Gisburn's. Gisburn. Gisburn's of the of Jack's. \"I of his I had the of the of the of his of, I had been. I was.\n", + "Ep 5 (Iter 000040): Train loss 3.194, Val loss 6.324\n", + "Every effort moves you know the, and in the picture--I he said, the picture--his, so--his, and the, and, and, in the, the picture, and, and, and as he said, and--because he had been his\n", + "Ep 6 (Iter 000045): Train loss 2.488, Val loss 6.263\n", + "Ep 6 (Iter 000050): Train loss 2.627, Val loss 6.264\n", + "Every effort moves you in the inevitable garlanded frame. \n", + "Ep 7 (Iter 000055): Train loss 2.193, Val loss 6.201\n", + "Ep 7 (Iter 000060): Train loss 0.818, Val loss 6.340\n", + "Every effort moves you know,\" was one of the picture for nothing--I told Mrs. \"I looked--I looked up, I felt to see a smile behind his close grayish beard--as if he had the donkey, and were amusing himself by holding\n", + "Ep 8 (Iter 000065): Train loss 0.735, Val loss 6.329\n", + "Ep 8 (Iter 000070): Train loss 0.789, Val loss 6.390\n", + "Every effort moves you?\" \"Yes--quite insensible to the irony. She wanted him vindicated--and by me!\" He laughed again, and threw back his head to look up at the sketch of the donkey. \"There were days when I\n", + "Ep 9 (Iter 000075): Train loss 0.293, Val loss 6.508\n", + "Ep 9 (Iter 000080): Train loss 0.224, Val loss 6.647\n", + "Every effort moves you?\" \"Yes--quite insensible to the irony. She wanted him vindicated--and by me!\" He laughed again, and threw back his head to look up at the sketch of the donkey. \"There were days when I\n", + "Ep 10 (Iter 000085): Train loss 0.234, Val loss 6.746\n", "Every effort moves you?\" \"Yes--quite insensible to the irony. She wanted him vindicated--and by me!\" He laughed again, and threw back his head to look up at the sketch of the donkey. \"There were days when I\n", - "Ep 11 (Iter 000090): Train loss 0.151, Val loss 6.788\n", - "Ep 11 (Iter 000095): Train loss 0.097, Val loss 6.805\n", + "Ep 11 (Iter 000090): Train loss 0.139, Val loss 6.827\n", + "Ep 11 (Iter 000095): Train loss 0.093, Val loss 6.828\n", "Every effort moves you?\" \"Yes--quite insensible to the irony. She wanted him vindicated--and by me!\" He laughed again, and threw back his head to look up at the sketch of the donkey. \"There were days when I\n", - "Ep 12 (Iter 000100): Train loss 0.081, Val loss 6.832\n", - "Ep 12 (Iter 000105): Train loss 0.089, Val loss 6.900\n", + "Ep 12 (Iter 000100): Train loss 0.057, Val loss 6.884\n", + "Ep 12 (Iter 000105): Train loss 0.071, Val loss 6.917\n", "Every effort moves you?\" \"Yes--quite insensible to the irony. She wanted him vindicated--and by me!\" He laughed again, and threw back his head to look up at the sketch of the donkey. \"There were days when I\n", - "Ep 13 (Iter 000110): Train loss 0.045, Val loss 6.911\n", - "Ep 13 (Iter 000115): Train loss 0.047, Val loss 6.903\n", + "Ep 13 (Iter 000110): Train loss 0.039, Val loss 6.937\n", + "Ep 13 (Iter 000115): Train loss 0.032, Val loss 6.937\n", "Every effort moves you?\" \"Yes--quite insensible to the irony. She wanted him vindicated--and by me!\" He laughed again, and threw back his head to look up at the sketch of the donkey. \"There were days when I\n", - "Ep 14 (Iter 000120): Train loss 0.038, Val loss 6.907\n", - "Ep 14 (Iter 000125): Train loss 0.040, Val loss 6.912\n", + "Ep 14 (Iter 000120): Train loss 0.032, Val loss 6.934\n", + "Ep 14 (Iter 000125): Train loss 0.035, Val loss 6.936\n", "Every effort moves you?\" \"Yes--quite insensible to the irony. She wanted him vindicated--and by me!\" He laughed again, and threw back his head to look up at the sketch of the donkey. \"There were days when I\n", - "Ep 15 (Iter 000130): Train loss 0.041, Val loss 6.915\n", + "Ep 15 (Iter 000130): Train loss 0.035, Val loss 6.938\n", "Every effort moves you?\" \"Yes--quite insensible to the irony. She wanted him vindicated--and by me!\" He laughed again, and threw back his head to look up at the sketch of the donkey. \"There were days when I\n" ] } @@ -780,7 +779,7 @@ "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] diff --git a/ch07/01_main-chapter-code/ch07.ipynb b/ch07/01_main-chapter-code/ch07.ipynb index 869f12c6..cc741a18 100644 --- a/ch07/01_main-chapter-code/ch07.ipynb +++ b/ch07/01_main-chapter-code/ch07.ipynb @@ -177,9 +177,11 @@ " text_data = response.read().decode(\"utf-8\")\n", " with open(file_path, \"w\", encoding=\"utf-8\") as file:\n", " file.write(text_data)\n", - " else:\n", - " with open(file_path, \"r\", encoding=\"utf-8\") as file:\n", - " text_data = file.read()\n", + " \n", + " # The book originally contained this unnecessary \"else\" clause:\n", + " #else:\n", + " # with open(file_path, \"r\", encoding=\"utf-8\") as file:\n", + " # text_data = file.read()\n", "\n", " with open(file_path, \"r\", encoding=\"utf-8\") as file:\n", " data = json.load(file)\n", diff --git a/ch07/01_main-chapter-code/gpt_instruction_finetuning.py b/ch07/01_main-chapter-code/gpt_instruction_finetuning.py index 6bc64293..c9ed5e65 100644 --- a/ch07/01_main-chapter-code/gpt_instruction_finetuning.py +++ b/ch07/01_main-chapter-code/gpt_instruction_finetuning.py @@ -103,9 +103,6 @@ def download_and_load_file(file_path, url): text_data = response.read().decode("utf-8") with open(file_path, "w", encoding="utf-8") as file: file.write(text_data) - else: - with open(file_path, "r", encoding="utf-8") as file: - text_data = file.read() with open(file_path, "r") as file: data = json.load(file)