Takže pokračování.
Je to opět projekt "pixelpick", kde mi všechno chodí, ale nedostávám očekávané výsledky. Chtěl bych ještě opravit jednu chybu, kterou jsem na začátku překlenul jednoduchou úpravou.
Stále Ubuntu 20.04, WSL, W10.
https://github.com/NoelShin/PixelPickZ příkazového řádku spouštím skript sh pixelpick-dl-cv.sh:
#!/usr/bin/bash # opraveno, ale nepomohlo
python3 ../main_al.py --dataset_name 'cv' --n_pixels_by_us 10 -qs "margin_sampling"
Původně jsem dostával chybu:
Traceback (most recent call last):
File "../main_al.py", line 20, in <module>
args = Arguments().parse_args()
File "/usr/local/pixelpick/args.py", line 79, in parse_args
if args.p_dataset_config is not None:
AttributeError: 'Namespace' object has no attribute 'p_dataset_config',
kterou jsem dočasně odstranil a nyní bych jí chtěl definitivně vyřešit.
Úprava je na řádku s popisem # zde uměle nastavuji None
Část upraveného kódu v args.py:
args.stride_total = 8 if args.use_dilated_resnet else 32
--- args.p_dataset_config = None # zde uměle nastavuji None
if args.p_dataset_config is not None:
assert os.path.exists(args.p_dataset_config),
FileNotFoundError(args.p_dataset_config)
#args: Namespace = parser.parse_args()
dataset_config =
yaml.safe_load(open(f"{args.p_dataset_config}", 'r'))
args: dict = vars(args)
args.update(dataset_config)
Pokud vložím řádek: args.p_dataset_config = None # zde uměle nastavuji
None,
pak to testem if args.p_dataset_config is not None: neprojde a chyba
nenastane.
V args.p_dataset_config je nějaká hodnota, protože testem is not None
projde,
ale nástrojem pdb se mi jí nepodařilo vypsat.
Myslím, že problém je v tom, že args.p_dataset_config je nedefinovaná a tedy
by měla být v prvním průchodu None, ale není. Předpokládám, že v dalším
průchodu
se již naplní platnou hodnotou z modulu query.py.
Jediný důvod, který mne napadá je nějaká špatná verze knihovny, která se
vztahuje
k args, argparse, ArgumentParser, Namespace atd., ale mohu se mýlit.
Otázky:
-- Proč obsah args.p_dataset config není None?
-- Napadá Vás nějaká jiná příčina vzniku té chyby?