Я построил модель глубокого обучения, используя pytorch, но когда я запускаю код, он выдает мне ошибку в путях и что-то,Python

Программы на Python
Ответить
Anonymous
 Я построил модель глубокого обучения, используя pytorch, но когда я запускаю код, он выдает мне ошибку в путях и что-то,

Сообщение Anonymous »

Форма проекта:
есть много проблем с импортом и настройкой путей, и они думают
Я не вижу никаких проблем с моделью, обучением или моделью искусственного интеллекта, все мои проблемы связаны с импортом yaml и библиотек и работой с проектом
FoodVision10classes
├── AI_API
│ ├── README.md
│ ├── configs
│ │ ├── data_setup.yml
│ │ └── train.yml
│ ├── notebooks
│ │ └── test_version0.ipynb
│ ├── requirements.txt
│ ├── results
│ ├── scripts
│ ├── src
│ │ ├── _data
│ │ │ ├── test
│ │ │ │ ├── chicken_curry
│ │ │ │ ├── chicken_wings
│ │ │ │ ├── fried_rice
│ │ │ │ ├── grilled_salmon
│ │ │ │ ├── hamburger
│ │ │ │ ├── ice_cream
│ │ │ │ ├── pizza
│ │ │ │ ├── ramen
│ │ │ │ ├── steak
│ │ │ │ └── sushi
│ │ │ └── train
│ │ │ ├── chicken_curry
│ │ │ ├── chicken_wings
│ │ │ ├── fried_rice
│ │ │ ├── grilled_salmon
│ │ │ ├── hamburger
│ │ │ ├── ice_cream
│ │ │ ├── pizza
│ │ │ ├── ramen
│ │ │ ├── steak
│ │ │ └── sushi
│ │ ├── data_setup
│ │ │ ├── __init__.py
│ │ │ ├── __pycache__
│ │ │ │ ├── __init__.cpython-313.pyc
│ │ │ │ ├── dataloader.cpython-313.pyc
│ │ │ │ ├── dataset.cpython-313.pyc
│ │ │ │ ├── setup.cpython-313.pyc
│ │ │ │ └── transforms.cpython-313.pyc
│ │ │ ├── dataloader.py
│ │ │ ├── dataset.py
│ │ │ ├── setup.py
│ │ │ └── transforms.py
│ │ ├── engine
│ │ │ ├── __init__.py
│ │ │ ├── eval_step.py
│ │ │ └── train_step.py
│ │ ├── models
│ │ │ ├── FoodVision.py
│ │ │ └── __init__.py
│ │ ├── saved_models
│ │ ├── test
│ │ ├── train
│ │ │ ├── __init__.py
│ │ │ ├── __pycache__
│ │ │ │ ├── __init__.cpython-313.pyc
│ │ │ │ └── train.cpython-313.pyc
│ │ │ └── train.py
│ │ └── utils
│ │ ├── __init__.py
│ │ ├── checkpoint.py
│ │ └── helper_functions.py
│ └── tree.py
└── deployment
├── _backend
├── android
├── desktop
├── ios
└── web

а это train.py:
Это моя проблема: мой модуль не нашел ошибку, иногда возникает проблема, когда Python пытается импортировать файл yaml. У меня много времени на обучение, чтобы решить эту проблему, но я не могу
This is my problem it gave my modulenotfounderror sometimes problem when python try import yaml file I have a lot of time training to solve this but I coundn't

import sys
from pathlib import Path

from torch import nn, optim
from torchmetrics import Accuracy
from torch.utils.tensorboard import SummaryWriter

from data_setup.setup import class_names, class_to_idx
from data_setup.setup import train_dataloader, test_dataloader
from engine.train_step import train_step
from engine.eval_step import eval_step
from models.FoodVision import FoodVisionV0
from utils.helper_functions import cmd_cleaner, find_device
from utils.helper_functions import model_saver
from utils.checkpoint import load_checkpoint, save_checkpoint

from pathlib import Path
from tqdm.auto import tqdm
from colorama import Fore, init
import yaml

cmd_cleaner(True)
init(autoreset=True)
device = find_device(True)

CONFIG_PATH = Path("AI_API\configs\data_setup.yml")
with open(CONFIG_PATH, "r") as f:
cfg = yaml.safe_load(f)

modelV0 = FoodVisionV0(
num_classes=len(class_names),
freeze_base=True
)

LR = cfg['train']["lr"]
NUM_EPOCHS = cfg['train']['num_epochs']

loss_fn = nn.CrossEntropyLoss()
optimizer = optim.Adam(params=modelV0.parameters(), lr=LR)
scheduler = optim.lr_scheduler.CosineAnnealingLR(optimizer=optimizer, T_max=NUM_EPOCHS)
accuracy_fn = Accuracy(task="multiclass", num_classes=len(class_names))
writer = SummaryWriter("results/csv results")

start_epoch, best_loss = load_checkpoint(modelV0, optimizer, scheduler)

for epoch in tqdm(range(NUM_EPOCHS)):
train_loss, train_acc, train_loss_list, train_acc_list, train_results = train_step(
model=modelV0,
dataloader=train_dataloader,
loss_fn=loss_fn,
optimizer=optimizer,
accuracy_fn=accuracy_fn,
writer=writer,
epoch=epoch,
device=device
)

scheduler.step()

test_loss, test_acc, test_loss_list, test_acc_list, test_results = eval_step(
model=modelV0,
dataloader=test_dataloader,
loss_fn=loss_fn,
accuracy_fn=accuracy_fn,
writer=writer,
epoch=epoch,
device=device
)

is_best = test_loss < best_loss
best_loss = min(best_loss, test_loss)
save_checkpoint(modelV0, optimizer, scheduler, epoch, best_loss, is_best)

print(f"Epoch: {Fore.GREEN}{epoch}",
f"Train loss: {Fore.LIGHTGREEN_EX}{train_loss:.4f} | Train acc: {Fore.LIGHTGREEN_EX}{train_acc:2f}%",
f"Test loss: {Fore.LIGHTGREEN_EX}{test_loss:.4f} | Test acc: {Fore.LIGHTGREEN_EX}{test_acc:2f}%")

MODEL_PATH = Path("saved_models")
MODEL_PATH.mkdir(parents=True, exist_ok=True)
MODEL_NAME = f"{modelV0.__class__.__name__}.pt"
MODEL_SAVE_PATH = MODEL_PATH / MODEL_NAME

model_saver(model=modelV0, path=MODEL_SAVE_PATH, print_saver_model_comment=True,
save=True)


Подробнее здесь: https://stackoverflow.com/questions/798 ... give-me-er
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»