Spaces:
Running
Running
File size: 196,614 Bytes
5c72fe4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 |
{
"cells": [
{
"cell_type": "code",
"execution_count": 15,
"id": "9b88da56-1f8f-4f9f-88f6-16d327cc89a0",
"metadata": {
"tags": []
},
"outputs": [
{
"data": {
"text/plain": [
"(['EP20_train', 'EP20_train', 'EP20_train', 'EP20_train', 'EP20_train'],\n",
" ['[[542 53]\\n [ 0 0]]',\n",
" '[[569 26]\\n [ 0 0]]',\n",
" '[[234 361]\\n [ 0 0]]',\n",
" '[[ 76 519]\\n [ 0 0]]',\n",
" '[[ 78 517]\\n [ 0 0]]'],\n",
" ['[0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]',\n",
" '[0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]',\n",
" '[1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]',\n",
" '[1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]',\n",
" '[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1]'])"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"log_file_path = \"/home/jupyter/bert/ratio_proportion_change3_1920/logs/oct_logs/log_train_finetuned_info.txt\"\n",
"\n",
"iterations = []\n",
"loss_values = []\n",
"accuracy_values = []\n",
"\n",
"with open(log_file_path, 'r') as file:\n",
" for line in file:\n",
" if line.strip().startswith(\"{\"): \n",
" line_dict = eval(line.strip()) \n",
" \n",
" iterations.append(line_dict.get('epoch')) \n",
" loss = line_dict.get('confusion_matrix') \n",
" accuracy = line_dict.get('predicted_labels')\n",
"\n",
" loss_values.append(loss)\n",
" accuracy_values.append(accuracy)\n",
"\n",
"iterations[:5], loss_values[:5], accuracy_values[:5]\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "315c3b42-0038-42d4-bc73-0e1b33d47d87",
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"accuracy_values = np.linspace(0, 1, 20)\n",
"\n",
"\n",
"plt.plot(iterations, accuracy_values, marker='o', label='Accuracy', color='green', linestyle='-', linewidth=2)\n",
"plt.xlabel('Training Iterations', fontsize=14)\n",
"plt.ylabel('Accuracy', fontsize=14)\n",
"plt.title('Model Performance over Training Iterations', fontsize=16)\n",
"plt.xticks(iterations) \n",
"plt.ylim(0, 1) \n",
"plt.grid(True)\n",
"\n",
"plt.twinx() \n",
"plt.plot(iterations, loss_values, marker='x', label='Loss', color='red', linestyle='--', linewidth=2)\n",
"plt.ylabel('Loss', fontsize=14)\n",
"plt.ylim(0, 1.6)\n",
"\n",
"plt.tight_layout()\n",
"plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "4598114c-3da3-4337-b650-6eed42cedc00",
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"import pandas as pd\n",
"\n",
"\n",
"log_file_path = \"/home/jupyter/bert/ratio_proportion_change3_1920/logs/oct_logs/log_train_finetuned_info.txt\"\n",
"\n",
"df = pd.read_csv(log_file_path, sep=\",\", names=[\"Epoch\", \"ConfusionMatrix\", \"TrueLabels\", \"PredictedLabels\", \"Probabilities\"])\n",
"\n",
"print(df)\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "d93e8a14-82ae-4a76-9629-03f44f8a5d03",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "0470f233-4cc1-4933-9d10-17549e7375a2",
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"import json\n",
"\n",
"log_file_path = \"/home/jupyter/bert/ratio_proportion_change3_1920/logs/oct_logs/log_train_finetuned_info.txt\"\n",
"\n",
"iterations = []\n",
"confusion_matrices = []\n",
"predicted_labels = []\n",
"\n",
"with open(log_file_path, 'r') as file:\n",
" for line in file:\n",
" try:\n",
" line_dict = json.loads(line.strip()) # Use json.loads to parse the JSON string\n",
" iterations.append(line_dict.get('epoch'))\n",
" confusion_matrices.append(line_dict.get('confusion_matrix'))\n",
" predicted_labels.append(line_dict.get('predicted_labels'))\n",
" except json.JSONDecodeError as e:\n",
" print(f\"Error decoding JSON on line: {line.strip()} | Error: {str(e)}\")\n",
"\n",
"print(iterations[:5], confusion_matrices[:5], predicted_labels[:5])\n"
]
},
{
"cell_type": "code",
"execution_count": 36,
"id": "e2bc96e3-2e3d-428c-9f51-7d92562244d6",
"metadata": {
"tags": []
},
"outputs": [
{
"data": {
"image/png": "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hAkTsH//frRq1QqLFi0qGQBi9+7diIsrrRjr0KED3n77bTz44IO4//770bBhQ8yfPx/NmjVz6ysQEREREVGUcz1wAoDhw4dj+PDhsp+tXLmyzHv9+/dH//79bU4VERERERGRyPUJcImIiIiIiLyOgRMREREREZEKBk5EREREREQqGDgRERERERGpYOBERERERESkgoETERERERGRCgZOREREREREKhg4ERERERERqfDEBLhOEgQBAJCfn+9ySkSFhYU4efIk8vPzkZiY6HZyyOeYn8hKzE9kJeYnshLzE1klGBMEY4RIYi5wOnbsGAAgJyfH5ZQQEREREZEXHDt2DBUrVoy4TEDQEl5FkeLiYuzduxcVKlRAIBBwOznIz89HTk4O9uzZg/T0dLeTQz7H/ERWYn4iKzE/kZWYn8gqgiDg2LFjqFGjBuLiIvdiirkap7i4OJx33nluJ6OM9PR0nvhkGeYnshLzE1mJ+YmsxPxEVlCraQri4BBEREREREQqGDgRERERERGpYODksuTkZEycOBHJycluJ4WiAPMTWYn5iazE/ERWYn4iN8Tc4BBERERERER6scaJiIiIiIhIBQMnIiIiIiIiFQyciIiIiIiIVDBwIiIiIiIiUsHAyUUzZ85EnTp1kJKSgvbt22Pt2rVuJ4k8YNWqVejduzdq1KiBQCCA+fPnh3wuCAImTJiA6tWro1y5csjLy8NPP/0Ussyff/6Jm266Cenp6cjIyMBtt92G48ePhyyzadMmdOzYESkpKcjJycHjjz9u91cjh02ePBkXXXQRKlSogKpVq6Jfv37Yvn17yDKnT5/GsGHDULlyZaSlpeHaa6/FgQMHQpbZvXs3rrzySqSmpqJq1aq47777cPbs2ZBlVq5cidatWyM5ORkNGjTA66+/bvfXI4c9//zzaNGiRcmEo7m5ufj0009LPmdeIjOmTJmCQCCAUaNGlbzHPEWeI5Ar5syZIyQlJQmvvvqq8P333wuDBw8WMjIyhAMHDridNHLZwoULhQceeED44IMPBADChx9+GPL5lClThIoVKwrz588XvvvuO6FPnz5C3bp1hVOnTpUs07NnT6Fly5bCV199JXz++edCgwYNhAEDBpR8fvToUSE7O1u46aabhC1btgjvvPOOUK5cOeHFF1906muSA3r06CG89tprwpYtW4SNGzcKvXr1EmrV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9ccff+DOO+9ErVq1kJycjGrVqqFHjx744osv3E4aERHFmAS3E0BERKTk2muvRUFBAWbNmoV69erhwIEDWLZsGQ4fPux20oiIKMawxomIiDzpyJEj+PzzzzF16lRcfvnlqF27Ntq1a4fx48ejT58+AIDp06ejefPmKF++PHJycjB06FAcP368ZBuvv/46MjIy8Mknn6BRo0ZITU3Fddddh5MnT2LWrFmoU6cOMjMzMWLECBQVFZWsV6dOHUyaNAkDBgxA+fLlUbNmTcycOTNievfs2YPrr78eGRkZqFSpEvr27Ytdu3bZcmyIiMh5DJyIiMiT0tLSkJaWhvnz5+PMmTOyy8TFxeGZZ57B999/j1mzZmH58uUYM2ZMyDInT57EM888gzlz5mDRokVYuXIlrr76aixcuBALFy7E7Nmz8eKLL+K9994LWe+JJ55Ay5YtsWHDBowbNw4jR47EkiVLZNNRWFiIHj16oEKFCvj888/xxRdfIC0tDT179kRBQYE1B4SIiFwVEARBcDsRREREct5//30MHjwYp06dQuvWrdG5c2fceOONaNGihezy7733HoYMGYJDhw4BEGucBg0ahJ9//hn169cHAAwZMgSzZ8/GgQMHkJaWBgDo2bMn6tSpgxdeeAGAWOPUpEkTfPrppyXbvvHGG5Gfn4+FCxcCEAeH+PDDD9GvXz+8+eabePTRR7F161YEAgEAQEFBATIyMjB//nx0797dngNERESOYY0TERF51rXXXou9e/diwYIF6NmzJ1auXInWrVvj9ddfBwAsXboUXbt2Rc2aNVGhQgXccsstOHz4ME6ePFmyjdTU1JKgCQCys7NRp06dkqAp+N7BgwdD9p2bm1vm761bt8qm87vvvsPPP/+MChUqlNSUVapUCadPn8aOHTvMHgYiIvIADg5BRESelpKSgm7duqFbt2546KGHcPvtt2PixIm47LLLcNVVV+HOO+/EY489hkqVKmH16tW47bbbUFBQgNTUVABAYmJiyPYCgYDse8XFxYbTePz4cbRp0wZvvfVWmc+qVKlieLtEROQdDJyIiMhXmjZtivnz52P9+vUoLi7GtGnTEBcnNqCYO3euZfv56quvyvzdpEkT2WVbt26Nd999F1WrVkV6erplaSAiIu9gUz0iIvKkw4cPo0uXLnjzzTexadMm7Ny5E/PmzcPjjz+Ovn37okGDBigsLMSzzz6LX375BbNnzy7po2SFL774Ao8//jh+/PFHzJw5E/PmzcPIkSNll73pppuQlZWFvn374vPPP8fOnTuxcuVKjBgxAr/99ptlaSIiIvewxomIiDwpLS0N7du3x1NPPYUdO3agsLAQOTk5GDx4MO6//36UK1cO06dPx9SpUzF+/Hh06tQJkydPxsCBAy3Z/z333IN169bhkUceQXp6OqZPn44ePXrILpuamopVq1Zh7NixuOaaa3Ds2DHUrFkTXbt2ZQ0UEVGU4Kh6REREYerUqYNRo0Zh1KhRbieFiIg8gk31iIiIiIiIVDBwIiIiIiIiUsGmekRERERERCpY40RERERERKSCgRMREREREZEKBk5EREREREQqGDgRERERERGpYOBERERERESkgoETERERERGRCgZOREREREREKhg4ERERERERqfh/KggwoHLn45YAAAAASUVORK5CYII=",
"text/plain": [
"<Figure size 1000x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"log_file_path = \"/home/jupyter/bert/ratio_proportion_change3_1920/logs/oct_logs/log_train_finetuned_info.txt\"\n",
"\n",
"# Lists to hold data\n",
"probabilities = []\n",
"\n",
" for line in file:\n",
" if line.strip().startswith(\"{\"): \n",
" line_dict = eval(line.strip())\n",
" # Extract the probabilities if they exist in the log\n",
" prob_entry = line_dict.get('probabilities')\n",
" if prob_entry:\n",
" # Probabilities expected to be a list of lists\n",
" probabilities.extend(eval(prob_entry))\n",
"\n",
"# Plotting the probabilities\n",
"plt.figure(figsize=(10, 6))\n",
"plt.plot(probabilities[:, 0], label='Class 0 Probability', color='blue')\n",
"plt.plot(probabilities[:, 1], label='Class 1 Probability', color='red')\n",
"plt.xlabel('Sample')\n",
"plt.ylabel('Probability')\n",
"plt.title('Class Probabilities Over Samples')\n",
"plt.legend(loc='best')\n",
"plt.grid(True)\n",
"plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": 39,
"id": "05a5968f-6dd6-4249-9e5d-ae12d51896f4",
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Parsed Log Data: {'epoch': 20, 'iter': 0, 'avg_loss': 0.6324796080589294, 'avg_acc': 100.0, 'loss': 0.6324796080589294}\n",
"Epoch: 20, Loss: 0.6324796080589294, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 10, 'avg_loss': 0.8984121463515542, 'avg_acc': 45.45454545454545, 'loss': 0.6594327092170715}\n",
"Epoch: 20, Loss: 0.6594327092170715, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 20, 'avg_loss': 0.9652528280303592, 'avg_acc': 28.57142857142857, 'loss': 1.4224793910980225}\n",
"Epoch: 20, Loss: 1.4224793910980225, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 30, 'avg_loss': 0.9635869822194499, 'avg_acc': 25.806451612903224, 'loss': 0.7135135531425476}\n",
"Epoch: 20, Loss: 0.7135135531425476, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 40, 'avg_loss': 0.972876513876566, 'avg_acc': 24.390243902439025, 'loss': 1.3517900705337524}\n",
"Epoch: 20, Loss: 1.3517900705337524, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 50, 'avg_loss': 1.021922061256334, 'avg_acc': 25.49019607843137, 'loss': 0.6623533964157104}\n",
"Epoch: 20, Loss: 0.6623533964157104, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 60, 'avg_loss': 1.0242969247161364, 'avg_acc': 22.950819672131146, 'loss': 0.7342778444290161}\n",
"Epoch: 20, Loss: 0.7342778444290161, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 70, 'avg_loss': 1.0194281394213018, 'avg_acc': 22.535211267605636, 'loss': 1.4144562482833862}\n",
"Epoch: 20, Loss: 1.4144562482833862, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 80, 'avg_loss': 0.9945832818378637, 'avg_acc': 23.456790123456788, 'loss': 0.9813053607940674}\n",
"Epoch: 20, Loss: 0.9813053607940674, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 90, 'avg_loss': 0.9772412478923798, 'avg_acc': 26.373626373626376, 'loss': 1.0407211780548096}\n",
"Epoch: 20, Loss: 1.0407211780548096, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 100, 'avg_loss': 0.9665699548060351, 'avg_acc': 27.722772277227726, 'loss': 1.2080334424972534}\n",
"Epoch: 20, Loss: 1.2080334424972534, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 110, 'avg_loss': 0.9632461189149736, 'avg_acc': 30.630630630630627, 'loss': 0.6947866678237915}\n",
"Epoch: 20, Loss: 0.6947866678237915, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 120, 'avg_loss': 0.9608795822651919, 'avg_acc': 32.231404958677686, 'loss': 0.40320727229118347}\n",
"Epoch: 20, Loss: 0.40320727229118347, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 130, 'avg_loss': 0.9593410491943359, 'avg_acc': 32.06106870229007, 'loss': 1.3654974699020386}\n",
"Epoch: 20, Loss: 1.3654974699020386, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 140, 'avg_loss': 0.950714221237399, 'avg_acc': 33.33333333333333, 'loss': 0.49264073371887207}\n",
"Epoch: 20, Loss: 0.49264073371887207, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 150, 'avg_loss': 0.9462508770409009, 'avg_acc': 34.437086092715234, 'loss': 0.9697921276092529}\n",
"Epoch: 20, Loss: 0.9697921276092529, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 160, 'avg_loss': 0.9463553169499272, 'avg_acc': 34.161490683229815, 'loss': 1.1782255172729492}\n",
"Epoch: 20, Loss: 1.1782255172729492, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 170, 'avg_loss': 0.9387507883080265, 'avg_acc': 35.67251461988304, 'loss': 1.2314364910125732}\n",
"Epoch: 20, Loss: 1.2314364910125732, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 180, 'avg_loss': 0.9282894720688709, 'avg_acc': 36.46408839779006, 'loss': 0.42901739478111267}\n",
"Epoch: 20, Loss: 0.42901739478111267, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 190, 'avg_loss': 0.928510325117261, 'avg_acc': 36.12565445026178, 'loss': 1.0955886840820312}\n",
"Epoch: 20, Loss: 1.0955886840820312, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 200, 'avg_loss': 0.9155606376887554, 'avg_acc': 38.308457711442784, 'loss': 0.32576441764831543}\n",
"Epoch: 20, Loss: 0.32576441764831543, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 210, 'avg_loss': 0.9126152413151275, 'avg_acc': 38.862559241706165, 'loss': 0.5676601529121399}\n",
"Epoch: 20, Loss: 0.5676601529121399, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 220, 'avg_loss': 0.9158515605856391, 'avg_acc': 38.009049773755656, 'loss': 1.1219587326049805}\n",
"Epoch: 20, Loss: 1.1219587326049805, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 230, 'avg_loss': 0.912027623681795, 'avg_acc': 37.66233766233766, 'loss': 0.45346391201019287}\n",
"Epoch: 20, Loss: 0.45346391201019287, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 240, 'avg_loss': 0.9076244853962506, 'avg_acc': 37.75933609958506, 'loss': 1.6801875829696655}\n",
"Epoch: 20, Loss: 1.6801875829696655, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 250, 'avg_loss': 0.9010671710231865, 'avg_acc': 38.24701195219124, 'loss': 1.5949524641036987}\n",
"Epoch: 20, Loss: 1.5949524641036987, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 260, 'avg_loss': 0.8927359990347391, 'avg_acc': 39.46360153256705, 'loss': 1.2342846393585205}\n",
"Epoch: 20, Loss: 1.2342846393585205, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 270, 'avg_loss': 0.877475259488799, 'avg_acc': 41.32841328413284, 'loss': 0.4685608446598053}\n",
"Epoch: 20, Loss: 0.4685608446598053, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 280, 'avg_loss': 0.8655961502701363, 'avg_acc': 42.34875444839858, 'loss': 0.252122700214386}\n",
"Epoch: 20, Loss: 0.252122700214386, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 290, 'avg_loss': 0.8628690249936277, 'avg_acc': 42.955326460481096, 'loss': 0.4874681234359741}\n",
"Epoch: 20, Loss: 0.4874681234359741, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 300, 'avg_loss': 0.8611048802584905, 'avg_acc': 42.857142857142854, 'loss': 0.774188756942749}\n",
"Epoch: 20, Loss: 0.774188756942749, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 310, 'avg_loss': 0.8558992817279227, 'avg_acc': 42.765273311897104, 'loss': 0.7752485275268555}\n",
"Epoch: 20, Loss: 0.7752485275268555, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 320, 'avg_loss': 0.8563959705309705, 'avg_acc': 42.36760124610592, 'loss': 1.0107471942901611}\n",
"Epoch: 20, Loss: 1.0107471942901611, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 330, 'avg_loss': 0.851796724825107, 'avg_acc': 43.202416918429, 'loss': 0.573390007019043}\n",
"Epoch: 20, Loss: 0.573390007019043, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 340, 'avg_loss': 0.8430047407090838, 'avg_acc': 43.988269794721404, 'loss': 0.2764188051223755}\n",
"Epoch: 20, Loss: 0.2764188051223755, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 350, 'avg_loss': 0.8370788225166479, 'avg_acc': 44.15954415954416, 'loss': 0.7711461782455444}\n",
"Epoch: 20, Loss: 0.7711461782455444, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 360, 'avg_loss': 0.8318019534907513, 'avg_acc': 44.87534626038781, 'loss': 0.2291455715894699}\n",
"Epoch: 20, Loss: 0.2291455715894699, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 370, 'avg_loss': 0.8259480669492018, 'avg_acc': 45.28301886792453, 'loss': 0.8360911011695862}\n",
"Epoch: 20, Loss: 0.8360911011695862, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 380, 'avg_loss': 0.8183476930371733, 'avg_acc': 46.194225721784775, 'loss': 0.1931251883506775}\n",
"Epoch: 20, Loss: 0.1931251883506775, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 390, 'avg_loss': 0.8129235445081121, 'avg_acc': 47.05882352941176, 'loss': 0.40773236751556396}\n",
"Epoch: 20, Loss: 0.40773236751556396, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 400, 'avg_loss': 0.8090237801583331, 'avg_acc': 47.13216957605985, 'loss': 0.7096580862998962}\n",
"Epoch: 20, Loss: 0.7096580862998962, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 410, 'avg_loss': 0.8038147058872701, 'avg_acc': 47.44525547445255, 'loss': 0.8231819868087769}\n",
"Epoch: 20, Loss: 0.8231819868087769, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 420, 'avg_loss': 0.7973752015772455, 'avg_acc': 48.45605700712589, 'loss': 0.928947389125824}\n",
"Epoch: 20, Loss: 0.928947389125824, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 430, 'avg_loss': 0.7922281221488789, 'avg_acc': 48.72389791183295, 'loss': 0.4240599274635315}\n",
"Epoch: 20, Loss: 0.4240599274635315, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 440, 'avg_loss': 0.7909014855179928, 'avg_acc': 48.75283446712018, 'loss': 0.4714360237121582}\n",
"Epoch: 20, Loss: 0.4714360237121582, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 450, 'avg_loss': 0.7859812361702422, 'avg_acc': 49.44567627494457, 'loss': 0.27238792181015015}\n",
"Epoch: 20, Loss: 0.27238792181015015, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 460, 'avg_loss': 0.7806033468815354, 'avg_acc': 50.108459869848154, 'loss': 0.9251547455787659}\n",
"Epoch: 20, Loss: 0.9251547455787659, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 470, 'avg_loss': 0.77501722907691, 'avg_acc': 50.530785562632694, 'loss': 1.1123549938201904}\n",
"Epoch: 20, Loss: 1.1123549938201904, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 480, 'avg_loss': 0.7672348431700728, 'avg_acc': 51.559251559251564, 'loss': 0.36292564868927}\n",
"Epoch: 20, Loss: 0.36292564868927, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 490, 'avg_loss': 0.7614982160616309, 'avg_acc': 52.342158859470466, 'loss': 0.5763269662857056}\n",
"Epoch: 20, Loss: 0.5763269662857056, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 500, 'avg_loss': 0.755586820834887, 'avg_acc': 53.093812375249506, 'loss': 0.43941155076026917}\n",
"Epoch: 20, Loss: 0.43941155076026917, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 510, 'avg_loss': 0.7529963151991017, 'avg_acc': 53.42465753424658, 'loss': 0.5494109392166138}\n",
"Epoch: 20, Loss: 0.5494109392166138, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 520, 'avg_loss': 0.7464623560489024, 'avg_acc': 53.93474088291747, 'loss': 0.9051780104637146}\n",
"Epoch: 20, Loss: 0.9051780104637146, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 530, 'avg_loss': 0.7401949792482984, 'avg_acc': 54.61393596986818, 'loss': 0.13609610497951508}\n",
"Epoch: 20, Loss: 0.13609610497951508, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 540, 'avg_loss': 0.7334553723304417, 'avg_acc': 55.26802218114602, 'loss': 0.8661832809448242}\n",
"Epoch: 20, Loss: 0.8661832809448242, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 550, 'avg_loss': 0.7272329243633578, 'avg_acc': 55.898366606170605, 'loss': 0.4187266230583191}\n",
"Epoch: 20, Loss: 0.4187266230583191, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 560, 'avg_loss': 0.7212331915762336, 'avg_acc': 56.68449197860963, 'loss': 0.38998621702194214}\n",
"Epoch: 20, Loss: 0.38998621702194214, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 570, 'avg_loss': 0.714248325851878, 'avg_acc': 57.26795096322241, 'loss': 0.42771902680397034}\n",
"Epoch: 20, Loss: 0.42771902680397034, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 580, 'avg_loss': 0.709527192832886, 'avg_acc': 57.831325301204814, 'loss': 0.4970065951347351}\n",
"Epoch: 20, Loss: 0.4970065951347351, Accuracy: None\n",
"Parsed Log Data: {'epoch': 20, 'iter': 590, 'avg_loss': 0.7070212593513293, 'avg_acc': 57.868020304568525, 'loss': 0.6174928545951843}\n",
"Epoch: 20, Loss: 0.6174928545951843, Accuracy: None\n",
"Parsed Log Data: {'epoch': 'EP20_train', 'avg_loss': 0.7055494453351037, 'total_acc': 57.983193277310924, 'precisions': 1.0, 'recalls': 0.5798319327731093, 'f1_scores': 0.7340425531914894, 'time_taken_from_start': 5.023622989654541}\n",
"Epoch: EP20_train, Loss: None, Accuracy: None\n",
"Epochs: []\n",
"Loss Values: []\n",
"Accuracy Values: []\n",
"No data to plot. Please check the log file for correct format.\n"
]
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"log_file_path = \"/home/jupyter/bert/ratio_proportion_change3_1920/logs/oct_logs/log_train_finetuned.txt\"\n",
"\n",
"epochs = []\n",
"loss_values = []\n",
"accuracy_values = []\n",
"\n",
"# Reading the log file\n",
"with open(log_file_path, 'r') as file:\n",
" for line in file:\n",
" if line.strip().startswith(\"{\"): \n",
" try:\n",
" log_data = eval(line.strip()) \n",
"\n",
" print(f\"Parsed Log Data: {log_data}\")\n",
"\n",
" epoch = log_data.get('epoch')\n",
" loss = log_data.get('loss')\n",
" accuracy = log_data.get('accuracy')\n",
"\n",
" print(f\"Epoch: {epoch}, Loss: {loss}, Accuracy: {accuracy}\")\n",
"\n",
" # Append to lists if values are present\n",
" if epoch and loss is not None and accuracy is not None:\n",
" epochs.append(epoch)\n",
" loss_values.append(float(loss))\n",
" accuracy_values.append(float(accuracy))\n",
" except Exception as e:\n",
" print(f\"Error processing line: {e}\")\n",
"\n",
"# Check if data was extracted\n",
"print(f\"Epochs: {epochs}\")\n",
"print(f\"Loss Values: {loss_values}\")\n",
"print(f\"Accuracy Values: {accuracy_values}\")\n",
"\n",
"# Plotting Loss and Accuracy if data is present\n",
"if epochs and loss_values and accuracy_values:\n",
" plt.figure(figsize=(12, 6))\n",
"\n",
" # Subplot for loss\n",
" plt.subplot(1, 2, 1)\n",
" plt.plot(epochs, loss_values, label='Loss', color='blue', marker='o')\n",
" plt.xlabel('Epoch')\n",
" plt.ylabel('Loss')\n",
" plt.title('Training Loss over Epochs')\n",
" plt.grid(True)\n",
"\n",
" # Subplot for accuracy\n",
" plt.subplot(1, 2, 2)\n",
" plt.plot(epochs, accuracy_values, label='Accuracy', color='green', marker='o')\n",
" plt.xlabel('Epoch')\n",
" plt.ylabel('Accuracy')\n",
" plt.title('Training Accuracy over Epochs')\n",
" plt.grid(True)\n",
"\n",
" plt.tight_layout()\n",
" plt.show()\n",
"else:\n",
" print(\"No data to plot. Please check the log file for correct format.\")\n"
]
},
{
"cell_type": "code",
"execution_count": 41,
"id": "2565d269-a7c7-4979-8848-56a2d2163ca1",
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Parsed Log Data: {'epoch': 20, 'iter': 0, 'avg_loss': 0.6324796080589294, 'avg_acc': 100.0, 'loss': 0.6324796080589294}\n",
"Epoch: 20, Loss: 0.6324796080589294, Average Loss: 0.6324796080589294, Average Accuracy: 100.0\n",
"Parsed Log Data: {'epoch': 20, 'iter': 10, 'avg_loss': 0.8984121463515542, 'avg_acc': 45.45454545454545, 'loss': 0.6594327092170715}\n",
"Epoch: 20, Loss: 0.6594327092170715, Average Loss: 0.8984121463515542, Average Accuracy: 45.45454545454545\n",
"Parsed Log Data: {'epoch': 20, 'iter': 20, 'avg_loss': 0.9652528280303592, 'avg_acc': 28.57142857142857, 'loss': 1.4224793910980225}\n",
"Epoch: 20, Loss: 1.4224793910980225, Average Loss: 0.9652528280303592, Average Accuracy: 28.57142857142857\n",
"Parsed Log Data: {'epoch': 20, 'iter': 30, 'avg_loss': 0.9635869822194499, 'avg_acc': 25.806451612903224, 'loss': 0.7135135531425476}\n",
"Epoch: 20, Loss: 0.7135135531425476, Average Loss: 0.9635869822194499, Average Accuracy: 25.806451612903224\n",
"Parsed Log Data: {'epoch': 20, 'iter': 40, 'avg_loss': 0.972876513876566, 'avg_acc': 24.390243902439025, 'loss': 1.3517900705337524}\n",
"Epoch: 20, Loss: 1.3517900705337524, Average Loss: 0.972876513876566, Average Accuracy: 24.390243902439025\n",
"Parsed Log Data: {'epoch': 20, 'iter': 50, 'avg_loss': 1.021922061256334, 'avg_acc': 25.49019607843137, 'loss': 0.6623533964157104}\n",
"Epoch: 20, Loss: 0.6623533964157104, Average Loss: 1.021922061256334, Average Accuracy: 25.49019607843137\n",
"Parsed Log Data: {'epoch': 20, 'iter': 60, 'avg_loss': 1.0242969247161364, 'avg_acc': 22.950819672131146, 'loss': 0.7342778444290161}\n",
"Epoch: 20, Loss: 0.7342778444290161, Average Loss: 1.0242969247161364, Average Accuracy: 22.950819672131146\n",
"Parsed Log Data: {'epoch': 20, 'iter': 70, 'avg_loss': 1.0194281394213018, 'avg_acc': 22.535211267605636, 'loss': 1.4144562482833862}\n",
"Epoch: 20, Loss: 1.4144562482833862, Average Loss: 1.0194281394213018, Average Accuracy: 22.535211267605636\n",
"Parsed Log Data: {'epoch': 20, 'iter': 80, 'avg_loss': 0.9945832818378637, 'avg_acc': 23.456790123456788, 'loss': 0.9813053607940674}\n",
"Epoch: 20, Loss: 0.9813053607940674, Average Loss: 0.9945832818378637, Average Accuracy: 23.456790123456788\n",
"Parsed Log Data: {'epoch': 20, 'iter': 90, 'avg_loss': 0.9772412478923798, 'avg_acc': 26.373626373626376, 'loss': 1.0407211780548096}\n",
"Epoch: 20, Loss: 1.0407211780548096, Average Loss: 0.9772412478923798, Average Accuracy: 26.373626373626376\n",
"Parsed Log Data: {'epoch': 20, 'iter': 100, 'avg_loss': 0.9665699548060351, 'avg_acc': 27.722772277227726, 'loss': 1.2080334424972534}\n",
"Epoch: 20, Loss: 1.2080334424972534, Average Loss: 0.9665699548060351, Average Accuracy: 27.722772277227726\n",
"Parsed Log Data: {'epoch': 20, 'iter': 110, 'avg_loss': 0.9632461189149736, 'avg_acc': 30.630630630630627, 'loss': 0.6947866678237915}\n",
"Epoch: 20, Loss: 0.6947866678237915, Average Loss: 0.9632461189149736, Average Accuracy: 30.630630630630627\n",
"Parsed Log Data: {'epoch': 20, 'iter': 120, 'avg_loss': 0.9608795822651919, 'avg_acc': 32.231404958677686, 'loss': 0.40320727229118347}\n",
"Epoch: 20, Loss: 0.40320727229118347, Average Loss: 0.9608795822651919, Average Accuracy: 32.231404958677686\n",
"Parsed Log Data: {'epoch': 20, 'iter': 130, 'avg_loss': 0.9593410491943359, 'avg_acc': 32.06106870229007, 'loss': 1.3654974699020386}\n",
"Epoch: 20, Loss: 1.3654974699020386, Average Loss: 0.9593410491943359, Average Accuracy: 32.06106870229007\n",
"Parsed Log Data: {'epoch': 20, 'iter': 140, 'avg_loss': 0.950714221237399, 'avg_acc': 33.33333333333333, 'loss': 0.49264073371887207}\n",
"Epoch: 20, Loss: 0.49264073371887207, Average Loss: 0.950714221237399, Average Accuracy: 33.33333333333333\n",
"Parsed Log Data: {'epoch': 20, 'iter': 150, 'avg_loss': 0.9462508770409009, 'avg_acc': 34.437086092715234, 'loss': 0.9697921276092529}\n",
"Epoch: 20, Loss: 0.9697921276092529, Average Loss: 0.9462508770409009, Average Accuracy: 34.437086092715234\n",
"Parsed Log Data: {'epoch': 20, 'iter': 160, 'avg_loss': 0.9463553169499272, 'avg_acc': 34.161490683229815, 'loss': 1.1782255172729492}\n",
"Epoch: 20, Loss: 1.1782255172729492, Average Loss: 0.9463553169499272, Average Accuracy: 34.161490683229815\n",
"Parsed Log Data: {'epoch': 20, 'iter': 170, 'avg_loss': 0.9387507883080265, 'avg_acc': 35.67251461988304, 'loss': 1.2314364910125732}\n",
"Epoch: 20, Loss: 1.2314364910125732, Average Loss: 0.9387507883080265, Average Accuracy: 35.67251461988304\n",
"Parsed Log Data: {'epoch': 20, 'iter': 180, 'avg_loss': 0.9282894720688709, 'avg_acc': 36.46408839779006, 'loss': 0.42901739478111267}\n",
"Epoch: 20, Loss: 0.42901739478111267, Average Loss: 0.9282894720688709, Average Accuracy: 36.46408839779006\n",
"Parsed Log Data: {'epoch': 20, 'iter': 190, 'avg_loss': 0.928510325117261, 'avg_acc': 36.12565445026178, 'loss': 1.0955886840820312}\n",
"Epoch: 20, Loss: 1.0955886840820312, Average Loss: 0.928510325117261, Average Accuracy: 36.12565445026178\n",
"Parsed Log Data: {'epoch': 20, 'iter': 200, 'avg_loss': 0.9155606376887554, 'avg_acc': 38.308457711442784, 'loss': 0.32576441764831543}\n",
"Epoch: 20, Loss: 0.32576441764831543, Average Loss: 0.9155606376887554, Average Accuracy: 38.308457711442784\n",
"Parsed Log Data: {'epoch': 20, 'iter': 210, 'avg_loss': 0.9126152413151275, 'avg_acc': 38.862559241706165, 'loss': 0.5676601529121399}\n",
"Epoch: 20, Loss: 0.5676601529121399, Average Loss: 0.9126152413151275, Average Accuracy: 38.862559241706165\n",
"Parsed Log Data: {'epoch': 20, 'iter': 220, 'avg_loss': 0.9158515605856391, 'avg_acc': 38.009049773755656, 'loss': 1.1219587326049805}\n",
"Epoch: 20, Loss: 1.1219587326049805, Average Loss: 0.9158515605856391, Average Accuracy: 38.009049773755656\n",
"Parsed Log Data: {'epoch': 20, 'iter': 230, 'avg_loss': 0.912027623681795, 'avg_acc': 37.66233766233766, 'loss': 0.45346391201019287}\n",
"Epoch: 20, Loss: 0.45346391201019287, Average Loss: 0.912027623681795, Average Accuracy: 37.66233766233766\n",
"Parsed Log Data: {'epoch': 20, 'iter': 240, 'avg_loss': 0.9076244853962506, 'avg_acc': 37.75933609958506, 'loss': 1.6801875829696655}\n",
"Epoch: 20, Loss: 1.6801875829696655, Average Loss: 0.9076244853962506, Average Accuracy: 37.75933609958506\n",
"Parsed Log Data: {'epoch': 20, 'iter': 250, 'avg_loss': 0.9010671710231865, 'avg_acc': 38.24701195219124, 'loss': 1.5949524641036987}\n",
"Epoch: 20, Loss: 1.5949524641036987, Average Loss: 0.9010671710231865, Average Accuracy: 38.24701195219124\n",
"Parsed Log Data: {'epoch': 20, 'iter': 260, 'avg_loss': 0.8927359990347391, 'avg_acc': 39.46360153256705, 'loss': 1.2342846393585205}\n",
"Epoch: 20, Loss: 1.2342846393585205, Average Loss: 0.8927359990347391, Average Accuracy: 39.46360153256705\n",
"Parsed Log Data: {'epoch': 20, 'iter': 270, 'avg_loss': 0.877475259488799, 'avg_acc': 41.32841328413284, 'loss': 0.4685608446598053}\n",
"Epoch: 20, Loss: 0.4685608446598053, Average Loss: 0.877475259488799, Average Accuracy: 41.32841328413284\n",
"Parsed Log Data: {'epoch': 20, 'iter': 280, 'avg_loss': 0.8655961502701363, 'avg_acc': 42.34875444839858, 'loss': 0.252122700214386}\n",
"Epoch: 20, Loss: 0.252122700214386, Average Loss: 0.8655961502701363, Average Accuracy: 42.34875444839858\n",
"Parsed Log Data: {'epoch': 20, 'iter': 290, 'avg_loss': 0.8628690249936277, 'avg_acc': 42.955326460481096, 'loss': 0.4874681234359741}\n",
"Epoch: 20, Loss: 0.4874681234359741, Average Loss: 0.8628690249936277, Average Accuracy: 42.955326460481096\n",
"Parsed Log Data: {'epoch': 20, 'iter': 300, 'avg_loss': 0.8611048802584905, 'avg_acc': 42.857142857142854, 'loss': 0.774188756942749}\n",
"Epoch: 20, Loss: 0.774188756942749, Average Loss: 0.8611048802584905, Average Accuracy: 42.857142857142854\n",
"Parsed Log Data: {'epoch': 20, 'iter': 310, 'avg_loss': 0.8558992817279227, 'avg_acc': 42.765273311897104, 'loss': 0.7752485275268555}\n",
"Epoch: 20, Loss: 0.7752485275268555, Average Loss: 0.8558992817279227, Average Accuracy: 42.765273311897104\n",
"Parsed Log Data: {'epoch': 20, 'iter': 320, 'avg_loss': 0.8563959705309705, 'avg_acc': 42.36760124610592, 'loss': 1.0107471942901611}\n",
"Epoch: 20, Loss: 1.0107471942901611, Average Loss: 0.8563959705309705, Average Accuracy: 42.36760124610592\n",
"Parsed Log Data: {'epoch': 20, 'iter': 330, 'avg_loss': 0.851796724825107, 'avg_acc': 43.202416918429, 'loss': 0.573390007019043}\n",
"Epoch: 20, Loss: 0.573390007019043, Average Loss: 0.851796724825107, Average Accuracy: 43.202416918429\n",
"Parsed Log Data: {'epoch': 20, 'iter': 340, 'avg_loss': 0.8430047407090838, 'avg_acc': 43.988269794721404, 'loss': 0.2764188051223755}\n",
"Epoch: 20, Loss: 0.2764188051223755, Average Loss: 0.8430047407090838, Average Accuracy: 43.988269794721404\n",
"Parsed Log Data: {'epoch': 20, 'iter': 350, 'avg_loss': 0.8370788225166479, 'avg_acc': 44.15954415954416, 'loss': 0.7711461782455444}\n",
"Epoch: 20, Loss: 0.7711461782455444, Average Loss: 0.8370788225166479, Average Accuracy: 44.15954415954416\n",
"Parsed Log Data: {'epoch': 20, 'iter': 360, 'avg_loss': 0.8318019534907513, 'avg_acc': 44.87534626038781, 'loss': 0.2291455715894699}\n",
"Epoch: 20, Loss: 0.2291455715894699, Average Loss: 0.8318019534907513, Average Accuracy: 44.87534626038781\n",
"Parsed Log Data: {'epoch': 20, 'iter': 370, 'avg_loss': 0.8259480669492018, 'avg_acc': 45.28301886792453, 'loss': 0.8360911011695862}\n",
"Epoch: 20, Loss: 0.8360911011695862, Average Loss: 0.8259480669492018, Average Accuracy: 45.28301886792453\n",
"Parsed Log Data: {'epoch': 20, 'iter': 380, 'avg_loss': 0.8183476930371733, 'avg_acc': 46.194225721784775, 'loss': 0.1931251883506775}\n",
"Epoch: 20, Loss: 0.1931251883506775, Average Loss: 0.8183476930371733, Average Accuracy: 46.194225721784775\n",
"Parsed Log Data: {'epoch': 20, 'iter': 390, 'avg_loss': 0.8129235445081121, 'avg_acc': 47.05882352941176, 'loss': 0.40773236751556396}\n",
"Epoch: 20, Loss: 0.40773236751556396, Average Loss: 0.8129235445081121, Average Accuracy: 47.05882352941176\n",
"Parsed Log Data: {'epoch': 20, 'iter': 400, 'avg_loss': 0.8090237801583331, 'avg_acc': 47.13216957605985, 'loss': 0.7096580862998962}\n",
"Epoch: 20, Loss: 0.7096580862998962, Average Loss: 0.8090237801583331, Average Accuracy: 47.13216957605985\n",
"Parsed Log Data: {'epoch': 20, 'iter': 410, 'avg_loss': 0.8038147058872701, 'avg_acc': 47.44525547445255, 'loss': 0.8231819868087769}\n",
"Epoch: 20, Loss: 0.8231819868087769, Average Loss: 0.8038147058872701, Average Accuracy: 47.44525547445255\n",
"Parsed Log Data: {'epoch': 20, 'iter': 420, 'avg_loss': 0.7973752015772455, 'avg_acc': 48.45605700712589, 'loss': 0.928947389125824}\n",
"Epoch: 20, Loss: 0.928947389125824, Average Loss: 0.7973752015772455, Average Accuracy: 48.45605700712589\n",
"Parsed Log Data: {'epoch': 20, 'iter': 430, 'avg_loss': 0.7922281221488789, 'avg_acc': 48.72389791183295, 'loss': 0.4240599274635315}\n",
"Epoch: 20, Loss: 0.4240599274635315, Average Loss: 0.7922281221488789, Average Accuracy: 48.72389791183295\n",
"Parsed Log Data: {'epoch': 20, 'iter': 440, 'avg_loss': 0.7909014855179928, 'avg_acc': 48.75283446712018, 'loss': 0.4714360237121582}\n",
"Epoch: 20, Loss: 0.4714360237121582, Average Loss: 0.7909014855179928, Average Accuracy: 48.75283446712018\n",
"Parsed Log Data: {'epoch': 20, 'iter': 450, 'avg_loss': 0.7859812361702422, 'avg_acc': 49.44567627494457, 'loss': 0.27238792181015015}\n",
"Epoch: 20, Loss: 0.27238792181015015, Average Loss: 0.7859812361702422, Average Accuracy: 49.44567627494457\n",
"Parsed Log Data: {'epoch': 20, 'iter': 460, 'avg_loss': 0.7806033468815354, 'avg_acc': 50.108459869848154, 'loss': 0.9251547455787659}\n",
"Epoch: 20, Loss: 0.9251547455787659, Average Loss: 0.7806033468815354, Average Accuracy: 50.108459869848154\n",
"Parsed Log Data: {'epoch': 20, 'iter': 470, 'avg_loss': 0.77501722907691, 'avg_acc': 50.530785562632694, 'loss': 1.1123549938201904}\n",
"Epoch: 20, Loss: 1.1123549938201904, Average Loss: 0.77501722907691, Average Accuracy: 50.530785562632694\n",
"Parsed Log Data: {'epoch': 20, 'iter': 480, 'avg_loss': 0.7672348431700728, 'avg_acc': 51.559251559251564, 'loss': 0.36292564868927}\n",
"Epoch: 20, Loss: 0.36292564868927, Average Loss: 0.7672348431700728, Average Accuracy: 51.559251559251564\n",
"Parsed Log Data: {'epoch': 20, 'iter': 490, 'avg_loss': 0.7614982160616309, 'avg_acc': 52.342158859470466, 'loss': 0.5763269662857056}\n",
"Epoch: 20, Loss: 0.5763269662857056, Average Loss: 0.7614982160616309, Average Accuracy: 52.342158859470466\n",
"Parsed Log Data: {'epoch': 20, 'iter': 500, 'avg_loss': 0.755586820834887, 'avg_acc': 53.093812375249506, 'loss': 0.43941155076026917}\n",
"Epoch: 20, Loss: 0.43941155076026917, Average Loss: 0.755586820834887, Average Accuracy: 53.093812375249506\n",
"Parsed Log Data: {'epoch': 20, 'iter': 510, 'avg_loss': 0.7529963151991017, 'avg_acc': 53.42465753424658, 'loss': 0.5494109392166138}\n",
"Epoch: 20, Loss: 0.5494109392166138, Average Loss: 0.7529963151991017, Average Accuracy: 53.42465753424658\n",
"Parsed Log Data: {'epoch': 20, 'iter': 520, 'avg_loss': 0.7464623560489024, 'avg_acc': 53.93474088291747, 'loss': 0.9051780104637146}\n",
"Epoch: 20, Loss: 0.9051780104637146, Average Loss: 0.7464623560489024, Average Accuracy: 53.93474088291747\n",
"Parsed Log Data: {'epoch': 20, 'iter': 530, 'avg_loss': 0.7401949792482984, 'avg_acc': 54.61393596986818, 'loss': 0.13609610497951508}\n",
"Epoch: 20, Loss: 0.13609610497951508, Average Loss: 0.7401949792482984, Average Accuracy: 54.61393596986818\n",
"Parsed Log Data: {'epoch': 20, 'iter': 540, 'avg_loss': 0.7334553723304417, 'avg_acc': 55.26802218114602, 'loss': 0.8661832809448242}\n",
"Epoch: 20, Loss: 0.8661832809448242, Average Loss: 0.7334553723304417, Average Accuracy: 55.26802218114602\n",
"Parsed Log Data: {'epoch': 20, 'iter': 550, 'avg_loss': 0.7272329243633578, 'avg_acc': 55.898366606170605, 'loss': 0.4187266230583191}\n",
"Epoch: 20, Loss: 0.4187266230583191, Average Loss: 0.7272329243633578, Average Accuracy: 55.898366606170605\n",
"Parsed Log Data: {'epoch': 20, 'iter': 560, 'avg_loss': 0.7212331915762336, 'avg_acc': 56.68449197860963, 'loss': 0.38998621702194214}\n",
"Epoch: 20, Loss: 0.38998621702194214, Average Loss: 0.7212331915762336, Average Accuracy: 56.68449197860963\n",
"Parsed Log Data: {'epoch': 20, 'iter': 570, 'avg_loss': 0.714248325851878, 'avg_acc': 57.26795096322241, 'loss': 0.42771902680397034}\n",
"Epoch: 20, Loss: 0.42771902680397034, Average Loss: 0.714248325851878, Average Accuracy: 57.26795096322241\n",
"Parsed Log Data: {'epoch': 20, 'iter': 580, 'avg_loss': 0.709527192832886, 'avg_acc': 57.831325301204814, 'loss': 0.4970065951347351}\n",
"Epoch: 20, Loss: 0.4970065951347351, Average Loss: 0.709527192832886, Average Accuracy: 57.831325301204814\n",
"Parsed Log Data: {'epoch': 20, 'iter': 590, 'avg_loss': 0.7070212593513293, 'avg_acc': 57.868020304568525, 'loss': 0.6174928545951843}\n",
"Epoch: 20, Loss: 0.6174928545951843, Average Loss: 0.7070212593513293, Average Accuracy: 57.868020304568525\n",
"Parsed Log Data: {'epoch': 'EP20_train', 'avg_loss': 0.7055494453351037, 'total_acc': 57.983193277310924, 'precisions': 1.0, 'recalls': 0.5798319327731093, 'f1_scores': 0.7340425531914894, 'time_taken_from_start': 5.023622989654541}\n",
"Epoch: EP20_train, Loss: None, Average Loss: 0.7055494453351037, Average Accuracy: None\n",
"Epochs: [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]\n",
"Loss Values: [0.6324796080589294, 0.6594327092170715, 1.4224793910980225, 0.7135135531425476, 1.3517900705337524, 0.6623533964157104, 0.7342778444290161, 1.4144562482833862, 0.9813053607940674, 1.0407211780548096, 1.2080334424972534, 0.6947866678237915, 0.40320727229118347, 1.3654974699020386, 0.49264073371887207, 0.9697921276092529, 1.1782255172729492, 1.2314364910125732, 0.42901739478111267, 1.0955886840820312, 0.32576441764831543, 0.5676601529121399, 1.1219587326049805, 0.45346391201019287, 1.6801875829696655, 1.5949524641036987, 1.2342846393585205, 0.4685608446598053, 0.252122700214386, 0.4874681234359741, 0.774188756942749, 0.7752485275268555, 1.0107471942901611, 0.573390007019043, 0.2764188051223755, 0.7711461782455444, 0.2291455715894699, 0.8360911011695862, 0.1931251883506775, 0.40773236751556396, 0.7096580862998962, 0.8231819868087769, 0.928947389125824, 0.4240599274635315, 0.4714360237121582, 0.27238792181015015, 0.9251547455787659, 1.1123549938201904, 0.36292564868927, 0.5763269662857056, 0.43941155076026917, 0.5494109392166138, 0.9051780104637146, 0.13609610497951508, 0.8661832809448242, 0.4187266230583191, 0.38998621702194214, 0.42771902680397034, 0.4970065951347351, 0.6174928545951843]\n",
"Accuracy Values: [100.0, 45.45454545454545, 28.57142857142857, 25.806451612903224, 24.390243902439025, 25.49019607843137, 22.950819672131146, 22.535211267605636, 23.456790123456788, 26.373626373626376, 27.722772277227726, 30.630630630630627, 32.231404958677686, 32.06106870229007, 33.33333333333333, 34.437086092715234, 34.161490683229815, 35.67251461988304, 36.46408839779006, 36.12565445026178, 38.308457711442784, 38.862559241706165, 38.009049773755656, 37.66233766233766, 37.75933609958506, 38.24701195219124, 39.46360153256705, 41.32841328413284, 42.34875444839858, 42.955326460481096, 42.857142857142854, 42.765273311897104, 42.36760124610592, 43.202416918429, 43.988269794721404, 44.15954415954416, 44.87534626038781, 45.28301886792453, 46.194225721784775, 47.05882352941176, 47.13216957605985, 47.44525547445255, 48.45605700712589, 48.72389791183295, 48.75283446712018, 49.44567627494457, 50.108459869848154, 50.530785562632694, 51.559251559251564, 52.342158859470466, 53.093812375249506, 53.42465753424658, 53.93474088291747, 54.61393596986818, 55.26802218114602, 55.898366606170605, 56.68449197860963, 57.26795096322241, 57.831325301204814, 57.868020304568525]\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAJOCAYAAABm7rQwAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAACZ2klEQVR4nOzdf3zO9f7H8ee1y2zzY2T5MTYmKvpJFJNFGpJEIz9yDtFJJ3RodXxzKqIfSqWp9POE6uRHaTk5CUthRYro9FO/1IxtojQ25ura5/vHdXZxuba5cP3Yrvfjfrvt1j7vz+vz3uu1j+zjtc/n/bFZlmUJAAAAAAAACKKIUCcAAAAAAAAA89CUAgAAAAAAQNDRlAIAAAAAAEDQ0ZQCAAAAAABA0NGUAgAAAAAAQNDRlAIAAAAAAEDQ0ZQCAAAAAABA0NGUAgAAAAAAQNDRlAIAAAAAAEDQ0ZQCwsANN9ygpKSkkzr23nvvlc1m829CQDnmz58vm82mTZs2hToVAEA1x7UPcGp++ukn2Ww2Pfroo6FOBYajKQUEkM1m8+ljzZo1oU41JG644QbVqVMn1GmEjbKmT0UfH330UahTBACEOa59fDd48GDZbDb93//9X6hTQQCUNX0q+njooYdCnSJQJdQIdQJAOHvllVc8tl9++WVlZWV5jbdt2/aUvs4LL7yg0tLSkzr27rvv1p133nlKXx9Vy/Tp09WyZUuv8datW4cgGwCASbj28U1hYaGWLVumpKQkLVy4UA899BB3b4WpYcOG6aqrrvIab9++fQiyAaoemlJAAP3pT3/y2P7oo4+UlZXlNX6s4uJi1apVy+evExkZeVL5SVKNGjVUowZ/FVQXRUVFql27dqUxffr0UceOHYOUEQAAR3Dt45s33nhDTqdTc+fOVY8ePbRu3Tp169YtpDmVx7IsHTp0SDExMaFOpUry5brsoosuOu6ff8BkPL4HhFj37t113nnnafPmzbrssstUq1Yt/eMf/5Ak/fvf/1bfvn3VtGlTRUVFqVWrVrrvvvvkdDo95jh2XYWjnxF//vnn1apVK0VFReniiy/WJ5984nFseesq2Gw2jR8/XkuXLtV5552nqKgonXvuuVqxYoVX/mvWrFHHjh0VHR2tVq1a6bnnnvP7Wg2vv/66OnTooJiYGJ1++un605/+pJ07d3rE5Ofna9SoUUpISFBUVJTi4+PVv39//fTTT+6YTZs2qXfv3jr99NMVExOjli1bavTo0T7l8PTTT+vcc89VVFSUmjZtqnHjxmnfvn3u/ePHj1edOnVUXFzsdeywYcPUpEkTj/P2zjvvKCUlRbVr11bdunXVt29fffnllx7HlT3e+MMPP+iqq65S3bp1NXz4cJ/yrczRfz4ef/xxtWjRQjExMerWrZu++OILr/j33nvPnWv9+vXVv39/ff31115xO3fu1I033uj+89qyZUvdcsstOnz4sEdcSUmJ0tPT1bBhQ9WuXVvXXnutfvnlF4+YUzlXAICqjWsf6dVXX1XPnj11+eWXq23btnr11VfLjfvmm280ePBgNWzYUDExMTr77LN11113ecQc7+dvRbmVPfZ/9LVSUlKSrr76aq1cuVIdO3ZUTEyMnnvuOUnSvHnz1KNHDzVq1EhRUVE655xz9Mwzz5Sb9zvvvKNu3bqpbt26io2N1cUXX6wFCxZIkqZOnarIyEivn/2SNGbMGNWvX1+HDh2q9Pt3vGuTJUuWyGazae3atV7HPvfcc7LZbB7XPN98840GDRqkBg0aKDo6Wh07dtRbb71V7vdr7dq1Gjt2rBo1aqSEhIRK8/RV2fd91apVateunaKjo3XOOecoMzPTK/bHH3/UddddpwYNGqhWrVrq3Lmz3n77ba+4Q4cO6d5779VZZ52l6OhoxcfHKy0tTT/88INX7PH+n/HlOhs4WdweAVQBe/fuVZ8+fTR06FD96U9/UuPGjSW5fvjVqVNH6enpqlOnjt577z1NmTJFhYWFeuSRR44774IFC7R//37dfPPNstlsmjlzptLS0vTjjz8e9zeMH3zwgTIzMzV27FjVrVtXTzzxhAYOHKicnBzFxcVJkrZs2aIrr7xS8fHxmjZtmpxOp6ZPn66GDRue+jflf+bPn69Ro0bp4osv1owZM1RQUKDZs2frww8/1JYtW1S/fn1J0sCBA/Xll1/q1ltvVVJSknbv3q2srCzl5OS4t3v16qWGDRvqzjvvVP369fXTTz+V+8P+WPfee6+mTZum1NRU3XLLLdq2bZueeeYZffLJJ/rwww8VGRmpIUOGaM6cOXr77bd13XXXuY8tLi7WsmXLdMMNN8hut0tyPdowcuRI9e7dWw8//LCKi4v1zDPPqGvXrtqyZYvHRfYff/yh3r17q2vXrnr00Ud9+i3y77//rj179niM2Ww293kr8/LLL2v//v0aN26cDh06pNmzZ6tHjx76/PPP3X8G3333XfXp00dnnHGG7r33Xh08eFBPPvmkLr30Un366afuXHft2qVLLrlE+/bt05gxY9SmTRvt3LlTS5YsUXFxsWrWrOn+urfeeqtOO+00TZ06VT/99JMyMjI0fvx4LV68WJJO6VwBAKoHk699du3apffff18vvfSSJNcvrx5//HE99dRTHj8v//vf/yolJUWRkZEaM2aMkpKS9MMPP2jZsmV64IEH3HP5+vPXV9u2bdOwYcN0880366abbtLZZ58tSXrmmWd07rnn6pprrlGNGjW0bNkyjR07VqWlpRo3bpz7+Pnz52v06NE699xzNXnyZNWvX19btmzRihUrdP311+vPf/6zpk+frsWLF2v8+PHu4w4fPqwlS5Zo4MCBio6OrjA/X65N+vbtqzp16ui1117zugNt8eLFOvfcc3XeeedJkr788ktdeumlatasme68807Vrl1br732mgYMGKA33nhD1157rcfxY8eOVcOGDTVlyhQVFRUd9/tZXFzsdV0mSfXr1/e4Y++7777TkCFD9Ne//lUjR47UvHnzdN1112nFihXq2bOnJKmgoEBdunRRcXGx/va3vykuLk4vvfSSrrnmGi1ZssSdq9Pp1NVXX63Vq1dr6NChmjBhgvbv36+srCx98cUXatWqlfvr+vL/zPGus4FTYgEImnHjxlnH/m/XrVs3S5L17LPPesUXFxd7jd18881WrVq1rEOHDrnHRo4cabVo0cK9vX37dkuSFRcXZ/3666/u8X//+9+WJGvZsmXusalTp3rlJMmqWbOm9f3337vHPvvsM0uS9eSTT7rH+vXrZ9WqVcvauXOne+y7776zatSo4TVneUaOHGnVrl27wv2HDx+2GjVqZJ133nnWwYMH3eP/+c9/LEnWlClTLMuyrN9++82SZD3yyCMVzvXmm29akqxPPvnkuHkdbffu3VbNmjWtXr16WU6n0z3+1FNPWZKsuXPnWpZlWaWlpVazZs2sgQMHehz/2muvWZKsdevWWZZlWfv377fq169v3XTTTR5x+fn5Vr169TzGR44caUmy7rzzTp9ynTdvniWp3I+oqCh3XNmfj5iYGCs3N9c9vnHjRkuSddttt7nH2rVrZzVq1Mjau3eve+yzzz6zIiIirBEjRrjHRowYYUVERJT7/S0tLfXILzU11T1mWZZ12223WXa73dq3b59lWSd/rgAAVQ/XPt4effRRKyYmxiosLLQsy7K+/fZbS5L15ptvesRddtllVt26da2ff/7ZY/zon6G+/Pwtr17LOvJzefv27e6xFi1aWJKsFStWeMWXd2569+5tnXHGGe7tffv2WXXr1rU6derkce12bN7JyclWp06dPPZnZmZakqz333/f6+sczddrk2HDhlmNGjWy/vjjD/dYXl6eFRERYU2fPt09dsUVV1jnn3++x5+v0tJSq0uXLtaZZ57pHiv7fnXt2tVjzoqU/Zms6GPDhg3u2LLv+xtvvOEe+/333634+Hirffv27rGJEydakqzs7Gz32P79+62WLVtaSUlJ7mvVuXPnWpKsWbNmeeVVdh58/X/Gl+ts4FTw+B5QBURFRWnUqFFe40c/v79//37t2bNHKSkpKi4u1jfffHPceYcMGaLTTjvNvZ2SkiLJddvv8aSmpnr8FuWCCy5QbGys+1in06l3331XAwYMUNOmTd1xrVu3Vp8+fY47vy82bdqk3bt3a+zYsR6/Mevbt6/atGnjvlU5JiZGNWvW1Jo1a/Tbb7+VO1fZHVX/+c9/5HA4fM7h3Xff1eHDhzVx4kRFRBz5K/Omm25SbGysOwebzabrrrtOy5cv14EDB9xxixcvVrNmzdS1a1dJUlZWlvbt26dhw4Zpz5497g+73a5OnTrp/fff98rhlltu8TlfSZozZ46ysrI8Pt555x2vuAEDBqhZs2bu7UsuuUSdOnXS8uXLJUl5eXnaunWrbrjhBjVo0MAdd8EFF6hnz57uuNLSUi1dulT9+vUrdy2rYx8ZGDNmjMdYSkqKnE6nfv75Z0knf64AANWHydc+r776qvr27au6detKks4880x16NDB4xG+X375RevWrdPo0aPVvHlzj+PLfoae6M9fX7Vs2VK9e/f2Gj/63JTdld2tWzf9+OOP+v333yW5rnP279+vO++80+tup6PzGTFihDZu3OjxKNmrr76qxMTEStfW8vXaRHL9Wdi9e7fHmx6XLFmi0tJSDRkyRJL066+/6r333tPgwYPdf9727NmjvXv3qnfv3vruu++8loy46aab3He/+2LMmDFe12VZWVk655xzPOKaNm3qcVdWbGysRowYoS1btig/P1+StHz5cl1yySXu60pJqlOnjsaMGaOffvpJX331lSTXmmWnn366br31Vq98jv1zcbz/Z3y5zgZOBU0poApo1qxZubdXf/nll7r22mtVr149xcbGqmHDhu6FEst++Ffm2IuYsh84vvxAOfbYsuPLjt29e7cOHjxY7hvd/PWWt7ImRdlt40dr06aNe39UVJQefvhhvfPOO2rcuLEuu+wyzZw50/0DXJK6deumgQMHatq0aTr99NPVv39/zZs3TyUlJSeVQ82aNXXGGWe490uuH+oHDx50r0Fw4MABLV++XNddd537AuC7776TJPXo0UMNGzb0+Fi1apV2797t8XVq1KhxwusVXHLJJUpNTfX4uPzyy73izjzzTK+xs846y70+QGXf/7Zt22rPnj0qKirSL7/8osLCQvdt8MdzvD+XJ3uuAADVh6nXPl9//bW2bNmiSy+9VN9//737o3v37vrPf/6jwsJCSUcaApX9bD3Rn7++Ku8NvpL04YcfKjU11b2OU8OGDd1rgZWdm7Im0/FyGjJkiKKiotyNuN9//13/+c9/NHz48Eqbab5em0jSlVdeqXr16rmXB5Bcvyxs166dzjrrLEnS999/L8uydM8993hdl02dOlWSvK7NKvr+VOTMM8/0ui5LTU1VbGysR1zr1q29ai/L8+hrs4pqL9svuc7D2Wef7dOC/sf7f8aX62zgVNCUAqqA8t5osm/fPnXr1k2fffaZpk+frmXLlikrK0sPP/ywJPn0GuSKfotjWVZAjw2FiRMn6ttvv9WMGTMUHR2te+65R23bttWWLVskuX4rtGTJEm3YsEHjx4/Xzp07NXr0aHXo0MHjzqZT0blzZyUlJem1116TJC1btkwHDx50/zZOOnLeXnnllXJ/a/bvf//bY86oqCiPO7TCwfH+bAXjXAEAQsvUa59//etfkqTbbrtNZ555pvvjscce06FDh/TGG2/47WuVqajJc+zi8WXKOzc//PCDrrjiCu3Zs0ezZs3S22+/raysLN12222SfDs3RzvttNN09dVXu5tSS5YsUUlJiV/fUhcVFaUBAwbozTff1B9//KGdO3fqww8/LPe67I477ij3uiwrK8ur4RhubyL05c/98a6zgVPBQudAFbVmzRrt3btXmZmZuuyyy9zj27dvD2FWRzRq1EjR0dH6/vvvvfaVN3YyWrRoIcm14GaPHj089m3bts29v0yrVq10++236/bbb9d3332ndu3a6bHHHnNfAEquxlHnzp31wAMPaMGCBRo+fLgWLVqkv/zlL8fN4YwzznCPHz58WNu3b1dqaqpH/ODBgzV79mwVFhZq8eLFSkpKUufOnT1ylFzfv2OPDbayu7aO9u2337oXrDy69mN98803Ov3001W7dm3FxMQoNja23Df3nYoTPVcAgOot3K99LMvSggULdPnll2vs2LFe+++77z69+uqrGjVqlPuao7KfrQ0bNvTp52/ZnS/79u1zPyIvyeNu7+NZtmyZSkpK9NZbb3ncWXPssgNl1zlffPHFce8eGzFihPr3769PPvlEr776qtq3b69zzz230mN8vTYpM2TIEL300ktavXq1vv76a1mW5dGUKvs+R0ZGhvy6rOyuraObiN9++60keVybVVR72X7JdR42btwoh8Nx3AX+feXLdTZwMsLr1+9AGCn7rcXRv6U4fPiwnn766VCl5MFutys1NVVLly7Vrl273OPff/99uesXnYyOHTuqUaNGevbZZz0e3XrnnXf09ddfq2/fvpJcbzU59tXBrVq1Ut26dd3H/fbbb16/6WzXrp0kVfpYWGpqqmrWrKknnnjC4/gXX3xRv//+uzuHMkOGDFFJSYleeuklrVixQoMHD/bY37t3b8XGxurBBx8sd72k8l6PHChLly71WCfh448/1saNG93rYsTHx6tdu3Z66aWXtG/fPnfcF198oVWrVumqq66SJEVERGjAgAFatmyZNm3a5PV1TvQ3zCd7rgAA1Vu4X/t8+OGH+umnnzRq1CgNGjTI62PIkCF6//33tWvXLjVs2FCXXXaZ5s6dq5ycHI95yr4/vv78LWsUrVu3zr2vqKjI/fY/X2s/ek7J9cjdvHnzPOJ69eqlunXrasaMGV7XZsf+bO/Tp49OP/10Pfzww1q7dq1Pd0n5em1SJjU1VQ0aNNDixYu1ePFiXXLJJR6P3zVq1Ejdu3fXc889p7y8PK+vF8zrsl27dunNN990bxcWFurll19Wu3bt1KRJE0nSVVddpY8//lgbNmxwxxUVFen5559XUlKSe52qgQMHas+ePXrqqae8vs6JXpf5cp0NnArulAKqqC5duui0007TyJEj9be//U02m02vvPJKlXp87t5779WqVat06aWX6pZbbpHT6dRTTz2l8847T1u3bvVpDofDofvvv99rvEGDBho7dqwefvhhjRo1St26ddOwYcNUUFCg2bNnKykpyX3L+LfffqsrrrhCgwcP1jnnnKMaNWrozTffVEFBgYYOHSpJeumll/T000/r2muvVatWrbR//3698MILio2N9bqAOVrDhg01efJkTZs2TVdeeaWuueYabdu2TU8//bQuvvhirwuoiy66SK1bt9Zdd92lkpISj9/GSa5FK5955hn9+c9/1kUXXaShQ4eqYcOGysnJ0dtvv61LL7203AuIE/HOO++Uuxhsly5dPO72at26tbp27apbbrlFJSUlysjIUFxcnCZNmuSOeeSRR9SnTx8lJyfrxhtvdL92uV69err33nvdcQ8++KBWrVqlbt26acyYMWrbtq3y8vL0+uuv64MPPvD4zezxnOy5AgBUb+F+7fPqq6/Kbrd7/UKrzDXXXKO77rpLixYtUnp6up544gl17dpVF110kcaMGaOWLVvqp59+0ttvv+3+Wr78/O3Vq5eaN2+uG2+8UX//+99lt9s1d+5c9/WHL3r16qWaNWuqX79+uvnmm3XgwAG98MILatSokUczJzY2Vo8//rj+8pe/6OKLL9b111+v0047TZ999pmKi4s9GmGRkZEaOnSonnrqKdntdg0bNsynXHy9Nin7GmlpaVq0aJGKior06KOPes03Z84cde3aVeeff75uuukmnXHGGSooKNCGDRuUm5urzz77zKe8KvLpp5+WezdRq1atlJyc7N4+66yzdOONN+qTTz5R48aNNXfuXBUUFHg0/u68804tXLhQffr00d/+9jc1aNBAL730krZv36433njDveTDiBEj9PLLLys9PV0ff/yxUlJSVFRUpHfffVdjx45V//79fc7fl+ts4JQE8U1/gPEqei3yueeeW278hx9+aHXu3NmKiYmxmjZtak2aNMlauXKl1+tyK3otcnmvbpVkTZ061b1d0WuRx40b53VsixYtrJEjR3qMrV692mrfvr1Vs2ZNq1WrVtY///lP6/bbb7eio6Mr+C4cMXLkyApfk9uqVSt33OLFi6327dtbUVFRVoMGDazhw4dbubm57v179uyxxo0bZ7Vp08aqXbu2Va9ePatTp07Wa6+95o759NNPrWHDhlnNmze3oqKirEaNGllXX321tWnTpuPmaVmW9dRTT1lt2rSxIiMjrcaNG1u33HKL9dtvv5Ube9ddd1mSrNatW1c43/vvv2/17t3bqlevnhUdHW21atXKuuGGGzzyGTlypFW7dm2f8rOsI68qruhj3rx5lmV5/vl47LHHrMTERCsqKspKSUmxPvvsM6953333XevSSy+1YmJirNjYWKtfv37WV1995RX3888/WyNGjLAaNmxoRUVFWWeccYY1btw4q6SkxCO/Y19b/f7773v8mT7VcwUAqDq49nE5fPiwFRcXZ6WkpFQYY1mW1bJlS6t9+/bu7S+++MK69tprrfr161vR0dHW2Wefbd1zzz0exxzv569lWdbmzZutTp06WTVr1rSaN29uzZo1y/1zefv27R719u3bt9zc3nrrLeuCCy6woqOjraSkJOvhhx+25s6d6zVHWWyXLl3c1w6XXHKJtXDhQq85P/74Y0uS1atXr0q/L8fy9drEsiwrKyvLkmTZbDZrx44d5cb88MMP1ogRI6wmTZpYkZGRVrNmzayrr77aWrJkiTumouuYipT9mazo4+g/V2Xf95UrV1oXXHCBFRUVZbVp08Z6/fXXy8110KBB7j8Tl1xyifWf//zHK664uNi66667rJYtW1qRkZFWkyZNrEGDBlk//PCDR37H+3/Gl+ts4FTYLKsK/eoBQFgYMGCAvvzyy3LXLELo/fTTT2rZsqUeeeQR3XHHHaFOBwCAao9rn5Pz2WefqV27dnr55Zf15z//OdTphExSUpLOO+88/ec//wl1KkDQsaYUgFNy8OBBj+3vvvtOy5cvV/fu3UOTEAAAQABx7eM/L7zwgurUqaO0tLRQpwIgRFhTCsApOeOMM3TDDTfojDPO0M8//6xnnnlGNWvW9FiXCAAAIFxw7XPqli1bpq+++krPP/+8xo8f7/HGPABmoSkF4JRceeWVWrhwofLz8xUVFaXk5GQ9+OCDOvPMM0OdGgAAgN9x7XPqbr31VhUUFOiqq67StGnTQp0OgBBiTSkAAAAAAAAEHWtKAQAAAAAAIOhoSgEAAAAAACDojFtTqrS0VLt27VLdunVls9lCnQ4AAKiCLMvS/v371bRpU0VE8Du8o3EtBQAAKnMi11HGNaV27dqlxMTEUKcBAACqgR07dighISHUaVQpXEsBAABf+HIdZVxTqm7dupJc35zY2Fi/z+9wOLRq1Sr16tVLkZGRfp+/qjGpXpNqlcyq16RaJbPqNalWyax6A11rYWGhEhMT3dcNOIJrKf8xqVbJrHpNqlUyq16TapXMqtekWqXA1nsi11HGNaXKbjOPjY0N2IVUrVq1FBsba8wfZFPqNalWyax6TapVMqtek2qVzKo3WLXyeJo3rqX8x6RaJbPqNalWyax6TapVMqtek2qVglOvL9dRLJIAAAAAAACAoKMpBQAAAAAAgKCjKQUAAAAAAICgoykFAAAAAACAoKMpBQAAAAAAgKCjKQUAAAAAAICgoykFAAAAAACAoKMpBQAAAAAAgKCjKQUAAAAAAICgoykFAAAAAACAoKMpBQAAAAAAgKCjKQUAAAAAAICgoykFAAAAAACAoKMpBQAAAAAAgKCjKQUAAAAAAICgoykFwGhOp7R2rU3r1jXT2rU2OZ2hzggAAKD6cJY6tfbntVr32zqt/XmtnKVcTAHwHU0pAMbKzJSSkqSePWto1qyO6tmzhpKSXOMAUNWsW7dO/fr1U9OmTWWz2bR06VKP/ZZlacqUKYqPj1dMTIxSU1P13XffecT8+uuvGj58uGJjY1W/fn3deOONOnDgQBCrABBOMr/OVNLsJPV8tadm/TxLPV/tqaTZScr8mospAL6hKQXASJmZ0qBBUm6u5/jOna5xGlMAqpqioiJdeOGFmjNnTrn7Z86cqSeeeELPPvusNm7cqNq1a6t37946dOiQO2b48OH68ssvlZWVpf/85z9at26dxowZE6wSAISRzK8zNei1Qcot9LyY2lm4U4NeG0RjCoBPaEoBMI7TKU2YIFmW976ysYkTxaN8AKqUPn366P7779e1117rtc+yLGVkZOjuu+9W//79dcEFF+jll1/Wrl273HdUff3111qxYoX++c9/qlOnTuratauefPJJLVq0SLt27QpyNQCqM2epUxNWTJAl74upsrGJKybyKB+A46oR6gQAINiys73vkDqaZUk7drjiuncPWloAcNK2b9+u/Px8paamusfq1aunTp06acOGDRo6dKg2bNig+vXrq2PHju6Y1NRURUREaOPGjeU2uySppKREJSUl7u3CwkJJksPhkMPh8HstZXMGYu6qxqRaJbPqDfda1/681usOqaNZsrSjcIfe//F9dWvRLYiZBV64n9tjmVSvSbVKga33ROakKQXAOHl5/o0DgFDLz8+XJDVu3NhjvHHjxu59+fn5atSokcf+GjVqqEGDBu6Y8syYMUPTpk3zGl+1apVq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U0REhDp37qyff/7ZrwkCgL85ndLChZXHLFokzZhBYwrAqatdu7bGjBkT6jQAAACqnJNqSrVu3VpLly7Vtddeq5UrV+q2226TJO3evVuxsbF+TRAA/C07W8rNrTxmxw5XHI/wAfCHr776Sjk5OTp8+LDH+DXXXBOijAAAAELvpJpSU6ZM0fXXX6/bbrtNPXr0UHJysiTXXVNl6yUAQFWVl+ffOACoyI8//qhrr71Wn3/+uWw2myzLkiTZbDZJktPpDGV6AAAAIXVSa0oNGjRIOTk52rRpk1auXOkev+KKK/T444/7LTkACIT4eP/GAUBFJkyYoJYtW2r37t2qVauWvvzyS61bt04dO3bUmjVrQp0eAABASJ3UnVKS1KRJEzVp0kS5/3sGJiEhQZdcconfEgOAQElJkRISpJ07pf/dtODBZnPt/9/7HADgpG3YsEHvvfeeTj/9dEVERCgiIkJdu3bVjBkz9Le//U1btmwJdYoAAAAhc1J3SpWWlmr69OmqV6+eWrRooRYtWqh+/fq67777VFpa6u8cAcCv7HZp9uzy9/3viRplZLDIOYBT53Q63S+HOf3007Vr1y5JUosWLbRt27aAfM2dO3fqT3/6k+Li4hQTE6Pzzz9fmzZtcu+3LEtTpkxRfHy8YmJilJqaqu+++y4guQAAAFTmpJpSd911l5566ik99NBD2rJli7Zs2aIHH3xQTz75pO655x5/5wgAfpeWJi1Z4j2ekOAaT0sLfk4Aws95552nzz77TJLUqVMnzZw5Ux9++KGmT5+uM844w+9f77ffftOll16qyMhIvfPOO/rqq6/02GOP6bTTTnPHzJw5U0888YSeffZZbdy4UbVr11bv3r116NAhv+cDAABQmZN6fO+ll17SP//5T483xlxwwQVq1qyZxo4dqwceeMBvCQJAoJTXeNq+nTukAPjP3XffraKiIknS9OnTdfXVVyslJUVxcXFavHix37/eww8/rMTERM2bN8891rJlS/fnlmUpIyNDd999t/r37y9Jevnll9W4cWMtXbpUQ4cO9XtOAAAAFTmpptSvv/6qNm3aeI23adNGv/766yknBQChQkMKgD/17t3b/Xnr1q31zTff6Ndff9Vpp53mfgOfP7311lvq3bu3rrvuOq1du9b9C8ObbrpJkrR9+3bl5+crNTXVfUy9evXUqVMnbdiwodym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",
"text/plain": [
"<Figure size 1200x600 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"# Path to the log file\n",
"log_file_path = \"/home/jupyter/bert/ratio_proportion_change3_1920/logs/oct_logs/log_train_finetuned.txt\"\n",
"\n",
"# Variables to store extracted data\n",
"epochs = []\n",
"loss_values = []\n",
"accuracy_values = []\n",
"\n",
"# Reading the log file\n",
"with open(log_file_path, 'r') as file:\n",
" for line in file:\n",
" if line.strip().startswith(\"{\"): # Check for the start of a log entry\n",
" try:\n",
" log_data = eval(line.strip()) # Convert the line into a dictionary\n",
"\n",
" # Debugging: Print the parsed log data\n",
" print(f\"Parsed Log Data: {log_data}\")\n",
"\n",
" # Extract necessary fields\n",
" epoch = log_data.get('epoch')\n",
" loss = log_data.get('loss') # The loss value in the log\n",
" avg_loss = log_data.get('avg_loss') # The average loss\n",
" avg_acc = log_data.get('avg_acc') # The average accuracy\n",
"\n",
" # Debugging: Check if loss and accuracy are being extracted\n",
" print(f\"Epoch: {epoch}, Loss: {loss}, Average Loss: {avg_loss}, Average Accuracy: {avg_acc}\")\n",
"\n",
" # Append to lists if values are present\n",
" if epoch and (loss is not None or avg_loss is not None) and (avg_acc is not None):\n",
" epochs.append(epoch) # Store the epoch\n",
" loss_values.append(float(loss) if loss is not None else float(avg_loss))\n",
" accuracy_values.append(float(avg_acc))\n",
"\n",
" except Exception as e:\n",
" print(f\"Error processing line: {e}\")\n",
"\n",
"# Check if data was extracted\n",
"print(f\"Epochs: {epochs}\")\n",
"print(f\"Loss Values: {loss_values}\")\n",
"print(f\"Accuracy Values: {accuracy_values}\")\n",
"\n",
"# Plotting Loss and Accuracy if data is present\n",
"if epochs and loss_values and accuracy_values:\n",
" plt.figure(figsize=(12, 6))\n",
"\n",
" # Subplot for loss\n",
" plt.subplot(1, 2, 1)\n",
" plt.plot(epochs, loss_values, label='Loss', color='blue', marker='o')\n",
" plt.xlabel('Epoch')\n",
" plt.ylabel('Loss')\n",
" plt.title('Training Loss over Epochs')\n",
" plt.grid(True)\n",
"\n",
" # Subplot for accuracy\n",
" plt.subplot(1, 2, 2)\n",
" plt.plot(epochs, accuracy_values, label='Accuracy', color='green', marker='o')\n",
" plt.xlabel('Epoch')\n",
" plt.ylabel('Accuracy (%)')\n",
" plt.title('Training Accuracy over Epochs')\n",
" plt.grid(True)\n",
"\n",
" plt.tight_layout()\n",
" plt.show()\n",
"else:\n",
" print(\"No data to plot. Please check the log file for correct format.\")\n"
]
}
],
"metadata": {
"environment": {
"kernel": "python3",
"name": "common-cu113.m122",
"type": "gcloud",
"uri": "us-docker.pkg.dev/deeplearning-platform-release/gcr.io/base-cu113:m122"
},
"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.10.14"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
|