1. 程式人生 > 其它 >pytorch載入預訓練模型出現錯誤:ModuleNotFoundError: No module named 'models'

pytorch載入預訓練模型出現錯誤:ModuleNotFoundError: No module named 'models'

具體實現:

  

interface IFileOpen()
{
  void Open()  
}

定義所有檔案的公共基類:

abstract class Files:IFileOpen
{
     private FileType fileType = FileType.doc;
     public FileType FileType
{
      get {return fileType;}  
}    
      public abstact void Open();
}
  abstract class DocFile : Files {
        public
int GetPageCount() { } } abstract class ImageFile : Files { public void ZoomIn() { } public void ZoomOut() { } }

基類Files實現了IFileOpen介面,對派生類做了歸檔,初步實現了檔案型別,圖片型別和媒體型別三個大類。

實現具體資料類

class WORDFile:DocFile
{
    public
ovveride void Open(){ Console.WriteLine("Open the WORD fILE"); } }

同時設計一個資料管理類來進行資料的統一管理:

 class LoadManager
    {
        private IList<Files> files = new List<Files>();
        public IList<Files> Files
        {
            get { return files; }
        }
        public
void LoadFiles(Files file) { files.Add(file); } //開啟所有資料 public void OpenAllFiles() { foreach (IFileOpen file in files) { file.Open(); } } //開啟單個資料 public void OpenFile(IFileOpen file) { file.Open(); } //獲取檔案型別 public FileType GetFileType(string fileName) { //根據指定路徑檔案返回檔案型別 FileInfo fi = new FileInfo(fileName); return (FileType)Enum.Parse(typeof(FileType), fi.Extension); } }

實現簡單的客戶端,根據所需進行檔案的載入:

Class FileClient
{
    public static void Main()
{
      //首先啟動檔案載入器
     LoadManager lm = new LoadManager();

     //新增要處理的檔案
     lm.LoadFiles(new WORDFile());
     lm.LoadFiles(new PDFFile());
     lm.LoadFiles(new JPGFile());
     lm.LoadFiles(new AVGFile());

     foreach(Files file in lm.Files){
         if(file is 爺爺選擇的){

              lm.OpenFile(file);
}
}
}    

隨需而變的業務:

class MPEGFile:MediaFile
{
   public override void Open()
  {
         Console.WriteLine("Open the MPEG file");
   }
}

新增新檔案的載入操作

lm.LoadFiles(new MPEGFile());