{ "cells": [ { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "from datasets import load_dataset\n", "\n", "ds = load_dataset(\"HuggingFaceH4/MATH-500\")[\"test\"]" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'problem': 'Let $n$ be a positive integer. Simplify the expression\\n\\\\[\\\\frac{(2^4 + \\\\frac{1}{4})(4^4 + \\\\frac{1}{4}) \\\\dotsm [(2n)^4 + \\\\frac{1}{4}]}{(1^4 + \\\\frac{1}{4})(3^4 + \\\\frac{1}{4}) \\\\dotsm [(2n - 1)^4 + \\\\frac{1}{4}]}.\\\\]',\n", " 'solution': 'Let\\n\\\\[f(m) = m^4 + \\\\frac{1}{4} = \\\\frac{4m^4 + 1}{4}.\\\\]We can factor this with a little give and take:\\n\\\\begin{align*}\\nf(m) &= \\\\frac{4m^4 + 1}{4} \\\\\\\\\\n&= \\\\frac{4m^4 + 4m^2 + 1 - 4m^2}{4} \\\\\\\\\\n&= \\\\frac{(2m^2 + 1)^2 - (2m)^2}{4} \\\\\\\\\\n&= \\\\frac{(2m^2 + 2m + 1)(2m^2 - 2m + 1)}{4}.\\n\\\\end{align*}Now, let $g(m) = 2m^2 + 2m + 1.$ Then\\n\\\\[g(m - 1) = 2(m - 1)^2 + 2(m - 1) + 1 = 2m^2 - 2m + 1.\\\\]Hence,\\n\\\\[f(m) = \\\\frac{g(m) g(m - 1)}{4}.\\\\]Therefore,\\n\\\\begin{align*}\\n\\\\frac{(2^4 + \\\\frac{1}{4})(4^4 + \\\\frac{1}{4}) \\\\dotsm [(2n)^4 + \\\\frac{1}{4}]}{(1^4 + \\\\frac{1}{4})(3^4 + \\\\frac{1}{4}) \\\\dotsm [(2n - 1)^4 + \\\\frac{1}{4}]} &= \\\\frac{f(2) f(4) \\\\dotsm f(2n)}{f(1) f(3) \\\\dotsm f(2n - 1)} \\\\\\\\\\n&= \\\\frac{\\\\frac{g(2) g(1)}{4} \\\\cdot \\\\frac{g(4) g(3)}{4} \\\\dotsm \\\\frac{g(2n) g(2n - 1)}{4}}{\\\\frac{g(1) g(0)}{4} \\\\cdot \\\\frac{g(3) g(2)}{4} \\\\dotsm \\\\frac{g(2n - 1) g(2n - 2)}{4}} \\\\\\\\\\n&= \\\\frac{g(2n)}{g(0)} \\\\\\\\\\n&= 2(2n)^2 + 2(2n) + 1 \\\\\\\\\\n&= \\\\boxed{8n^2 + 4n + 1}.\\n\\\\end{align*}',\n", " 'answer': '8n^2 + 4n + 1',\n", " 'subject': 'Intermediate Algebra',\n", " 'level': 5,\n", " 'unique_id': 'test/intermediate_algebra/1467.json'}" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ds[481]" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "file_path=\"/home/tianqiu/tts_schedule/results/full_500_iterative/iterative_summary.json\"\n", "\n", "import json\n", "\n", "with open(file_path, 'r') as f:\n", " data = json.load(f)\n", "\n", "round_stats = data['round_stats']\n", "round_correct_list=[]\n", "for i in range(len(round_stats)):\n", " round_correct_list.append(round_stats[i]['round_right_index'])\n", "\n", "level_lists=[]\n", "\n", "for i in range(len(round_correct_list)):\n", " level_list=[]\n", " for j in range(len(round_correct_list[i])):\n", " level = ds[round_correct_list[i][j]][\"level\"]\n", " level_list.append(level)\n", " level_lists.append(level_list)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[[4,\n", " 3,\n", " 2,\n", " 2,\n", " 4,\n", " 2,\n", " 2,\n", " 4,\n", " 4,\n", " 5,\n", " 4,\n", " 4,\n", " 5,\n", " 2,\n", " 2,\n", " 5,\n", " 4,\n", " 5,\n", " 4,\n", " 3,\n", " 3,\n", " 4,\n", " 4,\n", " 2,\n", " 5,\n", " 3,\n", " 4,\n", " 3,\n", " 5,\n", " 3,\n", " 5,\n", " 2,\n", " 3,\n", " 1,\n", " 2,\n", " 2,\n", " 5,\n", " 3,\n", " 2,\n", " 4,\n", " 4,\n", " 2,\n", " 2,\n", " 1,\n", " 3,\n", " 2,\n", " 2,\n", " 4,\n", " 3,\n", " 1,\n", " 2,\n", " 4,\n", " 4,\n", " 1,\n", " 3,\n", " 3,\n", " 3,\n", " 4,\n", " 2,\n", " 3,\n", " 3,\n", " 4,\n", " 3,\n", " 1,\n", " 1,\n", " 2,\n", " 2,\n", " 2,\n", " 5,\n", " 4,\n", " 4,\n", " 1,\n", " 1,\n", " 4,\n", " 4,\n", " 5,\n", " 1,\n", " 3,\n", " 4,\n", " 1,\n", " 4,\n", " 2,\n", " 2,\n", " 3,\n", " 4,\n", " 4,\n", " 4,\n", " 5,\n", " 3,\n", " 1,\n", " 2,\n", " 3,\n", " 4,\n", " 3,\n", " 3,\n", " 3,\n", " 3,\n", " 1,\n", " 5,\n", " 4,\n", " 2,\n", " 3,\n", " 2,\n", " 3,\n", " 3,\n", " 3,\n", " 1,\n", " 4,\n", " 3,\n", " 1,\n", " 1,\n", " 4,\n", " 3,\n", " 3,\n", " 4,\n", " 4,\n", " 4,\n", " 5,\n", " 5,\n", " 3,\n", " 4,\n", " 2,\n", " 1,\n", " 4,\n", " 2,\n", " 3,\n", " 1,\n", " 5,\n", " 4,\n", " 5,\n", " 1,\n", " 4,\n", " 4,\n", " 3,\n", " 5,\n", " 4,\n", " 2,\n", " 3,\n", " 1,\n", " 3,\n", " 4,\n", " 3,\n", " 2,\n", " 1,\n", " 1,\n", " 3,\n", " 5,\n", " 2,\n", " 1,\n", " 4,\n", " 5,\n", " 2,\n", " 3,\n", " 5,\n", " 2,\n", " 3,\n", " 4,\n", " 2,\n", " 2,\n", " 5,\n", " 4,\n", " 5,\n", " 3,\n", " 5,\n", " 5,\n", " 3,\n", " 5,\n", " 4,\n", " 5,\n", " 2,\n", " 3,\n", " 1,\n", " 5,\n", " 2,\n", " 1,\n", " 5,\n", " 2,\n", " 3,\n", " 3,\n", " 3,\n", " 2,\n", " 2,\n", " 2,\n", " 3,\n", " 4,\n", " 3,\n", " 3,\n", " 5,\n", " 5,\n", " 3,\n", " 4,\n", " 3,\n", " 2,\n", " 2,\n", " 2,\n", " 4,\n", " 1,\n", " 3,\n", " 4,\n", " 4,\n", " 5,\n", " 3,\n", " 3,\n", " 2,\n", " 3,\n", " 4,\n", " 1,\n", " 5,\n", " 4,\n", " 1,\n", " 2,\n", " 2,\n", " 3,\n", " 4,\n", " 4,\n", " 2,\n", " 1,\n", " 4,\n", " 5,\n", " 5,\n", " 4,\n", " 2,\n", " 3,\n", " 2,\n", " 5,\n", " 4,\n", " 4,\n", " 2,\n", " 4,\n", " 5,\n", " 5,\n", " 2,\n", " 3,\n", " 5,\n", " 2,\n", " 3,\n", " 2,\n", " 1,\n", " 3,\n", " 2,\n", " 5,\n", " 5,\n", " 4,\n", " 2,\n", " 1,\n", " 4,\n", " 1,\n", " 2,\n", " 3,\n", " 3,\n", " 1,\n", " 5,\n", " 4,\n", " 5,\n", " 4,\n", " 4,\n", " 1,\n", " 3,\n", " 3,\n", " 4,\n", " 3,\n", " 5,\n", " 5,\n", " 3,\n", " 2,\n", " 3,\n", " 2,\n", " 4,\n", " 4,\n", " 4,\n", " 2,\n", " 1,\n", " 4,\n", " 3,\n", " 4,\n", " 4,\n", " 4,\n", " 5,\n", " 2,\n", " 4,\n", " 4,\n", " 4,\n", " 3,\n", " 3,\n", " 4,\n", " 3,\n", " 2,\n", " 2,\n", " 2,\n", " 5,\n", " 2,\n", " 2,\n", " 4,\n", " 2,\n", " 4,\n", " 2,\n", " 4,\n", " 1,\n", " 3,\n", " 4,\n", " 5,\n", " 5,\n", " 5,\n", " 2,\n", " 2,\n", " 3,\n", " 4,\n", " 2,\n", " 5,\n", " 5,\n", " 1,\n", " 1,\n", " 1,\n", " 2,\n", " 3,\n", " 5,\n", " 2,\n", " 3,\n", " 2,\n", " 1,\n", " 2,\n", " 5,\n", " 5,\n", " 4,\n", " 2,\n", " 3,\n", " 5,\n", " 4,\n", " 5,\n", " 2,\n", " 5,\n", " 2,\n", " 4,\n", " 4,\n", " 5,\n", " 2,\n", " 5,\n", " 1,\n", " 5,\n", " 1,\n", " 3,\n", " 3,\n", " 3,\n", " 5,\n", " 3,\n", " 4,\n", " 5,\n", " 3,\n", " 4,\n", " 5,\n", " 5,\n", " 4,\n", " 4,\n", " 3,\n", " 4,\n", " 5,\n", " 2,\n", " 3,\n", " 3,\n", " 3,\n", " 5,\n", " 1,\n", " 4,\n", " 5,\n", " 1,\n", " 3,\n", " 4,\n", " 5,\n", " 3,\n", " 3,\n", " 4,\n", " 4,\n", " 4,\n", " 5,\n", " 2],\n", " [4,\n", " 2,\n", " 3,\n", " 4,\n", " 3,\n", " 5,\n", " 5,\n", " 5,\n", " 5,\n", " 4,\n", " 3,\n", " 5,\n", " 5,\n", " 3,\n", " 4,\n", " 3,\n", " 3,\n", " 5,\n", " 5,\n", " 2,\n", " 5,\n", " 3,\n", " 5,\n", " 4,\n", " 4,\n", " 3,\n", " 4,\n", " 5,\n", " 4,\n", " 2,\n", " 5,\n", " 5],\n", " [3, 4, 5, 4, 3, 5, 5, 5, 2, 3, 5, 4],\n", " [5, 4, 4, 4, 2, 4],\n", " [5, 5, 5, 2, 3, 5, 4],\n", " [3, 5]]" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "level_lists" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Pass at round 0: Counter({4: 95, 3: 88, 2: 80, 5: 69, 1: 43})\n", "Pass at round 1: Counter({5: 13, 4: 8, 3: 8, 2: 3})\n", "Pass at round 2: Counter({5: 5, 3: 3, 4: 3, 2: 1})\n", "Pass at round 3: Counter({4: 4, 5: 1, 2: 1})\n", "Pass at round 4: Counter({5: 4, 2: 1, 3: 1, 4: 1})\n", "Pass at round 5: Counter({3: 1, 5: 1})\n" ] } ], "source": [ "import collections\n", "\n", "for i,ls in enumerate(level_lists):\n", " counter = collections.Counter(ls)\n", " print(f\"Pass at round {i}: {counter}\")\n", " " ] } ], "metadata": { "kernelspec": { "display_name": "vllm_if", "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.10.16" } }, "nbformat": 4, "nbformat_minor": 2 }