Я ищу обобщенное руководство по переводному обучению в Caffe2.
Я работаю в Ubuntu 16.04.Установил Caffe2 с помощью метода build-from-source с поддержкой GPU.Мой ноутбук оснащен графическим процессором с поддержкой cuda.
Я попытался построить свою собственную «простую» модель CNN с количеством слоев от 5 до 12 для классификации деревьев (на данный момент 3 категории).Но у меня очень ужасающие результаты. Поэтому я решил попробовать перенести обучение.Я пытался следовать этому уроку https://nbviewer.jupyter.org/gist/kyamagu/6cff70840c10ca374e069a3a7eb00cb4/dogs-vs-cats.ipynb. Какое самое подробное руководство я смог найти ...
Но есть некоторые строки, которые я не смог понять, почему использовались некоторые значения,Например, эта строка: model.Squeeze("softmaxout", "softmax", dims=[2, 3])
- почему параметр dims
является массивом из 2 и 3 ... (Я хотел бы знать, что означают эти числа)
Когда я пытался запустить код из учебникавыше (с моими модификациями специфичных для значения частей кода, за исключением строки, которую я упомянул ..) - доступно в github (LoadPretrainedSqueezenetModel
функция).Это привело к ошибке:
[libprotobuf FATAL /home/filip/workbench/libs/pytorch/third_party/protobuf/src/google/protobuf/repeated_field.h:1522] CHECK failed: (index) < (current_size_):
Traceback (most recent call last):
File "main.py", line 62, in <module>
SqueezenetRetrain(labels)
File "/home/filip/workbench/git/MachineLearningScripts/caffe2/Methods.py", line 76, in SqueezenetRetrain
workspace.CreateNet(squeezenetModel.net, overwrite=True)
File "/usr/local/lib/python2.7/dist-packages/caffe2/python/workspace.py", line 171, in CreateNet
StringifyProto(net), overwrite,
File "/usr/local/lib/python2.7/dist-packages/caffe2/python/workspace.py", line 197, in CallWithExceptionIntercept
return func(*args, **kwargs)
RuntimeError: CHECK failed: (index) < (current_size_):
Итак, я спрашиваю, знаете ли вы о действительно хороших руководствах по трансферному обучению, которые скорее для инженеров, чем для академиков.
Спасибозаранее