{ "

Training U-Net

\n

This trains a U-Net model on Carvana dataset. You can find the download instructions on Kaggle.

\n

Save the training images inside _^_0_^_ folder and the masks in _^_1_^_ folder.

\n

For simplicity, we do not do a training and validation split.

\n": "

\u8bad\u7ec3 U-Net

\n

\u8fd9\u4f1a\u5728 Carvana \u6570\u636e\u96c6\u4e0a\u8bad\u7ec3\u4e00\u4e2a U-Net \u6a21\u578b\u3002\u4f60\u53ef\u4ee5\u5728 Kaggle \u4e0a\u627e\u5230\u4e0b\u8f7d\u8bf4\u660e\u3002

\n

\u5c06\u8bad\u7ec3\u56fe\u50cf\u4fdd\u5b58\u5728_^_0_^_\u6587\u4ef6\u5939\u4e2d\uff0c\u5c06\u8499\u7248\u4fdd\u5b58\u5728_^_1_^_\u6587\u4ef6\u5939\u4e2d\u3002

\n

\u4e3a\u7b80\u5355\u8d77\u89c1\uff0c\u6211\u4eec\u4e0d\u8fdb\u884c\u8bad\u7ec3\u548c\u9a8c\u8bc1\u62c6\u5206\u3002

\n", "

Configurations

\n": "

\u914d\u7f6e

\n", "

Sample images

\n": "

\u6837\u672c\u56fe\u7247

\n", "

Train for an epoch

\n": "

\u8bad\u7ec3\u4e00\u4e2a\u65f6\u4ee3

\n", "

Training loop

\n": "

\u8bad\u7ec3\u5faa\u73af

\n", "

\n": "

\n", "

U-Net model

\n": "

U-Net \u6a21\u578b

\n", "

Adam optimizer

\n": "

Adam \u4f18\u5316\u5668

\n", "

Batch size

\n": "

\u6279\u91cf\u5927\u5c0f

\n", "

Calculate loss

\n": "

\u8ba1\u7b97\u635f\u5931

\n", "

Compute gradients

\n": "

\u8ba1\u7b97\u68af\u5ea6

\n", "

Create configurations

\n": "

\u521b\u5efa\u914d\u7f6e

\n", "

Create dataloader

\n": "

\u521b\u5efa\u6570\u636e\u52a0\u8f7d\u5668

\n", "

Create experiment

\n": "

\u521b\u5efa\u5b9e\u9a8c

\n", "

Create optimizer

\n": "

\u521b\u5efa\u4f18\u5316\u5668

\n", "

Crop the image to the size of the mask

\n": "

\u5c06\u56fe\u50cf\u88c1\u526a\u4e3a\u8499\u7248\u7684\u5927\u5c0f

\n", "

Crop the target mask to the size of the logits. Size of the logits will be smaller if we don't use padding in convolutional layers in the U-Net.

\n": "

\u5c06\u76ee\u6807\u8499\u7248\u88c1\u526a\u4e3a logits \u7684\u5927\u5c0f\u3002\u5982\u679c\u6211\u4eec\u4e0d\u5728 U-Net \u7684\u5377\u79ef\u5c42\u4e2d\u4f7f\u7528\u586b\u5145\uff0clogits \u7684\u5927\u5c0f\u4f1a\u53d8\u5c0f\u3002

\n", "

Dataloader

\n": "

\u6570\u636e\u52a0\u8f7d\u5668

\n", "

Dataset

\n": "

\u6570\u636e\u96c6

\n", "

Device to train the model on. _^_0_^_ picks up an available CUDA device or defaults to CPU.

\n": "

\u7528\u4e8e\u8bad\u7ec3\u6a21\u578b\u7684\u8bbe\u5907\u3002_^_0_^_\u9009\u62e9\u53ef\u7528\u7684 CUDA \u8bbe\u5907\u6216\u9ed8\u8ba4\u4e3a CPU\u3002

\n", "

Get a random sample

\n": "

\u968f\u673a\u83b7\u53d6\u6837\u672c

\n", "

Get predicted mask

\n": "

\u83b7\u53d6\u9884\u6d4b\u7684\u53e3\u7f69

\n", "

Get predicted mask logits

\n": "

\u83b7\u53d6\u9884\u6d4b\u7684\u63a9\u7801\u65e5\u5fd7

\n", "

Image logging

\n": "

\u56fe\u50cf\u65e5\u5fd7\u8bb0\u5f55

\n", "

Increment global step

\n": "

\u9012\u589e\u5168\u5c40\u6b65\u957f

\n", "

Initialize

\n": "

\u521d\u59cb\u5316

\n", "

Initialize the Carvana dataset

\n": "

\u521d\u59cb\u5316 C arvana \u6570\u636e\u96c6

\n", "

Initialize the model

\n": "

\u521d\u59cb\u5316\u6a21\u578b

\n", "

Iterate through the dataset. Use _^_0_^_ to sample _^_1_^_ times per epoch.

\n": "

\u904d\u5386\u6570\u636e\u96c6\u3002\u7528\u4e8e_^_0_^_\u5bf9\u6bcf\u4e2a\u7eaa\u5143\u7684\u91c7\u6837_^_1_^_\u6b21\u6570\u3002

\n", "

Learning rate

\n": "

\u5b66\u4e60\u7387

\n", "

Log samples

\n": "

\u65e5\u5fd7\u6837\u672c

\n", "

Loss function

\n": "

\u4e8f\u635f\u51fd\u6570

\n", "

Make the gradients zero

\n": "

\u5c06\u6e10\u53d8\u8bbe\u4e3a\u96f6

\n", "

Move data to device

\n": "

\u5c06\u6570\u636e\u79fb\u52a8\u5230\u8bbe\u5907

\n", "

New line in the console

\n": "

\u63a7\u5236\u53f0\u4e2d\u7684\u65b0\u884c

\n", "

Number of channels in the image. _^_0_^_ for RGB.

\n": "

\u56fe\u50cf\u4e2d\u7684\u901a\u9053\u6570\u3002_^_0_^_\u5bf9\u4e8e RGB\u3002

\n", "

Number of channels in the output mask. _^_0_^_ for binary mask.

\n": "

\u8f93\u51fa\u63a9\u7801\u4e2d\u7684\u58f0\u9053\u6570\u3002_^_0_^_\u7528\u4e8e\u4e8c\u8fdb\u5236\u63a9\u7801\u3002

\n", "

Number of training epochs

\n": "

\u8bad\u7ec3\u5468\u671f\u7684\u6570\u91cf

\n", "

Save the model

\n": "

\u4fdd\u5b58\u6a21\u578b

\n", "

Set configurations. You can override the defaults by passing the values in the dictionary.

\n": "

\u8bbe\u7f6e\u914d\u7f6e\u3002\u60a8\u53ef\u4ee5\u901a\u8fc7\u5728\u5b57\u5178\u4e2d\u4f20\u9012\u503c\u6765\u8986\u76d6\u9ed8\u8ba4\u503c\u3002

\n", "

Set models for saving and loading

\n": "

\u8bbe\u7f6e\u7528\u4e8e\u4fdd\u5b58\u548c\u52a0\u8f7d\u7684\u6a21\u578b

\n", "

Sigmoid function for binary classification

\n": "

\u4e8c\u8fdb\u5236\u5206\u7c7b\u7684 Sigmoid \u51fd\u6570

\n", "

Start and run the training loop

\n": "

\u542f\u52a8\u5e76\u8fd0\u884c\u8bad\u7ec3\u5faa\u73af

\n", "

Take an optimization step

\n": "

\u91c7\u53d6\u4f18\u5316\u6b65\u9aa4

\n", "

Track the loss

\n": "

\u8ffd\u8e2a\u635f\u5931

\n", "

Train the model

\n": "

\u8bad\u7ec3\u6a21\u578b

\n", "Code for training a U-Net model on Carvana dataset.": "\u7528\u4e8e\u5728 Carvana \u6570\u636e\u96c6\u4e0a\u8bad\u7ec3 U-Net \u6a21\u578b\u7684\u4ee3\u7801\u3002", "Training a U-Net on Carvana dataset": "\u5728 Carvana \u6570\u636e\u96c6\u4e0a\u8bad\u7ec3 U-Net" }