5. pytorch-項目流程

1. 數(shù)據(jù)準備

基本步驟: 生成Dataset(或其子類)對象->傳入DataLoader(為可迭代對象尚胞,可以用for迭代)

1.1 Dataset類

Dataset為抽象類

  • 注意
    • 直接從Dataset中取出的數(shù)據(jù)是沒有經(jīng)過transform的,只有通過Dataloader加載才可以
      training_data=torchvision.datasets.MNIST(root="./mnist", train=True,
                                 transform=torchvision.transforms.ToTensor(), download=True)
      # 像素點的范圍仍然是0-255, 不是0-1
      print(training_data.train_data[0])
      

1.1.1 Dataset子類:TensorDataset

  • 源碼閱讀
    class TensorDataset(Dataset):
      """Dataset wrapping tensors.
    
      Each sample will be retrieved by indexing tensors along the first dimension.
    
      Arguments:
          *tensors (Tensor): tensors that have the same size of the first dimension.
      代碼示例:
          x = torch.linspace(1, 10, 10)
          y = torch.linspace(10, 1, 10)
          dataset = TensorDataset(x, y)
      """
      def __init__(self, *tensors):
          """
          &1
          tensors[0]為x; tensor[1]為y疫蔓。因為x,y的batch_size要相同弦叶,所以要assert
          TensorDataset(x, y, z...)傳入任意多參數(shù)都是可以的
          """
          assert all(tensors[0].size(0) == tensor.size(0) for tensor in tensors)
          self.tensors = tensors
          
    
      def __getitem__(self, index):
          """
          &2
          相當于重載[]運算符
          """
          return tuple(tensor[index] for tensor in self.tensors)
    
      def __len__(self):
          return self.tensors[0].size(0)
    
  • 示例代碼
    import torch
    import torch.utils.data as Data
    
    if __name__ == "__main__":
      x = torch.linspace(1, 10, 10)
      y = torch.linspace(10, 1, 10)
      dataset = Data.TensorDataset(x, y)
      # &1
      # 當最后一個step不足5個(假設僅剩2個)贞盯,則僅會返回2個
      # shuffle: 訓練時為True則打亂數(shù)據(jù)集
      # num_workers為子進程數(shù)量
      dataloader = Data.DataLoader(dataset=dataset, batch_size=5,
                                   shuffle=True, num_workers=2)
      for epoch in range(3):
          for step,input_data in enumerate(dataloader):
              print(f"{epoch}-{step}:\n{input_data}")
    

2. 網(wǎng)絡搭建

2.1 class模式

2.2 Sequential模式

net = torch.nn.Sequential(
        torch.nn.Linear(2, 10),
        torch.nn.ReLU(),
        torch.nn.Linear(10, 2)
    )
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末予权,一起剝皮案震驚了整個濱河市站刑,隨后出現(xiàn)的幾起案子续崖,更是在濱河造成了極大的恐慌敲街,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,430評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件严望,死亡現(xiàn)場離奇詭異多艇,居然都是意外死亡,警方通過查閱死者的電腦和手機像吻,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,406評論 3 398
  • 文/潘曉璐 我一進店門峻黍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來复隆,“玉大人,你說我怎么就攤上這事姆涩⊥旆鳎” “怎么了?”我有些...
    開封第一講書人閱讀 167,834評論 0 360
  • 文/不壞的土叔 我叫張陵骨饿,是天一觀的道長亏栈。 經(jīng)常有香客問我,道長宏赘,這世上最難降的妖魔是什么绒北? 我笑而不...
    開封第一講書人閱讀 59,543評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮察署,結(jié)果婚禮上镇饮,老公的妹妹穿的比我還像新娘。我一直安慰自己箕母,他們只是感情好,可當我...
    茶點故事閱讀 68,547評論 6 397
  • 文/花漫 我一把揭開白布俱济。 她就那樣靜靜地躺著嘶是,像睡著了一般。 火紅的嫁衣襯著肌膚如雪蛛碌。 梳的紋絲不亂的頭發(fā)上聂喇,一...
    開封第一講書人閱讀 52,196評論 1 308
  • 那天,我揣著相機與錄音蔚携,去河邊找鬼希太。 笑死,一個胖子當著我的面吹牛酝蜒,可吹牛的內(nèi)容都是我干的誊辉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,776評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼亡脑,長吁一口氣:“原來是場噩夢啊……” “哼堕澄!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起霉咨,我...
    開封第一講書人閱讀 39,671評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蛙紫,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后途戒,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體坑傅,經(jīng)...
    沈念sama閱讀 46,221評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,303評論 3 340
  • 正文 我和宋清朗相戀三年喷斋,在試婚紗的時候發(fā)現(xiàn)自己被綠了唁毒。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蒜茴。...
    茶點故事閱讀 40,444評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蚕捉,我是刑警寧澤叉庐,帶...
    沈念sama閱讀 36,134評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站闺骚,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜猪瞬,卻給世界環(huán)境...
    茶點故事閱讀 41,810評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望入篮。 院中可真熱鬧陈瘦,春花似錦、人聲如沸潮售。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,285評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽酥诽。三九已至鞍泉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間肮帐,已是汗流浹背咖驮。 一陣腳步聲響...
    開封第一講書人閱讀 33,399評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留训枢,地道東北人托修。 一個月前我還...
    沈念sama閱讀 48,837評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像恒界,于是被迫代替她去往敵國和親睦刃。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,455評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 關于Mongodb的全面總結(jié) MongoDB的內(nèi)部構(gòu)造《MongoDB The Definitive Guide》...
    中v中閱讀 31,947評論 2 89
  • 1. Java基礎部分 基礎部分的順序:基本語法仗处,類相關的語法眯勾,內(nèi)部類的語法,繼承相關的語法婆誓,異常的語法吃环,線程的語...
    子非魚_t_閱讀 31,660評論 18 399
  • 你有經(jīng)歷過這些嗎郁轻? 從小到大,我們總會遇到一些“命運”眷顧的人。在學校好唯,會有親戚老師的格外幫助...
    淺若夏沫清閱讀 617評論 0 1
  • 鄭大主編那打了雞血似的持續(xù)了一周的亢奮之心竭沫,被周五那場突如其來的熱帶暴風雨撲滅。我們從洛溪市新銳傳媒大廈出來后骑篙,一...
    圖革者閱讀 925評論 2 45
  • 放縱自己蜕提、做個不喜歡自己的人。遠比做個讓別人認同的人簡單的多靶端。 何必委屈自己谎势,何必為別人而活,即使當所有人都放棄了...
    以太_x閱讀 134評論 1 0