サブカムTIL 0826

7560 ワード

Binary classification, multi class classification




リファレンス
リファレンス
loss関数が消去されたページ
バイナリアイドル時の最後のノード、bcewithlogitloss
多進分類における最後のノードクラス数,クロスエントロピー損失
pred、label資料タイプと形状は上の写真を参照してください.

model.eval, torch.No grad差異


リファレンス

train test split

num_train = len(train_dataset)
    indices = list(range(num_train))
    split = int(np.floor(valid_size * num_train))

    if shuffle:
        np.random.seed(random_seed)
        np.random.shuffle(indices)

    train_idx, valid_idx = indices[split:], indices[:split]
    train_sampler = SubsetRandomSampler(train_idx)
    valid_sampler = SubsetRandomSampler(valid_idx)

    train_loader = torch.utils.data.DataLoader(
        train_dataset, batch_size=batch_size, sampler=train_sampler,
        num_workers=num_workers, pin_memory=pin_memory,
    )
    valid_loader = torch.utils.data.DataLoader(
        valid_dataset, batch_size=batch_size, sampler=valid_sampler,
        num_workers=num_workers, pin_memory=pin_memory,
    )
strataを与えることができます
from sklearn.model_selection import train_test_split

dataset = TotalDataset
dataset_size = len(dataset)

train_idx, val_idx = train_test_split(np.arange(dataset_size),
                                    test_size=validation_split,
                                    shuffle=True,
                                    random_state=random_seed,
                                    stratify=TotalDataset.labels)

train_sampler = SubsetRandomSampler(train_idx)
valid_sampler = SubsetRandomSampler(val_idx)

train_loader = torch.utils.data.DataLoader(dataset, batch_size=batch_size, pin_memory=4,
                                           sampler=train_sampler)
validation_loader = torch.utils.data.DataLoader(dataset, batch_size=batch_size, pin_memory=4,
                                                sampler=valid_sampler)