chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"<h1>Receptance Weighted Key Value (RWKV)</h1>\n<p>This is a tutorial/implementation of RWKV from paper <a href=\"https://arxiv.org/pdf/2305.13048.pdf\">RWKV: Reinventing RNNs for the Transformer Era</a> in <a href=\"https://pytorch.org/\">PyTorch</a>.</p>\n<p>Full definition of a RWKV Language Model, all of it in this single file. References: 1) <a href=\"https://github.com/BlinkDL/RWKV-LM/blob/main/RWKV-v4neo/src/model.py\">the official RWKV PyTorch implementation released by Bo Peng</a> 2) <a href=\"https://github.com/huggingface/transformers/blob/main/src/transformers/models/rwkv/modeling_rwkv.py\">huggingface/transformers PyTorch implementation</a></p>\n": "<h1>Receptance Weighted Key Value (RWKV)</h1>\n<p>This is a tutorial/implementation of RWKV from paper <a href=\"https://arxiv.org/pdf/2305.13048.pdf\">RWKV: Reinventing RNNs for the Transformer Era</a> in <a href=\"https://pytorch.org/\">PyTorch</a>.</p>\n<p>Full definition of a RWKV Language Model, all of it in this single file. References: 1) <a href=\"https://github.com/BlinkDL/RWKV-LM/blob/main/RWKV-v4neo/src/model.py\">the official RWKV PyTorch implementation released by Bo Peng</a> 2) <a href=\"https://github.com/huggingface/transformers/blob/main/src/transformers/models/rwkv/modeling_rwkv.py\">huggingface/transformers PyTorch implementation</a></p>\n",
|
||||
"<h1>x = (Batch,Time,Channel)</h1>\n": "<h1>x = (Batch,Time,Channel)</h1>\n",
|
||||
"<h2>RWKV block element</h2>\n": "<h2>RWKV block element</h2>\n",
|
||||
"<h2>RWKV</h2>\n": "<h2>RWKV</h2>\n",
|
||||
"<h3>Channel Mixing</h3>\n": "<h3>Channel Mixing</h3>\n",
|
||||
"<h3>L2 loss wrapper</h3>\n<p><a href=\"https://github.com/BlinkDL/RWKV-LM/blob/cca1b5e8e597cf40675882bb10b46287c844e35c/RWKV-v4/src/model.py#L21\">ref</a></p>\n": "<h3>L2 loss wrapper</h3>\n<p><a href=\"https://github.com/BlinkDL/RWKV-LM/blob/cca1b5e8e597cf40675882bb10b46287c844e35c/RWKV-v4/src/model.py#L21\">ref</a></p>\n",
|
||||
"<h3>Layer normalization with bias</h3>\n": "<h3>Layer normalization with bias</h3>\n",
|
||||
"<h3>Time Mixing</h3>\n": "<h3>Time Mixing</h3>\n",
|
||||
"<p> x = (Batch,Time,Channel)</p>\n": "<p> x = (Batch,Time,Channel)</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Embedding Layer </p>\n": "<p>Embedding Layer </p>\n",
|
||||
"<p>Initiate model layers </p>\n": "<p>Initiate model layers </p>\n",
|
||||
"<p>Layer Norm </p>\n": "<p>Layer Norm </p>\n",
|
||||
"<p>Learnable Matrix </p>\n": "<p>Learnable Matrix </p>\n",
|
||||
"<p>Learnable Vector </p>\n": "<p>Learnable Vector </p>\n",
|
||||
"<p>Logit Layer and loss Function (for training) </p>\n": "<p>Logit Layer and loss Function (for training) </p>\n",
|
||||
"<p>Output linear layer </p>\n": "<p>Output linear layer </p>\n",
|
||||
"<p>RWKV Blocks </p>\n": "<p>RWKV Blocks </p>\n",
|
||||
"<p>Return Logits and loss </p>\n": "<p>Return Logits and loss </p>\n",
|
||||
"<p>Update state for next iteration </p>\n": "<p>Update state for next iteration </p>\n",
|
||||
"<p>WKV calculation </p>\n": "<p>WKV calculation </p>\n",
|
||||
"<p>channel mixing </p>\n": "<p>channel mixing </p>\n",
|
||||
"<p>if we are given some desired targets also calculate the loss </p>\n": "<p>if we are given some desired targets also calculate the loss </p>\n",
|
||||
"<p>inference-time mini-optimization: only forward the lm_head on the very last position </p>\n": "<p>inference-time mini-optimization: only forward the lm_head on the very last position </p>\n",
|
||||
"<p>learnable matrix </p>\n": "<p>learnable matrix </p>\n",
|
||||
"<p>learnable vector </p>\n": "<p>learnable vector </p>\n",
|
||||
"<p>state: <a href=\"batch_size, 5 , n_embd\">batch_size, 5 , n_embd</a> </p>\n": "<p>state: <a href=\"batch_size, 5 , n_embd\">batch_size, 5 , n_embd</a> </p>\n",
|
||||
"<p>time mixing </p>\n": "<p>time mixing </p>\n",
|
||||
"<p>to encourage the logits to be close to 0 </p>\n": "<p>to encourage the logits to be close to 0 </p>\n",
|
||||
"<p>token shifting </p>\n": "<p>token shifting </p>\n",
|
||||
"<p>update states </p>\n": "<p>update states </p>\n",
|
||||
"Receptance Weighted Key Value (RWKV)": "Receptance Weighted Key Value (RWKV)",
|
||||
"This implements the RWKV model using PyTorch with explanations.": "This implements the RWKV model using PyTorch with explanations."
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"<h2>Transformer Configurations</h2>\n<p>This defines configurations for a transformer. The configurations are calculate using option functions. These are lazy loaded and therefore only the necessary modules are calculated.</p>\n": "<h2>Transformer Configurations</h2>\n<p>This defines configurations for a transformer. The configurations are calculate using option functions. These are lazy loaded and therefore only the necessary modules are calculated.</p>\n",
|
||||
"<p>Dropout probability </p>\n": "<p>Dropout probability </p>\n",
|
||||
"<p>Number of attention heads </p>\n": "<p>Number of attention heads </p>\n",
|
||||
"<p>Number of layers </p>\n": "<p>Number of layers </p>\n",
|
||||
"<p>Number of tokens in the source vocabulary (for token embeddings) </p>\n": "<p>Number of tokens in the source vocabulary (for token embeddings) </p>\n",
|
||||
"<p>Number of tokens in the target vocabulary (to generate logits for prediction) </p>\n": "<p>Number of tokens in the target vocabulary (to generate logits for prediction) </p>\n",
|
||||
"<p>Transformer embedding size </p>\n": "<p>Transformer embedding size </p>\n",
|
||||
"configs.py": "configs.py"
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"<h2>Configurations</h2>\n<p>This inherits from <a href=\"../../experiments/nlp_autoregression.html#NLPAutoRegressionConfigs\"><span translate=no>_^_0_^_</span></a></p>\n": "<h2>Configurations</h2>\n<p>This inherits from <a href=\"../../experiments/nlp_autoregression.html#NLPAutoRegressionConfigs\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<h3>RWKV configurations</h3>\n": "<h3>RWKV configurations</h3>\n",
|
||||
"<p> </p>\n": "<p> </p>\n",
|
||||
"<p> Create RWKV model and initialize weights</p>\n": "<p> Create RWKV model and initialize weights</p>\n",
|
||||
"<p>Apply custom weight initialization </p>\n": "<p>Apply custom weight initialization </p>\n",
|
||||
"<p>Batch size <span translate=no>_^_0_^_</span> </p>\n": "<p>Batch size <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Create AdamW optimizer and use the fused version if it is available </p>\n": "<p>Create AdamW optimizer and use the fused version if it is available </p>\n",
|
||||
"<p>Create configs </p>\n": "<p>Create configs </p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>Create experiment </p>\n",
|
||||
"<p>Custom optimizer </p>\n": "<p>Custom optimizer </p>\n",
|
||||
"<p>Override configurations </p>\n": "<p>Override configurations </p>\n",
|
||||
"<p>Prompt separator is blank </p>\n": "<p>Prompt separator is blank </p>\n",
|
||||
"<p>RWKV model </p>\n": "<p>RWKV model </p>\n",
|
||||
"<p>Run training </p>\n": "<p>Run training </p>\n",
|
||||
"<p>Set models for saving and loading </p>\n": "<p>Set models for saving and loading </p>\n",
|
||||
"<p>Set the vocabulary sizes for embeddings and generating logits </p>\n": "<p>Set the vocabulary sizes for embeddings and generating logits </p>\n",
|
||||
"<p>Start the experiment </p>\n": "<p>Start the experiment </p>\n",
|
||||
"<p>Starting prompt for sampling </p>\n": "<p>Starting prompt for sampling </p>\n",
|
||||
"<p>Switch between training and validation for <span translate=no>_^_0_^_</span> times per epoch </p>\n": "<p>Switch between training and validation for <span translate=no>_^_0_^_</span> times per epoch </p>\n",
|
||||
"<p>Train for <span translate=no>_^_0_^_</span> epochs </p>\n": "<p>Train for <span translate=no>_^_0_^_</span> epochs </p>\n",
|
||||
"<p>Use Tiny Shakespeare dataset </p>\n": "<p>Use Tiny Shakespeare dataset </p>\n",
|
||||
"<p>Use a context size of <span translate=no>_^_0_^_</span> </p>\n": "<p>Use a context size of <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Use character level tokenizer </p>\n": "<p>Use character level tokenizer </p>\n",
|
||||
"<p>We use our <a href=\"../configs.html#RWKVConfigs\">configurable RWKV implementation</a> </p>\n": "<p>We use our <a href=\"../configs.html#RWKVConfigs\">configurable RWKV implementation</a> </p>\n",
|
||||
"<p>create optim groups. Any parameters that is 2D will be weight decayed, otherwise no. i.e. all weight tensors in matmuls + embeddings decay, all biases and layernorms don't. </p>\n": "<p>create optim groups. Any parameters that is 2D will be weight decayed, otherwise no. i.e. all weight tensors in matmuls + embeddings decay, all biases and layernorms don't. </p>\n",
|
||||
"<p>filter out those that do not require grad </p>\n": "<p>filter out those that do not require grad </p>\n",
|
||||
"<p>initialize Vector Parameters in TimeMixing </p>\n": "<p>initialize Vector Parameters in TimeMixing </p>\n",
|
||||
"<p>model </p>\n": "<p>model </p>\n",
|
||||
"<p>number of warmup iterations </p>\n": "<p>number of warmup iterations </p>\n",
|
||||
"<p>start with all of the candidate parameters </p>\n": "<p>start with all of the candidate parameters </p>\n",
|
||||
"<p>total number of training iterations </p>\n": "<p>total number of training iterations </p>\n",
|
||||
"<p>weight decay </p>\n": "<p>weight decay </p>\n",
|
||||
"experiment.py": "experiment.py"
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">labml.ai Annotated PyTorch Paper Implementations</a></h1>\n": "<h1><a href=\"index.html\">labml.ai \u30a2\u30ce\u30c6\u30fc\u30b7\u30e7\u30f3\u4ed8\u304d PyTorch \u30da\u30fc\u30d1\u30fc\u5b9f\u88c5</a></h1>\n",
|
||||
"<h2>Highlighted Research Paper PDFs</h2>\n": "<h2>\u4e3b\u306a\u7814\u7a76\u8ad6\u6587 PDF</h2>\n",
|
||||
"<h2>Paper Implementations</h2>\n": "<h2>\u8ad6\u6587\u306b\u3088\u308b\u5b9f\u88c5</h2>\n",
|
||||
"<h2>Translations</h2>\n": "<h2>\u7ffb\u8a33</h2>\n",
|
||||
"<h3><strong><a href=\"https://nn.labml.ai\">English (original)</a></strong></h3>\n": "<h3><strong><a href=\"https://nn.labml.ai\">\u82f1\u8a9e (\u539f\u6587)</a></strong></h3>\n",
|
||||
"<h3><strong><a href=\"https://nn.labml.ai/ja/\">Japanese (translated)</a></strong></h3>\n": "</a><h3><strong><a href=\"https://nn.labml.ai/ja/\">\u65e5\u672c\u8a9e (\u7ffb\u8a33\u6e08\u307f)</strong></h3>\n",
|
||||
"<h3><strong><a href=\"https://nn.labml.ai/zh/\">Chinese (translated)</a></strong></h3>\n": "</a><h3><strong><a href=\"https://nn.labml.ai/zh/\">\u4e2d\u56fd\u8a9e (\u7ffb\u8a33\u6e08\u307f)</strong></h3>\n",
|
||||
"<h3>Citing LabML</h3>\n": "<h3>LabML \u306e\u5f15\u7528</h3>\n",
|
||||
"<h3>Installation</h3>\n": "<h3>\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb</h3>\n",
|
||||
"<h4>\u2728 <a href=\"activations/index.html\">Activations</a></h4>\n": "<h4>\u2728 <a href=\"activations/index.html\">\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"adaptive_computation/index.html\">Adaptive Computation</a></h4>\n": "<h4>\u2728 <a href=\"adaptive_computation/index.html\">\u30a2\u30c0\u30d7\u30c6\u30a3\u30d6\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"capsule_networks/index.html\">Capsule Networks</a></h4>\n": "<h4>\u2728 <a href=\"capsule_networks/index.html\">\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"cfr/index.html\">Counterfactual Regret Minimization (CFR)</a></h4>\n": "<h4>\u2728 <a href=\"cfr/index.html\">\u53cd\u4e8b\u5b9f\u306b\u57fa\u3065\u304f\u5f8c\u6094\u6700\u5c0f\u5316 (CFR)</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"conv_mixer/index.html\">ConvMixer</a></h4>\n": "<h4>\u2728 <a href=\"conv_mixer/index.html\">\u30b3\u30f3\u30d0\u30fc\u30b8\u30e7\u30f3\u30df\u30ad\u30b5\u30fc</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"diffusion/index.html\">Diffusion models</a></h4>\n": "<h4>\u2728 <a href=\"diffusion/index.html\">\u62e1\u6563\u30e2\u30c7\u30eb</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"distillation/index.html\">Distillation</a></h4>\n": "<h4>\u2728 <a href=\"distillation/index.html\">\u84b8\u7559</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"gan/index.html\">Generative Adversarial Networks</a></h4>\n": "<h4>\u2728 <a href=\"gan/index.html\">\u30b8\u30a7\u30cd\u30ec\u30fc\u30c6\u30a3\u30d6\u30fb\u30a2\u30c9\u30d0\u30fc\u30b5\u30ea\u30a2\u30eb\u30fb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"hypernetworks/hyper_lstm.html\">HyperNetworks - HyperLSTM</a></h4>\n": "<h4>\u2728 <a href=\"hypernetworks/hyper_lstm.html\">\u30cf\u30a4\u30d1\u30fc\u30cd\u30c3\u30c8\u30ef\u30fc\u30af-</a> HyperLSTM</h4>\n",
|
||||
"<h4>\u2728 <a href=\"lstm/index.html\">LSTM</a></h4>\n": "<h4>\u2728 <a href=\"lstm/index.html\">LSTM</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"neox/index.html\">Eleuther GPT-NeoX</a></h4>\n": "<h4>\u2728 <a href=\"neox/index.html\">\u30a8\u30ea\u30e5\u30fc\u30b5\u30fcGPT-\u30cd\u30aa\u30c3\u30af\u30b9</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"normalization/index.html\">Normalization Layers</a></h4>\n": "<h4>\u2728 <a href=\"normalization/index.html\">\u6b63\u898f\u5316\u30ec\u30a4\u30e4\u30fc</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"optimizers/index.html\">Optimizers</a></h4>\n": "<h4>\u2728 <a href=\"optimizers/index.html\">\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"recurrent_highway_networks/index.html\">Recurrent Highway Networks</a></h4>\n": "<h4>\u2728 <a href=\"recurrent_highway_networks/index.html\">\u30ea\u30ab\u30ec\u30f3\u30c8\u30cf\u30a4\u30a6\u30a7\u30a4\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"resnet/index.html\">ResNet</a></h4>\n": "<h4>\u2728 <a href=\"resnet/index.html\">\u30ea\u30ba\u30cd\u30c3\u30c8</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"rl/index.html\">Reinforcement Learning</a></h4>\n": "<h4>\u2728 <a href=\"rl/index.html\">\u5f37\u5316\u5b66\u7fd2</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"sampling/index.html\">Language Model Sampling Techniques</a></h4>\n": "<h4>\u2728 <a href=\"sampling/index.html\">\u8a00\u8a9e\u30e2\u30c7\u30eb\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u624b\u6cd5</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"scaling/index.html\">Scalable Training/Inference</a></h4>\n": "<h4>\u2728 <a href=\"scaling/index.html\">\u30b9\u30b1\u30fc\u30e9\u30d6\u30eb\u306a\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0/\u63a8\u8ad6</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"sketch_rnn/index.html\">Sketch RNN</a></h4>\n": "<h4>\u2728 <a href=\"sketch_rnn/index.html\">\u30b9\u30b1\u30c3\u30c1 RNN</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"transformers/index.html\">Transformers</a></h4>\n": "<h4>\u2728 <a href=\"transformers/index.html\">\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fc</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"uncertainty/index.html\">Uncertainty</a></h4>\n": "<h4>\u2728 <a href=\"uncertainty/index.html\">\u4e0d\u78ba\u5b9f\u6027</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"unet/index.html\">U-Net</a></h4>\n": "<h4>\u2728 <a href=\"unet/index.html\">\u30e6\u30fc\u30cd\u30c3\u30c8</a></h4>\n",
|
||||
"<h4>\u2728 Graph Neural Networks</h4>\n": "<h4>\u2728 \u30b0\u30e9\u30d5\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</h4>\n",
|
||||
"<p><span translate=no>_^_0_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>If you use this for academic research, please cite it using the following BibTeX entry.</p>\n": "<p>\u5b66\u8853\u7814\u7a76\u306b\u4f7f\u7528\u3059\u308b\u5834\u5408\u306f\u3001\u4ee5\u4e0b\u306eBibTeX\u30a8\u30f3\u30c8\u30ea\u3092\u4f7f\u7528\u3057\u3066\u5f15\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002</p>\n",
|
||||
"<p>Solving games with incomplete information such as poker with CFR.</p>\n": "<p>CFR\u3067\u30dd\u30fc\u30ab\u30fc\u306a\u3069\u306e\u60c5\u5831\u304c\u4e0d\u5b8c\u5168\u306a\u30b2\u30fc\u30e0\u3092\u89e3\u6c7a\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<p>This is a collection of simple PyTorch implementations of neural networks and related algorithms. <a href=\"https://github.com/labmlai/annotated_deep_learning_paper_implementations\">These implementations</a> are documented with explanations, and the <a href=\"index.html\">website</a> renders these as side-by-side formatted notes. We believe these would help you understand these algorithms better.</p>\n": "<p>\u3053\u308c\u306f\u3001\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3068\u95a2\u9023\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306e\u5358\u7d14\u306a PyTorch \u5b9f\u88c5\u306e\u30b3\u30ec\u30af\u30b7\u30e7\u30f3\u3067\u3059\u3002<a href=\"https://github.com/labmlai/annotated_deep_learning_paper_implementations\">\u3053\u308c\u3089\u306e\u5b9f\u88c5\u306f\u8aac\u660e\u4ed8\u304d\u3067\u6587\u66f8\u5316\u3055\u308c\u3066\u304a\u308a</a>\u3001<a href=\"index.html\">\u30a6\u30a7\u30d6\u30b5\u30a4\u30c8\u3067\u306f\u3053\u308c\u3089\u3092\u4e26\u3079\u3066\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u3055\u308c\u305f\u30e1\u30e2\u3068\u3057\u3066\u8868\u793a\u3057\u3066\u3044\u307e\u3059</a>\u3002\u3053\u308c\u3089\u306f\u3001\u3053\u308c\u3089\u306e\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3092\u3088\u308a\u3088\u304f\u7406\u89e3\u3059\u308b\u306e\u306b\u5f79\u7acb\u3064\u3068\u4fe1\u3058\u3066\u3044\u307e\u3059\u3002</p>\n",
|
||||
"<p>We are actively maintaining this repo and adding new implementations. <a href=\"https://twitter.com/labmlai\"><span translate=no>_^_0_^_</span></a> for updates.</p>\n": "<p>\u3053\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u3092\u7a4d\u6975\u7684\u306b\u7ba1\u7406\u3057\u3001\u65b0\u3057\u3044\u5b9f\u88c5\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059\u3002<a href=\"https://twitter.com/labmlai\"><span translate=no>_^_0_^_</span></a>\u66f4\u65b0\u7528\u3002</p>\n",
|
||||
"<span translate=no>_^_0_^_</span>": "<span translate=no>_^_0_^_</span>",
|
||||
"<ul><li><a href=\"activations/fta/index.html\">Fuzzy Tiling Activations</a></li></ul>\n": "<ul><li><a href=\"activations/fta/index.html\">\u30d5\u30a1\u30b8\u30fc\u30bf\u30a4\u30ea\u30f3\u30b0\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3</a></li></ul>\n",
|
||||
"<ul><li><a href=\"adaptive_computation/ponder_net/index.html\">PonderNet</a></li></ul>\n": "<ul><li><a href=\"adaptive_computation/ponder_net/index.html\">\u30dd\u30f3\u30c0\u30fc\u30cd\u30c3\u30c8</a></li></ul>\n",
|
||||
"<ul><li><a href=\"cfr/kuhn/index.html\">Kuhn Poker</a></li></ul>\n": "<ul><li><a href=\"cfr/kuhn/index.html\">\u30af\u30fc\u30f3\u30dd\u30fc\u30ab\u30fc</a></li></ul>\n",
|
||||
"<ul><li><a href=\"diffusion/ddpm/index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> </li>\n<li><a href=\"diffusion/stable_diffusion/sampler/ddim.html\">Denoising Diffusion Implicit Models (DDIM)</a> </li>\n<li><a href=\"diffusion/stable_diffusion/latent_diffusion.html\">Latent Diffusion Models</a> </li>\n<li><a href=\"diffusion/stable_diffusion/index.html\">Stable Diffusion</a></li></ul>\n": "<ul><li><a href=\"diffusion/ddpm/index.html\">\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM)</a></li>\n<li><a href=\"diffusion/stable_diffusion/sampler/ddim.html\">\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u6697\u9ed9\u30e2\u30c7\u30eb (DDIM)</a></li>\n<li><a href=\"diffusion/stable_diffusion/latent_diffusion.html\">\u6f5c\u5728\u62e1\u6563\u30e2\u30c7\u30eb</a></li>\n<li><a href=\"diffusion/stable_diffusion/index.html\">\u5b89\u5b9a\u62e1\u6563</a></li></ul>\n",
|
||||
"<ul><li><a href=\"gan/original/index.html\">Original GAN</a> </li>\n<li><a href=\"gan/dcgan/index.html\">GAN with deep convolutional network</a> </li>\n<li><a href=\"gan/cycle_gan/index.html\">Cycle GAN</a> </li>\n<li><a href=\"gan/wasserstein/index.html\">Wasserstein GAN</a> </li>\n<li><a href=\"gan/wasserstein/gradient_penalty/index.html\">Wasserstein GAN with Gradient Penalty</a> </li>\n<li><a href=\"gan/stylegan/index.html\">StyleGAN 2</a></li></ul>\n": "<ul><li><a href=\"gan/original/index.html\">\u30aa\u30ea\u30b8\u30ca\u30ebGAN</a></li>\n<li><a href=\"gan/dcgan/index.html\">\u6df1\u3044\u7573\u307f\u8fbc\u307f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u5099\u3048\u305fGAN</a></li>\n<li><a href=\"gan/cycle_gan/index.html\">\u30b5\u30a4\u30af\u30eb GAN</a></li>\n<li><a href=\"gan/wasserstein/index.html\">\u30ef\u30c3\u30b5\u30fc\u30b9\u30bf\u30a4\u30f3 GAN</a></li>\n<li><a href=\"gan/wasserstein/gradient_penalty/index.html\">\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\u30da\u30ca\u30eb\u30c6\u30a3\u4ed8\u304d\u30ef\u30c3\u30b5\u30fc\u30b9\u30bf\u30a4\u30f3 GAN</a></li>\n<li><a href=\"gan/stylegan/index.html\">\u30b9\u30bf\u30a4\u30eb\u30ac\u30f3 2</a></li></ul>\n",
|
||||
"<ul><li><a href=\"graphs/gat/index.html\">Graph Attention Networks (GAT)</a> </li>\n<li><a href=\"graphs/gatv2/index.html\">Graph Attention Networks v2 (GATv2)</a></li></ul>\n": "<ul><li><a href=\"graphs/gat/index.html\">\u30b0\u30e9\u30d5\u30fb\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30fb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af (GAT)</a></li>\n</ul><li><a href=\"graphs/gatv2/index.html\">\u30b0\u30e9\u30d5\u30fb\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30fb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30b9 v2 (GATv2)</a></li>\n",
|
||||
"<ul><li><a href=\"neox/samples/generate.html\">Generate on a 48GB GPU</a> </li>\n<li><a href=\"neox/samples/finetune.html\">Finetune on two 48GB GPUs</a> </li>\n<li><a href=\"neox/utils/llm_int8.html\">LLM.int8()</a></li></ul>\n": "<ul><li><a href=\"neox/samples/generate.html\">48 GB \u306e GPU \u3067\u751f\u6210</a></li>\n<li><a href=\"neox/samples/finetune.html\">2 \u3064\u306e 48 GB GPU \u3067\u5fae\u8abf\u6574\u53ef\u80fd</a></li>\n<li><a href=\"neox/utils/llm_int8.html\">llm.int8</a></li></ul>\n",
|
||||
"<ul><li><a href=\"normalization/batch_norm/index.html\">Batch Normalization</a> </li>\n<li><a href=\"normalization/layer_norm/index.html\">Layer Normalization</a> </li>\n<li><a href=\"normalization/instance_norm/index.html\">Instance Normalization</a> </li>\n<li><a href=\"normalization/group_norm/index.html\">Group Normalization</a> </li>\n<li><a href=\"normalization/weight_standardization/index.html\">Weight Standardization</a> </li>\n<li><a href=\"normalization/batch_channel_norm/index.html\">Batch-Channel Normalization</a> </li>\n<li><a href=\"normalization/deep_norm/index.html\">DeepNorm</a></li></ul>\n": "<ul><li><a href=\"normalization/batch_norm/index.html\">\u30d0\u30c3\u30c1\u6b63\u898f\u5316</a></li>\n<li><a href=\"normalization/layer_norm/index.html\">\u30ec\u30a4\u30e4\u30fc\u6b63\u898f\u5316</a></li>\n<li><a href=\"normalization/instance_norm/index.html\">\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u6b63\u898f\u5316</a></li>\n<li><a href=\"normalization/group_norm/index.html\">\u30b0\u30eb\u30fc\u30d7\u6b63\u898f\u5316</a></li>\n<li><a href=\"normalization/weight_standardization/index.html\">\u91cd\u91cf\u6a19\u6e96\u5316</a></li>\n<li><a href=\"normalization/batch_channel_norm/index.html\">\u30d0\u30c3\u30c1\u30c1\u30e3\u30cd\u30eb\u6b63\u898f\u5316</a></li>\n</ul><li><a href=\"normalization/deep_norm/index.html\">\u30c7\u30a3\u30fc\u30d7\u30fb\u30ce\u30fc\u30e0</a></li>\n",
|
||||
"<ul><li><a href=\"optimizers/adam.html\">Adam</a> </li>\n<li><a href=\"optimizers/amsgrad.html\">AMSGrad</a> </li>\n<li><a href=\"optimizers/adam_warmup.html\">Adam Optimizer with warmup</a> </li>\n<li><a href=\"optimizers/noam.html\">Noam Optimizer</a> </li>\n<li><a href=\"optimizers/radam.html\">Rectified Adam Optimizer</a> </li>\n<li><a href=\"optimizers/ada_belief.html\">AdaBelief Optimizer</a></li></ul>\n": "<ul><li><a href=\"optimizers/adam.html\">\u30a2\u30c0\u30e0</a></li>\n<li><a href=\"optimizers/amsgrad.html\">\u30de\u30b9\u30b0\u30e9\u30fc\u30c9</a></li>\n<li><a href=\"optimizers/adam_warmup.html\">\u30a6\u30a9\u30fc\u30e0\u30a2\u30c3\u30d7\u6a5f\u80fd\u4ed8\u304d Adam \u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</a></li>\n<li><a href=\"optimizers/noam.html\">\u30ce\u30fc\u30e0\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</a></li>\n<li><a href=\"optimizers/radam.html\">\u30ec\u30af\u30c6\u30a3\u30d5\u30a1\u30a4\u30c9\u30fb\u30a2\u30c0\u30e0\u30fb\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</a></li>\n<li><a href=\"optimizers/ada_belief.html\">\u30a2\u30c0\u30d6\u30ea\u30ea\u30fc\u30d5\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</a></li></ul>\n",
|
||||
"<ul><li><a href=\"rl/ppo/index.html\">Proximal Policy Optimization</a> with <a href=\"rl/ppo/gae.html\">Generalized Advantage Estimation</a> </li>\n<li><a href=\"rl/dqn/index.html\">Deep Q Networks</a> with with <a href=\"rl/dqn/model.html\">Dueling Network</a>, <a href=\"rl/dqn/replay_buffer.html\">Prioritized Replay</a> and Double Q Network.</li></ul>\n": "<ul><li><a href=\"rl/ppo/index.html\"><a href=\"rl/ppo/gae.html\">\u4e00\u822c\u5316\u30a2\u30c9\u30d0\u30f3\u30c6\u30fc\u30b8\u63a8\u5b9a\u306b\u3088\u308b\u8fd1\u4f4d\u653f\u7b56\u6700\u9069\u5316</a></a></li>\n</ul><li><a href=\"rl/dqn/index.html\"><a href=\"rl/dqn/model.html\">\u30c7\u30e5\u30a8\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3001<a href=\"rl/dqn/replay_buffer.html\">\u512a\u5148\u30ea\u30d7\u30ec\u30a4</a>\u3001\u30c0\u30d6\u30ebQ\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u5099\u3048\u305f\u30c7\u30a3\u30fc\u30d7Q\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</a></a>\u3002</li>\n",
|
||||
"<ul><li><a href=\"sampling/greedy.html\">Greedy Sampling</a> </li>\n<li><a href=\"sampling/temperature.html\">Temperature Sampling</a> </li>\n<li><a href=\"sampling/top_k.html\">Top-k Sampling</a> </li>\n<li><a href=\"sampling/nucleus.html\">Nucleus Sampling</a></li></ul>\n": "<ul><li><a href=\"sampling/greedy.html\">\u6b32\u5f35\u308a\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</a></li>\n<li><a href=\"sampling/temperature.html\">\u6e29\u5ea6\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</a></li>\n<li><a href=\"sampling/top_k.html\">\u30c8\u30c3\u30d7k\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</a></li>\n<li><a href=\"sampling/nucleus.html\">\u6838\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</a></li></ul>\n",
|
||||
"<ul><li><a href=\"scaling/zero3/index.html\">Zero3 memory optimizations</a></li></ul>\n": "<ul><li><a href=\"scaling/zero3/index.html\">Zero3 \u30e1\u30e2\u30ea\u6700\u9069\u5316</a></li></ul>\n",
|
||||
"<ul><li><a href=\"transformers/mha.html\">Multi-headed attention</a> </li>\n<li><a href=\"transformers/models.html\">Transformer building blocks</a> </li>\n<li><a href=\"transformers/xl/index.html\">Transformer XL</a> </li>\n<li><a href=\"transformers/xl/relative_mha.html\">Relative multi-headed attention</a> </li>\n<li><a href=\"transformers/rope/index.html\">Rotary Positional Embeddings (RoPE)</a> </li>\n<li><a href=\"transformers/alibi/index.html\">Attention with Linear Biases (ALiBi)</a> </li>\n<li><a href=\"transformers/retro/index.html\">RETRO</a> </li>\n<li><a href=\"transformers/compressive/index.html\">Compressive Transformer</a> </li>\n<li><a href=\"transformers/gpt/index.html\">GPT Architecture</a> </li>\n<li><a href=\"transformers/glu_variants/simple.html\">GLU Variants</a> </li>\n<li><a href=\"transformers/knn/index.html\">kNN-LM: Generalization through Memorization</a> </li>\n<li><a href=\"transformers/feedback/index.html\">Feedback Transformer</a> </li>\n<li><a href=\"transformers/switch/index.html\">Switch Transformer</a> </li>\n<li><a href=\"transformers/fast_weights/index.html\">Fast Weights Transformer</a> </li>\n<li><a href=\"transformers/fnet/index.html\">FNet</a> </li>\n<li><a href=\"transformers/aft/index.html\">Attention Free Transformer</a> </li>\n<li><a href=\"transformers/mlm/index.html\">Masked Language Model</a> </li>\n<li><a href=\"transformers/mlp_mixer/index.html\">MLP-Mixer: An all-MLP Architecture for Vision</a> </li>\n<li><a href=\"transformers/gmlp/index.html\">Pay Attention to MLPs (gMLP)</a> </li>\n<li><a href=\"transformers/vit/index.html\">Vision Transformer (ViT)</a> </li>\n<li><a href=\"transformers/primer_ez/index.html\">Primer EZ</a> </li>\n<li><a href=\"transformers/hour_glass/index.html\">Hourglass</a></li></ul>\n": "<ul><li><a href=\"transformers/mha.html\">\u591a\u9762\u7684\u306a\u6ce8\u610f</a></li>\n<li><a href=\"transformers/models.html\">\u5909\u5727\u5668\u30d3\u30eb\u30c7\u30a3\u30f3\u30b0\u30d6\u30ed\u30c3\u30af</a></li>\n<li><a href=\"transformers/xl/index.html\">\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fc XL</a></li>\n<li><a href=\"transformers/xl/relative_mha.html\">\u6bd4\u8f03\u7684\u591a\u9762\u7684\u306a\u6ce8\u610f</a></li>\n<li><a href=\"transformers/rope/index.html\">\u30ed\u30fc\u30bf\u30ea\u30fc\u30fb\u30dd\u30b8\u30b7\u30e7\u30ca\u30eb\u30fb\u30a8\u30f3\u30d9\u30c7\u30a3\u30f3\u30b0 (RoPe)</a></li>\n<li><a href=\"transformers/alibi/index.html\">\u7dda\u5f62\u30d0\u30a4\u30a2\u30b9\u306b\u3088\u308b\u6ce8\u610f (AliBi)</a></li>\n<li><a href=\"transformers/retro/index.html\">\u30ec\u30c8\u30ed</a></li>\n<li><a href=\"transformers/compressive/index.html\">\u5727\u7e2e\u5909\u5727\u5668</a></li>\n<li><a href=\"transformers/gpt/index.html\">GPT \u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3</a></li>\n<li><a href=\"transformers/glu_variants/simple.html\">GLU \u30d0\u30ea\u30a2\u30f3\u30c8</a></li>\n<li><a href=\"transformers/knn/index.html\">Knn-LM: \u6697\u8a18\u306b\u3088\u308b\u4e00\u822c\u5316</a></li>\n<li><a href=\"transformers/feedback/index.html\">\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u5909\u5727\u5668</a></li>\n<li><a href=\"transformers/switch/index.html\">\u30b9\u30a4\u30c3\u30c1\u30c8\u30e9\u30f3\u30b9</a></li>\n<li><a href=\"transformers/fast_weights/index.html\">\u9ad8\u901f\u30a6\u30a7\u30a4\u30c8\u30c8\u30e9\u30f3\u30b9</a></li>\n<li><a href=\"transformers/fnet/index.html\">FNet</a></li>\n<li><a href=\"transformers/aft/index.html\">\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30d5\u30ea\u30fc\u5909\u5727\u5668</a></li>\n<li><a href=\"transformers/mlm/index.html\">\u30de\u30b9\u30af\u8a00\u8a9e\u30e2\u30c7\u30eb</a></li>\n<li><a href=\"transformers/mlp_mixer/index.html\">MLP\u30df\u30ad\u30b5\u30fc:\u30d3\u30b8\u30e7\u30f3\u7528\u306e\u30aa\u30fc\u30ebMLP\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3</a></li>\n<li><a href=\"transformers/gmlp/index.html\">MLP (GMLP) \u306b\u3054\u6ce8\u610f\u304f\u3060\u3055\u3044</a></li>\n<li><a href=\"transformers/vit/index.html\">\u30d3\u30b8\u30e7\u30f3\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fc (ViT)</a></li>\n<li><a href=\"transformers/primer_ez/index.html\">\u30d7\u30e9\u30a4\u30de\u30fc EZ</a></li>\n<li><a href=\"transformers/hour_glass/index.html\">\u7802\u6642\u8a08</a></li></ul>\n",
|
||||
"<ul><li><a href=\"uncertainty/evidence/index.html\">Evidential Deep Learning to Quantify Classification Uncertainty</a></li></ul>\n": "<ul><li><a href=\"uncertainty/evidence/index.html\">\u5206\u985e\u306e\u4e0d\u78ba\u5b9f\u6027\u3092\u5b9a\u91cf\u5316\u3059\u308b\u30a8\u30d3\u30c7\u30f3\u30b7\u30e3\u30eb\u30c7\u30a3\u30fc\u30d7\u30e9\u30fc\u30cb\u30f3\u30b0</a></li></ul>\n",
|
||||
"labml.ai Annotated PyTorch Paper Implementations": "labml.ai \u30a2\u30ce\u30c6\u30fc\u30b7\u30e7\u30f3\u4ed8\u304d PyTorch \u30da\u30fc\u30d1\u30fc\u5b9f\u88c5"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,53 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Annotated Research Paper Implementations: Transformers, StyleGAN, Stable Diffusion, DDPM/DDIM, LayerNorm, Nucleus Sampling and more</a></h1>\n": "<h1><a href=\"index.html\">labml.ai \u5e26\u6ce8\u91ca\u7684 PyTorch \u7248\u8bba\u6587\u5b9e\u73b0</a></h1>\n",
|
||||
"<h2>Paper Implementations</h2>\n": "<h2>\u8bba\u6587\u5b9e\u73b0</h2>\n",
|
||||
"<h2>Translations</h2>\n": "<h2>\u7ffb\u8bd1</h2>\n",
|
||||
"<h3><strong><a href=\"https://nn.labml.ai\">English (original)</a></strong></h3>\n": "<h3><strong><a href=\"https://nn.labml.ai\">\u82f1\u8bed\uff08\u539f\u7248\uff09</a></strong></h3>\n",
|
||||
"<h3><strong><a href=\"https://nn.labml.ai/ja/\">Japanese (translated)</a></strong></h3>\n": "</a><h3><strong><a href=\"https://nn.labml.ai/ja/\">\u65e5\u8bed\uff08\u7ffb\u8bd1\uff09</strong></h3>\n",
|
||||
"<h3><strong><a href=\"https://nn.labml.ai/zh/\">Chinese (translated)</a></strong></h3>\n": "</a><h3><strong><a href=\"https://nn.labml.ai/zh/\">\u4e2d\u6587\uff08\u7ffb\u8bd1\uff09</strong></h3>\n",
|
||||
"<h3>Installation</h3>\n": "<h3>\u5b89\u88c5</h3>\n",
|
||||
"<h4>\u2728 <a href=\"activations/index.html\">Activations</a></h4>\n": "<h4>\u2728 <a href=\"activations/index.html\">\u6fc0\u6d3b\u51fd\u6570</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"adaptive_computation/index.html\">Adaptive Computation</a></h4>\n": "<h4>\u2728 <a href=\"adaptive_computation/index.html\">\u81ea\u9002\u5e94\u8ba1\u7b97</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"capsule_networks/index.html\">Capsule Networks</a></h4>\n": "<h4>\u2728 <a href=\"capsule_networks/index.html\">\u80f6\u56ca\u7f51\u7edc</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"cfr/index.html\">Counterfactual Regret Minimization (CFR)</a></h4>\n": "<h4>\u2728 <a href=\"cfr/index.html\">\u865a\u62df\u9057\u61be\u6700\u5c0f\u5316\uff08CFR\uff09</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"conv_mixer/index.html\">ConvMixer</a></h4>\n": "<h4>\u2728 <a href=\"conv_mixer/index.html\">ConvMixer</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"diffusion/index.html\">Diffusion models</a></h4>\n": "<h4>\u2728 <a href=\"diffusion/index.html\">\u6269\u6563\u6a21\u578b</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"distillation/index.html\">Distillation</a></h4>\n": "<h4>\u2728 <a href=\"distillation/index.html\">\u84b8\u998f</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"gan/index.html\">Generative Adversarial Networks</a></h4>\n": "<h4>\u2728 <a href=\"gan/index.html\">\u751f\u6210\u5bf9\u6297\u7f51\u7edc</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"hypernetworks/hyper_lstm.html\">HyperNetworks - HyperLSTM</a></h4>\n": "<h4>\u2728 <a href=\"hypernetworks/hyper_lstm.html\">\u8d85\u7f51\u7edc-HyperLSTM</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"lora/index.html\">Low-Rank Adaptation (LoRA)</a></h4>\n": "<h4>\u2728 <a href=\"lora/index.html\">Low-Rank Adaptation (LoRA)</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"lstm/index.html\">LSTM</a></h4>\n": "<h4>\u2728 <a href=\"lstm/index.html\">LSTM</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"neox/index.html\">Eleuther GPT-NeoX</a></h4>\n": "<h4>\u2728 <a href=\"neox/index.html\">Eleuther GPT-neox</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"normalization/index.html\">Normalization Layers</a></h4>\n": "<h4>\u2728 <a href=\"normalization/index.html\">\u5f52\u4e00\u5316\u5c42</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"optimizers/index.html\">Optimizers</a></h4>\n": "<h4>\u2728 <a href=\"optimizers/index.html\">\u4f18\u5316\u5668</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"recurrent_highway_networks/index.html\">Recurrent Highway Networks</a></h4>\n": "<h4>\u2728 <a href=\"recurrent_highway_networks/index.html\">\u5faa\u73af\u9ad8\u901f\u8def\u7f51\u7edc</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"resnet/index.html\">ResNet</a></h4>\n": "<h4>\u2728 <a href=\"resnet/index.html\">ResNet</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"rl/index.html\">Reinforcement Learning</a></h4>\n": "<h4>\u2728 <a href=\"rl/index.html\">\u5f3a\u5316\u5b66\u4e60</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"sampling/index.html\">Language Model Sampling Techniques</a></h4>\n": "<h4>\u2728 <a href=\"sampling/index.html\">\u8bed\u8a00\u6a21\u578b\u91c7\u6837\u6280\u672f</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"scaling/index.html\">Scalable Training/Inference</a></h4>\n": "<h4>\u2728 <a href=\"scaling/index.html\">\u53ef\u6269\u5c55\u8bad\u7ec3/\u63a8\u7406</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"sketch_rnn/index.html\">Sketch RNN</a></h4>\n": "<h4>\u2728 <a href=\"sketch_rnn/index.html\">Sketch RNN</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"transformers/index.html\">Transformers</a></h4>\n": "<h4>\u2728 <a href=\"transformers/index.html\">Transformers</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"uncertainty/index.html\">Uncertainty</a></h4>\n": "<h4>\u2728 <a href=\"uncertainty/index.html\">\u4e0d\u786e\u5b9a\u6027</a></h4>\n",
|
||||
"<h4>\u2728 <a href=\"unet/index.html\">U-Net</a></h4>\n": "<h4>\u2728 <a href=\"unet/index.html\">U-Net</a></h4>\n",
|
||||
"<h4>\u2728 Graph Neural Networks</h4>\n": "<h4>\u2728 \u56fe\u795e\u7ecf\u7f51\u7edc</h4>\n",
|
||||
"<p><span translate=no>_^_0_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Solving games with incomplete information such as poker with CFR.</p>\n": "<p>\u4f7f\u7528 CFR \u89e3\u51b3\u8bf8\u5982\u6251\u514b\u7b49\u4e0d\u5b8c\u5168\u4fe1\u606f\u6e38\u620f</p>\n",
|
||||
"<p>This is a collection of simple PyTorch implementations of neural networks and related algorithms. <a href=\"https://github.com/labmlai/annotated_deep_learning_paper_implementations\">These implementations</a> are documented with explanations, and the <a href=\"index.html\">website</a> renders these as side-by-side formatted notes. We believe these would help you understand these algorithms better.</p>\n": "<p>\u8fd9\u662f\u4e00\u4e2a\u7528 PyTorch \u5b9e\u73b0\u5404\u79cd\u795e\u7ecf\u7f51\u7edc\u548c\u76f8\u5173\u7b97\u6cd5\u7684\u96c6\u5408\u3002\u6bcf\u4e2a\u7b97\u6cd5\u7684<a href=\"https://github.com/labmlai/annotated_deep_learning_paper_implementations\">\u4ee3\u7801\u5b9e\u73b0</a>\u90fd\u6709\u8be6\u7ec6\u7684\u89e3\u91ca\u8bf4\u660e\uff0c\u4e14\u5728<a href=\"index.html\">\u7f51\u7ad9</a>\u4e0a\u4e0e\u4ee3\u7801\u9010\u884c\u5bf9\u5e94\u3002\u6211\u4eec\u76f8\u4fe1\uff0c\u8fd9\u4e9b\u5185\u5bb9\u5c06\u5e2e\u52a9\u60a8\u66f4\u597d\u5730\u7406\u89e3\u8fd9\u4e9b\u7b97\u6cd5\u3002</p>\n",
|
||||
"<p>We are actively maintaining this repo and adding new implementations. <a href=\"https://twitter.com/labmlai\"><span translate=no>_^_0_^_</span></a> for updates.</p>\n": "<p>\u6211\u4eec\u6b63\u5728\u79ef\u6781\u7ef4\u62a4\u8fd9\u4e2a\u4ed3\u5e93\u5e76\u6dfb\u52a0\u65b0\u7684\u4ee3\u7801\u5b9e\u73b0\u3002<a href=\"https://twitter.com/labmlai\"><span translate=no>_^_0_^_</span></a>\u4ee5\u83b7\u53d6\u66f4\u65b0\u3002</p>\n",
|
||||
"<span translate=no>_^_0_^_</span>": "<span translate=no>_^_0_^_</span>",
|
||||
"<ul><li><a href=\"activations/fta/index.html\">Fuzzy Tiling Activations</a></li></ul>\n": "<ul><li><a href=\"activations/fta/index.html\">\u6a21\u7cca\u5e73\u94fa\u6fc0\u6d3b\u51fd\u6570</a></li></ul>\n",
|
||||
"<ul><li><a href=\"adaptive_computation/ponder_net/index.html\">PonderNet</a></li></ul>\n": "<ul><li><a href=\"adaptive_computation/ponder_net/index.html\">PonderNet</a></li></ul>\n",
|
||||
"<ul><li><a href=\"cfr/kuhn/index.html\">Kuhn Poker</a></li></ul>\n": "<ul><li><a href=\"cfr/kuhn/index.html\">\u5e93\u6069\u6251\u514b</a></li></ul>\n",
|
||||
"<ul><li><a href=\"diffusion/ddpm/index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> </li>\n<li><a href=\"diffusion/stable_diffusion/sampler/ddim.html\">Denoising Diffusion Implicit Models (DDIM)</a> </li>\n<li><a href=\"diffusion/stable_diffusion/latent_diffusion.html\">Latent Diffusion Models</a> </li>\n<li><a href=\"diffusion/stable_diffusion/index.html\">Stable Diffusion</a></li></ul>\n": "<ul><li><a href=\"diffusion/ddpm/index.html\">\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM)</a></li>\n<li><a href=\"diffusion/stable_diffusion/sampler/ddim.html\">\u53bb\u566a\u6269\u6563\u9690\u5f0f\u6a21\u578b (DDIM)</a></li>\n<li><a href=\"diffusion/stable_diffusion/latent_diffusion.html\">\u6f5c\u5728\u6269\u6563\u6a21\u578b</a></li>\n<li><a href=\"diffusion/stable_diffusion/index.html\">Stable Diffusion</a></li></ul>\n",
|
||||
"<ul><li><a href=\"gan/original/index.html\">Original GAN</a> </li>\n<li><a href=\"gan/dcgan/index.html\">GAN with deep convolutional network</a> </li>\n<li><a href=\"gan/cycle_gan/index.html\">Cycle GAN</a> </li>\n<li><a href=\"gan/wasserstein/index.html\">Wasserstein GAN</a> </li>\n<li><a href=\"gan/wasserstein/gradient_penalty/index.html\">Wasserstein GAN with Gradient Penalty</a> </li>\n<li><a href=\"gan/stylegan/index.html\">StyleGAN 2</a></li></ul>\n": "<ul><li><a href=\"gan/original/index.html\">\u539f\u59cb GAN</a></li>\n<li><a href=\"gan/dcgan/index.html\">\u4f7f\u7528\u6df1\u5ea6\u5377\u79ef\u7f51\u7edc\u7684 GAN</a></li>\n<li><a href=\"gan/cycle_gan/index.html\">\u5faa\u73af GAN</a></li>\n<li><a href=\"gan/wasserstein/index.html\">Wasserstein GAN</a></li>\n<li><a href=\"gan/wasserstein/gradient_penalty/index.html\">\u5177\u6709\u68af\u5ea6\u60e9\u7f5a\u7684 Wasserstein GAN</a></li>\n<li><a href=\"gan/stylegan/index.html\">StyleGan 2</a></li></ul>\n",
|
||||
"<ul><li><a href=\"graphs/gat/index.html\">Graph Attention Networks (GAT)</a> </li>\n<li><a href=\"graphs/gatv2/index.html\">Graph Attention Networks v2 (GATv2)</a></li></ul>\n": "<ul><li><a href=\"graphs/gat/index.html\">\u56fe\u6ce8\u610f\u529b\u7f51\u7edc (GAT)</a></li>\n<li><a href=\"graphs/gatv2/index.html\">\u56fe\u6ce8\u610f\u529b\u7f51\u7edc v2 (GATv2)</a></li></ul>\n",
|
||||
"<ul><li><a href=\"neox/samples/generate.html\">Generate on a 48GB GPU</a> </li>\n<li><a href=\"neox/samples/finetune.html\">Finetune on two 48GB GPUs</a> </li>\n<li><a href=\"neox/utils/llm_int8.html\">LLM.int8()</a></li></ul>\n": "<ul><li><a href=\"neox/samples/generate.html\">\u5728\u4e00\u5757 48GB GPU \u4e0a\u751f\u6210</a></li> \n<li><a href=\"neox/samples/finetune.html\">\u5728\u4e24\u5757 48GB GPU \u4e0a\u5fae\u8c03</a></li>\n<li><a href=\"neox/utils/llm_int8.html\">llm.int8 ()</a></li></ul>\n",
|
||||
"<ul><li><a href=\"normalization/batch_norm/index.html\">Batch Normalization</a> </li>\n<li><a href=\"normalization/layer_norm/index.html\">Layer Normalization</a> </li>\n<li><a href=\"normalization/instance_norm/index.html\">Instance Normalization</a> </li>\n<li><a href=\"normalization/group_norm/index.html\">Group Normalization</a> </li>\n<li><a href=\"normalization/weight_standardization/index.html\">Weight Standardization</a> </li>\n<li><a href=\"normalization/batch_channel_norm/index.html\">Batch-Channel Normalization</a> </li>\n<li><a href=\"normalization/deep_norm/index.html\">DeepNorm</a></li></ul>\n": "<ul><li><a href=\"normalization/batch_norm/index.html\">\u6279\u91cf\u5f52\u4e00\u5316</a></li>\n<li><a href=\"normalization/layer_norm/index.html\">\u5c42\u5f52\u4e00\u5316</a></li>\n<li><a href=\"normalization/instance_norm/index.html\">\u5b9e\u4f8b\u5f52\u4e00\u5316</a></li>\n<li><a href=\"normalization/group_norm/index.html\">\u7ec4\u5f52\u4e00\u5316</a></li>\n<li><a href=\"normalization/weight_standardization/index.html\">\u6743\u91cd\u6807\u51c6\u5316</a></li>\n<li><a href=\"normalization/batch_channel_norm/index.html\">\u6279-\u901a\u9053\u5f52\u4e00\u5316</a></li>\n<li><a href=\"normalization/deep_norm/index.html\">DeepNorm</a></li></ul>\n",
|
||||
"<ul><li><a href=\"optimizers/adam.html\">Adam</a> </li>\n<li><a href=\"optimizers/amsgrad.html\">AMSGrad</a> </li>\n<li><a href=\"optimizers/adam_warmup.html\">Adam Optimizer with warmup</a> </li>\n<li><a href=\"optimizers/noam.html\">Noam Optimizer</a> </li>\n<li><a href=\"optimizers/radam.html\">Rectified Adam Optimizer</a> </li>\n<li><a href=\"optimizers/ada_belief.html\">AdaBelief Optimizer</a> </li>\n<li><a href=\"optimizers/sophia.html\">Sophia-G Optimizer</a></li></ul>\n": "<ul><li><a href=\"optimizers/adam.html\">Adam \u4f18\u5316\u5668</a></li>\n<li><a href=\"optimizers/amsgrad.html\">AMSGrad \u4f18\u5316\u5668</a></li>\n<li><a href=\"optimizers/adam_warmup.html\">\u5177\u6709\u9884\u70ed\u7684 Adam \u4f18\u5316\u5668</a></li>\n<li><a href=\"optimizers/noam.html\">Noam \u4f18\u5316\u5668</a></li>\n<li><a href=\"optimizers/radam.html\">RAdam \u4f18\u5316\u5668</a></li>\n<li><a href=\"optimizers/ada_belief.html\">AdaBelief \u4f18\u5316\u5668</a></li>\n<li><a href=\"optimizers/sophia.html\">Sophia-G Optimizer</a></li></ul>\n",
|
||||
"<ul><li><a href=\"rl/ppo/index.html\">Proximal Policy Optimization</a> with <a href=\"rl/ppo/gae.html\">Generalized Advantage Estimation</a> </li>\n<li><a href=\"rl/dqn/index.html\">Deep Q Networks</a> with with <a href=\"rl/dqn/model.html\">Dueling Network</a>, <a href=\"rl/dqn/replay_buffer.html\">Prioritized Replay</a> and Double Q Network.</li></ul>\n": "<ul><li><a href=\"rl/ppo/index.html\">\u8fd1\u7aef\u7b56\u7565\u4f18\u5316</a>\u4e0e<a href=\"rl/ppo/gae.html\">\u5e7f\u4e49\u4f18\u52bf\u4f30\u8ba1</a></li>\n<li>\u5177\u6709<a href=\"rl/dqn/model.html\">\u5bf9\u6297\u7f51\u7edc</a>\u3001<a href=\"rl/dqn/replay_buffer.html\">\u4f18\u5148\u56de\u653e </a>\u548c\u53cc Q \u7f51\u7edc\u7684<a href=\"rl/dqn/index.html\">\u6df1\u5ea6 Q \u7f51\u7edc</a></li></ul>\n",
|
||||
"<ul><li><a href=\"sampling/greedy.html\">Greedy Sampling</a> </li>\n<li><a href=\"sampling/temperature.html\">Temperature Sampling</a> </li>\n<li><a href=\"sampling/top_k.html\">Top-k Sampling</a> </li>\n<li><a href=\"sampling/nucleus.html\">Nucleus Sampling</a></li></ul>\n": "<ul><li><a href=\"sampling/greedy.html\">\u8d2a\u5a6a\u91c7\u6837</a></li>\n<li><a href=\"sampling/temperature.html\">\u6e29\u5ea6\u91c7\u6837</a></li>\n<li><a href=\"sampling/top_k.html\">Top-K \u91c7\u6837</a></li>\n<li><a href=\"sampling/nucleus.html\">\u6838\u91c7\u6837</a></li></ul>\n",
|
||||
"<ul><li><a href=\"scaling/zero3/index.html\">Zero3 memory optimizations</a></li></ul>\n": "<ul><li><a href=\"scaling/zero3/index.html\">ZeRO-3 \u5185\u5b58\u4f18\u5316</a></li></ul>\n",
|
||||
"<ul><li><a href=\"transformers/mha.html\">Multi-headed attention</a> </li>\n<li><a href=\"transformers/models.html\">Transformer building blocks</a> </li>\n<li><a href=\"transformers/xl/index.html\">Transformer XL</a> </li>\n<li><a href=\"transformers/xl/relative_mha.html\">Relative multi-headed attention</a> </li>\n<li><a href=\"transformers/rope/index.html\">Rotary Positional Embeddings (RoPE)</a> </li>\n<li><a href=\"transformers/alibi/index.html\">Attention with Linear Biases (ALiBi)</a> </li>\n<li><a href=\"transformers/retro/index.html\">RETRO</a> </li>\n<li><a href=\"transformers/compressive/index.html\">Compressive Transformer</a> </li>\n<li><a href=\"transformers/gpt/index.html\">GPT Architecture</a> </li>\n<li><a href=\"transformers/glu_variants/simple.html\">GLU Variants</a> </li>\n<li><a href=\"transformers/knn/index.html\">kNN-LM: Generalization through Memorization</a> </li>\n<li><a href=\"transformers/feedback/index.html\">Feedback Transformer</a> </li>\n<li><a href=\"transformers/switch/index.html\">Switch Transformer</a> </li>\n<li><a href=\"transformers/fast_weights/index.html\">Fast Weights Transformer</a> </li>\n<li><a href=\"transformers/fnet/index.html\">FNet</a> </li>\n<li><a href=\"transformers/aft/index.html\">Attention Free Transformer</a> </li>\n<li><a href=\"transformers/mlm/index.html\">Masked Language Model</a> </li>\n<li><a href=\"transformers/mlp_mixer/index.html\">MLP-Mixer: An all-MLP Architecture for Vision</a> </li>\n<li><a href=\"transformers/gmlp/index.html\">Pay Attention to MLPs (gMLP)</a> </li>\n<li><a href=\"transformers/vit/index.html\">Vision Transformer (ViT)</a> </li>\n<li><a href=\"transformers/primer_ez/index.html\">Primer EZ</a> </li>\n<li><a href=\"transformers/hour_glass/index.html\">Hourglass</a></li></ul>\n": "<ul><li><a href=\"transformers/mha.html\">\u591a\u5934\u6ce8\u610f\u529b</a></li>\n<li><a href=\"transformers/models.html\">Transformer \u6784\u5efa\u6a21\u5757</a></li>\n<li><a href=\"transformers/xl/index.html\">Transformer XL</a></li>\n<li><a href=\"transformers/xl/relative_mha.html\">\u76f8\u5bf9\u591a\u5934\u6ce8\u610f\u529b</a></li>\n<li><a href=\"transformers/rope/index.html\">\u65cb\u8f6c\u5f0f\u4f4d\u7f6e\u7f16\u7801 (ROPE)</a></li>\n<li><a href=\"transformers/alibi/index.html\">\u7ebf\u6027\u504f\u5dee\u6ce8\u610f\u529b (AliBI)</a></li>\n<li><a href=\"transformers/retro/index.html\">RETRO</a></li>\n<li><a href=\"transformers/compressive/index.html\">\u538b\u7f29 Transformer</a></li>\n<li><a href=\"transformers/gpt/index.html\">GPT \u67b6\u6784</a></li>\n<li><a href=\"transformers/glu_variants/simple.html\">GLU \u53d8\u4f53</a></li>\n<li><a href=\"transformers/knn/index.html\">kNN-LM\uff1a\u901a\u8fc7\u8bb0\u5fc6\u5b9e\u73b0\u6cdb\u5316</a></li>\n<li><a href=\"transformers/feedback/index.html\">\u81ea\u53cd\u9988 Transformer</a></li>\n<li><a href=\"transformers/switch/index.html\">Switch Transformer</a></li>\n<li><a href=\"transformers/fast_weights/index.html\">\u5feb\u901f\u6743\u91cd Transformer</a></li>\n<li><a href=\"transformers/fnet/index.html\">FNet</a></li>\n<li><a href=\"transformers/aft/index.html\">\u65e0\u6ce8\u610f\u529b Transformer</a></li>\n<li><a href=\"transformers/mlm/index.html\">\u63a9\u7801\u8bed\u8a00\u6a21\u578b</a></li>\n<li><a href=\"transformers/mlp_mixer/index.html\">MLP-Mixer\uff1a\u4e00\u79cd\u7528\u4e8e\u89c6\u89c9\u7684\u5168 MLP \u67b6\u6784</a></li>\n<li><a href=\"transformers/gmlp/index.html\">\u95e8\u63a7\u591a\u5c42\u611f\u77e5\u5668 (gMLP)</a></li>\n<li><a href=\"transformers/vit/index.html\">\u89c6\u89c9 Transformer (ViT)</a></li>\n<li><a href=\"transformers/primer_ez/index.html\">Primer</a></li>\n<li><a href=\"transformers/hour_glass/index.html\">\u6c99\u6f0f\u7f51\u7edc</a></li></ul>\n",
|
||||
"<ul><li><a href=\"uncertainty/evidence/index.html\">Evidential Deep Learning to Quantify Classification Uncertainty</a></li></ul>\n": "<ul><li><a href=\"uncertainty/evidence/index.html\">\u7528\u4e8e\u91cf\u5316\u5206\u7c7b\u4e0d\u786e\u5b9a\u6027\u7684\u8bc1\u636e\u6df1\u5ea6\u5b66\u4e60</a></li></ul>\n",
|
||||
"Annotated Research Paper Implementations: Transformers, StyleGAN, Stable Diffusion, DDPM/DDIM, LayerNorm, Nucleus Sampling and more": "labml.ai \u5e26\u6ce8\u91ca\u7684 PyTorch \u7248\u8bba\u6587\u5b9e\u73b0"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Neural Networks Activations</h1>\n<ul><li><a href=\"fta/index.html\">Fuzzy Tiling Activations</a> </li>\n<li>\ud83d\udea7 <a href=\"swish/index.html\">Swish</a></li></ul>\n": "<h1>\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3</h1>\n<ul><li><a href=\"fta/index.html\">\u30d5\u30a1\u30b8\u30fc\u30bf\u30a4\u30ea\u30f3\u30b0\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3</a></li>\n<li>\ud83d\udea7 <a href=\"swish/index.html\">\u30b9\u30a6\u30a3\u30c3\u30b7\u30e5</a></li></ul>\n",
|
||||
"A set of PyTorch implementations/tutorials related to neural network activations": "\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u306b\u95a2\u9023\u3059\u308bPyTorch\u306e\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306e\u30bb\u30c3\u30c8",
|
||||
"Neural Network Activation Functions": "\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u8d77\u52d5\u6a5f\u80fd"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Neural Networks Activations</h1>\n<ul><li><a href=\"fta/index.html\">Fuzzy Tiling Activations</a> </li>\n<li>\ud83d\udea7 <a href=\"swish/index.html\">Swish</a></li></ul>\n": "<h1>\u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a\u0da2\u0dcf\u0dbd \u0dc3\u0d9a\u0dca\u0dbb\u0dd3\u0dba</h1>\n<ul><li><a href=\"fta/index.html\">\u0db1\u0ddc\u0db4\u0dd0\u0dc4\u0dd0\u0daf\u0dd2\u0dbd\u0dd2 \u0da7\u0dba\u0dd2\u0dbd\u0dca \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0d9a\u0dcf\u0dbb\u0d9a\u0db8\u0dca</a> </li>\n<li>\ud83d\udea7 <a href=\"swish/index.html\">\u0dc3\u0dca\u0dc0\u0dd2\u0dc2\u0dca</a></li></ul>\n",
|
||||
"A set of PyTorch implementations/tutorials related to neural network activations": "\u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd \u0dc3\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca \u0dc0\u0dbd\u0da7 \u0d85\u0daf\u0dcf\u0dc5 PyTorch \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca/\u0db1\u0dd2\u0db6\u0db1\u0dca\u0db0\u0db1 \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0d9a\u0dca",
|
||||
"Neural Network Activation Functions": "\u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd \u0dc3\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba\u0db1\u0dca"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Neural Networks Activations</h1>\n<ul><li><a href=\"fta/index.html\">Fuzzy Tiling Activations</a> </li>\n<li>\ud83d\udea7 <a href=\"swish/index.html\">Swish</a></li></ul>\n": "<h1>\u795e\u7ecf\u7f51\u7edc\u6fc0\u6d3b</h1>\n<ul><li><a href=\"fta/index.html\">\u6a21\u7cca\u5e73\u94fa\u6fc0\u6d3b</a></li>\n<li>\ud83d\udea7 <a href=\"swish/index.html\">Swish</a></li></ul>\n",
|
||||
"A set of PyTorch implementations/tutorials related to neural network activations": "\u4e00\u7ec4\u4e0e\u795e\u7ecf\u7f51\u7edc\u6fc0\u6d3b\u76f8\u5173\u7684 PyTorch \u5b9e\u73b0/\u6559\u7a0b",
|
||||
"Neural Network Activation Functions": "\u795e\u7ecf\u7f51\u7edc\u6fc0\u6d3b\u51fd\u6570"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Fuzzy Tiling Activation</a> Experiment</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/activations/fta/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>Here we train a transformer that uses <a href=\"index.html\">Fuzzy Tiling Activation</a> in the <a href=\"../../transformers/feed_forward.html\">Feed-Forward Network</a>. We use it for a language model and train it on Tiny Shakespeare dataset for demonstration.</p>\n<p>However, this is probably not the ideal task for FTA, and we believe FTA is more suitable for modeling data with continuous variables.</p>\n": "<h1><a href=\"index.html\">\u30d5\u30a1\u30b8\u30fc\u30bf\u30a4\u30ea\u30f3\u30b0\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u5b9f\u9a13</a></h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/activations/fta/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p><a href=\"../../transformers/feed_forward.html\">\u3053\u3053\u3067\u306f\u3001<a href=\"index.html\">\u30d5\u30a3\u30fc\u30c9\u30d5\u30a9\u30ef\u30fc\u30c9\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u30d5\u30a1\u30b8\u30fc\u30bf\u30a4\u30ea\u30f3\u30b0\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3059\u308b\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fc\u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u307e\u3059</a>\u3002</a>\u3053\u308c\u3092\u8a00\u8a9e\u30e2\u30c7\u30eb\u3068\u3057\u3066\u4f7f\u7528\u3057\u3001Tiny Shakespeare\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3067\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u3066\u30c7\u30e2\u30f3\u30b9\u30c8\u30ec\u30fc\u30b7\u30e7\u30f3\u3092\u884c\u3044\u307e\u3059</p>\u3002\n<p>\u305f\u3060\u3057\u3001\u3053\u308c\u306f\u304a\u305d\u3089\u304fFTA\u306b\u3068\u3063\u3066\u7406\u60f3\u7684\u306a\u30bf\u30b9\u30af\u3067\u306f\u306a\u304f\u3001\u9023\u7d9a\u5909\u6570\u3092\u542b\u3080\u30c7\u30fc\u30bf\u306e\u30e2\u30c7\u30eb\u5316\u306b\u306fFTA\u306e\u65b9\u304c\u9069\u3057\u3066\u3044\u308b\u3068\u8003\u3048\u3066\u3044\u307e\u3059\u3002</p>\n",
|
||||
"<h2>Auto-Regressive model</h2>\n<p>This is an autoregressive transformer model that uses Feed-Forward Networks with (Fuzzy Tiling Activations)(index.html).</p>\n": "<h2>\u81ea\u5df1\u56de\u5e30\u30e2\u30c7\u30eb</h2>\n<p>\u3053\u308c\u306f\u3001\u30d5\u30a3\u30fc\u30c9\u30d5\u30a9\u30ef\u30fc\u30c9\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3068 (\u30d5\u30a1\u30b8\u30fc\u30bf\u30a4\u30ea\u30f3\u30b0\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3) (index.html) \u3092\u4f7f\u7528\u3059\u308b\u81ea\u5df1\u56de\u5e30\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fc\u30e2\u30c7\u30eb\u3067\u3059\u3002</p>\n",
|
||||
"<h2>Configurations</h2>\n<p>This inherits from <a href=\"../../experiments/nlp_autoregression.html#NLPAutoRegressionConfigs\"><span translate=no>_^_0_^_</span></a></p>\n": "<h2>\u30b3\u30f3\u30d5\u30a3\u30ae\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3</h2>\n<p>\u3053\u308c\u306f\u4ee5\u4e0b\u304b\u3089\u7d99\u627f\u3055\u308c\u307e\u3059 <a href=\"../../experiments/nlp_autoregression.html#NLPAutoRegressionConfigs\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<h2>FFN module with <a href=\"index.html\">FTA</a> activation</h2>\n": "<h2><a href=\"index.html\">FTA</a> \u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u6a5f\u80fd\u4ed8\u304d FFN \u30e2\u30b8\u30e5\u30fc\u30eb</h2>\n",
|
||||
"<h4>Create and run the experiment</h4>\n": "<h4>\u5b9f\u9a13\u3092\u4f5c\u6210\u3057\u3066\u5b9f\u884c\u3059\u308b</h4>\n",
|
||||
"<h4>Initialize the model</h4>\n": "<h4>\u30e2\u30c7\u30eb\u3092\u521d\u671f\u5316</h4>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span> for DeepNorm </p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u305d\u3057\u3066\u30c7\u30a3\u30fc\u30d7\u30ce\u30fc\u30e0\u7528</p>\n",
|
||||
"<p>Activation function <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u6a5f\u80fd <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Adam optimizer with no warmup </p>\n": "<p>\u30a6\u30a9\u30fc\u30e0\u30a2\u30c3\u30d7\u306a\u3057\u306e Adam \u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</p>\n",
|
||||
"<p>Apply dropout </p>\n": "<p>\u30c9\u30ed\u30c3\u30d7\u30a2\u30a6\u30c8\u3092\u9069\u7528</p>\n",
|
||||
"<p>Batch size <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30d0\u30c3\u30c1\u30b5\u30a4\u30ba <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Create FTA activation module </p>\n": "<p>FTA \u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u4f5c\u6210</p>\n",
|
||||
"<p>Create auto-regressive mask </p>\n": "<p>\u81ea\u52d5\u56de\u5e30\u30de\u30b9\u30af\u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Create configs </p>\n": "<p>\u30b3\u30f3\u30d5\u30a3\u30b0\u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u5b9f\u9a13\u3092\u4f5c\u6210</p>\n",
|
||||
"<p>Create the transformer. We re-use <a href=\"../../transformers/models.html#TransformerLayer\"><span translate=no>_^_0_^_</span></a> and <a href=\"../../transformers/mha.html\"><span translate=no>_^_1_^_</span></a> implementations. </p>\n": "<p>\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fc\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<a href=\"../../transformers/models.html#TransformerLayer\"><span translate=no>_^_0_^_</span><a href=\"../../transformers/mha.html\"><span translate=no>_^_1_^_</span></a></a>\u518d\u5229\u7528\u3057\u3066\u5b9f\u88c5\u3057\u307e\u3059</p>\u3002\n",
|
||||
"<p>Embedding size </p>\n": "<p>\u57cb\u3081\u8fbc\u307f\u30b5\u30a4\u30ba</p>\n",
|
||||
"<p>FTA </p>\n": "<p>\u81ea\u7531\u8cbf\u6613\u5354\u5b9a</p>\n",
|
||||
"<p>Feed forward layer size </p>\n": "<p>\u30d5\u30a3\u30fc\u30c9\u30d5\u30a9\u30ef\u30fc\u30c9\u30ec\u30a4\u30e4\u30fc\u30b5\u30a4\u30ba</p>\n",
|
||||
"<p>Get logits </p>\n": "<p>\u30ed\u30b8\u30c3\u30c8\u3092\u53d6\u5f97</p>\n",
|
||||
"<p>Get the token embeddings </p>\n": "<p>\u30c8\u30fc\u30af\u30f3\u306e\u57cb\u3081\u8fbc\u307f\u3092\u5165\u624b</p>\n",
|
||||
"<p>Hidden layer dropout </p>\n": "<p>\u96a0\u3057\u30ec\u30a4\u30e4\u30fc\u306e\u30c9\u30ed\u30c3\u30d7\u30a2\u30a6\u30c8</p>\n",
|
||||
"<p>Layer one parameterized by weight <span translate=no>_^_0_^_</span> and bias <span translate=no>_^_1_^_</span> </p>\n": "<p>\u91cd\u307f\u3068\u30d0\u30a4\u30a2\u30b9\u3067\u30d1\u30e9\u30e1\u30fc\u30bf\u5316\u3055\u308c\u305f\u30ec\u30a4\u30e4\u30fc 1 <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Layer two parameterized by weight <span translate=no>_^_0_^_</span> and bias <span translate=no>_^_1_^_</span> </p>\n": "<p>\u91cd\u307f\u3068\u30d0\u30a4\u30a2\u30b9\u3067\u30d1\u30e9\u30e1\u30fc\u30bf\u5316\u3055\u308c\u305f\u30ec\u30a4\u30e4\u30fc 2 <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Model </p>\n": "<p>\u30e2\u30c7\u30eb</p>\n",
|
||||
"<p>Move to the device </p>\n": "<p>\u30c7\u30d0\u30a4\u30b9\u306b\u79fb\u52d5</p>\n",
|
||||
"<p>Number of heads in the attention </p>\n": "<p>\u6ce8\u76ee\u3055\u308c\u3066\u3044\u308b\u30d8\u30c3\u30c9\u306e\u6570</p>\n",
|
||||
"<p>Number of layers </p>\n": "<p>\u30ec\u30a4\u30e4\u30fc\u6570</p>\n",
|
||||
"<p>Override configurations </p>\n": "<p>\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u8a2d\u5b9a</p>\n",
|
||||
"<p>Prompt separator is blank </p>\n": "<p>\u30d7\u30ed\u30f3\u30d7\u30c8\u30bb\u30d1\u30ec\u30fc\u30bf\u304c\u7a7a\u767d</p>\n",
|
||||
"<p>Readout layer </p>\n": "<p>\u8aad\u307f\u51fa\u3057\u5c64</p>\n",
|
||||
"<p>Return results </p>\n": "<p>\u7d50\u679c\u3092\u8fd4\u3059</p>\n",
|
||||
"<p>Run training </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3092\u5b9f\u884c</p>\n",
|
||||
"<p>Set model(s) for saving and loading </p>\n": "<p>\u4fdd\u5b58\u304a\u3088\u3073\u8aad\u307f\u8fbc\u307f\u7528\u306e\u30e2\u30c7\u30eb\u3092\u8a2d\u5b9a\u3057\u307e\u3059</p>\n",
|
||||
"<p>Size of each attention head </p>\n": "<p>\u5404\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30d8\u30c3\u30c9\u306e\u30b5\u30a4\u30ba</p>\n",
|
||||
"<p>Start the experiment </p>\n": "<p>\u5b9f\u9a13\u3092\u59cb\u3081\u308b</p>\n",
|
||||
"<p>Starting prompt for sampling </p>\n": "<p>\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u306e\u958b\u59cb\u30d7\u30ed\u30f3\u30d7\u30c8</p>\n",
|
||||
"<p>Subsequent mask, will mask out tokens from seeing future tokens </p>\n": "<p>\u6b21\u306b\u30de\u30b9\u30af\u3059\u308b\u3068\u3001\u30c8\u30fc\u30af\u30f3\u304c\u30de\u30b9\u30af\u3055\u308c\u3001\u5c06\u6765\u306e\u30c8\u30fc\u30af\u30f3\u304c\u898b\u3048\u306a\u304f\u306a\u308a\u307e\u3059</p>\n",
|
||||
"<p>Switch between training and validation for <span translate=no>_^_0_^_</span> times per epoch </p>\n": "<p>\u30a8\u30dd\u30c3\u30af\u3054\u3068\u306b\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3068\u691c\u8a3c\u3092\u5207\u308a\u66ff\u3048\u308b <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>The mask will be initialized on the first call </p>\n": "<p>\u30de\u30b9\u30af\u306f\u6700\u521d\u306e\u547c\u3073\u51fa\u3057\u3067\u521d\u671f\u5316\u3055\u308c\u307e\u3059</p>\n",
|
||||
"<p>Token embedding layer </p>\n": "<p>\u30c8\u30fc\u30af\u30f3\u57cb\u3081\u8fbc\u307f\u30ec\u30a4\u30e4\u30fc</p>\n",
|
||||
"<p>Train for 32 epochs </p>\n": "<p>32 \u30a8\u30dd\u30c3\u30af\u306e\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0</p>\n",
|
||||
"<p>Transformer encoder </p>\n": "<p>\u30c8\u30e9\u30f3\u30b9\u30a8\u30f3\u30b3\u30fc\u30c0\u30fc</p>\n",
|
||||
"<p>Transformer with <span translate=no>_^_0_^_</span> layers </p>\n": "<p><span translate=no>_^_0_^_</span>\u5c64\u4ed8\u304d\u5909\u5727\u5668</p>\n",
|
||||
"<p>Use Tiny Shakespeare dataset </p>\n": "<p>\u30bf\u30a4\u30cb\u30fc\u30fb\u30b7\u30a7\u30a4\u30af\u30b9\u30d4\u30a2\u30fb\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3092\u4f7f\u3046</p>\n",
|
||||
"<p>Use a context size of <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u30b5\u30a4\u30ba\u3092\u6b21\u306e\u5024\u306b\u3057\u3066\u304f\u3060\u3055\u3044 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Use character level tokenizer </p>\n": "<p>\u30ad\u30e3\u30e9\u30af\u30bf\u30fc\u30ec\u30d9\u30eb\u306e\u30c8\u30fc\u30af\u30ca\u30a4\u30b6\u30fc\u3092\u4f7f\u3046</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> are the input tokens of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u5f62\u72b6\u306e\u5165\u529b\u30c8\u30fc\u30af\u30f3\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of tokens in the vocabulary </li>\n<li><span translate=no>_^_1_^_</span> is the embedding size </li>\n<li><span translate=no>_^_2_^_</span> is the number of transformer layers </li>\n<li><span translate=no>_^_3_^_</span> is the layer. We use <span translate=no>_^_4_^_</span> copies of this for the transformer.</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u30dc\u30ad\u30e3\u30d6\u30e9\u30ea\u5185\u306e\u30c8\u30fc\u30af\u30f3\u306e\u6570\u3067\u3059</li>\n<li><span translate=no>_^_1_^_</span>\u306f\u57cb\u3081\u8fbc\u307f\u30b5\u30a4\u30ba</li>\n<li><span translate=no>_^_2_^_</span>\u5909\u5727\u5668\u5c64\u306e\u6570\u3067\u3059</li>\n<li><span translate=no>_^_3_^_</span>\u30ec\u30a4\u30e4\u30fc\u3067\u3059\u3002<span translate=no>_^_4_^_</span>\u5909\u5727\u5668\u306b\u306f\u3053\u308c\u306e\u30b3\u30d4\u30fc\u3092\u4f7f\u3044\u307e\u3059</li></ul>\u3002\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of features in a token embedding </li>\n<li><span translate=no>_^_1_^_</span> is the number of features in the hidden layer of the FFN </li>\n<li><span translate=no>_^_2_^_</span> is FTA activation module </li>\n<li><span translate=no>_^_3_^_</span> is dropout probability for the hidden layer</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u30c8\u30fc\u30af\u30f3\u57cb\u3081\u8fbc\u307f\u306b\u542b\u307e\u308c\u308b\u6a5f\u80fd\u306e\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u306f FFN \u306e\u96a0\u308c\u30ec\u30a4\u30e4\u30fc\u306b\u3042\u308b\u30d5\u30a3\u30fc\u30c1\u30e3\u306e\u6570\u3067\u3059</li>\n<li><span translate=no>_^_2_^_</span>FTA \u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u30e2\u30b8\u30e5\u30fc\u30eb\u3067\u3059\u304b</li>\n<li><span translate=no>_^_3_^_</span>\u306f\u96a0\u308c\u5c64\u306e\u30c9\u30ed\u30c3\u30d7\u30a2\u30a6\u30c8\u78ba\u7387\u3067\u3059</li></ul>\n",
|
||||
"Fuzzy Tiling Activation Experiment": "\u30d5\u30a1\u30b8\u30fc\u30bf\u30a4\u30ea\u30f3\u30b0\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u5b9f\u9a13",
|
||||
"Training a transformer with FTA in FFN on Tiny Shakespeare.": "\u30bf\u30a4\u30cb\u30fc\u30fb\u30b7\u30a7\u30a4\u30af\u30b9\u30d4\u30a2\u306eFFN\u3067\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fc\u3092FTA\u3067\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u4e2d\u3002"
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Fuzzy Tiling Activation</a> Experiment</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/activations/fta/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>Here we train a transformer that uses <a href=\"index.html\">Fuzzy Tiling Activation</a> in the <a href=\"../../transformers/feed_forward.html\">Feed-Forward Network</a>. We use it for a language model and train it on Tiny Shakespeare dataset for demonstration.</p>\n<p>However, this is probably not the ideal task for FTA, and we believe FTA is more suitable for modeling data with continuous variables.</p>\n": "<h1><a href=\"index.html\">\u0db1\u0ddc\u0db4\u0dd0\u0dc4\u0dd0\u0daf\u0dd2\u0dbd\u0dd2 \u0da7\u0dba\u0dd2\u0dbd\u0dca \u0dc3\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda</a> \u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf \u0db6\u0dd0\u0dbd\u0dd3\u0db8</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/activations/fta/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>\u0db8\u0dd9\u0db1\u0dca\u0db1 \u0d85\u0db4\u0dd2 <a href=\"../../transformers/feed_forward.html\">Feed-Forward \u0da2\u0dcf\u0dbd\u0dba\u0dda</a> <a href=\"index.html\">Fuzzy Tiling Activation</a> \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1 \u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dba\u0d9a\u0dca \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0db8\u0dd4. \u0d85\u0db4\u0dd2 \u0d91\u0dba \u0db7\u0dcf\u0dc2\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d9a\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1 \u0d85\u0dad\u0dbb \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0dd4\u0da9\u0dcf \u0dc2\u0dda\u0d9a\u0dca\u0dc3\u0dca\u0db4\u0dd2\u0dba\u0dbb\u0dca \u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0db8\u0dad \u0d91\u0dba \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0db8\u0dd4.</p>\n<p>\u0d9a\u0dd9\u0dc3\u0dda \u0dc0\u0dd9\u0dad\u0dad\u0dca, \u0db8\u0dd9\u0dba \u0db6\u0ddc\u0dc4\u0ddd \u0dc0\u0dd2\u0da7 FTA \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dd4\u0daf\u0dd4\u0dc3\u0dd4\u0db8 \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba \u0db1\u0ddc\u0dc0\u0db1 \u0d85\u0dad\u0dbb \u0d85\u0d9b\u0dab\u0dca\u0da9 \u0dc0\u0dd2\u0da0\u0dbd\u0dca\u0dba\u0dba\u0db1\u0dca \u0dc3\u0dc4\u0dd2\u0dad \u0daf\u0dad\u0dca\u0dad \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0db3\u0dc4\u0dcf FTA \u0dc0\u0da9\u0dcf\u0dad\u0dca \u0dc3\u0dd4\u0daf\u0dd4\u0dc3\u0dd4 \u0dba\u0dd0\u0dba\u0dd2 \u0d85\u0db4\u0dd2 \u0dc0\u0dd2\u0dc1\u0dca\u0dc0\u0dcf\u0dc3 \u0d9a\u0dbb\u0db8\u0dd4.</p>\n",
|
||||
"<h2>Auto-Regressive model</h2>\n<p>This is an autoregressive transformer model that uses Feed-Forward Networks with (Fuzzy Tiling Activations)(index.html).</p>\n": "<h2>\u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0d9c\u0dcf\u0db8\u0dd3 \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba</h2>\n<p>\u0db8\u0dd9\u0dba(\u0db1\u0ddc\u0db4\u0dd0\u0dc4\u0dd0\u0daf\u0dd2\u0dbd\u0dd2 \u0da7\u0dba\u0dd2\u0dbd\u0dd2\u0d82 \u0d87\u0d9a\u0dca\u0da7\u0dd2\u0dc0\u0dda\u0dc2\u0db1\u0dca) (index.html) \u0dc3\u0db8\u0d9f \u0dc6\u0dd3\u0da9\u0dca-\u0dc6\u0ddd\u0dc0\u0dbb\u0dca\u0da9\u0dca \u0db1\u0dd9\u0da7\u0dca\u0dc0\u0dbb\u0dca\u0d9a\u0dca \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1 \u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0d9c\u0dcf\u0db8\u0dd3 \u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dca \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d9a\u0dd2. </p>\n",
|
||||
"<h2>Configurations</h2>\n<p>This inherits from <a href=\"../../experiments/nlp_autoregression.html#NLPAutoRegressionConfigs\"><span translate=no>_^_0_^_</span></a></p>\n": "<h2>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca</h2>\n<p>\u0db8\u0dd9\u0dba\u0d8b\u0dbb\u0dd4\u0db8 \u0dc0\u0db1\u0dca\u0db1\u0dda <a href=\"../../experiments/nlp_autoregression.html#NLPAutoRegressionConfigs\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<h2>FFN module with <a href=\"index.html\">FTA</a> activation</h2>\n": "<h2><a href=\"index.html\">FTA \u0dc3\u0d9a\u0dca\u0dbb\u0dd2\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db8\u0d9f FFN</a> \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd\u0dba</h2>\n",
|
||||
"<h4>Create and run the experiment</h4>\n": "<h4>\u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf\u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dbb\u0db1\u0dca\u0db1</h4>\n",
|
||||
"<h4>Initialize the model</h4>\n": "<h4>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb\u0db1\u0dca\u0db1</h4>\n",
|
||||
"<p> </p>\n": "<p> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span> for DeepNorm </p>\n": "<p><span translate=no>_^_0_^_</span> \u0dc3\u0dc4 \u0d9c\u0dd0\u0db9\u0dd4\u0dbb\u0dd4 \u0dc3\u0db8\u0dca\u0db8\u0dad\u0dba <span translate=no>_^_1_^_</span> \u0dc3\u0db3\u0dc4\u0dcf </p>\n",
|
||||
"<p>Activation function <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc3\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Adam optimizer with no warmup </p>\n": "<p>\u0d8b\u0db1\u0dd4\u0dc3\u0dd4\u0db8\u0dca\u0dc0\u0dd3\u0db8\u0d9a\u0dca \u0db1\u0ddc\u0db8\u0dd0\u0dad\u0dd2 \u0d86\u0daf\u0db8\u0dca \u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad\u0d9a\u0dbb\u0dab\u0dba </p>\n",
|
||||
"<p>Apply dropout </p>\n": "<p>\u0d85\u0dad\u0dc4\u0dd0\u0dbb\u0daf\u0dd0\u0db8\u0dd3\u0db8 \u0dba\u0ddc\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Batch size <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca\u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Create FTA activation module </p>\n": "<p>FTA\u0dc3\u0d9a\u0dca\u0dbb\u0dd2\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd\u0dba \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create auto-regressive mask </p>\n": "<p>\u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0d9c\u0dcf\u0db8\u0dd3 \u0dc0\u0dd9\u0dc3\u0dca \u0db8\u0dd4\u0dc4\u0dd4\u0dab\u0d9a\u0dca \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create configs </p>\n": "<p>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf\u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create the transformer. We re-use <a href=\"../../transformers/models.html#TransformerLayer\"><span translate=no>_^_0_^_</span></a> and <a href=\"../../transformers/mha.html\"><span translate=no>_^_1_^_</span></a> implementations. </p>\n": "<p>\u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dba\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1. \u0d85\u0db4\u0dd2 \u0db1\u0dd0\u0dc0\u0dad \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 <a href=\"../../transformers/models.html#TransformerLayer\"><span translate=no>_^_0_^_</span><a href=\"../../transformers/mha.html\"><span translate=no>_^_1_^_</span></a> </a> \u0dc3\u0dc4 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8. </p>\n",
|
||||
"<p>Embedding size </p>\n": "<p>\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba </p>\n",
|
||||
"<p>FTA </p>\n": "<p>FTA </p>\n",
|
||||
"<p>Feed forward layer size </p>\n": "<p>\u0d89\u0daf\u0dd2\u0dbb\u0dd2\u0dc3\u0dca\u0dae\u0dbb\u0dba\u0dda \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba \u0db4\u0ddd\u0dc2\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Get logits </p>\n": "<p>\u0db4\u0dd2\u0dc0\u0dd2\u0dc3\u0dd4\u0db8\u0dca\u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Get the token embeddings </p>\n": "<p>\u0da7\u0ddd\u0d9a\u0db1\u0dca\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Hidden layer dropout </p>\n": "<p>\u0dc3\u0dd0\u0d9f\u0dc0\u0dd4\u0dab\u0dd4\u0dc3\u0dca\u0dae\u0dbb \u0dc4\u0dd0\u0dbd\u0dd3\u0db8 </p>\n",
|
||||
"<p>Layer one parameterized by weight <span translate=no>_^_0_^_</span> and bias <span translate=no>_^_1_^_</span> </p>\n": "<p>\u0db6\u0dbb <span translate=no>_^_0_^_</span> \u0dc4\u0dcf \u0db1\u0dd0\u0db9\u0dd4\u0dbb\u0dd4\u0dc0 \u0d85\u0db1\u0dd4\u0dc0 \u0db4\u0dbb\u0dcf\u0db8\u0dd2\u0dad\u0dd2\u0d9a\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1 \u0dbd\u0daf \u0d91\u0d9a\u0dca \u0dc3\u0dca\u0dae\u0dbb\u0dba <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>Layer two parameterized by weight <span translate=no>_^_0_^_</span> and bias <span translate=no>_^_1_^_</span> </p>\n": "<p>\u0db6\u0dbb <span translate=no>_^_0_^_</span> \u0dc4\u0dcf \u0db1\u0dd0\u0db9\u0dd4\u0dbb\u0dd4\u0dc0 \u0d85\u0db1\u0dd4\u0dc0 \u0db4\u0dbb\u0dcf\u0db8\u0dd2\u0dad\u0dd2\u0d9a\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1 \u0dbd\u0daf \u0dc3\u0dca\u0dae\u0dbb \u0daf\u0dd9\u0d9a\u0d9a\u0dca <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>Model </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba </p>\n",
|
||||
"<p>Move to the device </p>\n": "<p>\u0d8b\u0db4\u0dcf\u0d82\u0d9c\u0dba\u0dc0\u0dd9\u0dad \u0d9c\u0dd9\u0db1 \u0dba\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Number of heads in the attention </p>\n": "<p>\u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba\u0dba\u0ddc\u0db8\u0dd4 \u0d9a\u0dbb\u0db1 \u0dc4\u0dd2\u0dc3\u0dca \u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Number of layers </p>\n": "<p>\u0dc3\u0dca\u0dae\u0dbb\u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Override configurations </p>\n": "<p>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dba\u0db1\u0dca\u0d85\u0db7\u0dd2\u0db6\u0dc0\u0dcf \u0dba\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Prompt separator is blank </p>\n": "<p>\u0d9a\u0da9\u0dd2\u0db1\u0db8\u0dca\u0db6\u0dd9\u0daf\u0dd4\u0db8\u0dca\u0d9a\u0dbb\u0dd4 \u0dc4\u0dd2\u0dc3\u0dca \u0dba </p>\n",
|
||||
"<p>Readout layer </p>\n": "<p>\u0d9a\u0dd2\u0dba\u0dc0\u0dd3\u0db8\u0dda\u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>Return results </p>\n": "<p>\u0d86\u0db4\u0dc3\u0dd4\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0db5\u0dbd </p>\n",
|
||||
"<p>Run training </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0db0\u0dcf\u0dc0\u0db1\u0dba </p>\n",
|
||||
"<p>Set model(s) for saving and loading </p>\n": "<p>\u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0dc4 \u0db4\u0dd0\u0da7\u0dc0\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba (\u0dba) \u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Size of each attention head </p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0dc4\u0dd2\u0dc3 \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba </p>\n",
|
||||
"<p>Start the experiment </p>\n": "<p>\u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf\u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Starting prompt for sampling </p>\n": "<p>\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dc3\u0db3\u0dc4\u0dcf \u0dc0\u0dd2\u0db8\u0dc3\u0dd4\u0db8\u0d9a\u0dca \u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 </p>\n",
|
||||
"<p>Subsequent mask, will mask out tokens from seeing future tokens </p>\n": "<p>\u0db4\u0dc3\u0dd4\u0d9a\u0dcf\u0dbd\u0dd3\u0db1\u0dc0\u0dd9\u0dc3\u0dca\u0db8\u0dd4\u0dc4\u0dd4\u0dab, \u0d85\u0db1\u0dcf\u0d9c\u0dad \u0da7\u0ddd\u0d9a\u0db1 \u0daf\u0dd0\u0d9a\u0dd3\u0db8\u0dd9\u0db1\u0dca \u0da7\u0ddd\u0d9a\u0db1 \u0dc0\u0dc3\u0d82 \u0d9a\u0dbb\u0db1\u0dd4 \u0d87\u0dad </p>\n",
|
||||
"<p>Switch between training and validation for <span translate=no>_^_0_^_</span> times per epoch </p>\n": "<p>\u0d91\u0d9a\u0dca <span translate=no>_^_0_^_</span> \u0dba\u0dd4\u0d9c\u0dba\u0d9a\u0da7 \u0dc0\u0dbb\u0d9a\u0dca \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0 \u0dc3\u0dc4 \u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0d85\u0dad\u0dbb \u0db8\u0dcf\u0dbb\u0dd4 \u0dc0\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>The mask will be initialized on the first call </p>\n": "<p>\u0db4\u0dc5\u0db8\u0dd4\u0d87\u0db8\u0dad\u0dd4\u0db8\u0dd9\u0db1\u0dca \u0dc0\u0dd9\u0dc3\u0dca\u0db8\u0dd4\u0dc4\u0dd4\u0dab \u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb\u0db1\u0dd4 \u0d87\u0dad </p>\n",
|
||||
"<p>Token embedding layer </p>\n": "<p>\u0da7\u0ddd\u0d9a\u0db1\u0dca\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>Train for 32 epochs </p>\n": "<p>32\u0dc0\u0dba\u0dc3 \u0d85\u0dc0\u0dd4\u0dbb\u0dd4\u0daf\u0dd4 \u0dc3\u0db3\u0dc4\u0dcf \u0daf\u0dd4\u0db8\u0dca\u0dbb\u0dd2\u0dba </p>\n",
|
||||
"<p>Transformer encoder </p>\n": "<p>\u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dca\u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba </p>\n",
|
||||
"<p>Transformer with <span translate=no>_^_0_^_</span> layers </p>\n": "<p><span translate=no>_^_0_^_</span> \u0dc3\u0dca\u0dae\u0dbb \u0dc3\u0dc4\u0dd2\u0dad \u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dca </p>\n",
|
||||
"<p>Use Tiny Shakespeare dataset </p>\n": "<p>\u0d9a\u0dd4\u0da9\u0dcf\u0dc2\u0dda\u0d9a\u0dca\u0dc3\u0dca\u0db4\u0dd2\u0dba\u0dbb\u0dca \u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Use a context size of <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d9a\u0dc3\u0db1\u0dca\u0daf\u0dbb\u0dca\u0db7\u0dba \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Use character level tokenizer </p>\n": "<p>\u0d85\u0d9a\u0dca\u0dc2\u0dbb\u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0da7\u0ddd\u0d9a\u0db1\u0dba\u0dd2\u0dc3\u0dbb\u0dca \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> are the input tokens of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0dc4\u0dd0\u0da9\u0dba\u0dda \u0d86\u0daf\u0dcf\u0db1 \u0da7\u0ddd\u0d9a\u0db1 \u0dc0\u0dda <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of tokens in the vocabulary </li>\n<li><span translate=no>_^_1_^_</span> is the embedding size </li>\n<li><span translate=no>_^_2_^_</span> is the number of transformer layers </li>\n<li><span translate=no>_^_3_^_</span> is the layer. We use <span translate=no>_^_4_^_</span> copies of this for the transformer.</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0dc0\u0da0\u0db1 \u0db8\u0dcf\u0dbd\u0dcf\u0dc0\u0dda \u0da7\u0ddd\u0d9a\u0db1 \u0d9c\u0dab\u0db1 </li>\n<li><span translate=no>_^_1_^_</span> \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba \u0dc0\u0dda </li>\n<li><span translate=no>_^_2_^_</span> \u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dca \u0dc3\u0dca\u0dae\u0dbb \u0d9c\u0dab\u0db1 </li>\n<li><span translate=no>_^_3_^_</span> \u0dc3\u0dca\u0dad\u0dbb\u0dba \u0dc0\u0dda. \u0d85\u0db4\u0dd2 \u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0db8\u0dd9\u0dc4\u0dd2 <span translate=no>_^_4_^_</span> \u0db4\u0dd2\u0da7\u0db4\u0dad\u0dca \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db8\u0dd4. </li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of features in a token embedding </li>\n<li><span translate=no>_^_1_^_</span> is the number of features in the hidden layer of the FFN </li>\n<li><span translate=no>_^_2_^_</span> is FTA activation module </li>\n<li><span translate=no>_^_3_^_</span> is dropout probability for the hidden layer</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0da7\u0ddd\u0d9a\u0db1 \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0dad\u0dd4\u0dc5 \u0d87\u0dad\u0dd2 \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0d9c\u0dab\u0db1 </li>\n<li><span translate=no>_^_1_^_</span> \u0dba\u0db1\u0dd4 FFN \u0dc4\u0dd2 \u0dc3\u0dd0\u0d9f\u0dc0\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba\u0dda \u0d87\u0dad\u0dd2 \u0dbd\u0d9a\u0dca\u0dc2\u0dab \u0d9c\u0dab\u0db1 </li>\n<li><span translate=no>_^_2_^_</span> FTA \u0dc3\u0d9a\u0dca\u0dbb\u0dd2\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd\u0dba </li>\n<li><span translate=no>_^_3_^_</span> \u0dc3\u0dd0\u0d9f\u0dc0\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dad\u0dbb\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0dad\u0dc4\u0dd0\u0dbb \u0daf\u0dd0\u0db8\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0</li></ul>\n",
|
||||
"Fuzzy Tiling Activation Experiment": "\u0db1\u0ddc\u0db4\u0dd0\u0dc4\u0dd0\u0daf\u0dd2\u0dbd\u0dd2 \u0da7\u0dba\u0dd2\u0dbd\u0dca \u0dc3\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf \u0db6\u0dd0\u0dbd\u0dd3\u0db8",
|
||||
"Training a transformer with FTA in FFN on Tiny Shakespeare.": "\u0d9a\u0dd4\u0da9\u0dcf \u0dc2\u0dda\u0d9a\u0dca\u0dc3\u0dca\u0db4\u0dd2\u0dba\u0dbb\u0dca \u0db8\u0dad FFN \u0dc4\u0dd2 FTA \u0dc3\u0db8\u0d9f \u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dba\u0d9a\u0dca \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8."
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Fuzzy Tiling Activation</a> Experiment</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/activations/fta/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>Here we train a transformer that uses <a href=\"index.html\">Fuzzy Tiling Activation</a> in the <a href=\"../../transformers/feed_forward.html\">Feed-Forward Network</a>. We use it for a language model and train it on Tiny Shakespeare dataset for demonstration.</p>\n<p>However, this is probably not the ideal task for FTA, and we believe FTA is more suitable for modeling data with continuous variables.</p>\n": "<h1><a href=\"index.html\">\u6a21\u7cca\u62fc\u8d34\u6fc0\u6d3b</a>\u5b9e\u9a8c</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/activations/fta/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>\u5728\u8fd9\u91cc\uff0c\u6211\u4eec\u8bad\u7ec3\u4e00\u53f0\u5728<a href=\"../../transformers/feed_forward.html\">\u524d\u9988\u7f51\u7edc</a>\u4e2d\u4f7f\u7528<a href=\"index.html\">\u6a21\u7cca\u5207\u7247\u6fc0\u6d3b</a>\u7684\u53d8\u538b\u5668\u3002\u6211\u4eec\u5c06\u5176\u7528\u4f5c\u8bed\u8a00\u6a21\u578b\uff0c\u5e76\u5728\u5c0f\u838e\u58eb\u6bd4\u4e9a\u6570\u636e\u96c6\u4e0a\u5bf9\u5176\u8fdb\u884c\u8bad\u7ec3\u4ee5\u8fdb\u884c\u6f14\u793a\u3002</p>\n<p>\u4f46\u662f\uff0c\u5bf9\u4e8e FTA \u6765\u8bf4\uff0c\u8fd9\u53ef\u80fd\u4e0d\u662f\u7406\u60f3\u7684\u4efb\u52a1\uff0c\u6211\u4eec\u8ba4\u4e3a FTA \u66f4\u9002\u5408\u5bf9\u5177\u6709\u8fde\u7eed\u53d8\u91cf\u7684\u6570\u636e\u8fdb\u884c\u5efa\u6a21\u3002</p>\n",
|
||||
"<h2>Auto-Regressive model</h2>\n<p>This is an autoregressive transformer model that uses Feed-Forward Networks with (Fuzzy Tiling Activations)(index.html).</p>\n": "<h2>\u81ea\u56de\u5f52\u6a21\u578b</h2>\n<p>\u8fd9\u662f\u4e00\u4e2a\u81ea\u56de\u5f52\u53d8\u538b\u5668\u6a21\u578b\uff0c\u5b83\u4f7f\u7528\u524d\u9988\u7f51\u7edc\u548c\uff08\u6a21\u7cca\u5e73\u94fa\u6fc0\u6d3b\uff09\uff08index.html\uff09\u3002</p>\n",
|
||||
"<h2>Configurations</h2>\n<p>This inherits from <a href=\"../../experiments/nlp_autoregression.html#NLPAutoRegressionConfigs\"><span translate=no>_^_0_^_</span></a></p>\n": "<h2>\u914d\u7f6e</h2>\n<p>\u8fd9\u7ee7\u627f\u81ea <a href=\"../../experiments/nlp_autoregression.html#NLPAutoRegressionConfigs\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<h2>FFN module with <a href=\"index.html\">FTA</a> activation</h2>\n": "<h2>\u5e26\u6709 F <a href=\"index.html\">TA \u6fc0\u6d3b\u529f\u80fd\u7684 FF</a> N \u6a21\u5757</h2>\n",
|
||||
"<h4>Create and run the experiment</h4>\n": "<h4>\u521b\u5efa\u5e76\u8fd0\u884c\u5b9e\u9a8c</h4>\n",
|
||||
"<h4>Initialize the model</h4>\n": "<h4>\u521d\u59cb\u5316\u6a21\u578b</h4>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span> for DeepNorm </p>\n": "<p><span translate=no>_^_0_^_</span>\u5bf9<span translate=no>_^_1_^_</span>\u4e8e DeepNorm</p>\n",
|
||||
"<p>Activation function <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6fc0\u6d3b\u529f\u80fd<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Adam optimizer with no warmup </p>\n": "<p>\u6ca1\u6709\u9884\u70ed\u7684 Adam \u4f18\u5316\u5668</p>\n",
|
||||
"<p>Apply dropout </p>\n": "<p>\u7533\u8bf7\u9000\u5b66</p>\n",
|
||||
"<p>Batch size <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6279\u91cf\u5927\u5c0f<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Create FTA activation module </p>\n": "<p>\u521b\u5efa FTA \u6fc0\u6d3b\u6a21\u5757</p>\n",
|
||||
"<p>Create auto-regressive mask </p>\n": "<p>\u521b\u5efa\u81ea\u52a8\u56de\u5f52\u906e\u7f69</p>\n",
|
||||
"<p>Create configs </p>\n": "<p>\u521b\u5efa\u914d\u7f6e</p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u521b\u5efa\u5b9e\u9a8c</p>\n",
|
||||
"<p>Create the transformer. We re-use <a href=\"../../transformers/models.html#TransformerLayer\"><span translate=no>_^_0_^_</span></a> and <a href=\"../../transformers/mha.html\"><span translate=no>_^_1_^_</span></a> implementations. </p>\n": "<p>\u521b\u5efa\u53d8\u538b\u5668\u3002\u6211\u4eec\u91cd\u590d\u4f7f\u7528<a href=\"../../transformers/models.html#TransformerLayer\"><span translate=no>_^_0_^_</span></a>\u548c<a href=\"../../transformers/mha.html\"><span translate=no>_^_1_^_</span></a>\u5b9e\u73b0\u3002</p>\n",
|
||||
"<p>Embedding size </p>\n": "<p>\u5d4c\u5165\u5927\u5c0f</p>\n",
|
||||
"<p>FTA </p>\n": "<p>\u81ea\u8d38\u533a</p>\n",
|
||||
"<p>Feed forward layer size </p>\n": "<p>\u524d\u9988\u56fe\u5c42\u5927\u5c0f</p>\n",
|
||||
"<p>Get logits </p>\n": "<p>\u83b7\u53d6\u65e5\u5fd7</p>\n",
|
||||
"<p>Get the token embeddings </p>\n": "<p>\u83b7\u53d6\u4ee4\u724c\u5d4c\u5165</p>\n",
|
||||
"<p>Hidden layer dropout </p>\n": "<p>\u9690\u85cf\u56fe\u5c42\u4e22\u5931</p>\n",
|
||||
"<p>Layer one parameterized by weight <span translate=no>_^_0_^_</span> and bias <span translate=no>_^_1_^_</span> </p>\n": "<p>\u7b2c\u4e00\u5c42\u6309\u6743\u91cd<span translate=no>_^_0_^_</span>\u548c\u504f\u5dee\u8fdb\u884c\u53c2\u6570\u5316<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Layer two parameterized by weight <span translate=no>_^_0_^_</span> and bias <span translate=no>_^_1_^_</span> </p>\n": "<p>\u7b2c\u4e8c\u5c42\u6309\u6743\u91cd<span translate=no>_^_0_^_</span>\u548c\u504f\u5dee\u8fdb\u884c\u53c2\u6570\u5316<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Model </p>\n": "<p>\u578b\u53f7</p>\n",
|
||||
"<p>Move to the device </p>\n": "<p>\u79fb\u5230\u8bbe\u5907</p>\n",
|
||||
"<p>Number of heads in the attention </p>\n": "<p>\u5173\u6ce8\u7684\u5934\u90e8\u6570\u91cf</p>\n",
|
||||
"<p>Number of layers </p>\n": "<p>\u5c42\u6570</p>\n",
|
||||
"<p>Override configurations </p>\n": "<p>\u8986\u76d6\u914d\u7f6e</p>\n",
|
||||
"<p>Prompt separator is blank </p>\n": "<p>\u63d0\u793a\u5206\u9694\u7b26\u4e3a\u7a7a</p>\n",
|
||||
"<p>Readout layer </p>\n": "<p>\u8bfb\u51fa\u5c42</p>\n",
|
||||
"<p>Return results </p>\n": "<p>\u8fd4\u56de\u7ed3\u679c</p>\n",
|
||||
"<p>Run training </p>\n": "<p>\u8dd1\u6b65\u8bad\u7ec3</p>\n",
|
||||
"<p>Set model(s) for saving and loading </p>\n": "<p>\u8bbe\u7f6e\u7528\u4e8e\u4fdd\u5b58\u548c\u52a0\u8f7d\u7684\u6a21\u578b</p>\n",
|
||||
"<p>Size of each attention head </p>\n": "<p>\u6bcf\u4e2a\u6ce8\u610f\u5934\u7684\u5927\u5c0f</p>\n",
|
||||
"<p>Start the experiment </p>\n": "<p>\u5f00\u59cb\u5b9e\u9a8c</p>\n",
|
||||
"<p>Starting prompt for sampling </p>\n": "<p>\u5f00\u59cb\u91c7\u6837\u63d0\u793a</p>\n",
|
||||
"<p>Subsequent mask, will mask out tokens from seeing future tokens </p>\n": "<p>\u540e\u7eed\u7684\u63a9\u7801\uff0c\u5c06\u63a9\u76d6\u4ee4\u724c\u4ee5\u514d\u770b\u5230\u672a\u6765\u7684\u4ee3\u5e01</p>\n",
|
||||
"<p>Switch between training and validation for <span translate=no>_^_0_^_</span> times per epoch </p>\n": "<p>\u5728\u8bad\u7ec3\u548c\u9a8c\u8bc1\u4e4b\u95f4\u5207\u6362\u6bcf\u4e2a\u7eaa\u5143\u7684<span translate=no>_^_0_^_</span>\u6b21\u6570</p>\n",
|
||||
"<p>The mask will be initialized on the first call </p>\n": "<p>\u63a9\u7801\u5c06\u5728\u7b2c\u4e00\u6b21\u8c03\u7528\u65f6\u521d\u59cb\u5316</p>\n",
|
||||
"<p>Token embedding layer </p>\n": "<p>\u4ee4\u724c\u5d4c\u5165\u5c42</p>\n",
|
||||
"<p>Train for 32 epochs </p>\n": "<p>\u8bad\u7ec3 32 \u4e2a\u65f6\u4ee3</p>\n",
|
||||
"<p>Transformer encoder </p>\n": "<p>\u53d8\u538b\u5668\u7f16\u7801</p>\n",
|
||||
"<p>Transformer with <span translate=no>_^_0_^_</span> layers </p>\n": "<p>\u5e26<span translate=no>_^_0_^_</span>\u5c42\u7684\u53d8\u538b\u5668</p>\n",
|
||||
"<p>Use Tiny Shakespeare dataset </p>\n": "<p>\u4f7f\u7528\u5c0f\u838e\u58eb\u6bd4\u4e9a\u6570\u636e\u96c6</p>\n",
|
||||
"<p>Use a context size of <span translate=no>_^_0_^_</span> </p>\n": "<p>\u4f7f\u7528\u4e0a\u4e0b\u6587\u5927\u5c0f\u4e3a<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Use character level tokenizer </p>\n": "<p>\u4f7f\u7528\u89d2\u8272\u7b49\u7ea7\u5206\u8bcd\u5668</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> are the input tokens of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5f62\u72b6\u7684\u8f93\u5165\u6807\u8bb0<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of tokens in the vocabulary </li>\n<li><span translate=no>_^_1_^_</span> is the embedding size </li>\n<li><span translate=no>_^_2_^_</span> is the number of transformer layers </li>\n<li><span translate=no>_^_3_^_</span> is the layer. We use <span translate=no>_^_4_^_</span> copies of this for the transformer.</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u8bcd\u6c47\u8868\u4e2d\u4ee3\u5e01\u7684\u6570\u91cf</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u5d4c\u5165\u7684\u5927\u5c0f</li>\n<li><span translate=no>_^_2_^_</span>\u662f\u53d8\u538b\u5668\u5c42\u7684\u6570\u91cf</li>\n<li><span translate=no>_^_3_^_</span>\u662f\u5c42\u3002\u6211\u4eec\u5728\u53d8\u538b\u5668\u4e0a\u4f7f\u7528\u8fd9\u4e2a<span translate=no>_^_4_^_</span>\u526f\u672c\u3002</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of features in a token embedding </li>\n<li><span translate=no>_^_1_^_</span> is the number of features in the hidden layer of the FFN </li>\n<li><span translate=no>_^_2_^_</span> is FTA activation module </li>\n<li><span translate=no>_^_3_^_</span> is dropout probability for the hidden layer</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u4ee4\u724c\u5d4c\u5165\u4e2d\u7684\u8981\u7d20\u6570\u91cf</li>\n<li><span translate=no>_^_1_^_</span>\u662f FFN \u9690\u85cf\u5c42\u4e2d\u7684\u8981\u7d20\u6570\u91cf</li>\n<li><span translate=no>_^_2_^_</span>\u662f FTA \u6fc0\u6d3b\u6a21\u5757</li>\n<li><span translate=no>_^_3_^_</span>\u662f\u9690\u85cf\u5c42\u7684\u4e22\u5931\u6982\u7387</li></ul>\n",
|
||||
"Fuzzy Tiling Activation Experiment": "\u6a21\u7cca\u5e73\u94fa\u6fc0\u6d3b\u5b9e\u9a8c",
|
||||
"Training a transformer with FTA in FFN on Tiny Shakespeare.": "\u5728 Tiny Shakespeare \u7684 FFN \u4e2d\u4f7f\u7528\u81ea\u7531\u8d38\u6613\u534f\u5b9a\u8bad\u7ec3\u53d8\u538b\u5668\u3002"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"swish.py": "swish.py"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"swish.py": "swish.py"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"swish.py": "swish.py"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Neural Networks with Adaptive Computation</h1>\n<p>These are neural network architectures that change the computation complexity based on the complexity of the input sample.</p>\n<ul><li>\ud83d\udea7 TODO: Adaptive Computation Time for Recurrent Neural Networks </li>\n<li><a href=\"ponder_net/index.html\">PonderNet: Learning to Ponder</a></li></ul>\n": "<h1>\u9069\u5fdc\u578b\u8a08\u7b97\u3092\u5099\u3048\u305f\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</h1>\n<p>\u3053\u308c\u3089\u306f\u3001\u5165\u529b\u30b5\u30f3\u30d7\u30eb\u306e\u8907\u96d1\u3055\u306b\u57fa\u3065\u3044\u3066\u8a08\u7b97\u306e\u8907\u96d1\u3055\u3092\u5909\u66f4\u3059\u308b\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u3067\u3059\u3002</p>\n<ul><li>\ud83d\udea7 TODO: \u30ea\u30ab\u30ec\u30f3\u30c8\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u9069\u5fdc\u578b\u8a08\u7b97\u6642\u9593</li>\n<li><a href=\"ponder_net/index.html\">PonderNet: \u719f\u8003\u3059\u308b\u3053\u3068\u3092\u5b66\u3076</a></li></ul>\n",
|
||||
"A set of PyTorch implementations/tutorials related to adaptive computation": "\u9069\u5fdc\u578b\u8a08\u7b97\u306b\u95a2\u9023\u3059\u308bPyTorch\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306e\u30bb\u30c3\u30c8",
|
||||
"Neural Networks with Adaptive Computation": "\u9069\u5fdc\u578b\u8a08\u7b97\u3092\u5099\u3048\u305f\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Neural Networks with Adaptive Computation</h1>\n<p>These are neural network architectures that change the computation complexity based on the complexity of the input sample.</p>\n<ul><li>\ud83d\udea7 TODO: Adaptive Computation Time for Recurrent Neural Networks </li>\n<li><a href=\"ponder_net/index.html\">PonderNet: Learning to Ponder</a></li></ul>\n": "<h1>\u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3\u0d9c\u0dab\u0db1\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd</h1>\n<p>\u0db8\u0dda\u0dc0\u0dcf\u0d86\u0daf\u0dcf\u0db1 \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba\u0dda \u0dc3\u0d82\u0d9a\u0dd3\u0dbb\u0dca\u0dab\u0dad\u0dca\u0dc0\u0dba \u0db8\u0dad \u0db4\u0daf\u0db1\u0db8\u0dca\u0dc0 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0dc3\u0d82\u0d9a\u0dd3\u0dbb\u0dca\u0dab\u0dad\u0dcf\u0dc0 \u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dbb\u0db1 \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd \u0d9c\u0dd8\u0dc4 \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab \u0dc0\u0dda. </p>\n<ul><li>\ud83d\udea7TODO: \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d9a\u0dcf\u0dbd\u0dba </li>\n<li><a href=\"ponder_net/index.html\">\u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca: \u0db8\u0dd9\u0db1\u0dd9\u0dc4\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0d89\u0d9c\u0dd9\u0db1\u0dd3\u0db8</a></li></ul>\n",
|
||||
"A set of PyTorch implementations/tutorials related to adaptive computation": "\u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc4\u0dcf \u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0 PyTorch \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca/\u0db1\u0dd2\u0db6\u0db1\u0dca\u0db0\u0db1 \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0d9a\u0dca",
|
||||
"Neural Networks with Adaptive Computation": "\u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3 \u0d9c\u0dab\u0db1\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Neural Networks with Adaptive Computation</h1>\n<p>These are neural network architectures that change the computation complexity based on the complexity of the input sample.</p>\n<ul><li>\ud83d\udea7 TODO: Adaptive Computation Time for Recurrent Neural Networks </li>\n<li><a href=\"ponder_net/index.html\">PonderNet: Learning to Ponder</a></li></ul>\n": "<h1>\u5177\u6709\u81ea\u9002\u5e94\u8ba1\u7b97\u7684\u795e\u7ecf\u7f51\u7edc</h1>\n<p>\u8fd9\u4e9b\u662f\u795e\u7ecf\u7f51\u7edc\u67b6\u6784\uff0c\u6839\u636e\u8f93\u5165\u6837\u672c\u7684\u590d\u6742\u5ea6\u6765\u6539\u53d8\u8ba1\u7b97\u590d\u6742\u5ea6\u3002</p>\n<ul><li>\ud83d\udea7 TODO\uff1a\u5faa\u73af\u795e\u7ecf\u7f51\u7edc\u7684\u81ea\u9002\u5e94\u8ba1\u7b97\u65f6\u95f4</li>\n<li><a href=\"ponder_net/index.html\">PonderNet\uff1a\u5b66\u4f1a\u601d\u8003</a></li></ul>\n",
|
||||
"A set of PyTorch implementations/tutorials related to adaptive computation": "\u4e00\u7ec4\u4e0e\u81ea\u9002\u5e94\u8ba1\u7b97\u76f8\u5173\u7684 PyTorch \u5b9e\u73b0/\u6559\u7a0b",
|
||||
"Neural Networks with Adaptive Computation": "\u5177\u6709\u81ea\u9002\u5e94\u8ba1\u7b97\u7684\u795e\u7ecf\u7f51\u7edc"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"<h1>Parity Task</h1>\n<p>This creates data for Parity Task from the paper <a href=\"https://arxiv.org/abs/1603.08983\">Adaptive Computation Time for Recurrent Neural Networks</a>.</p>\n<p>The input of the parity task is a vector with <span translate=no>_^_0_^_</span>'s <span translate=no>_^_1_^_</span>'s and <span translate=no>_^_2_^_</span>'s. The output is the parity of <span translate=no>_^_3_^_</span>'s - one if there is an odd number of <span translate=no>_^_4_^_</span>'s and zero otherwise. The input is generated by making a random number of elements in the vector either <span translate=no>_^_5_^_</span> or <span translate=no>_^_6_^_</span>'s.</p>\n": "<h1>\u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af</h1>\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u8ad6\u6587\u300c<a href=\"https://arxiv.org/abs/1603.08983\">\u30ea\u30ab\u30ec\u30f3\u30c8\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u9069\u5fdc\u7684\u8a08\u7b97\u6642\u9593</a>\u300d\u304b\u3089\u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af\u306e\u30c7\u30fc\u30bf\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002</p>\n<p>\u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af\u306e\u5165\u529b\u306f\u3001\u3068 <span translate=no>_^_2_^_</span> s <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> \u306e\u4ed8\u3044\u305f\u30d9\u30af\u30c8\u30eb\u3067\u3001\u51fa\u529b\u306f s <span translate=no>_^_3_^_</span> \u306e\u30d1\u30ea\u30c6\u30a3\u3067\u3059\u3002s <span translate=no>_^_4_^_</span> \u306e\u6570\u304c\u5947\u6570\u306e\u5834\u5408\u306f 1\u3001\u305d\u308c\u4ee5\u5916\u306e\u5834\u5408\u306f 0 \u3067\u3059\u3002\u5165\u529b\u306f\u3001<span translate=no>_^_5_^_</span><span translate=no>_^_6_^_</span>\u30d9\u30af\u30c8\u30eb\u5185\u306e\u30e9\u30f3\u30c0\u30e0\u306a\u6570\u306e\u8981\u7d20\u3092\u307e\u305f\u306f\u306e\u3044\u305a\u308c\u304b\u306b\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u751f\u6210\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<h3>Parity dataset</h3>\n": "<h3>\u30d1\u30ea\u30c6\u30a3\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8</h3>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p> Generate a sample</p>\n": "<p>\u30b5\u30f3\u30d7\u30eb\u3092\u751f\u6210</p>\n",
|
||||
"<p> Size of the dataset</p>\n": "<p>\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u306e\u30b5\u30a4\u30ba</p>\n",
|
||||
"<p>Empty vector </p>\n": "<p>\u7a7a\u306e\u30d9\u30af\u30c8\u30eb</p>\n",
|
||||
"<p>Fill non-zero elements with <span translate=no>_^_0_^_</span>'s and <span translate=no>_^_1_^_</span>'s </p>\n": "<p>0 \u4ee5\u5916\u306e\u8981\u7d20\u3092\u300c\u300d\u3068 <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span>\u300c\u300d\u3067\u57cb\u3081\u308b</p>\n",
|
||||
"<p>Number of non-zero elements - a random number between <span translate=no>_^_0_^_</span> and total number of elements </p>\n": "<p>\u30bc\u30ed\u4ee5\u5916\u306e\u8981\u7d20\u306e\u6570-<span translate=no>_^_0_^_</span> \u8981\u7d20\u306e\u6570\u3068\u8981\u7d20\u6570\u306e\u9593\u306e\u30e9\u30f3\u30c0\u30e0\u306a\u6570</p>\n",
|
||||
"<p>Randomly permute the elements </p>\n": "<p>\u8981\u7d20\u3092\u30e9\u30f3\u30c0\u30e0\u306b\u4e26\u3079\u66ff\u3048\u308b</p>\n",
|
||||
"<p>The parity </p>\n": "<p>\u30d1\u30ea\u30c6\u30a3</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of samples </li>\n<li><span translate=no>_^_1_^_</span> is the number of elements in the input vector</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u30b5\u30f3\u30d7\u30eb\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u306f\u5165\u529b\u30d9\u30af\u30c8\u30eb\u306e\u8981\u7d20\u6570\u3067\u3059</li></ul>\n",
|
||||
"Parity Task": "\u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af",
|
||||
"This creates data for Parity Task from the paper Adaptive Computation Time for Recurrent Neural Networks": "\u3053\u308c\u306b\u3088\u308a\u3001\u8ad6\u6587\u300c\u30ea\u30ab\u30ec\u30f3\u30c8\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u9069\u5fdc\u7684\u8a08\u7b97\u6642\u9593\u300d\u304b\u3089\u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af\u306e\u30c7\u30fc\u30bf\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"<h1>Parity Task</h1>\n<p>This creates data for Parity Task from the paper <a href=\"https://arxiv.org/abs/1603.08983\">Adaptive Computation Time for Recurrent Neural Networks</a>.</p>\n<p>The input of the parity task is a vector with <span translate=no>_^_0_^_</span>'s <span translate=no>_^_1_^_</span>'s and <span translate=no>_^_2_^_</span>'s. The output is the parity of <span translate=no>_^_3_^_</span>'s - one if there is an odd number of <span translate=no>_^_4_^_</span>'s and zero otherwise. The input is generated by making a random number of elements in the vector either <span translate=no>_^_5_^_</span> or <span translate=no>_^_6_^_</span>'s.</p>\n": "<h1>\u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf\u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba</h1>\n<p>\u0db8\u0dd9\u0dba\u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0dc0\u0dbd\u0dd2\u0db1\u0dca Parity Task \u0dc3\u0db3\u0dc4\u0dcf \u0daf\u0dad\u0dca\u0dad \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb\u0dba\u0dd2 <a href=\"https://arxiv.org/abs/1603.08983\">\u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d9a\u0dcf\u0dbd\u0dba \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd \u0dc3\u0db3\u0dc4\u0dcf</a>. </p>\n<p>\u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf\u0d9a\u0dbb\u0dca\u0dad\u0dc0\u0dca\u0dba\u0dba\u0dda \u0d86\u0daf\u0dcf\u0db1\u0dba \u0dba\u0db1\u0dd4 <span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u0d9c\u0dda \u0dc4\u0dcf \u0dc3\u0db8\u0d9f \u0daf\u0ddb\u0dc1\u0dd2\u0d9a\u0dba\u0d9a\u0dd2. \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1\u0dba \u0dba\u0db1\u0dd4 <span translate=no>_^_3_^_</span>\u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf\u0dc0\u0dba\u0dba\u0dd2 - \u0d91\u0dc4\u0dd2 \u0db1\u0db8\u0dca \u0d91\u0d9a\u0dca \u0dba\u0db1\u0dd4 \u0d94\u0dad\u0dca\u0dad\u0dda \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0\u0d9a\u0dca \u0dc0\u0db1 <span translate=no>_^_4_^_</span>\u0d85\u0dad\u0dbb \u0dc0\u0dd9\u0db1\u0dad\u0dca \u0d86\u0d9a\u0dcf\u0dbb\u0dba\u0d9a\u0dd2\u0db1\u0dca \u0dc1\u0dd4\u0db1\u0dca\u0dba \u0dc0\u0dda. \u0d86\u0daf\u0dcf\u0db1\u0dba \u0da2\u0db1\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dd4 \u0dbd\u0db6\u0db1\u0dca\u0db1\u0dda \u0daf\u0ddb\u0dc1\u0dd2\u0d9a\u0dba\u0dda \u0d85\u0dc4\u0db9\u0dd4 \u0db8\u0dd6\u0dbd\u0daf\u0dca\u0dbb\u0dc0\u0dca\u0dba \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0\u0d9a\u0dca <span translate=no>_^_5_^_</span> \u0dc4\u0ddd <span translate=no>_^_6_^_</span>\u0dba.</p>\n",
|
||||
"<h3>Parity dataset</h3>\n": "<h3>\u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf\u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba</h3>\n",
|
||||
"<p> </p>\n": "<p> </p>\n",
|
||||
"<p> Generate a sample</p>\n": "<p> \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba\u0d9a\u0dca\u0da2\u0db1\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Size of the dataset</p>\n": "<p> \u0daf\u0dad\u0dca\u0dad\u0dc3\u0db8\u0dd4\u0daf\u0dcf\u0dba \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba</p>\n",
|
||||
"<p>Empty vector </p>\n": "<p>\u0dc4\u0dd2\u0dc3\u0dca\u0daf\u0ddb\u0dc1\u0dd2\u0d9a </p>\n",
|
||||
"<p>Fill non-zero elements with <span translate=no>_^_0_^_</span>'s and <span translate=no>_^_1_^_</span>'s </p>\n": "<p><span translate=no>_^_0_^_</span>\u0d9c\u0dda \u0dc3\u0dc4 <span translate=no>_^_1_^_</span>\u0d9c\u0dda \u0dc3\u0db8\u0d9c \u0dc1\u0dd4\u0db1\u0dca\u0dba \u0db1\u0ddc\u0dc0\u0db1 \u0d85\u0d82\u0d9c \u0db4\u0dd4\u0dbb\u0dc0\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Number of non-zero elements - a random number between <span translate=no>_^_0_^_</span> and total number of elements </p>\n": "<p>\u0dc1\u0dd4\u0db1\u0dca\u0dba\u0db1\u0ddc\u0dc0\u0db1 \u0db8\u0dd6\u0dbd\u0daf\u0dca\u0dbb\u0dc0\u0dca\u0dba \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 - \u0d85\u0dad\u0dbb \u0d85\u0dc4\u0db9\u0dd4 \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0\u0d9a\u0dca <span translate=no>_^_0_^_</span> \u0dc3\u0dc4 \u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0db8\u0dd6\u0dbd\u0daf\u0dca\u0dbb\u0dc0\u0dca\u0dba \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 </p>\n",
|
||||
"<p>Randomly permute the elements </p>\n": "<p>\u0d85\u0dc4\u0db9\u0dd4\u0dbd\u0dd9\u0dc3 \u0db8\u0dd6\u0dbd\u0daf\u0dca\u0dbb\u0dc0\u0dca\u0dba \u0dc0\u0dd2\u0d9a\u0dd8\u0dad\u0dd2 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>The parity </p>\n": "<p>\u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf\u0dc0\u0dba </p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of samples </li>\n<li><span translate=no>_^_1_^_</span> is the number of elements in the input vector</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 \u0dc0\u0dda </li>\n<li><span translate=no>_^_1_^_</span> \u0d86\u0daf\u0dcf\u0db1 \u0daf\u0ddb\u0dc1\u0dd2\u0d9a\u0dba\u0dda \u0db8\u0dd6\u0dbd\u0daf\u0dca\u0dbb\u0dc0\u0dca\u0dba \u0d9c\u0dab\u0db1</li></ul>\n",
|
||||
"Parity Task": "\u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba",
|
||||
"This creates data for Parity Task from the paper Adaptive Computation Time for Recurrent Neural Networks": "\u0db8\u0dd9\u0dba \u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0dc0\u0dbd\u0dd2\u0db1\u0dca Parity Task \u0dc3\u0db3\u0dc4\u0dcf \u0daf\u0dad\u0dca\u0dad \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb\u0dba\u0dd2 \u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d9a\u0dcf\u0dbd\u0dba \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd \u0dc3\u0db3\u0dc4\u0dcf"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"<h1>Parity Task</h1>\n<p>This creates data for Parity Task from the paper <a href=\"https://arxiv.org/abs/1603.08983\">Adaptive Computation Time for Recurrent Neural Networks</a>.</p>\n<p>The input of the parity task is a vector with <span translate=no>_^_0_^_</span>'s <span translate=no>_^_1_^_</span>'s and <span translate=no>_^_2_^_</span>'s. The output is the parity of <span translate=no>_^_3_^_</span>'s - one if there is an odd number of <span translate=no>_^_4_^_</span>'s and zero otherwise. The input is generated by making a random number of elements in the vector either <span translate=no>_^_5_^_</span> or <span translate=no>_^_6_^_</span>'s.</p>\n": "<h1>\u5947\u5076\u6821\u9a8c\u4efb\u52a1</h1>\n<p>\u8fd9\u5c06\u4ece\u8bba\u6587\u300a<a href=\"https://arxiv.org/abs/1603.08983\">\u5faa\u73af\u795e\u7ecf\u7f51\u7edc\u7684\u81ea\u9002\u5e94\u8ba1\u7b97\u65f6\u95f4\u300b\u4e2d\u4e3a</a>\u5947\u5076\u6821\u9a8c\u4efb\u52a1\u521b\u5efa\u6570\u636e\u3002</p>\n<p>\u5947\u5076\u6821\u9a8c\u4efb\u52a1\u7684\u8f93\u5165\u662f\u4e00\u4e2a\u5e26\u6709<span translate=no>_^_0_^_</span>'s \u548c<span translate=no>_^_1_^_</span>'s \u7684\u5411\u91cf\u3002\u8f93\u51fa\u662f<span translate=no>_^_2_^_</span>'s \u7684<span translate=no>_^_3_^_</span>\u5947\u5076\u6821\u9a8c\u2014\u2014\u5982\u679c\u6709\uff0c\u5219\u4e3a 1\u662f\u7684\u5947\u6570<span translate=no>_^_4_^_</span>\uff0c\u5426\u5219\u4e3a\u96f6\u3002\u8f93\u5165\u662f\u901a\u8fc7\u4f7f\u77e2\u91cf\u4e2d\u7684\u968f\u673a\u6570\u91cf\u7684\u5143\u7d20\u4e3a<span translate=no>_^_5_^_</span>\u6216\u800c\u751f\u6210<span translate=no>_^_6_^_</span>\u7684\u3002</p>\n",
|
||||
"<h3>Parity dataset</h3>\n": "<h3>\u5947\u5076\u6821\u9a8c\u6570\u636e</h3>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p> Generate a sample</p>\n": "<p>\u751f\u6210\u6837\u672c</p>\n",
|
||||
"<p> Size of the dataset</p>\n": "<p>\u6570\u636e\u96c6\u7684\u5927\u5c0f</p>\n",
|
||||
"<p>Empty vector </p>\n": "<p>\u7a7a\u5411\u91cf</p>\n",
|
||||
"<p>Fill non-zero elements with <span translate=no>_^_0_^_</span>'s and <span translate=no>_^_1_^_</span>'s </p>\n": "<p>\u7528<span translate=no>_^_0_^_</span> \u201c\u548c<span translate=no>_^_1_^_</span>\u201d \u586b\u5145\u975e\u96f6\u5143\u7d20</p>\n",
|
||||
"<p>Number of non-zero elements - a random number between <span translate=no>_^_0_^_</span> and total number of elements </p>\n": "<p>\u975e\u96f6\u5143\u7d20\u7684\u6570\u91cf-\u4ecb\u4e8e<span translate=no>_^_0_^_</span>\u548c\u5143\u7d20\u603b\u6570\u4e4b\u95f4\u7684\u968f\u673a\u6570</p>\n",
|
||||
"<p>Randomly permute the elements </p>\n": "<p>\u968f\u673a\u6392\u5217\u5143\u7d20</p>\n",
|
||||
"<p>The parity </p>\n": "<p>\u5947\u5076\u6821\u9a8c</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of samples </li>\n<li><span translate=no>_^_1_^_</span> is the number of elements in the input vector</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u6837\u672c\u7684\u6570\u91cf</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u8f93\u5165\u5411\u91cf\u4e2d\u7684\u5143\u7d20\u6570</li></ul>\n",
|
||||
"Parity Task": "\u5947\u5076\u6821\u9a8c\u4efb\u52a1",
|
||||
"This creates data for Parity Task from the paper Adaptive Computation Time for Recurrent Neural Networks": "\u8fd9\u5c06\u4ece\u8bba\u6587\u300a\u5faa\u73af\u795e\u7ecf\u7f51\u7edc\u7684\u81ea\u9002\u5e94\u8ba1\u7b97\u65f6\u95f4\u300b\u4e2d\u4e3a\u5947\u5076\u6821\u9a8c\u4efb\u52a1\u521b\u5efa\u6570\u636e"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">PonderNet</a> <a href=\"../parity.html\">Parity Task</a> Experiment</h1>\n<p>This trains a <a href=\"index.html\">PonderNet</a> on <a href=\"../parity.html\">Parity Task</a>.</p>\n": "<h1><a href=\"index.html\">PonderNet <a href=\"../parity.html\">\u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af\u5b9f\u9a13</a></a></h1>\n<p><a href=\"../parity.html\">\u3053\u308c\u306f\u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af\u3067</a> <a href=\"index.html\">PonderNet</a> \u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p> Configurations with a <a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.train_valid.SimpleTrainValidConfigs\">simple training loop</a></p>\n": "<p><a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.train_valid.SimpleTrainValidConfigs\">\u30b7\u30f3\u30d7\u30eb\u306a\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30eb\u30fc\u30d7\u306b\u3088\u308b\u69cb\u6210</a></p>\n",
|
||||
"<p> Run the experiment</p>\n": "<p>\u5b9f\u9a13\u3092\u5b9f\u884c\u3059\u308b</p>\n",
|
||||
"<p> This method gets called by the trainer for each batch</p>\n": "<p>\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u3001\u30d0\u30c3\u30c1\u3054\u3068\u306b\u30c8\u30ec\u30fc\u30ca\u30fc\u306b\u3088\u3063\u3066\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> for the geometric distribution <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u5e7e\u4f55\u5206\u5e03\u7528 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Accuracy calculator </p>\n": "<p>\u7cbe\u5ea6\u8a08\u7b97\u30c4\u30fc\u30eb</p>\n",
|
||||
"<p>Batch size </p>\n": "<p>\u30d0\u30c3\u30c1\u30b5\u30a4\u30ba</p>\n",
|
||||
"<p>Calculate the expected number of steps taken </p>\n": "<p>\u4e88\u60f3\u3055\u308c\u308b\u6b69\u6570\u306e\u8a08\u7b97</p>\n",
|
||||
"<p>Calculate the reconstruction loss </p>\n": "<p>\u518d\u69cb\u6210\u640d\u5931\u306e\u8a08\u7b97</p>\n",
|
||||
"<p>Calculate the regularization loss </p>\n": "<p>\u6b63\u5247\u5316\u640d\u5931\u306e\u8a08\u7b97</p>\n",
|
||||
"<p>Call accuracy metric </p>\n": "<p>\u901a\u8a71\u7cbe\u5ea6\u6307\u6a19</p>\n",
|
||||
"<p>Clear gradients </p>\n": "<p>\u30af\u30ea\u30a2\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3</p>\n",
|
||||
"<p>Clip gradients </p>\n": "<p>\u30af\u30ea\u30c3\u30d7\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3</p>\n",
|
||||
"<p>Compute gradients </p>\n": "<p>\u52fe\u914d\u306e\u8a08\u7b97</p>\n",
|
||||
"<p>Get the input and labels and move them to the model's device </p>\n": "<p>\u5165\u529b\u3068\u30e9\u30d9\u30eb\u3092\u53d6\u5f97\u3057\u3066\u30e2\u30c7\u30eb\u306e\u30c7\u30d0\u30a4\u30b9\u306b\u79fb\u52d5\u3057\u307e\u3059</p>\n",
|
||||
"<p>Gradient clipping by norm </p>\n": "<p>\u6a19\u6e96\u306b\u3088\u308b\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\u30af\u30ea\u30c3\u30d4\u30f3\u30b0</p>\n",
|
||||
"<p>Increment step in training mode </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30e2\u30fc\u30c9\u3067\u306e\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u30b9\u30c6\u30c3\u30d7</p>\n",
|
||||
"<p>Initialize the model </p>\n": "<p>\u30e2\u30c7\u30eb\u3092\u521d\u671f\u5316</p>\n",
|
||||
"<p>Maximum number of steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6700\u5927\u30b9\u30c6\u30c3\u30d7\u6570 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Model </p>\n": "<p>\u30e2\u30c7\u30eb</p>\n",
|
||||
"<p>Number of batches per epoch </p>\n": "<p>\u30a8\u30dd\u30c3\u30af\u3042\u305f\u308a\u306e\u30d0\u30c3\u30c1\u6570</p>\n",
|
||||
"<p>Number of epochs </p>\n": "<p>\u30a8\u30dd\u30c3\u30af\u6570</p>\n",
|
||||
"<p>Number of units in the hidden layer (state) </p>\n": "<p>\u96a0\u308c\u5c64 (\u72b6\u614b) \u5185\u306e\u30e6\u30cb\u30c3\u30c8\u6570</p>\n",
|
||||
"<p>Optimizer </p>\n": "<p>\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</p>\n",
|
||||
"<p>Print indicators to screen </p>\n": "<p>\u30a4\u30f3\u30b8\u30b1\u30fc\u30bf\u3092\u753b\u9762\u306b\u5370\u5237</p>\n",
|
||||
"<p>Regularization loss <span translate=no>_^_0_^_</span> coefficient <span translate=no>_^_1_^_</span> </p>\n": "<p>\u6b63\u5247\u5316\u640d\u5931\u4fc2\u6570 <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Run the model </p>\n": "<p>\u30e2\u30c7\u30eb\u3092\u5b9f\u884c</p>\n",
|
||||
"<p>Set the model mode </p>\n": "<p>\u30e2\u30c7\u30eb\u30e2\u30fc\u30c9\u3092\u8a2d\u5b9a</p>\n",
|
||||
"<p>The number of elements in the input vector. <em>We keep it low for demonstration; otherwise, training takes a lot of time. Although the parity task seems simple, figuring out the pattern by looking at samples is quite hard.</em> </p>\n": "<p>\u5165\u529b\u30d9\u30af\u30c8\u30eb\u306e\u8981\u7d20\u6570\u3002<em>\u30c7\u30e2\u7528\u306b\u4f4e\u304f\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002\u305d\u3046\u3057\u306a\u3044\u3068\u3001\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u306b\u6642\u9593\u304c\u304b\u304b\u308a\u307e\u3059\u3002\u30d1\u30ea\u30c6\u30a3\u306e\u30bf\u30b9\u30af\u306f\u7c21\u5358\u305d\u3046\u306b\u898b\u3048\u307e\u3059\u304c\u3001\u30b5\u30f3\u30d7\u30eb\u3092\u898b\u3066\u30d1\u30bf\u30fc\u30f3\u3092\u7406\u89e3\u3059\u308b\u306e\u306f\u304b\u306a\u308a\u96e3\u3057\u3044\u3067\u3059</em></p>\u3002\n",
|
||||
"<p>Training and validation loaders </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u304a\u3088\u3073\u691c\u8a3c\u30ed\u30fc\u30c0\u30fc</p>\n",
|
||||
"<p>We need to set the metrics to calculate them for the epoch for training and validation </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3068\u691c\u8a3c\u306e\u305f\u3081\u306b\u3001\u30a8\u30dd\u30c3\u30af\u306b\u5408\u308f\u305b\u3066\u305d\u308c\u3089\u3092\u8a08\u7b97\u3059\u308b\u30e1\u30c8\u30ea\u30c3\u30af\u3092\u8a2d\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059</p>\n",
|
||||
"PonderNet Parity Task Experiment": "PonderNet \u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af\u5b9f\u9a13",
|
||||
"This trains is a PonderNet on Parity Task": "\u3053\u306e\u30c8\u30ec\u30a4\u30f3\u306f PonderNet on \u30d1\u30ea\u30c6\u30a3\u30bf\u30b9\u30af\u3067\u3059"
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">PonderNet</a> <a href=\"../parity.html\">Parity Task</a> Experiment</h1>\n<p>This trains a <a href=\"index.html\">PonderNet</a> on <a href=\"../parity.html\">Parity Task</a>.</p>\n": "<h1><a href=\"index.html\">\u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca</a> <a href=\"../parity.html\">\u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf \u0d9a\u0dcf\u0dbb\u0dca\u0dba</a> \u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf \u0db6\u0dd0\u0dbd\u0dd3\u0db8</h1>\n<p>\u0db8\u0dd9\u0dba <a href=\"../parity.html\">\u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf \u0d9a\u0dcf\u0dbb\u0dca\u0dba</a> \u0db4\u0dd2\u0dc5\u0dd2\u0db6\u0db3 <a href=\"index.html\">\u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca</a> \u0d91\u0d9a\u0d9a\u0dca \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0dba\u0dd2. </p>\n",
|
||||
"<p> </p>\n": "<p> </p>\n",
|
||||
"<p> Configurations with a <a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.train_valid.SimpleTrainValidConfigs\">simple training loop</a></p>\n": "<p> <a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.train_valid.SimpleTrainValidConfigs\">\u0dc3\u0dbb\u0dbd \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0dbd\u0dd6\u0db4\u0dba\u0d9a\u0dca</a>\u0dc3\u0dc4\u0dd2\u0dad \u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca</p>\n",
|
||||
"<p> Run the experiment</p>\n": "<p> \u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf\u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> This method gets called by the trainer for each batch</p>\n": "<p> \u0db8\u0dd9\u0db8\u0d9a\u0dca\u0dbb\u0db8\u0dba \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0d9a\u0dbb\u0dd4 \u0dc0\u0dd2\u0dc3\u0dd2\u0db1\u0dca \u0d9a\u0dd0\u0db3\u0dc0\u0db1\u0dd4 \u0dbd\u0dd0\u0db6\u0dda</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> for the geometric distribution <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span> \u0da2\u0dca\u0dba\u0dcf\u0db8\u0dd2\u0dad\u0dd2\u0d9a \u0dc0\u0dca\u0dba\u0dcf\u0db4\u0dca\u0dad\u0dd2\u0dba \u0dc3\u0db3\u0dc4\u0dcf <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>Accuracy calculator </p>\n": "<p>\u0db1\u0dd2\u0dbb\u0dc0\u0daf\u0dca\u0dba\u0dad\u0dcf\u0dc0\u0dba\u0d9a\u0dd0\u0dbd\u0dca\u0d9a\u0dca\u0dba\u0dd4\u0dbd\u0dda\u0da7\u0dbb\u0dba </p>\n",
|
||||
"<p>Batch size </p>\n": "<p>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca\u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba </p>\n",
|
||||
"<p>Calculate the expected number of steps taken </p>\n": "<p>\u0d9c\u0dd9\u0db1\u0d87\u0dad\u0dd2 \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0dab\u0db1 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Calculate the reconstruction loss </p>\n": "<p>\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc3\u0d82\u0dc3\u0dca\u0d9a\u0dbb\u0dab\u0d85\u0dbd\u0dcf\u0db7\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Calculate the regularization loss </p>\n": "<p>\u0db1\u0dd2\u0dba\u0dcf\u0db8\u0db1\u0dba\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d85\u0dbd\u0dcf\u0db7\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Call accuracy metric </p>\n": "<p>\u0d87\u0db8\u0dad\u0dd4\u0db8\u0dca\u0db1\u0dd2\u0dbb\u0dc0\u0daf\u0dca\u0dba\u0dad\u0dcf\u0dc0 \u0db8\u0dd9\u0da7\u0dca\u0dbb\u0dd2\u0d9a\u0dca </p>\n",
|
||||
"<p>Clear gradients </p>\n": "<p>\u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dd2\u0d9a\u0db4\u0dd0\u0dc4\u0dd0\u0daf\u0dd2\u0dbd\u0dd2 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Clip gradients </p>\n": "<p>\u0d9a\u0dca\u0dbd\u0dd2\u0db4\u0dca\u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dd2\u0d9a </p>\n",
|
||||
"<p>Compute gradients </p>\n": "<p>\u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dd2\u0d9a\u0d9c\u0dab\u0db1\u0dba </p>\n",
|
||||
"<p>Get the input and labels and move them to the model's device </p>\n": "<p>\u0d86\u0daf\u0dcf\u0db1\u0dc3\u0dc4 \u0dbd\u0dda\u0db6\u0dbd \u0dbd\u0db6\u0dcf\u0d9c\u0dd9\u0db1 \u0d92\u0dc0\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0dda \u0d8b\u0db4\u0dcf\u0d82\u0d9c\u0dba\u0da7 \u0d9c\u0dd9\u0db1 \u0dba\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Gradient clipping by norm </p>\n": "<p>\u0dc3\u0db8\u0dca\u0db8\u0dad\u0dba\u0d85\u0db1\u0dd4\u0dc0 \u0dc1\u0dca\u0dbb\u0dda\u0dab\u0dd2\u0dba \u0d9a\u0dca\u0dbd\u0dd2\u0db4\u0dd2\u0db1\u0dca \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 </p>\n",
|
||||
"<p>Increment step in training mode </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0db8\u0dcf\u0daf\u0dd2\u0dbd\u0dd2\u0dba\u0dda \u0dc0\u0dbb\u0dca\u0db0\u0d9a \u0db4\u0dd2\u0dba\u0dc0\u0dbb </p>\n",
|
||||
"<p>Initialize the model </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Maximum number of steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d8b\u0db4\u0dbb\u0dd2\u0db8\u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0dab\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Model </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba </p>\n",
|
||||
"<p>Number of batches per epoch </p>\n": "<p>\u0d91\u0d9a\u0dca\u0d8a\u0db4\u0ddd\u0da0\u0dca\u0da0\u0dba\u0d9a\u0da7 \u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca \u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Number of epochs </p>\n": "<p>\u0d91\u0db4\u0ddc\u0da0\u0dca\u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Number of units in the hidden layer (state) </p>\n": "<p>\u0dc3\u0dd0\u0d9f\u0dc0\u0dd4\u0dab\u0dd4\u0dc3\u0dca\u0dae\u0dbb\u0dba\u0dda \u0d92\u0d9a\u0d9a \u0d9c\u0dab\u0db1 (\u0dbb\u0dcf\u0da2\u0dca\u0dba) </p>\n",
|
||||
"<p>Optimizer </p>\n": "<p>\u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad\u0d9a\u0dbb\u0dab\u0dba </p>\n",
|
||||
"<p>Print indicators to screen </p>\n": "<p>\u0dad\u0dd2\u0dbb\u0dba\u0dc0\u0dd9\u0dad \u0daf\u0dbb\u0dca\u0dc1\u0d9a \u0db8\u0dd4\u0daf\u0dca\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Regularization loss <span translate=no>_^_0_^_</span> coefficient <span translate=no>_^_1_^_</span> </p>\n": "<p>\u0db4\u0dcf\u0da9\u0dd4 <span translate=no>_^_0_^_</span> \u0dc3\u0d82\u0d9c\u0dd4\u0dab\u0d9a\u0dba \u0dc0\u0dd2\u0db0\u0dd2\u0db8\u0dad\u0dca \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>Run the model </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0db0\u0dcf\u0dc0\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Set the model mode </p>\n": "<p>\u0d86\u0daf\u0dbb\u0dca\u0dc1\u0db4\u0dca\u0dbb\u0d9a\u0dcf\u0dbb\u0dba \u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>The number of elements in the input vector. <em>We keep it low for demonstration; otherwise, training takes a lot of time. Although the parity task seems simple, figuring out the pattern by looking at samples is quite hard.</em> </p>\n": "<p>\u0d86\u0daf\u0dcf\u0db1\u0daf\u0ddb\u0dc1\u0dd2\u0d9a\u0dba\u0dda \u0db8\u0dd6\u0dbd\u0daf\u0dca\u0dbb\u0dc0\u0dca\u0dba \u0d9c\u0dab\u0db1. <em>\u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba\u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dd2 \u0d91\u0dba \u0d85\u0da9\u0dd4 \u0db8\u0da7\u0dca\u0da7\u0db8\u0d9a \u0dad\u0db6\u0dcf \u0d9c\u0db1\u0dd2\u0db8\u0dd4; \u0d91\u0dc3\u0dda \u0db1\u0ddc\u0db8\u0dd0\u0dad\u0dd2\u0db1\u0db8\u0dca \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0 \u0dc3\u0db3\u0dc4\u0dcf \u0db6\u0ddc\u0dc4\u0ddd \u0d9a\u0dcf\u0dbd\u0dba\u0d9a\u0dca \u0d9c\u0dad \u0dc0\u0dda. \u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba \u0dc3\u0dbb\u0dbd \u0dba\u0dd0\u0dba\u0dd2 \u0db4\u0dd9\u0db1\u0dd4\u0db1\u0daf, \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0daf\u0dd9\u0dc3 \u0db6\u0dd0\u0dbd\u0dd3\u0db8\u0dd9\u0db1\u0dca \u0dbb\u0da7\u0dcf\u0dc0 \u0d85\u0dc0\u0db6\u0ddc\u0db0 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dad\u0dbb\u0db8\u0d9a\u0dca \u0d85\u0db4\u0dc4\u0dc3\u0dd4\u0dba. </em> </p>\n",
|
||||
"<p>Training and validation loaders </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0\u0dc3\u0dc4 \u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d9a\u0dcf\u0dbb\u0d9a\u0dba\u0db1\u0dca </p>\n",
|
||||
"<p>We need to set the metrics to calculate them for the epoch for training and validation </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0\u0dc3\u0dc4 \u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d91\u0db4\u0ddd\u0da0\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0d92\u0dc0\u0dcf \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dca\u0dbb\u0db8\u0dd2\u0dad\u0dd2\u0d9a \u0dc3\u0d9a\u0dc3\u0dca \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4\u0dba </p>\n",
|
||||
"PonderNet Parity Task Experiment": "\u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca \u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf \u0d9a\u0dcf\u0dbb\u0dca\u0dba \u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf \u0db6\u0dd0\u0dbd\u0dd3\u0db8",
|
||||
"This trains is a PonderNet on Parity Task": "\u0db8\u0dd9\u0db8 \u0daf\u0dd4\u0db8\u0dca\u0dbb\u0dd2\u0dba \u0dc3\u0db8\u0dcf\u0db1\u0dcf\u0dad\u0dca\u0db8\u0dad\u0dcf \u0d9a\u0dcf\u0dbb\u0dca\u0dba \u0db4\u0dd2\u0dc5\u0dd2\u0db6\u0db3 \u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca \u0dba"
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">PonderNet</a> <a href=\"../parity.html\">Parity Task</a> Experiment</h1>\n<p>This trains a <a href=\"index.html\">PonderNet</a> on <a href=\"../parity.html\">Parity Task</a>.</p>\n": "<h1><a href=\"index.html\">PonderNet</a> <a href=\"../parity.html\">\u5947\u5076\u6821\u9a8c\u4efb\u52a1</a>\u5b9e\u9a8c</h1>\n<p>\u8fd9\u4f1a\u5728<a href=\"../parity.html\">\u5947\u5076\u6821\u9a8c\u4efb\u52a1</a>\u4e0a\u8bad\u7ec3 <a href=\"index.html\">PonderNet</a>\u3002</p>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p> Configurations with a <a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.train_valid.SimpleTrainValidConfigs\">simple training loop</a></p>\n": "<p>\u5e26\u6709<a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.train_valid.SimpleTrainValidConfigs\">\u7b80\u5355\u8bad\u7ec3\u5faa\u73af</a>\u7684\u914d\u7f6e</p>\n",
|
||||
"<p> Run the experiment</p>\n": "<p>\u8fd0\u884c\u5b9e\u9a8c</p>\n",
|
||||
"<p> This method gets called by the trainer for each batch</p>\n": "<p>\u57f9\u8bad\u5e08\u4f1a\u4e3a\u6bcf\u6279\u6b21\u8c03\u7528\u6b64\u65b9\u6cd5</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> for the geometric distribution <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u7528\u4e8e\u51e0\u4f55\u5206\u5e03<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Accuracy calculator </p>\n": "<p>\u7cbe\u5ea6\u8ba1\u7b97\u5668</p>\n",
|
||||
"<p>Batch size </p>\n": "<p>\u6279\u91cf\u5927\u5c0f</p>\n",
|
||||
"<p>Calculate the expected number of steps taken </p>\n": "<p>\u8ba1\u7b97\u9884\u671f\u91c7\u53d6\u7684\u6b65\u6570</p>\n",
|
||||
"<p>Calculate the reconstruction loss </p>\n": "<p>\u8ba1\u7b97\u91cd\u5efa\u635f\u5931</p>\n",
|
||||
"<p>Calculate the regularization loss </p>\n": "<p>\u8ba1\u7b97\u6b63\u5219\u5316\u635f\u5931</p>\n",
|
||||
"<p>Call accuracy metric </p>\n": "<p>\u547c\u53eb\u51c6\u786e\u5ea6\u6307\u6807</p>\n",
|
||||
"<p>Clear gradients </p>\n": "<p>\u6e10\u53d8\u6e05\u6670</p>\n",
|
||||
"<p>Clip gradients </p>\n": "<p>\u526a\u8f91\u6e10\u53d8</p>\n",
|
||||
"<p>Compute gradients </p>\n": "<p>\u8ba1\u7b97\u68af\u5ea6</p>\n",
|
||||
"<p>Get the input and labels and move them to the model's device </p>\n": "<p>\u83b7\u53d6\u8f93\u5165\u548c\u6807\u7b7e\u5e76\u5c06\u5176\u79fb\u52a8\u5230\u6a21\u578b\u7684\u8bbe\u5907\u4e2d</p>\n",
|
||||
"<p>Gradient clipping by norm </p>\n": "<p>\u6309\u89c4\u8303\u8fdb\u884c\u6e10\u53d8\u88c1\u526a</p>\n",
|
||||
"<p>Increment step in training mode </p>\n": "<p>\u5728\u8bad\u7ec3\u6a21\u5f0f\u4e2d\u589e\u52a0\u6b65\u6570</p>\n",
|
||||
"<p>Initialize the model </p>\n": "<p>\u521d\u59cb\u5316\u6a21\u578b</p>\n",
|
||||
"<p>Maximum number of steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6700\u5927\u6b65\u6570<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Model </p>\n": "<p>\u578b\u53f7</p>\n",
|
||||
"<p>Number of batches per epoch </p>\n": "<p>\u6bcf\u4e2a\u7eaa\u5143\u7684\u6279\u6b21\u6570</p>\n",
|
||||
"<p>Number of epochs </p>\n": "<p>\u5468\u671f\u7684\u6570\u91cf</p>\n",
|
||||
"<p>Number of units in the hidden layer (state) </p>\n": "<p>\u9690\u85cf\u5c42\uff08\u72b6\u6001\uff09\u4e2d\u7684\u5355\u4f4d\u6570\u91cf</p>\n",
|
||||
"<p>Optimizer </p>\n": "<p>\u4f18\u5316\u5668</p>\n",
|
||||
"<p>Print indicators to screen </p>\n": "<p>\u5c06\u6307\u793a\u5668\u6253\u5370\u5230\u5c4f\u5e55\u4e0a</p>\n",
|
||||
"<p>Regularization loss <span translate=no>_^_0_^_</span> coefficient <span translate=no>_^_1_^_</span> </p>\n": "<p>\u6b63\u5219\u5316\u635f\u5931<span translate=no>_^_0_^_</span>\u7cfb\u6570<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Run the model </p>\n": "<p>\u8fd0\u884c\u6a21\u578b</p>\n",
|
||||
"<p>Set the model mode </p>\n": "<p>\u8bbe\u7f6e\u6a21\u578b\u6a21\u5f0f</p>\n",
|
||||
"<p>The number of elements in the input vector. <em>We keep it low for demonstration; otherwise, training takes a lot of time. Although the parity task seems simple, figuring out the pattern by looking at samples is quite hard.</em> </p>\n": "<p>\u8f93\u5165\u5411\u91cf\u4e2d\u7684\u5143\u7d20\u6570\u3002<em>\u6211\u4eec\u5c06\u5176\u4fdd\u6301\u5728\u8f83\u4f4e\u7684\u6c34\u5e73\u4ee5\u8fdb\u884c\u6f14\u793a\uff1b\u5426\u5219\uff0c\u8bad\u7ec3\u4f1a\u82b1\u8d39\u5f88\u591a\u65f6\u95f4\u3002\u5c3d\u7ba1\u5947\u5076\u6821\u9a8c\u4efb\u52a1\u770b\u8d77\u6765\u5f88\u7b80\u5355\uff0c\u4f46\u901a\u8fc7\u67e5\u770b\u6837\u672c\u6765\u627e\u51fa\u6a21\u5f0f\u76f8\u5f53\u56f0\u96be\u3002</em></p>\n",
|
||||
"<p>Training and validation loaders </p>\n": "<p>\u8bad\u7ec3\u548c\u9a8c\u8bc1\u88c5\u8f7d\u673a</p>\n",
|
||||
"<p>We need to set the metrics to calculate them for the epoch for training and validation </p>\n": "<p>\u6211\u4eec\u9700\u8981\u8bbe\u7f6e\u6307\u6807\u6765\u8ba1\u7b97\u8bad\u7ec3\u548c\u9a8c\u8bc1\u65f6\u671f\u7684\u6307\u6807</p>\n",
|
||||
"PonderNet Parity Task Experiment": "PonderNet \u5947\u5076\u6821\u9a8c\u4efb\u52a1\u5b9e\u9a8c",
|
||||
"This trains is a PonderNet on Parity Task": "\u8fd9\u5217\u706b\u8f66\u662f\u5947\u5076\u6821\u9a8c\u4efb\u52a1\u4e0a\u7684 PonderNet"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet: Learning to Ponder</a></h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation of the paper <a href=\"https://arxiv.org/abs/2107.05407\">PonderNet: Learning to Ponder</a>.</p>\n<p>PonderNet adapts the computation based on the input. It changes the number of steps to take on a recurrent network based on the input. PonderNet learns this with end-to-end gradient descent. </p>\n": "<h1><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet: \u719f\u8003\u3059\u308b\u3053\u3068\u3092\u5b66\u3076</a></h1>\n<p>\u3053\u308c\u306f\u3001\u8ad6\u6587\u300c<a href=\"https://arxiv.org/abs/2107.05407\">PonderNet: \u719f\u8003\u3092\u5b66\u307c\u3046</a>\u300d<a href=\"https://pytorch.org\">\u3092PyTorch\u3067\u5b9f\u88c5\u3057\u305f\u3082\u306e\u3067\u3059</a>\u3002</p>\n<p>PonderNet \u306f\u5165\u529b\u306b\u57fa\u3065\u3044\u3066\u8a08\u7b97\u3092\u8abf\u6574\u3057\u307e\u3059\u3002\u5165\u529b\u306b\u57fa\u3065\u3044\u3066\u30ea\u30ab\u30ec\u30f3\u30c8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u5b9f\u884c\u3059\u308b\u30b9\u30c6\u30c3\u30d7\u306e\u6570\u3092\u5909\u66f4\u3057\u307e\u3059\u3002PonderNet\u306f\u3053\u308c\u3092\u7aef\u304b\u3089\u7aef\u307e\u3067\u306e\u52fe\u914d\u964d\u4e0b\u6cd5\u3067\u5b66\u7fd2\u3057\u307e\u3059</p>\u3002\n",
|
||||
"PonderNet: Learning to Ponder": "PonderNet: \u719f\u8003\u3059\u308b\u3053\u3068\u3092\u5b66\u3076"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet: Learning to Ponder</a></h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation of the paper <a href=\"https://arxiv.org/abs/2107.05407\">PonderNet: Learning to Ponder</a>.</p>\n<p>PonderNet adapts the computation based on the input. It changes the number of steps to take on a recurrent network based on the input. PonderNet learns this with end-to-end gradient descent. </p>\n": "<h1><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">\u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca: \u0db8\u0dd9\u0db1\u0dd9\u0dc4\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0d89\u0d9c\u0dd9\u0db1\u0dd3\u0db8</a></h1>\n<p>\u0db8\u0dd9\u0dba <a href=\"https://arxiv.org/abs/2107.05407\">PonderNet \u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 <a href=\"https://pytorch.org\">PyTorch</a> \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8: \u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca \u0dc0\u0dd9\u0dad \u0d89\u0d9c\u0dd9\u0db1\u0dd3\u0db8</a> . </p>\n<p>PonderNet\u0d86\u0daf\u0dcf\u0db1\u0dba \u0db8\u0dad \u0db4\u0daf\u0db1\u0db8\u0dca\u0dc0 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0d9a\u0dbb\u0dba\u0dd2. \u0d86\u0daf\u0dcf\u0db1\u0dba \u0db8\u0dad \u0db4\u0daf\u0db1\u0db8\u0dca\u0dc0 \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0da2\u0dcf\u0dbd\u0dba\u0d9a\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0d9c\u0dad \u0dba\u0dd4\u0dad\u0dd4 \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0dab\u0db1 \u0d91\u0dba \u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dbb\u0dba\u0dd2. \u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca \u0db8\u0dd9\u0dba \u0d89\u0d9c\u0dd9\u0db1 \u0d9c\u0db1\u0dca\u0db1\u0dda \u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dba \u0dc3\u0dd2\u0da7 \u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dba \u0daf\u0d9a\u0dca\u0dc0\u0dcf \u0dc0\u0dd6 \u0dc1\u0dca\u0dbb\u0dda\u0dab\u0dd2\u0dba\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dc0\u0dba\u0d9a\u0dca \u0dc3\u0db8\u0d9f\u0dba. </p>\n",
|
||||
"PonderNet: Learning to Ponder": "\u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca: \u0db8\u0dd9\u0db1\u0dd9\u0dc4\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0d89\u0d9c\u0dd9\u0db1\u0dd3\u0db8"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet: Learning to Ponder</a></h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation of the paper <a href=\"https://arxiv.org/abs/2107.05407\">PonderNet: Learning to Ponder</a>.</p>\n<p>PonderNet adapts the computation based on the input. It changes the number of steps to take on a recurrent network based on the input. PonderNet learns this with end-to-end gradient descent. </p>\n": "<h1><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet\uff1a\u5b66\u4f1a\u601d\u8003</a></h1>\n<p>\u8fd9\u662f <a href=\"https://pytorch.org\">P <a href=\"https://arxiv.org/abs/2107.05407\">onderNet\uff1a\u5b66\u4f1a\u601d\u8003</a>\u8bba\u6587\u7684 PyTorch</a> \u5b9e\u73b0\u3002</p>\n<p>PonderNet \u6839\u636e\u8f93\u5165\u8c03\u6574\u8ba1\u7b97\u3002\u5b83\u4f1a\u6839\u636e\u8f93\u5165\u66f4\u6539\u5faa\u73af\u7f51\u7edc\u4e0a\u8981\u6267\u884c\u7684\u6b65\u9aa4\u6570\u3002PonderNet \u901a\u8fc7\u7aef\u5230\u7aef\u68af\u5ea6\u4e0b\u964d\u6765\u5b66\u4e60\u8fd9\u4e00\u70b9\u3002</p>\n",
|
||||
"PonderNet: Learning to Ponder": "PonderNet\uff1a\u5b66\u4f1a\u601d\u8003"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/adaptive_computation/index.html\">Neural Networks with Adaptive Computation</a></h1>\n<p>These are neural network architectures that change the computation complexity based on the complexity of the input sample.</p>\n<ul><li>\ud83d\udea7 TODO: Adaptive Computation Time for Recurrent Neural Networks </li>\n<li><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet: Learning to Ponder</a> </li></ul>\n": "<h1><a href=\"https://nn.labml.ai/adaptive_computation/index.html\">\u9069\u5fdc\u578b\u8a08\u7b97\u3092\u5099\u3048\u305f\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</a></h1>\n<p>\u3053\u308c\u3089\u306f\u3001\u5165\u529b\u30b5\u30f3\u30d7\u30eb\u306e\u8907\u96d1\u3055\u306b\u57fa\u3065\u3044\u3066\u8a08\u7b97\u306e\u8907\u96d1\u3055\u3092\u5909\u66f4\u3059\u308b\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u3067\u3059\u3002</p>\n<ul><li>\ud83d\udea7 TODO: \u30ea\u30ab\u30ec\u30f3\u30c8\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u9069\u5fdc\u578b\u8a08\u7b97\u6642\u9593</li>\n<li><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet: \u719f\u8003\u3059\u308b\u3053\u3068\u3092\u5b66\u3076</a></li></ul>\n",
|
||||
"Neural Networks with Adaptive Computation": "\u9069\u5fdc\u578b\u8a08\u7b97\u3092\u5099\u3048\u305f\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/adaptive_computation/index.html\">Neural Networks with Adaptive Computation</a></h1>\n<p>These are neural network architectures that change the computation complexity based on the complexity of the input sample.</p>\n<ul><li>\ud83d\udea7 TODO: Adaptive Computation Time for Recurrent Neural Networks </li>\n<li><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet: Learning to Ponder</a> </li></ul>\n": "<h1><a href=\"https://nn.labml.ai/adaptive_computation/index.html\">\u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3 \u0d9c\u0dab\u0db1\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd</a></h1>\n<p>\u0db8\u0dda\u0dc0\u0dcf\u0d86\u0daf\u0dcf\u0db1 \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba\u0dda \u0dc3\u0d82\u0d9a\u0dd3\u0dbb\u0dca\u0dab\u0dad\u0dca\u0dc0\u0dba \u0db8\u0dad \u0db4\u0daf\u0db1\u0db8\u0dca\u0dc0 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0dc3\u0d82\u0d9a\u0dd3\u0dbb\u0dca\u0dab\u0dad\u0dcf\u0dc0 \u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dbb\u0db1 \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd \u0d9c\u0dd8\u0dc4 \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab \u0dc0\u0dda. </p>\n<ul><li>\ud83d\udea7TODO: \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d9a\u0dcf\u0dbd\u0dba </li>\n<li><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">\u0db4\u0ddc\u0db1\u0dca\u0da9\u0dbb\u0dca\u0db1\u0dd9\u0da7\u0dca: \u0db8\u0dd9\u0db1\u0dd9\u0dc4\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0d89\u0d9c\u0dd9\u0db1\u0dd3\u0db8</a> </li></ul>\n",
|
||||
"Neural Networks with Adaptive Computation": "\u0d85\u0db1\u0dd4\u0dc0\u0dbb\u0dca\u0dad\u0dd3 \u0d9c\u0dab\u0db1\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0dc3\u0dca\u0db1\u0dcf\u0dba\u0dd4\u0d9a \u0da2\u0dcf\u0dbd"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/adaptive_computation/index.html\">Neural Networks with Adaptive Computation</a></h1>\n<p>These are neural network architectures that change the computation complexity based on the complexity of the input sample.</p>\n<ul><li>\ud83d\udea7 TODO: Adaptive Computation Time for Recurrent Neural Networks </li>\n<li><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet: Learning to Ponder</a> </li></ul>\n": "<h1><a href=\"https://nn.labml.ai/adaptive_computation/index.html\">\u5177\u6709\u81ea\u9002\u5e94\u8ba1\u7b97\u7684\u795e\u7ecf\u7f51\u7edc</a></h1>\n<p>\u8fd9\u4e9b\u662f\u795e\u7ecf\u7f51\u7edc\u67b6\u6784\uff0c\u6839\u636e\u8f93\u5165\u6837\u672c\u7684\u590d\u6742\u5ea6\u6765\u6539\u53d8\u8ba1\u7b97\u590d\u6742\u5ea6\u3002</p>\n<ul><li>\ud83d\udea7 TODO\uff1a\u5faa\u73af\u795e\u7ecf\u7f51\u7edc\u7684\u81ea\u9002\u5e94\u8ba1\u7b97\u65f6\u95f4</li>\n<li><a href=\"https://nn.labml.ai/adaptive_computation/ponder_net/index.html\">PonderNet\uff1a\u5b66\u4f1a\u601d\u8003</a></li></ul>\n",
|
||||
"Neural Networks with Adaptive Computation": "\u5177\u6709\u81ea\u9002\u5e94\u8ba1\u7b97\u7684\u795e\u7ecf\u7f51\u7edc"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"<h1>Capsule Networks</h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation/tutorial of <a href=\"https://arxiv.org/abs/1710.09829\">Dynamic Routing Between Capsules</a>.</p>\n<p>Capsule network is a neural network architecture that embeds features as capsules and routes them with a voting mechanism to next layer of capsules.</p>\n<p>Unlike in other implementations of models, we've included a sample, because it is difficult to understand some concepts with just the modules. <a href=\"mnist.html\">This is the annotated code for a model that uses capsules to classify MNIST dataset</a></p>\n<p>This file holds the implementations of the core modules of Capsule Networks.</p>\n<p>I used <a href=\"https://github.com/jindongwang/Pytorch-CapsuleNet\">jindongwang/Pytorch-CapsuleNet</a> to clarify some confusions I had with the paper.</p>\n<p>Here's a notebook for training a Capsule Network on MNIST dataset.</p>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/capsule_networks/mnist.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n": "<h1>\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</h1>\n<p><a href=\"https://arxiv.org/abs/1710.09829\">\u3053\u308c\u306f\u3001<a href=\"https://pytorch.org\">\u30ab\u30d7\u30bb\u30eb\u9593\u306e\u52d5\u7684\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u306ePyTorch\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3067\u3059</a>\u3002</a></p>\n<p>\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306f\u3001\u30d5\u30a3\u30fc\u30c1\u30e3\u3092\u30ab\u30d7\u30bb\u30eb\u3068\u3057\u3066\u57cb\u3081\u8fbc\u307f\u3001\u6295\u7968\u30e1\u30ab\u30cb\u30ba\u30e0\u3092\u4f7f\u7528\u3057\u3066\u6b21\u306e\u30ab\u30d7\u30bb\u30eb\u5c64\u306b\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u3059\u308b\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u3067\u3059\u3002</p>\n<p>\u4ed6\u306e\u30e2\u30c7\u30eb\u306e\u5b9f\u88c5\u3068\u306f\u7570\u306a\u308a\u3001\u30e2\u30b8\u30e5\u30fc\u30eb\u3060\u3051\u3067\u306f\u4e00\u90e8\u306e\u6982\u5ff5\u3092\u7406\u89e3\u3059\u308b\u306e\u304c\u96e3\u3057\u3044\u305f\u3081\u3001\u30b5\u30f3\u30d7\u30eb\u3092\u7528\u610f\u3057\u3066\u3044\u307e\u3059\u3002</p><a href=\"mnist.html\">\u3053\u308c\u306f\u3001\u30ab\u30d7\u30bb\u30eb\u3092\u4f7f\u7528\u3057\u3066 MNIST \u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3092\u5206\u985e\u3059\u308b\u30e2\u30c7\u30eb\u306e\u6ce8\u91c8\u4ed8\u304d\u30b3\u30fc\u30c9\u3067\u3059\u3002</a>\n<p>\u3053\u306e\u30d5\u30a1\u30a4\u30eb\u306b\u306f\u3001Capsule Networks \u306e\u30b3\u30a2\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u5b9f\u88c5\u304c\u683c\u7d0d\u3055\u308c\u3066\u3044\u307e\u3059\u3002</p>\n<p><a href=\"https://github.com/jindongwang/Pytorch-CapsuleNet\">Jindongwang/Pytorch-Capsulenet\u3092\u4f7f\u3063\u3066</a>\u3001\u8ad6\u6587\u306b\u95a2\u3059\u308b\u6df7\u4e71\u3092\u89e3\u6d88\u3057\u307e\u3057\u305f\u3002</p>\n<p>\u3053\u308c\u306f\u3001MNIST\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3067\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3059\u308b\u305f\u3081\u306e\u30ce\u30fc\u30c8\u30d6\u30c3\u30af\u3067\u3059\u3002</p>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/capsule_networks/mnist.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<h2>Margin loss for class existence</h2>\n<p>A separate margin loss is used for each output capsule and the total loss is the sum of them. The length of each output capsule is the probability that class is present in the input.</p>\n<p>Loss for each output capsule or class <span translate=no>_^_0_^_</span> is, <span translate=no>_^_1_^_</span></p>\n<p><span translate=no>_^_2_^_</span> is <span translate=no>_^_3_^_</span> if the class <span translate=no>_^_4_^_</span> is present and <span translate=no>_^_5_^_</span> otherwise. The first component of the loss is <span translate=no>_^_6_^_</span> when the class is not present, and the second component is <span translate=no>_^_7_^_</span> if the class is present. The <span translate=no>_^_8_^_</span> is used to avoid predictions going to extremes. <span translate=no>_^_9_^_</span> is set to be <span translate=no>_^_10_^_</span> and <span translate=no>_^_11_^_</span> to be <span translate=no>_^_12_^_</span> in the paper.</p>\n<p>The <span translate=no>_^_13_^_</span> down-weighting is used to stop the length of all capsules from falling during the initial phase of training.</p>\n": "<h2>\u30af\u30e9\u30b9\u5b58\u5728\u306b\u3088\u308b\u30de\u30fc\u30b8\u30f3\u30ed\u30b9</h2>\n<p>\u51fa\u529b\u30ab\u30d7\u30bb\u30eb\u3054\u3068\u306b\u500b\u5225\u306e\u30de\u30fc\u30b8\u30f3\u30ed\u30b9\u304c\u4f7f\u7528\u3055\u308c\u3001\u5408\u8a08\u640d\u5931\u306f\u305d\u308c\u3089\u306e\u5408\u8a08\u306b\u306a\u308a\u307e\u3059\u3002\u5404\u51fa\u529b\u30ab\u30d7\u30bb\u30eb\u306e\u9577\u3055\u306f\u3001\u5165\u529b\u306b\u30af\u30e9\u30b9\u304c\u5b58\u5728\u3059\u308b\u78ba\u7387\u3067\u3059\u3002</p>\n<p><span translate=no>_^_0_^_</span>\u5404\u51fa\u529b\u30ab\u30d7\u30bb\u30eb\u307e\u305f\u306f\u30af\u30e9\u30b9\u306e\u640d\u5931\u306f\u3001<span translate=no>_^_1_^_</span></p>\n<p><span translate=no>_^_2_^_</span><span translate=no>_^_3_^_</span>\u30af\u30e9\u30b9\u304c\u5b58\u5728\u3059\u308b\u304b\u3069\u3046\u304b\u3001<span translate=no>_^_4_^_</span><span translate=no>_^_5_^_</span>\u305d\u3046\u3067\u306a\u3044\u5834\u5408\u3067\u3059\u3002<span translate=no>_^_6_^_</span>\u640d\u5931\u306e\u6700\u521d\u306e\u8981\u7d20\u306f\u30af\u30e9\u30b9\u304c\u5b58\u5728\u3057\u306a\u3044\u5834\u5408\u3067\u3001<span translate=no>_^_7_^_</span> 2\u756a\u76ee\u306e\u8981\u7d20\u306f\u30af\u30e9\u30b9\u304c\u5b58\u5728\u3059\u308b\u5834\u5408\u3067\u3059\u3002<span translate=no>_^_8_^_</span>\u4e88\u6e2c\u304c\u6975\u7aef\u306b\u306a\u308b\u306e\u3092\u9632\u3050\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<span translate=no>_^_9_^_</span><span translate=no>_^_10_^_</span><span translate=no>_^_11_^_</span><span translate=no>_^_12_^_</span>\u65b0\u805e\u306b\u63b2\u8f09\u3055\u308c\u308b\u4e88\u5b9a\u3067\u3001\u63b2\u8f09\u3055\u308c\u308b\u4e88\u5b9a\u3067\u3059\u3002</p>\n<p><span translate=no>_^_13_^_</span>\u30c0\u30a6\u30f3\u30a6\u30a8\u30a4\u30c8\u306f\u3001\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u306e\u521d\u671f\u6bb5\u968e\u3067\u3059\u3079\u3066\u306e\u30ab\u30d7\u30bb\u30eb\u306e\u9577\u3055\u304c\u843d\u3061\u308b\u306e\u3092\u9632\u3050\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<h2>Routing Algorithm</h2>\n<p>This is the routing mechanism described in the paper. You can use multiple routing layers in your models.</p>\n<p>This combines calculating <span translate=no>_^_0_^_</span> for this layer and the routing algorithm described in <em>Procedure 1</em>.</p>\n": "<h2>\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0</h2>\n<p>\u3053\u308c\u306f\u3001\u3053\u306e\u30db\u30ef\u30a4\u30c8\u30da\u30fc\u30d1\u30fc\u3067\u8aac\u660e\u3055\u308c\u3066\u3044\u308b\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u30e1\u30ab\u30cb\u30ba\u30e0\u3067\u3059\u3002\u30e2\u30c7\u30eb\u3067\u306f\u8907\u6570\u306e\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u30ec\u30a4\u30e4\u30fc\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002</p>\n<p>\u3053\u308c\u306f\u3001<span translate=no>_^_0_^_</span><em>\u3053\u306e\u30ec\u30a4\u30e4\u30fc\u306e\u8a08\u7b97\u3068\u624b\u98061\u3067\u8aac\u660e\u3057\u305f\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3092\u7d44\u307f\u5408\u308f\u305b\u305f\u3082\u306e\u3067\u3059</em>\u3002</p>\n",
|
||||
"<h2>Squash</h2>\n<p>This is <strong>squashing</strong> function from paper, given by equation <span translate=no>_^_0_^_</span>.</p>\n<p><span translate=no>_^_1_^_</span></p>\n<p><span translate=no>_^_2_^_</span> normalizes the length of all the capsules, whilst <span translate=no>_^_3_^_</span> shrinks the capsules that have a length smaller than one .</p>\n": "<h2>\u30b9\u30ab\u30c3\u30b7\u30e5</h2>\n<p>\u3053\u308c\u306f\u3001<strong>\u65b9\u7a0b\u5f0f\u3067\u4e0e\u3048\u3089\u308c\u308b\u7d19\u304b\u3089\u306e\u62bc\u3057\u3064\u3076\u3057\u95a2\u6570\u3067\u3059</strong>\u3002<span translate=no>_^_0_^_</span></p>\n<p><span translate=no>_^_1_^_</span></p>\n<p><span translate=no>_^_2_^_</span>\u3059\u3079\u3066\u306e\u30ab\u30d7\u30bb\u30eb\u306e\u9577\u3055\u3092\u6b63\u898f\u5316\u3057\u3001\u9577\u3055\u304c 1 <span translate=no>_^_3_^_</span> \u3088\u308a\u77ed\u3044\u30ab\u30d7\u30bb\u30eb\u3092\u7e2e\u5c0f\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<p> <span translate=no>_^_0_^_</span> is the number of capsules, and <span translate=no>_^_1_^_</span> is the number of features per capsule from the layer below. <span translate=no>_^_2_^_</span> and <span translate=no>_^_3_^_</span> are the same for this layer.</p>\n<p><span translate=no>_^_4_^_</span> is the number of routing iterations, symbolized by <span translate=no>_^_5_^_</span> in the paper.</p>\n": "<p><span translate=no>_^_0_^_</span>\u306f\u30ab\u30d7\u30bb\u30eb\u306e\u6570\u3067\u3001<span translate=no>_^_1_^_</span>\u306f\u4e0b\u306e\u30ec\u30a4\u30e4\u30fc\u306e\u30ab\u30d7\u30bb\u30eb\u3042\u305f\u308a\u306e\u30d5\u30a3\u30fc\u30c1\u30e3\u6570\u3067\u3059\u3002<span translate=no>_^_2_^_</span><span translate=no>_^_3_^_</span>\u3053\u306e\u30ec\u30a4\u30e4\u30fc\u3067\u3082\u540c\u3058\u3067\u3059\u3002</p>\n<p><span translate=no>_^_4_^_</span>\u306f\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u306e\u53cd\u5fa9\u56de\u6570\u3067\u3001<span translate=no>_^_5_^_</span>\u8ad6\u6587\u3067\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u8868\u793a\u3055\u308c\u3066\u3044\u307e\u3059\u3002</p>\n",
|
||||
"<p> <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> are the squashed output capsules. This has shape <span translate=no>_^_2_^_</span>; that is, there is a capsule for each label.</p>\n<p><span translate=no>_^_3_^_</span> are the labels, and has shape <span translate=no>_^_4_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span>\u3001<span translate=no>_^_1_^_</span>\u306f\u62bc\u3057\u3064\u3076\u3055\u308c\u305f\u51fa\u529b\u30ab\u30d7\u30bb\u30eb\u3067\u3059\u3002\u3053\u308c\u306b\u306f\u5f62\u304c\u3042\u308a\u307e\u3059<span translate=no>_^_2_^_</span>\u3002\u3064\u307e\u308a\u3001\u30e9\u30d9\u30eb\u3054\u3068\u306b\u30ab\u30d7\u30bb\u30eb\u304c\u3042\u308a\u307e\u3059\u3002</p>\n<p><span translate=no>_^_3_^_</span>\u306f\u30e9\u30d9\u30eb\u3067\u3001\u5f62\u3092\u3057\u3066\u3044\u307e\u3059<span translate=no>_^_4_^_</span>\u3002</p>\n",
|
||||
"<p> The shape of <span translate=no>_^_0_^_</span> is <span translate=no>_^_1_^_</span>. These are the capsules from the lower layer.</p>\n": "<p><span translate=no>_^_0_^_</span>\u306e\u5f62\u306f<span translate=no>_^_1_^_</span>.\u3053\u308c\u3089\u306f\u4e0b\u5c64\u306e\u30ab\u30d7\u30bb\u30eb\u3067\u3059</p>\u3002\n",
|
||||
"<p> The shape of <span translate=no>_^_0_^_</span> is <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u306e\u5f62\u306f <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> has shape <span translate=no>_^_2_^_</span>. We have parallelized the computation of <span translate=no>_^_3_^_</span> for for all <span translate=no>_^_4_^_</span>. </p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u5f62\u304c\u3042\u308a\u307e\u3059<span translate=no>_^_2_^_</span>\u3002<span translate=no>_^_3_^_</span>for \u306e\u8a08\u7b97\u3092\u4e26\u5217\u5316\u3057\u307e\u3057\u305f</p>\u3002<span translate=no>_^_4_^_</span>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> is one-hot encoded labels of shape <span translate=no>_^_2_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u30ef\u30f3\u30db\u30c3\u30c8\u30a8\u30f3\u30b3\u30fc\u30c9\u3055\u308c\u305f\u5f62\u72b6\u306e\u30e9\u30d9\u30eb\u3067\u3059 <span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> Here <span translate=no>_^_1_^_</span> is used to index capsules in this layer, whilst <span translate=no>_^_2_^_</span> is used to index capsules in the layer below (previous). </p>\n": "<p><span translate=no>_^_0_^_</span>\u3053\u3053\u3067\u306f<span translate=no>_^_1_^_</span>\u3001\u3053\u306e\u30ec\u30a4\u30e4\u30fc\u306e\u30ab\u30d7\u30bb\u30eb\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u4f5c\u6210\u3057\u3001\u4e0b\u306e\u30ec\u30a4\u30e4\u30fc\uff08\u524d\u306e\u30ec\u30a4\u30e4\u30fc\uff09\u306e\u30ab\u30d7\u30bb\u30eb\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p>Initial logits <span translate=no>_^_0_^_</span> are the log prior probabilities that capsule <span translate=no>_^_1_^_</span> should be coupled with <span translate=no>_^_2_^_</span>. We initialize these at zero </p>\n": "<p><span translate=no>_^_0_^_</span>\u521d\u671f\u30ed\u30b8\u30c3\u30c8\u306f\u3001<span translate=no>_^_1_^_</span>\u30ab\u30d7\u30bb\u30eb\u3068\u7d44\u307f\u5408\u308f\u305b\u308b\u3079\u304d\u5bfe\u6570\u4e8b\u524d\u78ba\u7387\u3067\u3059\u3002<span translate=no>_^_2_^_</span>\u3053\u308c\u3089\u306f\u30bc\u30ed\u3067\u521d\u671f\u5316\u3057\u307e\u3059</p>\u3002\n",
|
||||
"<p>Iterate </p>\n": "<p>\u7e70\u308a\u8fd4\u3057</p>\n",
|
||||
"<p>This is the weight matrix <span translate=no>_^_0_^_</span>. It maps each capsule in the lower layer to each capsule in this layer </p>\n": "<p><span translate=no>_^_0_^_</span>\u3053\u308c\u306f\u30a6\u30a7\u30a4\u30c8\u30de\u30c8\u30ea\u30c3\u30af\u30b9\u3067\u3059\u3002\u4e0b\u4f4d\u30ec\u30a4\u30e4\u30fc\u306e\u5404\u30ab\u30d7\u30bb\u30eb\u3092\u3053\u306e\u30ec\u30a4\u30e4\u30fc\u306e\u5404\u30ab\u30d7\u30bb\u30eb\u306b\u30de\u30c3\u30d4\u30f3\u30b0\u3057\u307e\u3059</p>\u3002\n",
|
||||
"<p>We add an epsilon when calculating <span translate=no>_^_0_^_</span> to make sure it doesn't become zero. If this becomes zero it starts giving out <span translate=no>_^_1_^_</span> values and training fails. <span translate=no>_^_2_^_</span> </p>\n": "<p>\u30bc\u30ed\u306b\u306a\u3089\u306a\u3044\u3088\u3046\u306b\u3001<span translate=no>_^_0_^_</span>\u8a08\u7b97\u6642\u306b\u30a4\u30d7\u30b7\u30ed\u30f3\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u3053\u308c\u304c\u30bc\u30ed\u306b\u306a\u308b\u3068\u3001<span translate=no>_^_1_^_</span>\u5024\u304c\u4e0e\u3048\u3089\u308c\u59cb\u3081\u3001\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u306f\u5931\u6557\u3057\u307e\u3059\u3002<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p>routing softmax <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u30bd\u30d5\u30c8\u30de\u30c3\u30af\u30b9 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"Capsule Networks": "\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af",
|
||||
"PyTorch implementation and tutorial of Capsule Networks. Capsule network is a neural network architecture that embeds features as capsules and routes them with a voting mechanism to next layer of capsules.": "PyTorch\u306e\u5b9f\u88c5\u3068\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3002\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306f\u3001\u30d5\u30a3\u30fc\u30c1\u30e3\u3092\u30ab\u30d7\u30bb\u30eb\u3068\u3057\u3066\u57cb\u3081\u8fbc\u307f\u3001\u6295\u7968\u30e1\u30ab\u30cb\u30ba\u30e0\u3092\u4f7f\u7528\u3057\u3066\u6b21\u306e\u30ab\u30d7\u30bb\u30eb\u5c64\u306b\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u3059\u308b\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u3067\u3059\u3002"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"<h1>Capsule Networks</h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation/tutorial of <a href=\"https://arxiv.org/abs/1710.09829\">Dynamic Routing Between Capsules</a>.</p>\n<p>Capsule network is a neural network architecture that embeds features as capsules and routes them with a voting mechanism to next layer of capsules.</p>\n<p>Unlike in other implementations of models, we've included a sample, because it is difficult to understand some concepts with just the modules. <a href=\"mnist.html\">This is the annotated code for a model that uses capsules to classify MNIST dataset</a></p>\n<p>This file holds the implementations of the core modules of Capsule Networks.</p>\n<p>I used <a href=\"https://github.com/jindongwang/Pytorch-CapsuleNet\">jindongwang/Pytorch-CapsuleNet</a> to clarify some confusions I had with the paper.</p>\n<p>Here's a notebook for training a Capsule Network on MNIST dataset.</p>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/capsule_networks/mnist.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n": "<h1>\u80f6\u56ca\u7f51\u7edc</h1>\n<p>\u8fd9\u662f<a href=\"https://arxiv.org/abs/1710.09829\">\u80f6\u56ca\u95f4\u52a8\u6001\u8def\u7531</a>\u7684 <a href=\"https://pytorch.org\">PyTorch</a> \u5b9e\u73b0/\u6559\u7a0b\u3002</p>\n<p>Capsule \u7f51\u7edc\u662f\u4e00\u79cd\u795e\u7ecf\u7f51\u7edc\u67b6\u6784\uff0c\u5b83\u4ee5\u80f6\u56ca\u7684\u5f62\u5f0f\u5d4c\u5165\u7279\u5f81\uff0c\u5e76\u901a\u8fc7\u6295\u7968\u673a\u5236\u5c06\u5b83\u4eec\u8def\u7531\u5230\u4e0b\u4e00\u5c42\u80f6\u56ca\u3002</p>\n<p>\u4e0e\u5176\u4ed6\u6a21\u578b\u5b9e\u73b0\u4e0d\u540c\uff0c\u6211\u4eec\u63d0\u4f9b\u4e86\u4e00\u4e2a\u793a\u4f8b\uff0c\u56e0\u4e3a\u4ec5\u4f7f\u7528\u6a21\u5757\u5f88\u96be\u7406\u89e3\u67d0\u4e9b\u6982\u5ff5\u3002<a href=\"mnist.html\">\u8fd9\u662f\u4f7f\u7528\u80f6\u56ca\u5bf9 MNIST \u6570\u636e\u96c6\u8fdb\u884c\u5206\u7c7b\u7684\u6a21\u578b\u7684\u5e26\u6ce8\u91ca\u7684\u4ee3\u7801</a></p>\n<p>\u8be5\u6587\u4ef6\u5305\u542b\u4e86 Capsule Networks \u6838\u5fc3\u6a21\u5757\u7684\u5b9e\u73b0\u3002</p>\n<p>\u6211\u7528 <a href=\"https://github.com/jindongwang/Pytorch-CapsuleNet\">jindongwang/pytorch-CapsuleNet</a> \u6765\u6f84\u6e05\u6211\u5bf9\u8fd9\u7bc7\u8bba\u6587\u7684\u4e00\u4e9b\u56f0\u60d1\u3002</p>\n<p>\u8fd9\u662f\u4e00\u672c\u5728 MNIST \u6570\u636e\u96c6\u4e0a\u8bad\u7ec3 Capsule \u7f51\u7edc\u7684\u7b14\u8bb0\u672c\u3002</p>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/capsule_networks/mnist.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<h2>Margin loss for class existence</h2>\n<p>A separate margin loss is used for each output capsule and the total loss is the sum of them. The length of each output capsule is the probability that class is present in the input.</p>\n<p>Loss for each output capsule or class <span translate=no>_^_0_^_</span> is, <span translate=no>_^_1_^_</span></p>\n<p><span translate=no>_^_2_^_</span> is <span translate=no>_^_3_^_</span> if the class <span translate=no>_^_4_^_</span> is present and <span translate=no>_^_5_^_</span> otherwise. The first component of the loss is <span translate=no>_^_6_^_</span> when the class is not present, and the second component is <span translate=no>_^_7_^_</span> if the class is present. The <span translate=no>_^_8_^_</span> is used to avoid predictions going to extremes. <span translate=no>_^_9_^_</span> is set to be <span translate=no>_^_10_^_</span> and <span translate=no>_^_11_^_</span> to be <span translate=no>_^_12_^_</span> in the paper.</p>\n<p>The <span translate=no>_^_13_^_</span> down-weighting is used to stop the length of all capsules from falling during the initial phase of training.</p>\n": "<h2>\u9636\u7ea7\u5b58\u5728\u7684\u4fdd\u8bc1\u91d1\u635f\u5931</h2>\n<p>\u6bcf\u4e2a\u8f93\u51fa\u80f6\u56ca\u4f7f\u7528\u5355\u72ec\u7684\u4fdd\u8bc1\u91d1\u635f\u5931\uff0c\u603b\u4e8f\u635f\u662f\u5b83\u4eec\u7684\u603b\u548c\u3002\u6bcf\u4e2a\u8f93\u51fa\u80f6\u56ca\u7684\u957f\u5ea6\u662f\u8f93\u5165\u4e2d\u5b58\u5728\u7c7b\u7684\u6982\u7387\u3002</p>\n<p>\u6bcf\u4e2a\u8f93\u51fa\u80f6\u56ca\u6216\u7c7b\u7684\u635f\u5931<span translate=no>_^_0_^_</span>\u4e3a\uff0c<span translate=no>_^_1_^_</span></p>\n<p><span translate=no>_^_2_^_</span><span translate=no>_^_4_^_</span>\u662f\u7c7b<span translate=no>_^_3_^_</span>\u662f\u5426\u5b58\u5728\uff0c<span translate=no>_^_5_^_</span>\u5426\u5219\u3002\u635f\u5931\u7684\u7b2c\u4e00\u4e2a\u7ec4\u6210\u90e8\u5206\u662f<span translate=no>_^_6_^_</span>\u5f53\u7c7b\u4e0d\u5b58\u5728\u65f6\uff0c\u7b2c\u4e8c\u4e2a\u7ec4\u6210\u90e8\u5206\u662f\u7c7b<span translate=no>_^_7_^_</span>\u662f\u5426\u5b58\u5728\u3002<span translate=no>_^_8_^_</span>\u7528\u4e8e\u907f\u514d\u9884\u6d4b\u8d70\u5411\u6781\u7aef\u3002<span translate=no>_^_9_^_</span>\u88ab\u8bbe\u7f6e<span translate=no>_^_11_^_</span>\u4e3a<span translate=no>_^_10_^_</span>\u548c\u5c06\u5728<span translate=no>_^_12_^_</span>\u62a5\u7eb8\u4e0a\u3002</p>\n<p>\u5728\u8bad\u7ec3<span translate=no>_^_13_^_</span>\u7684\u521d\u59cb\u9636\u6bb5\uff0c\u51cf\u91cd\u7528\u4e8e\u9632\u6b62\u6240\u6709\u80f6\u56ca\u7684\u957f\u5ea6\u6389\u843d\u3002</p>\n",
|
||||
"<h2>Routing Algorithm</h2>\n<p>This is the routing mechanism described in the paper. You can use multiple routing layers in your models.</p>\n<p>This combines calculating <span translate=no>_^_0_^_</span> for this layer and the routing algorithm described in <em>Procedure 1</em>.</p>\n": "<h2>\u8def\u7531\u7b97\u6cd5</h2>\n<p>\u8fd9\u662f\u767d\u76ae\u4e66\u4e2d\u63cf\u8ff0\u7684\u8def\u7531\u673a\u5236\u3002\u53ef\u4ee5\u5728\u6a21\u578b\u4e2d\u4f7f\u7528\u591a\u4e2a\u5e03\u7ebf\u5c42\u3002</p>\n<p>\u8fd9\u7ed3\u5408\u4e86\u6b64\u5c42<span translate=no>_^_0_^_</span>\u7684\u8ba1\u7b97\u548c<em>\u8fc7\u7a0b 1</em> \u4e2d\u63cf\u8ff0\u7684\u8def\u7531\u7b97\u6cd5\u3002</p>\n",
|
||||
"<h2>Squash</h2>\n<p>This is <strong>squashing</strong> function from paper, given by equation <span translate=no>_^_0_^_</span>.</p>\n<p><span translate=no>_^_1_^_</span></p>\n<p><span translate=no>_^_2_^_</span> normalizes the length of all the capsules, whilst <span translate=no>_^_3_^_</span> shrinks the capsules that have a length smaller than one .</p>\n": "<h2>\u58c1\u7403</h2>\n<p>\u8fd9\u662f\u6765\u81ea\u7eb8\u5f20\u7684<strong>\u6324\u538b</strong>\u51fd\u6570\uff0c\u7531\u65b9\u7a0b\u7ed9\u51fa<span translate=no>_^_0_^_</span>\u3002</p>\n<p><span translate=no>_^_1_^_</span></p>\n<p><span translate=no>_^_2_^_</span>\u6807\u51c6\u5316\u6240\u6709\u80f6\u56ca\u7684\u957f\u5ea6\uff0c\u540c\u65f6<span translate=no>_^_3_^_</span>\u7f29\u5c0f\u957f\u5ea6\u5c0f\u4e8e\u4e00\u4e2a\u7684\u80f6\u56ca\u3002</p>\n",
|
||||
"<p> <span translate=no>_^_0_^_</span> is the number of capsules, and <span translate=no>_^_1_^_</span> is the number of features per capsule from the layer below. <span translate=no>_^_2_^_</span> and <span translate=no>_^_3_^_</span> are the same for this layer.</p>\n<p><span translate=no>_^_4_^_</span> is the number of routing iterations, symbolized by <span translate=no>_^_5_^_</span> in the paper.</p>\n": "<p><span translate=no>_^_0_^_</span>\u662f\u80f6\u56ca\u7684\u6570\u91cf\uff0c<span translate=no>_^_1_^_</span>\u662f\u4e0b\u65b9\u56fe\u5c42\u4e2d\u6bcf\u4e2a\u80f6\u56ca\u7684\u7279\u5f81\u6570\u3002<span translate=no>_^_2_^_</span>\u5bf9\u4e8e\u8fd9\u4e2a\u5c42\u6765\u8bf4<span translate=no>_^_3_^_</span>\u662f\u76f8\u540c\u7684\u3002</p>\n<p><span translate=no>_^_4_^_</span>\u662f\u8def\u7531\u8fed\u4ee3\u6b21\u6570\uff0c\u5728\u8bba\u6587<span translate=no>_^_5_^_</span>\u4e2d\u7528\u7b26\u53f7\u8868\u793a\u3002</p>\n",
|
||||
"<p> <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> are the squashed output capsules. This has shape <span translate=no>_^_2_^_</span>; that is, there is a capsule for each label.</p>\n<p><span translate=no>_^_3_^_</span> are the labels, and has shape <span translate=no>_^_4_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span>\uff0c<span translate=no>_^_1_^_</span>\u662f\u538b\u6241\u7684\u8f93\u51fa\u80f6\u56ca\u3002\u5b83\u6709\u5f62\u72b6<span translate=no>_^_2_^_</span>\uff1b\u4e5f\u5c31\u662f\u8bf4\uff0c\u6bcf\u4e2a\u6807\u7b7e\u90fd\u6709\u4e00\u4e2a\u80f6\u56ca\u3002</p>\n<p><span translate=no>_^_3_^_</span>\u662f\u6807\u7b7e\uff0c\u6709\u5f62\u72b6<span translate=no>_^_4_^_</span>\u3002</p>\n",
|
||||
"<p> The shape of <span translate=no>_^_0_^_</span> is <span translate=no>_^_1_^_</span>. These are the capsules from the lower layer.</p>\n": "<p>\u7684\u5f62\u72b6<span translate=no>_^_0_^_</span>\u662f<span translate=no>_^_1_^_</span>\u3002\u8fd9\u4e9b\u662f\u4e0b\u5c42\u7684\u80f6\u56ca\u3002</p>\n",
|
||||
"<p> The shape of <span translate=no>_^_0_^_</span> is <span translate=no>_^_1_^_</span></p>\n": "<p>\u7684\u5f62\u72b6<span translate=no>_^_0_^_</span>\u662f<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> has shape <span translate=no>_^_2_^_</span>. We have parallelized the computation of <span translate=no>_^_3_^_</span> for for all <span translate=no>_^_4_^_</span>. </p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u6709\u5f62\u72b6<span translate=no>_^_2_^_</span>\u3002\u6211\u4eec\u5df2\u7ecf\u5e76\u884c\u5316\u4e86 for all<span translate=no>_^_3_^_</span> \u7684\u8ba1\u7b97<span translate=no>_^_4_^_</span>\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> is one-hot encoded labels of shape <span translate=no>_^_2_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u662f\u5f62\u72b6\u7684\u4e00\u70ed\u7f16\u7801\u6807\u7b7e<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> Here <span translate=no>_^_1_^_</span> is used to index capsules in this layer, whilst <span translate=no>_^_2_^_</span> is used to index capsules in the layer below (previous). </p>\n": "<p><span translate=no>_^_0_^_</span>\u8fd9\u91cc<span translate=no>_^_1_^_</span>\u7528\u4e8e\u7d22\u5f15\u8be5\u5c42\u4e2d\u7684\u80f6\u56ca\uff0c\u800c<span translate=no>_^_2_^_</span>\u7528\u4e8e\u7d22\u5f15\u4e0b\u5c42\uff08\u4e0a\u4e00\u5c42\uff09\u4e2d\u7684\u80f6\u56ca\u3002</p>\n",
|
||||
"<p>Initial logits <span translate=no>_^_0_^_</span> are the log prior probabilities that capsule <span translate=no>_^_1_^_</span> should be coupled with <span translate=no>_^_2_^_</span>. We initialize these at zero </p>\n": "<p>\u521d\u59cb\u5bf9\u6570<span translate=no>_^_0_^_</span>\u662f\u80f6\u56ca<span translate=no>_^_1_^_</span>\u5e94\u4e0e\u4e4b\u76f8\u7ed3\u5408\u7684\u5bf9\u6570\u5148\u9a8c\u6982\u7387<span translate=no>_^_2_^_</span>\u3002\u6211\u4eec\u5c06\u5b83\u4eec\u521d\u59cb\u5316\u4e3a\u96f6</p>\n",
|
||||
"<p>Iterate </p>\n": "<p>\u8fed\u4ee3</p>\n",
|
||||
"<p>This is the weight matrix <span translate=no>_^_0_^_</span>. It maps each capsule in the lower layer to each capsule in this layer </p>\n": "<p>\u8fd9\u662f\u6743\u91cd\u77e9\u9635<span translate=no>_^_0_^_</span>\u3002\u5b83\u5c06\u4e0b\u5c42\u4e2d\u7684\u6bcf\u4e2a\u80f6\u56ca\u6620\u5c04\u5230\u8be5\u5c42\u4e2d\u7684\u6bcf\u4e2a\u80f6\u56ca\u4f53</p>\n",
|
||||
"<p>We add an epsilon when calculating <span translate=no>_^_0_^_</span> to make sure it doesn't become zero. If this becomes zero it starts giving out <span translate=no>_^_1_^_</span> values and training fails. <span translate=no>_^_2_^_</span> </p>\n": "<p>\u6211\u4eec\u5728\u8ba1\u7b97\u65f6\u6dfb\u52a0\u4e00\u4e2a epsilon<span translate=no>_^_0_^_</span>\uff0c\u4ee5\u786e\u4fdd\u5b83\u4e0d\u4f1a\u53d8\u4e3a\u96f6\u3002\u5982\u679c\u8be5\u503c\u53d8\u4e3a\u96f6\uff0c\u5219\u5f00\u59cb\u7ed9\u51fa<span translate=no>_^_1_^_</span>\u503c\uff0c\u5e76\u4e14\u8bad\u7ec3\u5931\u8d25\u3002<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p>routing softmax <span translate=no>_^_0_^_</span> </p>\n": "<p>\u8def\u7531\u8f6f\u6700\u5927<span translate=no>_^_0_^_</span></p>\n",
|
||||
"Capsule Networks": "\u80f6\u56ca\u7f51\u7edc",
|
||||
"PyTorch implementation and tutorial of Capsule Networks. Capsule network is a neural network architecture that embeds features as capsules and routes them with a voting mechanism to next layer of capsules.": "PyTorch \u5b9e\u73b0\u548c\u80f6\u56ca\u7f51\u7edc\u6559\u7a0b\u3002\u80f6\u56ca\u7f51\u7edc\u662f\u4e00\u79cd\u795e\u7ecf\u7f51\u7edc\u67b6\u6784\uff0c\u5b83\u4ee5\u80f6\u56ca\u7684\u5f62\u5f0f\u5d4c\u5165\u7279\u5f81\uff0c\u5e76\u901a\u8fc7\u6295\u7968\u673a\u5236\u5c06\u5b83\u4eec\u8def\u7531\u5230\u4e0b\u4e00\u5c42\u80f6\u56ca\u3002"
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"<h1>Classify MNIST digits with Capsule Networks</h1>\n<p>This is an annotated PyTorch code to classify MNIST digits with PyTorch.</p>\n<p>This paper implements the experiment described in paper <a href=\"https://arxiv.org/abs/1710.09829\">Dynamic Routing Between Capsules</a>.</p>\n": "<h1>\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u3088\u308b MNIST \u30c7\u30a3\u30b8\u30c3\u30c8\u306e\u5206\u985e</h1>\n<p>\u3053\u308c\u306f\u3001MNIST\u306e\u6570\u5b57\u3092PyTorch\u3067\u5206\u985e\u3059\u308b\u305f\u3081\u306e\u30a2\u30ce\u30c6\u30fc\u30b7\u30e7\u30f3\u4ed8\u304d\u306ePyTorch\u30b3\u30fc\u30c9\u3067\u3059\u3002</p>\n<p>\u3053\u306e\u8ad6\u6587\u3067\u306f\u3001\u8ad6\u6587\u300c<a href=\"https://arxiv.org/abs/1710.09829\">\u30ab\u30d7\u30bb\u30eb\u9593\u306e\u52d5\u7684\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0</a>\u300d\u3067\u8aac\u660e\u3055\u308c\u3066\u3044\u308b\u5b9f\u9a13\u3092\u5b9f\u88c5\u3057\u3066\u3044\u307e\u3059\u3002</p>\n",
|
||||
"<h2>Model for classifying MNIST digits</h2>\n": "<h2>MNIST \u30c7\u30a3\u30b8\u30c3\u30c8\u3092\u5206\u985e\u3059\u308b\u305f\u3081\u306e\u30e2\u30c7\u30eb</h2>\n",
|
||||
"<p> <span translate=no>_^_0_^_</span> are the MNIST images, with shape <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>MNIST \u306e\u753b\u50cf\u306f\u5f62\u72b6\u4ed8\u304d\u3067\u3059 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p> Configurations with MNIST data and Train & Validation setup</p>\n": "<p>MNIST\u30c7\u30fc\u30bf\u3068\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3068\u691c\u8a3c\u306e\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3092\u542b\u3080\u69cb\u6210</p>\n",
|
||||
"<p> Run the experiment</p>\n": "<p>\u5b9f\u9a13\u3092\u5b9f\u884c\u3059\u308b</p>\n",
|
||||
"<p> This method gets called by the trainer</p>\n": "<p>\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u30c8\u30ec\u30fc\u30ca\u30fc\u306b\u3088\u3063\u3066\u547c\u3073\u51fa\u3055\u308c\u307e\u3059</p>\n",
|
||||
"<p>Calculate the total loss </p>\n": "<p>\u7dcf\u640d\u5931\u306e\u8a08\u7b97</p>\n",
|
||||
"<p>Call accuracy metric </p>\n": "<p>\u901a\u8a71\u7cbe\u5ea6\u6307\u6a19</p>\n",
|
||||
"<p>Create a mask to maskout all the other capsules </p>\n": "<p>\u30de\u30b9\u30af\u3092\u4f5c\u6210\u3057\u3066\u3001\u4ed6\u306e\u3059\u3079\u3066\u306e\u30ab\u30d7\u30bb\u30eb\u3092\u8986\u3044\u96a0\u3057\u3066\u304f\u3060\u3055\u3044</p>\n",
|
||||
"<p>First convolution layer has <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> convolution kernels </p>\n": "<p>\u6700\u521d\u306e\u7573\u307f\u8fbc\u307f\u5c64\u306b\u306f<span translate=no>_^_0_^_</span>\u3001<span translate=no>_^_1_^_</span>\u7573\u307f\u8fbc\u307f\u30ab\u30fc\u30cd\u30eb\u304c\u3042\u308a\u307e\u3059</p>\n",
|
||||
"<p>Get masks for reconstructioon </p>\n": "<p>\u5fa9\u8208\u7528\u30de\u30b9\u30af\u3092\u5165\u624b</p>\n",
|
||||
"<p>Get the images and labels and move them to the model's device </p>\n": "<p>\u753b\u50cf\u3068\u30e9\u30d9\u30eb\u3092\u53d6\u5f97\u3057\u3066\u30e2\u30c7\u30eb\u306e\u30c7\u30d0\u30a4\u30b9\u306b\u79fb\u52d5\u3057\u307e\u3059</p>\n",
|
||||
"<p>Increment step in training mode </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30e2\u30fc\u30c9\u3067\u306e\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u30b9\u30c6\u30c3\u30d7</p>\n",
|
||||
"<p>Log parameters and gradients </p>\n": "<p>\u30ed\u30b0\u30d1\u30e9\u30e1\u30fc\u30bf\u3068\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3</p>\n",
|
||||
"<p>Mask the digit capsules to get only the capsule that made the prediction and take it through decoder to get reconstruction </p>\n": "<p>\u6570\u5b57\u306e\u30ab\u30d7\u30bb\u30eb\u3092\u30de\u30b9\u30af\u3057\u3066\u4e88\u6e2c\u3092\u884c\u3063\u305f\u30ab\u30d7\u30bb\u30eb\u306e\u307f\u3092\u53d6\u5f97\u3057\u3001\u305d\u308c\u3092\u30c7\u30b3\u30fc\u30c0\u30fc\u306b\u901a\u3057\u3066\u518d\u69cb\u6210\u3057\u307e\u3059</p>\n",
|
||||
"<p>Pass through the first convolution layer. Output of this layer has shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6700\u521d\u306e\u7573\u307f\u8fbc\u307f\u5c64\u3092\u901a\u904e\u3057\u307e\u3059\u3002\u3053\u306e\u30ec\u30a4\u30e4\u30fc\u306e\u51fa\u529b\u306b\u306f\u5f62\u72b6\u304c\u3042\u308a\u307e\u3059 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Pass through the second convolution layer. Output of this has shape <span translate=no>_^_0_^_</span>. <em>Note that this layer has a stride length of <span translate=no>_^_1_^_</span></em>. </p>\n": "<p>2 \u756a\u76ee\u306e\u7573\u307f\u8fbc\u307f\u5c64\u3092\u901a\u904e\u3057\u307e\u3059\u3002\u3053\u308c\u306e\u51fa\u529b\u306b\u306f\u5f62\u72b6\u304c\u3042\u308a\u307e\u3059<span translate=no>_^_0_^_</span>\u3002<em><span translate=no>_^_1_^_</span>\u3053\u306e\u30ec\u30a4\u30e4\u30fc\u306e\u30b9\u30c8\u30e9\u30a4\u30c9\u306e\u9577\u3055\u306f\u3067\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044</em></p>\u3002\n",
|
||||
"<p>Print losses and accuracy to screen </p>\n": "<p>\u5370\u5237\u30ed\u30b9\u3068\u753b\u9762\u306e\u7cbe\u5ea6</p>\n",
|
||||
"<p>Reshape the reconstruction to match the image dimensions </p>\n": "<p>\u753b\u50cf\u306e\u30b5\u30a4\u30ba\u306b\u5408\u308f\u305b\u3066\u518d\u69cb\u6210\u306e\u5f62\u72b6\u3092\u5909\u66f4</p>\n",
|
||||
"<p>Resize and permutate to get the capsules </p>\n": "<p>\u30b5\u30a4\u30ba\u3092\u5909\u66f4\u3057\u3066\u4e26\u3079\u66ff\u3048\u3066\u30ab\u30d7\u30bb\u30eb\u306b\u3059\u308b</p>\n",
|
||||
"<p>Routing layer gets the <span translate=no>_^_0_^_</span> primary capsules and produces <span translate=no>_^_1_^_</span> capsules. Each of the primary capsules have <span translate=no>_^_2_^_</span> features, while output capsules (Digit Capsules) have <span translate=no>_^_3_^_</span> features. The routing algorithm iterates <span translate=no>_^_4_^_</span> times. </p>\n": "<p><span translate=no>_^_0_^_</span>\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u5c64\u306f\u4e00\u6b21\u30ab\u30d7\u30bb\u30eb\u3092\u53d6\u5f97\u3057\u3001<span translate=no>_^_1_^_</span>\u30ab\u30d7\u30bb\u30eb\u3092\u751f\u6210\u3057\u307e\u3059\u3002<span translate=no>_^_2_^_</span>\u5404\u30d7\u30e9\u30a4\u30de\u30ea\u30fc\u30ab\u30d7\u30bb\u30eb\u306b\u306f\u7279\u5fb4\u304c\u3042\u308a\u3001\u51fa\u529b\u30ab\u30d7\u30bb\u30eb\uff08\u30c7\u30a3\u30b8\u30c3\u30c8\u30ab\u30d7\u30bb\u30eb\uff09\u306b\u306f\u7279\u5fb4\u304c\u3042\u308a\u307e\u3059\u3002<span translate=no>_^_3_^_</span><span translate=no>_^_4_^_</span>\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306f\u4f55\u56de\u3082\u7e70\u308a\u8fd4\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<p>Run the model </p>\n": "<p>\u30e2\u30c7\u30eb\u3092\u5b9f\u884c</p>\n",
|
||||
"<p>Set the model </p>\n": "<p>\u30e2\u30c7\u30eb\u3092\u8a2d\u5b9a\u3059\u308b</p>\n",
|
||||
"<p>Set the model mode </p>\n": "<p>\u30e2\u30c7\u30eb\u30e2\u30fc\u30c9\u3092\u8a2d\u5b9a</p>\n",
|
||||
"<p>Squash the capsules </p>\n": "<p>\u30ab\u30d7\u30bb\u30eb\u3092\u62bc\u3057\u3064\u3076\u3059</p>\n",
|
||||
"<p>Take them through the router to get digit capsules. This has shape <span translate=no>_^_0_^_</span>. </p>\n": "<p>\u305d\u308c\u3089\u3092\u30eb\u30fc\u30bf\u30fc\u306b\u901a\u3057\u3066\u3001\u6570\u5b57\u306e\u30ab\u30d7\u30bb\u30eb\u3092\u5165\u624b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3053\u308c\u306f\u5f62\u304c\u3042\u308a\u307e\u3059<span translate=no>_^_0_^_</span>\u3002</p>\n",
|
||||
"<p>The prediction by the capsule network is the capsule with longest length </p>\n": "<p>\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u3088\u308b\u4e88\u6e2c\u3067\u306f\u3001\u9577\u3055\u304c\u6700\u3082\u9577\u3044\u30ab\u30d7\u30bb\u30eb\u3067\u3059</p>\n",
|
||||
"<p>The second layer (Primary Capsules) s a convolutional capsule layer with <span translate=no>_^_0_^_</span> channels of convolutional <span translate=no>_^_1_^_</span> capsules (<span translate=no>_^_2_^_</span> features per capsule). That is, each primary capsule contains 8 convolutional units with a 9 \u00d7 9 kernel and a stride of 2. In order to implement this we create a convolutional layer with <span translate=no>_^_3_^_</span> channels and reshape and permutate its output to get the capsules of <span translate=no>_^_4_^_</span> features each. </p>\n": "<p>2 \u756a\u76ee\u306e\u5c64 (\u30d7\u30e9\u30a4\u30de\u30ea\u30fc\u30ab\u30d7\u30bb\u30eb) \u306f\u3001\u7573\u307f\u8fbc\u307f\u30ab\u30d7\u30bb\u30eb (\u30ab\u30d7\u30bb\u30eb\u3054\u3068\u306e\u30d5\u30a3\u30fc\u30c1\u30e3) <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> \u306e\u30c1\u30e3\u30cd\u30eb\u304c\u3042\u308b\u7573\u307f\u8fbc\u307f\u30ab\u30d7\u30bb\u30eb\u5c64\u3067\u3059\u3002<span translate=no>_^_2_^_</span>\u3064\u307e\u308a\u3001\u5404\u30d7\u30e9\u30a4\u30de\u30ea\u30ab\u30d7\u30bb\u30eb\u306b\u306f\u30019 \u00d7 9 \u306e\u30ab\u30fc\u30cd\u30eb\u3068\u30b9\u30c8\u30e9\u30a4\u30c9\u304c 2 \u306e 8 \u3064\u306e\u7573\u307f\u8fbc\u307f\u30e6\u30cb\u30c3\u30c8\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059\u3002\u3053\u308c\u3092\u5b9f\u88c5\u3059\u308b\u305f\u3081\u306b\u3001<span translate=no>_^_3_^_</span>\u30c1\u30e3\u30cd\u30eb\u3092\u542b\u3080\u7573\u307f\u8fbc\u307f\u5c64\u3092\u4f5c\u6210\u3057\u3001\u305d\u306e\u51fa\u529b\u3092\u5f62\u72b6\u5909\u66f4\u304a\u3088\u3073\u7f6e\u63db\u3057\u3066\u3001\u305d\u308c\u305e\u308c\u306e\u7279\u5fb4\u306e\u30ab\u30d7\u30bb\u30eb\u3092\u53d6\u5f97\u3057\u307e\u3059</p>\u3002<span translate=no>_^_4_^_</span>\n",
|
||||
"<p>This is the decoder mentioned in the paper. It takes the outputs of the <span translate=no>_^_0_^_</span> digit capsules, each with <span translate=no>_^_1_^_</span> features to reproduce the image. It goes through linear layers of sizes <span translate=no>_^_2_^_</span> and <span translate=no>_^_3_^_</span> with <span translate=no>_^_4_^_</span> activations. </p>\n": "<p>\u3053\u308c\u306f\u8ad6\u6587\u3067\u8a00\u53ca\u3055\u308c\u3066\u3044\u308b\u30c7\u30b3\u30fc\u30c0\u30fc\u3067\u3059\u3002<span translate=no>_^_0_^_</span>\u6570\u5b57\u30ab\u30d7\u30bb\u30eb\u306e\u51fa\u529b\u3092\u53d7\u3051\u53d6\u308a\u3001<span translate=no>_^_1_^_</span>\u305d\u308c\u305e\u308c\u306b\u753b\u50cf\u3092\u518d\u73fe\u3059\u308b\u6a5f\u80fd\u304c\u3042\u308a\u307e\u3059\u3002<span translate=no>_^_2_^_</span><span translate=no>_^_3_^_</span><span translate=no>_^_4_^_</span>\u30b5\u30a4\u30ba\u3084\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u304c\u76f4\u7dda\u7684\u306b\u7e70\u308a\u8fd4\u3055\u308c\u307e\u3059</p>\u3002\n",
|
||||
"<p>We need to set the metrics to calculate them for the epoch for training and validation </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3068\u691c\u8a3c\u306e\u305f\u3081\u306b\u3001\u30a8\u30dd\u30c3\u30af\u306b\u5408\u308f\u305b\u3066\u305d\u308c\u3089\u3092\u8a08\u7b97\u3059\u308b\u30e1\u30c8\u30ea\u30c3\u30af\u3092\u8a2d\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059</p>\n",
|
||||
"<p>Whether to log activations </p>\n": "<p>\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u3092\u30ed\u30b0\u306b\u8a18\u9332\u3059\u308b\u304b\u3069\u3046\u304b</p>\n",
|
||||
"Classify MNIST digits with Capsule Networks": "\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u3088\u308b MNIST \u30c7\u30a3\u30b8\u30c3\u30c8\u306e\u5206\u985e",
|
||||
"Code for training Capsule Networks on MNIST dataset": "MNIST \u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3067 Capsule \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3059\u308b\u305f\u3081\u306e\u30b3\u30fc\u30c9"
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"<h1>Classify MNIST digits with Capsule Networks</h1>\n<p>This is an annotated PyTorch code to classify MNIST digits with PyTorch.</p>\n<p>This paper implements the experiment described in paper <a href=\"https://arxiv.org/abs/1710.09829\">Dynamic Routing Between Capsules</a>.</p>\n": "<h1>\u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd\u0da2\u0dcf\u0dbd \u0dc3\u0db8\u0d9f MNIST \u0d89\u0dbd\u0d9a\u0dca\u0d9a\u0db8\u0dca \u0dc0\u0dbb\u0dca\u0d9c\u0dd3\u0d9a\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</h1>\n<p>\u0db8\u0dd9\u0dbaPyTorch \u0dc3\u0db8\u0d9f MNIST \u0d89\u0dbd\u0d9a\u0dca\u0d9a\u0db8\u0dca \u0dc0\u0dbb\u0dca\u0d9c\u0dd3\u0d9a\u0dbb\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dc0\u0dd2\u0db1\u0dd3\u0dad \u0db4\u0dba\u0dd2\u0da7\u0ddd\u0da0\u0dca \u0d9a\u0dda\u0dad\u0dba\u0d9a\u0dd2. </p>\n<p>\u0db8\u0dd9\u0db8\u0dbd\u0dd2\u0db4\u0dd2\u0dba \u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0dc0\u0dd2\u0dc3\u0dca\u0dad\u0dbb \u0d9a\u0dbb \u0d87\u0dad\u0dd2 \u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf \u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dbb\u0dba\u0dd2 <a href=\"https://arxiv.org/abs/1710.09829\">\u0da9\u0dba\u0dd2\u0db1\u0db8\u0dd2\u0d9a\u0dca \u0dbb\u0dc0\u0dd4\u0da7\u0dd2\u0db1\u0dca \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0d85\u0dad\u0dbb</a>. </p>\n",
|
||||
"<h2>Model for classifying MNIST digits</h2>\n": "<h2>MNIST\u0d89\u0dbd\u0d9a\u0dca\u0d9a\u0db8\u0dca \u0dc0\u0dbb\u0dca\u0d9c\u0dd3\u0d9a\u0dbb\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba</h2>\n",
|
||||
"<p> <span translate=no>_^_0_^_</span> are the MNIST images, with shape <span translate=no>_^_1_^_</span></p>\n": "<p> <span translate=no>_^_0_^_</span> \u0dc4\u0dd0\u0da9\u0dba \u0dc3\u0dc4\u0dd2\u0dad MNIST \u0dbb\u0dd6\u0db4 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p> Configurations with MNIST data and Train & Validation setup</p>\n": "<p> MNIST\u0daf\u0dad\u0dca\u0dad \u0dc3\u0dc4 \u0daf\u0dd4\u0db8\u0dca\u0dbb\u0dd2\u0dba \u0dc3\u0dc4 \u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0dc3\u0dd0\u0d9a\u0dc3\u0dd4\u0db8 \u0dc3\u0db8\u0d9f \u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca</p>\n",
|
||||
"<p> Run the experiment</p>\n": "<p> \u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf\u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> This method gets called by the trainer</p>\n": "<p> \u0db8\u0dd9\u0db8\u0d9a\u0dca\u0dbb\u0db8\u0dba \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0d9a\u0dbb\u0dd4 \u0dc0\u0dd2\u0dc3\u0dd2\u0db1\u0dca \u0d9a\u0dd0\u0db3\u0dc0\u0db1\u0dd4 \u0dbd\u0dd0\u0db6\u0dda</p>\n",
|
||||
"<p>Calculate the total loss </p>\n": "<p>\u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab\u0d85\u0dbd\u0dcf\u0db7\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Call accuracy metric </p>\n": "<p>\u0d87\u0db8\u0dad\u0dd4\u0db8\u0dca\u0db1\u0dd2\u0dbb\u0dc0\u0daf\u0dca\u0dba\u0dad\u0dcf\u0dc0 \u0db8\u0dd9\u0da7\u0dca\u0dbb\u0dd2\u0d9a\u0dca </p>\n",
|
||||
"<p>Create a mask to maskout all the other capsules </p>\n": "<p>\u0d85\u0db1\u0dd9\u0d9a\u0dca\u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8 \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0dc0\u0dd9\u0dc3\u0dca\u0db8\u0dd4\u0dc4\u0dd4\u0dab \u0daf\u0dd3\u0db8\u0da7 \u0dc0\u0dd9\u0dc3\u0dca\u0db8\u0dd4\u0dc4\u0dd4\u0dab\u0d9a\u0dca \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>First convolution layer has <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> convolution kernels </p>\n": "<p>\u0db4\u0dc5\u0db8\u0dd4\u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> convolution \u0d9a\u0dbb\u0dca\u0db1\u0dbd\u0dca </p>\n",
|
||||
"<p>Get masks for reconstructioon </p>\n": "<p>\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba\u0dc3\u0db3\u0dc4\u0dcf \u0dc0\u0dd9\u0dc3\u0dca \u0db8\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Get the images and labels and move them to the model's device </p>\n": "<p>\u0db4\u0dd2\u0db1\u0dca\u0dad\u0dd6\u0dbb\u0dc3\u0dc4 \u0dbd\u0dda\u0db6\u0dbd\u0dca \u0dbd\u0db6\u0dcf\u0d9c\u0dd9\u0db1 \u0d92\u0dc0\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0dda \u0d8b\u0db4\u0dcf\u0d82\u0d9c\u0dba\u0da7 \u0d9c\u0dd9\u0db1 \u0dba\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Increment step in training mode </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0db8\u0dcf\u0daf\u0dd2\u0dbd\u0dd2\u0dba\u0dda \u0dc0\u0dbb\u0dca\u0db0\u0d9a \u0db4\u0dd2\u0dba\u0dc0\u0dbb </p>\n",
|
||||
"<p>Log parameters and gradients </p>\n": "<p>\u0dbd\u0ddc\u0d9c\u0dca\u0db4\u0dbb\u0dcf\u0db8\u0dd2\u0dad\u0dd3\u0db1\u0dca \u0dc3\u0dc4 \u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dd2\u0d9a </p>\n",
|
||||
"<p>Mask the digit capsules to get only the capsule that made the prediction and take it through decoder to get reconstruction </p>\n": "<p>\u0d85\u0db1\u0dcf\u0dc0\u0dd0\u0d9a\u0dd2\u0dba\u0d9a\u0dc5 \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd\u0dba \u0db4\u0db8\u0dab\u0d9a\u0dca \u0dbd\u0db6\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d89\u0dbd\u0d9a\u0dca\u0d9a\u0db8\u0dca \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd Mask \u0d9a\u0dbb \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0dbd\u0db6\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dc0\u0dd2\u0d9a\u0dda\u0dad\u0d9a\u0dba \u0dc4\u0dbb\u0dc4\u0dcf \u0d91\u0dba \u0dbb\u0dd0\u0d9c\u0dd9\u0db1 \u0dba\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Pass through the first convolution layer. Output of this layer has shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db4\u0dc5\u0db8\u0dd4\u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dad\u0dbb\u0dba \u0dc4\u0dbb\u0dc4\u0dcf \u0d9c\u0db8\u0db1\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1. \u0db8\u0dd9\u0db8 \u0dc3\u0dca\u0dae\u0dbb\u0dba\u0dda \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1\u0dba \u0dc4\u0dd0\u0da9\u0dba \u0d87\u0dad <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Pass through the second convolution layer. Output of this has shape <span translate=no>_^_0_^_</span>. <em>Note that this layer has a stride length of <span translate=no>_^_1_^_</span></em>. </p>\n": "<p>\u0daf\u0dd9\u0dc0\u0db1\u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dad\u0dbb\u0dba \u0dc4\u0dbb\u0dc4\u0dcf \u0d9c\u0db8\u0db1\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1. \u0db8\u0dd9\u0db8 \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1\u0dba \u0dc4\u0dd0\u0da9\u0dba \u0d87\u0dad <span translate=no>_^_0_^_</span>. <em>\u0db8\u0dd9\u0db8\u0dc3\u0dca\u0dae\u0dbb\u0dba\u0da7 \u0daf\u0dd2\u0d9c\u0dd4 \u0daf\u0dd2\u0d9c\u0d9a\u0dca \u0d87\u0dad\u0dd2 \u0db6\u0dc0 \u0dc3\u0dbd\u0d9a\u0db1\u0dca\u0db1 <span translate=no>_^_1_^_</span></em>. </p>\n",
|
||||
"<p>Print losses and accuracy to screen </p>\n": "<p>\u0db4\u0dcf\u0da9\u0dd4\u0dc3\u0dc4 \u0db1\u0dd2\u0dbb\u0dc0\u0daf\u0dca\u0dba\u0dad\u0dcf\u0dc0 \u0dad\u0dd2\u0dbb\u0dba\u0da7 \u0db8\u0dd4\u0daf\u0dca\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Reshape the reconstruction to match the image dimensions </p>\n": "<p>\u0dbb\u0dd6\u0db4\u0db8\u0dcf\u0db1\u0dba\u0db1\u0dca \u0d9c\u0dd0\u0dbd\u0db4\u0dd9\u0db1 \u0db4\u0dbb\u0dd2\u0daf\u0dd2 \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0db1\u0dd0\u0dc0\u0dad \u0dc3\u0d9a\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Resize and permutate to get the capsules </p>\n": "<p>\u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd\u0dbd\u0db6\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba \u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dbb permutate \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Routing layer gets the <span translate=no>_^_0_^_</span> primary capsules and produces <span translate=no>_^_1_^_</span> capsules. Each of the primary capsules have <span translate=no>_^_2_^_</span> features, while output capsules (Digit Capsules) have <span translate=no>_^_3_^_</span> features. The routing algorithm iterates <span translate=no>_^_4_^_</span> times. </p>\n": "<p>\u0dbb\u0dc0\u0dd4\u0da7\u0dd2\u0db1\u0dca\u0dc3\u0dca\u0dad\u0dbb\u0dba <span translate=no>_^_0_^_</span> \u0db4\u0dca\u0dbb\u0dcf\u0dae\u0db8\u0dd2\u0d9a \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0dbd\u0dd0\u0db6\u0dd9\u0db1 \u0d85\u0dad\u0dbb <span translate=no>_^_1_^_</span> \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0db1\u0dd2\u0dc2\u0dca\u0db4\u0dcf\u0daf\u0db1\u0dba \u0d9a\u0dbb\u0dba\u0dd2. \u0dc3\u0dd1\u0db8 \u0db4\u0dca\u0dbb\u0dcf\u0dae\u0db8\u0dd2\u0d9a \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd\u0dba\u0d9a\u0db8 <span translate=no>_^_2_^_</span> \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0d87\u0dad\u0dd2 \u0d85\u0dad\u0dbb \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1 \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd (\u0d89\u0dbd\u0d9a\u0dca\u0d9a\u0db8\u0dca \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd) <span translate=no>_^_3_^_</span> \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0d87\u0dad. \u0dbb\u0dc0\u0dd4\u0da7\u0dd2\u0db1\u0dca \u0d87\u0dbd\u0dca\u0d9c\u0ddc\u0dbb\u0dd2\u0dad\u0db8 <span translate=no>_^_4_^_</span> \u0dc0\u0dbb\u0d9a\u0dca \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0dc0\u0dda. </p>\n",
|
||||
"<p>Run the model </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0db0\u0dcf\u0dc0\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Set the model </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Set the model mode </p>\n": "<p>\u0d86\u0daf\u0dbb\u0dca\u0dc1\u0db4\u0dca\u0dbb\u0d9a\u0dcf\u0dbb\u0dba \u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Squash the capsules </p>\n": "<p>\u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd\u0dc3\u0dca\u0d9a\u0ddc\u0dc2\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Take them through the router to get digit capsules. This has shape <span translate=no>_^_0_^_</span>. </p>\n": "<p>\u0d89\u0dbd\u0d9a\u0dca\u0d9a\u0db8\u0dca\u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0dbd\u0db6\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dbb\u0dc0\u0dd4\u0da7\u0dbb\u0dba \u0dc4\u0dbb\u0dc4\u0dcf \u0d92\u0dc0\u0dcf \u0dbb\u0dd0\u0d9c\u0dd9\u0db1 \u0dba\u0db1\u0dca\u0db1. \u0db8\u0dd9\u0dba \u0dc4\u0dd0\u0da9\u0dba \u0d87\u0dad <span translate=no>_^_0_^_</span>. </p>\n",
|
||||
"<p>The prediction by the capsule network is the capsule with longest length </p>\n": "<p>\u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd\u0da2\u0dcf\u0dbd\u0dba \u0dc0\u0dd2\u0dc3\u0dd2\u0db1\u0dca \u0db4\u0dd4\u0dbb\u0ddd\u0d9a\u0dae\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dd4 \u0dbd\u0db6\u0db1\u0dca\u0db1\u0dda \u0daf\u0dd2\u0d9c\u0db8 \u0daf\u0dd2\u0d9c \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd\u0dba\u0dba\u0dd2 </p>\n",
|
||||
"<p>The second layer (Primary Capsules) s a convolutional capsule layer with <span translate=no>_^_0_^_</span> channels of convolutional <span translate=no>_^_1_^_</span> capsules (<span translate=no>_^_2_^_</span> features per capsule). That is, each primary capsule contains 8 convolutional units with a 9 \u00d7 9 kernel and a stride of 2. In order to implement this we create a convolutional layer with <span translate=no>_^_3_^_</span> channels and reshape and permutate its output to get the capsules of <span translate=no>_^_4_^_</span> features each. </p>\n": "<p>\u0daf\u0dd9\u0dc0\u0db1\u0dc3\u0dca\u0dae\u0dbb\u0dba (\u0db4\u0dca\u0dbb\u0dcf\u0dae\u0db8\u0dd2\u0d9a \u0d9a\u0dbb\u0dbd\u0dca) s convolutional \u0d9a\u0dbb\u0dbd\u0dca <span translate=no>_^_0_^_</span> \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf (\u0d9a\u0dbb\u0dbd\u0d9a\u0dca \u0d85\u0db1\u0dd4\u0dc0<span translate=no>_^_2_^_</span> \u0dbd\u0d9a\u0dca\u0dc2\u0dab) \u0dc3\u0db8\u0d9c convolutional <span translate=no>_^_1_^_</span> \u0d9a\u0dbb\u0dbd\u0d9a\u0dca \u0dc3\u0dca\u0dae\u0dbb\u0dba. \u0d91\u0db1\u0db8\u0dca, \u0dc3\u0dd1\u0db8 \u0db4\u0dca\u0dbb\u0dcf\u0dae\u0db8\u0dd2\u0d9a \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd\u0dba\u0d9a\u0db8 9 \u00d7 9 \u0d9a\u0dbb\u0dca\u0db1\u0dbd\u0dba\u0d9a\u0dca \u0dc3\u0dc4 2 \u0d9a \u0d89\u0dbb\u0dd2 \u0dc3\u0dc4\u0dd2\u0dad \u0dc3\u0d82\u0dba\u0dd4\u0d9a\u0dca\u0dad \u0d92\u0d9a\u0d9a 8 \u0d9a\u0dca \u0d85\u0da9\u0d82\u0d9c\u0dd4 \u0dc0\u0dda. \u0db8\u0dd9\u0dba \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dd2 <span translate=no>_^_3_^_</span> \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0dc3\u0dc4\u0dd2\u0dad \u0dc3\u0d82\u0dc0\u0dc4\u0db1 \u0dad\u0da7\u0dca\u0da7\u0dd4\u0dc0\u0d9a\u0dca \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca <span translate=no>_^_4_^_</span> \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0dbd\u0db6\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d91\u0dc4\u0dd2 \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1\u0dba \u0db1\u0dd0\u0dc0\u0dad \u0dc3\u0d9a\u0dc3\u0dca \u0d9a\u0dbb \u0db4\u0dbb\u0dd2\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0d9a\u0dbb\u0db8\u0dd4. </p>\n",
|
||||
"<p>This is the decoder mentioned in the paper. It takes the outputs of the <span translate=no>_^_0_^_</span> digit capsules, each with <span translate=no>_^_1_^_</span> features to reproduce the image. It goes through linear layers of sizes <span translate=no>_^_2_^_</span> and <span translate=no>_^_3_^_</span> with <span translate=no>_^_4_^_</span> activations. </p>\n": "<p>\u0db8\u0dd9\u0db8\u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0dc3\u0db3\u0dc4\u0db1\u0dca \u0dc0\u0dd2\u0d9a\u0dda\u0dad\u0d9a\u0dba \u0dc0\u0dda. <span translate=no>_^_0_^_</span> \u0d91\u0dba \u0d89\u0dbd\u0d9a\u0dca\u0d9a\u0db8\u0dca \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0dc0\u0dbd \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1\u0dba\u0db1\u0dca \u0d9c\u0db1\u0dd3, \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dbb\u0dd6\u0db4\u0dba \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0db1\u0dd2\u0dc2\u0dca\u0db4\u0dcf\u0daf\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf <span translate=no>_^_1_^_</span> \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0d87\u0dad. \u0d91\u0dba \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0dbb\u0dda\u0d9b\u0dd3\u0dba \u0dc3\u0dca\u0dae\u0dbb \u0dc4\u0dbb\u0dc4\u0dcf <span translate=no>_^_2_^_</span> \u0dc3\u0dc4 <span translate=no>_^_4_^_</span> \u0dc3\u0d9a\u0dca\u0dbb\u0dd2\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca <span translate=no>_^_3_^_</span> \u0dc3\u0db8\u0d9f \u0d9c\u0db8\u0db1\u0dca \u0d9a\u0dbb\u0dba\u0dd2. </p>\n",
|
||||
"<p>We need to set the metrics to calculate them for the epoch for training and validation </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0\u0dc3\u0dc4 \u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d91\u0db4\u0ddd\u0da0\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0d92\u0dc0\u0dcf \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dca\u0dbb\u0db8\u0dd2\u0dad\u0dd2\u0d9a \u0dc3\u0d9a\u0dc3\u0dca \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4\u0dba </p>\n",
|
||||
"<p>Whether to log activations </p>\n": "<p>\u0dc3\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca \u0dbd\u0ddc\u0d9c\u0dca \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4\u0daf \u0dba\u0db1\u0dca\u0db1 </p>\n",
|
||||
"Classify MNIST digits with Capsule Networks": "\u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0da2\u0dcf\u0dbd \u0dc3\u0db8\u0d9f MNIST \u0d89\u0dbd\u0d9a\u0dca\u0d9a\u0db8\u0dca \u0dc0\u0dbb\u0dca\u0d9c\u0dd3\u0d9a\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1",
|
||||
"Code for training Capsule Networks on MNIST dataset": "MNIST \u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0dda \u0d9a\u0dd0\u0db4\u0dca\u0dc3\u0dd2\u0dba\u0dd4\u0dbd \u0da2\u0dcf\u0dbd \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0dda\u0dad\u0dba"
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"<h1>Classify MNIST digits with Capsule Networks</h1>\n<p>This is an annotated PyTorch code to classify MNIST digits with PyTorch.</p>\n<p>This paper implements the experiment described in paper <a href=\"https://arxiv.org/abs/1710.09829\">Dynamic Routing Between Capsules</a>.</p>\n": "<h1>\u4f7f\u7528\u80f6\u56ca\u7f51\u7edc\u5bf9 MNIST \u6570\u5b57\u8fdb\u884c\u5206\u7c7b</h1>\n<p>\u8fd9\u662f\u4e00\u4e2a\u5e26\u6ce8\u91ca\u7684 PyTorch \u4ee3\u7801\uff0c\u7528\u4e8e\u4f7f\u7528 PyTorch \u5bf9 MNIST \u6570\u5b57\u8fdb\u884c\u5206\u7c7b\u3002</p>\n<p>\u672c\u6587\u5b9e\u65bd\u4e86\u8bba\u6587\u300a<a href=\"https://arxiv.org/abs/1710.09829\">\u80f6\u56ca\u95f4\u52a8\u6001\u8def\u7531</a>\u300b\u4e2d\u63cf\u8ff0\u7684\u5b9e\u9a8c\u3002</p>\n",
|
||||
"<h2>Model for classifying MNIST digits</h2>\n": "<h2>\u7528\u4e8e\u5bf9 MNIST \u6570\u5b57\u8fdb\u884c\u5206\u7c7b\u7684\u6a21\u578b</h2>\n",
|
||||
"<p> <span translate=no>_^_0_^_</span> are the MNIST images, with shape <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u662f MNIST \u56fe\u50cf\uff0c\u6709\u5f62\u72b6<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p> Configurations with MNIST data and Train & Validation setup</p>\n": "<p>\u4f7f\u7528 MNIST \u6570\u636e\u548c\u8bad\u7ec3\u4e0e\u9a8c\u8bc1\u8bbe\u7f6e\u7684\u914d\u7f6e</p>\n",
|
||||
"<p> Run the experiment</p>\n": "<p>\u8fd0\u884c\u5b9e\u9a8c</p>\n",
|
||||
"<p> This method gets called by the trainer</p>\n": "<p>\u8fd9\u4e2a\u65b9\u6cd5\u88ab\u8bad\u7ec3\u5668\u8c03\u7528</p>\n",
|
||||
"<p>Calculate the total loss </p>\n": "<p>\u8ba1\u7b97\u603b\u635f\u5931</p>\n",
|
||||
"<p>Call accuracy metric </p>\n": "<p>\u547c\u53eb\u51c6\u786e\u5ea6\u6307\u6807</p>\n",
|
||||
"<p>Create a mask to maskout all the other capsules </p>\n": "<p>\u521b\u5efa\u906e\u7f69\u4ee5\u906e\u76d6\u6240\u6709\u5176\u4ed6\u80f6\u56ca</p>\n",
|
||||
"<p>First convolution layer has <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> convolution kernels </p>\n": "<p>\u7b2c\u4e00\u4e2a\u5377\u79ef\u5c42\u6709<span translate=no>_^_0_^_</span>\uff0c<span translate=no>_^_1_^_</span>\u5377\u79ef\u5185\u6838</p>\n",
|
||||
"<p>Get masks for reconstructioon </p>\n": "<p>\u83b7\u53d6\u7528\u4e8e\u91cd\u5efa\u7684\u53e3\u7f69</p>\n",
|
||||
"<p>Get the images and labels and move them to the model's device </p>\n": "<p>\u83b7\u53d6\u56fe\u50cf\u548c\u6807\u7b7e\u5e76\u5c06\u5176\u79fb\u52a8\u5230\u6a21\u7279\u7684\u8bbe\u5907\u4e0a</p>\n",
|
||||
"<p>Increment step in training mode </p>\n": "<p>\u5728\u8bad\u7ec3\u6a21\u5f0f\u4e2d\u589e\u52a0\u6b65\u6570</p>\n",
|
||||
"<p>Log parameters and gradients </p>\n": "<p>\u65e5\u5fd7\u53c2\u6570\u548c\u68af\u5ea6</p>\n",
|
||||
"<p>Mask the digit capsules to get only the capsule that made the prediction and take it through decoder to get reconstruction </p>\n": "<p>\u63a9\u76d6\u6570\u5b57\u80f6\u56ca\u4ee5\u4ec5\u83b7\u5f97\u505a\u51fa\u9884\u6d4b\u7684\u80f6\u56ca\uff0c\u7136\u540e\u5c06\u5176\u901a\u8fc7\u89e3\u7801\u5668\u8fdb\u884c\u91cd\u5efa</p>\n",
|
||||
"<p>Pass through the first convolution layer. Output of this layer has shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u7a7f\u8fc7\u7b2c\u4e00\u4e2a\u5377\u79ef\u5c42\u3002\u6b64\u56fe\u5c42\u7684\u8f93\u51fa\u5177\u6709\u5f62\u72b6<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Pass through the second convolution layer. Output of this has shape <span translate=no>_^_0_^_</span>. <em>Note that this layer has a stride length of <span translate=no>_^_1_^_</span></em>. </p>\n": "<p>\u7a7f\u8fc7\u7b2c\u4e8c\u4e2a\u5377\u79ef\u5c42\u3002\u8fd9\u4e2a\u7684\u8f93\u51fa\u6709\u5f62\u72b6<span translate=no>_^_0_^_</span>\u3002<em>\u8bf7\u6ce8\u610f\uff0c\u6b64\u56fe\u5c42\u7684\u6b65\u957f\u4e3a<span translate=no>_^_1_^_</span></em>\u3002</p>\n",
|
||||
"<p>Print losses and accuracy to screen </p>\n": "<p>\u5370\u5237\u635f\u8017\u548c\u5c4f\u5e55\u7cbe\u5ea6</p>\n",
|
||||
"<p>Reshape the reconstruction to match the image dimensions </p>\n": "<p>\u91cd\u5851\u91cd\u5efa\u4ee5\u5339\u914d\u56fe\u50cf\u5c3a\u5bf8</p>\n",
|
||||
"<p>Resize and permutate to get the capsules </p>\n": "<p>\u8c03\u6574\u5927\u5c0f\u5e76\u6392\u5217\u4ee5\u83b7\u5f97\u80f6\u56ca</p>\n",
|
||||
"<p>Routing layer gets the <span translate=no>_^_0_^_</span> primary capsules and produces <span translate=no>_^_1_^_</span> capsules. Each of the primary capsules have <span translate=no>_^_2_^_</span> features, while output capsules (Digit Capsules) have <span translate=no>_^_3_^_</span> features. The routing algorithm iterates <span translate=no>_^_4_^_</span> times. </p>\n": "<p>\u8def\u7531\u5c42\u83b7\u53d6<span translate=no>_^_0_^_</span>\u4e3b\u80f6\u56ca\u5e76\u751f\u6210<span translate=no>_^_1_^_</span>\u80f6\u56ca\u3002\u6bcf\u4e2a\u4e3b\u80f6\u56ca\u90fd\u6709<span translate=no>_^_2_^_</span>\u7279\u5f81\uff0c\u800c\u8f93\u51fa\u80f6\u56ca\uff08Digit Capsules\uff09\u90fd\u6709<span translate=no>_^_3_^_</span>\u7279\u5f81\u3002\u8def\u7531\u7b97\u6cd5\u4f1a\u8fed\u4ee3<span translate=no>_^_4_^_</span>\u6b21\u6570\u3002</p>\n",
|
||||
"<p>Run the model </p>\n": "<p>\u8fd0\u884c\u6a21\u578b</p>\n",
|
||||
"<p>Set the model </p>\n": "<p>\u8bbe\u7f6e\u6a21\u578b</p>\n",
|
||||
"<p>Set the model mode </p>\n": "<p>\u8bbe\u7f6e\u6a21\u578b\u6a21\u5f0f</p>\n",
|
||||
"<p>Squash the capsules </p>\n": "<p>\u6324\u538b\u80f6\u56ca</p>\n",
|
||||
"<p>Take them through the router to get digit capsules. This has shape <span translate=no>_^_0_^_</span>. </p>\n": "<p>\u5e26\u4ed6\u4eec\u901a\u8fc7\u8def\u7531\u5668\u83b7\u5f97\u6570\u5b57\u80f6\u56ca\u3002\u8fd9\u6709\u5f62\u72b6<span translate=no>_^_0_^_</span>\u3002</p>\n",
|
||||
"<p>The prediction by the capsule network is the capsule with longest length </p>\n": "<p>\u80f6\u56ca\u7f51\u7edc\u7684\u9884\u6d4b\u662f\u957f\u5ea6\u6700\u957f\u7684\u80f6\u56ca</p>\n",
|
||||
"<p>The second layer (Primary Capsules) s a convolutional capsule layer with <span translate=no>_^_0_^_</span> channels of convolutional <span translate=no>_^_1_^_</span> capsules (<span translate=no>_^_2_^_</span> features per capsule). That is, each primary capsule contains 8 convolutional units with a 9 \u00d7 9 kernel and a stride of 2. In order to implement this we create a convolutional layer with <span translate=no>_^_3_^_</span> channels and reshape and permutate its output to get the capsules of <span translate=no>_^_4_^_</span> features each. </p>\n": "<p>\u7b2c\u4e8c\u5c42\uff08Primary Capsules\uff09\u662f\u5377\u79ef\u80f6\u56ca\u5c42\uff0c\u5e26\u6709\u5377\u79ef<span translate=no>_^_1_^_</span>\u80f6\u56ca<span translate=no>_^_0_^_</span>\u901a\u9053\uff08\u6bcf\u4e2a\u80f6\u56ca<span translate=no>_^_2_^_</span>\u7684\u7279\u5f81\uff09\u3002\u4e5f\u5c31\u662f\u8bf4\uff0c\u6bcf\u4e2a\u4e3b\u80f6\u56ca\u5305\u542b 8 \u4e2a\u5377\u79ef\u5355\u4f4d\uff0c\u5185\u6838\u4e3a 9\u00d79\uff0c\u6b65\u5e45\u4e3a 2\u3002\u4e3a\u4e86\u5b9e\u73b0\u8fd9\u4e00\u70b9\uff0c\u6211\u4eec\u521b\u5efa\u4e86\u4e00\u4e2a\u5e26\u6709<span translate=no>_^_3_^_</span>\u901a\u9053\u7684\u5377\u79ef\u5c42\uff0c\u5e76\u5bf9\u5176\u8f93\u51fa\u8fdb\u884c\u6574\u5f62\u548c\u6392\u5217\uff0c\u4ee5\u83b7\u5f97\u6bcf\u4e2a<span translate=no>_^_4_^_</span>\u7279\u5f81\u7684\u80f6\u56ca\u3002</p>\n",
|
||||
"<p>This is the decoder mentioned in the paper. It takes the outputs of the <span translate=no>_^_0_^_</span> digit capsules, each with <span translate=no>_^_1_^_</span> features to reproduce the image. It goes through linear layers of sizes <span translate=no>_^_2_^_</span> and <span translate=no>_^_3_^_</span> with <span translate=no>_^_4_^_</span> activations. </p>\n": "<p>\u8fd9\u662f\u672c\u6587\u4e2d\u63d0\u5230\u7684\u89e3\u7801\u5668\u3002\u5b83\u91c7\u7528<span translate=no>_^_0_^_</span>\u6570\u5b57\u80f6\u56ca\u7684\u8f93\u51fa\uff0c\u6bcf\u4e2a\u80f6\u56ca\u90fd\u6709\u91cd\u73b0\u56fe\u50cf\u7684<span translate=no>_^_1_^_</span>\u529f\u80fd\u3002\u5b83\u7a7f\u8fc7\u5927\u5c0f<span translate=no>_^_2_^_</span>\u548c<span translate=no>_^_4_^_</span>\u6fc0\u6d3b<span translate=no>_^_3_^_</span>\u7684\u7ebf\u6027\u5c42\u3002</p>\n",
|
||||
"<p>We need to set the metrics to calculate them for the epoch for training and validation </p>\n": "<p>\u6211\u4eec\u9700\u8981\u8bbe\u7f6e\u6307\u6807\u6765\u8ba1\u7b97\u8bad\u7ec3\u548c\u9a8c\u8bc1\u65f6\u671f\u7684\u6307\u6807</p>\n",
|
||||
"<p>Whether to log activations </p>\n": "<p>\u662f\u5426\u8bb0\u5f55\u6fc0\u6d3b\u6b21\u6570</p>\n",
|
||||
"Classify MNIST digits with Capsule Networks": "\u4f7f\u7528\u80f6\u56ca\u7f51\u7edc\u5bf9 MNIST \u6570\u5b57\u8fdb\u884c\u5206\u7c7b",
|
||||
"Code for training Capsule Networks on MNIST dataset": "\u5728 MNIST \u6570\u636e\u96c6\u4e0a\u8bad\u7ec3\u80f6\u56ca\u7f51\u7edc\u7684\u4ee3\u7801"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/capsule_networks/index.html\">Capsule Networks</a></h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation/tutorial of <a href=\"https://arxiv.org/abs/1710.09829\">Dynamic Routing Between Capsules</a>.</p>\n<p>Capsule network is a neural network architecture that embeds features as capsules and routes them with a voting mechanism to next layer of capsules.</p>\n<p>Unlike in other implementations of models, we've included a sample, because it is difficult to understand some concepts with just the modules. <a href=\"mnist.html\">This is the annotated code for a model that uses capsules to classify MNIST dataset</a></p>\n<p>This file holds the implementations of the core modules of Capsule Networks.</p>\n<p>I used <a href=\"https://github.com/jindongwang/Pytorch-CapsuleNet\">jindongwang/Pytorch-CapsuleNet</a> to clarify some confusions I had with the paper.</p>\n<p>Here's a notebook for training a Capsule Network on MNIST dataset.</p>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/capsule_networks/mnist.ipynb\"><span translate=no>_^_0_^_</span></a> </p>\n": "<h1><a href=\"https://nn.labml.ai/capsule_networks/index.html\">\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af</a></h1>\n<p><a href=\"https://arxiv.org/abs/1710.09829\">\u3053\u308c\u306f\u3001<a href=\"https://pytorch.org\">\u30ab\u30d7\u30bb\u30eb\u9593\u306e\u52d5\u7684\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u306ePyTorch\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3067\u3059</a>\u3002</a></p>\n<p>\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306f\u3001\u30d5\u30a3\u30fc\u30c1\u30e3\u3092\u30ab\u30d7\u30bb\u30eb\u3068\u3057\u3066\u57cb\u3081\u8fbc\u307f\u3001\u6295\u7968\u30e1\u30ab\u30cb\u30ba\u30e0\u3092\u4f7f\u7528\u3057\u3066\u6b21\u306e\u30ab\u30d7\u30bb\u30eb\u5c64\u306b\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u3059\u308b\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u3067\u3059\u3002</p>\n<p>\u4ed6\u306e\u30e2\u30c7\u30eb\u306e\u5b9f\u88c5\u3068\u306f\u7570\u306a\u308a\u3001\u30e2\u30b8\u30e5\u30fc\u30eb\u3060\u3051\u3067\u306f\u4e00\u90e8\u306e\u6982\u5ff5\u3092\u7406\u89e3\u3059\u308b\u306e\u304c\u96e3\u3057\u3044\u305f\u3081\u3001\u30b5\u30f3\u30d7\u30eb\u3092\u7528\u610f\u3057\u3066\u3044\u307e\u3059\u3002</p><a href=\"mnist.html\">\u3053\u308c\u306f\u3001\u30ab\u30d7\u30bb\u30eb\u3092\u4f7f\u7528\u3057\u3066 MNIST \u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3092\u5206\u985e\u3059\u308b\u30e2\u30c7\u30eb\u306e\u6ce8\u91c8\u4ed8\u304d\u30b3\u30fc\u30c9\u3067\u3059\u3002</a>\n<p>\u3053\u306e\u30d5\u30a1\u30a4\u30eb\u306b\u306f\u3001Capsule Networks \u306e\u30b3\u30a2\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u5b9f\u88c5\u304c\u683c\u7d0d\u3055\u308c\u3066\u3044\u307e\u3059\u3002</p>\n<p><a href=\"https://github.com/jindongwang/Pytorch-CapsuleNet\">Jindongwang/Pytorch-Capsulenet\u3092\u4f7f\u3063\u3066</a>\u3001\u8ad6\u6587\u306b\u95a2\u3059\u308b\u6df7\u4e71\u3092\u89e3\u6d88\u3057\u307e\u3057\u305f\u3002</p>\n<p>\u3053\u308c\u306f\u3001MNIST\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3067\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3059\u308b\u305f\u3081\u306e\u30ce\u30fc\u30c8\u30d6\u30c3\u30af\u3067\u3059\u3002</p>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/capsule_networks/mnist.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"Capsule Networks": "\u30ab\u30d7\u30bb\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/capsule_networks/index.html\">Capsule Networks</a></h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation/tutorial of <a href=\"https://arxiv.org/abs/1710.09829\">Dynamic Routing Between Capsules</a>.</p>\n<p>Capsule network is a neural network architecture that embeds features as capsules and routes them with a voting mechanism to next layer of capsules.</p>\n<p>Unlike in other implementations of models, we've included a sample, because it is difficult to understand some concepts with just the modules. <a href=\"mnist.html\">This is the annotated code for a model that uses capsules to classify MNIST dataset</a></p>\n<p>This file holds the implementations of the core modules of Capsule Networks.</p>\n<p>I used <a href=\"https://github.com/jindongwang/Pytorch-CapsuleNet\">jindongwang/Pytorch-CapsuleNet</a> to clarify some confusions I had with the paper.</p>\n<p>Here's a notebook for training a Capsule Network on MNIST dataset.</p>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/capsule_networks/mnist.ipynb\"><span translate=no>_^_0_^_</span></a> </p>\n": "<h1><a href=\"https://nn.labml.ai/capsule_networks/index.html\">\u80f6\u56ca\u7f51\u7edc</a></h1>\n<p>\u8fd9\u662f<a href=\"https://arxiv.org/abs/1710.09829\">\u80f6\u56ca\u95f4\u52a8\u6001\u8def\u7531</a>\u7684 <a href=\"https://pytorch.org\">PyTorch</a> \u5b9e\u73b0/\u6559\u7a0b\u3002</p>\n<p>Capsule \u7f51\u7edc\u662f\u4e00\u79cd\u795e\u7ecf\u7f51\u7edc\u67b6\u6784\uff0c\u5b83\u4ee5\u80f6\u56ca\u7684\u5f62\u5f0f\u5d4c\u5165\u7279\u5f81\uff0c\u5e76\u901a\u8fc7\u6295\u7968\u673a\u5236\u5c06\u5b83\u4eec\u8def\u7531\u5230\u4e0b\u4e00\u5c42\u80f6\u56ca\u3002</p>\n<p>\u4e0e\u5176\u4ed6\u6a21\u578b\u5b9e\u73b0\u4e0d\u540c\uff0c\u6211\u4eec\u63d0\u4f9b\u4e86\u4e00\u4e2a\u793a\u4f8b\uff0c\u56e0\u4e3a\u4ec5\u4f7f\u7528\u6a21\u5757\u5f88\u96be\u7406\u89e3\u67d0\u4e9b\u6982\u5ff5\u3002<a href=\"mnist.html\">\u8fd9\u662f\u4f7f\u7528\u80f6\u56ca\u5bf9 MNIST \u6570\u636e\u96c6\u8fdb\u884c\u5206\u7c7b\u7684\u6a21\u578b\u7684\u5e26\u6ce8\u91ca\u7684\u4ee3\u7801</a></p>\n<p>\u8be5\u6587\u4ef6\u5305\u542b\u4e86 Capsule Networks \u6838\u5fc3\u6a21\u5757\u7684\u5b9e\u73b0\u3002</p>\n<p>\u6211\u7528 <a href=\"https://github.com/jindongwang/Pytorch-CapsuleNet\">jindongwang/pytorch-CapsuleNet</a> \u6765\u6f84\u6e05\u6211\u5bf9\u8fd9\u7bc7\u8bba\u6587\u7684\u4e00\u4e9b\u56f0\u60d1\u3002</p>\n<p>\u8fd9\u662f\u4e00\u672c\u5728 MNIST \u6570\u636e\u96c6\u4e0a\u8bad\u7ec3 Capsule \u7f51\u7edc\u7684\u7b14\u8bb0\u672c\u3002</p>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/capsule_networks/mnist.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"Capsule Networks": "\u80f6\u56ca\u7f51\u7edc"
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
{
|
||||
"<h1>Regret Minimization in Games with Incomplete Information (CFR)</h1>\n": "<h1>\u60c5\u5831\u304c\u4e0d\u5b8c\u5168\u306a\u30b2\u30fc\u30e0\u306b\u304a\u3051\u308b\u5f8c\u6094\u6700\u5c0f\u5316 (CFR)</h1>\n",
|
||||
"<h2>Calculate strategy</h2>\n<p>Calculate current strategy using <a href=\"#RegretMatching\">regret matching</a>.</p>\n<span translate=no>_^_0_^_</span><p>where <span translate=no>_^_1_^_</span></p>\n": "<h2>\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u306e\u8a08\u7b97</h2>\n<p><a href=\"#RegretMatching\">\u30ea\u30b0\u30ec\u30c3\u30c8\u30de\u30c3\u30c1\u30f3\u30b0\u3092\u4f7f\u7528\u3057\u3066\u73fe\u5728\u306e\u6226\u7565\u3092\u8a08\u7b97\u3057\u307e\u3059</a>\u3002</p>\n<span translate=no>_^_0_^_</span><p>\u3069\u3053 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<h2>Counterfactual Regret Minimization (CFR) Algorithm</h2>\n<p>We do chance sampling (<strong>CS</strong>) where all the chance events (nodes) are sampled and all other events (nodes) are explored.</p>\n<p>We can ignore the term <span translate=no>_^_0_^_</span> since it's the same for all terminal histories since we are doing chance sampling and it cancels out when calculating strategy (common in numerator and denominator).</p>\n": "<h2>\u53cd\u4e8b\u5b9f\u306b\u57fa\u3065\u304f\u5f8c\u6094\u6700\u5c0f\u5316 (CFR) \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0</h2>\n<p>\u3059\u3079\u3066\u306e\u30c1\u30e3\u30f3\u30b9\u30a4\u30d9\u30f3\u30c8\uff08\u30ce\u30fc\u30c9\uff09\u3092\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057\u3001\u4ed6\u306e\u3059\u3079\u3066\u306e\u30a4\u30d9\u30f3\u30c8\uff08\u30ce\u30fc\u30c9\uff09\u3092\u8abf\u67fb\u3059\u308b\u30c1\u30e3\u30f3\u30b9\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\uff08<strong>CS</strong>\uff09\u3092\u884c\u3044\u307e\u3059\u3002</p>\n<p>\u3053\u306e\u7528\u8a9e\u306f\u7121\u8996\u3067\u304d\u307e\u3059\u3002<span translate=no>_^_0_^_</span>\u306a\u305c\u306a\u3089\u3001\u30c1\u30e3\u30f3\u30b9\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3092\u884c\u3063\u3066\u3044\u3066\u3001\uff08\u5206\u5b50\u3068\u5206\u6bcd\u3067\u5171\u901a\uff09\u6226\u7565\u3092\u8a08\u7b97\u3059\u308b\u3068\u304d\u306b\u76f8\u6bba\u3055\u308c\u3066\u3057\u307e\u3046\u306e\u3067\u3001\u3059\u3079\u3066\u306e\u7aef\u672b\u5c65\u6b74\u3067\u540c\u3058\u3060\u304b\u3089\u3067\u3059\u3002</p>\n",
|
||||
"<h2>Get average strategy</h2>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h2>\u5e73\u5747\u7684\u306a\u6226\u7565\u3092\u53d6\u5f97</h2>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<h2>Introduction</h2>\n": "<h2>\u306f\u3058\u3081\u306b</h2>\n",
|
||||
"<h3><a href=\"#History\">History</a></h3>\n": "<h3><a href=\"#History\">\u6b74\u53f2</a></h3>\n",
|
||||
"<h3><a href=\"#InfoSet\">Information Set <span translate=no>_^_0_^_</span></a></h3>\n": "<h3><a href=\"#InfoSet\">\u60c5\u5831\u30bb\u30c3\u30c8 <span translate=no>_^_0_^_</span></a></h3>\n",
|
||||
"<h3>Action</h3>\n": "<h3>\u30a2\u30af\u30b7\u30e7\u30f3</h3>\n",
|
||||
"<h3>Configurable CFR module</h3>\n": "<h3>\u8a2d\u5b9a\u53ef\u80fd\u306a CFR \u30e2\u30b8\u30e5\u30fc\u30eb</h3>\n",
|
||||
"<h3>Counterfactual regret</h3>\n": "<h3>\u53cd\u4e8b\u5b9f\u306b\u57fa\u3065\u304f\u5f8c\u6094</h3>\n",
|
||||
"<h3>Information set tracker</h3>\n<p>This is a small helper class to track data from information sets</p>\n": "<h3>\u60c5\u5831\u30bb\u30c3\u30c8\u30c8\u30e9\u30c3\u30ab\u30fc</h3>\n<p>\u3053\u308c\u306f\u3001\u60c5\u5831\u30bb\u30c3\u30c8\u306e\u30c7\u30fc\u30bf\u3092\u8ffd\u8de1\u3059\u308b\u305f\u3081\u306e\u5c0f\u3055\u306a\u30d8\u30eb\u30d1\u30fc\u30af\u30e9\u30b9\u3067\u3059\u3002</p>\n",
|
||||
"<h3>Iteratively update <span translate=no>_^_0_^_</span></h3>\n<p>This updates the strategies for <span translate=no>_^_1_^_</span> iterations.</p>\n": "<h3>\u7e70\u308a\u8fd4\u3057\u66f4\u65b0 <span translate=no>_^_0_^_</span></h3>\n<p>\u3053\u308c\u306b\u3088\u308a\u3001<span translate=no>_^_1_^_</span>\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u304c\u66f4\u65b0\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<h3>Monte Carlo CFR (MCCFR)</h3>\n": "<h3>\u30e2\u30f3\u30c6\u30ab\u30eb\u30edCFR (MCCFR)</h3>\n",
|
||||
"<h3>Nash Equilibrium</h3>\n": "<h3>\u30ca\u30c3\u30b7\u30e5\u30fb\u30a8\u30af\u30a4\u30ea\u30d6\u30ea\u30a2\u30e0</h3>\n",
|
||||
"<h3>Player</h3>\n": "<h3>\u30d7\u30ec\u30fc\u30e4\u30fc</h3>\n",
|
||||
"<h3>Probability of History</h3>\n": "<h3>\u6b74\u53f2\u306e\u78ba\u7387</h3>\n",
|
||||
"<h3>Regret Matching</h3>\n": "<h3>\u30ea\u30b0\u30ec\u30c3\u30c8\u30de\u30c3\u30c1\u30f3\u30b0</h3>\n",
|
||||
"<h3>Regret Minimization</h3>\n": "<h3>\u5f8c\u6094\u306e\u6700\u5c0f\u5316</h3>\n",
|
||||
"<h3>Strategy</h3>\n": "<h3>\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc</h3>\n",
|
||||
"<h3>Utility (Pay off)</h3>\n": "<h3>\u30e6\u30fc\u30c6\u30a3\u30ea\u30c6\u30a3 (\u30da\u30a4\u30aa\u30d5)</h3>\n",
|
||||
"<h3>Walk Tree</h3>\n<p>This function walks the game tree.</p>\n<ul><li><span translate=no>_^_0_^_</span> is the current history <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the player <span translate=no>_^_3_^_</span> that we are computing regrets of </li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_4_^_</span></a> is <span translate=no>_^_5_^_</span> </li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_6_^_</span></a> is <span translate=no>_^_7_^_</span></li></ul>\n<p>It returns the expected utility, for the history <span translate=no>_^_8_^_</span> <span translate=no>_^_9_^_</span> where <span translate=no>_^_10_^_</span> is the set of terminal histories with prefix <span translate=no>_^_11_^_</span></p>\n<p>While walking the tee it updates the total regrets <span translate=no>_^_12_^_</span>.</p>\n": "<h3>\u30a6\u30a9\u30fc\u30af\u30c4\u30ea\u30fc</h3>\n<p>\u3053\u306e\u95a2\u6570\u306f\u30b2\u30fc\u30e0\u30c4\u30ea\u30fc\u3092\u6b69\u304d\u56de\u308a\u307e\u3059\u3002</p>\n<ul><li><span translate=no>_^_0_^_</span>\u73fe\u5728\u306e\u5c65\u6b74\u3067\u3059 <span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span><span translate=no>_^_3_^_</span>\u5f8c\u6094\u306e\u6c17\u6301\u3061\u3092\u8fbc\u3081\u3066\u8a08\u7b97\u3057\u3066\u3044\u308b\u9078\u624b\u306f</li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_4_^_</span></a>\u306f <span translate=no>_^_5_^_</span></li>\n</ul><li><a href=\"#HistoryProbability\"><span translate=no>_^_6_^_</span></a>\u306f <span translate=no>_^_7_^_</span></li>\n<p>\u3053\u306e\u95a2\u6570\u306f\u3001<span translate=no>_^_8_^_</span><span translate=no>_^_9_^_</span><span translate=no>_^_10_^_</span>\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u7aef\u672b\u5c65\u6b74\u306e\u96c6\u5408\u3067\u3042\u308b\u5c65\u6b74\u306b\u5bfe\u3057\u3066\u3001\u671f\u5f85\u3069\u304a\u308a\u306e\u30e6\u30fc\u30c6\u30a3\u30ea\u30c6\u30a3\u3092\u8fd4\u3057\u307e\u3059\u3002<span translate=no>_^_11_^_</span></p>\n<p>\u30c6\u30a3\u30fc\u3092\u6b69\u3044\u3066\u3044\u308b\u3068\u3001<span translate=no>_^_12_^_</span>\u5f8c\u6094\u306e\u6c17\u6301\u3061\u304c\u5168\u90e8\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<p> <a id=\"History\"></a></p>\n<h2>History</h2>\n<p>History <span translate=no>_^_0_^_</span> is a sequence of actions including chance events, and <span translate=no>_^_1_^_</span> is the set of all histories.</p>\n<p>This class should be extended with game specific logic.</p>\n": "<p><a id=\"History\"></a></p>\n<h2>\u6b74\u53f2</h2>\n<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u5c65\u6b74\u306f\u5076\u7136\u306e\u51fa\u6765\u4e8b\u3092\u542b\u3080\u4e00\u9023\u306e\u884c\u52d5\u3067\u3042\u308a\u3001\u3059\u3079\u3066\u306e\u5c65\u6b74\u306e\u96c6\u5408\u3067\u3059\u3002</p>\n<p>\u3053\u306e\u30af\u30e9\u30b9\u306f\u3001\u30b2\u30fc\u30e0\u56fa\u6709\u306e\u30ed\u30b8\u30c3\u30af\u3067\u62e1\u5f35\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002</p>\n",
|
||||
"<p> <a id=\"InfoSet\"></a></p>\n<h2>Information Set <span translate=no>_^_0_^_</span></h2>\n": "<p><a id=\"InfoSet\"></a></p>\n<h2>\u60c5\u5831\u30bb\u30c3\u30c8 <span translate=no>_^_0_^_</span></h2>\n",
|
||||
"<p> <a id=\"terminal_utility\"></a> Utility of player <span translate=no>_^_0_^_</span> for a terminal history. <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span></p>\n": "<p><a id=\"terminal_utility\"><span translate=no>_^_0_^_</span></a>\u7aef\u672b\u5c65\u6b74\u7528\u306e\u30d7\u30ec\u30fc\u30e4\u30fc\u306e\u30e6\u30fc\u30c6\u30a3\u30ea\u30c6\u30a3\u3002<span translate=no>_^_1_^_</span>\u3069\u3053 <span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p> Actions <span translate=no>_^_0_^_</span></p>\n": "<p>\u30a2\u30af\u30b7\u30e7\u30f3 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> Add an action to the history.</p>\n": "<p>\u5c65\u6b74\u306b\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<p> Create a new <a href=\"#InfoSet\">information set</a> for the current player</p>\n": "<p><a href=\"#InfoSet\">\u73fe\u5728\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u60c5\u5831\u30bb\u30c3\u30c8\u3092\u65b0\u898f\u4f5c\u6210</a></p>\n",
|
||||
"<p> Get <a href=\"#InfoSet\">information set</a> for the current player</p>\n": "<p><a href=\"#InfoSet\">\u73fe\u5728\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u60c5\u5831\u3092\u53d6\u5f97</a></p>\n",
|
||||
"<p> Get current player, denoted by <span translate=no>_^_0_^_</span>, where <span translate=no>_^_1_^_</span> is known as <strong>Player function</strong>.</p>\n<p>If <span translate=no>_^_2_^_</span> it means that current event is a chance <span translate=no>_^_3_^_</span> event. Something like dealing cards, or opening common cards in poker.</p>\n": "<p>\u73fe\u5728\u306e\u30d7\u30ec\u30fc\u30e4\u30fc\u3092\u53d6\u5f97\u3059\u308b (<span translate=no>_^_1_^_</span>\u3068\u3044\u3046\u6587\u5b57\u3067\u8868\u3055\u308c\u308b<span translate=no>_^_0_^_</span>)\u3002<strong>\u3053\u308c\u3092\u30d7\u30ec\u30fc\u30e4\u30fc\u95a2\u6570\u3068\u547c\u3073\u307e\u3059</strong>\u3002</p>\n<p><span translate=no>_^_3_^_</span>\u73fe\u5728\u306e\u51fa\u6765\u4e8b\u304c\u5076\u7136\u306e\u51fa\u6765\u4e8b\u3067\u3042\u308b\u3053\u3068\u3092\u610f\u5473\u3059\u308b\u5834\u5408<span translate=no>_^_2_^_</span>\u3002\u30ab\u30fc\u30c9\u3092\u914d\u3063\u305f\u308a\u3001\u30dd\u30fc\u30ab\u30fc\u3067\u4e00\u822c\u7684\u306a\u30ab\u30fc\u30c9\u3092\u958b\u3044\u305f\u308a\u3059\u308b\u3088\u3046\u306a\u3082\u306e\u3067\u3059\u3002</p>\n",
|
||||
"<p> Human readable representation</p>\n": "<p>\u4eba\u9593\u304c\u8aad\u3081\u308b\u8868\u73fe</p>\n",
|
||||
"<p> Initialize <strong>CFR</strong> algorithm</p>\n": "<p><strong>CFR</strong> \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3092\u521d\u671f\u5316</p>\n",
|
||||
"<p> Initialize</p>\n": "<p>[\u521d\u671f\u5316]</p>\n",
|
||||
"<p> Load data from a saved dictionary</p>\n": "<p>\u4fdd\u5b58\u3057\u305f\u30c7\u30a3\u30af\u30b7\u30e7\u30ca\u30ea\u304b\u3089\u30c7\u30fc\u30bf\u3092\u8aad\u307f\u8fbc\u3080</p>\n",
|
||||
"<p> Load information set from a saved dictionary</p>\n": "<p>\u4fdd\u5b58\u3057\u305f\u30c7\u30a3\u30af\u30b7\u30e7\u30ca\u30ea\u304b\u3089\u60c5\u5831\u30bb\u30c3\u30c8\u3092\u8aad\u307f\u8fbc\u3080</p>\n",
|
||||
"<p> Returns the information set <span translate=no>_^_0_^_</span> of the current player for a given history <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u7279\u5b9a\u306e\u5c65\u6b74\u306b\u304a\u3051\u308b\u73fe\u5728\u306e\u30d7\u30ec\u30fc\u30e4\u30fc\u306e\u60c5\u5831\u30bb\u30c3\u30c8\u3092\u8fd4\u3057\u307e\u3059 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p> Sample a chance when <span translate=no>_^_0_^_</span>.</p>\n": "<p>\u6b21\u306e\u6a5f\u4f1a\u306b\u305c\u3072\u304a\u8a66\u3057\u304f\u3060\u3055\u3044<span translate=no>_^_0_^_</span>.</p>\n",
|
||||
"<p> Save the information set to a dictionary</p>\n": "<p>\u60c5\u5831\u30bb\u30c3\u30c8\u3092\u30c7\u30a3\u30af\u30b7\u30e7\u30ca\u30ea\u306b\u4fdd\u5b58\u3059\u308b</p>\n",
|
||||
"<p> Set tracking indicators</p>\n": "<p>\u30c8\u30e9\u30c3\u30ad\u30f3\u30b0\u30a4\u30f3\u30b8\u30b1\u30fc\u30bf\u30fc\u3092\u8a2d\u5b9a</p>\n",
|
||||
"<p> Track the data from all information sets</p>\n": "<p>\u3059\u3079\u3066\u306e\u60c5\u5831\u30bb\u30c3\u30c8\u306e\u30c7\u30fc\u30bf\u3092\u8ffd\u8de1</p>\n",
|
||||
"<p> Whether it's a terminal history; i.e. game over. <span translate=no>_^_0_^_</span></p>\n": "<p>\u7aef\u672b\u306e\u5c65\u6b74\u3001\u3064\u307e\u308a\u30b2\u30fc\u30e0\u30aa\u30fc\u30d0\u30fc\u304b\u3069\u3046\u304b\u3002<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> Whether the next step is a chance step; something like dealing a new card. <span translate=no>_^_0_^_</span></p>\n": "<p>\u6b21\u306e\u30b9\u30c6\u30c3\u30d7\u304c\u30c1\u30e3\u30f3\u30b9\u30b9\u30c6\u30c3\u30d7\u3001\u3064\u307e\u308a\u65b0\u3057\u3044\u30ab\u30fc\u30c9\u3092\u914d\u308b\u3088\u3046\u306a\u3082\u306e\u304b\u3069\u3046\u304b\u3002<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/cfr/kuhn/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n": "<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/cfr/kuhn/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<p><a href=\"https://twitter.com/labmlai/status/1407186002255380484\"><span translate=no>_^_0_^_</span></a> Twitter thread</p>\n": "<p><a href=\"https://twitter.com/labmlai/status/1407186002255380484\"><span translate=no>_^_0_^_</span></a>\u30c4\u30a4\u30c3\u30bf\u30fc\u30b9\u30ec\u30c3\u30c9</p>\n",
|
||||
"<p><a id=\"CounterfactualRegret\"></a></p>\n": "<p><a id=\"CounterfactualRegret\"></a></p>\n",
|
||||
"<p><a id=\"HistoryProbability\"></a></p>\n": "<p><a id=\"HistoryProbability\"></a></p>\n",
|
||||
"<p><a id=\"MCCFR\"></a></p>\n": "<p><a id=\"MCCFR\"></a></p>\n",
|
||||
"<p><a id=\"NashEquilibrium\"></a></p>\n": "<p><a id=\"NashEquilibrium\"></a></p>\n",
|
||||
"<p><a id=\"RegretMatching\"></a></p>\n": "<p><a id=\"RegretMatching\"></a></p>\n",
|
||||
"<p><a id=\"Strategy\"></a></p>\n": "<p><a id=\"Strategy\"></a></p>\n",
|
||||
"<p><em>Let's dive into the code!</em></p>\n": "<p><em>\u3055\u3063\u305d\u304f\u30b3\u30fc\u30c9\u3092\u898b\u3066\u3044\u304d\u307e\u3057\u3087\u3046\uff01</em></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is a set of subsets of <span translate=no>_^_1_^_</span> (<span translate=no>_^_2_^_</span>) where we look at only a single block <span translate=no>_^_3_^_</span> in an iteration. Union of all subsets spans <span translate=no>_^_4_^_</span> (<span translate=no>_^_5_^_</span>). <span translate=no>_^_6_^_</span> is the probability of picking block <span translate=no>_^_7_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span>\u306f <span translate=no>_^_1_^_</span> (<span translate=no>_^_2_^_</span>) \u306e\u30b5\u30d6\u30bb\u30c3\u30c8\u306e\u96c6\u5408\u3067\u30011 \u56de\u306e\u53cd\u5fa9\u3067 1 <span translate=no>_^_3_^_</span> \u3064\u306e\u30d6\u30ed\u30c3\u30af\u3057\u304b\u898b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3002\u3059\u3079\u3066\u306e\u30b5\u30d6\u30bb\u30c3\u30c8\u306e\u30b9\u30d1\u30f3 <span translate=no>_^_4_^_</span> () <span translate=no>_^_5_^_</span> \u306e\u548c\u96c6\u5408\u3067\u3059\u3002<span translate=no>_^_6_^_</span><span translate=no>_^_7_^_</span>\u30d6\u30ed\u30c3\u30af\u3092\u9078\u3076\u78ba\u7387\u3067\u3059\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is known as the <strong>information partition</strong> of player <span translate=no>_^_1_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span><strong>\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u60c5\u5831\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u3068\u3057\u3066\u77e5\u3089\u308c\u3066\u3044\u307e\u3059</strong><span translate=no>_^_1_^_</span>\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is strategies of all players except <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u3092\u9664\u304f\u3059\u3079\u3066\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u6226\u7565\u3067\u3059 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the <strong>strategy profile</strong> which consists of strategies of all players <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span><strong>\u3059\u3079\u3066\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u6226\u7565\u3067\u69cb\u6210\u3055\u308c\u308b\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3067\u3059</strong> <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the expected utility (payoff) for player <span translate=no>_^_1_^_</span> with strategy profile <span translate=no>_^_2_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3092\u6301\u3064\u30d7\u30ec\u30a4\u30e4\u30fc\u306b\u671f\u5f85\u3055\u308c\u308b\u52b9\u7528\uff08\u30da\u30a4\u30aa\u30d5\uff09\u3067\u3059\u3002<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of picking <span translate=no>_^_1_^_</span> in current iteration; i.e. <span translate=no>_^_2_^_</span> - the sum of <span translate=no>_^_3_^_</span> where <span translate=no>_^_4_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span><span translate=no>_^_3_^_</span><span translate=no>_^_4_^_</span>\u306f\u73fe\u5728\u306e\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u3067\u30d4\u30c3\u30ad\u30f3\u30b0\u3059\u308b\u78ba\u7387\u3001\u3064\u307e\u308a <span translate=no>_^_2_^_</span>-\u306e\u5408\u8a08\u3067\u3059\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of reaching <span translate=no>_^_1_^_</span> with only player <span translate=no>_^_2_^_</span>'s contribution. That is, <span translate=no>_^_3_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u8ca2\u732e\u5ea6\u3060\u3051\u3067\u30ea\u30fc\u30c1\u3059\u308b\u78ba\u7387\u3067\u3059\u3002\u3064\u307e\u308a\u3001<span translate=no>_^_3_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of reaching the history <span translate=no>_^_1_^_</span> with strategy profile <span translate=no>_^_2_^_</span>. <span translate=no>_^_3_^_</span> is the probability of reaching <span translate=no>_^_4_^_</span> without player <span translate=no>_^_5_^_</span>'s contribution; i.e. player <span translate=no>_^_6_^_</span> took the actions to follow <span translate=no>_^_7_^_</span> with a probability of <span translate=no>_^_8_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u306f\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3067\u30d2\u30b9\u30c8\u30ea\u30fc\u306b\u5230\u9054\u3059\u308b\u78ba\u7387\u3067\u3059\u3002<span translate=no>_^_3_^_</span>\u306f\u3001<span translate=no>_^_4_^_</span><span translate=no>_^_5_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u8ca2\u732e\u306a\u3057\u306b\u30ea\u30fc\u30c1\u3059\u308b\u78ba\u7387\u3067\u3059\u3002\u3064\u307e\u308a\u3001<span translate=no>_^_6_^_</span><span translate=no>_^_7_^_</span><span translate=no>_^_8_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u304c\u6b21\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3057\u305f\u78ba\u7387\u3067\u3059\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the set of all histories that belong to a given information set; i.e. all those histories look the same in the eye of the player.</p>\n": "<p><span translate=no>_^_0_^_</span>\u306f\u3001\u7279\u5b9a\u306e\u60c5\u5831\u30bb\u30c3\u30c8\u306b\u5c5e\u3059\u308b\u3059\u3079\u3066\u306e\u5c65\u6b74\u306e\u96c6\u5408\u3067\u3059\u3002\u3064\u307e\u308a\u3001\u3053\u308c\u3089\u306e\u5c65\u6b74\u306f\u3059\u3079\u3066\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u76ee\u306b\u306f\u540c\u3058\u3088\u3046\u306b\u898b\u3048\u307e\u3059\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the set of terminal histories (game over).</p>\n": "<p><span translate=no>_^_0_^_</span>\u7aef\u672b\u5c65\u6b74 (\u30b2\u30fc\u30e0\u30aa\u30fc\u30d0\u30fc) \u306e\u30bb\u30c3\u30c8\u3067\u3059\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> set of all information sets. </p>\n": "<p><span translate=no>_^_0_^_</span>\u3059\u3079\u3066\u306e\u60c5\u5831\u30bb\u30c3\u30c8\u306e\u30bb\u30c3\u30c8\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> where <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u3069\u3053 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span>, the <a href=\"#Strategy\">strategy</a> of player <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u3001<a href=\"#Strategy\">\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u6226\u7565</a> <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span>-Nash equilibrium is,</p>\n": "<p><span translate=no>_^_0_^_</span>-\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u306f\u3001</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><strong>Counterfactual value</strong> <span translate=no>_^_0_^_</span> is the expected utility for player <span translate=no>_^_1_^_</span> if if player <span translate=no>_^_2_^_</span> tried to reach <span translate=no>_^_3_^_</span> (took the actions leading to <span translate=no>_^_4_^_</span> with a probability of <span translate=no>_^_5_^_</span>).</p>\n": "<p><strong><span translate=no>_^_0_^_</span>\u30ab\u30a6\u30f3\u30bf\u30fc\u30d5\u30a1\u30af\u30c1\u30e5\u30a2\u30eb\u30d0\u30ea\u30e5\u30fc\u306f</strong>\u3001<span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u304c\u30ea\u30fc\u30c1\u3057\u3088\u3046\u3068\u3057\u305f\u5834\u5408<span translate=no>_^_3_^_</span>\uff08<span translate=no>_^_4_^_</span>\u78ba\u7387\u3067\u305d\u308c\u306b\u7e4b\u304c\u308b\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u53d6\u3063\u305f\uff09\u30d7\u30ec\u30a4\u30e4\u30fc\u306b\u3068\u3063\u3066\u671f\u5f85\u3055\u308c\u308b\u52b9\u7528\u3067\u3059\u3002<span translate=no>_^_5_^_</span></p>\n",
|
||||
"<p><strong>Immediate counterfactual regret</strong> is,</p>\n": "<p><strong>\u5373\u6642\u306e\u53cd\u4e8b\u5b9f\u7684\u5f8c\u6094\u306f</strong>\u3001</p>\n",
|
||||
"<p><strong>Information set</strong> <span translate=no>_^_0_^_</span> for player <span translate=no>_^_1_^_</span> is similar to a history <span translate=no>_^_2_^_</span> but only contains the actions visible to player <span translate=no>_^_3_^_</span>. That is, the history <span translate=no>_^_4_^_</span> will contain actions/events such as cards dealt to the opposing player while <span translate=no>_^_5_^_</span> will not have them.</p>\n": "<p><strong><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u30d7\u30ec\u30fc\u30e4\u30fc\u306b\u8a2d\u5b9a\u3055\u308c\u308b\u60c5\u5831\u306f\u5c65\u6b74\u306b\u4f3c\u3066\u3044\u307e\u3059\u304c</strong>\u3001\u30d7\u30ec\u30fc\u30e4\u30fc\u306b\u8868\u793a\u3055\u308c\u308b\u30a2\u30af\u30b7\u30e7\u30f3\u306e\u307f\u304c\u542b\u307e\u308c\u307e\u3059<span translate=no>_^_3_^_</span>\u3002\u3064\u307e\u308a\u3001<span translate=no>_^_4_^_</span><span translate=no>_^_5_^_</span>\u5c65\u6b74\u306b\u306f\u76f8\u624b\u30d7\u30ec\u30a4\u30e4\u30fc\u306b\u914d\u3089\u308c\u305f\u30ab\u30fc\u30c9\u306a\u3069\u306e\u30a2\u30af\u30b7\u30e7\u30f3/\u30a4\u30d9\u30f3\u30c8\u304c\u542b\u307e\u308c\u307e\u3059\u304c\u3001</p>\u305d\u308c\u3089\u306f\u3042\u308a\u307e\u305b\u3093\u3002\n",
|
||||
"<p><strong>Strategy of player</strong> <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> is a distribution over actions <span translate=no>_^_2_^_</span>, where <span translate=no>_^_3_^_</span> is the set of all strategies for player <span translate=no>_^_4_^_</span>. Strategy on <span translate=no>_^_5_^_</span>-th iteration is denoted by <span translate=no>_^_6_^_</span>.</p>\n": "<p><strong><span translate=no>_^_1_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u3068\u306f</strong><span translate=no>_^_0_^_</span>\u3001\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5206\u6563\u3055\u305b\u305f\u3082\u306e\u3067\u3059\u3002\u3053\u3053\u3067<span translate=no>_^_2_^_</span>\u3001<span translate=no>_^_3_^_</span><span translate=no>_^_4_^_</span>\u306f\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u3059\u3079\u3066\u306e\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u306e\u30bb\u30c3\u30c8\u3067\u3059\u3002<span translate=no>_^_5_^_</span>-\u56de\u76ee\u306e\u53cd\u5fa9\u306e\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u306f\u3067\u8868\u3055\u308c\u307e\u3059</p>\u3002<span translate=no>_^_6_^_</span>\n",
|
||||
"<p>A dictionary for <span translate=no>_^_0_^_</span> set of all information sets </p>\n": "<p><span translate=no>_^_0_^_</span>\u3059\u3079\u3066\u306e\u60c5\u5831\u30bb\u30c3\u30c8\u306e\u30bb\u30c3\u30c8\u7528\u306e\u8f9e\u66f8</p>\n",
|
||||
"<p>A player <span translate=no>_^_0_^_</span> where <span translate=no>_^_1_^_</span> is the set of players </p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u96c6\u5408\u304c\u3069\u3053\u306b\u3044\u308b\u304b</p>\n",
|
||||
"<p>A player is denoted by <span translate=no>_^_0_^_</span>, where <span translate=no>_^_1_^_</span> is the set of players.</p>\n": "<p>\u30d7\u30ec\u30fc\u30e4\u30fc\u306f\u3067\u8868\u3055\u308c\u307e\u3059\u3002\u3053\u3053\u3067<span translate=no>_^_0_^_</span>\u3001<span translate=no>_^_1_^_</span>\u306f\u30d7\u30ec\u30fc\u30e4\u30fc\u306e\u96c6\u5408\u3067\u3059\u3002</p>\n",
|
||||
"<p>Action <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span> is a non-terminal <a href=\"#History\">history</a> </p>\n": "<p><span translate=no>_^_0_^_</span><a href=\"#History\">\u30a2\u30af\u30b7\u30e7\u30f3 <span translate=no>_^_1_^_</span> (<span translate=no>_^_2_^_</span>\u7aef\u672b\u4ee5\u5916\u306e\u5c65\u6b74\u306f\u8868\u793a)</a></p>\n",
|
||||
"<p>Action <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span> is a non-terminal <a href=\"#History\">history</a>.</p>\n": "<p><span translate=no>_^_0_^_</span>\u30a2\u30af\u30b7\u30e7\u30f3\u3002<span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span><a href=\"#History\">\u306f\u7aef\u672b\u4ee5\u5916\u306e\u5c65\u6b74\u3067\u3059</a>\u3002</p>\n",
|
||||
"<p>And use that to update <span translate=no>_^_0_^_</span> and calculate the strategy <span translate=no>_^_1_^_</span> on each iteration. Finally, we calculate the overall average strategy <span translate=no>_^_2_^_</span>.</p>\n": "<p>\u305d\u3057\u3066\u3001<span translate=no>_^_0_^_</span>\u305d\u308c\u3092\u4f7f\u3063\u3066\u5404\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u3092\u66f4\u65b0\u3057<span translate=no>_^_1_^_</span>\u3001\u8a08\u7b97\u3057\u307e\u3059\u3002\u6700\u5f8c\u306b\u3001<span translate=no>_^_2_^_</span>\u5168\u4f53\u306e\u5e73\u5747\u6226\u7565\u3092\u8a08\u7b97\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<p>Average overall regret for Player <span translate=no>_^_0_^_</span> is the average regret of not following the optimal strategy in all <span translate=no>_^_1_^_</span> rounds of iterations.</p>\n": "<p><span translate=no>_^_0_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u5168\u4f53\u7684\u306a\u5f8c\u6094\u306e\u5e73\u5747\u306f\u3001<span translate=no>_^_1_^_</span>\u3059\u3079\u3066\u306e\u30e9\u30a6\u30f3\u30c9\u3067\u6700\u9069\u306a\u6226\u7565\u306b\u5f93\u308f\u306a\u304b\u3063\u305f\u3053\u3068\u306b\u5bfe\u3059\u308b\u5e73\u5747\u7684\u306a\u5f8c\u6094\u3067\u3059\u3002</p>\n",
|
||||
"<p>Computing <span translate=no>_^_0_^_</span> requires expanding the full game tree on each iteration.</p>\n": "<p><span translate=no>_^_0_^_</span>\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u3067\u306f\u3001\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u305f\u3073\u306b\u30b2\u30fc\u30e0\u30c4\u30ea\u30fc\u5168\u4f53\u3092\u62e1\u5f35\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002</p>\n",
|
||||
"<p>For two players, Nash equilibrium is a <a href=\"#Strategy\">strategy profile</a> where</p>\n": "<p><a href=\"#Strategy\">2\u4eba\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u306b\u3068\u3063\u3066\u3001\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u306f\u6b21\u306e\u3088\u3046\u306a\u6226\u7565\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3067\u3059\u3002</a></p>\n",
|
||||
"<p>From the definition of <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span></p>\n": "<p>\u306e\u5b9a\u7fa9\u304b\u3089<span translate=no>_^_0_^_</span>\u3001<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Get current player's information set for <span translate=no>_^_0_^_</span> </p>\n": "<p>\u73fe\u5728\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u60c5\u5831\u8a2d\u5b9a\u3092\u53d6\u5f97 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Here is a <a href=\"kuhn/index.html\">Kuhn Poker</a> implementation to try CFR on Kuhn Poker.</p>\n": "<p>\u3053\u3053\u3067\u306f\u3001<a href=\"kuhn/index.html\">\u30af\u30fc\u30f3\u30dd\u30fc\u30ab\u30fc\u3067 CFR \u3092\u8a66\u3059\u305f\u3081\u306e\u30af\u30fc\u30f3\u30dd\u30fc\u30ab\u30fc\u306e\u5b9f\u88c5\u3092\u7d39\u4ecb\u3057\u307e\u3059</a>\u3002</p>\n",
|
||||
"<p>History <span translate=no>_^_0_^_</span> is a sequence of actions including chance events, and <span translate=no>_^_1_^_</span> is the set of all histories.</p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u5c65\u6b74\u306f\u5076\u7136\u306e\u51fa\u6765\u4e8b\u3092\u542b\u3080\u4e00\u9023\u306e\u884c\u52d5\u3067\u3042\u308a\u3001\u3059\u3079\u3066\u306e\u5c65\u6b74\u306e\u96c6\u5408\u3067\u3059\u3002</p>\n",
|
||||
"<p>If <span translate=no>_^_0_^_</span> for all players then <span translate=no>_^_1_^_</span> is a <span translate=no>_^_2_^_</span>-Nash equilibrium.</p>\n": "<p><span translate=no>_^_0_^_</span>\u3059\u3079\u3066\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u306b\u5f53\u3066\u306f\u307e\u308b\u306a\u3089\u3001<span translate=no>_^_1_^_</span> <span translate=no>_^_2_^_</span>-Nash\u5747\u8861\u3067\u3059\u3002</p>\n",
|
||||
"<p>If <span translate=no>_^_0_^_</span>, </p>\n": "<p>\u3082\u3057<span translate=no>_^_0_^_</span>\u3001</p>\n",
|
||||
"<p>If it's a chance event <span translate=no>_^_0_^_</span> sample a and go to next step. </p>\n": "<p>\u305d\u308c\u304c\u5076\u7136\u306e\u51fa\u6765\u4e8b\u306a\u3089\u3001<span translate=no>_^_0_^_</span> a\u3092\u30b5\u30f3\u30d7\u30eb\u3057\u3066\u6b21\u306e\u30b9\u30c6\u30c3\u30d7\u306b\u9032\u3093\u3067\u304f\u3060\u3055\u3044\u3002</p>\n",
|
||||
"<p>If it's a terminal history <span translate=no>_^_0_^_</span> return the terminal utility <span translate=no>_^_1_^_</span>. </p>\n": "<p>\u7aef\u672b\u5c65\u6b74\u306e\u5834\u5408\u306f\u3001<span translate=no>_^_0_^_</span>\u7aef\u672b\u30e6\u30fc\u30c6\u30a3\u30ea\u30c6\u30a3\u3092\u8fd4\u3057\u307e\u3059<span translate=no>_^_1_^_</span>\u3002</p>\n",
|
||||
"<p>If the current player is <span translate=no>_^_0_^_</span>, </p>\n": "<p><span translate=no>_^_0_^_</span>\u73fe\u5728\u306e\u30d7\u30ec\u30fc\u30e4\u30fc\u304c</p>\n",
|
||||
"<p>If the current player is <span translate=no>_^_0_^_</span>, update the cumulative strategies and total regrets </p>\n": "<p>\u73fe\u5728\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u304c\u305d\u3046\u306a\u3089<span translate=no>_^_0_^_</span>\u3001\u7d2f\u7a4d\u653b\u7565\u6cd5\u3068\u7dcf\u5f8c\u6094\u3092\u66f4\u65b0</p>\n",
|
||||
"<p>Iterate through all actions </p>\n": "<p>\u3059\u3079\u3066\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u53cd\u5fa9\u51e6\u7406</p>\n",
|
||||
"<p>Loop for <span translate=no>_^_0_^_</span> times </p>\n": "<p><span translate=no>_^_0_^_</span>\u30eb\u30fc\u30d7\u30fb\u30d5\u30a9\u30fc\u30fb\u30bf\u30a4\u30e0\u30ba</p>\n",
|
||||
"<p>Nash equilibrium is a state where none of the players can increase their expected utility (or payoff) by changing their strategy alone.</p>\n": "<p>\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u3068\u306f\u3001\u3069\u306e\u30d7\u30ec\u30a4\u30e4\u30fc\u3082\u6226\u7565\u3092\u5909\u3048\u308b\u3060\u3051\u3067\u671f\u5f85\u3055\u308c\u308b\u52b9\u7528\uff08\u307e\u305f\u306f\u898b\u8fd4\u308a\uff09\u3092\u4e0a\u3052\u308b\u3053\u3068\u304c\u3067\u304d\u306a\u3044\u72b6\u614b\u306e\u3053\u3068\u3067\u3059\u3002</p>\n",
|
||||
"<p>Otherwise, </p>\n": "<p>\u305d\u308c\u4ee5\u5916\u306e\u5834\u5408\u306f\u3001</p>\n",
|
||||
"<p>Print the information sets </p>\n": "<p>\u60c5\u5831\u30bb\u30c3\u30c8\u3092\u5370\u5237</p>\n",
|
||||
"<p>Probability of reaching a information set <span translate=no>_^_0_^_</span> is, <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u60c5\u5831\u30bb\u30c3\u30c8\u306b\u5230\u9054\u3059\u308b\u78ba\u7387\u306f\u3001<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Regret is the utility (or pay off) that the player didn't get because she didn't follow the optimal strategy or took the best action.</p>\n": "<p>\u5f8c\u6094\u3068\u306f\u3001\u30d7\u30ec\u30a4\u30e4\u30fc\u304c\u6700\u9069\u306a\u6226\u7565\u306b\u5f93\u308f\u306a\u304b\u3063\u305f\u308a\u3001\u6700\u5584\u306e\u884c\u52d5\u3092\u3068\u3089\u306a\u304b\u3063\u305f\u305f\u3081\u306b\u5f97\u3089\u308c\u306a\u304b\u3063\u305f\u52b9\u7528\uff08\u307e\u305f\u306f\u5831\u916c\uff09\u3067\u3059\u3002</p>\n",
|
||||
"<p>Return the expected utility for player <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u306b\u671f\u5f85\u901a\u308a\u306e\u30e6\u30fc\u30c6\u30a3\u30ea\u30c6\u30a3\u3092\u8fd4\u3057\u3001<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Save checkpoints every <span translate=no>_^_0_^_</span> iterations </p>\n": "<p><span translate=no>_^_0_^_</span>\u53cd\u5fa9\u3054\u3068\u306b\u30c1\u30a7\u30c3\u30af\u30dd\u30a4\u30f3\u30c8\u3092\u4fdd\u5b58</p>\n",
|
||||
"<p>Since <span translate=no>_^_0_^_</span> because it's a zero-sum game, we can add <span translate=no>_^_1_^_</span> and <span translate=no>_^_2_^_</span> and the second term will cancel out.</p>\n": "<p><span translate=no>_^_0_^_</span>\u30bc\u30ed\u30b5\u30e0\u30b2\u30fc\u30e0\u306a\u306e\u3067\u3001<span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u3068\u3092\u52a0\u7b97\u3059\u308b\u3068\u30012 \u756a\u76ee\u306e\u30bf\u30fc\u30e0\u304c\u30ad\u30e3\u30f3\u30bb\u30eb\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<p>So we need to minimize <span translate=no>_^_0_^_</span> to get close to a Nash equilibrium.</p>\n": "<p>\u305d\u306e\u305f\u3081\u3001<span translate=no>_^_0_^_</span>\u6700\u5c0f\u5316\u3057\u3066\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u306b\u8fd1\u3065\u3051\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002</p>\n",
|
||||
"<p>Strategy is defined as a probability for taking an action <span translate=no>_^_0_^_</span> in for a given information set <span translate=no>_^_1_^_</span>,</p>\n": "<p>\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u3068\u306f\u3001<span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u4e0e\u3048\u3089\u308c\u305f\u60c5\u5831\u306b\u5bfe\u3057\u3066\u4f55\u3089\u304b\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u8d77\u3053\u3059\u78ba\u7387\u3068\u3057\u3066\u5b9a\u7fa9\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<p>That is the mean regret of not playing with the optimal strategy.</p>\n": "<p>\u305d\u308c\u3053\u305d\u304c\u3001\u6700\u9069\u306a\u6226\u7565\u3067\u30d7\u30ec\u30a4\u3057\u306a\u304b\u3063\u305f\u3053\u3068\u306b\u5bfe\u3059\u308b\u3042\u304b\u3089\u3055\u307e\u306a\u5f8c\u6094\u3067\u3059\u3002</p>\n",
|
||||
"<p>The <a href=\"#terminal_utility\">terminal utility</a> is the utility (or pay off) of a player <span translate=no>_^_0_^_</span> for a terminal history <span translate=no>_^_1_^_</span>.</p>\n": "<p><a href=\"#terminal_utility\">\u30bf\u30fc\u30df\u30ca\u30eb\u30e6\u30fc\u30c6\u30a3\u30ea\u30c6\u30a3\u306f</a>\u3001<span translate=no>_^_0_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u30bf\u30fc\u30df\u30ca\u30eb\u5c65\u6b74\u306b\u5bfe\u3059\u308b\u52b9\u7528\uff08\u307e\u305f\u306f\u5831\u916c\uff09<span translate=no>_^_1_^_</span>\u3067\u3059\u3002</p>\n",
|
||||
"<p>The <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">paper</a> proves that (Theorem 3),</p>\n": "<p><a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u8ad6\u6587\u306f\u305d\u308c\u3092\u8a3c\u660e\u3057\u3066\u3044\u307e\u3059</a>\uff08\u5b9a\u74063\uff09\u3001</p>\n",
|
||||
"<p>The average of utilities over a set of strategies is equal to the utility of the average strategy.</p>\n": "<p>\u4e00\u9023\u306e\u6226\u7565\u306b\u304a\u3051\u308b\u52b9\u7528\u306e\u5e73\u5747\u306f\u3001\u5e73\u5747\u7684\u306a\u6226\u7565\u306e\u52b9\u7528\u3068\u7b49\u3057\u304f\u306a\u308a\u307e\u3059\u3002</p>\n",
|
||||
"<p>The average strategy is the average of strategies followed in each round, for all <span translate=no>_^_0_^_</span></p>\n": "<p>\u5e73\u5747\u6226\u7565\u3068\u306f\u3001\u3059\u3079\u3066\u306e\u30e9\u30a6\u30f3\u30c9\u3067\u5b9f\u65bd\u3057\u305f\u6226\u7565\u306e\u5e73\u5747\u3067\u3059 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>The paper <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">Regret Minimization in Games with Incomplete Information</a> introduces counterfactual regret and how minimizing counterfactual regret through self-play can be used to reach Nash equilibrium. The algorithm is called Counterfactual Regret Minimization (<strong>CFR</strong>).</p>\n": "<p>\u8ad6\u6587\u300c<a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u60c5\u5831\u304c\u4e0d\u5b8c\u5168\u306a\u30b2\u30fc\u30e0\u306b\u304a\u3051\u308b\u5f8c\u6094\u306e\u6700\u5c0f\u5316\u300d\u3067\u306f\u3001\u53cd\u4e8b\u5b9f\u306b\u57fa\u3065\u304f\u5f8c\u6094\u3068\u3001\u30bb\u30eb\u30d5\u30d7\u30ec\u30a4\u3092\u901a\u3058\u3066\u53cd\u4e8b\u5b9f\u306b\u57fa\u3065\u304f\u5f8c\u6094\u3092\u6700\u5c0f\u9650\u306b\u6291\u3048\u308b\u3053\u3068\u3067\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u3092\u5b9f\u73fe\u3059\u308b\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u3066\u3044\u307e\u3059</a>\u3002</p><strong>\u3053\u306e\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306f\u3001\u53cd\u4e8b\u5b9f\u306b\u57fa\u3065\u304f\u5f8c\u6094\u6700\u5c0f\u5316 (CFR) \u3068\u547c\u3070\u308c\u3066\u3044\u307e\u3059\u3002</strong>\n",
|
||||
"<p>The paper <a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">Monte Carlo Sampling for Regret Minimization in Extensive Games</a> introduces Monte Carlo Counterfactual Regret Minimization (<strong>MCCFR</strong>), where we sample from the game tree and estimate the regrets.</p>\n": "<p>\u8ad6\u6587\u300c<a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">\u5927\u898f\u6a21\u30b2\u30fc\u30e0\u306b\u304a\u3051\u308b\u5f8c\u6094\u6700\u5c0f\u5316\u306e\u305f\u3081\u306e\u30e2\u30f3\u30c6\u30ab\u30eb\u30ed\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u300d\u3067\u306f\u3001\u30b2\u30fc\u30e0\u30c4\u30ea\u30fc\u304b\u3089\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057\u3066\u5f8c\u6094\u3092\u63a8\u5b9a\u3059\u308b\u30e2\u30f3\u30c6\u30ab\u30eb\u30ed\u53cd\u4e8b\u5b9f\u7684\u5f8c\u6094\u6700\u5c0f\u5316</a>\uff08<strong>MCCFR</strong>\uff09\u3092\u7d39\u4ecb\u3057\u3066\u3044\u307e\u3059\u3002</p>\n",
|
||||
"<p>The paper <a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">Monte Carlo Sampling for Regret Minimization in Extensive Games</a> shows we can sample from the game tree and estimate the regrets.</p>\n": "<p><a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">\u5927\u898f\u6a21\u30b2\u30fc\u30e0\u306b\u304a\u3051\u308b\u5f8c\u6094\u6700\u5c0f\u5316\u306e\u305f\u3081\u306e\u30e2\u30f3\u30c6\u30ab\u30eb\u30ed\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3068\u3044\u3046\u8ad6\u6587\u306f\u3001\u30b2\u30fc\u30e0\u30c4\u30ea\u30fc\u304b\u3089\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057\u3066\u5f8c\u6094\u3092\u63a8\u5b9a\u3067\u304d\u308b\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059</a>\u3002</p>\n",
|
||||
"<p>The paper The paper <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">Regret Minimization in Games with Incomplete Information</a> proves that if the strategy is selected according to above equation <span translate=no>_^_0_^_</span> gets smaller proportionate to <span translate=no>_^_1_^_</span>, and therefore reaches <span translate=no>_^_2_^_</span>-<a href=\"#NashEquilibrium\">Nash equilibrium</a>.</p>\n": "<p><a href=\"#NashEquilibrium\">\u8ad6\u6587\u300c<a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u60c5\u5831\u304c\u4e0d\u5b8c\u5168\u306a\u30b2\u30fc\u30e0\u306b\u304a\u3051\u308b\u5f8c\u6094\u306e\u6700\u5c0f\u5316</a>\u300d\u3068\u3044\u3046\u8ad6\u6587\u306f\u3001\u4e0a\u8a18\u306e\u65b9\u7a0b\u5f0f\u306b\u5f93\u3063\u3066\u6226\u7565\u3092\u9078\u629e\u3057\u305f\u5834\u5408\u3001<span translate=no>_^_0_^_</span>\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u306b\u6bd4\u4f8b\u3057\u3066\u5c0f\u3055\u304f\u306a\u308a\u3001<span translate=no>_^_1_^_</span>\u3057\u305f\u304c\u3063\u3066\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u306b\u9054\u3059\u308b\u3053\u3068\u3092\u8a3c\u660e\u3057\u3066\u3044\u307e\u3059\u3002<span translate=no>_^_2_^_</span></a></p>\n",
|
||||
"<p>The paper shows that</p>\n": "<p>\u8ad6\u6587\u306f\u305d\u308c\u3092\u793a\u3057\u3066\u3044\u307e\u3059</p>\n",
|
||||
"<p>The regret for each information set and action pair <span translate=no>_^_0_^_</span> is maintained,</p>\n": "<p>\u305d\u308c\u305e\u308c\u306e\u60c5\u5831\u30bb\u30c3\u30c8\u3001<span translate=no>_^_0_^_</span>\u30a2\u30af\u30b7\u30e7\u30f3\u30da\u30a2\u306b\u5bfe\u3059\u308b\u5f8c\u6094\u306f\u4fdd\u305f\u308c\u3001</p>\n",
|
||||
"<p>The strategy is calculated using regret matching.</p>\n": "<p>\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u306f\u30ea\u30b0\u30ec\u30c3\u30c8\u30de\u30c3\u30c1\u30f3\u30b0\u3092\u4f7f\u7528\u3057\u3066\u8a08\u7b97\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<p>Then we get <strong>sampled counterfactual value</strong> fro block <span translate=no>_^_0_^_</span>,</p>\n": "<p>\u6b21\u306b\u3001<strong>\u30d6\u30ed\u30c3\u30af\u304b\u3089\u53cd\u4e8b\u5b9f\u5024\u3092\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057</strong>\u3001<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Then,</p>\n": "<p>\u6b21\u306b\u3001</p>\n",
|
||||
"<p>Therefore we can sample a part of the game tree and calculate the regrets. We calculate an estimate of regrets</p>\n": "<p>\u305d\u306e\u305f\u3081\u3001\u30b2\u30fc\u30e0\u30c4\u30ea\u30fc\u306e\u4e00\u90e8\u3092\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057\u3066\u5f8c\u6094\u3092\u8a08\u7b97\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u5f8c\u6094\u306e\u63a8\u5b9a\u5024\u3092\u8a08\u7b97\u3057\u307e\u3059</p>\n",
|
||||
"<p>Therefore,</p>\n": "<p>\u3057\u305f\u304c\u3063\u3066\u3001</p>\n",
|
||||
"<p>This is <span translate=no>_^_0_^_</span>-Nash equilibrium. You can similarly prove for games with more than 2 players.</p>\n": "<p>\u3053\u308c\u304c <span translate=no>_^_0_^_</span>-\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u3067\u3059\u3002\u540c\u3058\u3088\u3046\u306b\u30012\u4eba\u4ee5\u4e0a\u3067\u30d7\u30ec\u30a4\u3059\u308b\u30b2\u30fc\u30e0\u3067\u3082\u8a3c\u660e\u3067\u304d\u307e\u3059\u3002</p>\n",
|
||||
"<p>To store <span translate=no>_^_0_^_</span> </p>\n": "<p>\u4fdd\u5b58\u3059\u308b <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>To store <span translate=no>_^_0_^_</span> for each action <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u30a2\u30af\u30b7\u30e7\u30f3\u3054\u3068\u306b\u4fdd\u5b58\u3059\u308b\u306b\u306f <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Total regret of not taking each action <span translate=no>_^_0_^_</span>,</p>\n<span translate=no>_^_1_^_</span><p>We maintain <span translate=no>_^_2_^_</span> instead of <span translate=no>_^_3_^_</span> since <span translate=no>_^_4_^_</span> term cancels out anyway when computing strategy <span translate=no>_^_5_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u305d\u308c\u305e\u308c\u306e\u884c\u52d5\u3092\u3068\u3089\u306a\u304b\u3063\u305f\u3053\u3068\u306b\u5bfe\u3059\u308b\u5b8c\u5168\u306a\u5f8c\u6094\u3001</p>\n<span translate=no>_^_1_^_</span><p><span translate=no>_^_3_^_</span><span translate=no>_^_4_^_</span>\u6226\u7565\u8a08\u7b97\u6642\u306b\u3069\u3046\u305b\u30bf\u30fc\u30e0\u304c\u76f8\u6bba\u3055\u308c\u3066\u3057\u307e\u3046\u306e\u3067\u3001<span translate=no>_^_2_^_</span>\u4ee3\u308f\u308a\u306b\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u3092\u884c\u3044\u307e\u3059\u3002<span translate=no>_^_5_^_</span></p>\n",
|
||||
"<p>Track data for analytics </p>\n": "<p>\u5206\u6790\u7528\u30c8\u30e9\u30c3\u30ad\u30f3\u30b0\u30c7\u30fc\u30bf</p>\n",
|
||||
"<p>Tracker for analytics </p>\n": "<p>\u5206\u6790\u7528\u30c8\u30e9\u30c3\u30ab\u30fc</p>\n",
|
||||
"<p>Unique key identifying the information set </p>\n": "<p>\u60c5\u5831\u30bb\u30c3\u30c8\u3092\u8b58\u5225\u3059\u308b\u30e6\u30cb\u30fc\u30af\u306a\u30ad\u30fc</p>\n",
|
||||
"<p>Update cumulative strategies <span translate=no>_^_0_^_</span> </p>\n": "<p>\u7d2f\u7a4d\u6226\u7565\u306e\u66f4\u65b0 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Update the strategy <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u3092\u66f4\u65b0 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Walk tree and update regrets for each player </p>\n": "<p>\u30c4\u30ea\u30fc\u3092\u6b69\u304d\u3001\u5404\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u6094\u3044\u6539\u3081\u3092\u66f4\u65b0</p>\n",
|
||||
"<p>We implement Monte Carlo Counterfactual Regret Minimization (MCCFR) with chance sampling (CS). It iteratively, explores part of the game tree by trying all player actions, but sampling chance events. Chance events are things like dealing cards; they are kept sampled once per iteration. Then it calculates, for each action, the <em>regret</em> of following the current strategy instead of taking that action. Then it updates the strategy based on these regrets for the next iteration, using regret matching. Finally, it computes the average of the strategies throughout the iterations, which is very close to the Nash equilibrium if we ran enough iterations.</p>\n": "<p>\u30e2\u30f3\u30c6\u30ab\u30eb\u30ed\u53cd\u4e8b\u5b9f\u5f8c\u6094\u6700\u5c0f\u5316\uff08MCCFR\uff09\u3068\u30c1\u30e3\u30f3\u30b9\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\uff08CS\uff09\u3092\u5b9f\u88c5\u3057\u3066\u3044\u307e\u3059\u3002\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u3059\u3079\u3066\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u8a66\u3057\u306a\u304c\u3089\u3001\u5076\u7136\u306e\u51fa\u6765\u4e8b\u3092\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3059\u308b\u3053\u3068\u3067\u3001\u30b2\u30fc\u30e0\u30c4\u30ea\u30fc\u306e\u4e00\u90e8\u3092\u63a2\u7d22\u3059\u308b\u53cd\u5fa9\u51e6\u7406\u3092\u884c\u3044\u307e\u3059\u3002\u30c1\u30e3\u30f3\u30b9\u30a4\u30d9\u30f3\u30c8\u306f\u30c7\u30a3\u30fc\u30ea\u30f3\u30b0\u30ab\u30fc\u30c9\u306e\u3088\u3046\u306a\u3082\u306e\u3067\u3001\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u3054\u3068\u306b1\u56de\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3055\u308c\u307e\u3059\u3002\u6b21\u306b\u3001\u5404\u30a2\u30af\u30b7\u30e7\u30f3\u306b\u3064\u3044\u3066\u3001<em>\u305d\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u3059\u308b\u4ee3\u308f\u308a\u306b\u73fe\u5728\u306e\u6226\u7565\u306b\u5f93\u3063\u305f\u5834\u5408\u306e\u5f8c\u6094\u3092\u8a08\u7b97\u3057\u307e\u3059</em>\u3002\u6b21\u306b\u3001\u5f8c\u6094\u30de\u30c3\u30c1\u30f3\u30b0\u3092\u4f7f\u7528\u3057\u3066\u3001\u3053\u308c\u3089\u306e\u5f8c\u6094\u306b\u57fa\u3065\u3044\u3066\u6226\u7565\u3092\u66f4\u65b0\u3057\u3001\u6b21\u306e\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u306b\u5099\u3048\u307e\u3059\u3002\u6700\u5f8c\u306b\u3001\u53cd\u5fa9\u5168\u4f53\u306e\u6226\u7565\u306e\u5e73\u5747\u3092\u8a08\u7b97\u3057\u307e\u3059\u3002\u3053\u308c\u306f\u3001\u5341\u5206\u306a\u53cd\u5fa9\u3092\u5b9f\u884c\u3057\u305f\u5834\u5408\u3001\u30ca\u30c3\u30b7\u30e5\u5747\u8861\u306b\u975e\u5e38\u306b\u8fd1\u3044\u5024\u306b\u306a\u308a\u307e\u3059</p>\u3002\n",
|
||||
"<p>We maintain the cumulative strategy <span translate=no>_^_0_^_</span> to compute overall average strategy</p>\n<p><span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u7d2f\u7a4d\u6226\u7565\u3092\u7dad\u6301\u3057\u3066\u5168\u4f53\u306e\u5e73\u5747\u6226\u7565\u3092\u8a08\u7b97\u3057\u307e\u3059</p>\n<p><span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>We tried to keep our Python implementation easy-to-understand like a tutorial. We run it on <a href=\"kuhn/index.html\">a very simple imperfect information game called Kuhn poker</a>.</p>\n": "<p>Python\u306e\u5b9f\u88c5\u306f\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306e\u3088\u3046\u306b\u308f\u304b\u308a\u3084\u3059\u3044\u3082\u306e\u306b\u3057\u3088\u3046\u3068\u3057\u307e\u3057\u305f\u3002<a href=\"kuhn/index.html\">\u79c1\u305f\u3061\u306f\u305d\u308c\u3092\u30af\u30fc\u30f3\u30dd\u30fc\u30ab\u30fc\u3068\u3044\u3046\u975e\u5e38\u306b\u5358\u7d14\u3067\u4e0d\u5b8c\u5168\u306a\u60c5\u5831\u30b2\u30fc\u30e0\u3067\u904b\u55b6\u3057\u3066\u3044\u307e\u3059</a></p>\u3002\n",
|
||||
"<p>We will first introduce the mathematical notation and theory.</p>\n": "<p>\u6700\u521d\u306b\u6570\u5b66\u7684\u8868\u8a18\u6cd5\u3068\u7406\u8ad6\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<p>and the strategy is calculated with regret matching,</p>\n": "<p>\u305d\u3057\u3066\u6226\u7565\u306f\u5f8c\u6094\u30de\u30c3\u30c1\u30f3\u30b0\u3067\u8a08\u7b97\u3055\u308c\u307e\u3059</p>\n",
|
||||
"<p>if <span translate=no>_^_0_^_</span>, </p>\n": "<p>\u3082\u3057<span translate=no>_^_0_^_</span>\u3001</p>\n",
|
||||
"<p>is the strategy profile <span translate=no>_^_0_^_</span> with player <span translate=no>_^_1_^_</span>'s strategy replaced with <span translate=no>_^_2_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u304c\u306b\u7f6e\u304d\u63db\u3048\u3089\u308c\u305f\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3067\u3059\u3002</p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the set of terminal histories reachable from <span translate=no>_^_1_^_</span>, and <span translate=no>_^_2_^_</span> is the prefix of <span translate=no>_^_3_^_</span> up to <span translate=no>_^_4_^_</span>. <span translate=no>_^_5_^_</span> is the probability of reaching z from <span translate=no>_^_6_^_</span>.</p>\n": "<p>where <span translate=no>_^_0_^_</span> \u306f\u304b\u3089\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\u306a\u7aef\u672b\u5c65\u6b74\u306e\u30bb\u30c3\u30c8\u3067<span translate=no>_^_1_^_</span>\u3001\u306f up to <span translate=no>_^_2_^_</span> \u306e\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u3067\u3059\u3002<span translate=no>_^_3_^_</span> <span translate=no>_^_4_^_</span><span translate=no>_^_5_^_</span>\u306f z <span translate=no>_^_6_^_</span> \u306b\u5230\u9054\u3059\u308b\u78ba\u7387\u3067\u3059\u3002</p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the strategy profile <span translate=no>_^_1_^_</span> with the modification of always taking action <span translate=no>_^_2_^_</span> at information set <span translate=no>_^_3_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span><span translate=no>_^_3_^_</span>\u60c5\u5831\u30bb\u30c3\u30c8\u3067\u5e38\u306b\u30a2\u30af\u30b7\u30e7\u30f3\u3092\u53d6\u308b\u3088\u3046\u306b\u4fee\u6b63\u3057\u305f\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u304c\u3069\u3053\u306b\u3042\u308b\u304b</p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the strategy profile of all players in iteration <span translate=no>_^_1_^_</span>, and</p>\n": "<p><span translate=no>_^_1_^_</span>\u30a4\u30c6\u30ec\u30fc\u30b7\u30e7\u30f3\u4e2d\u306e\u5168\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u30b9\u30c8\u30e9\u30c6\u30b8\u30fc\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3068 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span></p>\n": "<p>\u3069\u3053 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>where</p>\n": "<p>\u3069\u3053</p>\n",
|
||||
"<p>with a simple proof.</p>\n": "<p>\u7c21\u5358\u306a\u8a3c\u62e0\u3067\u3002</p>\n",
|
||||
"<span translate=no>_^_0_^_</span>": "<span translate=no>_^_0_^_</span>",
|
||||
"<span translate=no>_^_0_^_</span><p> </p>\n": "<span translate=no>_^_0_^_</span><p></p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> creates a new empty history </li>\n<li><span translate=no>_^_1_^_</span> is the number of iterations to train on <span translate=no>_^_2_^_</span> </li>\n<li><span translate=no>_^_3_^_</span> is the number of players</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u65b0\u3057\u3044\u7a7a\u306e\u5c65\u6b74\u3092\u4f5c\u6210\u3057\u307e\u3059</li>\n<li><span translate=no>_^_1_^_</span>\u306f\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3059\u308b\u53cd\u5fa9\u56de\u6570\u3067\u3059 <span translate=no>_^_2_^_</span></li>\n<li><span translate=no>_^_3_^_</span>\u306f\u30d7\u30ec\u30a4\u30e4\u30fc\u306e\u6570</li></ul>\n",
|
||||
"Regret Minimization in Games with Incomplete Information (CFR)": "\u60c5\u5831\u304c\u4e0d\u5b8c\u5168\u306a\u30b2\u30fc\u30e0\u306b\u304a\u3051\u308b\u5f8c\u6094\u6700\u5c0f\u5316 (CFR)",
|
||||
"This is an annotated implementation/tutorial of Regret Minimization in Games with Incomplete Information": "\u3053\u308c\u306f\u3001\u60c5\u5831\u304c\u4e0d\u5b8c\u5168\u306a\u30b2\u30fc\u30e0\u3067\u306e\u5f8c\u6094\u6700\u5c0f\u5316\u306e\u6ce8\u91c8\u4ed8\u304d\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3067\u3059"
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
{
|
||||
"<h1>Regret Minimization in Games with Incomplete Information (CFR)</h1>\n": "<h1>\u0d85\u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc0\u0dbd \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1 (CFR)</h1>\n",
|
||||
"<h2>Calculate strategy</h2>\n<p>Calculate current strategy using <a href=\"#RegretMatching\">regret matching</a>.</p>\n<span translate=no>_^_0_^_</span><p>where <span translate=no>_^_1_^_</span></p>\n": "<h2>\u0d8b\u0db4\u0dcf\u0dba\u0d9c\u0dab\u0db1\u0dba</h2>\n<p><a href=\"#RegretMatching\">\u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0d9c\u0dd0\u0dbd\u0db4\u0dd3\u0db8</a>\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db8\u0dd2\u0db1\u0dca \u0dc0\u0dad\u0dca\u0db8\u0db1\u0dca \u0d8b\u0db4\u0dcf\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1. </p>\n<span translate=no>_^_0_^_</span><p>\u0d9a\u0ddc\u0dc4\u0dda\u0daf <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<h2>Counterfactual Regret Minimization (CFR) Algorithm</h2>\n<p>We do chance sampling (<strong>CS</strong>) where all the chance events (nodes) are sampled and all other events (nodes) are explored.</p>\n<p>We can ignore the term <span translate=no>_^_0_^_</span> since it's the same for all terminal histories since we are doing chance sampling and it cancels out when calculating strategy (common in numerator and denominator).</p>\n": "<h2>\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0\u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 (CFR) \u0d87\u0dbd\u0dca\u0d9c\u0ddc\u0dbb\u0dd2\u0dad\u0db8</h2>\n<p>\u0d85\u0db4\u0dd2\u0d85\u0dc4\u0db8\u0dca\u0db6\u0dd9\u0db1\u0dca \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dca (<strong>\u0dc3\u0dd3\u0d91\u0dc3\u0dca</strong>) \u0d9a\u0dbb\u0db1\u0dca\u0db1\u0dd9\u0db8\u0dd4, \u0d91\u0dc4\u0dd2\u0daf\u0dd3 \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf \u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8\u0dca (\u0db1\u0ddd\u0da9\u0dca) \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2 \u0d9a\u0dbb \u0d87\u0dad\u0dd2 \u0d85\u0dad\u0dbb \u0d85\u0db1\u0dd9\u0d9a\u0dca \u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8 \u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8\u0dca (\u0db1\u0ddd\u0da9\u0dca) \u0d9c\u0dc0\u0dda\u0dc2\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dd4 \u0dbd\u0dd0\u0db6\u0dda. </p>\n<p>\u0d85\u0db4\u0dd2\u0d85\u0dc4\u0db8\u0dca\u0db6\u0dd9\u0db1\u0dca \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dca \u0dc3\u0dd2\u0daf\u0dd4 \u0d9a\u0dbb\u0db1 <span translate=no>_^_0_^_</span> \u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dca \u0d91\u0dba \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0db1\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0db8\u0dcf\u0db1 \u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dca \u0db8\u0dd9\u0db8 \u0db4\u0daf\u0dba \u0db1\u0ddc\u0dc3\u0dbd\u0d9a\u0dcf \u0dc4\u0dd0\u0dbb\u0dd2\u0dba \u0dc4\u0dd0\u0d9a\u0dd2 \u0d85\u0dad\u0dbb \u0d8b\u0db4\u0dcf\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda\u0daf\u0dd3 \u0d91\u0dba \u0d85\u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0dc0\u0dda (\u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0d82\u0d9a\u0dba \u0dc3\u0dc4 \u0db1\u0dd2\u0dc4\u0dcf\u0d9a\u0dba \u0dad\u0dd4\u0dc5 \u0db4\u0ddc\u0daf\u0dd4). </p>\n",
|
||||
"<h2>Get average strategy</h2>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h2>\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d8b\u0db4\u0dcf\u0dba \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</h2>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<h2>Introduction</h2>\n": "<h2>\u0dc4\u0dd0\u0db3\u0dd2\u0db1\u0dca\u0dc0\u0dd3\u0db8</h2>\n",
|
||||
"<h3><a href=\"#History\">History</a></h3>\n": "<h3><a href=\"#History\">\u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba</a></h3>\n",
|
||||
"<h3><a href=\"#InfoSet\">Information Set <span translate=no>_^_0_^_</span></a></h3>\n": "<h3><a href=\"#InfoSet\">\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba <span translate=no>_^_0_^_</span></a></h3>\n",
|
||||
"<h3>Action</h3>\n": "<h3>\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0</h3>\n",
|
||||
"<h3>Configurable CFR module</h3>\n": "<h3>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0d9c\u0dad\u0d9a\u0dc5 \u0dc4\u0dd0\u0d9a\u0dd2 CFR \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd\u0dba</h3>\n",
|
||||
"<h3>Counterfactual regret</h3>\n": "<h3>\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0\u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0</h3>\n",
|
||||
"<h3>Information set tracker</h3>\n<p>This is a small helper class to track data from information sets</p>\n": "<h3>\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4\u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0d9a\u0dca \u0da7\u0dca\u0dbb\u0dd0\u0d9a\u0dbb\u0dca</h3>\n<p>\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4\u0d9a\u0da7\u0dca\u0da7\u0dbd \u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0daf\u0dad\u0dca\u0dad \u0dc3\u0ddc\u0dba\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db8\u0dd9\u0dba \u0d9a\u0dd4\u0da9\u0dcf \u0d8b\u0db4\u0d9a\u0dcf\u0dbb\u0d9a \u0db4\u0db1\u0dca\u0dad\u0dd2\u0dba\u0d9a\u0dd2</p>\n",
|
||||
"<h3>Iteratively update <span translate=no>_^_0_^_</span></h3>\n<p>This updates the strategies for <span translate=no>_^_1_^_</span> iterations.</p>\n": "<h3>\u0db1\u0dd0\u0dc0\u0dad\u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 <span translate=no>_^_0_^_</span></h3>\n<p>\u0db8\u0dd9\u0dba <span translate=no>_^_1_^_</span> \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0dc3\u0db3\u0dc4\u0dcf \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dbb\u0dba\u0dd2. </p>\n",
|
||||
"<h3>Monte Carlo CFR (MCCFR)</h3>\n": "<h3>\u0db8\u0ddc\u0db1\u0dca\u0da7\u0dda\u0d9a\u0dcf\u0dbd\u0ddd CFR (MCCFR)</h3>\n",
|
||||
"<h3>Nash Equilibrium</h3>\n": "<h3>\u0db1\u0dd0\u0dc2\u0dca\u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba</h3>\n",
|
||||
"<h3>Player</h3>\n": "<h3>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf</h3>\n",
|
||||
"<h3>Probability of History</h3>\n": "<h3>\u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0dda\u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0</h3>\n",
|
||||
"<h3>Regret Matching</h3>\n": "<h3>\u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0d9c\u0dd0\u0dbd\u0db4\u0dd3\u0db8</h3>\n",
|
||||
"<h3>Regret Minimization</h3>\n": "<h3>\u0d85\u0dc0\u0db8\u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4</h3>\n",
|
||||
"<h3>Strategy</h3>\n": "<h3>\u0d8b\u0db4\u0dcf\u0dba\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba</h3>\n",
|
||||
"<h3>Utility (Pay off)</h3>\n": "<h3>\u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0(\u0d9c\u0dd9\u0dc0\u0db1\u0dca\u0db1)</h3>\n",
|
||||
"<h3>Walk Tree</h3>\n<p>This function walks the game tree.</p>\n<ul><li><span translate=no>_^_0_^_</span> is the current history <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the player <span translate=no>_^_3_^_</span> that we are computing regrets of </li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_4_^_</span></a> is <span translate=no>_^_5_^_</span> </li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_6_^_</span></a> is <span translate=no>_^_7_^_</span></li></ul>\n<p>It returns the expected utility, for the history <span translate=no>_^_8_^_</span> <span translate=no>_^_9_^_</span> where <span translate=no>_^_10_^_</span> is the set of terminal histories with prefix <span translate=no>_^_11_^_</span></p>\n<p>While walking the tee it updates the total regrets <span translate=no>_^_12_^_</span>.</p>\n": "<h3>\u0dbb\u0dd4\u0d9a\u0dca\u0d87\u0dc0\u0dd2\u0daf\u0dd2\u0db1\u0dca\u0db1</h3>\n<p>\u0db8\u0dd9\u0db8\u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0d9c\u0dc3 \u0d87\u0dc0\u0dd2\u0daf\u0dd2\u0db1\u0dc0\u0dcf. </p>\n<ul><li><span translate=no>_^_0_^_</span> \u0dc0\u0dbb\u0dca\u0dad\u0db8\u0dcf\u0db1 \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> \u0d85\u0db4\u0dd2 \u0db4\u0dbb\u0dd2\u0d9c\u0dab\u0d9a \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0dc0\u0db1 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf <span translate=no>_^_3_^_</span> \u0dc0\u0dda </li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_4_^_</span></a> \u0dc0\u0dda <span translate=no>_^_5_^_</span> </li>\n</ul><li><a href=\"#HistoryProbability\"><span translate=no>_^_6_^_</span></a> \u0dc0\u0dda <span translate=no>_^_7_^_</span></li>\n<p>\u0d91\u0dba\u0d85\u0db4\u0dda\u0d9a\u0dca\u0dc2\u0dd2\u0dad \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0 \u0db1\u0dd0\u0dc0\u0dad \u0dbd\u0db6\u0dcf \u0daf\u0dd9\u0dba\u0dd2, \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d8b\u0db4\u0dc3\u0dbb\u0dca\u0d9c\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3 \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0d9a\u0dca <span translate=no>_^_8_^_</span> <span translate=no>_^_9_^_</span> <span translate=no>_^_10_^_</span> \u0d9a\u0ddc\u0dc4\u0dda\u0daf? <span translate=no>_^_11_^_</span></p>\n<p>\u0da7\u0dd3\u0d87\u0dc0\u0dd2\u0daf\u0dd2\u0db1 \u0d85\u0dad\u0dbb\u0dad\u0dd4\u0dbb \u0d91\u0dba \u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dbb\u0dba\u0dd2 <span translate=no>_^_12_^_</span>. </p>\n",
|
||||
"<p> <a id=\"History\"></a></p>\n<h2>History</h2>\n<p>History <span translate=no>_^_0_^_</span> is a sequence of actions including chance events, and <span translate=no>_^_1_^_</span> is the set of all histories.</p>\n<p>This class should be extended with game specific logic.</p>\n": "<p> <a id=\"History\"></a></p>\n<h2>\u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba</h2>\n<p>\u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba <span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0d87\u0dad\u0dd4\u0dc5\u0dd4 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf \u0dc0\u0dbd \u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dba\u0d9a\u0dd2 \u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0d9a\u0dca \u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8\u0dca, <span translate=no>_^_1_^_</span> \u0d91\u0dba \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0db1\u0dca\u0d9c\u0dda \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0dba\u0dd2. </p>\n<p>\u0db8\u0dd9\u0db8\u0db4\u0db1\u0dca\u0dad\u0dd2\u0dba \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dd2\u0dad \u0dad\u0dbb\u0dca\u0d9a\u0db1\u0dba \u0dc3\u0db8\u0d9f \u0daf\u0dd3\u0dbb\u0dca can \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4\u0dba. </p>\n",
|
||||
"<p> <a id=\"InfoSet\"></a></p>\n<h2>Information Set <span translate=no>_^_0_^_</span></h2>\n": "<p> <a id=\"InfoSet\"></a></p>\n<h2>\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4\u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba <span translate=no>_^_0_^_</span></h2>\n",
|
||||
"<p> <a id=\"terminal_utility\"></a> Utility of player <span translate=no>_^_0_^_</span> for a terminal history. <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span></p>\n": "<p> <a id=\"terminal_utility\"></a> \u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0dca <span translate=no>_^_0_^_</span> \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0. <span translate=no>_^_1_^_</span> \u0d9a\u0ddc\u0dc4\u0dda\u0daf <span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p> Actions <span translate=no>_^_0_^_</span></p>\n": "<p> \u0d9a\u0dca\u200d\u0dbb\u0dd2\u0dba\u0dcf <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> Add an action to the history.</p>\n": "<p> \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0da7\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1. </p>\n",
|
||||
"<p> Create a new <a href=\"#InfoSet\">information set</a> for the current player</p>\n": "<p> \u0dc0\u0dad\u0dca\u0db8\u0db1\u0dca\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0dc3\u0db3\u0dc4\u0dcf \u0db1\u0dc0 <a href=\"#InfoSet\">\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0d9a\u0dca</a> \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Get <a href=\"#InfoSet\">information set</a> for the current player</p>\n": "<p> \u0dc0\u0dad\u0dca\u0db8\u0db1\u0dca\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf <a href=\"#InfoSet\">\u0dc3\u0db3\u0dc4\u0dcf \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4</a> \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Get current player, denoted by <span translate=no>_^_0_^_</span>, where <span translate=no>_^_1_^_</span> is known as <strong>Player function</strong>.</p>\n<p>If <span translate=no>_^_2_^_</span> it means that current event is a chance <span translate=no>_^_3_^_</span> event. Something like dealing cards, or opening common cards in poker.</p>\n": "<p> \u0dc0\u0dad\u0dca\u0db8\u0db1\u0dca\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1, \u0dc0\u0dd2\u0dc3\u0dd2\u0db1\u0dca \u0daf\u0dd0\u0d9a\u0dca\u0dc0\u0dda <span translate=no>_^_0_^_</span>, \u0d91\u0dc4\u0dd2\u0daf\u0dd3 <strong>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0d8b\u0dad\u0dca\u0dc3\u0dc0\u0dba</strong>\u0dbd\u0dd9\u0dc3 <span translate=no>_^_1_^_</span> \u0dc4\u0dd0\u0db3\u0dd2\u0db1\u0dca\u0dc0\u0dda. </p>\n<p>\u0dc0\u0dbb\u0dca\u0dad\u0db8\u0dcf\u0db1 <span translate=no>_^_3_^_</span> \u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8 \u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0d9a\u0dca \u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0d9a\u0dca \u0db6\u0dc0 <span translate=no>_^_2_^_</span> \u0d91\u0dba\u0dd2\u0db1\u0dca \u0d85\u0daf\u0dc4\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1\u0dda \u0db1\u0db8\u0dca. \u0d9a\u0dcf\u0da9\u0dca\u0db4\u0dad\u0dca \u0d9c\u0db1\u0dd4\u0daf\u0dd9\u0db1\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc4\u0ddd \u0db4\u0ddd\u0d9a\u0dbb\u0dca \u0dc0\u0dbd \u0db4\u0ddc\u0daf\u0dd4 \u0d9a\u0dcf\u0da9\u0dca\u0db4\u0dad\u0dca \u0dc0\u0dd2\u0dc0\u0dd8\u0dad \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc0\u0dd0\u0db1\u0dd2 \u0daf\u0dd9\u0dba\u0d9a\u0dca. </p>\n",
|
||||
"<p> Human readable representation</p>\n": "<p> \u0db8\u0dcf\u0db1\u0dc0\u0d9a\u0dd2\u0dba\u0dc0\u0dd2\u0dba \u0dc4\u0dd0\u0d9a\u0dd2 \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba</p>\n",
|
||||
"<p> Initialize <strong>CFR</strong> algorithm</p>\n": "<p> <strong>CFR</strong> \u0d87\u0dbd\u0dca\u0d9c\u0ddc\u0dbb\u0dd2\u0dad\u0db8 \u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Initialize</p>\n": "<p> \u0d86\u0dbb\u0db8\u0dca\u0db7\u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Load data from a saved dictionary</p>\n": "<p> \u0dc3\u0dd4\u0dbb\u0d9a\u0dd2\u0db1\u0dbd\u0daf \u0dc1\u0db6\u0dca\u0daf\u0d9a\u0ddd\u0dc2\u0dba\u0d9a\u0dd2\u0db1\u0dca \u0daf\u0dad\u0dca\u0dad \u0db4\u0dd6\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Load information set from a saved dictionary</p>\n": "<p> \u0dc3\u0dd4\u0dbb\u0d9a\u0dd2\u0db1\u0dbd\u0daf \u0dc1\u0db6\u0dca\u0daf\u0d9a\u0ddd\u0dc2\u0dba\u0d9a\u0dd2\u0db1\u0dca \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0db4\u0dd6\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Returns the information set <span translate=no>_^_0_^_</span> of the current player for a given history <span translate=no>_^_1_^_</span></p>\n": "<p> \u0daf\u0dd3\u0d87\u0dad\u0dd2 \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0dc0\u0dbb\u0dca\u0dad\u0db8\u0dcf\u0db1 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba <span translate=no>_^_0_^_</span> \u0db1\u0dd0\u0dc0\u0dad \u0dbd\u0db6\u0dcf \u0daf\u0dd9\u0dba\u0dd2 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p> Sample a chance when <span translate=no>_^_0_^_</span>.</p>\n": "<p> \u0d9a\u0dc0\u0daf\u0dcf\u0daf\u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0d9a\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd\u0dba <span translate=no>_^_0_^_</span>. </p>\n",
|
||||
"<p> Save the information set to a dictionary</p>\n": "<p> \u0dc1\u0db6\u0dca\u0daf\u0d9a\u0ddd\u0dc2\u0dba\u0d9a\u0da7 \u0dc3\u0d9a\u0dc3\u0dcf \u0d87\u0dad\u0dd2 \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0dc3\u0dd4\u0dbb\u0d9a\u0dd2\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Set tracking indicators</p>\n": "<p> \u0dc3\u0ddc\u0dba\u0dcf\u0d9c\u0dd0\u0db1\u0dd3\u0dd9\u0db8\u0dca \u0daf\u0dbb\u0dca\u0dc1\u0d9a</p>\n",
|
||||
"<p> Track the data from all information sets</p>\n": "<p> \u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd \u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0daf\u0dad\u0dca\u0dad \u0db1\u0dd2\u0dbb\u0dd3\u0d9a\u0dca\u0dc2\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Whether it's a terminal history; i.e. game over. <span translate=no>_^_0_^_</span></p>\n": "<p> \u0d91\u0dba\u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0dca \u0dc0\u0dda\u0dc0\u0dcf; \u0d91\u0db1\u0db8\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf\u0dc0 \u0d85\u0dc0\u0dc3\u0db1\u0dca. <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> Whether the next step is a chance step; something like dealing a new card. <span translate=no>_^_0_^_</span></p>\n": "<p> \u0d8a\u0dc5\u0d9f\u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d85\u0dc4\u0db8\u0dca\u0db6\u0dd9\u0db1\u0dca \u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0d9a\u0dca \u0dc0\u0dda\u0dc0\u0dcf; \u0db1\u0dc0 \u0d9a\u0dcf\u0da9\u0dca\u0db4\u0dad\u0d9a\u0dca \u0d9c\u0db1\u0dd4\u0daf\u0dd9\u0db1\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc0\u0dd0\u0db1\u0dd2 \u0daf\u0dd9\u0dba\u0d9a\u0dca. <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/cfr/kuhn/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n": "<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/cfr/kuhn/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<p><a href=\"https://twitter.com/labmlai/status/1407186002255380484\"><span translate=no>_^_0_^_</span></a> Twitter thread</p>\n": "<p><a href=\"https://twitter.com/labmlai/status/1407186002255380484\"><span translate=no>_^_0_^_</span></a> \u0da7\u0dca\u0dc0\u0dd2\u0da7\u0dbb\u0dca \u0db1\u0dd6\u0dbd\u0dca</p>\n",
|
||||
"<p><a id=\"CounterfactualRegret\"></a></p>\n": "<p><a id=\"CounterfactualRegret\"></a></p>\n",
|
||||
"<p><a id=\"HistoryProbability\"></a></p>\n": "<p><a id=\"HistoryProbability\"></a></p>\n",
|
||||
"<p><a id=\"MCCFR\"></a></p>\n": "<p><a id=\"MCCFR\"></a></p>\n",
|
||||
"<p><a id=\"NashEquilibrium\"></a></p>\n": "<p><a id=\"NashEquilibrium\"></a></p>\n",
|
||||
"<p><a id=\"RegretMatching\"></a></p>\n": "<p><a id=\"RegretMatching\"></a></p>\n",
|
||||
"<p><a id=\"Strategy\"></a></p>\n": "<p><a id=\"Strategy\"></a></p>\n",
|
||||
"<p><em>Let's dive into the code!</em></p>\n": "\u0d85\u0db4\u0dd2<p><em>\u0d9a\u0dda\u0dad\u0dba\u0da7 \u0d9a\u0dd2\u0db8\u0dd2\u0daf\u0dd9\u0db8\u0dd4! </em></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is a set of subsets of <span translate=no>_^_1_^_</span> (<span translate=no>_^_2_^_</span>) where we look at only a single block <span translate=no>_^_3_^_</span> in an iteration. Union of all subsets spans <span translate=no>_^_4_^_</span> (<span translate=no>_^_5_^_</span>). <span translate=no>_^_6_^_</span> is the probability of picking block <span translate=no>_^_7_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0d8b\u0db4 \u0d9a\u0da7\u0dca\u0da7\u0dbd \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0d9a\u0dd2 <span translate=no>_^_1_^_</span> (<span translate=no>_^_2_^_</span>) \u0d91\u0dc4\u0dd2\u0daf\u0dd3 \u0d85\u0db4\u0dd2 \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba\u0d9a \u0dad\u0db1\u0dd2 \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca <span translate=no>_^_3_^_</span> \u0d91\u0d9a\u0d9a\u0dca \u0db4\u0db8\u0dab\u0d9a\u0dca \u0daf\u0dd9\u0dc3 \u0db6\u0dbd\u0db8\u0dd4. \u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8 \u0d8b\u0db4 \u0d9a\u0dd4\u0dbd\u0dc0\u0dbd \u0dc3\u0d82\u0d9c\u0db8\u0dba \u0dc0\u0dd2\u0dc4\u0dd2\u0daf\u0dda <span translate=no>_^_4_^_</span> (<span translate=no>_^_5_^_</span>). <span translate=no>_^_6_^_</span> \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0dad\u0ddd\u0dbb\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 <span translate=no>_^_7_^_</span>. </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is known as the <strong>information partition</strong> of player <span translate=no>_^_1_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span> \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda <strong>\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0ddc\u0da7\u0dc3</strong> \u0dbd\u0dd9\u0dc3 \u0dc4\u0dd0\u0db3\u0dd2\u0db1\u0dca\u0dc0\u0dda <span translate=no>_^_1_^_</span>. </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is strategies of all players except <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span> \u0dc4\u0dd0\u0dbb \u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0db1\u0dca\u0d9c\u0dda \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0dc0\u0dda <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the <strong>strategy profile</strong> which consists of strategies of all players <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span> \u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0db1\u0dca\u0d9c\u0dda <strong>\u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0dc3\u0db8\u0db1\u0dca\u0dc0\u0dd2\u0dad \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0db4\u0dd0\u0dad\u0dd2\u0d9a\u0da9\u0dba\u0dd2</strong> <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the expected utility (payoff) for player <span translate=no>_^_1_^_</span> with strategy profile <span translate=no>_^_2_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span> \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0db4\u0dd0\u0dad\u0dd2\u0d9a\u0da9 <span translate=no>_^_1_^_</span> \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dda\u0d9a\u0dca\u0dc2\u0dd2\u0dad \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0 (\u0d9c\u0dd9\u0dc0\u0dd3\u0db8\u0dca) <span translate=no>_^_2_^_</span>\u0dc0\u0dda. </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of picking <span translate=no>_^_1_^_</span> in current iteration; i.e. <span translate=no>_^_2_^_</span> - the sum of <span translate=no>_^_3_^_</span> where <span translate=no>_^_4_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span> \u0dc0\u0dad\u0dca\u0db8\u0db1\u0dca \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba\u0dda <span translate=no>_^_1_^_</span> \u0daf\u0dd3 \u0dad\u0ddd\u0dbb\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0; i.e. <span translate=no>_^_2_^_</span> - <span translate=no>_^_3_^_</span> \u0d9a\u0ddc\u0dad\u0dd0\u0db1\u0daf \u0d91\u0d9a\u0dad\u0dd4\u0dc0 <span translate=no>_^_4_^_</span>. </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of reaching <span translate=no>_^_1_^_</span> with only player <span translate=no>_^_2_^_</span>'s contribution. That is, <span translate=no>_^_3_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span> \u0db4\u0db8\u0dab\u0d9a\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf <span translate=no>_^_2_^_</span>\u0daf\u0dcf\u0dba\u0d9a\u0dad\u0dca\u0dc0\u0dba <span translate=no>_^_1_^_</span> \u0dc3\u0db8\u0d9c \u0dc5\u0d9f\u0dcf \u0dc0\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 \u0dc0\u0dda. \u0d91\u0db1\u0db8\u0dca, <span translate=no>_^_3_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of reaching the history <span translate=no>_^_1_^_</span> with strategy profile <span translate=no>_^_2_^_</span>. <span translate=no>_^_3_^_</span> is the probability of reaching <span translate=no>_^_4_^_</span> without player <span translate=no>_^_5_^_</span>'s contribution; i.e. player <span translate=no>_^_6_^_</span> took the actions to follow <span translate=no>_^_7_^_</span> with a probability of <span translate=no>_^_8_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span> \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0db4\u0dd0\u0dad\u0dd2\u0d9a\u0da9 <span translate=no>_^_1_^_</span> \u0dc3\u0db8\u0d9f \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba \u0d9a\u0dbb\u0dcf \u0dc5\u0d9f\u0dcf \u0dc0\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 <span translate=no>_^_2_^_</span>\u0dc0\u0dda. <span translate=no>_^_3_^_</span> <span translate=no>_^_5_^_</span>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda \u0daf\u0dcf\u0dba\u0d9a\u0dad\u0dca\u0dc0\u0dba <span translate=no>_^_4_^_</span> \u0db1\u0ddc\u0db8\u0dd0\u0dad\u0dd2\u0dc0 \u0dc5\u0d9f\u0dcf \u0dc0\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0; \u0d91\u0db1\u0db8\u0dca <span translate=no>_^_6_^_</span> \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0d85\u0db1\u0dd4\u0d9c\u0db8\u0db1\u0dba \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0db8\u0dcf\u0dbb\u0dca\u0d9c <span translate=no>_^_7_^_</span> \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0\u0d9a\u0dca \u0dc3\u0db8\u0d9f <span translate=no>_^_8_^_</span>. </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the set of all histories that belong to a given information set; i.e. all those histories look the same in the eye of the player.</p>\n": "<p><span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0dbd\u0db6\u0dcf \u0daf\u0dd3 \u0d87\u0dad\u0dd2 \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0d9a\u0da7 \u0d85\u0dba\u0dad\u0dca \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3 \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0dba\u0dd2; \u0d91\u0db1\u0db8\u0dca \u0d91\u0db8 \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0db1\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda \u0d87\u0dc3\u0da7 \u0dc3\u0db8\u0dcf\u0db1 \u0dc0\u0dda. </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the set of terminal histories (game over).</p>\n": "<p><span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3 \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0dba\u0dd2 (\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf\u0dc0 \u0d85\u0dc0\u0dc3\u0db1\u0dca). </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> set of all information sets. </p>\n": "<p><span translate=no>_^_0_^_</span> \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0d9a\u0dca. </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> where <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span> \u0d9a\u0ddc\u0dc4\u0dda\u0daf <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span>, the <a href=\"#Strategy\">strategy</a> of player <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>, \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda <a href=\"#Strategy\">\u0d8b\u0db4\u0dcf\u0dba</a> <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span>-Nash equilibrium is,</p>\n": "<p><span translate=no>_^_0_^_</span>-\u0db1\u0dd0\u0dc2\u0dca \u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba,</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><strong>Counterfactual value</strong> <span translate=no>_^_0_^_</span> is the expected utility for player <span translate=no>_^_1_^_</span> if if player <span translate=no>_^_2_^_</span> tried to reach <span translate=no>_^_3_^_</span> (took the actions leading to <span translate=no>_^_4_^_</span> with a probability of <span translate=no>_^_5_^_</span>).</p>\n": "<p><strong>Counterfactual\u0d85\u0d9c\u0dba</strong> <span translate=no>_^_0_^_</span> \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0dc5\u0d9f\u0dcf \u0dc0\u0dd3\u0db8\u0da7 <span translate=no>_^_2_^_</span> \u0d8b\u0dad\u0dca\u0dc3\u0dcf\u0dc4 <span translate=no>_^_1_^_</span> \u0db1\u0db8\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dda\u0d9a\u0dca\u0dc2\u0dd2\u0dad \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0 <span translate=no>_^_3_^_</span> (\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf \u0d9c\u0dd9\u0db1 \u0d9a \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 <span translate=no>_^_4_^_</span> \u0dc3\u0db8\u0d9c \u0db4\u0dca\u0dbb\u0db8\u0dd4\u0d9b <span translate=no>_^_5_^_</span>). </p>\n",
|
||||
"<p><strong>Immediate counterfactual regret</strong> is,</p>\n": "<p><strong>\u0d9a\u0dca\u0dc2\u0dab\u0dd2\u0d9a\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0</strong> \u0db1\u0db8\u0dca,</p>\n",
|
||||
"<p><strong>Information set</strong> <span translate=no>_^_0_^_</span> for player <span translate=no>_^_1_^_</span> is similar to a history <span translate=no>_^_2_^_</span> but only contains the actions visible to player <span translate=no>_^_3_^_</span>. That is, the history <span translate=no>_^_4_^_</span> will contain actions/events such as cards dealt to the opposing player while <span translate=no>_^_5_^_</span> will not have them.</p>\n": "<p>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf <span translate=no>_^_0_^_</span> \u0dc3\u0db3\u0dc4\u0dcf<strong>\u0dc3\u0d9a\u0dc3\u0dcf \u0d87\u0dad\u0dd2 \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4</strong> \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0da7 \u0dc3\u0db8\u0dcf\u0db1 <span translate=no>_^_1_^_</span> \u0dc0\u0db1 <span translate=no>_^_2_^_</span> \u0db1\u0db8\u0dd4\u0dad\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0da7 \u0db4\u0dd9\u0db1\u0dd9\u0db1 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0\u0db1\u0dca \u0db4\u0db8\u0dab\u0d9a\u0dca \u0d85\u0da9\u0d82\u0d9c\u0dd4 \u0dc0\u0dda <span translate=no>_^_3_^_</span>. \u0d91\u0db1\u0db8\u0dca, \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0dda \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0da7 \u0d9c\u0db1\u0dd4\u0daf\u0dd9\u0db1\u0dd4 <span translate=no>_^_4_^_</span> \u0d9a\u0dbb\u0db1 \u0d9a\u0dcf\u0da9\u0dca\u0db4\u0dad\u0dca \u0dc0\u0dd0\u0db1\u0dd2 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0\u0db1\u0dca/\u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8\u0dca \u0d85\u0da9\u0d82\u0d9c\u0dd4 \u0dc0\u0db1 \u0d85\u0dad\u0dbb \u0d92\u0dc0\u0dcf <span translate=no>_^_5_^_</span> \u0db1\u0ddc\u0dbd\u0dd0\u0db6\u0dd9\u0db1\u0dd4 \u0d87\u0dad. </p>\n",
|
||||
"<p><strong>Strategy of player</strong> <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> is a distribution over actions <span translate=no>_^_2_^_</span>, where <span translate=no>_^_3_^_</span> is the set of all strategies for player <span translate=no>_^_4_^_</span>. Strategy on <span translate=no>_^_5_^_</span>-th iteration is denoted by <span translate=no>_^_6_^_</span>.</p>\n": "<p><strong>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda\u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba</strong> <span translate=no>_^_0_^_</span>, \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0\u0db1\u0dca\u0da7 \u0dc0\u0da9\u0dcf \u0db6\u0dd9\u0daf\u0dcf <span translate=no>_^_1_^_</span> \u0dc4\u0dd0\u0dbb\u0dd3\u0db8\u0d9a\u0dd2 <span translate=no>_^_2_^_</span>, \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0d9a\u0dca <span translate=no>_^_3_^_</span> \u0d9a\u0ddc\u0dc4\u0dda\u0daf <span translate=no>_^_4_^_</span>. <span translate=no>_^_5_^_</span>-th \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0db4\u0dd2\u0dc5\u0dd2\u0db6\u0db3 \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0db8\u0d9c\u0dd2\u0db1\u0dca <span translate=no>_^_6_^_</span>\u0daf\u0dd0\u0d9a\u0dca\u0dc0\u0dda. </p>\n",
|
||||
"<p>A dictionary for <span translate=no>_^_0_^_</span> set of all information sets </p>\n": "<p>\u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd <span translate=no>_^_0_^_</span> \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0d9a\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0dc1\u0db6\u0dca\u0daf \u0d9a\u0ddd\u0dc2\u0dba\u0d9a\u0dca </p>\n",
|
||||
"<p>A player <span translate=no>_^_0_^_</span> where <span translate=no>_^_1_^_</span> is the set of players </p>\n": "<p>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0db1\u0dca\u0d9c\u0dda\u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> \u0d9a\u0ddc\u0dc4\u0dd9\u0daf \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dd9\u0d9a\u0dca </p>\n",
|
||||
"<p>A player is denoted by <span translate=no>_^_0_^_</span>, where <span translate=no>_^_1_^_</span> is the set of players.</p>\n": "<p>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dd9\u0d9a\u0dca\u0dc0\u0dd2\u0dc3\u0dd2\u0db1\u0dca \u0daf\u0dd0\u0d9a\u0dca\u0dc0\u0dda <span translate=no>_^_0_^_</span>, \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0db1\u0dca \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0d9a\u0dca <span translate=no>_^_1_^_</span> \u0d9a\u0ddc\u0dc4\u0dd9\u0daf. </p>\n",
|
||||
"<p>Action <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span> is a non-terminal <a href=\"#History\">history</a> </p>\n": "<p>\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0 <span translate=no>_^_0_^_</span>, \u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad <span translate=no>_^_2_^_</span> \u0db1\u0ddc\u0dc0\u0db1 <a href=\"#History\">\u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0dca <span translate=no>_^_1_^_</span> </a> \u0d9a\u0ddc\u0dc4\u0dda\u0daf? </p>\n",
|
||||
"<p>Action <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span> is a non-terminal <a href=\"#History\">history</a>.</p>\n": "<p>\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0 <span translate=no>_^_0_^_</span>, \u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad <span translate=no>_^_2_^_</span> \u0db1\u0ddc\u0dc0\u0db1 <a href=\"#History\">\u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0dca <span translate=no>_^_1_^_</span> </a>\u0d9a\u0ddc\u0dc4\u0dda\u0daf? </p>\n",
|
||||
"<p>And use that to update <span translate=no>_^_0_^_</span> and calculate the strategy <span translate=no>_^_1_^_</span> on each iteration. Finally, we calculate the overall average strategy <span translate=no>_^_2_^_</span>.</p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba\u0dda \u0d8b\u0db4\u0dcf\u0dba <span translate=no>_^_1_^_</span> \u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 <span translate=no>_^_0_^_</span> \u0dc3\u0dc4 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0d91\u0dba \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1\u0dca\u0db1. \u0d85\u0dc0\u0dc3\u0dcf\u0db1 \u0dc0\u0dc1\u0dba\u0dd9\u0db1\u0dca, \u0d85\u0db4\u0dd2 \u0dc3\u0db8\u0dc3\u0dca\u0dad \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba \u0d8b\u0db4\u0dcf\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db8\u0dd4 <span translate=no>_^_2_^_</span>. </p>\n",
|
||||
"<p>Average overall regret for Player <span translate=no>_^_0_^_</span> is the average regret of not following the optimal strategy in all <span translate=no>_^_1_^_</span> rounds of iterations.</p>\n": "<p>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf <span translate=no>_^_0_^_</span> \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba \u0dc3\u0db8\u0dc3\u0dca\u0dad \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0dc3\u0dd1\u0db8 <span translate=no>_^_1_^_</span> \u0dc0\u0da7\u0dba\u0d9a\u0db8 \u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad \u0d8b\u0db4\u0dcf\u0dba \u0d85\u0db1\u0dd4\u0d9c\u0db8\u0db1\u0dba \u0db1\u0ddc\u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0db4\u0dd2\u0dc5\u0dd2\u0db6\u0db3 \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0\u0dba\u0dd2. </p>\n",
|
||||
"<p>Computing <span translate=no>_^_0_^_</span> requires expanding the full game tree on each iteration.</p>\n": "<p>\u0db4\u0dbb\u0dd2\u0d9c\u0dab\u0d9a\u0d9a\u0dbb\u0dab\u0dba\u0da7\u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba\u0dda \u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0d9c\u0dc3 \u0db4\u0dd4\u0dc5\u0dd4\u0dbd\u0dca \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 <span translate=no>_^_0_^_</span> \u0d85\u0dc0\u0dc1\u0dca\u0dba \u0dc0\u0dda. </p>\n",
|
||||
"<p>For two players, Nash equilibrium is a <a href=\"#Strategy\">strategy profile</a> where</p>\n": "<p>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0db1\u0dca\u0daf\u0dd9\u0daf\u0dd9\u0db1\u0dd9\u0d9a\u0dd4 \u0dc3\u0db3\u0dc4\u0dcf, \u0db1\u0dd0\u0dc2\u0dca \u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba \u0dba\u0db1\u0dd4 <a href=\"#Strategy\">\u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dd2\u0d9a \u0db4\u0dd0\u0dad\u0dd2\u0d9a\u0da9\u0d9a\u0dd2</a> </p>\n",
|
||||
"<p>From the definition of <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span></p>\n": "<p>\u0d85\u0dbb\u0dca\u0dae\u0daf\u0dd0\u0d9a\u0dca\u0dc0\u0dd3\u0db8\u0dd9\u0db1\u0dca <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Get current player's information set for <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc3\u0db3\u0dc4\u0dcf\u0dc0\u0dad\u0dca\u0db8\u0db1\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Here is a <a href=\"kuhn/index.html\">Kuhn Poker</a> implementation to try CFR on Kuhn Poker.</p>\n": "<p>\u0db8\u0dd9\u0db1\u0dca\u0db1 <a href=\"kuhn/index.html\">\u0d9a\u0dd4\u0dc4\u0dca\u0db1\u0dca \u0db4\u0ddd\u0d9a\u0dbb\u0dca</a> \u0db8\u0dad CFR \u0d8b\u0dad\u0dca\u0dc3\u0dcf\u0dc4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 Kuhn \u0db4\u0ddd\u0d9a\u0dbb\u0dca \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8. </p>\n",
|
||||
"<p>History <span translate=no>_^_0_^_</span> is a sequence of actions including chance events, and <span translate=no>_^_1_^_</span> is the set of all histories.</p>\n": "<p>\u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba <span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0d87\u0dad\u0dd4\u0dc5\u0dd4 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf \u0dc0\u0dbd \u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dba\u0d9a\u0dd2 \u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0d9a\u0dca \u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8\u0dca, <span translate=no>_^_1_^_</span> \u0d91\u0dba \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0db1\u0dca\u0d9c\u0dda \u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0dba\u0dd2. </p>\n",
|
||||
"<p>If <span translate=no>_^_0_^_</span> for all players then <span translate=no>_^_1_^_</span> is a <span translate=no>_^_2_^_</span>-Nash equilibrium.</p>\n": "<p>\u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dd2\u0db1\u0dca <span translate=no>_^_0_^_</span> \u0dc3\u0db3\u0dc4\u0dcf \u0db1\u0db8\u0dca <span translate=no>_^_2_^_</span>-\u0db1\u0dd0\u0dc2\u0dca \u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba\u0d9a\u0dd2. <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>If <span translate=no>_^_0_^_</span>, </p>\n": "<p>\u0db1\u0db8\u0dca <span translate=no>_^_0_^_</span>, </p>\n",
|
||||
"<p>If it's a chance event <span translate=no>_^_0_^_</span> sample a and go to next step. </p>\n": "<p>\u0d91\u0dba\u0d85\u0dc4\u0db8\u0dca\u0db6\u0dd9\u0db1\u0dca \u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8\u0dca <span translate=no>_^_0_^_</span> \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba\u0d9a\u0dca \u0db1\u0db8\u0dca \u0dc3\u0dc4 \u0d8a\u0dc5\u0d9f \u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0da7 \u0dba\u0db1\u0dca\u0db1. </p>\n",
|
||||
"<p>If it's a terminal history <span translate=no>_^_0_^_</span> return the terminal utility <span translate=no>_^_1_^_</span>. </p>\n": "<p>\u0d91\u0dba\u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0dca \u0db1\u0db8\u0dca \u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0 <span translate=no>_^_0_^_</span> \u0db1\u0dd0\u0dc0\u0dad \u0dbd\u0db6\u0dcf \u0daf\u0dd9\u0db1\u0dca\u0db1 <span translate=no>_^_1_^_</span>. </p>\n",
|
||||
"<p>If the current player is <span translate=no>_^_0_^_</span>, </p>\n": "<p>\u0dc0\u0dad\u0dca\u0db8\u0db1\u0dca\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0db1\u0db8\u0dca <span translate=no>_^_0_^_</span>, </p>\n",
|
||||
"<p>If the current player is <span translate=no>_^_0_^_</span>, update the cumulative strategies and total regrets </p>\n": "<p>\u0dc0\u0dbb\u0dca\u0dad\u0db8\u0dcf\u0db1\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0db1\u0db8\u0dca <span translate=no>_^_0_^_</span>, \u0dc3\u0db8\u0dd4\u0da0\u0dca\u0da0\u0dd2\u0dad \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0dc3\u0dc4 \u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Iterate through all actions </p>\n": "<p>\u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0\u0db1\u0dca \u0dc4\u0dbb\u0dc4\u0dcf \u0db1\u0dd0\u0dc0\u0dad \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Loop for <span translate=no>_^_0_^_</span> times </p>\n": "<p><span translate=no>_^_0_^_</span> \u0dc0\u0dda\u0dbd\u0dcf\u0dc0\u0db1\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0dbd\u0dd6\u0db4\u0dca </p>\n",
|
||||
"<p>Nash equilibrium is a state where none of the players can increase their expected utility (or payoff) by changing their strategy alone.</p>\n": "<p>\u0db1\u0dd0\u0dc2\u0dca\u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba \u0dba\u0db1\u0dd4 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dd2\u0db1\u0dca\u0d9c\u0dd9\u0db1\u0dca \u0d9a\u0dd2\u0dc3\u0dd2\u0dc0\u0dd9\u0d9a\u0dd4\u0da7 \u0d94\u0dc0\u0dd4\u0db1\u0dca\u0d9c\u0dda \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba \u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dd9\u0db1\u0dca \u0d94\u0dc0\u0dd4\u0db1\u0dca\u0d9c\u0dda \u0d85\u0db4\u0dda\u0d9a\u0dca\u0dc2\u0dd2\u0dad \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0 (\u0dc4\u0ddd \u0d9c\u0dd9\u0dc0\u0dd3\u0db8\u0dca) \u0dc0\u0dd0\u0da9\u0dd2 \u0d9a\u0dc5 \u0db1\u0ddc\u0dc4\u0dd0\u0d9a\u0dd2 \u0dbb\u0dcf\u0da2\u0dca\u0dba\u0dba\u0d9a\u0dd2. </p>\n",
|
||||
"<p>Otherwise, </p>\n": "<p>\u0d91\u0dc3\u0dda\u0db1\u0ddc\u0db8\u0dd0\u0dad\u0dd2 \u0db1\u0db8\u0dca </p>\n",
|
||||
"<p>Print the information sets </p>\n": "<p>\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4\u0d9a\u0da7\u0dca\u0da7\u0dbd \u0db8\u0dd4\u0daf\u0dca\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Probability of reaching a information set <span translate=no>_^_0_^_</span> is, <span translate=no>_^_1_^_</span></p>\n": "<p>\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4\u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0d9a\u0dca \u0dc0\u0dd9\u0dad \u0dc5\u0d9f\u0dcf \u0dc0\u0dd3\u0db8\u0dda <span translate=no>_^_0_^_</span> \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0, <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Regret is the utility (or pay off) that the player didn't get because she didn't follow the optimal strategy or took the best action.</p>\n": "<p>\u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0\u0dc0\u0db1\u0dca\u0db1\u0dda \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0 (\u0dc4\u0ddd \u0d9c\u0dd9\u0dc0\u0dd3\u0db8) \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0da7 \u0db1\u0ddc\u0dbd\u0dd0\u0db6\u0dd4\u0db1\u0dda \u0d87\u0dba \u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba\u0d9a\u0dca \u0d85\u0db1\u0dd4\u0d9c\u0db8\u0db1\u0dba \u0db1\u0ddc\u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc4\u0ddd \u0dc4\u0ddc\u0db3\u0db8 \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0db1\u0dd2\u0dc3\u0dcf\u0dba. </p>\n",
|
||||
"<p>Return the expected utility for player <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> </p>\n": "<p>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dda\u0d9a\u0dca\u0dc2\u0dd2\u0dad \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0 \u0d86\u0db4\u0dc3\u0dd4 \u0dbd\u0db6\u0dcf \u0daf\u0dd9\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>Save checkpoints every <span translate=no>_^_0_^_</span> iterations </p>\n": "<p>\u0dc3\u0dd1\u0db8 <span translate=no>_^_0_^_</span> \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba\u0d9a\u0dca\u0db8 \u0db8\u0dd4\u0dbb\u0db4\u0ddc\u0dbd\u0dc0\u0dbd\u0dca \u0dc3\u0dd4\u0dbb\u0d9a\u0dd2\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Since <span translate=no>_^_0_^_</span> because it's a zero-sum game, we can add <span translate=no>_^_1_^_</span> and <span translate=no>_^_2_^_</span> and the second term will cancel out.</p>\n": "<p>\u0d91\u0dba\u0dc1\u0dd4\u0db1\u0dca\u0dba \u0db8\u0dd4\u0daf\u0dbd\u0d9a\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf\u0dc0\u0d9a\u0dca <span translate=no>_^_0_^_</span> \u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dca, \u0d85\u0db4\u0da7 \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dc5 \u0dc4\u0dd0\u0d9a\u0dd2 <span translate=no>_^_1_^_</span> <span translate=no>_^_2_^_</span> \u0d85\u0dad\u0dbb \u0daf\u0dd9\u0dc0\u0db1 \u0dc0\u0dcf\u0dbb\u0dba \u0d85\u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0dc0\u0dda. </p>\n",
|
||||
"<p>So we need to minimize <span translate=no>_^_0_^_</span> to get close to a Nash equilibrium.</p>\n": "<p>\u0d91\u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dca\u0db1\u0dd0\u0dc2\u0dca \u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba\u0d9a\u0da7 \u0dc3\u0db8\u0dd3\u0db4 <span translate=no>_^_0_^_</span> \u0dc0\u0dd3\u0db8\u0da7 \u0d85\u0db4 \u0d85\u0dc0\u0db8 \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4\u0dba. </p>\n",
|
||||
"<p>Strategy is defined as a probability for taking an action <span translate=no>_^_0_^_</span> in for a given information set <span translate=no>_^_1_^_</span>,</p>\n": "<p>\u0db8\u0dd6\u0dbd\u0ddd\u0db4\u0dcf\u0dba\u0d85\u0dbb\u0dca\u0dae \u0daf\u0d9a\u0dca\u0dc0\u0dcf \u0d87\u0dad\u0dca\u0dad\u0dda <span translate=no>_^_0_^_</span> \u0daf\u0dd3 \u0d87\u0dad\u0dd2 \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0d9a\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba\u0d9a\u0dca \u0d9c\u0dd0\u0db1\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0\u0d9a\u0dca \u0dbd\u0dd9\u0dc3 \u0dba <span translate=no>_^_1_^_</span>,</p>\n",
|
||||
"<p>That is the mean regret of not playing with the optimal strategy.</p>\n": "<p>\u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad\u0d8b\u0db4\u0dcf\u0dba\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba \u0dc3\u0db8\u0d9f \u0dc3\u0dd9\u0dbd\u0dca\u0dbd\u0db8\u0dca \u0db1\u0ddc\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0db8\u0db0\u0dca\u0dba\u0db1\u0dca\u0dba \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d91\u0dba\u0dba\u0dd2. </p>\n",
|
||||
"<p>The <a href=\"#terminal_utility\">terminal utility</a> is the utility (or pay off) of a player <span translate=no>_^_0_^_</span> for a terminal history <span translate=no>_^_1_^_</span>.</p>\n": "<p><a href=\"#terminal_utility\">\u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0</a> \u0dba\u0db1\u0dd4 \u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0dca <span translate=no>_^_0_^_</span> \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dd9\u0d9a\u0dd4\u0d9c\u0dda \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0 (\u0dc4\u0ddd \u0d9c\u0dd9\u0dc0\u0dd3\u0db8) <span translate=no>_^_1_^_</span>\u0dba. </p>\n",
|
||||
"<p>The <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">paper</a> proves that (Theorem 3),</p>\n": "<p><a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u0db4\u0dad\u0dca\u0dbb\u0dd2\u0d9a\u0dcf\u0dc0</a> \u0d91\u0dba \u0dc3\u0db1\u0dcf\u0dae \u0d9a\u0dbb\u0dba\u0dd2 (\u0db4\u0dca\u0dbb\u0db8\u0dda\u0dba\u0dba 3),</p>\n",
|
||||
"<p>The average of utilities over a set of strategies is equal to the utility of the average strategy.</p>\n": "\u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c<p>\u0dc3\u0db8\u0dd6\u0dc4\u0dba\u0d9a\u0dca \u0db4\u0dd4\u0dbb\u0dcf \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd2\u0dad\u0dcf \u0dc0\u0dbd \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0dba \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba\u0dda \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd3\u0dad\u0dcf\u0dc0\u0dba\u0da7 \u0dc3\u0db8\u0dcf\u0db1 \u0dc0\u0dda. </p>\n",
|
||||
"<p>The average strategy is the average of strategies followed in each round, for all <span translate=no>_^_0_^_</span></p>\n": "<p>\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d8b\u0db4\u0dcf\u0dba\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba \u0dc0\u0db1\u0dca\u0db1\u0dda \u0dc3\u0dd1\u0db8 \u0dc0\u0da7\u0dba\u0d9a\u0daf\u0dd3\u0db8 \u0d85\u0db1\u0dd4\u0d9c\u0db8\u0db1\u0dba \u0d9a\u0dbb\u0db1 \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dc0\u0dbd \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0dba\u0dba\u0dd2 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>The paper <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">Regret Minimization in Games with Incomplete Information</a> introduces counterfactual regret and how minimizing counterfactual regret through self-play can be used to reach Nash equilibrium. The algorithm is called Counterfactual Regret Minimization (<strong>CFR</strong>).</p>\n": "<p>\u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc0\u0dbd \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8</a> \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0dc4\u0db3\u0dd4\u0db1\u0dca\u0dc0\u0dcf \u0daf\u0dd9\u0db1 \u0d85\u0dad\u0dbb \u0dc3\u0dca\u0dc0\u0dba\u0d82 \u0db1\u0dcf\u0da7\u0dca\u0dba\u0dba \u0dad\u0dd4\u0dc5\u0dd2\u0db1\u0dca \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0db1\u0dd0\u0dc2\u0dca \u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba\u0da7 \u0dc5\u0d9f\u0dcf \u0dc0\u0dd3\u0db8\u0da7 \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dc5 \u0dc4\u0dd0\u0d9a\u0dd2 \u0d86\u0d9a\u0dcf\u0dbb\u0dba. \u0d87\u0dbd\u0dca\u0d9c\u0ddc\u0dbb\u0dd2\u0dad\u0db8 \u0dc4\u0dd0\u0db3\u0dd2\u0db1\u0dca\u0dc0\u0dd9\u0db1\u0dca\u0db1\u0dda \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 (<strong>CFR</strong>) \u0dbd\u0dd9\u0dc3\u0dd2\u0db1\u0dd2. </p>\n",
|
||||
"<p>The paper <a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">Monte Carlo Sampling for Regret Minimization in Extensive Games</a> introduces Monte Carlo Counterfactual Regret Minimization (<strong>MCCFR</strong>), where we sample from the game tree and estimate the regrets.</p>\n": "<p><a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">\u0db4\u0dd4\u0dc5\u0dd4\u0dbd\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc0\u0dbd \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db8\u0ddc\u0db1\u0dca\u0da7\u0dda \u0d9a\u0dcf\u0dbd\u0ddd \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8</a> \u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0db8\u0ddc\u0db1\u0dca\u0da7\u0dda \u0d9a\u0dcf\u0dbd\u0ddd \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 (<strong>MCCFR</strong>) \u0dc4\u0db3\u0dd4\u0db1\u0dca\u0dc0\u0dcf \u0daf\u0dd9\u0dba\u0dd2, \u0d91\u0dc4\u0dd2\u0daf\u0dd3 \u0d85\u0db4\u0dd2 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0d9c\u0dc3\u0dd9\u0db1\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0dbd\u0db6\u0dcf\u0d9c\u0dd9\u0db1 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0dad\u0d9a\u0dca\u0dc3\u0dda\u0dbb\u0dd4 \u0d9a\u0dbb\u0db8\u0dd4. </p>\n",
|
||||
"<p>The paper <a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">Monte Carlo Sampling for Regret Minimization in Extensive Games</a> shows we can sample from the game tree and estimate the regrets.</p>\n": "<p><a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">\u0db4\u0dd4\u0dc5\u0dd4\u0dbd\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc0\u0dbd \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0db8\u0ddc\u0db1\u0dca\u0da7\u0dda \u0d9a\u0dcf\u0dbd\u0ddd \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8 \u0d85\u0db4\u0da7 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf</a> \u0d9c\u0dc3\u0dd9\u0db1\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0dbd\u0db6\u0dcf \u0d9c\u0dad \u0dc4\u0dd0\u0d9a\u0dd2 \u0d85\u0dad\u0dbb \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0dad\u0d9a\u0dca\u0dc3\u0dda\u0dbb\u0dd4 \u0d9a\u0dc5 \u0dc4\u0dd0\u0d9a\u0dd2\u0dba. </p>\n",
|
||||
"<p>The paper The paper <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">Regret Minimization in Games with Incomplete Information</a> proves that if the strategy is selected according to above equation <span translate=no>_^_0_^_</span> gets smaller proportionate to <span translate=no>_^_1_^_</span>, and therefore reaches <span translate=no>_^_2_^_</span>-<a href=\"#NashEquilibrium\">Nash equilibrium</a>.</p>\n": "<p>\u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u0d85\u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc0\u0dbd \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0d89\u0dc4\u0dad \u0dc3\u0db8\u0dd3\u0d9a\u0dbb\u0dab\u0dba\u0da7</a> \u0d85\u0db1\u0dd4\u0dc0 \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba \u0dad\u0ddd\u0dbb\u0dcf <span translate=no>_^_0_^_</span> \u0d9c\u0db1\u0dca\u0db1\u0dda \u0db1\u0db8\u0dca \u0d8a\u0da7 \u0dc3\u0db8\u0dcf\u0db1\u0dd4\u0db4\u0dcf\u0dad\u0dd2\u0d9a\u0dc0 \u0d9a\u0dd4\u0da9\u0dcf \u0dc0\u0db1 \u0db6\u0dc0 \u0d94\u0db4\u0dca\u0db4\u0dd4 \u0d9a\u0dbb\u0dba\u0dd2 <span translate=no>_^_1_^_</span>, \u0d91\u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dca \u0dc5\u0d9f\u0dcf \u0dc0\u0dda <span translate=no>_^_2_^_</span>-<a href=\"#NashEquilibrium\">\u0db1\u0dc2\u0dca \u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba</a>. </p>\n",
|
||||
"<p>The paper shows that</p>\n": "<p>\u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2\u0db6\u0dc0 \u0db4\u0dd9\u0db1\u0dca\u0db1\u0dd4\u0db8\u0dca</p>\n",
|
||||
"<p>The regret for each information set and action pair <span translate=no>_^_0_^_</span> is maintained,</p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0dc3\u0dc4 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0d9a\u0dcf\u0dbb\u0dd3 \u0dba\u0dd4\u0d9c\u0dbd\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0db4\u0dc0\u0dad\u0dca\u0dc0\u0dcf \u0d9c\u0dd9\u0db1 <span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0dbd\u0dd0\u0db6\u0dda,</p>\n",
|
||||
"<p>The strategy is calculated using regret matching.</p>\n": "<p>\u0d8b\u0db4\u0dcf\u0dba\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba\u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dd4 \u0dbd\u0db6\u0db1\u0dca\u0db1\u0dda \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0d9c\u0dd0\u0dbd\u0db4\u0dd3\u0db8 \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db8\u0dd2\u0db1\u0dd2. </p>\n",
|
||||
"<p>Then we get <strong>sampled counterfactual value</strong> fro block <span translate=no>_^_0_^_</span>,</p>\n": "<p>\u0d91\u0dc0\u0dd2\u0da7\u0d85\u0db4\u0dd2 \u0dc0\u0dcf\u0dbb\u0dab \u0dc3\u0dd2\u0da7 <strong>sampled counterfactual \u0d85\u0d9c\u0dba</strong> \u0dbd\u0db6\u0dcf <span translate=no>_^_0_^_</span>,</p>\n",
|
||||
"<p>Then,</p>\n": "<p>\u0d91\u0dc0\u0dd2\u0da7,</p>\n",
|
||||
"<p>Therefore we can sample a part of the game tree and calculate the regrets. We calculate an estimate of regrets</p>\n": "<p>\u0d91\u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dca\u0d85\u0db4\u0da7 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0d9c\u0dc3\u0dda \u0d9a\u0ddc\u0da7\u0dc3\u0d9a\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0d9c\u0dad \u0d9a\u0dbb \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dc5 \u0dc4\u0dd0\u0d9a\u0dd2\u0dba. \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0db4\u0dd2\u0dc5\u0dd2\u0db6\u0db3 \u0d87\u0dc3\u0dca\u0dad\u0db8\u0dda\u0db1\u0dca\u0dad\u0dd4\u0dc0\u0d9a\u0dca \u0d85\u0db4\u0dd2 \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db8\u0dd4</p>\n",
|
||||
"<p>Therefore,</p>\n": "<p>\u0d91\u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dca,</p>\n",
|
||||
"<p>This is <span translate=no>_^_0_^_</span>-Nash equilibrium. You can similarly prove for games with more than 2 players.</p>\n": "<p>\u0db8\u0dd9\u0dba <span translate=no>_^_0_^_</span>-\u0db1\u0dd0\u0dc2\u0dca \u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba\u0dba\u0dd2. \u0d94\u0db6\u0da7 \u0d92 \u0dc4\u0dcf \u0dc3\u0db8\u0dcf\u0db1\u0dc0 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dd2\u0db1\u0dca 2 \u0d9a\u0da7 \u0dc0\u0da9\u0dcf \u0d87\u0dad\u0dd2 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc3\u0db3\u0dc4\u0dcf \u0d94\u0db4\u0dca\u0db4\u0dd4 \u0d9a\u0dc5 \u0dc4\u0dd0\u0d9a\u0dd2\u0dba. </p>\n",
|
||||
"<p>To store <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d9c\u0db6\u0da9\u0dcf\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>To store <span translate=no>_^_0_^_</span> for each action <span translate=no>_^_1_^_</span> </p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0 <span translate=no>_^_0_^_</span> \u0dc3\u0db3\u0dc4\u0dcf \u0d9c\u0db6\u0da9\u0dcf \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>Total regret of not taking each action <span translate=no>_^_0_^_</span>,</p>\n<span translate=no>_^_1_^_</span><p>We maintain <span translate=no>_^_2_^_</span> instead of <span translate=no>_^_3_^_</span> since <span translate=no>_^_4_^_</span> term cancels out anyway when computing strategy <span translate=no>_^_5_^_</span> </p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0db1\u0ddc\u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0db4\u0dd2\u0dc5\u0dd2\u0db6\u0db3 \u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 <span translate=no>_^_0_^_</span>,</p>\n<span translate=no>_^_1_^_</span><p>\u0db4\u0dbb\u0dd2\u0d9c\u0dab\u0d9a\u0d8b\u0db4\u0dcf\u0dba \u0dc0\u0dd2\u0da7 <span translate=no>_^_4_^_</span> \u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dd9\u0dc3\u0dda \u0dc4\u0ddd \u0dc3\u0dd2\u0daf\u0dd4 \u0d85\u0dc0\u0dbd\u0d82\u0d9c\u0dd4 <span translate=no>_^_3_^_</span> \u0dc3\u0dd2\u0da7 \u0d85\u0db4\u0dd2 <span translate=no>_^_2_^_</span> \u0d92 \u0dc0\u0dd9\u0db1\u0dd4\u0dc0\u0da7 \u0db4\u0dc0\u0dad\u0dca\u0dc0\u0dcf\u0d9c\u0dd9\u0db1 <span translate=no>_^_5_^_</span> </p>\n",
|
||||
"<p>Track data for analytics </p>\n": "<p>\u0dc0\u0dd2\u0dc1\u0dca\u0dbd\u0dda\u0dc2\u0dab\u0dc3\u0db3\u0dc4\u0dcf \u0daf\u0dad\u0dca\u0dad \u0dbd\u0dd4\u0dc4\u0dd4\u0db6\u0db3\u0dd2\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Tracker for analytics </p>\n": "<p>\u0dc0\u0dd2\u0dc1\u0dca\u0dbd\u0dda\u0dc2\u0dab\u0dc3\u0db3\u0dc4\u0dcf \u0da7\u0dca\u0dbb\u0dd0\u0d9a\u0dbb\u0dca </p>\n",
|
||||
"<p>Unique key identifying the information set </p>\n": "<p>\u0d85\u0daf\u0dca\u0dc0\u0dd2\u0dad\u0dd3\u0dba\u0dba\u0dad\u0dd4\u0dbb \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0dc4\u0db3\u0dd4\u0db1\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8 </p>\n",
|
||||
"<p>Update cumulative strategies <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc3\u0db8\u0dd4\u0da0\u0dca\u0da0\u0dd2\u0dad\u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Update the strategy <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d8b\u0db4\u0dcf\u0dba\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba\u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Walk tree and update regrets for each player </p>\n": "<p>\u0d9c\u0dc3\u0d87\u0dc0\u0dd2\u0daf\u0dd2\u0db1\u0dca\u0db1 \u0dc3\u0dc4 \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>We implement Monte Carlo Counterfactual Regret Minimization (MCCFR) with chance sampling (CS). It iteratively, explores part of the game tree by trying all player actions, but sampling chance events. Chance events are things like dealing cards; they are kept sampled once per iteration. Then it calculates, for each action, the <em>regret</em> of following the current strategy instead of taking that action. Then it updates the strategy based on these regrets for the next iteration, using regret matching. Finally, it computes the average of the strategies throughout the iterations, which is very close to the Nash equilibrium if we ran enough iterations.</p>\n": "<p>\u0d85\u0db4\u0dd2\u0d85\u0dc4\u0db8\u0dca\u0db6\u0dd9\u0db1\u0dca \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dca (CS) \u0dc3\u0db8\u0d9f \u0db8\u0ddc\u0db1\u0dca\u0da7\u0dda \u0d9a\u0dcf\u0dbd\u0ddd \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc0\u0dd2\u0dbb\u0dd4\u0daf\u0dca\u0db0 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 (MCCFR) \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dbb\u0db8\u0dd4. \u0d91\u0dba iteratively, \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf \u0d8b\u0dad\u0dca\u0dc3\u0dcf\u0dc4 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf\u0dc0 \u0d9c\u0dc3 \u0d9a\u0ddc\u0da7\u0dc3\u0d9a\u0dca \u0d9c\u0dc0\u0dda\u0dc2\u0dab\u0dba, \u0db1\u0db8\u0dd4\u0dad\u0dca \u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0d9a\u0dca \u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8\u0dca \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dca. \u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0d9a\u0dca \u0dc3\u0dd2\u0daf\u0dd4\u0dc0\u0dd3\u0db8\u0dca \u0d9a\u0dcf\u0da9\u0dca\u0db4\u0dad\u0dca \u0d9c\u0db1\u0dd4\u0daf\u0dd9\u0db1\u0dd4 \u0dc0\u0dd0\u0db1\u0dd2 \u0daf\u0dda\u0dc0\u0dbd\u0dca \u0dba; \u0d94\u0dc0\u0dd4\u0db1\u0dca \u0db1\u0dd0\u0dc0\u0dad \u0d91\u0d9a\u0dca \u0dc0\u0dbb\u0d9a\u0dca sampled \u0dad\u0db6\u0dcf \u0d87\u0dad. \u0d91\u0dc0\u0dd2\u0da7 \u0d91\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1\u0dda, \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dc0 \u0dc3\u0db3\u0dc4\u0dcf, \u0d91\u0db8 \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0dc0\u0dd9\u0db1\u0dd4\u0dc0\u0da7 \u0dc0\u0dbb\u0dca\u0dad\u0db8\u0dcf\u0db1 \u0d8b\u0db4\u0dcf\u0dba\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba \u0d85\u0db1\u0dd4\u0d9c\u0db8\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda <em>\u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0</em> . \u0d89\u0db1\u0dca\u0db4\u0dc3\u0dd4 \u0d91\u0dba \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d9c\u0dd0\u0dbd\u0db4\u0dd3\u0db8 \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db8\u0dd2\u0db1\u0dca \u0d8a\u0dc5\u0d9f \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0db8\u0dd9\u0db8 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0db8\u0dad \u0db4\u0daf\u0db1\u0db8\u0dca \u0dc0\u0dd6 \u0d8b\u0db4\u0dcf\u0dba \u0dba\u0dcf\u0dc0\u0dad\u0dca\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0d9a\u0dbb\u0dba\u0dd2. \u0d85\u0dc0\u0dc3\u0dcf\u0db1 \u0dc0\u0dc1\u0dba\u0dd9\u0db1\u0dca, \u0d91\u0dba \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0db4\u0dd4\u0dbb\u0dcf \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dc0\u0dbd \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0dba\u0dd2, \u0d91\u0dba \u0d85\u0db4 \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dc0\u0dad\u0dca \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0daf\u0dd2\u0dc0 \u0d9c\u0dd2\u0dba\u0dc4\u0ddc\u0dad\u0dca \u0db1\u0dd0\u0dc2\u0dca \u0dc3\u0db8\u0dad\u0dd4\u0dbd\u0dd2\u0dad\u0dad\u0dcf\u0dc0\u0dba\u0da7 \u0d89\u0dad\u0dcf \u0dc3\u0db8\u0dd3\u0db4 \u0dc0\u0dda. </p>\n",
|
||||
"<p>We maintain the cumulative strategy <span translate=no>_^_0_^_</span> to compute overall average strategy</p>\n<p><span translate=no>_^_1_^_</span> </p>\n": "<p>\u0dc3\u0db8\u0dc3\u0dca\u0dad\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba \u0d8b\u0db4\u0dcf\u0dba\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba \u0d9c\u0dab\u0db1\u0dba <span translate=no>_^_0_^_</span> \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dd2 \u0dc3\u0db8\u0dd4\u0da0\u0dca\u0da0\u0dd2\u0dad \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba \u0db4\u0dc0\u0dad\u0dca\u0dc0\u0dcf \u0d9c\u0db1\u0dd2\u0db8\u0dd4</p>\n<p><span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>We tried to keep our Python implementation easy-to-understand like a tutorial. We run it on <a href=\"kuhn/index.html\">a very simple imperfect information game called Kuhn poker</a>.</p>\n": "<p>\u0d85\u0db4\u0d9c\u0dda\u0db4\u0dba\u0dd2\u0dad\u0db1\u0dca \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0db1\u0dd2\u0db6\u0db1\u0dca\u0db0\u0db1\u0dba\u0d9a\u0dca \u0db8\u0dd9\u0db1\u0dca \u0db4\u0dc4\u0dc3\u0dd4\u0dc0\u0dd9\u0db1\u0dca \u0dad\u0dda\u0dbb\u0dd4\u0db8\u0dca \u0d9c\u0dd0\u0db1\u0dd3\u0db8\u0da7 \u0d85\u0db4\u0dd2 \u0d8b\u0dad\u0dca\u0dc3\u0dcf\u0dc4 \u0d9a\u0dc5\u0dd9\u0db8\u0dd4. \u0d85\u0db4\u0dd2 \u0d91\u0dba <a href=\"kuhn/index.html\">\u0d89\u0dad\u0dcf \u0dc3\u0dbb\u0dbd \u0d85\u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf\u0dc0\u0d9a\u0dca \u0db8\u0dad \u0db0\u0dcf\u0dc0\u0db1\u0dba \u0d9a\u0dbb\u0db8\u0dd4 Kuhn \u0db4\u0ddd\u0d9a\u0dbb\u0dca \u0d9c\u0dc4\u0db1\u0dca\u0db1 \u0daf\u0db1\u0dca\u0db1\u0dc0\u0dcf\u0db1\u0db8\u0dca</a>. </p>\n",
|
||||
"<p>We will first introduce the mathematical notation and theory.</p>\n": "<p>\u0d85\u0db4\u0dd2\u0db8\u0dd4\u0dbd\u0dd2\u0db1\u0dca\u0db8 \u0d9c\u0dab\u0dd2\u0dad\u0db8\u0dba \u0d85\u0d82\u0d9a\u0db1\u0dba \u0dc3\u0dc4 \u0db1\u0dca\u0dba\u0dcf\u0dba \u0dc4\u0db3\u0dd4\u0db1\u0dca\u0dc0\u0dcf \u0daf\u0dd9\u0db1\u0dca\u0db1\u0dd9\u0db8\u0dd4. </p>\n",
|
||||
"<p>and the strategy is calculated with regret matching,</p>\n": "<p>\u0d8b\u0db4\u0dcf\u0dba\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba\u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dd4 \u0dbd\u0db6\u0db1\u0dca\u0db1\u0dda \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0d9c\u0dd0\u0dbd\u0db4\u0dd3\u0db8\u0dd9\u0db1\u0dca,</p>\n",
|
||||
"<p>if <span translate=no>_^_0_^_</span>, </p>\n": "<p>\u0db1\u0db8\u0dca <span translate=no>_^_0_^_</span>, </p>\n",
|
||||
"<p>is the strategy profile <span translate=no>_^_0_^_</span> with player <span translate=no>_^_1_^_</span>'s strategy replaced with <span translate=no>_^_2_^_</span>.</p>\n": "<p>\u0dba\u0db1\u0dd4 <span translate=no>_^_1_^_</span>\u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dcf\u0d9c\u0dda \u0d8b\u0db4\u0dcf\u0dba <span translate=no>_^_0_^_</span> \u0dc3\u0db8\u0d9f \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dc3\u0dca\u0dae\u0dcf\u0db4\u0db1\u0dba \u0d9a\u0dbb\u0db1 \u0dbd\u0daf \u0d8b\u0db4\u0dcf\u0dba <span translate=no>_^_2_^_</span>\u0db8\u0dcf\u0dbb\u0dca\u0d9c\u0dba\u0dba\u0dd2. </p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the set of terminal histories reachable from <span translate=no>_^_1_^_</span>, and <span translate=no>_^_2_^_</span> is the prefix of <span translate=no>_^_3_^_</span> up to <span translate=no>_^_4_^_</span>. <span translate=no>_^_5_^_</span> is the probability of reaching z from <span translate=no>_^_6_^_</span>.</p>\n": "<p>\u0db4\u0dbb\u0dca\u0dba\u0db1\u0dca\u0dad\u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3 \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0dc0\u0dd9\u0dad \u0dc5\u0d9f\u0dcf \u0dc0\u0dd2\u0dba \u0dc4\u0dd0\u0d9a\u0dd2 <span translate=no>_^_1_^_</span>\u0d85\u0dad\u0dbb <span translate=no>_^_2_^_</span> \u0d91\u0dba <span translate=no>_^_3_^_</span> \u0daf\u0d9a\u0dca\u0dc0\u0dcf \u0d8b\u0db4\u0dc3\u0dbb\u0dca\u0d9c\u0dba \u0dc0\u0dda <span translate=no>_^_0_^_</span> <span translate=no>_^_4_^_</span>. <span translate=no>_^_5_^_</span> \u0dc3\u0dd2\u0da7 z \u0dc0\u0dd9\u0dad \u0dc5\u0d9f\u0dcf \u0dc0\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 <span translate=no>_^_6_^_</span>\u0dc0\u0dda. </p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the strategy profile <span translate=no>_^_1_^_</span> with the modification of always taking action <span translate=no>_^_2_^_</span> at information set <span translate=no>_^_3_^_</span>.</p>\n": "<p>\u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4\u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba\u0dda <span translate=no>_^_0_^_</span> \u0dc3\u0dd1\u0db8 \u0dc0\u0dd2\u0da7\u0db8 \u0db4\u0dd2\u0dba\u0dc0\u0dbb <span translate=no>_^_2_^_</span> \u0d9c\u0dd0\u0db1\u0dd3\u0db8 \u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 <span translate=no>_^_1_^_</span> \u0dc3\u0db8\u0d9f \u0d8b\u0db4\u0dcf\u0dba \u0db4\u0dd0\u0dad\u0dd2\u0d9a\u0da9 <span translate=no>_^_3_^_</span>\u0d9a\u0ddc\u0dc4\u0dda\u0daf? </p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the strategy profile of all players in iteration <span translate=no>_^_1_^_</span>, and</p>\n": "<p>\u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba\u0dda\u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8 \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0dd2\u0db1\u0dca\u0d9c\u0dda \u0d8b\u0db4\u0dcf\u0dba \u0db8\u0dcf\u0dbb\u0dca\u0d9c \u0db4\u0dd0\u0dad\u0dd2\u0d9a\u0da9 <span translate=no>_^_0_^_</span> \u0d9a\u0ddc\u0dc4\u0dda\u0daf <span translate=no>_^_1_^_</span>, \u0dc3\u0dc4</p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span></p>\n": "<p>\u0d9a\u0ddc\u0dc4\u0dda\u0daf <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>where</p>\n": "<p>\u0d9a\u0ddc\u0dc4\u0dda\u0daf</p>\n",
|
||||
"<p>with a simple proof.</p>\n": "<p>\u0dc3\u0dbb\u0dbd\u0dc3\u0dcf\u0d9a\u0dca\u0dc2\u0dd2\u0dba\u0d9a\u0dca \u0dc3\u0db8\u0d9f. </p>\n",
|
||||
"<span translate=no>_^_0_^_</span>": "<span translate=no>_^_0_^_</span>",
|
||||
"<span translate=no>_^_0_^_</span><p> </p>\n": "<span translate=no>_^_0_^_</span><p> </p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> creates a new empty history </li>\n<li><span translate=no>_^_1_^_</span> is the number of iterations to train on <span translate=no>_^_2_^_</span> </li>\n<li><span translate=no>_^_3_^_</span> is the number of players</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0db1\u0dc0 \u0dc4\u0dd2\u0dc3\u0dca \u0d89\u0dad\u0dd2\u0dc4\u0dcf\u0dc3\u0dba\u0d9a\u0dca \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb\u0dba\u0dd2 </li>\n<li><span translate=no>_^_1_^_</span> \u0db8\u0dad \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0db4\u0dd4\u0db1\u0dbb\u0dcf\u0dc0\u0dbb\u0dca\u0dad\u0db1 \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 <span translate=no>_^_2_^_</span> </li>\n<li><span translate=no>_^_3_^_</span> \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0d9a\u0dba\u0db1\u0dca \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0</li></ul>\n",
|
||||
"Regret Minimization in Games with Incomplete Information (CFR)": "\u0d85\u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc0\u0dbd \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1 (CFR)",
|
||||
"This is an annotated implementation/tutorial of Regret Minimization in Games with Incomplete Information": "\u0db8\u0dd9\u0dba \u0d85\u0dc3\u0db8\u0dca\u0db4\u0dd6\u0dbb\u0dca\u0dab \u0dad\u0ddc\u0dbb\u0dad\u0dd4\u0dbb\u0dd4 \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dca\u0dbb\u0dd3\u0da9\u0dcf \u0dc0\u0dbd \u0d9a\u0db1\u0d9c\u0dcf\u0da7\u0dd4\u0dc0 \u0d85\u0dc0\u0db8 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0db4\u0dd2\u0dc5\u0dd2\u0db6\u0db3 \u0dc0\u0dd2\u0d9a\u0da7 \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8/\u0db1\u0dd2\u0db6\u0db1\u0dca\u0db0\u0db1\u0dba\u0d9a\u0dd2"
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
{
|
||||
"<h1>Regret Minimization in Games with Incomplete Information (CFR)</h1>\n": "<h1>\u4fe1\u606f\u4e0d\u5b8c\u6574\uff08CFR\uff09\u6e38\u620f\u4e2d\u7684\u9057\u61be\u6700\u5c0f\u5316</h1>\n",
|
||||
"<h2>Calculate strategy</h2>\n<p>Calculate current strategy using <a href=\"#RegretMatching\">regret matching</a>.</p>\n<span translate=no>_^_0_^_</span><p>where <span translate=no>_^_1_^_</span></p>\n": "<h2>\u8ba1\u7b97\u7b56\u7565</h2>\n<p>\u4f7f\u7528<a href=\"#RegretMatching\">\u540e\u6094\u5339\u914d</a>\u8ba1\u7b97\u5f53\u524d\u7b56\u7565\u3002</p>\n<span translate=no>_^_0_^_</span><p>\u5728\u54ea\u91cc<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<h2>Counterfactual Regret Minimization (CFR) Algorithm</h2>\n<p>We do chance sampling (<strong>CS</strong>) where all the chance events (nodes) are sampled and all other events (nodes) are explored.</p>\n<p>We can ignore the term <span translate=no>_^_0_^_</span> since it's the same for all terminal histories since we are doing chance sampling and it cancels out when calculating strategy (common in numerator and denominator).</p>\n": "<h2>\u53cd\u4e8b\u5b9e\u9057\u61be\u6700\u5c0f\u5316 (CFR) \u7b97\u6cd5</h2>\n<p>\u6211\u4eec\u8fdb\u884c\u673a\u4f1a\u91c7\u6837\uff08<strong>CS</strong>\uff09\uff0c\u5176\u4e2d\u5bf9\u6240\u6709\u673a\u4f1a\u4e8b\u4ef6\uff08\u8282\u70b9\uff09\u8fdb\u884c\u91c7\u6837\uff0c\u5e76\u63a2\u7d22\u6240\u6709\u5176\u4ed6\u4e8b\u4ef6\uff08\u8282\u70b9\uff09\u3002</p>\n<p>\u6211\u4eec\u53ef\u4ee5\u5ffd\u7565\u8be5\u672f\u8bed\uff0c<span translate=no>_^_0_^_</span>\u56e0\u4e3a\u5b83\u5bf9\u6240\u6709\u7ec8\u7aef\u5386\u53f2\u90fd\u662f\u76f8\u540c\u7684\uff0c\u56e0\u4e3a\u6211\u4eec\u6b63\u5728\u8fdb\u884c\u673a\u4f1a\u62bd\u6837\uff0c\u5e76\u4e14\u5728\u8ba1\u7b97\u7b56\u7565\u65f6\u5b83\u4f1a\u88ab\u62b5\u6d88\uff08\u5728\u5206\u5b50\u548c\u5206\u6bcd\u4e2d\u5f88\u5e38\u89c1\uff09\u3002</p>\n",
|
||||
"<h2>Get average strategy</h2>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h2>\u83b7\u53d6\u5e73\u5747\u7b56\u7565</h2>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<h2>Introduction</h2>\n": "<h2>\u7b80\u4ecb</h2>\n",
|
||||
"<h3><a href=\"#History\">History</a></h3>\n": "<h3><a href=\"#History\">\u5386\u53f2</a></h3>\n",
|
||||
"<h3><a href=\"#InfoSet\">Information Set <span translate=no>_^_0_^_</span></a></h3>\n": "<h3><a href=\"#InfoSet\">\u4fe1\u606f\u96c6<span translate=no>_^_0_^_</span></a></h3>\n",
|
||||
"<h3>Action</h3>\n": "<h3>\u884c\u52a8</h3>\n",
|
||||
"<h3>Configurable CFR module</h3>\n": "<h3>\u53ef\u914d\u7f6e CFR \u6a21\u5757</h3>\n",
|
||||
"<h3>Counterfactual regret</h3>\n": "<h3>\u53cd\u4e8b\u5b9e\u7684\u9057\u61be</h3>\n",
|
||||
"<h3>Information set tracker</h3>\n<p>This is a small helper class to track data from information sets</p>\n": "<h3>\u4fe1\u606f\u96c6\u8ffd\u8e2a\u5668</h3>\n<p>\u8fd9\u662f\u4e00\u4e2a\u5c0f\u5e2e\u52a9\u7c7b\uff0c\u7528\u4e8e\u8ddf\u8e2a\u4fe1\u606f\u96c6\u4e2d\u7684\u6570\u636e</p>\n",
|
||||
"<h3>Iteratively update <span translate=no>_^_0_^_</span></h3>\n<p>This updates the strategies for <span translate=no>_^_1_^_</span> iterations.</p>\n": "<h3>\u8fed\u4ee3\u66f4\u65b0<span translate=no>_^_0_^_</span></h3>\n<p>\u8fd9\u66f4\u65b0\u4e86<span translate=no>_^_1_^_</span>\u8fed\u4ee3\u7b56\u7565\u3002</p>\n",
|
||||
"<h3>Monte Carlo CFR (MCCFR)</h3>\n": "<h3>\u8499\u7279\u5361\u6d1b CFR (MCCFR)</h3>\n",
|
||||
"<h3>Nash Equilibrium</h3>\n": "<h3>\u7eb3\u4ec0\u5747\u8861</h3>\n",
|
||||
"<h3>Player</h3>\n": "<h3>\u73a9\u5bb6</h3>\n",
|
||||
"<h3>Probability of History</h3>\n": "<h3>\u5386\u53f2\u6982\u7387</h3>\n",
|
||||
"<h3>Regret Matching</h3>\n": "<h3>\u9057\u61be\u7684\u914d\u5bf9</h3>\n",
|
||||
"<h3>Regret Minimization</h3>\n": "<h3>\u9057\u61be\u6700\u5c0f\u5316</h3>\n",
|
||||
"<h3>Strategy</h3>\n": "<h3>\u7b56\u7565</h3>\n",
|
||||
"<h3>Utility (Pay off)</h3>\n": "<h3>\u516c\u7528\u4e8b\u4e1a\uff08\u8fd8\u6e05\uff09</h3>\n",
|
||||
"<h3>Walk Tree</h3>\n<p>This function walks the game tree.</p>\n<ul><li><span translate=no>_^_0_^_</span> is the current history <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the player <span translate=no>_^_3_^_</span> that we are computing regrets of </li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_4_^_</span></a> is <span translate=no>_^_5_^_</span> </li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_6_^_</span></a> is <span translate=no>_^_7_^_</span></li></ul>\n<p>It returns the expected utility, for the history <span translate=no>_^_8_^_</span> <span translate=no>_^_9_^_</span> where <span translate=no>_^_10_^_</span> is the set of terminal histories with prefix <span translate=no>_^_11_^_</span></p>\n<p>While walking the tee it updates the total regrets <span translate=no>_^_12_^_</span>.</p>\n": "<h3>\u8d70\u6811</h3>\n<p>\u6b64\u51fd\u6570\u904d\u5386\u6e38\u620f\u6811\u3002</p>\n<ul><li><span translate=no>_^_0_^_</span>\u662f\u5f53\u524d\u7684\u5386\u53f2<span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u662f\u6211\u4eec\u6b63\u5728\u8ba1\u7b97\u540e\u6094<span translate=no>_^_3_^_</span>\u7684\u90a3\u4e2a\u73a9\u5bb6</li>\n<li><a href=\"#HistoryProbability\"><span translate=no>_^_4_^_</span></a>\u662f<span translate=no>_^_5_^_</span></li>\n</ul><li><a href=\"#HistoryProbability\"><span translate=no>_^_6_^_</span></a>\u662f<span translate=no>_^_7_^_</span></li>\n<p>\u5b83\u8fd4\u56de\u9884\u671f\u7684\u5b9e\u7528\u7a0b\u5e8f\uff0c\u5bf9\u4e8e\u5386\u53f2\u8bb0\u5f55\uff0c<span translate=no>_^_8_^_</span><span translate=no>_^_9_^_</span>\u5176\u4e2d<span translate=no>_^_10_^_</span>\u662f\u4e00\u7ec4\u5e26\u6709\u524d\u7f00\u7684\u7ec8\u7aef\u5386\u53f2\u8bb0\u5f55<span translate=no>_^_11_^_</span></p>\n<p>\u5728\u884c\u8d70\u53d1\u7403\u53f0\u65f6\uff0c\u5b83\u4f1a\u66f4\u65b0\u603b\u7684\u9057\u61be<span translate=no>_^_12_^_</span>\u3002</p>\n",
|
||||
"<p> <a id=\"History\"></a></p>\n<h2>History</h2>\n<p>History <span translate=no>_^_0_^_</span> is a sequence of actions including chance events, and <span translate=no>_^_1_^_</span> is the set of all histories.</p>\n<p>This class should be extended with game specific logic.</p>\n": "<p><a id=\"History\"></a></p>\n<h2>\u5386\u53f2</h2>\n<p>\u5386\u53f2<span translate=no>_^_0_^_</span>\u662f\u5305\u62ec\u5076\u7136\u4e8b\u4ef6\u5728\u5185\u7684\u4e00\u7cfb\u5217\u52a8\u4f5c\uff0c<span translate=no>_^_1_^_</span>\u662f\u6240\u6709\u5386\u53f2\u7684\u96c6\u5408\u3002</p>\n<p>\u8fd9\u4e2a\u7c7b\u5e94\u8be5\u4f7f\u7528\u6e38\u620f\u7279\u5b9a\u7684\u903b\u8f91\u8fdb\u884c\u6269\u5c55\u3002</p>\n",
|
||||
"<p> <a id=\"InfoSet\"></a></p>\n<h2>Information Set <span translate=no>_^_0_^_</span></h2>\n": "<p><a id=\"InfoSet\"></a></p>\n<h2>\u4fe1\u606f\u96c6<span translate=no>_^_0_^_</span></h2>\n",
|
||||
"<p> <a id=\"terminal_utility\"></a> Utility of player <span translate=no>_^_0_^_</span> for a terminal history. <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span></p>\n": "<p><a id=\"terminal_utility\"></a>\u7ec8\u7aef\u5386\u53f2\u8bb0\u5f55<span translate=no>_^_0_^_</span>\u7684\u64ad\u653e\u5668\u5b9e\u7528\u7a0b\u5e8f\u3002<span translate=no>_^_1_^_</span>\u5728\u54ea\u91cc<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p> Actions <span translate=no>_^_0_^_</span></p>\n": "<p>\u884c\u52a8<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> Add an action to the history.</p>\n": "<p>\u5728\u5386\u53f2\u8bb0\u5f55\u4e2d\u6dfb\u52a0\u64cd\u4f5c\u3002</p>\n",
|
||||
"<p> Create a new <a href=\"#InfoSet\">information set</a> for the current player</p>\n": "<p>\u4e3a\u5f53\u524d\u73a9\u5bb6\u521b\u5efa\u65b0\u7684<a href=\"#InfoSet\">\u4fe1\u606f\u96c6</a></p>\n",
|
||||
"<p> Get <a href=\"#InfoSet\">information set</a> for the current player</p>\n": "<p><a href=\"#InfoSet\">\u83b7\u53d6\u5f53\u524d\u73a9\u5bb6\u7684\u4fe1\u606f\u96c6</a></p>\n",
|
||||
"<p> Get current player, denoted by <span translate=no>_^_0_^_</span>, where <span translate=no>_^_1_^_</span> is known as <strong>Player function</strong>.</p>\n<p>If <span translate=no>_^_2_^_</span> it means that current event is a chance <span translate=no>_^_3_^_</span> event. Something like dealing cards, or opening common cards in poker.</p>\n": "<p>\u83b7\u53d6\u5f53\u524d\u73a9\u5bb6\uff0c\u7528\u8868\u793a<span translate=no>_^_0_^_</span>\uff0c\u5176\u4e2d<span translate=no>_^_1_^_</span>\u79f0\u4e3a<strong>\u73a9\u5bb6\u51fd\u6570</strong>\u3002</p>\n<p>\u5982\u679c<span translate=no>_^_2_^_</span>\u8fd9\u610f\u5473\u7740\u5f53\u524d\u4e8b\u4ef6\u662f\u5076\u7136<span translate=no>_^_3_^_</span>\u4e8b\u4ef6\u3002\u6bd4\u5982\u53d1\u724c\uff0c\u6216\u5728\u6251\u514b\u4e2d\u6253\u5f00\u666e\u901a\u724c\u3002</p>\n",
|
||||
"<p> Human readable representation</p>\n": "<p>\u4eba\u7c7b\u53ef\u8bfb\u7684\u8868\u793a</p>\n",
|
||||
"<p> Initialize <strong>CFR</strong> algorithm</p>\n": "<p>\u521d\u59cb\u5316 <strong>CFR</strong> \u7b97\u6cd5</p>\n",
|
||||
"<p> Initialize</p>\n": "<p>\u521d\u59cb\u5316</p>\n",
|
||||
"<p> Load data from a saved dictionary</p>\n": "<p>\u4ece\u4fdd\u5b58\u7684\u5b57\u5178\u4e2d\u52a0\u8f7d\u6570\u636e</p>\n",
|
||||
"<p> Load information set from a saved dictionary</p>\n": "<p>\u4ece\u4fdd\u5b58\u7684\u5b57\u5178\u4e2d\u52a0\u8f7d\u4fe1\u606f\u96c6</p>\n",
|
||||
"<p> Returns the information set <span translate=no>_^_0_^_</span> of the current player for a given history <span translate=no>_^_1_^_</span></p>\n": "<p>\u8fd4\u56de\u7ed9<span translate=no>_^_0_^_</span>\u5b9a\u5386\u53f2\u8bb0\u5f55\u4e2d\u5f53\u524d\u73a9\u5bb6\u7684\u4fe1\u606f\u96c6<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p> Sample a chance when <span translate=no>_^_0_^_</span>.</p>\n": "<p>\u5728\u4ec0\u4e48\u65f6\u5019\u62bd\u6837\u673a\u4f1a<span translate=no>_^_0_^_</span>.</p>\n",
|
||||
"<p> Save the information set to a dictionary</p>\n": "<p>\u5c06\u4fe1\u606f\u96c6\u4fdd\u5b58\u5230\u5b57\u5178\u4e2d</p>\n",
|
||||
"<p> Set tracking indicators</p>\n": "<p>\u8bbe\u7f6e\u8ffd\u8e2a\u6307\u793a\u5668</p>\n",
|
||||
"<p> Track the data from all information sets</p>\n": "<p>\u8ddf\u8e2a\u6240\u6709\u4fe1\u606f\u96c6\u4e2d\u7684\u6570\u636e</p>\n",
|
||||
"<p> Whether it's a terminal history; i.e. game over. <span translate=no>_^_0_^_</span></p>\n": "<p>\u65e0\u8bba\u662f\u7ec8\u7aef\u5386\u53f2\uff1b\u5373\u6e38\u620f\u7ed3\u675f\u3002<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> Whether the next step is a chance step; something like dealing a new card. <span translate=no>_^_0_^_</span></p>\n": "<p>\u4e0b\u4e00\u6b65\u662f\u5426\u662f\u673a\u4f1a\u6b65\u9aa4\uff1b\u6bd4\u5982\u53d1\u4e00\u5f20\u65b0\u724c\u3002<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/cfr/kuhn/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n": "<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/cfr/kuhn/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<p><a href=\"https://twitter.com/labmlai/status/1407186002255380484\"><span translate=no>_^_0_^_</span></a> Twitter thread</p>\n": "<p><a href=\"https://twitter.com/labmlai/status/1407186002255380484\"><span translate=no>_^_0_^_</span></a>\u63a8\u7279\u8bdd\u9898</p>\n",
|
||||
"<p><a id=\"CounterfactualRegret\"></a></p>\n": "<p><a id=\"CounterfactualRegret\"></a></p>\n",
|
||||
"<p><a id=\"HistoryProbability\"></a></p>\n": "<p><a id=\"HistoryProbability\"></a></p>\n",
|
||||
"<p><a id=\"MCCFR\"></a></p>\n": "<p><a id=\"MCCFR\"></a></p>\n",
|
||||
"<p><a id=\"NashEquilibrium\"></a></p>\n": "<p><a id=\"NashEquilibrium\"></a></p>\n",
|
||||
"<p><a id=\"RegretMatching\"></a></p>\n": "<p><a id=\"RegretMatching\"></a></p>\n",
|
||||
"<p><a id=\"Strategy\"></a></p>\n": "<p><a id=\"Strategy\"></a></p>\n",
|
||||
"<p><em>Let's dive into the code!</em></p>\n": "<p><em>\u8ba9\u6211\u4eec\u6df1\u5165\u7814\u7a76\u4e00\u4e0b\u4ee3\u7801\uff01</em></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is a set of subsets of <span translate=no>_^_1_^_</span> (<span translate=no>_^_2_^_</span>) where we look at only a single block <span translate=no>_^_3_^_</span> in an iteration. Union of all subsets spans <span translate=no>_^_4_^_</span> (<span translate=no>_^_5_^_</span>). <span translate=no>_^_6_^_</span> is the probability of picking block <span translate=no>_^_7_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span>\u662f<span translate=no>_^_1_^_</span> (<span translate=no>_^_2_^_</span>) \u7684\u4e00\u7ec4\u5b50\u96c6\uff0c\u6211\u4eec\u5728\u8fed\u4ee3<span translate=no>_^_3_^_</span>\u4e2d\u53ea\u67e5\u770b\u5355\u4e2a\u5757\u3002\u6240\u6709\u5b50\u96c6\u7684\u8054\u5408 spans<span translate=no>_^_4_^_</span> (<span translate=no>_^_5_^_</span>)\u3002<span translate=no>_^_6_^_</span>\u662f\u9009\u53d6\u533a\u5757\u7684\u6982\u7387<span translate=no>_^_7_^_</span>\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is known as the <strong>information partition</strong> of player <span translate=no>_^_1_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span>\u88ab\u79f0\u4e3a\u73a9\u5bb6<strong>\u7684\u4fe1\u606f\u5206\u533a</strong><span translate=no>_^_1_^_</span>\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is strategies of all players except <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u662f\u6240\u6709\u73a9\u5bb6\u7684\u7b56\u7565<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the <strong>strategy profile</strong> which consists of strategies of all players <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u662f<strong>\u7b56\u7565\u914d\u7f6e\u6587\u4ef6</strong>\uff0c\u7531\u6240\u6709\u73a9\u5bb6\u7684\u7b56\u7565\u7ec4\u6210<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the expected utility (payoff) for player <span translate=no>_^_1_^_</span> with strategy profile <span translate=no>_^_2_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span>\u662f\u5177\u6709\u7b56\u7565\u914d\u7f6e\u6587\u4ef6\u7684\u73a9\u5bb6<span translate=no>_^_1_^_</span>\u7684\u9884\u671f\u6548\u7528\uff08\u56de\u62a5\uff09<span translate=no>_^_2_^_</span>\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of picking <span translate=no>_^_1_^_</span> in current iteration; i.e. <span translate=no>_^_2_^_</span> - the sum of <span translate=no>_^_3_^_</span> where <span translate=no>_^_4_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span>\u662f\u5f53\u524d\u8fed\u4ee3<span translate=no>_^_1_^_</span>\u4e2d\u9009\u53d6\u7684\u6982\u7387\uff1b\u5373<span translate=no>_^_2_^_</span>-where<span translate=no>_^_3_^_</span> \u7684\u603b\u548c<span translate=no>_^_4_^_</span>\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of reaching <span translate=no>_^_1_^_</span> with only player <span translate=no>_^_2_^_</span>'s contribution. That is, <span translate=no>_^_3_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u662f\u4ec5\u901a\u8fc7\u73a9\u5bb6\u7684\u8d21\u732e\u8fbe\u5230\u76ee\u6807<span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u7684\u6982\u7387\u3002\u4e5f\u5c31\u662f\u8bf4\uff0c<span translate=no>_^_3_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the probability of reaching the history <span translate=no>_^_1_^_</span> with strategy profile <span translate=no>_^_2_^_</span>. <span translate=no>_^_3_^_</span> is the probability of reaching <span translate=no>_^_4_^_</span> without player <span translate=no>_^_5_^_</span>'s contribution; i.e. player <span translate=no>_^_6_^_</span> took the actions to follow <span translate=no>_^_7_^_</span> with a probability of <span translate=no>_^_8_^_</span>.</p>\n": "<p><span translate=no>_^_0_^_</span>\u662f<span translate=no>_^_1_^_</span>\u4f7f\u7528\u7b56\u7565\u914d\u7f6e\u6587\u4ef6\u8fdb\u5165\u5386\u53f2\u8bb0\u5f55\u7684\u6982\u7387<span translate=no>_^_2_^_</span>\u3002<span translate=no>_^_3_^_</span>\u662f\u5728\u6ca1\u6709\u73a9\u5bb6\u8d21\u732e<span translate=no>_^_4_^_</span>\u7684\u60c5\u51b5\u4e0b\u5230\u8fbe<span translate=no>_^_5_^_</span>\u7684\u6982\u7387\uff1b\u5373\u73a9\u5bb6\u91c7\u53d6<span translate=no>_^_6_^_</span>\u4e86\u8981\u9075\u5faa\u7684\u52a8\u4f5c<span translate=no>_^_7_^_</span>\u6982\u7387\u4e3a<span translate=no>_^_8_^_</span>\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the set of all histories that belong to a given information set; i.e. all those histories look the same in the eye of the player.</p>\n": "<p><span translate=no>_^_0_^_</span>\u662f\u5c5e\u4e8e\u7ed9\u5b9a\u4fe1\u606f\u96c6\u7684\u6240\u6709\u5386\u53f2\u8bb0\u5f55\u7684\u96c6\u5408\uff1b\u4e5f\u5c31\u662f\u8bf4\uff0c\u6240\u6709\u8fd9\u4e9b\u5386\u53f2\u5728\u73a9\u5bb6\u773c\u4e2d\u770b\u8d77\u6765\u90fd\u662f\u4e00\u6837\u7684\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is the set of terminal histories (game over).</p>\n": "<p><span translate=no>_^_0_^_</span>\u662f\u4e00\u7ec4\u7ec8\u7aef\u5386\u53f2\u8bb0\u5f55\uff08\u6e38\u620f\u7ed3\u675f\uff09\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> set of all information sets. </p>\n": "<p><span translate=no>_^_0_^_</span>\u6240\u6709\u4fe1\u606f\u96c6\u7684\u96c6\u5408\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> where <span translate=no>_^_1_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span>\u5728\u54ea\u91cc<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span>, the <a href=\"#Strategy\">strategy</a> of player <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\uff0c\u73a9\u5bb6\u7684<a href=\"#Strategy\">\u7b56\u7565</a><span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span>-Nash equilibrium is,</p>\n": "<p><span translate=no>_^_0_^_</span>-\u7eb3\u4ec0\u5747\u8861\u662f\uff0c</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span></p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><strong>Counterfactual value</strong> <span translate=no>_^_0_^_</span> is the expected utility for player <span translate=no>_^_1_^_</span> if if player <span translate=no>_^_2_^_</span> tried to reach <span translate=no>_^_3_^_</span> (took the actions leading to <span translate=no>_^_4_^_</span> with a probability of <span translate=no>_^_5_^_</span>).</p>\n": "\u5982\u679c@@ <p>\u73a9\u5bb6<span translate=no>_^_2_^_</span>\u5c1d\u8bd5\u5230\u8fbe<span translate=no>_^_3_^_</span>\uff08\u91c7\u53d6\u4e86\u884c\u52a8\uff09\uff0c<span translate=no>_^_1_^_</span>\u5219<strong>\u53cd\u4e8b\u5b9e\u503c</strong><span translate=no>_^_0_^_</span>\u662f\u73a9\u5bb6\u7684\u9884\u671f\u6548\u7528\u5bfc\u81f4<span translate=no>_^_4_^_</span>\u7684\u6982\u7387\u4e3a<span translate=no>_^_5_^_</span>\uff09\u3002</p>\n",
|
||||
"<p><strong>Immediate counterfactual regret</strong> is,</p>\n": "<p><strong>\u76f4\u63a5\u7684\u53cd\u4e8b\u5b9e\u9057\u61be</strong>\u662f\uff0c</p>\n",
|
||||
"<p><strong>Information set</strong> <span translate=no>_^_0_^_</span> for player <span translate=no>_^_1_^_</span> is similar to a history <span translate=no>_^_2_^_</span> but only contains the actions visible to player <span translate=no>_^_3_^_</span>. That is, the history <span translate=no>_^_4_^_</span> will contain actions/events such as cards dealt to the opposing player while <span translate=no>_^_5_^_</span> will not have them.</p>\n": "<p><span translate=no>_^_0_^_</span>\u4e3a\u73a9\u5bb6<strong><span translate=no>_^_1_^_</span>\u8bbe\u7f6e\u7684\u4fe1\u606f</strong>\u4e0e\u5386\u53f2\u8bb0\u5f55\u7c7b\u4f3c\uff0c<span translate=no>_^_2_^_</span>\u4f46\u4ec5\u5305\u542b\u73a9\u5bb6\u53ef\u89c1\u7684\u52a8\u4f5c<span translate=no>_^_3_^_</span>\u3002\u4e5f\u5c31\u662f\u8bf4\uff0c\u5386\u53f2\u8bb0\u5f55<span translate=no>_^_4_^_</span>\u5c06\u5305\u542b\u52a8\u4f5c/\u4e8b\u4ef6\uff0c\u4f8b\u5982\u53d1\u7ed9\u5bf9\u65b9\u73a9\u5bb6\u7684\u724c\uff0c\u800c<span translate=no>_^_5_^_</span>\u4e0d\u4f1a\u6709\u3002</p>\n",
|
||||
"<p><strong>Strategy of player</strong> <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> is a distribution over actions <span translate=no>_^_2_^_</span>, where <span translate=no>_^_3_^_</span> is the set of all strategies for player <span translate=no>_^_4_^_</span>. Strategy on <span translate=no>_^_5_^_</span>-th iteration is denoted by <span translate=no>_^_6_^_</span>.</p>\n": "<p><strong>\u73a9\u5bb6\u7684\u7b56\u7565</strong><span translate=no>_^_0_^_</span>\uff0c<span translate=no>_^_1_^_</span>\u662f\u5bf9\u52a8\u4f5c\u7684\u5206\u5e03<span translate=no>_^_2_^_</span>\uff0c\u5176\u4e2d<span translate=no>_^_3_^_</span>\u662f\u73a9\u5bb6\u6240\u6709\u7b56\u7565\u7684\u96c6\u5408<span translate=no>_^_4_^_</span>\u3002<span translate=no>_^_5_^_</span>\u7b2c-th \u6b21\u8fed\u4ee3\u7684\u7b56\u7565\u7528\u8868\u793a<span translate=no>_^_6_^_</span>\u3002</p>\n",
|
||||
"<p>A dictionary for <span translate=no>_^_0_^_</span> set of all information sets </p>\n": "<p>\u5305\u542b\u6240\u6709\u4fe1\u606f<span translate=no>_^_0_^_</span>\u96c6\u5408\u7684\u5b57\u5178</p>\n",
|
||||
"<p>A player <span translate=no>_^_0_^_</span> where <span translate=no>_^_1_^_</span> is the set of players </p>\n": "<p>\u4e00\u4e2a\u73a9\u5bb6<span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\uff0c\u73a9\u5bb6\u96c6\u5408\u5728\u54ea\u91cc</p>\n",
|
||||
"<p>A player is denoted by <span translate=no>_^_0_^_</span>, where <span translate=no>_^_1_^_</span> is the set of players.</p>\n": "<p>\u73a9\u5bb6\u7528\u8868\u793a<span translate=no>_^_0_^_</span>\uff0c\u5176\u4e2d<span translate=no>_^_1_^_</span>\u662f\u73a9\u5bb6\u96c6\u5408\u3002</p>\n",
|
||||
"<p>Action <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span> is a non-terminal <a href=\"#History\">history</a> </p>\n": "<p>\u64cd\u4f5c<span translate=no>_^_0_^_</span>\uff0c<span translate=no>_^_1_^_</span>\u5176\u4e2d<span translate=no>_^_2_^_</span>\u662f\u975e\u7ec8\u7aef<a href=\"#History\">\u5386\u53f2\u8bb0\u5f55</a></p>\n",
|
||||
"<p>Action <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> where <span translate=no>_^_2_^_</span> is a non-terminal <a href=\"#History\">history</a>.</p>\n": "<p>\u64cd\u4f5c<span translate=no>_^_0_^_</span>\uff0c<span translate=no>_^_1_^_</span>\u5176\u4e2d<span translate=no>_^_2_^_</span>\u662f\u975e\u7ec8\u7aef<a href=\"#History\">\u5386\u53f2\u8bb0\u5f55</a>\u3002</p>\n",
|
||||
"<p>And use that to update <span translate=no>_^_0_^_</span> and calculate the strategy <span translate=no>_^_1_^_</span> on each iteration. Finally, we calculate the overall average strategy <span translate=no>_^_2_^_</span>.</p>\n": "<p>\u7136\u540e\u7528\u5b83\u6765\u66f4\u65b0<span translate=no>_^_0_^_</span>\u548c\u8ba1\u7b97\u6bcf\u6b21\u8fed\u4ee3<span translate=no>_^_1_^_</span>\u7684\u7b56\u7565\u3002\u6700\u540e\uff0c\u6211\u4eec\u8ba1\u7b97\u6574\u4f53\u5e73\u5747\u7b56\u7565<span translate=no>_^_2_^_</span>\u3002</p>\n",
|
||||
"<p>Average overall regret for Player <span translate=no>_^_0_^_</span> is the average regret of not following the optimal strategy in all <span translate=no>_^_1_^_</span> rounds of iterations.</p>\n": "<p>\u73a9\u5bb6\u7684\u5e73\u5747\u603b\u4f53\u9057\u61be<span translate=no>_^_0_^_</span>\u662f\u5728\u6240\u6709<span translate=no>_^_1_^_</span>\u56de\u5408\u8fed\u4ee3\u4e2d\u90fd\u6ca1\u6709\u9075\u5faa\u6700\u4f73\u7b56\u7565\u7684\u5e73\u5747\u9057\u61be\u3002</p>\n",
|
||||
"<p>Computing <span translate=no>_^_0_^_</span> requires expanding the full game tree on each iteration.</p>\n": "<p>\u8ba1\u7b97<span translate=no>_^_0_^_</span>\u9700\u8981\u5728\u6bcf\u6b21\u8fed\u4ee3\u65f6\u6269\u5c55\u5b8c\u6574\u7684\u6e38\u620f\u6811\u3002</p>\n",
|
||||
"<p>For two players, Nash equilibrium is a <a href=\"#Strategy\">strategy profile</a> where</p>\n": "<p>\u5bf9\u4e8e\u4e24\u4e2a\u53c2\u4e0e\u8005\u6765\u8bf4\uff0c\u7eb3\u4ec0\u5747\u8861\u662f\u4e00\u79cd<a href=\"#Strategy\">\u7b56\u7565\u914d\u7f6e\u6587\u4ef6</a>\uff0c\u5176\u4e2d</p>\n",
|
||||
"<p>From the definition of <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span></p>\n": "<p>\u4ece\u5b9a\u4e49\u6765\u770b<span translate=no>_^_0_^_</span>\uff0c<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Get current player's information set for <span translate=no>_^_0_^_</span> </p>\n": "<p>\u83b7\u53d6\u5f53\u524d\u73a9\u5bb6\u7684\u4fe1\u606f\u96c6<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Here is a <a href=\"kuhn/index.html\">Kuhn Poker</a> implementation to try CFR on Kuhn Poker.</p>\n": "<p>\u8fd9\u91cc\u6709\u4e00\u4e2a<a href=\"kuhn/index.html\">\u5e93\u6069\u6251\u514b</a>\u5b9e\u73b0\uff0c\u53ef\u4ee5\u5728\u5e93\u6069\u6251\u514b\u4e0a\u8bd5\u7528CFR\u3002</p>\n",
|
||||
"<p>History <span translate=no>_^_0_^_</span> is a sequence of actions including chance events, and <span translate=no>_^_1_^_</span> is the set of all histories.</p>\n": "<p>\u5386\u53f2<span translate=no>_^_0_^_</span>\u662f\u5305\u62ec\u5076\u7136\u4e8b\u4ef6\u5728\u5185\u7684\u4e00\u7cfb\u5217\u52a8\u4f5c\uff0c<span translate=no>_^_1_^_</span>\u662f\u6240\u6709\u5386\u53f2\u7684\u96c6\u5408\u3002</p>\n",
|
||||
"<p>If <span translate=no>_^_0_^_</span> for all players then <span translate=no>_^_1_^_</span> is a <span translate=no>_^_2_^_</span>-Nash equilibrium.</p>\n": "<p>\u5982\u679c<span translate=no>_^_0_^_</span>\u5bf9\u6240\u6709\u73a9\u5bb6\u6765\u8bf4\u90fd<span translate=no>_^_1_^_</span>\u662f<span translate=no>_^_2_^_</span>-Nash \u5747\u8861\u3002</p>\n",
|
||||
"<p>If <span translate=no>_^_0_^_</span>, </p>\n": "<p>\u5982\u679c<span translate=no>_^_0_^_</span>\uff0c</p>\n",
|
||||
"<p>If it's a chance event <span translate=no>_^_0_^_</span> sample a and go to next step. </p>\n": "<p>\u5982\u679c\u662f\u5076\u7136\u4e8b\u4ef6<span translate=no>_^_0_^_</span>\u793a\u4f8b a \u7136\u540e\u8f6c\u5230\u4e0b\u4e00\u6b65\u3002</p>\n",
|
||||
"<p>If it's a terminal history <span translate=no>_^_0_^_</span> return the terminal utility <span translate=no>_^_1_^_</span>. </p>\n": "<p>\u5982\u679c\u662f\u7ec8\u7aef\u5386\u53f2\u8bb0\u5f55\uff0c\u5219<span translate=no>_^_0_^_</span>\u8fd4\u56de\u7ec8\u7aef\u5b9e\u7528\u7a0b\u5e8f<span translate=no>_^_1_^_</span>\u3002</p>\n",
|
||||
"<p>If the current player is <span translate=no>_^_0_^_</span>, </p>\n": "<p>\u5982\u679c\u5f53\u524d\u73a9\u5bb6\u662f<span translate=no>_^_0_^_</span>\uff0c</p>\n",
|
||||
"<p>If the current player is <span translate=no>_^_0_^_</span>, update the cumulative strategies and total regrets </p>\n": "<p>\u5982\u679c\u5f53\u524d\u73a9\u5bb6\u662f<span translate=no>_^_0_^_</span>\uff0c\u66f4\u65b0\u7d2f\u79ef\u7b56\u7565\u548c\u603b\u9057\u61be</p>\n",
|
||||
"<p>Iterate through all actions </p>\n": "<p>\u904d\u5386\u6240\u6709\u64cd\u4f5c</p>\n",
|
||||
"<p>Loop for <span translate=no>_^_0_^_</span> times </p>\n": "<p>\u5faa\u73af\u51e0<span translate=no>_^_0_^_</span>\u6b21</p>\n",
|
||||
"<p>Nash equilibrium is a state where none of the players can increase their expected utility (or payoff) by changing their strategy alone.</p>\n": "<p>\u7eb3\u4ec0\u5747\u8861\u662f\u4e00\u79cd\u72b6\u6001\uff0c\u5728\u8fd9\u79cd\u72b6\u6001\u4e0b\uff0c\u4efb\u4f55\u53c2\u4e0e\u8005\u90fd\u65e0\u6cd5\u4ec5\u901a\u8fc7\u6539\u53d8\u7b56\u7565\u6765\u589e\u52a0\u9884\u671f\u7684\u6548\u7528\uff08\u6216\u56de\u62a5\uff09\u3002</p>\n",
|
||||
"<p>Otherwise, </p>\n": "<p>\u5426\u5219\uff0c</p>\n",
|
||||
"<p>Print the information sets </p>\n": "<p>\u6253\u5370\u4fe1\u606f\u96c6</p>\n",
|
||||
"<p>Probability of reaching a information set <span translate=no>_^_0_^_</span> is, <span translate=no>_^_1_^_</span></p>\n": "<p>\u8fbe\u5230\u4fe1\u606f\u96c6\u7684\u6982\u7387<span translate=no>_^_0_^_</span>\u662f<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Regret is the utility (or pay off) that the player didn't get because she didn't follow the optimal strategy or took the best action.</p>\n": "<p>\u9057\u61be\u7684\u662f\u73a9\u5bb6\u56e0\u4e3a\u6ca1\u6709\u9075\u5faa\u6700\u4f73\u7b56\u7565\u6216\u91c7\u53d6\u6700\u4f73\u884c\u52a8\u800c\u6ca1\u6709\u83b7\u5f97\u7684\u6548\u7528\uff08\u6216\u56de\u62a5\uff09\u3002</p>\n",
|
||||
"<p>Return the expected utility for player <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> </p>\n": "<p>\u8fd4\u56de\u73a9\u5bb6\u7684\u9884\u671f\u6548\u7528<span translate=no>_^_0_^_</span>\uff0c<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Save checkpoints every <span translate=no>_^_0_^_</span> iterations </p>\n": "<p>\u6bcf\u6b21<span translate=no>_^_0_^_</span>\u8fed\u4ee3\u90fd\u4fdd\u5b58\u68c0\u67e5\u70b9</p>\n",
|
||||
"<p>Since <span translate=no>_^_0_^_</span> because it's a zero-sum game, we can add <span translate=no>_^_1_^_</span> and <span translate=no>_^_2_^_</span> and the second term will cancel out.</p>\n": "<p><span translate=no>_^_0_^_</span>\u56e0\u4e3a\u8fd9\u662f\u4e00\u573a\u96f6\u548c\u535a\u5f08\uff0c\u6240\u4ee5\u6211\u4eec\u53ef\u4ee5\u52a0<span translate=no>_^_1_^_</span><span translate=no>_^_2_^_</span>\u548c\uff0c\u7b2c\u4e8c\u4e2a\u672f\u8bed\u5c06\u88ab\u53d6\u6d88\u3002</p>\n",
|
||||
"<p>So we need to minimize <span translate=no>_^_0_^_</span> to get close to a Nash equilibrium.</p>\n": "<p>\u56e0\u6b64\uff0c\u6211\u4eec\u9700\u8981\u6700\u5c0f\u5316<span translate=no>_^_0_^_</span>\u624d\u80fd\u63a5\u8fd1\u7eb3\u4ec0\u5747\u8861\u3002</p>\n",
|
||||
"<p>Strategy is defined as a probability for taking an action <span translate=no>_^_0_^_</span> in for a given information set <span translate=no>_^_1_^_</span>,</p>\n": "<p>\u7b56\u7565\u88ab\u5b9a\u4e49\u4e3a\u9488\u5bf9\u7ed9\u5b9a\u4fe1\u606f\u96c6\u91c7\u53d6\u884c\u52a8\u7684<span translate=no>_^_0_^_</span>\u6982\u7387<span translate=no>_^_1_^_</span>\uff0c</p>\n",
|
||||
"<p>That is the mean regret of not playing with the optimal strategy.</p>\n": "<p>\u8fd9\u662f\u6ca1\u6709\u4f7f\u7528\u6700\u4f73\u7b56\u7565\u7684\u5351\u9119\u9057\u61be\u3002</p>\n",
|
||||
"<p>The <a href=\"#terminal_utility\">terminal utility</a> is the utility (or pay off) of a player <span translate=no>_^_0_^_</span> for a terminal history <span translate=no>_^_1_^_</span>.</p>\n": "<p>\u7ec8<a href=\"#terminal_utility\">\u7aef\u5b9e\u7528\u7a0b\u5e8f</a>\u662f\u73a9\u5bb6<span translate=no>_^_0_^_</span>\u5bf9\u7ec8\u7aef\u5386\u53f2\u8bb0\u5f55\u7684\u5b9e\u7528\u7a0b\u5e8f\uff08\u6216\u56de\u62a5\uff09<span translate=no>_^_1_^_</span>\u3002</p>\n",
|
||||
"<p>The <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">paper</a> proves that (Theorem 3),</p>\n": "<p>\u672c<a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u6587</a>\u8bc1\u660e\uff08\u5b9a\u74063\uff09\uff0c</p>\n",
|
||||
"<p>The average of utilities over a set of strategies is equal to the utility of the average strategy.</p>\n": "<p>\u4e00\u7ec4\u7b56\u7565\u7684\u516c\u7528\u4e8b\u4e1a\u5e73\u5747\u503c\u7b49\u4e8e\u5e73\u5747\u7b56\u7565\u7684\u6548\u7528\u3002</p>\n",
|
||||
"<p>The average strategy is the average of strategies followed in each round, for all <span translate=no>_^_0_^_</span></p>\n": "<p>\u5e73\u5747\u7b56\u7565\u662f\u6240\u6709\u56de\u5408\u4e2d\u9075\u5faa\u7684\u7b56\u7565\u7684\u5e73\u5747\u503c<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>The paper <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">Regret Minimization in Games with Incomplete Information</a> introduces counterfactual regret and how minimizing counterfactual regret through self-play can be used to reach Nash equilibrium. The algorithm is called Counterfactual Regret Minimization (<strong>CFR</strong>).</p>\n": "<p>\u8bba\u6587\u300a<a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u4fe1\u606f\u4e0d\u5b8c\u6574\u7684\u6e38\u620f\u4e2d\u7684\u9057\u61be\u6700\u5c0f\u5316</a>\u300b\u4ecb\u7ecd\u4e86\u53cd\u4e8b\u5b9e\u7684\u9057\u61be\uff0c\u4ee5\u53ca\u5982\u4f55\u5229\u7528\u901a\u8fc7\u81ea\u6211\u6e38\u620f\u6700\u5927\u9650\u5ea6\u5730\u51cf\u5c11\u53cd\u4e8b\u5b9e\u9057\u61be\u6765\u8fbe\u5230\u7eb3\u4ec0\u5e73\u8861\u3002\u8be5\u7b97\u6cd5\u79f0\u4e3a\u53cd\u4e8b\u5b9e\u9057\u61be\u6700\u5c0f\u5316\uff08<strong>CFR</strong>\uff09\u3002</p>\n",
|
||||
"<p>The paper <a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">Monte Carlo Sampling for Regret Minimization in Extensive Games</a> introduces Monte Carlo Counterfactual Regret Minimization (<strong>MCCFR</strong>), where we sample from the game tree and estimate the regrets.</p>\n": "<p>\u8bba\u6587\u300a<a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">\u5728\u5e7f\u6cdb\u6e38\u620f\u4e2d\u5c3d\u91cf\u51cf\u5c11\u9057\u61be\u7684\u8499\u7279\u5361\u6d1b\u62bd\u6837</a>\u300b\u4ecb\u7ecd\u4e86\u8499\u7279\u5361\u6d1b\u53cd\u4e8b\u5b9e\u9057\u61be\u6700\u5c0f\u5316\uff08<strong>MCCFR</strong>\uff09\uff0c\u6211\u4eec\u5728\u5176\u4e2d\u4ece\u6e38\u620f\u6811\u4e2d\u8fdb\u884c\u91c7\u6837\u5e76\u4f30\u8ba1\u9057\u61be\u3002</p>\n",
|
||||
"<p>The paper <a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">Monte Carlo Sampling for Regret Minimization in Extensive Games</a> shows we can sample from the game tree and estimate the regrets.</p>\n": "<p>\u8bba\u6587\u300a<a href=\"http://mlanctot.info/files/papers/nips09mccfr.pdf\">\u5728\u5e7f\u6cdb\u6e38\u620f\u4e2d\u5c3d\u91cf\u51cf\u5c11\u9057\u61be\u7684\u8499\u7279\u5361\u6d1b\u62bd\u6837</a>\u300b\u8868\u660e\uff0c\u6211\u4eec\u53ef\u4ee5\u4ece\u6e38\u620f\u6811\u4e2d\u8fdb\u884c\u91c7\u6837\u5e76\u4f30\u8ba1\u9057\u61be\u3002</p>\n",
|
||||
"<p>The paper The paper <a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">Regret Minimization in Games with Incomplete Information</a> proves that if the strategy is selected according to above equation <span translate=no>_^_0_^_</span> gets smaller proportionate to <span translate=no>_^_1_^_</span>, and therefore reaches <span translate=no>_^_2_^_</span>-<a href=\"#NashEquilibrium\">Nash equilibrium</a>.</p>\n": "<p>\u8fd9\u7bc7\u8bba\u6587\u300a<a href=\"http://martin.zinkevich.org/publications/regretpoker.pdf\">\u4fe1\u606f\u4e0d\u5b8c\u6574\u7684\u6e38\u620f\u4e2d\u7684\u9057\u61be\u6700\u5c0f\u5316</a>\u300b\u8bba\u6587\u8bc1\u660e\uff0c\u5982\u679c\u6839\u636e\u4e0a\u8ff0\u65b9\u7a0b\u5f0f<span translate=no>_^_0_^_</span>\u9009\u62e9\u7b56\u7565\uff0c\u5219\u4e0e<span translate=no>_^_1_^_</span>\uff0c\u56e0\u6b64\u8fbe\u5230<span translate=no>_^_2_^_</span>-<a href=\"#NashEquilibrium\">\u7eb3\u4ec0\u5747\u8861</a>\u3002</p>\n",
|
||||
"<p>The paper shows that</p>\n": "<p>\u8fd9\u7bc7\u8bba\u6587\u8868\u660e</p>\n",
|
||||
"<p>The regret for each information set and action pair <span translate=no>_^_0_^_</span> is maintained,</p>\n": "<p>\u5bf9\u6bcf\u4e2a\u4fe1\u606f\u96c6\u548c\u884c\u52a8\u5bf9\u7684\u9057\u61be<span translate=no>_^_0_^_</span>\u4ecd\u7136\u5b58\u5728\uff0c</p>\n",
|
||||
"<p>The strategy is calculated using regret matching.</p>\n": "<p>\u8be5\u7b56\u7565\u662f\u4f7f\u7528\u540e\u6094\u5339\u914d\u8ba1\u7b97\u5f97\u51fa\u7684\u3002</p>\n",
|
||||
"<p>Then we get <strong>sampled counterfactual value</strong> fro block <span translate=no>_^_0_^_</span>,</p>\n": "<p>\u7136\u540e\u6211\u4eec\u5f97\u5230\u533a\u5757\u7684<strong>\u53cd\u4e8b\u5b9e\u503c\u91c7\u6837</strong><span translate=no>_^_0_^_</span>\uff0c</p>\n",
|
||||
"<p>Then,</p>\n": "<p>\u90a3\u4e48\uff0c</p>\n",
|
||||
"<p>Therefore we can sample a part of the game tree and calculate the regrets. We calculate an estimate of regrets</p>\n": "<p>\u56e0\u6b64\uff0c\u6211\u4eec\u53ef\u4ee5\u5bf9\u6e38\u620f\u6811\u7684\u4e00\u90e8\u5206\u8fdb\u884c\u91c7\u6837\u5e76\u8ba1\u7b97\u9057\u61be\u3002\u6211\u4eec\u8ba1\u7b97\u9057\u61be\u7684\u4f30\u8ba1\u503c</p>\n",
|
||||
"<p>Therefore,</p>\n": "<p>\u56e0\u6b64\uff0c</p>\n",
|
||||
"<p>This is <span translate=no>_^_0_^_</span>-Nash equilibrium. You can similarly prove for games with more than 2 players.</p>\n": "<p>\u8fd9\u662f<span translate=no>_^_0_^_</span>\u7eb3\u4ec0\u5747\u8861\u3002\u540c\u6837\uff0c\u4f60\u53ef\u4ee5\u4e3a\u8d85\u8fc7 2 \u540d\u73a9\u5bb6\u7684\u6e38\u620f\u8fdb\u884c\u8bc1\u660e\u3002</p>\n",
|
||||
"<p>To store <span translate=no>_^_0_^_</span> </p>\n": "<p>\u8981\u5b58\u50a8<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>To store <span translate=no>_^_0_^_</span> for each action <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u4e3a\u6bcf\u4e2a\u52a8\u4f5c\u5b58\u50a8<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Total regret of not taking each action <span translate=no>_^_0_^_</span>,</p>\n<span translate=no>_^_1_^_</span><p>We maintain <span translate=no>_^_2_^_</span> instead of <span translate=no>_^_3_^_</span> since <span translate=no>_^_4_^_</span> term cancels out anyway when computing strategy <span translate=no>_^_5_^_</span> </p>\n": "<p>\u5bf9\u6ca1\u6709\u91c7\u53d6\u6bcf\u9879\u884c\u52a8\u611f\u5230\u975e\u5e38\u9057\u61be<span translate=no>_^_0_^_</span>\uff0c</p>\n<span translate=no>_^_1_^_</span><p>\u6211\u4eec\u575a\u6301<span translate=no>_^_2_^_</span>\u800c\u4e0d\u662f<span translate=no>_^_3_^_</span>\u56e0\u4e3a\u8ba1\u7b97\u7b56\u7565\u65f6<span translate=no>_^_4_^_</span>\u672f\u8bed\u65e0\u8bba\u5982\u4f55\u90fd\u4f1a\u88ab\u53d6\u6d88<span translate=no>_^_5_^_</span></p>\n",
|
||||
"<p>Track data for analytics </p>\n": "<p>\u8ddf\u8e2a\u6570\u636e\u4ee5\u8fdb\u884c\u5206\u6790</p>\n",
|
||||
"<p>Tracker for analytics </p>\n": "<p>\u5206\u6790\u8ffd\u8e2a\u5668</p>\n",
|
||||
"<p>Unique key identifying the information set </p>\n": "<p>\u6807\u8bc6\u4fe1\u606f\u96c6\u7684\u552f\u4e00\u5bc6\u94a5</p>\n",
|
||||
"<p>Update cumulative strategies <span translate=no>_^_0_^_</span> </p>\n": "<p>\u66f4\u65b0\u7d2f\u79ef\u7b56\u7565<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Update the strategy <span translate=no>_^_0_^_</span> </p>\n": "<p>\u66f4\u65b0\u7b56\u7565<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Walk tree and update regrets for each player </p>\n": "<p>Walk tree \u5e76\u66f4\u65b0\u6bcf\u4f4d\u73a9\u5bb6\u7684\u9057\u61be</p>\n",
|
||||
"<p>We implement Monte Carlo Counterfactual Regret Minimization (MCCFR) with chance sampling (CS). It iteratively, explores part of the game tree by trying all player actions, but sampling chance events. Chance events are things like dealing cards; they are kept sampled once per iteration. Then it calculates, for each action, the <em>regret</em> of following the current strategy instead of taking that action. Then it updates the strategy based on these regrets for the next iteration, using regret matching. Finally, it computes the average of the strategies throughout the iterations, which is very close to the Nash equilibrium if we ran enough iterations.</p>\n": "<p>\u6211\u4eec\u901a\u8fc7\u673a\u4f1a\u62bd\u6837\uff08CS\uff09\u5b9e\u65bd\u4e86\u8499\u7279\u5361\u6d1b\u53cd\u4e8b\u5b9e\u9057\u61be\u6700\u5c0f\u5316\uff08MCCFR\uff09\u3002\u5b83\u901a\u8fc7\u5c1d\u8bd5\u6240\u6709\u73a9\u5bb6\u52a8\u4f5c\u6765\u53cd\u590d\u63a2\u7d22\u6e38\u620f\u6811\u7684\u4e00\u90e8\u5206\uff0c\u4f46\u91c7\u6837\u673a\u4f1a\u4e8b\u4ef6\u3002\u673a\u4f1a\u4e8b\u4ef6\u5c31\u50cf\u53d1\u724c\u4e00\u6837\uff1b\u6bcf\u6b21\u8fed\u4ee3\u90fd\u4f1a\u5bf9\u5b83\u4eec\u8fdb\u884c\u4e00\u6b21\u91c7\u6837\u3002\u7136\u540e\uff0c\u5b83\u4f1a\u8ba1\u7b97\u6bcf\u4e2a\u52a8\u4f5c\u9075\u5faa\u5f53\u524d\u7b56\u7565\u800c\u4e0d\u662f\u91c7\u53d6\u8be5\u64cd\u4f5c\u7684<em>\u9057\u61be</em>\u3002\u7136\u540e\uff0c\u5b83\u4f1a\u6839\u636e\u8fd9\u4e9b\u9057\u61be\u66f4\u65b0\u7b56\u7565\uff0c\u4f7f\u7528\u9057\u61be\u5339\u914d\u8fdb\u884c\u4e0b\u4e00\u6b21\u8fed\u4ee3\u3002\u6700\u540e\uff0c\u5b83\u8ba1\u7b97\u6574\u4e2a\u8fed\u4ee3\u671f\u95f4\u7b56\u7565\u7684\u5e73\u5747\u503c\uff0c\u5982\u679c\u6211\u4eec\u8fdb\u884c\u4e86\u8db3\u591f\u7684\u8fed\u4ee3\uff0c\u5219\u8be5\u5e73\u5747\u503c\u4e0e\u7eb3\u4ec0\u5747\u8861\u975e\u5e38\u63a5\u8fd1\u3002</p>\n",
|
||||
"<p>We maintain the cumulative strategy <span translate=no>_^_0_^_</span> to compute overall average strategy</p>\n<p><span translate=no>_^_1_^_</span> </p>\n": "<p>\u6211\u4eec\u7ef4\u6301\u7d2f\u79ef\u7b56\u7565<span translate=no>_^_0_^_</span>\u6765\u8ba1\u7b97\u6574\u4f53\u5e73\u5747\u7b56\u7565</p>\n<p><span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>We tried to keep our Python implementation easy-to-understand like a tutorial. We run it on <a href=\"kuhn/index.html\">a very simple imperfect information game called Kuhn poker</a>.</p>\n": "<p>\u6211\u4eec\u8bd5\u56fe\u8ba9\u6211\u4eec\u7684Python\u5b9e\u73b0\u50cf\u6559\u7a0b\u4e00\u6837\u6613\u4e8e\u7406\u89e3\u3002\u6211\u4eec\u5728<a href=\"kuhn/index.html\">\u4e00\u4e2a\u540d\u4e3a Kuhn poker \u7684\u975e\u5e38\u7b80\u5355\u7684\u4e0d\u5b8c\u7f8e\u4fe1\u606f\u6e38\u620f</a>\u4e0a\u8fd0\u884c\u5b83\u3002</p>\n",
|
||||
"<p>We will first introduce the mathematical notation and theory.</p>\n": "<p>\u6211\u4eec\u5c06\u9996\u5148\u4ecb\u7ecd\u6570\u5b66\u7b26\u53f7\u548c\u7406\u8bba\u3002</p>\n",
|
||||
"<p>and the strategy is calculated with regret matching,</p>\n": "<p>\u7b56\u7565\u662f\u7528\u9057\u61be\u5339\u914d\u6765\u8ba1\u7b97\u7684\uff0c</p>\n",
|
||||
"<p>if <span translate=no>_^_0_^_</span>, </p>\n": "<p>\u5982\u679c<span translate=no>_^_0_^_</span>\uff0c</p>\n",
|
||||
"<p>is the strategy profile <span translate=no>_^_0_^_</span> with player <span translate=no>_^_1_^_</span>'s strategy replaced with <span translate=no>_^_2_^_</span>.</p>\n": "<p>\u662f\u5c06\u73a9\u5bb6\u7684\u7b56\u7565\u66ff\u6362\u4e3a<span translate=no>_^_1_^_</span>\u7684\u7b56\u7565\u914d\u7f6e\u6587\u4ef6<span translate=no>_^_0_^_</span><span translate=no>_^_2_^_</span>\u3002</p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the set of terminal histories reachable from <span translate=no>_^_1_^_</span>, and <span translate=no>_^_2_^_</span> is the prefix of <span translate=no>_^_3_^_</span> up to <span translate=no>_^_4_^_</span>. <span translate=no>_^_5_^_</span> is the probability of reaching z from <span translate=no>_^_6_^_</span>.</p>\n": "<p>wh<span translate=no>_^_0_^_</span> ere \u662f\u53ef\u4ece\u4e2d\u8bbf\u95ee\u7684\u7ec8\u7aef\u5386\u53f2\u8bb0\u5f55\u96c6<span translate=no>_^_1_^_</span>\uff0c\u5e76\u4e14<span translate=no>_^_2_^_</span>\u662f<span translate=no>_^_3_^_</span> up \u7684\u524d\u7f00<span translate=no>_^_4_^_</span>\u3002<span translate=no>_^_5_^_</span>\u662f\u4ece\u5230\u8fbe z \u7684\u6982\u7387<span translate=no>_^_6_^_</span>\u3002</p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the strategy profile <span translate=no>_^_1_^_</span> with the modification of always taking action <span translate=no>_^_2_^_</span> at information set <span translate=no>_^_3_^_</span>.</p>\n": "<p>\u5176\u4e2d<span translate=no>_^_0_^_</span>\u662f\u4fee\u6539\u4e3a\u59cb\u7ec8<span translate=no>_^_2_^_</span>\u5728\u4fe1\u606f\u96c6\u4e2d\u91c7\u53d6\u884c\u52a8\u7684\u7b56\u7565\u914d\u7f6e\u6587\u4ef6<span translate=no>_^_1_^_</span><span translate=no>_^_3_^_</span>\u3002</p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span> is the strategy profile of all players in iteration <span translate=no>_^_1_^_</span>, and</p>\n": "<p>\u8fed\u4ee3\u4e2d\u6240\u6709\u73a9\u5bb6\u7684\u7b56\u7565\u914d\u7f6e\u6587\u4ef6\u5728\u54ea\u91cc<span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\uff0c\u4ee5\u53ca</p>\n",
|
||||
"<p>where <span translate=no>_^_0_^_</span></p>\n": "<p>\u5728\u54ea\u91cc<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>where</p>\n": "<p>\u5728\u54ea\u91cc</p>\n",
|
||||
"<p>with a simple proof.</p>\n": "<p>\u7528\u4e00\u4e2a\u7b80\u5355\u7684\u8bc1\u636e\u3002</p>\n",
|
||||
"<span translate=no>_^_0_^_</span>": "<span translate=no>_^_0_^_</span>",
|
||||
"<span translate=no>_^_0_^_</span><p> </p>\n": "<span translate=no>_^_0_^_</span><p></p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> creates a new empty history </li>\n<li><span translate=no>_^_1_^_</span> is the number of iterations to train on <span translate=no>_^_2_^_</span> </li>\n<li><span translate=no>_^_3_^_</span> is the number of players</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u521b\u5efa\u65b0\u7684\u7a7a\u767d\u5386\u53f2\u8bb0\u5f55</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u8981\u8bad\u7ec3\u7684\u8fed\u4ee3\u6b21\u6570<span translate=no>_^_2_^_</span></li>\n<li><span translate=no>_^_3_^_</span>\u662f\u73a9\u5bb6\u7684\u6570\u91cf</li></ul>\n",
|
||||
"Regret Minimization in Games with Incomplete Information (CFR)": "\u4fe1\u606f\u4e0d\u5b8c\u6574\uff08CFR\uff09\u6e38\u620f\u4e2d\u7684\u9057\u61be\u6700\u5c0f\u5316",
|
||||
"This is an annotated implementation/tutorial of Regret Minimization in Games with Incomplete Information": "\u8fd9\u662f\u4fe1\u606f\u4e0d\u5b8c\u6574\u7684\u6e38\u620f\u4e2d\u540e\u6094\u6700\u5c0f\u5316\u7684\u5e26\u6ce8\u91ca\u7684\u5b9e\u73b0/\u6559\u7a0b"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"analytics.py": "analytics.py"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"analytics.py": "analytics.py"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"analytics.py": "analytics.py"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"infoset_saver.py": "infoset_saver.py"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"infoset_saver.py": "infoset_saver.py"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"infoset_saver.py": "infoset_saver.py"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,40 @@
|
||||
{
|
||||
"<h1>Patches Are All You Need? (ConvMixer)</h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation of the paper <a href=\"https://arxiv.org/abs/2201.09792\">Patches Are All You Need?</a>.</p>\n<p><span translate=no>_^_0_^_</span></p>\n<p>ConvMixer is Similar to <a href=\"../transformers/mlp_mixer/index.html\">MLP-Mixer</a>. MLP-Mixer separates mixing of spatial and channel dimensions, by applying an MLP across spatial dimension and then an MLP across the channel dimension (spatial MLP replaces the <a href=\"../transformers/vit/index.html\">ViT</a> attention and channel MLP is the <a href=\"../transformers/feed_forward.html\">FFN</a> of ViT).</p>\n<p>ConvMixer uses a <span translate=no>_^_1_^_</span> convolution for channel mixing and a depth-wise convolution for spatial mixing. Since it's a convolution instead of a full MLP across the space, it mixes only the nearby batches in contrast to ViT or MLP-Mixer. Also, the MLP-mixer uses MLPs of two layers for each mixing and ConvMixer uses a single layer for each mixing.</p>\n<p>The paper recommends removing the residual connection across the channel mixing (point-wise convolution) and having only a residual connection over the spatial mixing (depth-wise convolution). They also use <a href=\"../normalization/batch_norm/index.html\">Batch normalization</a> instead of <a href=\"../normalization/layer_norm/index.html\">Layer normalization</a>.</p>\n<p>Here's <a href=\"experiment.html\">an experiment</a> that trains ConvMixer on CIFAR-10.</p>\n": "<h1>\u5fc5\u8981\u306a\u306e\u306f\u30d1\u30c3\u30c1\u3060\u3051\uff1f(\u30b3\u30f3\u30d0\u30fc\u30b8\u30e7\u30f3\u30df\u30ad\u30b5\u30fc</h1>)\n<p><a href=\"https://pytorch.org\">\u3053\u308c\u306f\u7d19\u306e\u30d1\u30c3\u30c1\u3092PyTorch\u3067\u5b9f\u88c5\u3057\u305f\u3082\u306e\u3067\u3059</a><a href=\"https://arxiv.org/abs/2201.09792\">\u3002\u5fc5\u8981\u306a\u306e\u306f\u30d1\u30c3\u30c1\u3060\u3051\u3067\u3059\u304b</a>\uff1f</p>\u3002\n<p><span translate=no>_^_0_^_</span></p>\n<p><a href=\"../transformers/mlp_mixer/index.html\">ConvMixer\u306fMLP\u30df\u30ad\u30b5\u30fc\u306b\u4f3c\u3066\u3044\u307e\u3059\u3002</a></p><a href=\"../transformers/feed_forward.html\">MLP-Mixer\u306f\u3001\u7a7a\u9593\u6b21\u5143\u5168\u4f53\u306bMLP\u3092\u9069\u7528\u3057\u3001\u6b21\u306b\u30c1\u30e3\u30cd\u30eb\u6b21\u5143\u5168\u4f53\u306bMLP\u3092\u9069\u7528\u3059\u308b\u3053\u3068\u3067\u3001\u7a7a\u9593\u6b21\u5143\u3068\u30c1\u30e3\u30cd\u30eb\u6b21\u5143\u306e\u6df7\u5408\u3092\u5206\u96e2\u3057\u307e\u3059\uff08\u7a7a\u9593MLP\u306fvIT\u306e\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u306b\u4ee3\u308f\u308a\u3001<a href=\"../transformers/vit/index.html\">\u30c1\u30e3\u30cd\u30ebMLP\u306fVIT\u306eFFN\u3067\u3059</a>\uff09\u3002</a>\n<p>ConvMixer\u306f\u3001<span translate=no>_^_1_^_</span>\u30c1\u30e3\u30f3\u30cd\u30eb\u30df\u30ad\u30b7\u30f3\u30b0\u306b\u306f\u30b3\u30f3\u30dc\u30ea\u30e5\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3001\u7a7a\u9593\u30df\u30ad\u30b7\u30f3\u30b0\u306b\u306f\u5965\u884c\u304d\u30b3\u30f3\u30dc\u30ea\u30e5\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002\u30b9\u30da\u30fc\u30b9\u5168\u4f53\u3067\u30d5\u30ebMLP\u3067\u306f\u306a\u304f\u7573\u307f\u8fbc\u307f\u306a\u306e\u3067\u3001VIT\u3084MLP\u30df\u30ad\u30b5\u30fc\u3068\u306f\u5bfe\u7167\u7684\u306b\u3001\u8fd1\u304f\u306e\u30d0\u30c3\u30c1\u306e\u307f\u3092\u30df\u30ad\u30b7\u30f3\u30b0\u3057\u307e\u3059\u3002\u307e\u305f\u3001MLP\u30df\u30ad\u30b5\u30fc\u306f\u30df\u30ad\u30b7\u30f3\u30b0\u3054\u3068\u306b2\u5c64\u306eMLP\u3092\u4f7f\u7528\u3057\u3001ConvMixer\u306f\u30df\u30ad\u30b7\u30f3\u30b0\u3054\u3068\u306b1\u5c64\u306eMLP\u3092\u4f7f\u7528\u3057\u307e\u3059</p>\u3002\n<p>\u3053\u306e\u8ad6\u6587\u3067\u306f\u3001\u30c1\u30e3\u30cd\u30eb\u30df\u30ad\u30b7\u30f3\u30b0\u5168\u4f53\u306e\u6b8b\u7559\u63a5\u7d9a\u3092\u524a\u9664\u3057\uff08\u70b9\u5358\u4f4d\u306e\u7573\u307f\u8fbc\u307f\uff09\u3001\u7a7a\u9593\u30df\u30ad\u30b7\u30f3\u30b0\u3067\u306f\u6b8b\u7559\u63a5\u7d9a\u306e\u307f\u306b\u3059\u308b\uff08\u6df1\u3055\u65b9\u5411\u306e\u7573\u307f\u8fbc\u307f\uff09\u3053\u3068\u3092\u63a8\u5968\u3057\u3066\u3044\u307e\u3059\u3002\u307e\u305f\u3001</p><a href=\"../normalization/batch_norm/index.html\"><a href=\"../normalization/layer_norm/index.html\">\u30ec\u30a4\u30e4\u30fc\u6b63\u898f\u5316\u306e\u4ee3\u308f\u308a\u306b\u30d0\u30c3\u30c1\u6b63\u898f\u5316\u3092\u4f7f\u7528\u3057\u307e\u3059</a></a>\u3002\n<p>\u3053\u308c\u306f<a href=\"experiment.html\">\u3001CIFAR-10 \u3067 ConvMixer \u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3059\u308b\u5b9f\u9a13\u3067\u3059</a>\u3002</p>\n",
|
||||
"<h2>ConvMixer</h2>\n<p>This combines the patch embeddings block, a number of ConvMixer layers and a classification head.</p>\n": "<h2>\u30b3\u30f3\u30d0\u30fc\u30b8\u30e7\u30f3\u30df\u30ad\u30b5\u30fc</h2>\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u30d6\u30ed\u30c3\u30af\u3001\u591a\u6570\u306e ConvMixer \u30ec\u30a4\u30e4\u30fc\u3001\u304a\u3088\u3073\u5206\u985e\u30d8\u30c3\u30c9\u304c\u7d44\u307f\u5408\u308f\u3055\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p> <a id=\"ClassificationHead\"></a></p>\n<h2>Classification Head</h2>\n<p>They do average pooling (taking the mean of all patch embeddings) and a final linear transformation to predict the log-probabilities of the image classes.</p>\n": "<p><a id=\"ClassificationHead\"></a></p>\n<h2>\u5206\u985e\u8cac\u4efb\u8005</h2>\n<p>\u5e73\u5747\u30d7\u30fc\u30ea\u30f3\u30b0\uff08\u3059\u3079\u3066\u306e\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u306e\u5e73\u5747\u3092\u53d6\u308b\uff09\u3068\u6700\u7d42\u7684\u306a\u7dda\u5f62\u5909\u63db\u3092\u884c\u3063\u3066\u3001\u753b\u50cf\u30af\u30e9\u30b9\u306e\u5bfe\u6570\u78ba\u7387\u3092\u4e88\u6e2c\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<p> <a id=\"ConvMixerLayer\"></a></p>\n<h2>ConvMixer layer</h2>\n<p>This is a single ConvMixer layer. The model will have a series of these.</p>\n": "<p><a id=\"ConvMixerLayer\"></a></p>\n<h2>ConvMixer \u30ec\u30a4\u30e4\u30fc</h2>\n<p>\u3053\u308c\u306f\u5358\u4e00\u306e ConvMixer \u30ec\u30a4\u30e4\u30fc\u3067\u3059\u3002\u30e2\u30c7\u30eb\u306b\u306f\u3053\u308c\u3089\u306e\u30b7\u30ea\u30fc\u30ba\u304c\u3042\u308a\u307e\u3059\u3002</p>\n",
|
||||
"<p> <a id=\"PatchEmbeddings\"></a></p>\n<h2>Get patch embeddings</h2>\n<p>This splits the image into patches of size <span translate=no>_^_0_^_</span> and gives an embedding for each patch.</p>\n": "<p><a id=\"PatchEmbeddings\"></a></p>\n<h2>\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u3092\u5165\u624b</h2>\n<p>\u3053\u308c\u306b\u3088\u308a\u3001<span translate=no>_^_0_^_</span>\u753b\u50cf\u304c\u8907\u6570\u306e\u30b5\u30a4\u30ba\u306e\u30d1\u30c3\u30c1\u306b\u5206\u5272\u3055\u308c\u3001\u5404\u30d1\u30c3\u30c1\u304c\u57cb\u3081\u8fbc\u307e\u308c\u307e\u3059\u3002</p>\n",
|
||||
"<p>Activation after depth-wise convolution </p>\n": "<p>\u6df1\u3055\u65b9\u5411\u306e\u7573\u307f\u8fbc\u307f\u5f8c\u306e\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3</p>\n",
|
||||
"<p>Activation after point-wise convolution </p>\n": "<p>\u70b9\u5358\u4f4d\u306e\u7573\u307f\u8fbc\u307f\u5f8c\u306e\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3</p>\n",
|
||||
"<p>Activation and normalization </p>\n": "<p>\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u3068\u6b63\u898f\u5316</p>\n",
|
||||
"<p>Activation function </p>\n": "<p>\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u6a5f\u80fd</p>\n",
|
||||
"<p>Add residual connection </p>\n": "<p>\u6b8b\u4f59\u63a5\u7d9a\u3092\u8ffd\u52a0</p>\n",
|
||||
"<p>Apply convolution layer </p>\n": "<p>\u7573\u307f\u8fbc\u307f\u5c64\u3092\u9069\u7528</p>\n",
|
||||
"<p>Average Pool </p>\n": "<p>\u30a2\u30d9\u30ec\u30fc\u30b8\u30d7\u30fc\u30eb</p>\n",
|
||||
"<p>Average pooling </p>\n": "<p>\u5e73\u5747\u30d7\u30fc\u30ea\u30f3\u30b0</p>\n",
|
||||
"<p>Batch normalization </p>\n": "<p>\u30d0\u30c3\u30c1\u6b63\u898f\u5316</p>\n",
|
||||
"<p>Classification head </p>\n": "<p>\u5206\u985e\u30d8\u30c3\u30c9</p>\n",
|
||||
"<p>Classification head, to get logits </p>\n": "<p>\u30ed\u30b8\u30c3\u30c8\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306e\u5206\u985e\u30d8\u30c3\u30c9</p>\n",
|
||||
"<p>Depth-wise convolution is separate convolution for each channel. We do this with a convolution layer with the number of groups equal to the number of channels. So that each channel is it's own group. </p>\n": "<p>\u6df1\u5ea6\u65b9\u5411\u306e\u7573\u307f\u8fbc\u307f\u306f\u3001\u30c1\u30e3\u30f3\u30cd\u30eb\u3054\u3068\u306b\u5225\u3005\u306e\u7573\u307f\u8fbc\u307f\u306b\u306a\u308a\u307e\u3059\u3002\u3053\u308c\u306f\u3001\u30b0\u30eb\u30fc\u30d7\u306e\u6570\u304c\u30c1\u30e3\u30cd\u30eb\u6570\u3068\u7b49\u3057\u3044\u7573\u307f\u8fbc\u307f\u5c64\u3067\u884c\u3044\u307e\u3059\u3002\u305d\u306e\u305f\u3081\u3001\u5404\u30c1\u30e3\u30f3\u30cd\u30eb\u306f\u305d\u308c\u305e\u308c\u72ec\u81ea\u306e\u30b0\u30eb\u30fc\u30d7\u306b\u306a\u308a\u307e\u3059\u3002</p>\n",
|
||||
"<p>Depth-wise convolution, activation and normalization </p>\n": "<p>\u6df1\u5ea6\u65b9\u5411\u306e\u7573\u307f\u8fbc\u307f\u3001\u6d3b\u6027\u5316\u3001\u6b63\u898f\u5316</p>\n",
|
||||
"<p>For the residual connection around the depth-wise convolution </p>\n": "<p>\u6df1\u3055\u65b9\u5411\u306e\u7573\u307f\u8fbc\u307f\u306e\u5468\u308a\u306e\u6b8b\u5dee\u7d50\u5408\u306b\u3064\u3044\u3066</p>\n",
|
||||
"<p>Get patch embeddings. This gives a tensor of shape <span translate=no>_^_0_^_</span>. </p>\n": "<p>\u30d1\u30c3\u30c1\u306e\u57cb\u3081\u8fbc\u307f\u3092\u5165\u624b\u3057\u3066\u304f\u3060\u3055\u3044\u3002<span translate=no>_^_0_^_</span>\u3053\u308c\u306b\u3088\u308a\u5f62\u72b6\u306e\u30c6\u30f3\u30bd\u30eb\u304c\u5f97\u3089\u308c\u307e\u3059</p>\u3002\n",
|
||||
"<p>Get the embedding, <span translate=no>_^_0_^_</span> will have shape <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u57cb\u3081\u8fbc\u307f\u3092\u5165\u308c\u308b\u3068\u3001\u5f62\u304c\u6574\u3044\u307e\u3059 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Linear layer </p>\n": "<p>\u30ea\u30cb\u30a2\u30ec\u30a4\u30e4\u30fc</p>\n",
|
||||
"<p>Make copies of the <a href=\"#ConvMixerLayer\">ConvMixer layer</a> </p>\n": "<p><a href=\"#ConvMixerLayer\">ConvMixer</a> \u30ec\u30a4\u30e4\u30fc\u306e\u30b3\u30d4\u30fc\u3092\u4f5c\u6210</p>\n",
|
||||
"<p>Normalization after depth-wise convolution </p>\n": "<p>\u6df1\u3055\u65b9\u5411\u306e\u7573\u307f\u8fbc\u307f\u5f8c\u306e\u6b63\u898f\u5316</p>\n",
|
||||
"<p>Normalization after point-wise convolution </p>\n": "<p>\u70b9\u5358\u4f4d\u306e\u7573\u307f\u8fbc\u307f\u5f8c\u306e\u6b63\u898f\u5316</p>\n",
|
||||
"<p>Pass through <a href=\"#ConvMixerLayer\">ConvMixer layers</a> </p>\n": "<p><a href=\"#ConvMixerLayer\">ConvMixer \u30ec\u30a4\u30e4\u30fc\u3092\u30d1\u30b9\u30b9\u30eb\u30fc\u3059\u308b</a></p>\n",
|
||||
"<p>Patch embeddings </p>\n": "<p>\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f</p>\n",
|
||||
"<p>Point-wise convolution is a <span translate=no>_^_0_^_</span> convolution. i.e. a linear transformation of patch embeddings </p>\n": "<p>\u70b9\u5358\u4f4d\u306e\u7573\u307f\u8fbc\u307f\u306f\u7573\u307f\u8fbc\u307f\u3067\u3059\u3002\u3064\u307e\u308a\u3001<span translate=no>_^_0_^_</span>\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u306e\u7dda\u5f62\u5909\u63db\u3067\u3059</p>\n",
|
||||
"<p>Point-wise convolution, activation and normalization </p>\n": "<p>\u70b9\u5358\u4f4d\u306e\u7573\u307f\u8fbc\u307f\u3001\u6d3b\u6027\u5316\u3001\u6b63\u898f\u5316</p>\n",
|
||||
"<p>We create a convolution layer with a kernel size and and stride length equal to patch size. This is equivalent to splitting the image into patches and doing a linear transformation on each patch. </p>\n": "<p>\u30ab\u30fc\u30cd\u30eb\u30b5\u30a4\u30ba\u3067\u30b9\u30c8\u30e9\u30a4\u30c9\u306e\u9577\u3055\u304c\u30d1\u30c3\u30c1\u30b5\u30a4\u30ba\u3068\u540c\u3058\u30b3\u30f3\u30dc\u30ea\u30e5\u30fc\u30b7\u30e7\u30f3\u30ec\u30a4\u30e4\u30fc\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u3053\u308c\u306f\u3001\u753b\u50cf\u3092\u30d1\u30c3\u30c1\u306b\u5206\u5272\u3057\u3001\u5404\u30d1\u30c3\u30c1\u3067\u7dda\u5f62\u5909\u63db\u3092\u884c\u3046\u306e\u3068\u540c\u3058\u3067\u3059</p>\u3002\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is a copy of a single <a href=\"#ConvMixerLayer\">ConvMixer layer</a>. We make copies of it to make ConvMixer with <span translate=no>_^_1_^_</span>. </li>\n<li><span translate=no>_^_2_^_</span> is the number of ConvMixer layers (or depth), <span translate=no>_^_3_^_</span>. </li>\n<li><span translate=no>_^_4_^_</span> is the <a href=\"#PatchEmbeddings\">patch embeddings layer</a>. </li>\n<li><span translate=no>_^_5_^_</span> is the <a href=\"#ClassificationHead\">classification head</a>.</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u5358\u4e00\u306e <a href=\"#ConvMixerLayer\">ConvMixer</a> \u30ec\u30a4\u30e4\u30fc\u306e\u30b3\u30d4\u30fc\u3067\u3059\u3002\u305d\u306e\u30b3\u30d4\u30fc\u3092\u4f5c\u6210\u3057\u3066 ConvMixer</li> \u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<span translate=no>_^_1_^_</span>\n<li><span translate=no>_^_2_^_</span>\u306f ConvMixer \u30ec\u30a4\u30e4\u30fc\u306e\u6570 (\u307e\u305f\u306f\u6df1\u3055) \u3067\u3059\u3002<span translate=no>_^_3_^_</span></li>\n<li><span translate=no>_^_4_^_</span><a href=\"#PatchEmbeddings\">\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u30ec\u30a4\u30e4\u30fc\u3067\u3059</a>\u3002</li>\n<li><span translate=no>_^_5_^_</span><a href=\"#ClassificationHead\">\u5206\u985e\u8cac\u4efb\u8005\u3067\u3059</a>\u3002</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the input image of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u5f62\u72b6\u306e\u5165\u529b\u753b\u50cf\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in patch embeddings <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the size of the patch, <span translate=no>_^_3_^_</span> </li>\n<li><span translate=no>_^_4_^_</span> is the number of channels in the input image (3 for rgb)</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3067\u3059 <span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u306f\u30d1\u30c3\u30c1\u306e\u30b5\u30a4\u30ba\u3001<span translate=no>_^_3_^_</span></li>\n<li><span translate=no>_^_4_^_</span>\u306f\u5165\u529b\u753b\u50cf\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570 (RGB \u306e\u5834\u5408\u306f 3)</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in patch embeddings, <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the number of classes in the classification task</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3001<span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u5206\u985e\u30bf\u30b9\u30af\u5185\u306e\u30af\u30e9\u30b9\u6570\u3067\u3059</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in patch embeddings, <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the size of the kernel of spatial convolution, <span translate=no>_^_3_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3001<span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u306f\u7a7a\u9593\u7573\u307f\u8fbc\u307f\u306e\u30ab\u30fc\u30cd\u30eb\u306e\u5927\u304d\u3055\u3067\u3059 <span translate=no>_^_3_^_</span></li></ul>\n",
|
||||
"A PyTorch implementation/tutorial of the paper \"Patches Are All You Need?\"": "\u300c\u5fc5\u8981\u306a\u306e\u306f\u30d1\u30c3\u30c1\u3060\u3051\uff1f\u300d\u3068\u3044\u3046\u8ad6\u6587\u306ePyTorch\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb",
|
||||
"Patches Are All You Need? (ConvMixer)": "\u5fc5\u8981\u306a\u306e\u306f\u30d1\u30c3\u30c1\u3060\u3051\uff1f(\u30b3\u30f3\u30d0\u30fc\u30b8\u30e7\u30f3\u30df\u30ad\u30b5\u30fc)"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,40 @@
|
||||
{
|
||||
"<h1>Patches Are All You Need? (ConvMixer)</h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation of the paper <a href=\"https://arxiv.org/abs/2201.09792\">Patches Are All You Need?</a>.</p>\n<p><span translate=no>_^_0_^_</span></p>\n<p>ConvMixer is Similar to <a href=\"../transformers/mlp_mixer/index.html\">MLP-Mixer</a>. MLP-Mixer separates mixing of spatial and channel dimensions, by applying an MLP across spatial dimension and then an MLP across the channel dimension (spatial MLP replaces the <a href=\"../transformers/vit/index.html\">ViT</a> attention and channel MLP is the <a href=\"../transformers/feed_forward.html\">FFN</a> of ViT).</p>\n<p>ConvMixer uses a <span translate=no>_^_1_^_</span> convolution for channel mixing and a depth-wise convolution for spatial mixing. Since it's a convolution instead of a full MLP across the space, it mixes only the nearby batches in contrast to ViT or MLP-Mixer. Also, the MLP-mixer uses MLPs of two layers for each mixing and ConvMixer uses a single layer for each mixing.</p>\n<p>The paper recommends removing the residual connection across the channel mixing (point-wise convolution) and having only a residual connection over the spatial mixing (depth-wise convolution). They also use <a href=\"../normalization/batch_norm/index.html\">Batch normalization</a> instead of <a href=\"../normalization/layer_norm/index.html\">Layer normalization</a>.</p>\n<p>Here's <a href=\"experiment.html\">an experiment</a> that trains ConvMixer on CIFAR-10.</p>\n": "<h1>\u4f60\u53ea\u9700\u8981\u8865\u4e01\u5417\uff1f\uff08convMixer\uff09</h1>\n<p>\u8fd9\u662f <a href=\"https://pytorch.org\">PyTorch</a> \u5bf9\u8bba\u6587\u300a<a href=\"https://arxiv.org/abs/2201.09792\">\u8865\u4e01\u5c31\u662f\u4f60\u6240\u9700\u8981\u7684\uff1f</a>\u300b\u7684\u5b9e\u73b0</p>\u3002\n<p><span translate=no>_^_0_^_</span></p>\n<p>convMixer \u7c7b\u4f3c\u4e8e <a href=\"../transformers/mlp_mixer/index.html\">MLP \u6df7\u97f3\u5668</a>\u3002MLP-Mixer \u901a\u8fc7\u5728\u7a7a\u95f4\u7ef4\u5ea6\u4e0a\u5e94\u7528 MLP\uff0c\u7136\u540e\u5728\u4fe1\u9053\u7ef4\u5ea6\u4e0a\u5e94\u7528 MLP \u6765\u5206\u79bb\u7a7a\u95f4\u7ef4\u5ea6\u548c\u4fe1\u9053\u7ef4\u5ea6\u7684\u6df7\u97f3\uff08\u7a7a\u95f4 MLP \u53d6\u4ee3 <a href=\"../transformers/vit/index.html\">vIT</a> \u6ce8\u610f\u529b\uff0c\u4fe1\u9053 MLP \u662f ViT \u7684 <a href=\"../transformers/feed_forward.html\">FFN</a>\uff09\u3002</p>\n<p>ConvMixer \u4f7f\u7528<span translate=no>_^_1_^_</span>\u5377\u79ef\u8fdb\u884c\u901a\u9053\u6df7\u5408\uff0c\u4f7f\u7528\u6df1\u5ea6\u5377\u79ef\u8fdb\u884c\u7a7a\u95f4\u6df7\u5408\u3002\u7531\u4e8e\u5b83\u662f\u5377\u79ef\u800c\u4e0d\u662f\u6574\u4e2a\u7a7a\u95f4\u7684\u5b8c\u6574\u7684 MLP\uff0c\u56e0\u6b64\u4e0e vIT \u6216 MLP-Mixer \u76f8\u6bd4\uff0c\u5b83\u53ea\u6df7\u5408\u9644\u8fd1\u7684\u6279\u6b21\u3002\u6b64\u5916\uff0cMLP-Mixer \u6bcf\u6b21\u6df7\u5408\u4f7f\u7528\u4e24\u5c42 MLP\uff0cConvMixer \u6bcf\u6b21\u6df7\u5408\u4f7f\u7528\u5355\u5c42\u3002</p>\n<p>\u8be5\u8bba\u6587\u5efa\u8bae\u5220\u9664\u4fe1\u9053\u6df7\u5408\uff08\u9010\u70b9\u5377\u79ef\uff09\u4e0a\u7684\u5269\u4f59\u8fde\u63a5\uff0c\u5728\u7a7a\u95f4\u6df7\u5408\uff08\u6df1\u5ea6\u5377\u79ef\uff09\u4e0a\u4ec5\u4f7f\u7528\u6b8b\u5dee\u8fde\u63a5\u3002\u4ed6\u4eec\u8fd8\u4f7f\u7528<a href=\"../normalization/batch_norm/index.html\">\u6279\u91cf\u6807\u51c6\u5316</a>\u800c\u4e0d\u662f<a href=\"../normalization/layer_norm/index.html\">\u56fe\u5c42\u6807\u51c6\u5316</a>\u3002</p>\n<p>\u8fd9\u662f<a href=\"experiment.html\">\u4e00\u9879\u5728 CIFAR-10 \u4e0a\u8bad\u7ec3 ConvMixer \u7684\u5b9e\u9a8c</a>\u3002</p>\n",
|
||||
"<h2>ConvMixer</h2>\n<p>This combines the patch embeddings block, a number of ConvMixer layers and a classification head.</p>\n": "<h2>\u6df7\u97f3\u5668</h2>\n<p>\u5b83\u7ed3\u5408\u4e86\u8865\u4e01\u5d4c\u5165\u5757\u3001\u8bb8\u591a ConvMixer \u5c42\u548c\u4e00\u4e2a\u5206\u7c7b\u5934\u3002</p>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p> <a id=\"ClassificationHead\"></a></p>\n<h2>Classification Head</h2>\n<p>They do average pooling (taking the mean of all patch embeddings) and a final linear transformation to predict the log-probabilities of the image classes.</p>\n": "<p><a id=\"ClassificationHead\"></a></p>\n<h2>\u5206\u7c7b\u4e3b\u7ba1</h2>\n<p>\u5b83\u4eec\u8fdb\u884c\u5e73\u5747\u6c60\uff08\u53d6\u6240\u6709\u8865\u4e01\u5d4c\u5165\u7684\u5747\u503c\uff09\u548c\u6700\u7ec8\u7684\u7ebf\u6027\u53d8\u6362\u6765\u9884\u6d4b\u5f71\u50cf\u7c7b\u7684\u5bf9\u6570\u6982\u7387\u3002</p>\n",
|
||||
"<p> <a id=\"ConvMixerLayer\"></a></p>\n<h2>ConvMixer layer</h2>\n<p>This is a single ConvMixer layer. The model will have a series of these.</p>\n": "<p><a id=\"ConvMixerLayer\"></a></p>\n<h2>\u6df7\u97f3\u5668\u5c42</h2>\n<p>\u8fd9\u662f\u5355\u4e2a ConvMixer \u5c42\u3002\u8be5\u6a21\u578b\u5c06\u6709\u4e00\u7cfb\u5217\u8fd9\u6837\u7684\u3002</p>\n",
|
||||
"<p> <a id=\"PatchEmbeddings\"></a></p>\n<h2>Get patch embeddings</h2>\n<p>This splits the image into patches of size <span translate=no>_^_0_^_</span> and gives an embedding for each patch.</p>\n": "<p><a id=\"PatchEmbeddings\"></a></p>\n<h2>\u83b7\u53d6\u8865\u4e01\u5d4c\u5165</h2>\n<p>\u8fd9\u4f1a\u5c06\u56fe\u50cf\u62c6\u5206\u4e3a\u5927\u5c0f\u7684\u8865\u4e01\uff0c<span translate=no>_^_0_^_</span>\u5e76\u4e3a\u6bcf\u4e2a\u8865\u4e01\u63d0\u4f9b\u5d4c\u5165\u3002</p>\n",
|
||||
"<p>Activation after depth-wise convolution </p>\n": "<p>\u6df1\u5ea6\u5377\u79ef\u540e\u6fc0\u6d3b</p>\n",
|
||||
"<p>Activation after point-wise convolution </p>\n": "<p>\u9010\u70b9\u5377\u79ef\u540e\u6fc0\u6d3b</p>\n",
|
||||
"<p>Activation and normalization </p>\n": "<p>\u6fc0\u6d3b\u548c\u89c4\u8303\u5316</p>\n",
|
||||
"<p>Activation function </p>\n": "<p>\u6fc0\u6d3b\u529f\u80fd</p>\n",
|
||||
"<p>Add residual connection </p>\n": "<p>\u6dfb\u52a0\u5269\u4f59\u8fde\u63a5</p>\n",
|
||||
"<p>Apply convolution layer </p>\n": "<p>\u5e94\u7528\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>Average Pool </p>\n": "<p>\u5e73\u5747\u6c60</p>\n",
|
||||
"<p>Average pooling </p>\n": "<p>\u5e73\u5747\u6c47\u96c6</p>\n",
|
||||
"<p>Batch normalization </p>\n": "<p>\u6279\u91cf\u6807\u51c6\u5316</p>\n",
|
||||
"<p>Classification head </p>\n": "<p>\u5206\u7c7b\u4e3b\u7ba1</p>\n",
|
||||
"<p>Classification head, to get logits </p>\n": "<p>\u5206\u7c7b\u5934\uff0c\u83b7\u53d6\u65e5\u5fd7</p>\n",
|
||||
"<p>Depth-wise convolution is separate convolution for each channel. We do this with a convolution layer with the number of groups equal to the number of channels. So that each channel is it's own group. </p>\n": "<p>\u6df1\u5ea6\u5377\u79ef\u662f\u6bcf\u4e2a\u901a\u9053\u7684\u5355\u72ec\u5377\u79ef\u3002\u6211\u4eec\u4f7f\u7528\u5377\u79ef\u5c42\u6765\u5b8c\u6210\u6b64\u64cd\u4f5c\uff0c\u8be5\u5377\u79ef\u5c42\u7684\u7ec4\u6570\u7b49\u4e8e\u901a\u9053\u6570\u3002\u56e0\u6b64\uff0c\u6bcf\u4e2a\u9891\u9053\u90fd\u662f\u5b83\u81ea\u5df1\u7684\u7ec4\u3002</p>\n",
|
||||
"<p>Depth-wise convolution, activation and normalization </p>\n": "<p>\u6df1\u5ea6\u5377\u79ef\u3001\u6fc0\u6d3b\u548c\u5f52\u4e00\u5316</p>\n",
|
||||
"<p>For the residual connection around the depth-wise convolution </p>\n": "<p>\u5bf9\u4e8e\u56f4\u7ed5\u6df1\u5ea6\u5377\u79ef\u7684\u5269\u4f59\u8fde\u63a5</p>\n",
|
||||
"<p>Get patch embeddings. This gives a tensor of shape <span translate=no>_^_0_^_</span>. </p>\n": "<p>\u83b7\u53d6\u8865\u4e01\u5d4c\u5165\u3002\u8fd9\u7ed9\u51fa\u4e86\u5f62\u72b6\u7684\u5f20\u91cf<span translate=no>_^_0_^_</span>\u3002</p>\n",
|
||||
"<p>Get the embedding, <span translate=no>_^_0_^_</span> will have shape <span translate=no>_^_1_^_</span> </p>\n": "<p>\u5f97\u5230\u5d4c\u5165\uff0c<span translate=no>_^_0_^_</span>\u4f1a\u6709\u5f62\u72b6<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Linear layer </p>\n": "<p>\u7ebf\u6027\u5c42</p>\n",
|
||||
"<p>Make copies of the <a href=\"#ConvMixerLayer\">ConvMixer layer</a> </p>\n": "<p>\u5236\u4f5c C <a href=\"#ConvMixerLayer\">onvMixer \u56fe\u5c42</a>\u7684\u526f\u672c</p>\n",
|
||||
"<p>Normalization after depth-wise convolution </p>\n": "<p>\u6df1\u5ea6\u5377\u79ef\u540e\u7684\u5f52\u4e00\u5316</p>\n",
|
||||
"<p>Normalization after point-wise convolution </p>\n": "<p>\u9010\u70b9\u5377\u79ef\u540e\u7684\u5f52\u4e00\u5316</p>\n",
|
||||
"<p>Pass through <a href=\"#ConvMixerLayer\">ConvMixer layers</a> </p>\n": "<p>\u7a7f\u8fc7 <a href=\"#ConvMixerLayer\">ConvMixer \u56fe\u5c42</a></p>\n",
|
||||
"<p>Patch embeddings </p>\n": "<p>\u8865\u4e01\u5d4c\u5165</p>\n",
|
||||
"<p>Point-wise convolution is a <span translate=no>_^_0_^_</span> convolution. i.e. a linear transformation of patch embeddings </p>\n": "<p>\u9010\u70b9\u5377\u79ef\u662f\u4e00\u79cd<span translate=no>_^_0_^_</span>\u5377\u79ef\u3002\u5373\u8865\u4e01\u5d4c\u5165\u7684\u7ebf\u6027\u53d8\u6362</p>\n",
|
||||
"<p>Point-wise convolution, activation and normalization </p>\n": "<p>\u9010\u70b9\u5377\u79ef\u3001\u6fc0\u6d3b\u548c\u5f52\u4e00\u5316</p>\n",
|
||||
"<p>We create a convolution layer with a kernel size and and stride length equal to patch size. This is equivalent to splitting the image into patches and doing a linear transformation on each patch. </p>\n": "<p>\u6211\u4eec\u521b\u5efa\u4e00\u4e2a\u5377\u79ef\u5c42\uff0c\u5176\u5185\u6838\u5927\u5c0f\u548c\u6b65\u957f\u7b49\u4e8e\u8865\u4e01\u5927\u5c0f\u3002\u8fd9\u76f8\u5f53\u4e8e\u5c06\u56fe\u50cf\u5206\u5272\u6210\u8272\u5757\u5e76\u5728\u6bcf\u4e2a\u9762\u7247\u4e0a\u8fdb\u884c\u7ebf\u6027\u53d8\u6362\u3002</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is a copy of a single <a href=\"#ConvMixerLayer\">ConvMixer layer</a>. We make copies of it to make ConvMixer with <span translate=no>_^_1_^_</span>. </li>\n<li><span translate=no>_^_2_^_</span> is the number of ConvMixer layers (or depth), <span translate=no>_^_3_^_</span>. </li>\n<li><span translate=no>_^_4_^_</span> is the <a href=\"#PatchEmbeddings\">patch embeddings layer</a>. </li>\n<li><span translate=no>_^_5_^_</span> is the <a href=\"#ClassificationHead\">classification head</a>.</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5355\u4e2a C <a href=\"#ConvMixerLayer\">onvMixer \u5c42</a>\u7684\u526f\u672c\u3002\u6211\u4eec\u5236\u4f5c\u5b83\u7684\u526f\u672c\u6765\u5236\u4f5c ConvMixer<span translate=no>_^_1_^_</span>\u3002</li>\n<li><span translate=no>_^_2_^_</span>\u662f ConvMixer \u5c42\uff08\u6216\u6df1\u5ea6\uff09\u7684\u6570\u91cf<span translate=no>_^_3_^_</span>\u3002</li>\n<li><span translate=no>_^_4_^_</span>\u662f<a href=\"#PatchEmbeddings\">\u8865\u4e01\u5d4c\u5165\u5c42</a>\u3002</li>\n<li><span translate=no>_^_5_^_</span>\u662f<a href=\"#ClassificationHead\">\u5206\u7c7b\u5934</a>\u3002</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the input image of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5f62\u72b6\u7684\u8f93\u5165\u56fe\u50cf<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in patch embeddings <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the size of the patch, <span translate=no>_^_3_^_</span> </li>\n<li><span translate=no>_^_4_^_</span> is the number of channels in the input image (3 for rgb)</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u8865\u4e01\u5d4c\u5165\u4e2d\u7684\u901a\u9053\u6570<span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u662f\u8865\u4e01\u7684\u5927\u5c0f\uff0c<span translate=no>_^_3_^_</span></li>\n<li><span translate=no>_^_4_^_</span>\u662f\u8f93\u5165\u56fe\u50cf\u4e2d\u7684\u901a\u9053\u6570\uff08rgb \u4e3a 3\uff09</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in patch embeddings, <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the number of classes in the classification task</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u8865\u4e01\u5d4c\u5165\u4e2d\u7684\u901a\u9053\u6570\uff0c<span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u662f\u5206\u7c7b\u4efb\u52a1\u4e2d\u7684\u7c7b\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in patch embeddings, <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> is the size of the kernel of spatial convolution, <span translate=no>_^_3_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u8865\u4e01\u5d4c\u5165\u4e2d\u7684\u901a\u9053\u6570\uff0c<span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u662f\u7a7a\u95f4\u5377\u79ef\u5185\u6838\u7684\u5927\u5c0f\uff0c<span translate=no>_^_3_^_</span></li></ul>\n",
|
||||
"A PyTorch implementation/tutorial of the paper \"Patches Are All You Need?\"": "\u8bba\u6587 \u201c\u8865\u4e01\u5c31\u662f\u4f60\u6240\u9700\u8981\u7684\u5417\uff1f\u201d \u7684 PyTorch \u5b9e\u73b0/\u6559\u7a0b",
|
||||
"Patches Are All You Need? (ConvMixer)": "\u8865\u4e01\u662f\u4f60\u6240\u9700\u8981\u7684\u5417\uff1f\uff08convMixer\uff09"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"<h1>Train a <a href=\"index.html\">ConvMixer</a> on CIFAR 10</h1>\n<p>This script trains a ConvMixer on CIFAR 10 dataset.</p>\n<p>This is not an attempt to reproduce the results of the paper. The paper uses image augmentations present in <a href=\"https://github.com/rwightman/pytorch-image-models\">PyTorch Image Models (timm)</a> for training. We haven't done this for simplicity - which causes our validation accuracy to drop.</p>\n": "<h1>CIFAR 10 <a href=\"index.html\">\u3067\u306e\u30b3\u30f3\u30d0\u30fc\u30b8\u30e7\u30f3\u30df\u30ad\u30b5\u30fc\u306e\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0</a></h1>\n<p>\u3053\u306e\u30b9\u30af\u30ea\u30d7\u30c8\u306f\u3001CIFAR 10 \u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3067 ConvMixer \u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u307e\u3059\u3002</p>\n<p>\u3053\u308c\u306f\u8ad6\u6587\u306e\u7d50\u679c\u3092\u518d\u73fe\u3059\u308b\u8a66\u307f\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u3053\u306e\u8ad6\u6587\u3067\u306f\u3001<a href=\"https://github.com/rwightman/pytorch-image-models\">PyTorch\u753b\u50cf\u30e2\u30c7\u30eb\uff08timm\uff09\u306b\u3042\u308b\u753b\u50cf\u62e1\u5f35\u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u306b\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059</a>\u3002\u7c21\u7565\u5316\u306e\u305f\u3081\u306b\u3053\u308c\u3092\u884c\u3063\u305f\u308f\u3051\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u305d\u306e\u305f\u3081\u3001\u691c\u8a3c\u306e\u7cbe\u5ea6\u304c\u4f4e\u4e0b\u3057\u307e\u3059</p>\u3002\n",
|
||||
"<h2>Configurations</h2>\n<p>We use <a href=\"../experiments/cifar10.html\"><span translate=no>_^_0_^_</span></a> which defines all the dataset related configurations, optimizer, and a training loop.</p>\n": "<h2>\u30b3\u30f3\u30d5\u30a3\u30ae\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3</h2>\n<p>\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u306b\u95a2\u9023\u3059\u308b\u3059\u3079\u3066\u306e\u69cb\u6210\u3001\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc\u3001\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30eb\u30fc\u30d7\u3092\u5b9a\u7fa9\u3059\u308b\u3082\u306e\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059<a href=\"../experiments/cifar10.html\"><span translate=no>_^_0_^_</span></a>\u3002</p>\n",
|
||||
"<h3>Create model</h3>\n": "<h3>\u30e2\u30c7\u30eb\u4f5c\u6210</h3>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p>Create ConvMixer </p>\n": "<p>ConvMixer \u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Create configurations </p>\n": "<p>\u69cb\u6210\u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u5b9f\u9a13\u3092\u4f5c\u6210</p>\n",
|
||||
"<p>Do not augment images for validation </p>\n": "<p>\u691c\u8a3c\u306e\u305f\u3081\u306b\u753b\u50cf\u3092\u88dc\u8db3\u3057\u306a\u3044\u3067\u304f\u3060\u3055\u3044</p>\n",
|
||||
"<p>Kernel size of the depth-wise convolution, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6df1\u3055\u65b9\u5411\u306e\u7573\u307f\u8fbc\u307f\u306e\u30ab\u30fc\u30cd\u30eb\u30b5\u30a4\u30ba\u3001<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Load configurations </p>\n": "<p>\u69cb\u6210\u3092\u30ed\u30fc\u30c9</p>\n",
|
||||
"<p>Number of <a href=\"#ConvMixerLayer\">ConvMixer layers</a> or depth, <span translate=no>_^_0_^_</span> </p>\n": "<p><a href=\"#ConvMixerLayer\">ConvMixer \u30ec\u30a4\u30e4\u30fc\u306e\u6570\u307e\u305f\u306f\u6df1\u3055</a>\u3001<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Number of channels in patch embeddings, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30d1\u30c3\u30c1\u57cb\u3081\u8fbc\u307f\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3001<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Number of classes in the task </p>\n": "<p>\u30bf\u30b9\u30af\u5185\u306e\u30af\u30e9\u30b9\u6570</p>\n",
|
||||
"<p>Optimizer </p>\n": "<p>\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</p>\n",
|
||||
"<p>Set model for saving/loading </p>\n": "<p>\u4fdd\u5b58/\u8aad\u307f\u8fbc\u307f\u7528\u306e\u30e2\u30c7\u30eb\u3092\u8a2d\u5b9a</p>\n",
|
||||
"<p>Simple image augmentations </p>\n": "<p>\u30b7\u30f3\u30d7\u30eb\u306a\u753b\u50cf\u88dc\u6b63</p>\n",
|
||||
"<p>Size of a patch, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30d1\u30c3\u30c1\u306e\u30b5\u30a4\u30ba\u3001<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Start the experiment and run the training loop </p>\n": "<p>\u5b9f\u9a13\u3092\u958b\u59cb\u3057\u3001\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30eb\u30fc\u30d7\u3092\u5b9f\u884c\u3057\u307e\u3059</p>\n",
|
||||
"<p>Training epochs and batch size </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30a8\u30dd\u30c3\u30af\u3068\u30d0\u30c3\u30c1\u30b5\u30a4\u30ba</p>\n",
|
||||
"Train ConvMixer on CIFAR 10": "CIFAR 10 \u306e\u30c8\u30ec\u30a4\u30f3\u30b3\u30f3\u30d0\u30fc\u30df\u30ad\u30b5\u30fc"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"<h1>Train a <a href=\"index.html\">ConvMixer</a> on CIFAR 10</h1>\n<p>This script trains a ConvMixer on CIFAR 10 dataset.</p>\n<p>This is not an attempt to reproduce the results of the paper. The paper uses image augmentations present in <a href=\"https://github.com/rwightman/pytorch-image-models\">PyTorch Image Models (timm)</a> for training. We haven't done this for simplicity - which causes our validation accuracy to drop.</p>\n<p><a href=\"https://app.labml.ai/run/0fc344da2cd011ecb0bc3fdb2e774a3d\"><span translate=no>_^_0_^_</span></a></p>\n": "<h1><a href=\"index.html\">CIFAR 10 \u0db8\u0dad \u0d9a\u0ddc\u0db1\u0dca\u0dc0\u0dd3 \u0db8\u0dd2\u0d9a\u0dca\u0dc3\u0dbb\u0dca</a> \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1</h1>\n<p>\u0db8\u0dd9\u0db8\u0dad\u0dd2\u0dbb \u0dbb\u0da0\u0db1\u0dba CIFAR \u0db8\u0dad ConvMixer \u0daf\u0dd4\u0db8\u0dca\u0dbb\u0dd2\u0dba 10 \u0daf\u0dad\u0dca\u0dad \u0dc3\u0db8\u0dd4\u0daf\u0dcf\u0dba. </p>\n<p>\u0db8\u0dd9\u0dba\u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0db4\u0dca\u0dbb\u0dad\u0dd2 results \u0dbd \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0db1\u0dd2\u0dc2\u0dca\u0db4\u0dcf\u0daf\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d8b\u0dad\u0dca\u0dc3\u0dcf\u0dc4\u0dba\u0d9a\u0dca \u0db1\u0ddc\u0dc0\u0dda. \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0 \u0dc3\u0db3\u0dc4\u0dcf <a href=\"https://github.com/rwightman/pytorch-image-models\">PyTorch Image Models (timm)</a> \u0dc4\u0dd2 \u0d87\u0dad\u0dd2 \u0dbb\u0dd6\u0db4 \u0dc0\u0dd0\u0da9\u0dd2\u0daf\u0dd2\u0dba\u0dd4\u0dab\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0dba\u0dd2. \u0dc3\u0dbb\u0dbd \u0db6\u0dc0 \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dd2 \u0db8\u0dd9\u0dba \u0d9a\u0dbb \u0db1\u0dd0\u0dad - \u0d91\u0db8\u0d9f\u0dd2\u0db1\u0dca \u0d85\u0db4\u0d9c\u0dda \u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0db1\u0dd2\u0dbb\u0dc0\u0daf\u0dca\u0dba\u0dad\u0dcf\u0dc0\u0dba \u0db4\u0dc4\u0dad \u0dc0\u0dd0\u0da7\u0dd3\u0db8\u0da7 \u0dc4\u0dda\u0dad\u0dd4 \u0dc0\u0dda. </p>\n<p><a href=\"https://app.labml.ai/run/0fc344da2cd011ecb0bc3fdb2e774a3d\"><span translate=no>_^_0_^_</span></a></p>\n",
|
||||
"<h2>Configurations</h2>\n<p>We use <a href=\"../experiments/cifar10.html\"><span translate=no>_^_0_^_</span></a> which defines all the dataset related configurations, optimizer, and a training loop.</p>\n": "<h2>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca</h2>\n<p>\u0dc3\u0dd2\u0dba\u0dbd\u0dd4\u0db8\u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd \u0d86\u0dc1\u0dca\u0dbb\u0dd2\u0dad \u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dba\u0db1\u0dca, \u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0dc4 \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0dbd\u0dd6\u0db4\u0dba\u0d9a\u0dca \u0db1\u0dd2\u0dbb\u0dca\u0dc0\u0da0\u0db1\u0dba \u0d9a\u0dbb\u0db1 \u0d85\u0db4\u0dd2 \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf <a href=\"../experiments/cifar10.html\"><span translate=no>_^_0_^_</span></a> \u0d9a\u0dbb\u0db8\u0dd4. </p>\n",
|
||||
"<h3>Create model</h3>\n": "<h3>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1</h3>\n",
|
||||
"<p> </p>\n": "<p> </p>\n",
|
||||
"<p>Create ConvMixer </p>\n": "<p>ConvMixer\u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba </p>\n",
|
||||
"<p>Create configurations </p>\n": "<p>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dba\u0db1\u0dca\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf\u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Do not augment images for validation </p>\n": "<p>\u0dc0\u0dbd\u0d82\u0d9c\u0dd4\u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dbb\u0dd6\u0db4 \u0dc0\u0dd0\u0da9\u0dd2 \u0db1\u0ddc\u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Kernel size of the depth-wise convolution, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d9c\u0dd0\u0db9\u0dd4\u0dbb-\u0db1\u0dd0\u0dab\u0dc0\u0dad\u0dca\u0dc3\u0d82\u0dc0\u0dc4\u0db1\u0dba\u0dda \u0d9a\u0dbb\u0dca\u0db1\u0dbd\u0dca \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba, <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Load configurations </p>\n": "<p>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dba\u0db1\u0dca\u0db4\u0dd6\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Number of <a href=\"#ConvMixerLayer\">ConvMixer layers</a> or depth, <span translate=no>_^_0_^_</span> </p>\n": "<p><a href=\"#ConvMixerLayer\">ConvMixer \u0dc3\u0dca\u0dae\u0dbb</a> \u0dc4\u0ddd \u0d9c\u0dd0\u0db9\u0dd4\u0dbb \u0d9c\u0dab\u0db1, <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Number of channels in patch embeddings, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db4\u0dd0\u0da0\u0dca\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0dc0\u0dbd \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1, <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Number of classes in the task </p>\n": "<p>\u0d9a\u0dbb\u0dca\u0dad\u0dc0\u0dca\u0dba\u0dba\u0dda\u0db4\u0db1\u0dca\u0dad\u0dd2 \u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Optimizer </p>\n": "<p>\u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad\u0d9a\u0dbb\u0dab\u0dba </p>\n",
|
||||
"<p>Set model for saving/loading </p>\n": "<p>\u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0d9a\u0dd2\u0dbb\u0dd3\u0db8/\u0db4\u0dd0\u0da7\u0dc0\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba \u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Simple image augmentations </p>\n": "<p>\u0dc3\u0dbb\u0dbd\u0dbb\u0dd6\u0db4 \u0dc0\u0dd0\u0da9\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 </p>\n",
|
||||
"<p>Size of a patch, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db4\u0dd0\u0da0\u0dca\u0d91\u0d9a\u0d9a \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba, <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Start the experiment and run the training loop </p>\n": "<p>\u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf\u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0dbd\u0dd6\u0db4\u0dba \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Training epochs and batch size </p>\n": "<p>\u0d8a\u0db4\u0ddc\u0da0\u0dca\u0dc3\u0dc4 \u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 </p>\n",
|
||||
"Train ConvMixer on CIFAR 10": "CIFAR 10 \u0db8\u0dad \u0daf\u0dd4\u0db8\u0dca\u0dbb\u0dd2\u0dba \u0d9a\u0ddc\u0db1\u0dca\u0dc0\u0dd3 \u0db8\u0dd2\u0d9a\u0dca\u0dc3\u0dbb\u0dca"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"<h1>Train a <a href=\"index.html\">ConvMixer</a> on CIFAR 10</h1>\n<p>This script trains a ConvMixer on CIFAR 10 dataset.</p>\n<p>This is not an attempt to reproduce the results of the paper. The paper uses image augmentations present in <a href=\"https://github.com/rwightman/pytorch-image-models\">PyTorch Image Models (timm)</a> for training. We haven't done this for simplicity - which causes our validation accuracy to drop.</p>\n": "<h1>\u5728 CIFA <a href=\"index.html\">R 10 \u4e0a\u8bad\u7ec3 convMixer</a></h1>\n<p>\u6b64\u811a\u672c\u5728 CIFAR 10 \u6570\u636e\u96c6\u4e0a\u8bad\u7ec3 ConvMixer\u3002</p>\n<p>\u8fd9\u5e76\u4e0d\u662f\u8bd5\u56fe\u91cd\u73b0\u8bba\u6587\u7684\u7ed3\u679c\u3002\u672c\u6587\u4f7f\u7528 <a href=\"https://github.com/rwightman/pytorch-image-models\">PyTorch \u56fe\u50cf\u6a21\u578b (timm) \u4e2d\u5b58\u5728\u7684\u56fe\u50cf</a>\u589e\u5f3a\u8fdb\u884c\u8bad\u7ec3\u3002\u4e3a\u4e86\u7b80\u5355\u8d77\u89c1\uff0c\u6211\u4eec\u6ca1\u6709\u8fd9\u6837\u505a\u2014\u2014\u8fd9\u4f1a\u5bfc\u81f4\u6211\u4eec\u7684\u9a8c\u8bc1\u7cbe\u5ea6\u4e0b\u964d\u3002</p>\n",
|
||||
"<h2>Configurations</h2>\n<p>We use <a href=\"../experiments/cifar10.html\"><span translate=no>_^_0_^_</span></a> which defines all the dataset related configurations, optimizer, and a training loop.</p>\n": "<h2>\u914d\u7f6e</h2>\n<p>\u6211\u4eec\u4f7f\u7528<a href=\"../experiments/cifar10.html\"><span translate=no>_^_0_^_</span></a>\u5b83\u6765\u5b9a\u4e49\u6240\u6709\u4e0e\u6570\u636e\u96c6\u76f8\u5173\u7684\u914d\u7f6e\u3001\u4f18\u5316\u5668\u548c\u8bad\u7ec3\u5faa\u73af\u3002</p>\n",
|
||||
"<h3>Create model</h3>\n": "<h3>\u521b\u5efa\u6a21\u578b</h3>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p>Create ConvMixer </p>\n": "<p>\u521b\u5efa\u6df7\u97f3\u5668</p>\n",
|
||||
"<p>Create configurations </p>\n": "<p>\u521b\u5efa\u914d\u7f6e</p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u521b\u5efa\u5b9e\u9a8c</p>\n",
|
||||
"<p>Do not augment images for validation </p>\n": "<p>\u4e0d\u8981\u6269\u5145\u56fe\u50cf\u4ee5\u8fdb\u884c\u9a8c\u8bc1</p>\n",
|
||||
"<p>Kernel size of the depth-wise convolution, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6df1\u5ea6\u5377\u79ef\u7684\u5185\u6838\u5927\u5c0f\uff0c<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Load configurations </p>\n": "<p>\u88c5\u8f7d\u914d\u7f6e</p>\n",
|
||||
"<p>Number of <a href=\"#ConvMixerLayer\">ConvMixer layers</a> or depth, <span translate=no>_^_0_^_</span> </p>\n": "<p><a href=\"#ConvMixerLayer\">ConvMixer \u5c42</a>\u6570\u6216\u6df1\u5ea6\uff0c<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Number of channels in patch embeddings, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u8865\u4e01\u5d4c\u5165\u4e2d\u7684\u901a\u9053\u6570\uff0c<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Number of classes in the task </p>\n": "<p>\u4efb\u52a1\u4e2d\u7684\u7c7b\u6570</p>\n",
|
||||
"<p>Optimizer </p>\n": "<p>\u4f18\u5316\u5668</p>\n",
|
||||
"<p>Set model for saving/loading </p>\n": "<p>\u8bbe\u7f6e\u4fdd\u5b58/\u52a0\u8f7d\u7684\u6a21\u578b</p>\n",
|
||||
"<p>Simple image augmentations </p>\n": "<p>\u7b80\u5355\u7684\u56fe\u50cf\u589e\u5f3a</p>\n",
|
||||
"<p>Size of a patch, <span translate=no>_^_0_^_</span> </p>\n": "<p>\u8865\u4e01\u7684\u5927\u5c0f\uff0c<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Start the experiment and run the training loop </p>\n": "<p>\u5f00\u59cb\u5b9e\u9a8c\u5e76\u8fd0\u884c\u8bad\u7ec3\u5faa\u73af</p>\n",
|
||||
"<p>Training epochs and batch size </p>\n": "<p>\u8bad\u7ec3\u5468\u671f\u548c\u6279\u6b21\u5927\u5c0f</p>\n",
|
||||
"Train ConvMixer on CIFAR 10": "\u5728 CIFAR 10 \u4e0a\u8bad\u7ec3 ConvMixer"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
" Patches Are All You Need?": " \u5fc5\u8981\u306a\u306e\u306f\u30d1\u30c3\u30c1\u3060\u3051\uff1f",
|
||||
"<h1><a href=\"https://nn.labml.ai/conv_mixer/index.html\">Patches Are All You Need?</a></h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation of the paper <a href=\"https://arxiv.org/abs/2201.09792\">Patches Are All You Need?</a>.</p>\n<p>ConvMixer is Similar to <a href=\"https://nn.labml.ai/transformers/mlp_mixer/index.html\">MLP-Mixer</a>. MLP-Mixer separates mixing of spatial and channel dimensions, by applying an MLP across spatial dimension and then an MLP across the channel dimension (spatial MLP replaces the <a href=\"https://nn.labml.ai/transformers/vit/index.html\">ViT</a> attention and channel MLP is the <a href=\"https://nn.labml.ai/transformers/feed_forward.html\">FFN</a> of ViT).</p>\n<p>ConvMixer uses a 1x1 convolution for channel mixing and a depth-wise convolution for spatial mixing. Since it's a convolution instead of a full MLP across the space, it mixes only the nearby batches in contrast to ViT or MLP-Mixer. Also, the MLP-mixer uses MLPs of two layers for each mixing and ConvMixer uses a single layer for each mixing.</p>\n<p>The paper recommends removing the residual connection across the channel mixing (point-wise convolution) and having only a residual connection over the spatial mixing (depth-wise convolution). They also use <a href=\"https://nn.labml.ai/normalization/batch_norm/index.html\">Batch normalization</a> instead of <a href=\"../normalization/layer_norm/index.html\">Layer normalization</a>.</p>\n<p>Here's <a href=\"https://nn.labml.ai/conv_mixer/experiment.html\">an experiment</a> that trains ConvMixer on CIFAR-10. </p>\n": "<h1><a href=\"https://nn.labml.ai/conv_mixer/index.html\">\u5fc5\u8981\u306a\u306e\u306f\u30d1\u30c3\u30c1\u3060\u3051\uff1f</a></h1>\n<p><a href=\"https://pytorch.org\">\u3053\u308c\u306f\u7d19\u306e\u30d1\u30c3\u30c1\u3092PyTorch\u3067\u5b9f\u88c5\u3057\u305f\u3082\u306e\u3067\u3059</a><a href=\"https://arxiv.org/abs/2201.09792\">\u3002\u5fc5\u8981\u306a\u306e\u306f\u30d1\u30c3\u30c1\u3060\u3051\u3067\u3059\u304b</a>\uff1f</p>\u3002\n<p><a href=\"https://nn.labml.ai/transformers/mlp_mixer/index.html\">ConvMixer\u306fMLP\u30df\u30ad\u30b5\u30fc\u306b\u4f3c\u3066\u3044\u307e\u3059\u3002</a></p><a href=\"https://nn.labml.ai/transformers/feed_forward.html\">MLP-Mixer\u306f\u3001\u7a7a\u9593\u6b21\u5143\u5168\u4f53\u306bMLP\u3092\u9069\u7528\u3057\u3001\u6b21\u306b\u30c1\u30e3\u30cd\u30eb\u6b21\u5143\u5168\u4f53\u306bMLP\u3092\u9069\u7528\u3059\u308b\u3053\u3068\u3067\u3001\u7a7a\u9593\u6b21\u5143\u3068\u30c1\u30e3\u30cd\u30eb\u6b21\u5143\u306e\u6df7\u5408\u3092\u5206\u96e2\u3057\u307e\u3059\uff08\u7a7a\u9593MLP\u306fvIT\u306e\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u306b\u4ee3\u308f\u308a\u3001<a href=\"https://nn.labml.ai/transformers/vit/index.html\">\u30c1\u30e3\u30cd\u30ebMLP\u306fVIT\u306eFFN\u3067\u3059</a>\uff09\u3002</a>\n<p>ConvMixer\u306f\u3001\u30c1\u30e3\u30f3\u30cd\u30eb\u30df\u30ad\u30b7\u30f3\u30b0\u306b1x1\u306e\u30b3\u30f3\u30dc\u30ea\u30e5\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3001\u7a7a\u9593\u30df\u30ad\u30b7\u30f3\u30b0\u306b\u5965\u884c\u304d\u30b3\u30f3\u30dc\u30ea\u30e5\u30fc\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002\u30b9\u30da\u30fc\u30b9\u5168\u4f53\u3067\u30d5\u30ebMLP\u3067\u306f\u306a\u304f\u7573\u307f\u8fbc\u307f\u306a\u306e\u3067\u3001VIT\u3084MLP\u30df\u30ad\u30b5\u30fc\u3068\u306f\u5bfe\u7167\u7684\u306b\u3001\u8fd1\u304f\u306e\u30d0\u30c3\u30c1\u306e\u307f\u3092\u30df\u30ad\u30b7\u30f3\u30b0\u3057\u307e\u3059\u3002\u307e\u305f\u3001MLP\u30df\u30ad\u30b5\u30fc\u306f\u30df\u30ad\u30b7\u30f3\u30b0\u3054\u3068\u306b2\u5c64\u306eMLP\u3092\u4f7f\u7528\u3057\u3001ConvMixer\u306f\u30df\u30ad\u30b7\u30f3\u30b0\u3054\u3068\u306b1\u5c64\u306eMLP\u3092\u4f7f\u7528\u3057\u307e\u3059</p>\u3002\n<p>\u3053\u306e\u8ad6\u6587\u3067\u306f\u3001\u30c1\u30e3\u30cd\u30eb\u30df\u30ad\u30b7\u30f3\u30b0\u5168\u4f53\u306e\u6b8b\u7559\u63a5\u7d9a\u3092\u524a\u9664\u3057\uff08\u70b9\u5358\u4f4d\u306e\u7573\u307f\u8fbc\u307f\uff09\u3001\u7a7a\u9593\u30df\u30ad\u30b7\u30f3\u30b0\u3067\u306f\u6b8b\u7559\u63a5\u7d9a\u306e\u307f\u306b\u3059\u308b\uff08\u6df1\u3055\u65b9\u5411\u306e\u7573\u307f\u8fbc\u307f\uff09\u3053\u3068\u3092\u63a8\u5968\u3057\u3066\u3044\u307e\u3059\u3002\u307e\u305f\u3001</p><a href=\"https://nn.labml.ai/normalization/batch_norm/index.html\"><a href=\"../normalization/layer_norm/index.html\">\u30ec\u30a4\u30e4\u30fc\u6b63\u898f\u5316\u306e\u4ee3\u308f\u308a\u306b\u30d0\u30c3\u30c1\u6b63\u898f\u5316\u3092\u4f7f\u7528\u3057\u307e\u3059</a></a>\u3002\n<p>\u3053\u308c\u306f<a href=\"https://nn.labml.ai/conv_mixer/experiment.html\">\u3001CIFAR-10 \u3067 ConvMixer \u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3059\u308b\u5b9f\u9a13\u3067\u3059</a>\u3002</p>\n"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,4 @@
|
||||
{
|
||||
" Patches Are All You Need?": " \u8865\u4e01\u662f\u4f60\u6240\u9700\u8981\u7684\u5417\uff1f",
|
||||
"<h1><a href=\"https://nn.labml.ai/conv_mixer/index.html\">Patches Are All You Need?</a></h1>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation of the paper <a href=\"https://arxiv.org/abs/2201.09792\">Patches Are All You Need?</a>.</p>\n<p>ConvMixer is Similar to <a href=\"https://nn.labml.ai/transformers/mlp_mixer/index.html\">MLP-Mixer</a>. MLP-Mixer separates mixing of spatial and channel dimensions, by applying an MLP across spatial dimension and then an MLP across the channel dimension (spatial MLP replaces the <a href=\"https://nn.labml.ai/transformers/vit/index.html\">ViT</a> attention and channel MLP is the <a href=\"https://nn.labml.ai/transformers/feed_forward.html\">FFN</a> of ViT).</p>\n<p>ConvMixer uses a 1x1 convolution for channel mixing and a depth-wise convolution for spatial mixing. Since it's a convolution instead of a full MLP across the space, it mixes only the nearby batches in contrast to ViT or MLP-Mixer. Also, the MLP-mixer uses MLPs of two layers for each mixing and ConvMixer uses a single layer for each mixing.</p>\n<p>The paper recommends removing the residual connection across the channel mixing (point-wise convolution) and having only a residual connection over the spatial mixing (depth-wise convolution). They also use <a href=\"https://nn.labml.ai/normalization/batch_norm/index.html\">Batch normalization</a> instead of <a href=\"../normalization/layer_norm/index.html\">Layer normalization</a>.</p>\n<p>Here's <a href=\"https://nn.labml.ai/conv_mixer/experiment.html\">an experiment</a> that trains ConvMixer on CIFAR-10. </p>\n": "<h1><a href=\"https://nn.labml.ai/conv_mixer/index.html\">\u4f60\u53ea\u9700\u8981\u8865\u4e01\u5417\uff1f</a></h1>\n<p>\u8fd9\u662f <a href=\"https://pytorch.org\">PyTorch</a> \u5bf9\u8bba\u6587\u300a<a href=\"https://arxiv.org/abs/2201.09792\">\u8865\u4e01\u5c31\u662f\u4f60\u6240\u9700\u8981\u7684\uff1f</a>\u300b\u7684\u5b9e\u73b0</p>\u3002\n<p>convMixer \u7c7b\u4f3c\u4e8e <a href=\"https://nn.labml.ai/transformers/mlp_mixer/index.html\">MLP \u6df7\u97f3\u5668</a>\u3002MLP-Mixer \u901a\u8fc7\u5728\u7a7a\u95f4\u7ef4\u5ea6\u4e0a\u5e94\u7528 MLP\uff0c\u7136\u540e\u5728\u4fe1\u9053\u7ef4\u5ea6\u4e0a\u5e94\u7528 MLP \u6765\u5206\u79bb\u7a7a\u95f4\u7ef4\u5ea6\u548c\u4fe1\u9053\u7ef4\u5ea6\u7684\u6df7\u97f3\uff08\u7a7a\u95f4 MLP \u53d6\u4ee3 <a href=\"https://nn.labml.ai/transformers/vit/index.html\">vIT</a> \u6ce8\u610f\u529b\uff0c\u4fe1\u9053 MLP \u662f ViT \u7684 <a href=\"https://nn.labml.ai/transformers/feed_forward.html\">FFN</a>\uff09\u3002</p>\n<p>ConvMixer \u4f7f\u7528 1x1 \u5377\u79ef\u8fdb\u884c\u901a\u9053\u6df7\u5408\uff0c\u4f7f\u7528\u6df1\u5ea6\u5377\u79ef\u8fdb\u884c\u7a7a\u95f4\u6df7\u5408\u3002\u7531\u4e8e\u5b83\u662f\u5377\u79ef\u800c\u4e0d\u662f\u6574\u4e2a\u7a7a\u95f4\u7684\u5b8c\u6574\u7684 MLP\uff0c\u56e0\u6b64\u4e0e vIT \u6216 MLP-Mixer \u76f8\u6bd4\uff0c\u5b83\u53ea\u6df7\u5408\u9644\u8fd1\u7684\u6279\u6b21\u3002\u6b64\u5916\uff0cMLP-Mixer \u6bcf\u6b21\u6df7\u5408\u4f7f\u7528\u4e24\u5c42 MLP\uff0cConvMixer \u6bcf\u6b21\u6df7\u5408\u4f7f\u7528\u5355\u5c42\u3002</p>\n<p>\u8be5\u8bba\u6587\u5efa\u8bae\u5220\u9664\u4fe1\u9053\u6df7\u5408\uff08\u9010\u70b9\u5377\u79ef\uff09\u4e0a\u7684\u5269\u4f59\u8fde\u63a5\uff0c\u5728\u7a7a\u95f4\u6df7\u5408\uff08\u6df1\u5ea6\u5377\u79ef\uff09\u4e0a\u4ec5\u4f7f\u7528\u6b8b\u5dee\u8fde\u63a5\u3002\u4ed6\u4eec\u8fd8\u4f7f\u7528<a href=\"https://nn.labml.ai/normalization/batch_norm/index.html\">\u6279\u91cf\u6807\u51c6\u5316</a>\u800c\u4e0d\u662f<a href=\"../normalization/layer_norm/index.html\">\u56fe\u5c42\u6807\u51c6\u5316</a>\u3002</p>\n<p>\u8fd9\u662f<a href=\"https://nn.labml.ai/conv_mixer/experiment.html\">\u4e00\u9879\u5728 CIFAR-10 \u4e0a\u8bad\u7ec3 ConvMixer \u7684\u5b9e\u9a8c</a>\u3002</p>\n"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Diffusion models</h1>\n<ul><li><a href=\"ddpm/index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> </li>\n<li><a href=\"stable_diffusion/index.html\">Stable Diffusion</a> </li>\n<li><a href=\"stable_diffusion/latent_diffusion.html\">Latent Diffusion Model</a> </li>\n<li><a href=\"stable_diffusion/sampler/ddim.html\">Denoising Diffusion Implicit Models (DDIM) Sampling</a></li></ul>\n": "<h1>\u62e1\u6563\u30e2\u30c7\u30eb</h1>\n<ul><li><a href=\"ddpm/index.html\">\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM)</a></li>\n<li><a href=\"stable_diffusion/index.html\">\u5b89\u5b9a\u62e1\u6563</a></li>\n<li><a href=\"stable_diffusion/latent_diffusion.html\">\u6f5c\u5728\u62e1\u6563\u30e2\u30c7\u30eb</a></li>\n</ul><li><a href=\"stable_diffusion/sampler/ddim.html\">\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u6697\u9ed9\u30e2\u30c7\u30eb (DDIM) \u30b5\u30f3\u30d7\u30ea\u30b7\u30c3\u30c8\u30b5\u30f3\u30d7\u30ea\u30b7\u30c3\u30c8</a></li>\n",
|
||||
"A set of PyTorch implementations/tutorials of diffusion models.": "\u62e1\u6563\u30e2\u30c7\u30eb\u306ePyTorch\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306e\u30bb\u30c3\u30c8\u3002",
|
||||
"Diffusion models": "\u62e1\u6563\u30e2\u30c7\u30eb"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Diffusion models</h1>\n<ul><li><a href=\"ddpm/index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> </li>\n<li><a href=\"stable_diffusion/index.html\">Stable Diffusion</a> </li>\n<li><a href=\"stable_diffusion/latent_diffusion.html\">Latent Diffusion Model</a> </li>\n<li><a href=\"stable_diffusion/sampler/ddim.html\">Denoising Diffusion Implicit Models (DDIM) Sampling</a></li></ul>\n": "<h1>\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0d86\u0d9a\u0dd8\u0dad\u0dd2</h1>\n<ul><li><a href=\"ddpm/index.html\">\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 (DDPM)</a></li>\n<li><a href=\"stable_diffusion/index.html\">\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba</a></li>\n<li><a href=\"stable_diffusion/latent_diffusion.html\">\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba</a></li>\n<li><a href=\"stable_diffusion/sampler/ddim.html\">Denoising \u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc0\u0dca\u0dba\u0d82\u0d9c \u0d86\u0d9a\u0dd8\u0dad\u0dd2 (DDIM) \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8</a></li></ul>\n",
|
||||
"A set of PyTorch implementations/tutorials of diffusion models.": "PyTorch \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8/\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dc0\u0dbd \u0db1\u0dd2\u0db6\u0db1\u0dca\u0db0\u0db1 \u0db8\u0dcf\u0dbd\u0dcf\u0dc0\u0d9a\u0dca.",
|
||||
"Diffusion models": "\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0d86\u0d9a\u0dd8\u0dad\u0dd2"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Diffusion models</h1>\n<ul><li><a href=\"ddpm/index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> </li>\n<li><a href=\"stable_diffusion/index.html\">Stable Diffusion</a> </li>\n<li><a href=\"stable_diffusion/latent_diffusion.html\">Latent Diffusion Model</a> </li>\n<li><a href=\"stable_diffusion/sampler/ddim.html\">Denoising Diffusion Implicit Models (DDIM) Sampling</a></li></ul>\n": "<h1>\u6269\u6563\u6a21\u578b</h1>\n<ul><li><a href=\"ddpm/index.html\">\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM)</a></li>\n<li><a href=\"stable_diffusion/index.html\">\u7a33\u5b9a\u7684\u6269\u6563</a></li>\n<li><a href=\"stable_diffusion/latent_diffusion.html\">\u6f5c\u5728\u6269\u6563\u6a21\u578b</a></li>\n<li><a href=\"stable_diffusion/sampler/ddim.html\">\u964d\u566a\u6269\u6563\u9690\u542b\u6a21\u578b (DDIM) \u91c7\u6837</a></li></ul>\n",
|
||||
"A set of PyTorch implementations/tutorials of diffusion models.": "\u4e00\u7ec4\u5173\u4e8e\u6269\u6563\u6a21\u578b\u7684 PyTorch \u5b9e\u73b0/\u6559\u7a0b\u3002",
|
||||
"Diffusion models": "\u6269\u6563\u6a21\u578b"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> evaluation/sampling</h1>\n<p>This is the code to generate images and create interpolations between given images.</p>\n": "<h1><a href=\"index.html\">\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM) \u306e\u8a55\u4fa1/\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</a></h1>\n<p>\u3053\u308c\u306f\u3001\u753b\u50cf\u3092\u751f\u6210\u3057\u3001\u4e0e\u3048\u3089\u308c\u305f\u753b\u50cf\u9593\u306e\u88dc\u9593\u3092\u884c\u3046\u30b3\u30fc\u30c9\u3067\u3059\u3002</p>\n",
|
||||
"<h2>Sampler class</h2>\n": "<h2>\u30b5\u30f3\u30d7\u30e9\u30fc\u30af\u30e9\u30b9</h2>\n",
|
||||
"<h4>Estimate <span translate=no>_^_0_^_</span></h4>\n<p><span translate=no>_^_1_^_</span></p>\n": "<h4>\u898b\u7a4d\u3082\u308a <span translate=no>_^_0_^_</span></h4>\n<p><span translate=no>_^_1_^_</span></p>\n",
|
||||
"<h4>Generate images</h4>\n": "<h4>\u753b\u50cf\u3092\u751f\u6210</h4>\n",
|
||||
"<h4>Interpolate two images <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span> and make a video</h4>\n<ul><li><span translate=no>_^_2_^_</span> is <span translate=no>_^_3_^_</span> </li>\n<li><span translate=no>_^_4_^_</span> is <span translate=no>_^_5_^_</span> </li>\n<li><span translate=no>_^_6_^_</span> is the number of frames for the image </li>\n<li><span translate=no>_^_7_^_</span> is <span translate=no>_^_8_^_</span> </li>\n<li><span translate=no>_^_9_^_</span> specifies whether to make a video or to show each frame</li></ul>\n": "<h4><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>2\u679a\u306e\u753b\u50cf\u3092\u88dc\u9593\u3057\u3066\u52d5\u753b\u3092\u4f5c\u6210</h4>\n<ul><li><span translate=no>_^_2_^_</span>\u306f <span translate=no>_^_3_^_</span></li>\n<li><span translate=no>_^_4_^_</span>\u306f <span translate=no>_^_5_^_</span></li>\n<li><span translate=no>_^_6_^_</span>\u753b\u50cf\u306e\u30d5\u30ec\u30fc\u30e0\u6570\u3067\u3059</li>\n<li><span translate=no>_^_7_^_</span>\u306f <span translate=no>_^_8_^_</span></li>\n<li><span translate=no>_^_9_^_</span>\u30d3\u30c7\u30aa\u3092\u4f5c\u6210\u3059\u308b\u304b\u3001\u5404\u30d5\u30ec\u30fc\u30e0\u3092\u8868\u793a\u3059\u308b\u304b\u3092\u6307\u5b9a\u3057\u307e\u3059</li></ul>\n",
|
||||
"<h4>Interpolate two images <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span></h4>\n<p>We get <span translate=no>_^_2_^_</span> and <span translate=no>_^_3_^_</span>.</p>\n<p>Then interpolate to <span translate=no>_^_4_^_</span></p>\n<p>Then get <span translate=no>_^_5_^_</span></p>\n<ul><li><span translate=no>_^_6_^_</span> is <span translate=no>_^_7_^_</span> </li>\n<li><span translate=no>_^_8_^_</span> is <span translate=no>_^_9_^_</span> </li>\n<li><span translate=no>_^_10_^_</span> is <span translate=no>_^_11_^_</span> </li>\n<li><span translate=no>_^_12_^_</span> is <span translate=no>_^_13_^_</span></li></ul>\n": "<h4>2 \u3064\u306e\u753b\u50cf\u3092\u88dc\u9593\u3057\u3001<span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span></h4>\n<p><span translate=no>_^_2_^_</span><span translate=no>_^_3_^_</span>\u3068\u53d6\u5f97\u3057\u307e\u3059.</p>\n<p>\u6b21\u306b\u3001\u6b21\u306e\u3088\u3046\u306b\u88dc\u9593\u3057\u307e\u3059 <span translate=no>_^_4_^_</span></p>\n<p>\u6b21\u306b\u3001\u53d6\u5f97 <span translate=no>_^_5_^_</span></p>\n<ul><li><span translate=no>_^_6_^_</span>\u306f <span translate=no>_^_7_^_</span></li>\n<li><span translate=no>_^_8_^_</span>\u306f <span translate=no>_^_9_^_</span></li>\n<li><span translate=no>_^_10_^_</span>\u306f <span translate=no>_^_11_^_</span></li>\n</ul><li><span translate=no>_^_12_^_</span>\u306f <span translate=no>_^_13_^_</span></li>\n",
|
||||
"<h4>Sample an image step-by-step using <span translate=no>_^_0_^_</span></h4>\n<p>We sample an image step-by-step using <span translate=no>_^_1_^_</span> and at each step show the estimate <span translate=no>_^_2_^_</span></p>\n": "<h4>\u3092\u4f7f\u7528\u3057\u3066\u753b\u50cf\u3092\u6bb5\u968e\u7684\u306b\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3059\u308b <span translate=no>_^_0_^_</span></h4>\n<p><span translate=no>_^_1_^_</span>\u3092\u4f7f\u7528\u3057\u3066\u753b\u50cf\u3092\u6bb5\u968e\u7684\u306b\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057\u3001\u5404\u30b9\u30c6\u30c3\u30d7\u3067\u898b\u7a4d\u3082\u308a\u3092\u8868\u793a\u3057\u307e\u3059 <span translate=no>_^_2_^_</span></p>\n",
|
||||
"<h4>Sample an image using <span translate=no>_^_0_^_</span></h4>\n<ul><li><span translate=no>_^_1_^_</span> is <span translate=no>_^_2_^_</span> </li>\n<li><span translate=no>_^_3_^_</span> is <span translate=no>_^_4_^_</span></li></ul>\n": "<h4>\u3092\u4f7f\u7528\u3057\u3066\u753b\u50cf\u3092\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3059\u308b <span translate=no>_^_0_^_</span></h4>\n<ul><li><span translate=no>_^_1_^_</span>\u306f <span translate=no>_^_2_^_</span></li>\n</ul><li><span translate=no>_^_3_^_</span>\u306f <span translate=no>_^_4_^_</span></li>\n",
|
||||
"<h4>Sample from <span translate=no>_^_0_^_</span></h4>\n<span translate=no>_^_1_^_</span>": "<h4>\u304b\u3089\u306e\u30b5\u30f3\u30d7\u30eb <span translate=no>_^_0_^_</span></h4>\n<span translate=no>_^_1_^_</span>",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p>20 second video </p>\n": "<p>20 \u79d2\u306e\u30d3\u30c7\u30aa</p>\n",
|
||||
"<p><a href=\"utils.html\">gather</a> <span translate=no>_^_0_^_</span> </p>\n": "<p><a href=\"utils.html\">\u96c6\u307e\u308b</a> <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> in a tensor </p>\n": "<p><span translate=no>_^_0_^_</span>\u30c6\u30f3\u30bd\u30eb\u3067</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> tensor </p>\n": "<p><span translate=no>_^_0_^_</span>\u30c6\u30f3\u30bd\u30eb</p>\n",
|
||||
"<p>Add batch dimension </p>\n": "<p>\u30d0\u30c3\u30c1\u30c7\u30a3\u30e1\u30f3\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0</p>\n",
|
||||
"<p>Add each image </p>\n": "<p>\u5404\u753b\u50cf\u3092\u8ffd\u52a0</p>\n",
|
||||
"<p>Add to frames </p>\n": "<p>\u30d5\u30ec\u30fc\u30e0\u306b\u8ffd\u52a0</p>\n",
|
||||
"<p>Create an interpolation animation </p>\n": "<p>\u88dc\u9593\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Create configs </p>\n": "<p>\u30b3\u30f3\u30d5\u30a3\u30b0\u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Create sampler </p>\n": "<p>\u30b5\u30f3\u30d7\u30e9\u30fc\u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Frames for video </p>\n": "<p>\u30d3\u30c7\u30aa\u7528\u30d5\u30ec\u30fc\u30e0</p>\n",
|
||||
"<p>Generate samples </p>\n": "<p>\u30b5\u30f3\u30d7\u30eb\u3092\u751f\u6210</p>\n",
|
||||
"<p>Get <span translate=no>_^_0_^_</span> and add to frames </p>\n": "<p><span translate=no>_^_0_^_</span>\u30d5\u30ec\u30fc\u30e0\u306e\u53d6\u5f97\u3068\u8ffd\u52a0</p>\n",
|
||||
"<p>Get frames with different <span translate=no>_^_0_^_</span> </p>\n": "<p>\u7570\u306a\u308b\u30d5\u30ec\u30fc\u30e0\u3092\u53d6\u5f97 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Get some images fro data </p>\n": "<p>\u30c7\u30fc\u30bf\u304b\u3089\u3044\u304f\u3064\u304b\u306e\u753b\u50cf\u3092\u53d6\u5f97</p>\n",
|
||||
"<p>Helper function to create a video </p>\n": "<p>\u52d5\u753b\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e\u30d8\u30eb\u30d1\u30fc\u6a5f\u80fd</p>\n",
|
||||
"<p>Helper function to display an image </p>\n": "<p>\u753b\u50cf\u3092\u8868\u793a\u3059\u308b\u30d8\u30eb\u30d1\u30fc\u95a2\u6570</p>\n",
|
||||
"<p>Initialize </p>\n": "<p>[\u521d\u671f\u5316]</p>\n",
|
||||
"<p>Interval to log <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30ed\u30b0\u306b\u8a18\u9332\u3059\u308b\u9593\u9694 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Iterate until <span translate=no>_^_0_^_</span> steps </p>\n": "<p><span translate=no>_^_0_^_</span>\u30b9\u30c6\u30c3\u30d7\u307e\u3067\u7e70\u308a\u8fd4\u3059</p>\n",
|
||||
"<p>Load custom configuration of the training run </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30e9\u30f3\u306e\u30ab\u30b9\u30bf\u30e0\u69cb\u6210\u3092\u30ed\u30fc\u30c9</p>\n",
|
||||
"<p>Load training experiment </p>\n": "<p>\u8ca0\u8377\u8a13\u7df4\u5b9f\u9a13</p>\n",
|
||||
"<p>Make video </p>\n": "<p>\u52d5\u753b\u3092\u4f5c\u308b</p>\n",
|
||||
"<p>No gradients </p>\n": "<p>\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\u306a\u3057</p>\n",
|
||||
"<p>Number of sampels </p>\n": "<p>\u30b5\u30f3\u30d7\u30eb\u6570</p>\n",
|
||||
"<p>Number of samples </p>\n": "<p>\u30b5\u30f3\u30d7\u30eb\u6570</p>\n",
|
||||
"<p>Return <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30ea\u30bf\u30fc\u30f3 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Sample </p>\n": "<p>[\u30b5\u30f3\u30d7\u30eb]</p>\n",
|
||||
"<p>Sample <span translate=no>_^_0_^_</span> steps </p>\n": "<p><span translate=no>_^_0_^_</span>\u30b5\u30f3\u30d7\u30eb\u30b9\u30c6\u30c3\u30d7</p>\n",
|
||||
"<p>Sample an image with an denoising animation </p>\n": "<p>\u30ce\u30a4\u30ba\u9664\u53bb\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306b\u3088\u308b\u753b\u50cf\u306e\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</p>\n",
|
||||
"<p>Sample from <span translate=no>_^_0_^_</span> </p>\n": "<p>\u304b\u3089\u306e\u30b5\u30f3\u30d7\u30eb <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Set PyTorch modules for saving and loading </p>\n": "<p>\u4fdd\u5b58\u3068\u8aad\u307f\u8fbc\u307f\u7528\u306e PyTorch \u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u8a2d\u5b9a</p>\n",
|
||||
"<p>Set configurations </p>\n": "<p>\u69cb\u6210\u3092\u8a2d\u5b9a</p>\n",
|
||||
"<p>Show frame </p>\n": "<p>\u30d5\u30ec\u30fc\u30e0\u3092\u8868\u793a</p>\n",
|
||||
"<p>Show images </p>\n": "<p>\u753b\u50cf\u3092\u8868\u793a</p>\n",
|
||||
"<p>Show original images </p>\n": "<p>\u5143\u306e\u753b\u50cf\u3092\u8868\u793a</p>\n",
|
||||
"<p>Start an evaluation </p>\n": "<p>\u8a55\u4fa1\u3092\u958b\u59cb\u3059\u308b</p>\n",
|
||||
"<p>Start evaluation </p>\n": "<p>\u8a55\u4fa1\u3092\u958b\u59cb\u3059\u308b</p>\n",
|
||||
"<p>To calculate</p>\n<span translate=no>_^_0_^_</span><p> </p>\n": "<p>\u8a08\u7b97\u3059\u308b\u306b\u306f</p>\n<span translate=no>_^_0_^_</span><p></p>\n",
|
||||
"<p>Training experiment run UUID </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u5b9f\u9a13\u5b9f\u884c UUID</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the <span translate=no>_^_1_^_</span> instance </li>\n<li><span translate=no>_^_2_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_3_^_</span> is the image size </li>\n<li><span translate=no>_^_4_^_</span> is the device of the model</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3067\u3059</li>\n<li><span translate=no>_^_2_^_</span>\u306f\u753b\u50cf\u5185\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</li>\n<li><span translate=no>_^_3_^_</span>\u306f\u753b\u50cf\u30b5\u30a4\u30ba\u3067\u3059</li>\n<li><span translate=no>_^_4_^_</span>\u30e2\u30c7\u30eb\u306e\u30c7\u30d0\u30a4\u30b9\u3067\u3059</li></ul>\n",
|
||||
"Code to generate samples from a trained Denoising Diffusion Probabilistic Model.": "\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u6e08\u307f\u306e\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb\u304b\u3089\u30b5\u30f3\u30d7\u30eb\u3092\u751f\u6210\u3059\u308b\u30b3\u30fc\u30c9\u3002",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM) evaluation/sampling": "\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM) \u306e\u8a55\u4fa1/\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0"
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> evaluation/sampling</h1>\n<p>This is the code to generate images and create interpolations between given images.</p>\n": "<h1><a href=\"index.html\">\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 \u0d86\u0d9a\u0dd8\u0dad\u0dd2 (DDPM)</a> \u0d87\u0d9c\u0dba\u0dd3\u0db8/\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8</h1>\n<p>\u0dbb\u0dd6\u0db4\u0d8b\u0dad\u0dca\u0db4\u0dcf\u0daf\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0dc3\u0dc4 \u0dbd\u0db6\u0dcf \u0daf\u0dd3 \u0d87\u0dad\u0dd2 \u0dbb\u0dd6\u0db4 \u0d85\u0dad\u0dbb \u0d85\u0db1\u0dca\u0dad\u0dbb\u0dca\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0d9a\u0dcf\u0dbb\u0dd2\u0dad\u0dca\u0dc0\u0dba\u0db1\u0dca \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d9a\u0dda\u0dad\u0dba \u0db8\u0dd9\u0dba\u0dba\u0dd2. </p>\n",
|
||||
"<h2>Sampler class</h2>\n": "<h2>\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0db4\u0db1\u0dca\u0dad\u0dd2\u0dba</h2>\n",
|
||||
"<h4>Estimate <span translate=no>_^_0_^_</span></h4>\n<p><span translate=no>_^_1_^_</span></p>\n": "<h4>\u0d87\u0dc3\u0dca\u0dad\u0db8\u0dda\u0db1\u0dca\u0dad\u0dd4\u0dc0 <span translate=no>_^_0_^_</span></h4>\n<p><span translate=no>_^_1_^_</span></p>\n",
|
||||
"<h4>Generate images</h4>\n": "<h4>\u0dbb\u0dd6\u0db4\u0da2\u0db1\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</h4>\n",
|
||||
"<h4>Interpolate two images <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span> and make a video</h4>\n<ul><li><span translate=no>_^_2_^_</span> is <span translate=no>_^_3_^_</span> </li>\n<li><span translate=no>_^_4_^_</span> is <span translate=no>_^_5_^_</span> </li>\n<li><span translate=no>_^_6_^_</span> is the number of frames for the image </li>\n<li><span translate=no>_^_7_^_</span> is <span translate=no>_^_8_^_</span> </li>\n<li><span translate=no>_^_9_^_</span> specifies whether to make a video or to show each frame</li></ul>\n": "<h4>\u0dbb\u0dd6\u0db4\u0daf\u0dd9\u0d9a\u0d9a\u0dca \u0d85\u0db1\u0dca\u0dad\u0dbb\u0dca\u0d9c\u0dca\u0dbb\u0dc4\u0dab\u0dba <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> \u0d9a\u0dbb \u0dc0\u0dd3\u0da9\u0dd2\u0dba\u0ddd\u0dc0\u0d9a\u0dca \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1</h4>\n<ul><li><span translate=no>_^_2_^_</span> \u0dc0\u0dda <span translate=no>_^_3_^_</span> </li>\n<li><span translate=no>_^_4_^_</span> \u0dc0\u0dda <span translate=no>_^_5_^_</span> </li>\n<li><span translate=no>_^_6_^_</span> \u0dba\u0db1\u0dd4 \u0dbb\u0dd6\u0db4\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0dbb\u0dcf\u0db8\u0dd4 \u0d9c\u0dab\u0db1 </li>\n<li><span translate=no>_^_7_^_</span> \u0dc0\u0dda <span translate=no>_^_8_^_</span> </li>\n<li><span translate=no>_^_9_^_</span> \u0dc0\u0dd3\u0da9\u0dd2\u0dba\u0ddd\u0dc0\u0d9a\u0dca \u0dc3\u0dd1\u0daf\u0dd2\u0dba \u0dba\u0dd4\u0dad\u0dd4\u0daf \u0db1\u0dd0\u0dad\u0dc4\u0ddc\u0dad\u0dca \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dbb\u0dcf\u0db8\u0dd4\u0dc0 \u0db4\u0dd9\u0db1\u0dca\u0dc0\u0dd2\u0dba \u0dba\u0dd4\u0dad\u0dd4\u0daf \u0dba\u0db1\u0dca\u0db1 \u0db1\u0dd2\u0dba\u0db8 \u0d9a\u0dbb\u0dba\u0dd2</li></ul>\n",
|
||||
"<h4>Interpolate two images <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span></h4>\n<p>We get <span translate=no>_^_2_^_</span> and <span translate=no>_^_3_^_</span>.</p>\n<p>Then interpolate to <span translate=no>_^_4_^_</span></p>\n<p>Then get <span translate=no>_^_5_^_</span></p>\n<ul><li><span translate=no>_^_6_^_</span> is <span translate=no>_^_7_^_</span> </li>\n<li><span translate=no>_^_8_^_</span> is <span translate=no>_^_9_^_</span> </li>\n<li><span translate=no>_^_10_^_</span> is <span translate=no>_^_11_^_</span> </li>\n<li><span translate=no>_^_12_^_</span> is <span translate=no>_^_13_^_</span></li></ul>\n": "<h4>\u0dbb\u0dd6\u0db4\u0daf\u0dd9\u0d9a\u0d9a\u0dca \u0d85\u0db1\u0dca\u0dad\u0dbb\u0dca\u0d9c\u0dca\u0dbb\u0dc4\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> \u0dc3\u0dc4 <span translate=no>_^_1_^_</span></h4>\n<p>\u0d85\u0db4\u0dd2\u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 <span translate=no>_^_2_^_</span> \u0dc3\u0dc4 <span translate=no>_^_3_^_</span>. </p>\n<p>\u0d89\u0db1\u0dca\u0db4\u0dc3\u0dd4\u0d85\u0db1\u0dca\u0dad\u0dbb\u0dca\u0db4\u0ddc\u0dbd\u0dda\u0da7\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_4_^_</span></p>\n<p>\u0d89\u0db1\u0dca\u0db4\u0dc3\u0dd4\u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 <span translate=no>_^_5_^_</span></p>\n<ul><li><span translate=no>_^_6_^_</span> \u0dc0\u0dda <span translate=no>_^_7_^_</span> </li>\n<li><span translate=no>_^_8_^_</span> \u0dc0\u0dda <span translate=no>_^_9_^_</span> </li>\n<li><span translate=no>_^_10_^_</span> \u0dc0\u0dda <span translate=no>_^_11_^_</span> </li>\n</ul><li><span translate=no>_^_12_^_</span> \u0dc0\u0dda <span translate=no>_^_13_^_</span></li>\n",
|
||||
"<h4>Sample an image step-by-step using <span translate=no>_^_0_^_</span></h4>\n<p>We sample an image step-by-step using <span translate=no>_^_1_^_</span> and at each step show the estimate <span translate=no>_^_2_^_</span></p>\n": "<h4>\u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0dd9\u0db1\u0dca\u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db8\u0dd2\u0db1\u0dca \u0dbb\u0dd6\u0db4\u0dba\u0d9a\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span></h4>\n<p>\u0d85\u0db4\u0dd2\u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0dd9\u0db1\u0dca \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0dbb\u0dd6\u0db4\u0dba\u0d9a\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0d9a\u0dbb \u0d87\u0dad\u0dd2 <span translate=no>_^_1_^_</span> \u0d85\u0dad\u0dbb \u0dc3\u0dd1\u0db8 \u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0d9a\u0daf\u0dd3\u0db8 \u0d87\u0dc3\u0dca\u0dad\u0db8\u0dda\u0db1\u0dca\u0dad\u0dd4\u0dc0 \u0db4\u0dd9\u0db1\u0dca\u0dc0\u0dba\u0dd2 <span translate=no>_^_2_^_</span></p>\n",
|
||||
"<h4>Sample an image using <span translate=no>_^_0_^_</span></h4>\n<ul><li><span translate=no>_^_1_^_</span> is <span translate=no>_^_2_^_</span> </li>\n<li><span translate=no>_^_3_^_</span> is <span translate=no>_^_4_^_</span></li></ul>\n": "<h4>\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0d9a\u0dbb\u0db8\u0dd2\u0db1\u0dca \u0dbb\u0dd6\u0db4\u0dba\u0d9a\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span></h4>\n<ul><li><span translate=no>_^_1_^_</span> \u0dc0\u0dda <span translate=no>_^_2_^_</span> </li>\n</ul><li><span translate=no>_^_3_^_</span> \u0dc0\u0dda <span translate=no>_^_4_^_</span></li>\n",
|
||||
"<h4>Sample from <span translate=no>_^_0_^_</span></h4>\n<span translate=no>_^_1_^_</span>": "<h4>\u0dc0\u0dd9\u0dad\u0dd2\u0db1\u0dca\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba <span translate=no>_^_0_^_</span></h4>\n<span translate=no>_^_1_^_</span>",
|
||||
"<p> </p>\n": "<p> </p>\n",
|
||||
"<p>20 second video </p>\n": "<p>20\u0daf\u0dd9\u0dc0\u0db1 \u0dc0\u0dd3\u0da9\u0dd2\u0dba\u0ddd\u0dc0 </p>\n",
|
||||
"<p><a href=\"utils.html\">gather</a> <span translate=no>_^_0_^_</span> </p>\n": "<p><a href=\"utils.html\">\u0dbb\u0dd0\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1</a> <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> in a tensor </p>\n": "<p><span translate=no>_^_0_^_</span> \u0d91\u0dba tensor \u0daf\u0dd3 </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> tensor </p>\n": "<p><span translate=no>_^_0_^_</span> \u0da7\u0dd9\u0db1\u0dca\u0dc3\u0dbb\u0dca </p>\n",
|
||||
"<p>Add batch dimension </p>\n": "<p>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca\u0db8\u0dcf\u0db1\u0dba \u0d91\u0d9a\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Add each image </p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0dbb\u0dd6\u0db4\u0dba \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Add to frames </p>\n": "<p>\u0dbb\u0dcf\u0db8\u0dd4\u0dc0\u0dbd\u0da7 \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create an interpolation animation </p>\n": "<p>\u0d85\u0db1\u0dca\u0dad\u0dbb\u0dca\u0db1\u0dd2\u0dc0\u0dda\u0dc2\u0dab\u0dba\u0dc3\u0da2\u0dd3\u0dc0\u0dd2\u0d9a\u0dbb\u0dab\u0dba\u0d9a\u0dca \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create configs </p>\n": "<p>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create sampler </p>\n": "<p>\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Frames for video </p>\n": "<p>\u0dc0\u0dd3\u0da9\u0dd2\u0dba\u0ddd\u0dc3\u0db3\u0dc4\u0dcf \u0dbb\u0dcf\u0db8\u0dd4 </p>\n",
|
||||
"<p>Generate samples </p>\n": "<p>\u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd\u0da2\u0db1\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Get <span translate=no>_^_0_^_</span> and add to frames </p>\n": "<p>\u0dbb\u0dcf\u0db8\u0dd4\u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> \u0dc3\u0dc4 \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Get frames with different <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc0\u0dd2\u0dc0\u0dd2\u0db0\u0dbb\u0dcf\u0db8\u0dd4 \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Get some images fro data </p>\n": "<p>\u0daf\u0dad\u0dca\u0dad\u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0db4\u0dd2\u0db1\u0dca\u0dad\u0dd6\u0dbb \u0d9a\u0dd2\u0dc4\u0dd2\u0db4\u0dba\u0d9a\u0dca \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Helper function to create a video </p>\n": "<p>\u0dc0\u0dd3\u0da9\u0dd2\u0dba\u0ddd\u0dc0\u0d9a\u0dca\u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d8b\u0db4\u0d9a\u0dcf\u0dbb\u0d9a \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba </p>\n",
|
||||
"<p>Helper function to display an image </p>\n": "<p>\u0dbb\u0dd6\u0db4\u0dba\u0d9a\u0dca\u0db4\u0dca\u0dbb\u0daf\u0dbb\u0dca\u0dc1\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d8b\u0db4\u0d9a\u0dcf\u0dbb\u0d9a \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba </p>\n",
|
||||
"<p>Initialize </p>\n": "<p>\u0d86\u0dbb\u0db8\u0dca\u0db7\u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Interval to log <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dbd\u0ddc\u0d9c\u0dca\u0dc0\u0dd3\u0db8\u0da7 \u0db4\u0dbb\u0dad\u0dbb\u0dba <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Iterate until <span translate=no>_^_0_^_</span> steps </p>\n": "<p><span translate=no>_^_0_^_</span> \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0db1\u0dca\u0db1\u0dcf \u0dad\u0dd9\u0d9a\u0dca \u0db1\u0dd0\u0dc0\u0dad \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0dc0\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Load custom configuration of the training run </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0db0\u0dcf\u0dc0\u0db1\u0dba\u0dda \u0d85\u0db7\u0dd2\u0dbb\u0dd4\u0da0\u0dd2 \u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dba \u0db4\u0dd6\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Load training experiment </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf \u0db6\u0dd0\u0dbd\u0dd3\u0db8 </p>\n",
|
||||
"<p>Make video </p>\n": "<p>\u0dc0\u0dd3\u0da9\u0dd2\u0dba\u0ddd\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>No gradients </p>\n": "<p>\u0d9a\u0dd2\u0dc3\u0dd2\u0daf\u0dd4\u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dd2\u0d9a </p>\n",
|
||||
"<p>Number of sampels </p>\n": "<p>\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Number of samples </p>\n": "<p>\u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd\u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Return <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d86\u0db4\u0dc3\u0dd4 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Sample </p>\n": "<p>\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba </p>\n",
|
||||
"<p>Sample <span translate=no>_^_0_^_</span> steps </p>\n": "<p>\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2 <span translate=no>_^_0_^_</span> \u0db4\u0dd2\u0dba\u0dc0\u0dbb </p>\n",
|
||||
"<p>Sample an image with an denoising animation </p>\n": "<p>\u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba\u0d9a\u0dbb\u0db1 \u0dc3\u0da2\u0dd3\u0dc0\u0dd2\u0d9a\u0dbb\u0dab\u0dba\u0d9a\u0dca \u0dc3\u0dc4\u0dd2\u0dad \u0dbb\u0dd6\u0db4\u0dba\u0d9a\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Sample from <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc0\u0dd9\u0dad\u0dd2\u0db1\u0dca\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Set PyTorch modules for saving and loading </p>\n": "<p>\u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0dc4 \u0db4\u0dd0\u0da7\u0dc0\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dba\u0dd2\u0da7\u0ddd\u0da0\u0dca \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd \u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Set configurations </p>\n": "<p>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dba\u0db1\u0dca\u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Show frame </p>\n": "<p>\u0dbb\u0dcf\u0db8\u0dd4\u0dc0\u0db4\u0dd9\u0db1\u0dca\u0dc0\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Show images </p>\n": "<p>\u0db4\u0dd2\u0db1\u0dca\u0dad\u0dd6\u0dbb\u0db4\u0dd9\u0db1\u0dca\u0dc0\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Show original images </p>\n": "<p>\u0db8\u0dd4\u0dbd\u0dca\u0dbb\u0dd6\u0db4 \u0db4\u0dd9\u0db1\u0dca\u0dc0\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Start an evaluation </p>\n": "<p>\u0d87\u0d9c\u0dba\u0dd3\u0db8\u0d9a\u0dca\u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Start evaluation </p>\n": "<p>\u0d87\u0d9c\u0dba\u0dd3\u0db8\u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>To calculate</p>\n<span translate=no>_^_0_^_</span><p> </p>\n": "<p>\u0d9c\u0dab\u0db1\u0dba\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7</p>\n<span translate=no>_^_0_^_</span><p> </p>\n",
|
||||
"<p>Training experiment run UUID </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf \u0db6\u0dd0\u0dbd\u0dd3\u0db8 UUID </p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the <span translate=no>_^_1_^_</span> instance </li>\n<li><span translate=no>_^_2_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_3_^_</span> is the image size </li>\n<li><span translate=no>_^_4_^_</span> is the device of the model</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span> \u0d8b\u0daf\u0dcf\u0dc4\u0dbb\u0dab\u0dba\u0d9a\u0dca \u0dc0\u0dda </li>\n<li><span translate=no>_^_2_^_</span> \u0dba\u0db1\u0dd4 \u0dbb\u0dd6\u0db4\u0dba\u0dda \u0d87\u0dad\u0dd2 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 </li>\n<li><span translate=no>_^_3_^_</span> \u0dba\u0db1\u0dd4 \u0dbb\u0dd6\u0db4\u0dba\u0dda \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba\u0dba\u0dd2 </li>\n</ul><li><span translate=no>_^_4_^_</span> \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0dda \u0d8b\u0db4\u0dcf\u0d82\u0d9c\u0dba \u0dc0\u0dda</li>\n",
|
||||
"Code to generate samples from a trained Denoising Diffusion Probabilistic Model.": "\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0 \u0dbd\u0dad\u0dca \u0da9\u0dd9\u0db1\u0ddc\u0dba\u0dd2\u0dc3\u0dd2\u0d82 \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d9a\u0dd2\u0db1\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0da2\u0db1\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0dda\u0dad\u0dba.",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM) evaluation/sampling": "\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 \u0d86\u0d9a\u0dd8\u0dad\u0dd2 (DDPM) \u0d87\u0d9c\u0dba\u0dd3\u0db8/\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8"
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> evaluation/sampling</h1>\n<p>This is the code to generate images and create interpolations between given images.</p>\n": "<h1><a href=\"index.html\">\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM)</a> \u8bc4\u4f30/\u91c7\u6837</h1>\n<p>\u8fd9\u662f\u751f\u6210\u56fe\u50cf\u5e76\u5728\u7ed9\u5b9a\u56fe\u50cf\u4e4b\u95f4\u521b\u5efa\u63d2\u503c\u7684\u4ee3\u7801\u3002</p>\n",
|
||||
"<h2>Sampler class</h2>\n": "<h2>\u91c7\u6837\u5668\u7c7b</h2>\n",
|
||||
"<h4>Estimate <span translate=no>_^_0_^_</span></h4>\n<p><span translate=no>_^_1_^_</span></p>\n": "<h4>\u4f30\u8ba1<span translate=no>_^_0_^_</span></h4>\n<p><span translate=no>_^_1_^_</span></p>\n",
|
||||
"<h4>Generate images</h4>\n": "<h4>\u751f\u6210\u56fe\u50cf</h4>\n",
|
||||
"<h4>Interpolate two images <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span> and make a video</h4>\n<ul><li><span translate=no>_^_2_^_</span> is <span translate=no>_^_3_^_</span> </li>\n<li><span translate=no>_^_4_^_</span> is <span translate=no>_^_5_^_</span> </li>\n<li><span translate=no>_^_6_^_</span> is the number of frames for the image </li>\n<li><span translate=no>_^_7_^_</span> is <span translate=no>_^_8_^_</span> </li>\n<li><span translate=no>_^_9_^_</span> specifies whether to make a video or to show each frame</li></ul>\n": "<h4>\u63d2\u503c\u4e24\u5f20\u56fe\u50cf<span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u7136\u540e\u5236\u4f5c\u89c6\u9891</h4>\n<ul><li><span translate=no>_^_2_^_</span>\u662f<span translate=no>_^_3_^_</span></li>\n<li><span translate=no>_^_4_^_</span>\u662f<span translate=no>_^_5_^_</span></li>\n<li><span translate=no>_^_6_^_</span>\u662f\u56fe\u50cf\u7684\u5e27\u6570</li>\n<li><span translate=no>_^_7_^_</span>\u662f<span translate=no>_^_8_^_</span></li>\n<li><span translate=no>_^_9_^_</span>\u6307\u5b9a\u662f\u5236\u4f5c\u89c6\u9891\u8fd8\u662f\u663e\u793a\u6bcf\u4e00\u5e27</li></ul>\n",
|
||||
"<h4>Interpolate two images <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span></h4>\n<p>We get <span translate=no>_^_2_^_</span> and <span translate=no>_^_3_^_</span>.</p>\n<p>Then interpolate to <span translate=no>_^_4_^_</span></p>\n<p>Then get <span translate=no>_^_5_^_</span></p>\n<ul><li><span translate=no>_^_6_^_</span> is <span translate=no>_^_7_^_</span> </li>\n<li><span translate=no>_^_8_^_</span> is <span translate=no>_^_9_^_</span> </li>\n<li><span translate=no>_^_10_^_</span> is <span translate=no>_^_11_^_</span> </li>\n<li><span translate=no>_^_12_^_</span> is <span translate=no>_^_13_^_</span></li></ul>\n": "<h4>\u63d2\u503c\u4e24\u5f20\u56fe\u50cf<span translate=no>_^_0_^_</span>\u548c<span translate=no>_^_1_^_</span></h4>\n<p>\u6211\u4eec\u5f97\u5230<span translate=no>_^_2_^_</span>\u548c<span translate=no>_^_3_^_</span>\u3002</p>\n<p>\u7136\u540e\u63d2\u5165<span translate=no>_^_4_^_</span></p>\n<p>\u7136\u540e\u5f97\u5230<span translate=no>_^_5_^_</span></p>\n<ul><li><span translate=no>_^_6_^_</span>\u662f<span translate=no>_^_7_^_</span></li>\n<li><span translate=no>_^_8_^_</span>\u662f<span translate=no>_^_9_^_</span></li>\n<li><span translate=no>_^_10_^_</span>\u662f<span translate=no>_^_11_^_</span></li>\n</ul><li><span translate=no>_^_12_^_</span>\u662f<span translate=no>_^_13_^_</span></li>\n",
|
||||
"<h4>Sample an image step-by-step using <span translate=no>_^_0_^_</span></h4>\n<p>We sample an image step-by-step using <span translate=no>_^_1_^_</span> and at each step show the estimate <span translate=no>_^_2_^_</span></p>\n": "<h4>\u4f7f\u7528\u9010\u6b65\u5bf9\u56fe\u50cf\u8fdb\u884c\u91c7\u6837<span translate=no>_^_0_^_</span></h4>\n<p>\u6211\u4eec\u4f7f\u7528\u9010\u6b65\u5bf9\u56fe\u50cf\u8fdb\u884c\u91c7\u6837\uff0c<span translate=no>_^_1_^_</span>\u5e76\u5728\u6bcf\u4e00\u6b65\u663e\u793a\u4f30\u7b97\u503c<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<h4>Sample an image using <span translate=no>_^_0_^_</span></h4>\n<ul><li><span translate=no>_^_1_^_</span> is <span translate=no>_^_2_^_</span> </li>\n<li><span translate=no>_^_3_^_</span> is <span translate=no>_^_4_^_</span></li></ul>\n": "<h4>\u4f7f\u7528\u5bf9\u56fe\u50cf\u8fdb\u884c\u91c7\u6837<span translate=no>_^_0_^_</span></h4>\n<ul><li><span translate=no>_^_1_^_</span>\u662f<span translate=no>_^_2_^_</span></li>\n</ul><li><span translate=no>_^_3_^_</span>\u662f<span translate=no>_^_4_^_</span></li>\n",
|
||||
"<h4>Sample from <span translate=no>_^_0_^_</span></h4>\n<span translate=no>_^_1_^_</span>": "<h4>\u6837\u672c\u6765\u81ea<span translate=no>_^_0_^_</span></h4>\n<span translate=no>_^_1_^_</span>",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p>20 second video </p>\n": "<p>20 \u79d2\u89c6\u9891</p>\n",
|
||||
"<p><a href=\"utils.html\">gather</a> <span translate=no>_^_0_^_</span> </p>\n": "<p><a href=\"utils.html\">\u6536\u96c6</a><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> in a tensor </p>\n": "<p><span translate=no>_^_0_^_</span>\u5728\u5f20\u91cf\u4e2d</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> tensor </p>\n": "<p><span translate=no>_^_0_^_</span>\u5f20\u91cf</p>\n",
|
||||
"<p>Add batch dimension </p>\n": "<p>\u6dfb\u52a0\u6279\u91cf\u7ef4\u5ea6</p>\n",
|
||||
"<p>Add each image </p>\n": "<p>\u6dfb\u52a0\u6bcf\u5f20\u56fe\u7247</p>\n",
|
||||
"<p>Add to frames </p>\n": "<p>\u6dfb\u52a0\u5230\u76f8\u6846</p>\n",
|
||||
"<p>Create an interpolation animation </p>\n": "<p>\u521b\u5efa\u63d2\u503c\u52a8\u753b</p>\n",
|
||||
"<p>Create configs </p>\n": "<p>\u521b\u5efa\u914d\u7f6e</p>\n",
|
||||
"<p>Create sampler </p>\n": "<p>\u521b\u5efa\u91c7\u6837\u5668</p>\n",
|
||||
"<p>Frames for video </p>\n": "<p>\u7528\u4e8e\u89c6\u9891\u7684\u5e27</p>\n",
|
||||
"<p>Generate samples </p>\n": "<p>\u751f\u6210\u6837\u672c</p>\n",
|
||||
"<p>Get <span translate=no>_^_0_^_</span> and add to frames </p>\n": "<p>\u83b7\u53d6<span translate=no>_^_0_^_</span>\u5e76\u6dfb\u52a0\u5230\u5e27</p>\n",
|
||||
"<p>Get frames with different <span translate=no>_^_0_^_</span> </p>\n": "<p>\u83b7\u53d6\u4e0d\u540c\u7684\u5e27<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Get some images fro data </p>\n": "<p>\u4ece\u6570\u636e\u4e2d\u83b7\u53d6\u4e00\u4e9b\u56fe\u50cf</p>\n",
|
||||
"<p>Helper function to create a video </p>\n": "<p>\u521b\u5efa\u89c6\u9891\u7684\u52a9\u624b\u51fd\u6570</p>\n",
|
||||
"<p>Helper function to display an image </p>\n": "<p>\u663e\u793a\u56fe\u50cf\u7684\u8f85\u52a9\u51fd\u6570</p>\n",
|
||||
"<p>Initialize </p>\n": "<p>\u521d\u59cb\u5316</p>\n",
|
||||
"<p>Interval to log <span translate=no>_^_0_^_</span> </p>\n": "<p>\u8bb0\u5f55\u95f4\u9694<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Iterate until <span translate=no>_^_0_^_</span> steps </p>\n": "<p>\u8fed\u4ee3\u76f4\u81f3<span translate=no>_^_0_^_</span>\u6b65\u9aa4</p>\n",
|
||||
"<p>Load custom configuration of the training run </p>\n": "<p>\u52a0\u8f7d\u8bad\u7ec3\u8fd0\u884c\u7684\u81ea\u5b9a\u4e49\u914d\u7f6e</p>\n",
|
||||
"<p>Load training experiment </p>\n": "<p>\u8d1f\u8377\u8bad\u7ec3\u5b9e\u9a8c</p>\n",
|
||||
"<p>Make video </p>\n": "<p>\u5236\u4f5c\u89c6\u9891</p>\n",
|
||||
"<p>No gradients </p>\n": "<p>\u6ca1\u6709\u6e10\u53d8</p>\n",
|
||||
"<p>Number of sampels </p>\n": "<p>\u6837\u672c\u6570\u91cf</p>\n",
|
||||
"<p>Number of samples </p>\n": "<p>\u6837\u672c\u6570\u91cf</p>\n",
|
||||
"<p>Return <span translate=no>_^_0_^_</span> </p>\n": "<p>\u8fd4\u56de<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Sample </p>\n": "<p>\u6837\u672c</p>\n",
|
||||
"<p>Sample <span translate=no>_^_0_^_</span> steps </p>\n": "<p><span translate=no>_^_0_^_</span>\u6b65\u9aa4\u793a\u4f8b</p>\n",
|
||||
"<p>Sample an image with an denoising animation </p>\n": "<p>\u4f7f\u7528\u964d\u566a\u52a8\u753b\u5bf9\u56fe\u50cf\u8fdb\u884c\u91c7\u6837</p>\n",
|
||||
"<p>Sample from <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6837\u672c\u6765\u81ea<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Set PyTorch modules for saving and loading </p>\n": "<p>\u8bbe\u7f6e\u7528\u4e8e\u4fdd\u5b58\u548c\u52a0\u8f7d\u7684 PyTorch \u6a21\u5757</p>\n",
|
||||
"<p>Set configurations </p>\n": "<p>\u8bbe\u7f6e\u914d\u7f6e</p>\n",
|
||||
"<p>Show frame </p>\n": "<p>\u663e\u793a\u6846\u67b6</p>\n",
|
||||
"<p>Show images </p>\n": "<p>\u663e\u793a\u56fe\u7247</p>\n",
|
||||
"<p>Show original images </p>\n": "<p>\u663e\u793a\u539f\u59cb\u56fe\u50cf</p>\n",
|
||||
"<p>Start an evaluation </p>\n": "<p>\u5f00\u59cb\u8bc4\u4f30</p>\n",
|
||||
"<p>Start evaluation </p>\n": "<p>\u5f00\u59cb\u8bc4\u4f30</p>\n",
|
||||
"<p>To calculate</p>\n<span translate=no>_^_0_^_</span><p> </p>\n": "<p>\u8981\u8ba1\u7b97</p>\n<span translate=no>_^_0_^_</span><p></p>\n",
|
||||
"<p>Training experiment run UUID </p>\n": "<p>\u8bad\u7ec3\u5b9e\u9a8c\u8fd0\u884c UUID</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the <span translate=no>_^_1_^_</span> instance </li>\n<li><span translate=no>_^_2_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_3_^_</span> is the image size </li>\n<li><span translate=no>_^_4_^_</span> is the device of the model</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u8fd9\u4e2a\u5b9e<span translate=no>_^_1_^_</span>\u4f8b</li>\n<li><span translate=no>_^_2_^_</span>\u662f\u56fe\u50cf\u4e2d\u7684\u901a\u9053\u6570</li>\n<li><span translate=no>_^_3_^_</span>\u662f\u56fe\u50cf\u5927\u5c0f</li>\n<li><span translate=no>_^_4_^_</span>\u662f\u8be5\u578b\u53f7\u7684\u8bbe\u5907</li></ul>\n",
|
||||
"Code to generate samples from a trained Denoising Diffusion Probabilistic Model.": "\u4ece\u7ecf\u8fc7\u8bad\u7ec3\u7684\u964d\u566a\u6269\u6563\u6982\u7387\u6a21\u578b\u751f\u6210\u6837\u672c\u7684\u4ee3\u7801\u3002",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM) evaluation/sampling": "\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM) \u8bc4\u4f30/\u91c7\u6837"
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> training</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>This trains a DDPM based model on CelebA HQ dataset. You can find the download instruction in this <a href=\"https://forums.fast.ai/t/download-celeba-hq-dataset/45873/3\">discussion on fast.ai</a>. Save the images inside <a href=\"#dataset_path\"><span translate=no>_^_1_^_</span> folder</a>.</p>\n<p>The paper had used a exponential moving average of the model with a decay of <span translate=no>_^_2_^_</span>. We have skipped this for simplicity.</p>\n": "<h1><a href=\"index.html\">\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb</a> (DDPM) \u30c8\u30ec\u30fc\u30cb\u30f3\u30b0</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>\u3053\u308c\u306b\u3088\u308a\u3001CeleBA HQ \u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3067 DDPM \u30d9\u30fc\u30b9\u306e\u30e2\u30c7\u30eb\u304c\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3055\u308c\u307e\u3059\u3002\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u306e\u8aac\u660e\u306f\u3001<a href=\"https://forums.fast.ai/t/download-celeba-hq-dataset/45873/3\">fast.ai \u306e\u3053\u306e\u30c7\u30a3\u30b9\u30ab\u30c3\u30b7\u30e7\u30f3\u306b\u3042\u308a\u307e\u3059</a>\u3002<a href=\"#dataset_path\"><span translate=no>_^_1_^_</span>\u753b\u50cf\u3092\u30d5\u30a9\u30eb\u30c0\u30fc\u306b\u4fdd\u5b58\u3057\u307e\u3059</a>\u3002</p>\n<p>\u3053\u306e\u8ad6\u6587\u3067\u306f\u3001\u30e2\u30c7\u30eb\u306e\u6307\u6570\u79fb\u52d5\u5e73\u5747\u3092\u6e1b\u8870\u3055\u305b\u3066\u4f7f\u7528\u3057\u3066\u3044\u307e\u3057\u305f\u3002<span translate=no>_^_2_^_</span>\u7c21\u7565\u5316\u306e\u305f\u3081\u3001\u3053\u3053\u3067\u306f\u7701\u7565\u3057\u3066\u3044\u307e\u3059</p>\u3002\n",
|
||||
"<h2>Configurations</h2>\n": "<h2>\u30b3\u30f3\u30d5\u30a3\u30ae\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3</h2>\n",
|
||||
"<h3>CelebA HQ dataset</h3>\n": "<h3>CeleBA \u672c\u793e\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8</h3>\n",
|
||||
"<h3>MNIST dataset</h3>\n": "<h3>MNIST \u30c7\u30fc\u30bf\u30bb\u30c3\u30c8</h3>\n",
|
||||
"<h3>Sample images</h3>\n": "<h3>\u30b5\u30f3\u30d7\u30eb\u753b\u50cf</h3>\n",
|
||||
"<h3>Train</h3>\n": "<h3>\u5217\u8eca</h3>\n",
|
||||
"<h3>Training loop</h3>\n": "<h3>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30eb\u30fc\u30d7</h3>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p> Create CelebA dataset</p>\n": "<p>CeleBA \u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u306e\u4f5c\u6210</p>\n",
|
||||
"<p> Create MNIST dataset</p>\n": "<p>MNIST \u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u306e\u4f5c\u6210</p>\n",
|
||||
"<p> Get an image</p>\n": "<p>\u753b\u50cf\u3092\u53d6\u5f97</p>\n",
|
||||
"<p> Size of the dataset</p>\n": "<p>\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u306e\u30b5\u30a4\u30ba</p>\n",
|
||||
"<p><a href=\"index.html\">DDPM algorithm</a> </p>\n": "<p><a href=\"index.html\">DDPM \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0</a></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Adam optimizer </p>\n": "<p>\u30a2\u30c0\u30e0\u30fb\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc</p>\n",
|
||||
"<p>Batch size </p>\n": "<p>\u30d0\u30c3\u30c1\u30b5\u30a4\u30ba</p>\n",
|
||||
"<p>Calculate loss </p>\n": "<p>\u640d\u5931\u306e\u8a08\u7b97</p>\n",
|
||||
"<p>CelebA images folder </p>\n": "<p>\u30bb\u30ec\u30d0\u753b\u50cf\u30d5\u30a9\u30eb\u30c0\u30fc</p>\n",
|
||||
"<p>Compute gradients </p>\n": "<p>\u52fe\u914d\u306e\u8a08\u7b97</p>\n",
|
||||
"<p>Create <a href=\"index.html\">DDPM class</a> </p>\n": "<p><a href=\"index.html\">DDPM \u30af\u30e9\u30b9\u306e\u4f5c\u6210</a></p>\n",
|
||||
"<p>Create <span translate=no>_^_0_^_</span> model </p>\n": "<p><span translate=no>_^_0_^_</span>\u30e2\u30c7\u30eb\u4f5c\u6210</p>\n",
|
||||
"<p>Create configurations </p>\n": "<p>\u69cb\u6210\u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Create dataloader </p>\n": "<p>\u30c7\u30fc\u30bf\u30ed\u30fc\u30c0\u30fc\u306e\u4f5c\u6210</p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u5b9f\u9a13\u3092\u4f5c\u6210</p>\n",
|
||||
"<p>Create optimizer </p>\n": "<p>\u30aa\u30d7\u30c6\u30a3\u30de\u30a4\u30b6\u30fc\u3092\u4f5c\u6210</p>\n",
|
||||
"<p>Dataloader </p>\n": "<p>\u30c7\u30fc\u30bf\u30ed\u30fc\u30c0\u30fc</p>\n",
|
||||
"<p>Dataset </p>\n": "<p>\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8</p>\n",
|
||||
"<p>Device to train the model on. <a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.device.DeviceConfigs\"><span translate=no>_^_0_^_</span></a> picks up an available CUDA device or defaults to CPU. </p>\n": "<p>\u30e2\u30c7\u30eb\u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3059\u308b\u30c7\u30d0\u30a4\u30b9\u3002<a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.device.DeviceConfigs\"><span translate=no>_^_0_^_</span></a>\u4f7f\u7528\u53ef\u80fd\u306a CUDA \u30c7\u30d0\u30a4\u30b9\u3092\u9078\u629e\u3059\u308b\u304b\u3001\u30c7\u30d5\u30a9\u30eb\u30c8\u3067 CPU \u306b\u8a2d\u5b9a\u3057\u307e\u3059</p>\u3002\n",
|
||||
"<p>Image logging </p>\n": "<p>\u753b\u50cf\u30ed\u30ae\u30f3\u30b0</p>\n",
|
||||
"<p>Image size </p>\n": "<p>\u753b\u50cf\u30b5\u30a4\u30ba</p>\n",
|
||||
"<p>Increment global step </p>\n": "<p>\u30b0\u30ed\u30fc\u30d0\u30eb\u30b9\u30c6\u30c3\u30d7\u3092\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8</p>\n",
|
||||
"<p>Initialize </p>\n": "<p>[\u521d\u671f\u5316]</p>\n",
|
||||
"<p>Iterate through the dataset </p>\n": "<p>\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u306e\u53cd\u5fa9\u51e6\u7406</p>\n",
|
||||
"<p>Learning rate </p>\n": "<p>\u5b66\u7fd2\u7387</p>\n",
|
||||
"<p>List of files </p>\n": "<p>\u30d5\u30a1\u30a4\u30eb\u30ea\u30b9\u30c8</p>\n",
|
||||
"<p>Log samples </p>\n": "<p>\u30ed\u30b0\u30b5\u30f3\u30d7\u30eb</p>\n",
|
||||
"<p>Make the gradients zero </p>\n": "<p>\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\u3092\u30bc\u30ed\u306b\u3059\u308b</p>\n",
|
||||
"<p>Move data to device </p>\n": "<p>\u30c7\u30fc\u30bf\u3092\u30c7\u30d0\u30a4\u30b9\u306b\u79fb\u52d5</p>\n",
|
||||
"<p>New line in the console </p>\n": "<p>\u30b3\u30f3\u30bd\u30fc\u30eb\u306e\u65b0\u3057\u3044\u884c</p>\n",
|
||||
"<p>Number of channels in the image. <span translate=no>_^_0_^_</span> for RGB. </p>\n": "<p>\u753b\u50cf\u5185\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3002<span translate=no>_^_0_^_</span>RGB \u7528\u3067\u3059\u3002</p>\n",
|
||||
"<p>Number of channels in the initial feature map </p>\n": "<p>\u521d\u671f\u6a5f\u80fd\u30de\u30c3\u30d7\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</p>\n",
|
||||
"<p>Number of samples to generate </p>\n": "<p>\u751f\u6210\u3059\u308b\u30b5\u30f3\u30d7\u30eb\u306e\u6570</p>\n",
|
||||
"<p>Number of time steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30bf\u30a4\u30e0\u30b9\u30c6\u30c3\u30d7\u6570 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Number of training epochs </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30a8\u30dd\u30c3\u30af\u306e\u6570</p>\n",
|
||||
"<p>Remove noise for <span translate=no>_^_0_^_</span> steps </p>\n": "<p><span translate=no>_^_0_^_</span>\u30b9\u30c6\u30c3\u30d7\u306e\u30ce\u30a4\u30ba\u9664\u53bb</p>\n",
|
||||
"<p>Sample from <span translate=no>_^_0_^_</span> </p>\n": "<p>\u304b\u3089\u306e\u30b5\u30f3\u30d7\u30eb <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Sample some images </p>\n": "<p>\u3044\u304f\u3064\u304b\u306e\u753b\u50cf\u306e\u30b5\u30f3\u30d7\u30eb</p>\n",
|
||||
"<p>Save the model </p>\n": "<p>\u30e2\u30c7\u30eb\u3092\u4fdd\u5b58\u3059\u308b</p>\n",
|
||||
"<p>Set configurations. You can override the defaults by passing the values in the dictionary. </p>\n": "<p>\u69cb\u6210\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\u30c7\u30a3\u30af\u30b7\u30e7\u30ca\u30ea\u306b\u5024\u3092\u6e21\u3059\u3053\u3068\u3067\u30c7\u30d5\u30a9\u30eb\u30c8\u3092\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u3067\u304d\u307e\u3059\u3002</p>\n",
|
||||
"<p>Set models for saving and loading </p>\n": "<p>\u4fdd\u5b58\u304a\u3088\u3073\u8aad\u307f\u8fbc\u307f\u7528\u306e\u30e2\u30c7\u30eb\u3092\u8a2d\u5b9a\u3059\u308b</p>\n",
|
||||
"<p>Start and run the training loop </p>\n": "<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30eb\u30fc\u30d7\u3092\u958b\u59cb\u3057\u3066\u5b9f\u884c\u3059\u308b</p>\n",
|
||||
"<p>Take an optimization step </p>\n": "<p>\u6700\u9069\u5316\u306e\u4e00\u6b69\u3092\u8e0f\u307f\u51fa\u3059</p>\n",
|
||||
"<p>The list of booleans that indicate whether to use attention at each resolution </p>\n": "<p>\u5404\u89e3\u50cf\u5ea6\u3067\u6ce8\u610f\u3092\u5411\u3051\u308b\u304b\u3069\u3046\u304b\u3092\u793a\u3059\u30d6\u30fc\u30ea\u30a2\u30f3\u306e\u30ea\u30b9\u30c8</p>\n",
|
||||
"<p>The list of channel numbers at each resolution. The number of channels is <span translate=no>_^_0_^_</span> </p>\n": "<p>\u5404\u89e3\u50cf\u5ea6\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u756a\u53f7\u306e\u30ea\u30b9\u30c8\u3002\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u306f <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Track the loss </p>\n": "<p>\u640d\u5931\u3092\u30c8\u30e9\u30c3\u30ad\u30f3\u30b0</p>\n",
|
||||
"<p>Train the model </p>\n": "<p>\u30e2\u30c7\u30eb\u306e\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0</p>\n",
|
||||
"<p>Transformations to resize the image and convert to tensor </p>\n": "<p>\u753b\u50cf\u306e\u30b5\u30a4\u30ba\u3092\u5909\u66f4\u3057\u3066\u30c6\u30f3\u30bd\u30eb\u306b\u5909\u63db\u3059\u308b\u5909\u63db</p>\n",
|
||||
"<p>U-Net model for <span translate=no>_^_0_^_</span> </p>\n": "<p>\u7528\u306e U-Net \u30e2\u30c7\u30eb <span translate=no>_^_0_^_</span></p>\n",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM) training": "\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM) \u30c8\u30ec\u30fc\u30cb\u30f3\u30b0",
|
||||
"Training code for Denoising Diffusion Probabilistic Model.": "\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb\u306e\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30b3\u30fc\u30c9"
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> training</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>This trains a DDPM based model on CelebA HQ dataset. You can find the download instruction in this <a href=\"https://forums.fast.ai/t/download-celeba-hq-dataset/45873/3\">discussion on fast.ai</a>. Save the images inside <a href=\"#dataset_path\"><span translate=no>_^_1_^_</span> folder</a>.</p>\n<p>The paper had used a exponential moving average of the model with a decay of <span translate=no>_^_2_^_</span>. We have skipped this for simplicity.</p>\n": "<h1><a href=\"index.html\">\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2 (\u0da9\u0dd3\u0da9\u0dd3\u0db4\u0dd3\u0d91\u0db8\u0dca) \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0 \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba</a> \u0d9a\u0dd2\u0dbb\u0dd3\u0db8</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>\u0db8\u0dd9\u0dba \u0dc3\u0dd9\u0dbd\u0dd9\u0db6\u0dcf \u0d91\u0da0\u0dca\u0d9a\u0dd2\u0dba\u0dd4 \u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0db8\u0dad \u0da9\u0dd3\u0da9\u0dd3\u0db4\u0dd3\u0d91\u0db8\u0dca \u0db4\u0daf\u0db1\u0db8\u0dca \u0d9a\u0dbb\u0d9c\u0dad\u0dca \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d9a\u0dca \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0dba\u0dd2. <a href=\"https://forums.fast.ai/t/download-celeba-hq-dataset/45873/3\">fast.ai \u0dc4\u0dd2 \u0db8\u0dd9\u0db8 \u0dc3\u0dcf\u0d9a\u0da0\u0dca\u0da1\u0dcf\u0dc0\u0dda\u0daf\u0dd3</a> \u0db6\u0dcf\u0d9c\u0dad \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d8b\u0db4\u0daf\u0dd9\u0dc3\u0dca \u0d94\u0db6\u0da7 \u0dc3\u0ddc\u0dba\u0dcf\u0d9c\u0dad \u0dc4\u0dd0\u0d9a\u0dd2\u0dba. <a href=\"#dataset_path\"><span translate=no>_^_1_^_</span>\u0dc6\u0ddd\u0dbd\u0dca\u0da9\u0dbb\u0dba</a> \u0dad\u0dd4\u0dc5 \u0db4\u0dd2\u0db1\u0dca\u0dad\u0dd6\u0dbb \u0dc3\u0dd4\u0dbb\u0d9a\u0dd2\u0db1\u0dca\u0db1.</p>\n<p>\u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0d9a \u0d9a\u0dca\u0dc2\u0dba \u0dc3\u0db8\u0d9c \u0d86\u0daf\u0dbb\u0dca\u0dc1 \u0d9d\u0dcf\u0dad\u0dd3\u0dba \u0dc0\u0dd9\u0db1\u0dc3\u0dca\u0dc0\u0db1 \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0dba \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb<span translate=no>_^_2_^_</span> \u0d87\u0dad. \u0dc3\u0dbb\u0dbd \u0db6\u0dc0 \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dd2 \u0db8\u0dd9\u0dba \u0db8\u0d9f \u0dc4\u0dd0\u0dbb \u0d87\u0dad\u0dca\u0dad\u0dd9\u0db8\u0dd4.</p>\n",
|
||||
"<h2>Configurations</h2>\n": "<h2>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca</h2>\n",
|
||||
"<h3>CelebA HQ dataset</h3>\n": "<h3>\u0dc3\u0dd9\u0dbd\u0dd9\u0db6\u0dcf\u0db8\u0dd6\u0dbd\u0dc3\u0dca\u0dae\u0dcf\u0db1\u0dba \u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba</h3>\n",
|
||||
"<h3>MNIST dataset</h3>\n": "<h3>MNIST\u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba</h3>\n",
|
||||
"<h3>Sample images</h3>\n": "<h3>\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dbb\u0dd6\u0db4</h3>\n",
|
||||
"<h3>Train</h3>\n": "<h3>\u0daf\u0dd4\u0db8\u0dca\u0dbb\u0dd2\u0dba</h3>\n",
|
||||
"<h3>Training loop</h3>\n": "<h3>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dbd\u0dd6\u0db4\u0dba</h3>\n",
|
||||
"<p> </p>\n": "<p> </p>\n",
|
||||
"<p> Create CelebA dataset</p>\n": "<p> \u0dc3\u0dd9\u0dbd\u0dd9\u0db6\u0dcf\u0daf\u0dad\u0dca\u0dad \u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Create MNIST dataset</p>\n": "<p> MNIST\u0daf\u0dad\u0dca\u0dad \u0dc3\u0db8\u0dd4\u0daf\u0dcf\u0dba \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Get an image</p>\n": "<p> \u0dbb\u0dd6\u0db4\u0dba\u0d9a\u0dca\u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p> Size of the dataset</p>\n": "<p> \u0daf\u0dad\u0dca\u0dad\u0dc3\u0db8\u0dd4\u0daf\u0dcf\u0dba \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba</p>\n",
|
||||
"<p><a href=\"index.html\">DDPM algorithm</a> </p>\n": "<p><a href=\"index.html\">\u0da9\u0dd3\u0da9\u0dd3\u0db4\u0dd3\u0d91\u0db8\u0dca \u0d87\u0dbd\u0dca\u0d9c\u0ddc\u0dbb\u0dd2\u0dad\u0db8</a> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Adam optimizer </p>\n": "<p>\u0d86\u0daf\u0db8\u0dca\u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad\u0d9a\u0dbb\u0dab\u0dba </p>\n",
|
||||
"<p>Batch size </p>\n": "<p>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca\u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba </p>\n",
|
||||
"<p>Calculate loss </p>\n": "<p>\u0d85\u0dbd\u0dcf\u0db7\u0dba\u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>CelebA images folder </p>\n": "<p>\u0dc3\u0dd9\u0dbd\u0dd9\u0db6\u0dcf\u0db4\u0dd2\u0db1\u0dca\u0dad\u0dd6\u0dbb \u0dc6\u0ddd\u0dbd\u0dca\u0da9\u0dbb\u0dba </p>\n",
|
||||
"<p>Compute gradients </p>\n": "<p>\u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dd2\u0d9a\u0d9c\u0dab\u0db1\u0dba </p>\n",
|
||||
"<p>Create <a href=\"index.html\">DDPM class</a> </p>\n": "<p><a href=\"index.html\">DDPM \u0db4\u0db1\u0dca\u0dad\u0dd2</a> \u0db1\u0dd2\u0dbb\u0dca\u0db8\u0dcf\u0dab\u0dba </p>\n",
|
||||
"<p>Create <span translate=no>_^_0_^_</span> model </p>\n": "<p><span translate=no>_^_0_^_</span> \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create configurations </p>\n": "<p>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dba\u0db1\u0dca\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create dataloader </p>\n": "<p>\u0daf\u0dad\u0dca\u0dad\u0d9a\u0dcf\u0dbb\u0d9a\u0dba \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf\u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create optimizer </p>\n": "<p>\u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad\u0d9a\u0dbb\u0dab\u0dba\u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Dataloader </p>\n": "<p>\u0daf\u0dad\u0dca\u0dad\u0d9a\u0dcf\u0dbb\u0d9a\u0dba </p>\n",
|
||||
"<p>Dataset </p>\n": "<p>\u0daf\u0dad\u0dca\u0dad\u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba </p>\n",
|
||||
"<p>Device to train the model on. <a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.device.DeviceConfigs\"><span translate=no>_^_0_^_</span></a> picks up an available CUDA device or defaults to CPU. </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0d8b\u0db4\u0d9a\u0dbb\u0dab\u0dba. <a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.device.DeviceConfigs\"><span translate=no>_^_0_^_</span></a> \u0dbd\u0db6\u0dcf \u0d9c\u0dad \u0dc4\u0dd0\u0d9a\u0dd2 CUDA \u0d8b\u0db4\u0dcf\u0d82\u0d9c\u0dba\u0d9a\u0dca \u0d85\u0dc4\u0dd4\u0dbd\u0db1\u0dc0\u0dcf \u0dc4\u0ddd CPU \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0db4\u0dd9\u0dbb\u0db1\u0dd2\u0db8\u0dd2. </p>\n",
|
||||
"<p>Image logging </p>\n": "<p>\u0dbb\u0dd6\u0db4\u0dbd\u0ddc\u0d9c\u0dca \u0dc0\u0dd3\u0db8 </p>\n",
|
||||
"<p>Image size </p>\n": "<p>\u0dbb\u0dd6\u0db4\u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dba </p>\n",
|
||||
"<p>Increment global step </p>\n": "<p>\u0d9c\u0ddd\u0dbd\u0dd3\u0dba\u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0dc0\u0dd0\u0da9\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 </p>\n",
|
||||
"<p>Initialize </p>\n": "<p>\u0d86\u0dbb\u0db8\u0dca\u0db7\u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Iterate through the dataset </p>\n": "<p>\u0daf\u0dad\u0dca\u0dad\u0dc3\u0db8\u0dd4\u0daf\u0dcf\u0dba \u0dc4\u0dbb\u0dc4\u0dcf \u0db1\u0dd0\u0dc0\u0dad \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Learning rate </p>\n": "<p>\u0d89\u0d9c\u0dd9\u0db1\u0dd4\u0db8\u0dca\u0d85\u0db1\u0dd4\u0db4\u0dcf\u0dad\u0dba </p>\n",
|
||||
"<p>List of files </p>\n": "<p>\u0d9c\u0ddc\u0db1\u0dd4\u0dbd\u0dd0\u0dba\u0dd2\u0dc3\u0dca\u0dad\u0dd4\u0dc0 </p>\n",
|
||||
"<p>Log samples </p>\n": "<p>\u0dbd\u0ddc\u0d9c\u0dca\u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd </p>\n",
|
||||
"<p>Make the gradients zero </p>\n": "<p>\u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dd2\u0d9a\u0dc1\u0dd4\u0db1\u0dca\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Move data to device </p>\n": "<p>\u0d8b\u0db4\u0dcf\u0d82\u0d9c\u0dba\u0dc0\u0dd9\u0dad \u0daf\u0dad\u0dca\u0dad \u0d9c\u0dd9\u0db1\u0dba\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>New line in the console </p>\n": "<p>\u0d9a\u0ddc\u0db1\u0dca\u0dc3\u0ddd\u0dbd\u0dba\u0dda\u0db1\u0dc0 \u0dbb\u0dda\u0d9b\u0dcf\u0dc0\u0d9a\u0dca </p>\n",
|
||||
"<p>Number of channels in the image. <span translate=no>_^_0_^_</span> for RGB. </p>\n": "<p>\u0dbb\u0dd6\u0db4\u0dba\u0dda\u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1. <span translate=no>_^_0_^_</span> RGB \u0dc3\u0db3\u0dc4\u0dcf. </p>\n",
|
||||
"<p>Number of channels in the initial feature map </p>\n": "<p>\u0d86\u0dbb\u0db8\u0dca\u0db7\u0d9a\u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Number of samples to generate </p>\n": "<p>\u0d8b\u0dad\u0dca\u0db4\u0dcf\u0daf\u0db1\u0dba\u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Number of time steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d9a\u0dcf\u0dbd\u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0dab\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Number of training epochs </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0d91\u0db4\u0ddc\u0da0\u0dca \u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Remove noise for <span translate=no>_^_0_^_</span> steps </p>\n": "<p><span translate=no>_^_0_^_</span> \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0dc3\u0db3\u0dc4\u0dcf \u0dc1\u0db6\u0dca\u0daf\u0dba \u0d89\u0dc0\u0dad\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Sample from <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc0\u0dd9\u0dad\u0dd2\u0db1\u0dca\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Sample some images </p>\n": "<p>\u0db4\u0dd2\u0db1\u0dca\u0dad\u0dd6\u0dbb\u0d9a\u0dd2\u0dc4\u0dd2\u0db4\u0dba\u0d9a\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Save the model </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0dc3\u0dd4\u0dbb\u0d9a\u0dd2\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Set configurations. You can override the defaults by passing the values in the dictionary. </p>\n": "<p>\u0dc0\u0dd2\u0db1\u0dca\u0dba\u0dcf\u0dc3\u0dba\u0db1\u0dca\u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1. \u0dc1\u0db6\u0dca\u0daf\u0d9a\u0ddd\u0dc2\u0dba\u0dda \u0d85\u0d9c\u0dba\u0db1\u0dca \u0dc3\u0db8\u0dca\u0db8\u0dad \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dd9\u0db1\u0dca \u0d94\u0db6\u0da7 \u0db4\u0dd9\u0dbb\u0db1\u0dd2\u0db8\u0dd2 \u0d85\u0db7\u0dd2\u0db6\u0dc0\u0dcf \u0dba\u0dcf \u0dc4\u0dd0\u0d9a\u0dd2\u0dba. </p>\n",
|
||||
"<p>Set models for saving and loading </p>\n": "<p>\u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0dc4 \u0db4\u0dd0\u0da7\u0dc0\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0dc3\u0d9a\u0dc3\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Start and run the training loop </p>\n": "<p>\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dbd\u0dd6\u0db4\u0dba \u0d86\u0dbb\u0db8\u0dca\u0db7 \u0d9a\u0dbb \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Take an optimization step </p>\n": "<p>\u0db4\u0dca\u0dbb\u0dc1\u0dc3\u0dca\u0dad\u0dd2\u0d9a\u0dbb\u0dab\u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0d9a\u0dca \u0d9c\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>The list of booleans that indicate whether to use attention at each resolution </p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0dba\u0ddd\u0da2\u0db1\u0dcf\u0dc0\u0dda\u0daf\u0dd3 \u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4\u0daf \u0dba\u0db1\u0dca\u0db1 \u0db4\u0dd9\u0db1\u0dca\u0dc0\u0db1 \u0db6\u0dd6\u0dbd\u0dd2\u0dba\u0db1\u0dca \u0dbd\u0dd0\u0dba\u0dd2\u0dc3\u0dca\u0dad\u0dd4\u0dc0 </p>\n",
|
||||
"<p>The list of channel numbers at each resolution. The number of channels is <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d85\u0d82\u0d9a \u0dbd\u0dd0\u0dba\u0dd2\u0dc3\u0dca\u0dad\u0dd4\u0dc0. \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc0\u0dda <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Track the loss </p>\n": "<p>\u0d85\u0dbd\u0dcf\u0db7\u0dba\u0dbd\u0dd4\u0dc4\u0dd4\u0db6\u0db3\u0dd2\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Train the model </p>\n": "<p>\u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Transformations to resize the image and convert to tensor </p>\n": "<p>\u0dbb\u0dd6\u0db4\u0dba\u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dbb \u0da7\u0dd9\u0db1\u0dca\u0dc3\u0dbb\u0dca \u0db6\u0dc0\u0da7 \u0db4\u0dbb\u0dd2\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dbb\u0dd2\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba\u0db1\u0dca </p>\n",
|
||||
"<p>U-Net model for <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc3\u0db3\u0dc4\u0dcfU-Net \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM) training": "\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2 (\u0da9\u0dd3\u0da9\u0dd3\u0db4\u0dd3\u0d91\u0db8\u0dca) \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4\u0dc0 \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8",
|
||||
"Training code for Denoising Diffusion Probabilistic Model.": "Denoising Diffusion \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dda\u0dad\u0dba."
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"<h1><a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a> training</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>This trains a DDPM based model on CelebA HQ dataset. You can find the download instruction in this <a href=\"https://forums.fast.ai/t/download-celeba-hq-dataset/45873/3\">discussion on fast.ai</a>. Save the images inside <a href=\"#dataset_path\"><span translate=no>_^_1_^_</span> folder</a>.</p>\n<p>The paper had used a exponential moving average of the model with a decay of <span translate=no>_^_2_^_</span>. We have skipped this for simplicity.</p>\n": "<h1><a href=\"index.html\">\u964d\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM)</a> \u8bad\u7ec3</h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>\u8fd9\u5c06\u57fa\u4e8e CeleBA HQ \u6570\u636e\u96c6\u8bad\u7ec3\u57fa\u4e8e DDPM \u7684\u6a21\u578b\u3002\u4f60\u53ef\u4ee5\u5728 <a href=\"https://forums.fast.ai/t/download-celeba-hq-dataset/45873/3\">fast.ai \u7684\u8ba8\u8bba</a>\u4e2d\u627e\u5230\u4e0b\u8f7d\u8bf4\u660e\u3002\u5c06\u56fe\u50cf\u4fdd\u5b58\u5728<a href=\"#dataset_path\"><span translate=no>_^_1_^_</span>\u6587\u4ef6\u5939\u4e2d</a>\u3002</p>\n<p>\u8be5\u8bba\u6587\u4f7f\u7528\u4e86\u8be5\u6a21\u578b\u7684\u6307\u6570\u79fb\u52a8\u5e73\u5747\u7ebf\uff0c\u5176\u8870\u51cf\u91cf\u4e3a<span translate=no>_^_2_^_</span>\u3002\u4e3a\u7b80\u5355\u8d77\u89c1\uff0c\u6211\u4eec\u8df3\u8fc7\u4e86\u8fd9\u4e2a\u3002</p>\n",
|
||||
"<h2>Configurations</h2>\n": "<h2>\u914d\u7f6e</h2>\n",
|
||||
"<h3>CelebA HQ dataset</h3>\n": "<h3>CeleBA HQ \u6570\u636e\u96c6</h3>\n",
|
||||
"<h3>MNIST dataset</h3>\n": "<h3>MNIST \u6570\u636e\u96c6</h3>\n",
|
||||
"<h3>Sample images</h3>\n": "<h3>\u6837\u672c\u56fe\u7247</h3>\n",
|
||||
"<h3>Train</h3>\n": "<h3>\u706b\u8f66</h3>\n",
|
||||
"<h3>Training loop</h3>\n": "<h3>\u8bad\u7ec3\u5faa\u73af</h3>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p> Create CelebA dataset</p>\n": "<p>\u521b\u5efa CeleBA \u6570\u636e\u96c6</p>\n",
|
||||
"<p> Create MNIST dataset</p>\n": "<p>\u521b\u5efa MNIST \u6570\u636e\u96c6</p>\n",
|
||||
"<p> Get an image</p>\n": "<p>\u83b7\u53d6\u4e00\u5f20\u56fe\u7247</p>\n",
|
||||
"<p> Size of the dataset</p>\n": "<p>\u6570\u636e\u96c6\u7684\u5927\u5c0f</p>\n",
|
||||
"<p><a href=\"index.html\">DDPM algorithm</a> </p>\n": "<p><a href=\"index.html\">DDPM \u7b97\u6cd5</a></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Adam optimizer </p>\n": "<p>Adam \u4f18\u5316\u5668</p>\n",
|
||||
"<p>Batch size </p>\n": "<p>\u6279\u91cf\u5927\u5c0f</p>\n",
|
||||
"<p>Calculate loss </p>\n": "<p>\u8ba1\u7b97\u635f\u5931</p>\n",
|
||||
"<p>CelebA images folder </p>\n": "<p>CeleBA \u56fe\u7247\u6587\u4ef6\u5939</p>\n",
|
||||
"<p>Compute gradients </p>\n": "<p>\u8ba1\u7b97\u68af\u5ea6</p>\n",
|
||||
"<p>Create <a href=\"index.html\">DDPM class</a> </p>\n": "<p>\u521b\u5efa <a href=\"index.html\">DDPM \u7c7b</a></p>\n",
|
||||
"<p>Create <span translate=no>_^_0_^_</span> model </p>\n": "<p>\u521b\u5efa<span translate=no>_^_0_^_</span>\u6a21\u578b</p>\n",
|
||||
"<p>Create configurations </p>\n": "<p>\u521b\u5efa\u914d\u7f6e</p>\n",
|
||||
"<p>Create dataloader </p>\n": "<p>\u521b\u5efa\u6570\u636e\u52a0\u8f7d\u5668</p>\n",
|
||||
"<p>Create experiment </p>\n": "<p>\u521b\u5efa\u5b9e\u9a8c</p>\n",
|
||||
"<p>Create optimizer </p>\n": "<p>\u521b\u5efa\u4f18\u5316\u5668</p>\n",
|
||||
"<p>Dataloader </p>\n": "<p>\u6570\u636e\u52a0\u8f7d\u5668</p>\n",
|
||||
"<p>Dataset </p>\n": "<p>\u6570\u636e\u96c6</p>\n",
|
||||
"<p>Device to train the model on. <a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.device.DeviceConfigs\"><span translate=no>_^_0_^_</span></a> picks up an available CUDA device or defaults to CPU. </p>\n": "<p>\u7528\u4e8e\u8bad\u7ec3\u6a21\u578b\u7684\u8bbe\u5907\u3002<a href=\"https://docs.labml.ai/api/helpers.html#labml_helpers.device.DeviceConfigs\"><span translate=no>_^_0_^_</span></a>\u9009\u62e9\u53ef\u7528\u7684 CUDA \u8bbe\u5907\u6216\u9ed8\u8ba4\u4e3a CPU\u3002</p>\n",
|
||||
"<p>Image logging </p>\n": "<p>\u56fe\u50cf\u65e5\u5fd7\u8bb0\u5f55</p>\n",
|
||||
"<p>Image size </p>\n": "<p>\u56fe\u50cf\u5927\u5c0f</p>\n",
|
||||
"<p>Increment global step </p>\n": "<p>\u9012\u589e\u5168\u5c40\u6b65\u957f</p>\n",
|
||||
"<p>Initialize </p>\n": "<p>\u521d\u59cb\u5316</p>\n",
|
||||
"<p>Iterate through the dataset </p>\n": "<p>\u904d\u5386\u6570\u636e\u96c6</p>\n",
|
||||
"<p>Learning rate </p>\n": "<p>\u5b66\u4e60\u7387</p>\n",
|
||||
"<p>List of files </p>\n": "<p>\u6587\u4ef6\u6e05\u5355</p>\n",
|
||||
"<p>Log samples </p>\n": "<p>\u65e5\u5fd7\u6837\u672c</p>\n",
|
||||
"<p>Make the gradients zero </p>\n": "<p>\u5c06\u6e10\u53d8\u8bbe\u4e3a\u96f6</p>\n",
|
||||
"<p>Move data to device </p>\n": "<p>\u5c06\u6570\u636e\u79fb\u52a8\u5230\u8bbe\u5907</p>\n",
|
||||
"<p>New line in the console </p>\n": "<p>\u63a7\u5236\u53f0\u4e2d\u7684\u65b0\u884c</p>\n",
|
||||
"<p>Number of channels in the image. <span translate=no>_^_0_^_</span> for RGB. </p>\n": "<p>\u56fe\u50cf\u4e2d\u7684\u901a\u9053\u6570\u3002<span translate=no>_^_0_^_</span>\u5bf9\u4e8e RGB\u3002</p>\n",
|
||||
"<p>Number of channels in the initial feature map </p>\n": "<p>\u521d\u59cb\u7279\u5f81\u56fe\u4e2d\u7684\u9891\u9053\u6570\u91cf</p>\n",
|
||||
"<p>Number of samples to generate </p>\n": "<p>\u8981\u751f\u6210\u7684\u6837\u672c\u6570</p>\n",
|
||||
"<p>Number of time steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u65f6\u95f4\u6b65\u6570<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Number of training epochs </p>\n": "<p>\u8bad\u7ec3\u5468\u671f\u7684\u6570\u91cf</p>\n",
|
||||
"<p>Remove noise for <span translate=no>_^_0_^_</span> steps </p>\n": "<p>\u6d88\u9664<span translate=no>_^_0_^_</span>\u53f0\u9636\u566a\u97f3</p>\n",
|
||||
"<p>Sample from <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6837\u672c\u6765\u81ea<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Sample some images </p>\n": "<p>\u5bf9\u4e00\u4e9b\u56fe\u50cf\u8fdb\u884c\u91c7\u6837</p>\n",
|
||||
"<p>Save the model </p>\n": "<p>\u4fdd\u5b58\u6a21\u578b</p>\n",
|
||||
"<p>Set configurations. You can override the defaults by passing the values in the dictionary. </p>\n": "<p>\u8bbe\u7f6e\u914d\u7f6e\u3002\u60a8\u53ef\u4ee5\u901a\u8fc7\u5728\u5b57\u5178\u4e2d\u4f20\u9012\u503c\u6765\u8986\u76d6\u9ed8\u8ba4\u503c\u3002</p>\n",
|
||||
"<p>Set models for saving and loading </p>\n": "<p>\u8bbe\u7f6e\u7528\u4e8e\u4fdd\u5b58\u548c\u52a0\u8f7d\u7684\u6a21\u578b</p>\n",
|
||||
"<p>Start and run the training loop </p>\n": "<p>\u542f\u52a8\u5e76\u8fd0\u884c\u8bad\u7ec3\u5faa\u73af</p>\n",
|
||||
"<p>Take an optimization step </p>\n": "<p>\u91c7\u53d6\u4f18\u5316\u6b65\u9aa4</p>\n",
|
||||
"<p>The list of booleans that indicate whether to use attention at each resolution </p>\n": "<p>\u6307\u793a\u662f\u5426\u5728\u6bcf\u4e2a\u5206\u8fa8\u7387\u4e0b\u4f7f\u7528\u6ce8\u610f\u529b\u7684\u5e03\u5c14\u503c\u5217\u8868</p>\n",
|
||||
"<p>The list of channel numbers at each resolution. The number of channels is <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6bcf\u79cd\u5206\u8fa8\u7387\u4e0b\u7684\u901a\u9053\u7f16\u53f7\u5217\u8868\u3002\u9891\u9053\u7684\u6570\u91cf\u662f<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Track the loss </p>\n": "<p>\u8ffd\u8e2a\u635f\u5931</p>\n",
|
||||
"<p>Train the model </p>\n": "<p>\u8bad\u7ec3\u6a21\u578b</p>\n",
|
||||
"<p>Transformations to resize the image and convert to tensor </p>\n": "<p>\u7528\u4e8e\u8c03\u6574\u56fe\u50cf\u5927\u5c0f\u5e76\u8f6c\u6362\u4e3a\u5f20\u91cf\u7684\u8f6c\u6362</p>\n",
|
||||
"<p>U-Net model for <span translate=no>_^_0_^_</span> </p>\n": "<p>U-Net \u6a21\u578b\u7528\u4e8e<span translate=no>_^_0_^_</span></p>\n",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM) training": "\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM) \u8bad\u7ec3",
|
||||
"Training code for Denoising Diffusion Probabilistic Model.": "\u964d\u566a\u6269\u6563\u6982\u7387\u6a21\u578b\u7684\u8bad\u7ec3\u4ee3\u7801\u3002"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/diffusion/ddpm/index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a></h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation/tutorial of the paper <a href=\"https://arxiv.org/abs/2006.11239\">Denoising Diffusion Probabilistic Models</a>.</p>\n<p>In simple terms, we get an image from data and add noise step by step. Then We train a model to predict that noise at each step and use the model to generate images.</p>\n<p>Here is the <a href=\"https://nn.labml.ai/diffusion/ddpm/unet.html\">UNet model</a> that predicts the noise and <a href=\"https://nn.labml.ai/diffusion/ddpm/experiment.html\">training code</a>. <a href=\"https://nn.labml.ai/diffusion/ddpm/evaluate.html\">This file</a> can generate samples and interpolations from a trained model. </p>\n": "<h1><a href=\"https://nn.labml.ai/diffusion/ddpm/index.html\">\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM)</a></h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p><a href=\"https://arxiv.org/abs/2006.11239\">\u3053\u308c\u306f\u3001\u8ad6\u6587\u300c\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb\u300d<a href=\"https://pytorch.org\">\u306ePyTorch\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3067\u3059</a>\u3002</a></p>\n<p>\u7c21\u5358\u306b\u8a00\u3046\u3068\u3001\u30c7\u30fc\u30bf\u304b\u3089\u753b\u50cf\u3092\u53d6\u5f97\u3057\u3001\u6bb5\u968e\u7684\u306b\u30ce\u30a4\u30ba\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u6b21\u306b\u3001\u30e2\u30c7\u30eb\u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u3066\u5404\u30b9\u30c6\u30c3\u30d7\u3067\u305d\u306e\u30ce\u30a4\u30ba\u3092\u4e88\u6e2c\u3057\u3001\u305d\u306e\u30e2\u30c7\u30eb\u3092\u4f7f\u7528\u3057\u3066\u753b\u50cf\u3092\u751f\u6210\u3057\u307e\u3059\u3002</p>\n<p><a href=\"https://nn.labml.ai/diffusion/ddpm/unet.html\"><a href=\"https://nn.labml.ai/diffusion/ddpm/experiment.html\">\u30ce\u30a4\u30ba\u3068\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u30b3\u30fc\u30c9\u3092\u4e88\u6e2c\u3059\u308b</a> uNet \u30e2\u30c7\u30eb\u3092\u6b21\u306b\u793a\u3057\u307e\u3059</a>\u3002<a href=\"https://nn.labml.ai/diffusion/ddpm/evaluate.html\">\u3053\u306e\u30d5\u30a1\u30a4\u30eb\u3067\u306f</a>\u3001\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u6e08\u307f\u306e\u30e2\u30c7\u30eb\u304b\u3089\u30b5\u30f3\u30d7\u30eb\u3068\u88dc\u9593\u3092\u751f\u6210\u3067\u304d\u307e\u3059</p>\u3002\n",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM)": "\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM)"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/diffusion/ddpm/index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a></h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation/tutorial of the paper <a href=\"https://arxiv.org/abs/2006.11239\">Denoising Diffusion Probabilistic Models</a>.</p>\n<p>In simple terms, we get an image from data and add noise step by step. Then We train a model to predict that noise at each step and use the model to generate images.</p>\n<p>Here is the <a href=\"https://nn.labml.ai/diffusion/ddpm/unet.html\">UNet model</a> that predicts the noise and <a href=\"https://nn.labml.ai/diffusion/ddpm/experiment.html\">training code</a>. <a href=\"https://nn.labml.ai/diffusion/ddpm/evaluate.html\">This file</a> can generate samples and interpolations from a trained model. </p>\n": "<h1><a href=\"https://nn.labml.ai/diffusion/ddpm/index.html\">\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 (DDPM)</a></h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>\u0db8\u0dd9\u0dba <a href=\"https://pytorch.org\">PyTorch</a> \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8/\u0db1\u0dd2\u0db6\u0db1\u0dca\u0db0\u0db1\u0dba\u0d9a\u0dd2 \u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 <a href=\"https://arxiv.org/abs/2006.11239\">Denoising Diffusion Probilistic \u0d86\u0d9a\u0dd8\u0dad\u0dd2</a>.</p>\n<p>\u0dc3\u0dbb\u0dc5\u0dc0 \u0d9a\u0dd2\u0dc0\u0dc4\u0ddc\u0dad\u0dca, \u0d85\u0db4\u0dd2 \u0daf\u0dad\u0dca\u0dad \u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0dbb\u0dd6\u0db4\u0dba\u0d9a\u0dca \u0dbd\u0db6\u0dcf\u0d9c\u0dd9\u0db1 \u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0dd9\u0db1\u0dca \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0dc1\u0db6\u0dca\u0daf\u0dba \u0d91\u0d9a\u0dca \u0d9a\u0dbb\u0db8\u0dd4. \u0d89\u0db1\u0dca\u0db4\u0dc3\u0dd4 \u0d85\u0db4\u0dd2 \u0dc3\u0dd1\u0db8 \u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0d9a\u0daf\u0dd3\u0db8 \u0d91\u0db8 \u0dc1\u0db6\u0dca\u0daf\u0dba \u0db4\u0dd4\u0dbb\u0ddd\u0d9a\u0dae\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d9a\u0dca \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb \u0dbb\u0dd6\u0db4 \u0da2\u0db1\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db8\u0dd4.</p>\n<p>\u0dc1\u0db6\u0dca\u0daf\u0dba \u0dc3\u0dc4 <a href=\"https://nn.labml.ai/diffusion/ddpm/experiment.html\">\u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dda\u0dad\u0dba</a> \u0db4\u0dd4\u0dbb\u0ddd\u0d9a\u0dae\u0db1\u0dba \u0d9a\u0dbb\u0db1 <a href=\"https://nn.labml.ai/diffusion/ddpm/unet.html\">UNET \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba</a> \u0db8\u0dd9\u0db1\u0dca\u0db1. <a href=\"https://nn.labml.ai/diffusion/ddpm/evaluate.html\">\u0db8\u0dd9\u0db8 \u0d9c\u0ddc\u0db1\u0dd4\u0dc0\u0da7</a> \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d9a\u0dd2\u0db1\u0dca \u0dc3\u0dcf\u0db8\u0dca\u0db4\u0dbd \u0dc3\u0dc4 \u0d85\u0db1\u0dca\u0dad\u0dbb\u0dca\u0db1\u0dd2\u0dc0\u0dda\u0dc1\u0db1\u0dba\u0db1\u0dca \u0da2\u0db1\u0db1\u0dba \u0d9a\u0dc5 \u0dc4\u0dd0\u0d9a\u0dd2\u0dba.</p>\n",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM)": "\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 (DDPM)"
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"<h1><a href=\"https://nn.labml.ai/diffusion/ddpm/index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a></h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>This is a <a href=\"https://pytorch.org\">PyTorch</a> implementation/tutorial of the paper <a href=\"https://arxiv.org/abs/2006.11239\">Denoising Diffusion Probabilistic Models</a>.</p>\n<p>In simple terms, we get an image from data and add noise step by step. Then We train a model to predict that noise at each step and use the model to generate images.</p>\n<p>Here is the <a href=\"https://nn.labml.ai/diffusion/ddpm/unet.html\">UNet model</a> that predicts the noise and <a href=\"https://nn.labml.ai/diffusion/ddpm/experiment.html\">training code</a>. <a href=\"https://nn.labml.ai/diffusion/ddpm/evaluate.html\">This file</a> can generate samples and interpolations from a trained model. </p>\n": "<h1><a href=\"https://nn.labml.ai/diffusion/ddpm/index.html\">\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM)</a></h1>\n<p><a href=\"https://colab.research.google.com/github/labmlai/annotated_deep_learning_paper_implementations/blob/master/labml_nn/diffusion/ddpm/experiment.ipynb\"><span translate=no>_^_0_^_</span></a></p>\n<p>\u8fd9\u662f\u300a<a href=\"https://arxiv.org/abs/2006.11239\">\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b</a>\u300b\u8bba\u6587\u7684 <a href=\"https://pytorch.org\">PyTorch</a> \u5b9e\u73b0/\u6559\u7a0b\u3002</p>\n<p>\u7b80\u800c\u8a00\u4e4b\uff0c\u6211\u4eec\u4ece\u6570\u636e\u4e2d\u83b7\u53d6\u56fe\u50cf\u5e76\u9010\u6b65\u6dfb\u52a0\u566a\u70b9\u3002\u7136\u540e\uff0c\u6211\u4eec\u8bad\u7ec3\u4e00\u4e2a\u6a21\u578b\u6765\u9884\u6d4b\u6bcf\u4e2a\u6b65\u9aa4\u7684\u566a\u58f0\uff0c\u5e76\u4f7f\u7528\u8be5\u6a21\u578b\u751f\u6210\u56fe\u50cf\u3002</p>\n<p>\u8fd9\u662f\u9884\u6d4b\u566a\u58f0\u548c<a href=\"https://nn.labml.ai/diffusion/ddpm/experiment.html\">\u8bad\u7ec3\u4ee3\u7801</a>\u7684 <a href=\"https://nn.labml.ai/diffusion/ddpm/unet.html\">UNet \u6a21\u578b</a>\u3002<a href=\"https://nn.labml.ai/diffusion/ddpm/evaluate.html\">\u6b64\u6587\u4ef6</a>\u53ef\u4ee5\u4ece\u7ecf\u8fc7\u8bad\u7ec3\u7684\u6a21\u578b\u751f\u6210\u6837\u672c\u548c\u63d2\u503c\u3002</p>\n",
|
||||
"Denoising Diffusion Probabilistic Models (DDPM)": "\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM)"
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"<h1>U-Net model for <a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a></h1>\n<p>This is a <a href=\"../../unet/index.html\">U-Net</a> based model to predict noise <span translate=no>_^_0_^_</span>.</p>\n<p>U-Net is a gets it's name from the U shape in the model diagram. It processes a given image by progressively lowering (halving) the feature map resolution and then increasing the resolution. There are pass-through connection at each resolution.</p>\n<p><span translate=no>_^_1_^_</span></p>\n<p>This implementation contains a bunch of modifications to original U-Net (residual blocks, multi-head attention) and also adds time-step embeddings <span translate=no>_^_2_^_</span>.</p>\n": "<h1><a href=\"index.html\">\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM</a>) \u7528\u306e U-Net \u30e2\u30c7\u30eb</h1>\n<p>\u3053\u308c\u306f <a href=\"../../unet/index.html\">U-Net</a> <span translate=no>_^_0_^_</span> \u30d9\u30fc\u30b9\u306e\u30ce\u30a4\u30ba\u4e88\u6e2c\u30e2\u30c7\u30eb\u3067\u3059\u3002</p>\n<p>U-Net\u306f\u3001\u30e2\u30c7\u30eb\u56f3\u306eU\u5b57\u5f62\u306b\u3061\u306a\u3093\u3067\u540d\u4ed8\u3051\u3089\u308c\u307e\u3057\u305f\u3002\u7279\u5fb4\u30de\u30c3\u30d7\u306e\u89e3\u50cf\u5ea6\u3092\u6bb5\u968e\u7684\u306b\u4f4e\u304f (\u534a\u5206\u306b)\u3001\u6b21\u306b\u89e3\u50cf\u5ea6\u3092\u4e0a\u3052\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u3001\u7279\u5b9a\u306e\u753b\u50cf\u3092\u51e6\u7406\u3057\u307e\u3059\u3002\u5404\u89e3\u50cf\u5ea6\u306b\u306f\u30d1\u30b9\u30b9\u30eb\u30fc\u63a5\u7d9a\u304c\u3042\u308a\u307e\u3059</p>\u3002\n<p><span translate=no>_^_1_^_</span></p>\n<p>\u3053\u306e\u5b9f\u88c5\u306b\u306f\u3001\u30aa\u30ea\u30b8\u30ca\u30eb\u306e U-Net \u306b\u591a\u6570\u306e\u5909\u66f4\uff08\u6b8b\u7559\u30d6\u30ed\u30c3\u30af\u3001\u30de\u30eb\u30c1\u30d8\u30c3\u30c9\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\uff09\u304c\u542b\u307e\u308c\u3066\u304a\u308a\u3001\u30bf\u30a4\u30e0\u30b9\u30c6\u30c3\u30d7\u306e\u57cb\u3081\u8fbc\u307f\u3082\u8ffd\u52a0\u3055\u308c\u3066\u3044\u307e\u3059\u3002<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<h2>U-Net</h2>\n": "<h2>\u30e6\u30fc\u30cd\u30c3\u30c8</h2>\n",
|
||||
"<h3>Attention block</h3>\n<p>This is similar to <a href=\"../../transformers/mha.html\">transformer multi-head attention</a>.</p>\n": "<h3>\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30d6\u30ed\u30c3\u30af</h3>\n<p><a href=\"../../transformers/mha.html\">\u3053\u308c\u306f\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fc\u306e\u30de\u30eb\u30c1\u30d8\u30c3\u30c9\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u306b\u4f3c\u3066\u3044\u307e\u3059</a>\u3002</p>\n",
|
||||
"<h3>Down block</h3>\n<p>This combines <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span>. These are used in the first half of U-Net at each resolution.</p>\n": "<h3>\u30c0\u30a6\u30f3\u30d6\u30ed\u30c3\u30af</h3>\n<p><span translate=no>_^_0_^_</span>\u3053\u308c\u306f\u3068\u3092\u7d44\u307f\u5408\u308f\u305b\u305f\u3082\u306e\u3067\u3059<span translate=no>_^_1_^_</span>\u3002\u3053\u308c\u3089\u306fU-Net\u306e\u524d\u534a\u3067\u305d\u308c\u305e\u308c\u306e\u89e3\u50cf\u5ea6\u3067\u4f7f\u308f\u308c\u3066\u3044\u307e\u3059</p>\u3002\n",
|
||||
"<h3>Embeddings for <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u306e\u57cb\u3081\u8fbc\u307f <span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Middle block</h3>\n<p>It combines a <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span>, followed by another <span translate=no>_^_2_^_</span>. This block is applied at the lowest resolution of the U-Net.</p>\n": "<h3>\u30df\u30c9\u30eb\u30d6\u30ed\u30c3\u30af</h3>\n<p>a \u3068<span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u3001<span translate=no>_^_2_^_</span>\u306e\u5f8c\u306b\u7d9a\u304f\u5225\u306e\u3082\u306e\u3092\u7d44\u307f\u5408\u308f\u305b\u307e\u3059\u3002\u3053\u306e\u30d6\u30ed\u30c3\u30af\u306f U-Net \u306e\u6700\u4f4e\u89e3\u50cf\u5ea6\u3067\u9069\u7528\u3055\u308c\u307e\u3059</p>\u3002\n",
|
||||
"<h3>Residual block</h3>\n<p>A residual block has two convolution layers with group normalization. Each resolution is processed with two residual blocks.</p>\n": "<h3>\u6b8b\u7559\u30d6\u30ed\u30c3\u30af</h3>\n<p>\u6b8b\u5dee\u30d6\u30ed\u30c3\u30af\u306b\u306f\u3001\u30b0\u30eb\u30fc\u30d7\u6b63\u898f\u5316\u3055\u308c\u305f 2 \u3064\u306e\u7573\u307f\u8fbc\u307f\u5c64\u304c\u3042\u308a\u307e\u3059\u3002\u5404\u89e3\u50cf\u5ea6\u306f 2 \u3064\u306e\u6b8b\u5dee\u30d6\u30ed\u30c3\u30af\u3067\u51e6\u7406\u3055\u308c\u307e\u3059</p>\u3002\n",
|
||||
"<h3>Scale down the feature map by <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u30d5\u30a3\u30fc\u30c1\u30e3\u30de\u30c3\u30d7\u3092\u6b21\u306e\u65b9\u6cd5\u3067\u30b9\u30b1\u30fc\u30eb\u30c0\u30a6\u30f3\u3057\u307e\u3059\u3002<span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Scale up the feature map by <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u6b21\u306e\u65b9\u6cd5\u3067\u30d5\u30a3\u30fc\u30c1\u30e3\u30de\u30c3\u30d7\u3092\u30b9\u30b1\u30fc\u30eb\u30a2\u30c3\u30d7\u3057\u307e\u3059\u3002<span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Swish actiavation function</h3>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h3>\u30b9\u30a4\u30c3\u30c1\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u6a5f\u80fd</h3>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<h3>Up block</h3>\n<p>This combines <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span>. These are used in the second half of U-Net at each resolution.</p>\n": "<h3>\u30a2\u30c3\u30d7\u30d6\u30ed\u30c3\u30af</h3>\n<p><span translate=no>_^_0_^_</span>\u3053\u308c\u306f\u3068\u3092\u7d44\u307f\u5408\u308f\u305b\u305f\u3082\u306e\u3067\u3059<span translate=no>_^_1_^_</span>\u3002\u3053\u308c\u3089\u306fU-Net\u306e\u5f8c\u534a\u3067\u305d\u308c\u305e\u308c\u306e\u89e3\u50cf\u5ea6\u3067\u4f7f\u308f\u308c\u3066\u3044\u307e\u3059</p>\u3002\n",
|
||||
"<h4>First half of U-Net - decreasing resolution</h4>\n": "<h4>U-Net\u306e\u524d\u534a-\u89e3\u50cf\u5ea6\u306e\u4f4e\u4e0b</h4>\n",
|
||||
"<h4>Second half of U-Net - increasing resolution</h4>\n": "<h4>U-Net\u306e\u5f8c\u534a-\u89e3\u50cf\u5ea6\u306e\u5411\u4e0a</h4>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> at the same resolution </p>\n": "<p><span translate=no>_^_0_^_</span>\u540c\u3058\u89e3\u50cf\u5ea6\u3067</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is not used, but it's kept in the arguments because for the attention layer function signature to match with <span translate=no>_^_1_^_</span>. </p>\n": "<p><span translate=no>_^_0_^_</span>\u306f\u4f7f\u308f\u308c\u3066\u3044\u307e\u305b\u3093\u304c\u3001<span translate=no>_^_1_^_</span>\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30ec\u30a4\u30e4\u30fc\u306e\u95a2\u6570\u30b7\u30b0\u30cd\u30c1\u30e3\u3068\u306e\u30de\u30c3\u30c1\u30f3\u30b0\u306e\u305f\u3081\u5f15\u6570\u306b\u306f\u6b8b\u3055\u308c\u3066\u3044\u307e\u3059\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> will store outputs at each resolution for skip connection </p>\n": "<p><span translate=no>_^_0_^_</span>\u63a5\u7d9a\u3092\u30b9\u30ad\u30c3\u30d7\u3067\u304d\u308b\u3088\u3046\u306b\u3001\u51fa\u529b\u3092\u5404\u89e3\u50cf\u5ea6\u3067\u4fdd\u5b58\u3057\u307e\u3059</p>\n",
|
||||
"<p>Activation </p>\n": "<p>\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3</p>\n",
|
||||
"<p>Add <span translate=no>_^_0_^_</span> </p>\n": "<p>[\u8ffd\u52a0] <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Add skip connection </p>\n": "<p>\u30b9\u30ad\u30c3\u30d7\u63a5\u7d9a\u3092\u8ffd\u52a0</p>\n",
|
||||
"<p>Add the shortcut connection and return </p>\n": "<p>\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u63a5\u7d9a\u3092\u8ffd\u52a0\u3057\u3066\u623b\u308b</p>\n",
|
||||
"<p>Add time embeddings </p>\n": "<p>\u6642\u9593\u57cb\u3081\u8fbc\u307f\u3092\u8ffd\u52a0</p>\n",
|
||||
"<p>Calculate scaled dot-product <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u3055\u308c\u305f\u30c9\u30c3\u30c8\u30d7\u30ed\u30c0\u30af\u30c8\u306e\u8a08\u7b97 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Change <span translate=no>_^_0_^_</span> to shape <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u5f62\u72b6\u306b\u5909\u66f4 <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Change to shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u5f62\u72b6\u306b\u5909\u66f4 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Combine the set of modules </p>\n": "<p>\u30e2\u30b8\u30e5\u30fc\u30eb\u30bb\u30c3\u30c8\u3092\u7d44\u307f\u5408\u308f\u305b\u308b</p>\n",
|
||||
"<p>Create sinusoidal position embeddings <a href=\"../../transformers/positional_encoding.html\">same as those from the transformer</a></p>\n<span translate=no>_^_0_^_</span><p>where <span translate=no>_^_1_^_</span> is <span translate=no>_^_2_^_</span> </p>\n": "<p><a href=\"../../transformers/positional_encoding.html\">\u5909\u5727\u5668\u3068\u540c\u3058\u6b63\u5f26\u6ce2\u4f4d\u7f6e\u57cb\u3081\u8fbc\u307f\u3092\u4f5c\u6210</a></p>\n<span translate=no>_^_0_^_</span><p><span translate=no>_^_1_^_</span>\u3069\u3053 <span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p>Default <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30c7\u30d5\u30a9\u30eb\u30c8 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Down sample at all resolutions except the last </p>\n": "<p>\u6700\u5f8c\u306e\u89e3\u50cf\u5ea6\u3092\u9664\u304f\u3059\u3079\u3066\u306e\u89e3\u50cf\u5ea6\u306e\u30c0\u30a6\u30f3\u30b5\u30f3\u30d7\u30eb</p>\n",
|
||||
"<p>Final block to reduce the number of channels </p>\n": "<p>\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3092\u6e1b\u3089\u3059\u305f\u3081\u306e\u6700\u5f8c\u306e\u30d6\u30ed\u30c3\u30af</p>\n",
|
||||
"<p>Final normalization and convolution </p>\n": "<p>\u6700\u7d42\u7684\u306a\u6b63\u898f\u5316\u3068\u7573\u307f\u8fbc\u307f</p>\n",
|
||||
"<p>Final normalization and convolution layer </p>\n": "<p>\u6700\u7d42\u6b63\u898f\u5316\u3068\u7573\u307f\u8fbc\u307f\u5c64</p>\n",
|
||||
"<p>First convolution layer </p>\n": "<p>\u6700\u521d\u306e\u7573\u307f\u8fbc\u307f\u5c64</p>\n",
|
||||
"<p>First half of U-Net </p>\n": "<p>\u30e6\u30fc\u30cd\u30c3\u30c8\u524d\u534a</p>\n",
|
||||
"<p>First linear layer </p>\n": "<p>\u7b2c 1 \u7dda\u5f62\u30ec\u30a4\u30e4\u30fc</p>\n",
|
||||
"<p>For each resolution </p>\n": "<p>\u5404\u89e3\u50cf\u5ea6\u306b\u3064\u3044\u3066</p>\n",
|
||||
"<p>Get image projection </p>\n": "<p>\u30a4\u30e1\u30fc\u30b8\u30d7\u30ed\u30b8\u30a7\u30af\u30b7\u30e7\u30f3\u3092\u53d6\u5f97</p>\n",
|
||||
"<p>Get query, key, and values (concatenated) and shape it to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30af\u30a8\u30ea\u3001\u30ad\u30fc\u3001\u5024 (\u9023\u7d50) \u3092\u53d6\u5f97\u3057\u3001\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u5f62\u3092\u6574\u3048\u307e\u3059 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Get shape </p>\n": "<p>\u30b7\u30a7\u30a4\u30d7\u3092\u53d6\u5f97</p>\n",
|
||||
"<p>Get the skip connection from first half of U-Net and concatenate </p>\n": "<p>U-Net\u306e\u524d\u534a\u304b\u3089\u30b9\u30ad\u30c3\u30d7\u63a5\u7d9a\u3092\u53d6\u5f97\u3057\u3066\u9023\u7d50\u3059\u308b</p>\n",
|
||||
"<p>Get time-step embeddings </p>\n": "<p>\u30bf\u30a4\u30e0\u30b9\u30c6\u30c3\u30d7\u306e\u57cb\u3081\u8fbc\u307f\u3092\u5165\u624b</p>\n",
|
||||
"<p>Group normalization and the first convolution layer </p>\n": "<p>\u30b0\u30eb\u30fc\u30d7\u6b63\u898f\u5316\u3068\u6700\u521d\u306e\u7573\u307f\u8fbc\u307f\u5c64</p>\n",
|
||||
"<p>Group normalization and the second convolution layer </p>\n": "<p>\u30b0\u30eb\u30fc\u30d7\u6b63\u898f\u5316\u3068 2 \u756a\u76ee\u306e\u7573\u307f\u8fbc\u307f\u5c64</p>\n",
|
||||
"<p>If the number of input channels is not equal to the number of output channels we have to project the shortcut connection </p>\n": "<p>\u5165\u529b\u30c1\u30e3\u30f3\u30cd\u30eb\u306e\u6570\u304c\u51fa\u529b\u30c1\u30e3\u30f3\u30cd\u30eb\u306e\u6570\u3068\u7b49\u3057\u304f\u306a\u3044\u5834\u5408\u306f\u3001\u30b7\u30e7\u30fc\u30c8\u30ab\u30c3\u30c8\u63a5\u7d9a\u3092\u6295\u5f71\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002</p>\n",
|
||||
"<p>Linear layer for final transformation </p>\n": "<p>\u6700\u7d42\u5909\u63db\u7528\u306e\u7dda\u5f62\u30ec\u30a4\u30e4\u30fc</p>\n",
|
||||
"<p>Linear layer for time embeddings </p>\n": "<p>\u6642\u9593\u57cb\u3081\u8fbc\u307f\u7528\u306e\u7dda\u5f62\u30ec\u30a4\u30e4\u30fc</p>\n",
|
||||
"<p>Middle (bottom) </p>\n": "<p>\u4e2d\u592e (\u4e0b\u90e8)</p>\n",
|
||||
"<p>Middle block </p>\n": "<p>\u30df\u30c9\u30eb\u30d6\u30ed\u30c3\u30af</p>\n",
|
||||
"<p>Multiply by values </p>\n": "<p>\u5024\u306b\u3088\u308b\u4e57\u7b97</p>\n",
|
||||
"<p>Normalization layer </p>\n": "<p>\u6b63\u898f\u5316\u30ec\u30a4\u30e4\u30fc</p>\n",
|
||||
"<p>Number of channels </p>\n": "<p>\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</p>\n",
|
||||
"<p>Number of output channels at this resolution </p>\n": "<p>\u3053\u306e\u89e3\u50cf\u5ea6\u3067\u306e\u51fa\u529b\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</p>\n",
|
||||
"<p>Number of resolutions </p>\n": "<p>\u89e3\u50cf\u5ea6\u306e\u6570</p>\n",
|
||||
"<p>Project image into feature map </p>\n": "<p>\u753b\u50cf\u3092\u30d5\u30a3\u30fc\u30c1\u30e3\u30de\u30c3\u30d7\u306b\u6295\u5f71</p>\n",
|
||||
"<p>Projections for query, key and values </p>\n": "<p>\u30af\u30a8\u30ea\u3001\u30ad\u30fc\u3001\u5024\u306e\u6295\u5f71</p>\n",
|
||||
"<p>Reshape to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u5f62\u72b6\u3092\u6b21\u306e\u5f62\u5f0f\u306b\u5909\u66f4 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Scale for dot-product attention </p>\n": "<p>\u30c9\u30c3\u30c8\u30d7\u30ed\u30c0\u30af\u30c8\u30fb\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30fb\u30b9\u30b1\u30fc\u30eb</p>\n",
|
||||
"<p>Second convolution layer </p>\n": "<p>2 \u756a\u76ee\u306e\u7573\u307f\u8fbc\u307f\u5c64</p>\n",
|
||||
"<p>Second half of U-Net </p>\n": "<p>\u30e6\u30fc\u30cd\u30c3\u30c8\u5f8c\u534a</p>\n",
|
||||
"<p>Second linear layer </p>\n": "<p>2 \u756a\u76ee\u306e\u7dda\u5f62\u30ec\u30a4\u30e4\u30fc</p>\n",
|
||||
"<p>Softmax along the sequence dimension <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30b7\u30fc\u30b1\u30f3\u30b9\u6b21\u5143\u306b\u6cbf\u3063\u305f\u30bd\u30d5\u30c8\u30de\u30c3\u30af\u30b9 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Split query, key, and values. Each of them will have shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30af\u30a8\u30ea\u3001\u30ad\u30fc\u3001\u5024\u3092\u5206\u5272\u3057\u307e\u3059\u3002\u305d\u308c\u305e\u308c\u306b\u5f62\u304c\u3042\u308a\u307e\u3059 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>The input has <span translate=no>_^_0_^_</span> because we concatenate the output of the same resolution from the first half of the U-Net </p>\n": "<p>\u5165\u529b\u306f\u3001<span translate=no>_^_0_^_</span> U-Net\u306e\u524d\u534a\u304b\u3089\u540c\u3058\u89e3\u50cf\u5ea6\u306e\u51fa\u529b\u3092\u9023\u7d50\u3057\u3066\u3044\u308b\u305f\u3081\u3067\u3059\u3002</p>\n",
|
||||
"<p>Time embedding layer. Time embedding has <span translate=no>_^_0_^_</span> channels </p>\n": "<p>\u6642\u9593\u57cb\u3081\u8fbc\u307f\u30ec\u30a4\u30e4\u30fc\u3002\u6642\u9593\u57cb\u3081\u8fbc\u307f\u306b\u306f\u30c1\u30e3\u30f3\u30cd\u30eb\u304c\u3042\u308a\u307e\u3059 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Transform to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u306b\u5909\u63db <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Transform with the MLP </p>\n": "<p>MLP \u306b\u3088\u308b\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30e1\u30fc\u30b7\u30e7\u30f3</p>\n",
|
||||
"<p>Up sample at all resolutions except last </p>\n": "<p>\u524d\u56de\u3092\u9664\u304f\u3059\u3079\u3066\u306e\u89e3\u50cf\u5ea6\u3067\u30b5\u30f3\u30d7\u30eb\u3092\u30a2\u30c3\u30d7</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> has shape <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> has shape <span translate=no>_^_3_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u5f62\u304c\u3042\u308b <span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u5f62\u304c\u3042\u308b <span translate=no>_^_3_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the image. <span translate=no>_^_1_^_</span> for RGB. </li>\n<li><span translate=no>_^_2_^_</span> is number of channels in the initial feature map that we transform the image into </li>\n<li><span translate=no>_^_3_^_</span> is the list of channel numbers at each resolution. The number of channels is <span translate=no>_^_4_^_</span> </li>\n<li><span translate=no>_^_5_^_</span> is a list of booleans that indicate whether to use attention at each resolution </li>\n<li><span translate=no>_^_6_^_</span> is the number of <span translate=no>_^_7_^_</span> at each resolution</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u753b\u50cf\u5185\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3067\u3059\u3002<span translate=no>_^_1_^_</span>RGB \u7528\u3067\u3059\u3002</li>\n<li><span translate=no>_^_2_^_</span>\u753b\u50cf\u3092\u5909\u63db\u3059\u308b\u6700\u521d\u306e\u7279\u5fb4\u30de\u30c3\u30d7\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3067\u3059</li>\n<li><span translate=no>_^_3_^_</span>\u306f\u3001\u5404\u89e3\u50cf\u5ea6\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u756a\u53f7\u306e\u30ea\u30b9\u30c8\u3067\u3059\u3002\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u306f <span translate=no>_^_4_^_</span></li>\n<li><span translate=no>_^_5_^_</span>\u305d\u308c\u305e\u308c\u306e\u89e3\u50cf\u5ea6\u3067\u6ce8\u610f\u3092\u5411\u3051\u308b\u3079\u304d\u304b\u3069\u3046\u304b\u3092\u793a\u3059\u30d6\u30fc\u30ea\u30a2\u30f3\u306e\u30ea\u30b9\u30c8\u3067\u3059</li>\n<li><span translate=no>_^_6_^_</span><span translate=no>_^_7_^_</span>\u306f\u5404\u89e3\u50cf\u5ea6\u3067\u306e\u306e\u6570\u3067\u3059</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the input </li>\n<li><span translate=no>_^_1_^_</span> is the number of heads in multi-head attention </li>\n<li><span translate=no>_^_2_^_</span> is the number of dimensions in each head </li>\n<li><span translate=no>_^_3_^_</span> is the number of groups for <a href=\"../../normalization/group_norm/index.html\">group normalization</a></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u5165\u529b\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u30de\u30eb\u30c1\u30d8\u30c3\u30c9\u30fb\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u306e\u30d8\u30c3\u30c9\u6570\u3067\u3059</li>\n<li><span translate=no>_^_2_^_</span>\u306f\u5404\u30d8\u30c3\u30c9\u306e\u6b21\u5143\u6570\u3067\u3059</li>\n<li><span translate=no>_^_3_^_</span><a href=\"../../normalization/group_norm/index.html\">\u306f\u30b0\u30eb\u30fc\u30d7\u6b63\u898f\u5316\u306e\u5bfe\u8c61\u3068\u306a\u308b\u30b0\u30eb\u30fc\u30d7\u306e\u6570\u3067\u3059</a></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of dimensions in the embedding</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u57cb\u3081\u8fbc\u307f\u306e\u6b21\u5143\u6570\u3067\u3059</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of input channels </li>\n<li><span translate=no>_^_1_^_</span> is the number of input channels </li>\n<li><span translate=no>_^_2_^_</span> is the number channels in the time step (<span translate=no>_^_3_^_</span>) embeddings </li>\n<li><span translate=no>_^_4_^_</span> is the number of groups for <a href=\"../../normalization/group_norm/index.html\">group normalization</a> </li>\n<li><span translate=no>_^_5_^_</span> is the dropout rate</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u5165\u529b\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u306f\u5165\u529b\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</li>\n<li><span translate=no>_^_2_^_</span>\u306f\u30bf\u30a4\u30e0\u30b9\u30c6\u30c3\u30d7 (<span translate=no>_^_3_^_</span>) \u57cb\u3081\u8fbc\u307f\u306e\u6570\u30c1\u30e3\u30f3\u30cd\u30eb\u3067\u3059</li>\n<li><span translate=no>_^_4_^_</span><a href=\"../../normalization/group_norm/index.html\">\u306f\u30b0\u30eb\u30fc\u30d7\u6b63\u898f\u5316\u306e\u5bfe\u8c61\u3068\u306a\u308b\u30b0\u30eb\u30fc\u30d7\u306e\u6570\u3067\u3059</a></li>\n<li><span translate=no>_^_5_^_</span>\u8131\u843d\u7387\u3067\u3059</li></ul>\n",
|
||||
"U-Net model for Denoising Diffusion Probabilistic Models (DDPM)": "\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM) \u7528\u306e U-Net \u30e2\u30c7\u30eb",
|
||||
"UNet model for Denoising Diffusion Probabilistic Models (DDPM)": "\u30ce\u30a4\u30ba\u9664\u53bb\u62e1\u6563\u78ba\u7387\u30e2\u30c7\u30eb (DDPM) \u7528\u306e UNet \u30e2\u30c7\u30eb"
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"<h1>U-Net model for <a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a></h1>\n<p>This is a <a href=\"../../unet/index.html\">U-Net</a> based model to predict noise <span translate=no>_^_0_^_</span>.</p>\n<p>U-Net is a gets it's name from the U shape in the model diagram. It processes a given image by progressively lowering (halving) the feature map resolution and then increasing the resolution. There are pass-through connection at each resolution.</p>\n<p><span translate=no>_^_1_^_</span></p>\n<p>This implementation contains a bunch of modifications to original U-Net (residual blocks, multi-head attention) and also adds time-step embeddings <span translate=no>_^_2_^_</span>.</p>\n": "<h1><a href=\"index.html\">\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba (\u0da9\u0dd3\u0da9\u0dd3\u0db4\u0dd3\u0d91\u0db8\u0dca)</a></h1>\n<p>\u0dc1\u0db6\u0dca\u0daf\u0dba\u0db4\u0dd4\u0dbb\u0ddd\u0d9a\u0dae\u0db1\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db8\u0dd9\u0dba <a href=\"../../unet/index.html\">\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca</a> \u0db4\u0daf\u0db1\u0db8\u0dca \u0d9a\u0dbb\u0d9c\u0dad\u0dca \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d9a\u0dd2 <span translate=no>_^_0_^_</span>. </p>\n<p>\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca\u0dba\u0db1\u0dd4 \u0d86\u0daf\u0dbb\u0dca\u0dc1 \u0dbb\u0dd6\u0db4 \u0dc3\u0da7\u0dc4\u0db1\u0dda \u0dba\u0dd6 \u0dc4\u0dd0\u0da9\u0dba\u0dd9\u0db1\u0dca \u0d91\u0dba \u0db1\u0db8 \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dd3. \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba \u0d9a\u0dca\u0dbb\u0db8\u0dba\u0dd9\u0db1\u0dca \u0d85\u0da9\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dd9\u0db1\u0dca (\u0d85\u0da9\u0d9a\u0dca) \u0dc3\u0dc4 \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba \u0dc0\u0dd0\u0da9\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dd9\u0db1\u0dca \u0d91\u0dba \u0dbd\u0db6\u0dcf \u0daf\u0dd3 \u0d87\u0dad\u0dd2 \u0dbb\u0dd6\u0db4\u0dba\u0d9a\u0dca \u0dc3\u0d9a\u0dc3\u0db1\u0dd4 \u0dbd\u0dd0\u0db6\u0dda. \u0dc3\u0dd1\u0db8 \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0d9a\u0daf\u0dd3\u0db8 \u0db4\u0dcf\u0dc3\u0dca-\u0dc4\u0dbb\u0dc4\u0dcf \u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0\u0dad\u0dcf\u0dc0\u0dba\u0d9a\u0dca \u0d87\u0dad. </p>\n<p><span translate=no>_^_1_^_</span></p>\n<p>\u0db8\u0dd9\u0db8\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0db8\u0dd4\u0dbd\u0dca \u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca (\u0d85\u0dc0\u0dc1\u0dda\u0dc2 \u0d9a\u0dd4\u0da7\u0dca\u0da7\u0dd2, \u0db6\u0dc4\u0dd4-\u0dc4\u0dd2\u0dc3 \u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba) \u0dc3\u0db3\u0dc4\u0dcf \u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dca \u0dbb\u0dcf\u0dc1\u0dd2\u0dba\u0d9a\u0dca \u0d85\u0da9\u0d82\u0d9c\u0dd4 \u0dc0\u0db1 \u0d85\u0dad\u0dbb \u0d9a\u0dcf\u0dbd-\u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb\u0dba\u0dd2 <span translate=no>_^_2_^_</span>. </p>\n",
|
||||
"<h2>U-Net</h2>\n": "<h2>\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca</h2>\n",
|
||||
"<h3>Attention block</h3>\n<p>This is similar to <a href=\"../../transformers/mha.html\">transformer multi-head attention</a>.</p>\n": "<h3>\u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba\u0dc0\u0dcf\u0dbb\u0dab</h3>\n<p>\u0db8\u0dd9\u0dba <a href=\"../../transformers/mha.html\">\u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dca \u0db6\u0dc4\u0dd4-\u0dc4\u0dd2\u0dc3 \u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba\u0da7</a>\u0dc3\u0db8\u0dcf\u0db1 \u0dc0\u0dda. </p>\n",
|
||||
"<h3>Down block</h3>\n<p>This combines <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span>. These are used in the first half of U-Net at each resolution.</p>\n": "<h3>\u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca\u0da9\u0dc0\u0dd4\u0db1\u0dca</h3>\n<p>\u0db8\u0dd9\u0dba\u0d92\u0d9a\u0dcf\u0db6\u0daf\u0dca\u0db0 <span translate=no>_^_0_^_</span> \u0dc4\u0dcf <span translate=no>_^_1_^_</span>. \u0db8\u0dd9\u0db8 \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dba\u0ddd\u0da2\u0db1\u0dcf\u0dc0 \u0daf\u0dd3 U-Net \u0db4\u0dc5\u0db8\u0dd4 \u0db7\u0dcf\u0d9c\u0dba\u0dda \u0daf\u0dd3 \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0dc0\u0dda. </p>\n",
|
||||
"<h3>Embeddings for <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca\u0dc3\u0db3\u0dc4\u0dcf <span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Middle block</h3>\n<p>It combines a <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span>, followed by another <span translate=no>_^_2_^_</span>. This block is applied at the lowest resolution of the U-Net.</p>\n": "<h3>\u0db8\u0dd0\u0daf\u0d9a\u0ddc\u0da7\u0dc3</h3>\n<p>\u0d91\u0dba\u0dad\u0dc0\u0dad\u0dca \u0d91\u0d9a\u0d9a\u0dca <span translate=no>_^_0_^_</span>\u0dc3\u0db8\u0d9f \u0d92\u0d9a\u0dcf\u0db6\u0daf\u0dca\u0db0 <span translate=no>_^_2_^_</span>\u0dc0\u0dda. <span translate=no>_^_1_^_</span> \u0db8\u0dd9\u0db8 \u0d9a\u0ddc\u0da7\u0dc3 U-Net \u0dc4\u0dd2 \u0d85\u0da9\u0dd4\u0db8 \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dd9\u0db1\u0dca \u0dba\u0ddc\u0daf\u0db1\u0dd4 \u0dbd\u0dd0\u0db6\u0dda. </p>\n",
|
||||
"<h3>Residual block</h3>\n<p>A residual block has two convolution layers with group normalization. Each resolution is processed with two residual blocks.</p>\n": "<h3>\u0d85\u0dc0\u0dc1\u0dda\u0dc2\u0d9a\u0ddc\u0da7\u0dc3</h3>\n<p>\u0d85\u0dc0\u0dc1\u0dda\u0dc2\u0d9a\u0ddc\u0da7\u0dc3\u0d9a\u0daf\u0dd3 \u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0db8\u0d9c convolution \u0dc3\u0dca\u0dae\u0dbb \u0daf\u0dd9\u0d9a\u0d9a\u0dca \u0d87\u0dad. \u0dc3\u0dd1\u0db8 \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0d9a\u0dca\u0db8 \u0d85\u0dc0\u0dc1\u0dda\u0dc2 \u0d9a\u0ddc\u0da7\u0dc3\u0dca \u0daf\u0dd9\u0d9a\u0d9a\u0dd2\u0db1\u0dca \u0dc3\u0d9a\u0dc3\u0db1\u0dd4 \u0dbd\u0dd0\u0db6\u0dda. </p>\n",
|
||||
"<h3>Scale down the feature map by <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c\u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8 \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Scale up the feature map by <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c\u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8 \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Swish actiavation function</h3>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h3>\u0dc3\u0dca\u0dc0\u0dd2\u0dc3\u0dca\u0dc2\u0dca\u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0d9a\u0dcf\u0dbb\u0dd3 \u0dc1\u0dca\u0dbb\u0dd2\u0dad\u0dba</h3>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<h3>Up block</h3>\n<p>This combines <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span>. These are used in the second half of U-Net at each resolution.</p>\n": "<h3>\u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca\u0daf\u0d9a\u0dca\u0dc0\u0dcf</h3>\n<p>\u0db8\u0dd9\u0dba\u0d92\u0d9a\u0dcf\u0db6\u0daf\u0dca\u0db0 <span translate=no>_^_0_^_</span> \u0dc4\u0dcf <span translate=no>_^_1_^_</span>. \u0dc3\u0dd1\u0db8 \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0d9a\u0daf\u0dd3\u0db8 \u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca \u0dc4\u0dd2 \u0daf\u0dd9\u0dc0\u0db1 \u0db7\u0dcf\u0d9c\u0dba\u0dda\u0daf\u0dd3 \u0db8\u0dda\u0dc0\u0dcf \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0dc0\u0dda. </p>\n",
|
||||
"<h4>First half of U-Net - decreasing resolution</h4>\n": "<h4>U-Net\u0db4\u0dc5\u0db8\u0dd4 \u0db7\u0dcf\u0d9c\u0dba - \u0d85\u0da9\u0dd4 \u0dba\u0ddd\u0da2\u0db1\u0dcf\u0dc0</h4>\n",
|
||||
"<h4>Second half of U-Net - increasing resolution</h4>\n": "<h4>\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca\u0dc4\u0dd2 \u0daf\u0dd9\u0dc0\u0db1 \u0db7\u0dcf\u0d9c\u0dba - \u0dc0\u0dd0\u0da9\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba</h4>\n",
|
||||
"<p> </p>\n": "<p> </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> at the same resolution </p>\n": "<p><span translate=no>_^_0_^_</span> \u0d91\u0d9a\u0db8 \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is not used, but it's kept in the arguments because for the attention layer function signature to match with <span translate=no>_^_1_^_</span>. </p>\n": "<p><span translate=no>_^_0_^_</span> \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0db1\u0ddc\u0d9a\u0dd9\u0dbb\u0dda, \u0db1\u0db8\u0dd4\u0dad\u0dca \u0d91\u0dba \u0dad\u0dbb\u0dca\u0d9a\u0dc0\u0dbd \u0dad\u0db6\u0dcf \u0d87\u0dad\u0dca\u0dad\u0dda \u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0dba\u0ddc\u0db8\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0dc3\u0dca\u0dae\u0dbb \u0dc1\u0dca\u0dbb\u0dd2\u0dad\u0dba\u0dda \u0d85\u0dad\u0dca\u0dc3\u0db1 \u0dc3\u0db8\u0d9f \u0d9c\u0dd0\u0dbd\u0db4\u0dd9\u0db1 \u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dd2 <span translate=no>_^_1_^_</span>. </p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> will store outputs at each resolution for skip connection </p>\n": "<p><span translate=no>_^_0_^_</span> \u0db8\u0d9f \u0dc4\u0dd0\u0dbb\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0\u0dad\u0dcf\u0dc0\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1\u0dba\u0db1\u0dca \u0d9c\u0db6\u0da9\u0dcf \u0d9a\u0dbb\u0db1\u0dd4 \u0d87\u0dad </p>\n",
|
||||
"<p>Activation </p>\n": "<p>\u0dc3\u0d9a\u0dca\u200d\u0dbb\u0dd3\u0dba\u0d9a\u0dd2\u0dbb\u0dd3\u0db8 </p>\n",
|
||||
"<p>Add <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d91\u0d9a\u0dad\u0dd4\u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Add skip connection </p>\n": "<p>\u0db8\u0d9f\u0dc4\u0dd0\u0dbb\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0\u0dad\u0dcf\u0dc0\u0dba \u0d91\u0d9a\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Add the shortcut connection and return </p>\n": "<p>\u0d9a\u0dd9\u0da7\u0dd2\u0db8\u0d82\u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0\u0dad\u0dcf\u0dc0\u0dba \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb \u0d86\u0db4\u0dc3\u0dd4 \u0dba\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Add time embeddings </p>\n": "<p>\u0d9a\u0dcf\u0dbd\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Calculate scaled dot-product <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab\u0dad\u0dd2\u0dad\u0dca \u0db1\u0dd2\u0dc2\u0dca\u0db4\u0dcf\u0daf\u0db1\u0dba\u0d9a\u0dca \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Change <span translate=no>_^_0_^_</span> to shape <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span> \u0dc4\u0dd0\u0da9\u0dba\u0da7 \u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_1_^_</span> </p>\n",
|
||||
"<p>Change to shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc4\u0dd0\u0da9\u0dba\u0da7\u0dc0\u0dd9\u0db1\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Combine the set of modules </p>\n": "<p>\u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd\u0d9a\u0da7\u0dca\u0da7\u0dbd\u0dba \u0d92\u0d9a\u0dcf\u0db6\u0daf\u0dca\u0db0 \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Create sinusoidal position embeddings <a href=\"../../transformers/positional_encoding.html\">same as those from the transformer</a></p>\n<span translate=no>_^_0_^_</span><p>where <span translate=no>_^_1_^_</span> is <span translate=no>_^_2_^_</span> </p>\n": "<p><a href=\"../../transformers/positional_encoding.html\">\u0da7\u0dca\u0dbb\u0dcf\u0db1\u0dca\u0dc3\u0dca\u0dc6\u0ddd\u0db8\u0dbb\u0dba\u0da7 \u0dc3\u0db8\u0dcf\u0db1</a>\u0dc3\u0dba\u0dd2\u0db1\u0ddc\u0dc3\u0ddc\u0dba\u0dd2\u0da9\u0dbd\u0dca \u0dc3\u0dca\u0dae\u0dcf\u0db1 \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1</p>\n<span translate=no>_^_0_^_</span><p><span translate=no>_^_1_^_</span> \u0d9a\u0ddc\u0dc4\u0dda\u0daf <span translate=no>_^_2_^_</span> </p>\n",
|
||||
"<p>Default <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db4\u0dd9\u0dbb\u0db1\u0dd2\u0db8\u0dd2 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Down sample at all resolutions except the last </p>\n": "<p>\u0db4\u0dc3\u0dd4\u0d9c\u0dd2\u0dba\u0dc4\u0dd0\u0dbb \u0d85\u0db1\u0dd9\u0d9a\u0dd4\u0dad\u0dca \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0dba\u0ddd\u0da2\u0db1\u0dcf \u0daf\u0dd3 \u0d86\u0daf\u0dbb\u0dca\u0dc1 \u0db4\u0dc4\u0dc5 </p>\n",
|
||||
"<p>Final block to reduce the number of channels </p>\n": "<p>\u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf\u0d9c\u0dab\u0db1 \u0d85\u0da9\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0dc0\u0dc3\u0dcf\u0db1 \u0d9a\u0ddc\u0da7\u0dc3 </p>\n",
|
||||
"<p>Final normalization and convolution </p>\n": "<p>\u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0dc4 \u0d9a\u0dd0\u0da7\u0dd2 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 </p>\n",
|
||||
"<p>Final normalization and convolution layer </p>\n": "<p>\u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0dc4 \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>First convolution layer </p>\n": "<p>\u0db4\u0dc5\u0db8\u0dd4\u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>First half of U-Net </p>\n": "<p>\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca\u0dc4\u0dd2 \u0db4\u0dc5\u0db8\u0dd4 \u0db7\u0dcf\u0d9c\u0dba </p>\n",
|
||||
"<p>First linear layer </p>\n": "<p>\u0db4\u0dc5\u0db8\u0dd4\u0dbb\u0dda\u0d9b\u0dd3\u0dba \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>For each resolution </p>\n": "<p>\u0d91\u0d9a\u0dca\u0d91\u0d9a\u0dca \u0dba\u0ddd\u0da2\u0db1\u0dcf\u0dc0 \u0dc3\u0db3\u0dc4\u0dcf </p>\n",
|
||||
"<p>Get image projection </p>\n": "<p>\u0dbb\u0dd6\u0db4\u0db4\u0dca\u0dbb\u0d9a\u0dca\u0dc2\u0dda\u0db4\u0dab\u0dba \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Get query, key, and values (concatenated) and shape it to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc0\u0dd2\u0db8\u0dc3\u0dd4\u0db8\u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1, \u0dba\u0dad\u0dd4\u0dbb, \u0dc3\u0dc4 \u0d85\u0d9c\u0dba\u0db1\u0dca (concatenated) \u0dc3\u0dc4 \u0d91\u0dba \u0dc4\u0dd0\u0da9\u0d9c\u0dc3\u0dca\u0dc0\u0dcf <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Get shape </p>\n": "<p>\u0dc4\u0dd0\u0da9\u0dba\u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Get the skip connection from first half of U-Net and concatenate </p>\n": "<p>\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca\u0dc4\u0dd2 \u0db4\u0dc5\u0db8\u0dd4 \u0db7\u0dcf\u0d9c\u0dba\u0dda \u0dc3\u0dd2\u0da7 \u0db8\u0d9f \u0dc4\u0dd0\u0dbb\u0dd3\u0db8\u0dda \u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0\u0dad\u0dcf\u0dc0\u0dba \u0dbd\u0db6\u0dcf\u0d9c\u0dd9\u0db1 \u0dc3\u0d82\u0dba\u0dd4\u0d9a\u0dca\u0dad \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Get time-step embeddings </p>\n": "<p>\u0d9a\u0dcf\u0dbd-\u0db4\u0dd2\u0dba\u0dc0\u0dbb\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Group normalization and the first convolution layer </p>\n": "<p>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0dc4 \u0db4\u0dc5\u0db8\u0dd4 \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>Group normalization and the second convolution layer </p>\n": "<p>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0dc4 \u0daf\u0dd9\u0dc0\u0db1 \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dad\u0dbb\u0dba </p>\n",
|
||||
"<p>If the number of input channels is not equal to the number of output channels we have to project the shortcut connection </p>\n": "<p>\u0d86\u0daf\u0dcf\u0db1\u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1\u0da7 \u0dc3\u0db8\u0dcf\u0db1 \u0db1\u0ddc\u0dc0\u0dda \u0db1\u0db8\u0dca \u0d9a\u0dd9\u0da7\u0dd2\u0db8\u0d82 \u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0\u0dad\u0dcf\u0dc0\u0dba \u0db4\u0dca\u0dbb\u0d9a\u0dca\u0dc2\u0dda\u0db4\u0dab\u0dba \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4\u0dba </p>\n",
|
||||
"<p>Linear layer for final transformation </p>\n": "<p>\u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0db4\u0dbb\u0dd2\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0dbb\u0dda\u0d9b\u0dd3\u0dba \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>Linear layer for time embeddings </p>\n": "<p>\u0d9a\u0dcf\u0dbd\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0dbb\u0dda\u0d9b\u0dd3\u0dba \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>Middle (bottom) </p>\n": "<p>\u0db8\u0dd0\u0daf(\u0db4\u0dc4\u0dc5) </p>\n",
|
||||
"<p>Middle block </p>\n": "<p>\u0db8\u0dd0\u0daf\u0d9a\u0ddc\u0da7\u0dc3 </p>\n",
|
||||
"<p>Multiply by values </p>\n": "<p>\u0d85\u0d9c\u0dba\u0db1\u0dca\u0d85\u0db1\u0dd4\u0dc0 \u0d9c\u0dd4\u0dab \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Normalization layer </p>\n": "<p>\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba\u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>Number of channels </p>\n": "<p>\u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf\u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Number of output channels at this resolution </p>\n": "<p>\u0db8\u0dd9\u0db8\u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Number of resolutions </p>\n": "<p>\u0dba\u0ddd\u0da2\u0db1\u0dcf\u0d9c\u0dab\u0db1 </p>\n",
|
||||
"<p>Project image into feature map </p>\n": "<p>\u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c\u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0da7 \u0dc0\u0dca\u0dba\u0dcf\u0db4\u0dd8\u0dad\u0dd2 \u0dbb\u0dd6\u0db4\u0dba </p>\n",
|
||||
"<p>Projections for query, key and values </p>\n": "<p>\u0dc0\u0dd2\u0db8\u0dc3\u0dd4\u0db8, \u0dba\u0dad\u0dd4\u0dbb \u0dc3\u0dc4 \u0d85\u0d9c\u0dba\u0db1\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dca\u0dbb\u0d9a\u0dca\u0dc2\u0dda\u0db4\u0dab </p>\n",
|
||||
"<p>Reshape to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db1\u0dd0\u0dc0\u0dad\u0dc4\u0dd0\u0da9\u0d9c\u0dc3\u0dca\u0dc0\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Scale for dot-product attention </p>\n": "<p>\u0dad\u0dd2\u0dad\u0dca\u0db1\u0dd2\u0dc2\u0dca\u0db4\u0dcf\u0daf\u0db1 \u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab\u0dba </p>\n",
|
||||
"<p>Second convolution layer </p>\n": "<p>\u0daf\u0dd9\u0dc0\u0db1\u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>Second half of U-Net </p>\n": "<p>\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca\u0dc4\u0dd2 \u0daf\u0dd9\u0dc0\u0db1 \u0db7\u0dcf\u0d9c\u0dba </p>\n",
|
||||
"<p>Second linear layer </p>\n": "<p>\u0daf\u0dd9\u0dc0\u0db1\u0dbb\u0dda\u0d9b\u0dd3\u0dba \u0dc3\u0dca\u0dae\u0dbb\u0dba </p>\n",
|
||||
"<p>Softmax along the sequence dimension <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d85\u0db1\u0dd4\u0d9a\u0dca\u0dbb\u0db8\u0dd2\u0d9a\u0db8\u0dcf\u0db1\u0dba \u0d94\u0dc3\u0dca\u0dc3\u0dda \u0dc3\u0ddc\u0dc6\u0dca\u0da7\u0dca\u0db8\u0dd0\u0d9a\u0dca\u0dc3\u0dca <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Split query, key, and values. Each of them will have shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc0\u0dd2\u0db8\u0dc3\u0dd4\u0db8, \u0dba\u0dad\u0dd4\u0dbb \u0dc3\u0dc4 \u0d85\u0d9c\u0dba\u0db1\u0dca \u0db6\u0dd9\u0daf\u0dd3\u0db8\u0dca. \u0d94\u0dc0\u0dd4\u0db1\u0dca \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dc4\u0dd0\u0da9\u0dba \u0d87\u0dad <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>The input has <span translate=no>_^_0_^_</span> because we concatenate the output of the same resolution from the first half of the U-Net </p>\n": "<p>\u0d86\u0daf\u0dcf\u0db1\u0dba\u0da7\u0d87\u0dad\u0dca\u0dad\u0dda \u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca \u0dc4\u0dd2 \u0db4\u0dc5\u0db8\u0dd4 \u0db7\u0dcf\u0d9c\u0dba\u0dda \u0dc3\u0dd2\u0da7 \u0d91\u0d9a\u0db8 \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1\u0dba \u0d85\u0db4 \u0dc3\u0d82\u0dba\u0dd4\u0d9a\u0dca\u0dad \u0d9a\u0dbb\u0db1 <span translate=no>_^_0_^_</span> \u0db6\u0dd0\u0dc0\u0dd2\u0db1\u0dd2 </p>\n",
|
||||
"<p>Time embedding layer. Time embedding has <span translate=no>_^_0_^_</span> channels </p>\n": "<p>\u0d9a\u0dcf\u0dbd\u0dba\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0dc3\u0dca\u0dae\u0dbb\u0dba. \u0d9a\u0dcf\u0dbd \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 <span translate=no>_^_0_^_</span> \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d87\u0dad </p>\n",
|
||||
"<p>Transform to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db6\u0dc0\u0da7\u0db4\u0dbb\u0dd2\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 <span translate=no>_^_0_^_</span> </p>\n",
|
||||
"<p>Transform with the MLP </p>\n": "<p>\u0d91\u0db8\u0dca\u0d91\u0dbd\u0dca\u0db4\u0dd3\u0dc3\u0db8\u0d9f \u0db4\u0dbb\u0dd2\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"<p>Up sample at all resolutions except last </p>\n": "<p>\u0db4\u0dc3\u0dd4\u0d9c\u0dd2\u0dba\u0dc4\u0dd0\u0dbb \u0d85\u0db1\u0dd9\u0d9a\u0dd4\u0dad\u0dca \u0dc3\u0dd2\u0dba\u0dbd\u0dd4 \u0dba\u0ddd\u0da2\u0db1\u0dcf \u0daf\u0dd3 \u0d86\u0daf\u0dbb\u0dca\u0dc1 \u0daf\u0d9a\u0dca\u0dc0\u0dcf </p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> has shape <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> has shape <span translate=no>_^_3_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0dc4\u0dd0\u0da9\u0dba \u0d87\u0dad <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> \u0dc4\u0dd0\u0da9\u0dba \u0d87\u0dad <span translate=no>_^_3_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the image. <span translate=no>_^_1_^_</span> for RGB. </li>\n<li><span translate=no>_^_2_^_</span> is number of channels in the initial feature map that we transform the image into </li>\n<li><span translate=no>_^_3_^_</span> is the list of channel numbers at each resolution. The number of channels is <span translate=no>_^_4_^_</span> </li>\n<li><span translate=no>_^_5_^_</span> is a list of booleans that indicate whether to use attention at each resolution </li>\n<li><span translate=no>_^_6_^_</span> is the number of <span translate=no>_^_7_^_</span> at each resolution</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0dbb\u0dd6\u0db4\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1. <span translate=no>_^_1_^_</span> RGB \u0dc3\u0db3\u0dc4\u0dcf. </li>\n<li><span translate=no>_^_2_^_</span> \u0d86\u0dbb\u0db8\u0dca\u0db7\u0d9a \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0d85\u0db4\u0dd2 \u0dbb\u0dd6\u0db4\u0dba \u0db6\u0dc0\u0da7 \u0db4\u0dbb\u0dd2\u0dc0\u0dbb\u0dca\u0dad\u0db1\u0dba \u0d9a\u0dbb\u0db8\u0dd4 </li>\n<li><span translate=no>_^_3_^_</span> \u0dba\u0db1\u0dd4 \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d85\u0d82\u0d9a \u0dbd\u0dd0\u0dba\u0dd2\u0dc3\u0dca\u0dad\u0dd4\u0dc0\u0dba\u0dd2. \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc0\u0dda <span translate=no>_^_4_^_</span> </li>\n<li><span translate=no>_^_5_^_</span> \u0dba\u0db1\u0dd4 \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda \u0daf\u0dd3 \u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0dba\u0ddc\u0db8\u0dd4 \u0d9a\u0dc5 \u0dba\u0dd4\u0dad\u0dd4\u0daf \u0dba\u0db1\u0dca\u0db1 \u0db4\u0dd9\u0db1\u0dca\u0db1\u0dd4\u0db8\u0dca \u0d9a\u0dbb\u0db1 \u0db6\u0dd6\u0dbd\u0dd2\u0dba\u0db1\u0dca \u0dbd\u0dd0\u0dba\u0dd2\u0dc3\u0dca\u0dad\u0dd4\u0dc0\u0d9a\u0dd2 </li>\n<li><span translate=no>_^_6_^_</span> \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dba\u0ddd\u0da2\u0db1\u0dcf\u0dc0 <span translate=no>_^_7_^_</span> \u0daf\u0dd3 \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 \u0dc0\u0dda</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the input </li>\n<li><span translate=no>_^_1_^_</span> is the number of heads in multi-head attention </li>\n<li><span translate=no>_^_2_^_</span> is the number of dimensions in each head </li>\n<li><span translate=no>_^_3_^_</span> is the number of groups for <a href=\"../../normalization/group_norm/index.html\">group normalization</a></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0dba\u0db1\u0dd4 \u0d86\u0daf\u0dcf\u0db1\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 </li>\n<li><span translate=no>_^_1_^_</span> \u0db6\u0dc4\u0dd4-\u0dc4\u0dd2\u0dc3 \u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0dba\u0ddc\u0db8\u0dd4 \u0db4\u0dca\u0dbb\u0db0\u0dcf\u0db1\u0dd3\u0db1\u0dca \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 \u0dc0\u0dda </li>\n<li><span translate=no>_^_2_^_</span> \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dc4\u0dd2\u0dc3\u0dd9\u0dc4\u0dd2 \u0db8\u0dcf\u0db1\u0dba\u0db1\u0dca \u0d9c\u0dab\u0db1 </li>\n</ul><li><span translate=no>_^_3_^_</span> \u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca <a href=\"../../normalization/group_norm/index.html\">\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca</a>\u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 \u0dc0\u0dda</li>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of dimensions in the embedding</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span> \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0db8\u0dcf\u0db1\u0dba\u0db1\u0dca \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of input channels </li>\n<li><span translate=no>_^_1_^_</span> is the number of input channels </li>\n<li><span translate=no>_^_2_^_</span> is the number channels in the time step (<span translate=no>_^_3_^_</span>) embeddings </li>\n<li><span translate=no>_^_4_^_</span> is the number of groups for <a href=\"../../normalization/group_norm/index.html\">group normalization</a> </li>\n<li><span translate=no>_^_5_^_</span> is the dropout rate</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0d86\u0daf\u0dcf\u0db1 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</li>\n<li><span translate=no>_^_1_^_</span>\u0d86\u0daf\u0dcf\u0db1 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</li>\n<li><span translate=no>_^_2_^_</span>\u0d9a\u0dcf\u0dbd\u0dba \u0db4\u0dd2\u0dba\u0dc0\u0dbb (<span translate=no>_^_3_^_</span>) \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0dc0\u0dda</li>\n<li><span translate=no>_^_4_^_</span>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca <a href=\"../../normalization/group_norm/index.html\">\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca</a> \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 \u0dc0\u0dda</li>\n</ul><li><span translate=no>_^_5_^_</span>\u0dc4\u0dd0\u0dbd\u0dc4\u0dd0\u0db4\u0dca\u0db8\u0dda \u0d85\u0db1\u0dd4\u0db4\u0dcf\u0dad\u0dba \u0dc0\u0dda</li>\n",
|
||||
"U-Net model for Denoising Diffusion Probabilistic Models (DDPM)": "\u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba (\u0da9\u0dd3\u0da9\u0dd3\u0db4\u0dd3\u0d91\u0db8\u0dca)",
|
||||
"UNet model for Denoising Diffusion Probabilistic Models (DDPM)": "Denoising Diffusion \u0dc3\u0db8\u0dca\u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf\u0dc0 \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0dc3\u0db3\u0dc4\u0dcf UNET \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba (DDPM)"
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"<h1>U-Net model for <a href=\"index.html\">Denoising Diffusion Probabilistic Models (DDPM)</a></h1>\n<p>This is a <a href=\"../../unet/index.html\">U-Net</a> based model to predict noise <span translate=no>_^_0_^_</span>.</p>\n<p>U-Net is a gets it's name from the U shape in the model diagram. It processes a given image by progressively lowering (halving) the feature map resolution and then increasing the resolution. There are pass-through connection at each resolution.</p>\n<p><span translate=no>_^_1_^_</span></p>\n<p>This implementation contains a bunch of modifications to original U-Net (residual blocks, multi-head attention) and also adds time-step embeddings <span translate=no>_^_2_^_</span>.</p>\n": "<h1>\u7528\u4e8e<a href=\"index.html\">\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM) \u7684 U-Net \u6a21\u578b</a></h1>\n<p>\u8fd9\u662f\u4e00\u4e2a\u57fa\u4e8e <a href=\"../../unet/index.html\">U-Net</a> \u7684\u6a21\u578b\uff0c\u7528\u4e8e\u9884\u6d4b\u566a\u58f0<span translate=no>_^_0_^_</span>\u3002</p>\n<p>U-Net \u662f\u4ece\u6a21\u578b\u56fe\u4e2d\u7684 U \u5f62\u4e2d\u83b7\u53d6\u5b83\u7684\u540d\u5b57\u3002\u5b83\u901a\u8fc7\u9010\u6b65\u964d\u4f4e\uff08\u51cf\u534a\uff09\u8981\u7d20\u56fe\u5206\u8fa8\u7387\uff0c\u7136\u540e\u63d0\u9ad8\u5206\u8fa8\u7387\u6765\u5904\u7406\u7ed9\u5b9a\u7684\u56fe\u50cf\u3002\u6bcf\u79cd\u5206\u8fa8\u7387\u90fd\u6709\u76f4\u901a\u8fde\u63a5\u3002</p>\n<p><span translate=no>_^_1_^_</span></p>\n<p>\u6b64\u5b9e\u73b0\u5305\u542b\u5bf9\u539f\u59cb U-Net\uff08\u6b8b\u5dee\u5757\u3001\u591a\u5934\u6ce8\u610f\uff09\u7684\u5927\u91cf\u4fee\u6539\uff0c\u8fd8\u6dfb\u52a0\u4e86\u65f6\u95f4\u6b65\u957f\u5d4c\u5165<span translate=no>_^_2_^_</span>\u3002</p>\n",
|
||||
"<h2>U-Net</h2>\n": "<h2>U-Net</h2>\n",
|
||||
"<h3>Attention block</h3>\n<p>This is similar to <a href=\"../../transformers/mha.html\">transformer multi-head attention</a>.</p>\n": "<h3>\u6ce8\u610f\u529b\u5757</h3>\n<p>\u8fd9\u7c7b\u4f3c\u4e8e<a href=\"../../transformers/mha.html\">\u53d8\u538b\u5668\u591a\u5934\u7684\u5173\u6ce8</a>\u3002</p>\n",
|
||||
"<h3>Down block</h3>\n<p>This combines <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span>. These are used in the first half of U-Net at each resolution.</p>\n": "<h3>\u5411\u4e0b\u65b9\u5757</h3>\n<p>\u8fd9\u7ed3\u5408\u4e86<span translate=no>_^_0_^_</span>\u548c<span translate=no>_^_1_^_</span>.\u8fd9\u4e9b\u5728U-Net\u7684\u524d\u534a\u90e8\u5206\u4ee5\u6bcf\u79cd\u5206\u8fa8\u7387\u4f7f\u7528\u3002</p>\n",
|
||||
"<h3>Embeddings for <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u5d4c\u5165\u7528\u4e8e<span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Middle block</h3>\n<p>It combines a <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span>, followed by another <span translate=no>_^_2_^_</span>. This block is applied at the lowest resolution of the U-Net.</p>\n": "<h3>\u4e2d\u95f4\u65b9\u5757</h3>\n<p>\u5b83\u7ed3\u5408\u4e86<span translate=no>_^_0_^_</span>\u3001<span translate=no>_^_1_^_</span>\u3001\u540e\u8ddf\u53e6\u4e00\u4e2a<span translate=no>_^_2_^_</span>\u3002\u6b64\u5757\u5e94\u7528\u4e8e U-Net \u7684\u6700\u4f4e\u5206\u8fa8\u7387\u3002</p>\n",
|
||||
"<h3>Residual block</h3>\n<p>A residual block has two convolution layers with group normalization. Each resolution is processed with two residual blocks.</p>\n": "<h3>\u5269\u4f59\u65b9\u5757</h3>\n<p>\u6b8b\u5dee\u5757\u5177\u6709\u4e24\u4e2a\u5177\u6709\u7ec4\u5f52\u4e00\u5316\u7684\u5377\u79ef\u5c42\u3002\u6bcf\u4e2a\u5206\u8fa8\u7387\u90fd\u4f7f\u7528\u4e24\u4e2a\u6b8b\u5dee\u5757\u8fdb\u884c\u5904\u7406\u3002</p>\n",
|
||||
"<h3>Scale down the feature map by <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u6309\u6bd4\u4f8b\u7f29\u5c0f\u8981\u7d20\u5730\u56fe<span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Scale up the feature map by <span translate=no>_^_0_^_</span></h3>\n": "<h3>\u6309\u6bd4\u4f8b\u653e\u5927\u8981\u7d20\u5730\u56fe<span translate=no>_^_0_^_</span></h3>\n",
|
||||
"<h3>Swish activation function</h3>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h3>Swish \u6fc0\u6d3b\u529f\u80fd</h3>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<h3>Up block</h3>\n<p>This combines <span translate=no>_^_0_^_</span> and <span translate=no>_^_1_^_</span>. These are used in the second half of U-Net at each resolution.</p>\n": "<h3>\u5411\u4e0a\u65b9\u5757</h3>\n<p>\u8fd9\u7ed3\u5408\u4e86<span translate=no>_^_0_^_</span>\u548c<span translate=no>_^_1_^_</span>.\u8fd9\u4e9b\u5728U-Net\u7684\u540e\u534a\u90e8\u5206\u4ee5\u6bcf\u79cd\u5206\u8fa8\u7387\u4f7f\u7528\u3002</p>\n",
|
||||
"<h4>First half of U-Net - decreasing resolution</h4>\n": "<h4>U-Net \u7684\u524d\u534a\u90e8\u5206-\u5206\u8fa8\u7387\u964d\u4f4e</h4>\n",
|
||||
"<h4>Second half of U-Net - increasing resolution</h4>\n": "<h4>U-Net \u7684\u540e\u534a\u90e8\u5206-\u63d0\u9ad8\u5206\u8fa8\u7387</h4>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> at the same resolution </p>\n": "<p><span translate=no>_^_0_^_</span>\u4ee5\u76f8\u540c\u7684\u5206\u8fa8\u7387</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> is not used, but it's kept in the arguments because for the attention layer function signature to match with <span translate=no>_^_1_^_</span>. </p>\n": "<p><span translate=no>_^_0_^_</span>\u672a\u4f7f\u7528\uff0c\u4f46\u5b83\u4fdd\u7559\u5728\u53c2\u6570\u4e2d\uff0c\u56e0\u4e3a\u8981\u4e0e\u6ce8\u610f\u5c42\u51fd\u6570\u7b7e\u540d\u5339\u914d<span translate=no>_^_1_^_</span>\u3002</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> will store outputs at each resolution for skip connection </p>\n": "<p><span translate=no>_^_0_^_</span>\u5c06\u4ee5\u6bcf\u79cd\u5206\u8fa8\u7387\u5b58\u50a8\u8f93\u51fa\u4ee5\u8fdb\u884c\u8df3\u8fc7\u8fde\u63a5</p>\n",
|
||||
"<p>Activation </p>\n": "<p>\u6fc0\u6d3b</p>\n",
|
||||
"<p>Add <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6dfb\u52a0<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Add skip connection </p>\n": "<p>\u6dfb\u52a0\u8df3\u8fc7\u8fde\u63a5</p>\n",
|
||||
"<p>Add the shortcut connection and return </p>\n": "<p>\u6dfb\u52a0\u5feb\u6377\u65b9\u5f0f\u8fde\u63a5\u5e76\u8fd4\u56de</p>\n",
|
||||
"<p>Add time embeddings </p>\n": "<p>\u6dfb\u52a0\u65f6\u95f4\u5d4c\u5165</p>\n",
|
||||
"<p>Calculate scaled dot-product <span translate=no>_^_0_^_</span> </p>\n": "<p>\u8ba1\u7b97\u7f29\u653e\u7684\u70b9\u79ef<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Change <span translate=no>_^_0_^_</span> to shape <span translate=no>_^_1_^_</span> </p>\n": "<p>\u6539<span translate=no>_^_0_^_</span>\u6210\u5f62\u72b6<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Change to shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6539\u6210\u5f62\u72b6<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Combine the set of modules </p>\n": "<p>\u7ec4\u5408\u8fd9\u7ec4\u6a21\u5757</p>\n",
|
||||
"<p>Create sinusoidal position embeddings <a href=\"../../transformers/positional_encoding.html\">same as those from the transformer</a></p>\n<span translate=no>_^_0_^_</span><p>where <span translate=no>_^_1_^_</span> is <span translate=no>_^_2_^_</span> </p>\n": "<p>\u521b\u5efa\u4e0e<a href=\"../../transformers/positional_encoding.html\">\u53d8\u538b\u5668\u76f8\u540c\u7684</a>\u6b63\u5f26\u4f4d\u7f6e\u5d4c\u5165</p>\n<span translate=no>_^_0_^_</span><p>\u5728\u54ea<span translate=no>_^_1_^_</span>\u91cc<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p>Default <span translate=no>_^_0_^_</span> </p>\n": "<p>\u9ed8\u8ba4<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Down sample at all resolutions except the last </p>\n": "<p>\u9664\u6700\u540e\u4e00\u4e2a\u5206\u8fa8\u7387\u4e4b\u5916\u7684\u6240\u6709\u5206\u8fa8\u7387\u90fd\u5411\u4e0b\u91c7\u6837</p>\n",
|
||||
"<p>Final block to reduce the number of channels </p>\n": "<p>\u51cf\u5c11\u4fe1\u9053\u6570\u91cf\u7684\u6700\u7ec8\u533a\u5757</p>\n",
|
||||
"<p>Final normalization and convolution </p>\n": "<p>\u6700\u7ec8\u5f52\u4e00\u5316\u548c\u5377\u79ef</p>\n",
|
||||
"<p>Final normalization and convolution layer </p>\n": "<p>\u6700\u7ec8\u5f52\u4e00\u5316\u548c\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>First convolution layer </p>\n": "<p>\u7b2c\u4e00\u4e2a\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>First half of U-Net </p>\n": "<p>U-Net \u7684\u4e0a\u534a\u5e74</p>\n",
|
||||
"<p>First linear layer </p>\n": "<p>\u7b2c\u4e00\u4e2a\u7ebf\u6027\u5c42</p>\n",
|
||||
"<p>For each resolution </p>\n": "<p>\u5bf9\u4e8e\u6bcf\u79cd\u5206\u8fa8\u7387</p>\n",
|
||||
"<p>Get image projection </p>\n": "<p>\u83b7\u53d6\u56fe\u50cf\u6295\u5f71</p>\n",
|
||||
"<p>Get query, key, and values (concatenated) and shape it to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u83b7\u53d6\u67e5\u8be2\u3001\u952e\u548c\u503c\uff08\u4e32\u8054\uff09\u5e76\u5c06\u5176\u8c03\u6574\u4e3a<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Get shape </p>\n": "<p>\u5851\u9020\u8eab\u6750</p>\n",
|
||||
"<p>Get the skip connection from first half of U-Net and concatenate </p>\n": "<p>\u4ece U-Net \u7684\u524d\u534a\u90e8\u5206\u83b7\u53d6\u8df3\u8fc7\u8fde\u63a5\u5e76\u8fde\u63a5</p>\n",
|
||||
"<p>Get time-step embeddings </p>\n": "<p>\u83b7\u53d6\u65f6\u95f4\u6b65\u957f\u5d4c\u5165</p>\n",
|
||||
"<p>Group normalization and the first convolution layer </p>\n": "<p>\u7ec4\u5f52\u4e00\u5316\u548c\u7b2c\u4e00\u4e2a\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>Group normalization and the second convolution layer </p>\n": "<p>\u7ec4\u5f52\u4e00\u5316\u548c\u7b2c\u4e8c\u4e2a\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>If the number of input channels is not equal to the number of output channels we have to project the shortcut connection </p>\n": "<p>\u5982\u679c\u8f93\u5165\u901a\u9053\u7684\u6570\u91cf\u4e0d\u7b49\u4e8e\u8f93\u51fa\u901a\u9053\u7684\u6570\u91cf\uff0c\u6211\u4eec\u5fc5\u987b\u6295\u5f71\u5feb\u6377\u65b9\u5f0f\u8fde\u63a5</p>\n",
|
||||
"<p>Linear layer for final transformation </p>\n": "<p>\u7528\u4e8e\u6700\u7ec8\u53d8\u6362\u7684\u7ebf\u6027\u5c42</p>\n",
|
||||
"<p>Linear layer for time embeddings </p>\n": "<p>\u7528\u4e8e\u65f6\u95f4\u5d4c\u5165\u7684\u7ebf\u6027\u5c42</p>\n",
|
||||
"<p>Middle (bottom) </p>\n": "<p>\u4e2d\u95f4\uff08\u5e95\u90e8\uff09</p>\n",
|
||||
"<p>Middle block </p>\n": "<p>\u4e2d\u95f4\u65b9\u5757</p>\n",
|
||||
"<p>Multiply by values </p>\n": "<p>\u4e58\u4ee5\u503c</p>\n",
|
||||
"<p>Normalization layer </p>\n": "<p>\u5f52\u4e00\u5316\u5c42</p>\n",
|
||||
"<p>Number of channels </p>\n": "<p>\u9891\u9053\u6570\u91cf</p>\n",
|
||||
"<p>Number of output channels at this resolution </p>\n": "<p>\u6b64\u5206\u8fa8\u7387\u4e0b\u7684\u8f93\u51fa\u58f0\u9053\u6570</p>\n",
|
||||
"<p>Number of resolutions </p>\n": "<p>\u5206\u8fa8\u7387\u6570\u91cf</p>\n",
|
||||
"<p>Project image into feature map </p>\n": "<p>\u5c06\u56fe\u50cf\u6295\u5f71\u5230\u8981\u7d20\u5730\u56fe\u4e2d</p>\n",
|
||||
"<p>Projections for query, key and values </p>\n": "<p>\u67e5\u8be2\u3001\u952e\u548c\u503c\u7684\u6295\u5f71</p>\n",
|
||||
"<p>Reshape to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u91cd\u5851\u4e3a<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Scale for dot-product attention </p>\n": "<p>\u7f29\u653e\u70b9\u4ea7\u54c1\u6ce8\u610f\u529b</p>\n",
|
||||
"<p>Second convolution layer </p>\n": "<p>\u7b2c\u4e8c\u4e2a\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>Second half of U-Net </p>\n": "<p>U-Net \u7684\u4e0b\u534a\u573a</p>\n",
|
||||
"<p>Second linear layer </p>\n": "<p>\u7b2c\u4e8c\u4e2a\u7ebf\u6027\u5c42</p>\n",
|
||||
"<p>Softmax along the sequence dimension <span translate=no>_^_0_^_</span> </p>\n": "<p>\u987a\u5e8f\u7ef4\u5ea6\u4e0a\u7684 Softmax<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Split query, key, and values. Each of them will have shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u62c6\u5206\u67e5\u8be2\u3001\u952e\u548c\u503c\u3002\u4ed6\u4eec\u6bcf\u4e2a\u4eba\u90fd\u4f1a\u6709\u5f62\u72b6<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>The input has <span translate=no>_^_0_^_</span> because we concatenate the output of the same resolution from the first half of the U-Net </p>\n": "<p>\u8f93\u5165\u4e4b<span translate=no>_^_0_^_</span>\u6240\u4ee5\u6709\uff0c\u662f\u56e0\u4e3a\u6211\u4eec\u5c06 U-Net \u524d\u534a\u90e8\u5206\u76f8\u540c\u5206\u8fa8\u7387\u7684\u8f93\u51fa\u8fde\u63a5\u8d77\u6765</p>\n",
|
||||
"<p>Time embedding layer. Time embedding has <span translate=no>_^_0_^_</span> channels </p>\n": "<p>\u65f6\u95f4\u5d4c\u5165\u5c42\u3002\u65f6\u95f4\u5d4c\u5165\u6709<span translate=no>_^_0_^_</span>\u9891\u9053</p>\n",
|
||||
"<p>Transform to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u53d8\u6362\u4e3a<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Transform with the MLP </p>\n": "<p>\u4f7f\u7528 MLP \u8fdb\u884c\u8f6c\u578b</p>\n",
|
||||
"<p>Up sample at all resolutions except last </p>\n": "<p>\u9664\u6700\u540e\u4e00\u4e2a\u4ee5\u5916\u7684\u6240\u6709\u5206\u8fa8\u7387\u5411\u4e0a\u91c7\u6837</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> has shape <span translate=no>_^_1_^_</span> </li>\n<li><span translate=no>_^_2_^_</span> has shape <span translate=no>_^_3_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u6709\u5f62\u72b6<span translate=no>_^_1_^_</span></li>\n<li><span translate=no>_^_2_^_</span>\u6709\u5f62\u72b6<span translate=no>_^_3_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the image. <span translate=no>_^_1_^_</span> for RGB. </li>\n<li><span translate=no>_^_2_^_</span> is number of channels in the initial feature map that we transform the image into </li>\n<li><span translate=no>_^_3_^_</span> is the list of channel numbers at each resolution. The number of channels is <span translate=no>_^_4_^_</span> </li>\n<li><span translate=no>_^_5_^_</span> is a list of booleans that indicate whether to use attention at each resolution </li>\n<li><span translate=no>_^_6_^_</span> is the number of <span translate=no>_^_7_^_</span> at each resolution</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u56fe\u50cf\u4e2d\u7684\u901a\u9053\u6570\u3002<span translate=no>_^_1_^_</span>\u5bf9\u4e8e RGB\u3002</li>\n<li><span translate=no>_^_2_^_</span>\u662f\u521d\u59cb\u7279\u5f81\u56fe\u4e2d\u6211\u4eec\u5c06\u56fe\u50cf\u8f6c\u6362\u4e3a\u7684\u901a\u9053\u6570</li>\n<li><span translate=no>_^_3_^_</span>\u662f\u6bcf\u79cd\u5206\u8fa8\u7387\u4e0b\u7684\u901a\u9053\u7f16\u53f7\u5217\u8868\u3002\u9891\u9053\u7684\u6570\u91cf\u662f<span translate=no>_^_4_^_</span></li>\n<li><span translate=no>_^_5_^_</span>\u662f\u4e00\u4e2a\u5e03\u5c14\u503c\u5217\u8868\uff0c\u7528\u4e8e\u6307\u793a\u662f\u5426\u5728\u6bcf\u4e2a\u5206\u8fa8\u7387\u4e0b\u4f7f\u7528\u6ce8\u610f\u529b</li>\n<li><span translate=no>_^_6_^_</span>\u662f\u6bcf\u79cd\u5206\u8fa8<span translate=no>_^_7_^_</span>\u7387\u7684\u6570\u5b57</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the input </li>\n<li><span translate=no>_^_1_^_</span> is the number of heads in multi-head attention </li>\n<li><span translate=no>_^_2_^_</span> is the number of dimensions in each head </li>\n<li><span translate=no>_^_3_^_</span> is the number of groups for <a href=\"../../normalization/group_norm/index.html\">group normalization</a></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u8f93\u5165\u4e2d\u7684\u58f0\u9053\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u591a\u5934\u5173\u6ce8\u4e2d\u7684\u5934\u90e8\u6570\u91cf</li>\n<li><span translate=no>_^_2_^_</span>\u662f\u6bcf\u4e2a\u5934\u90e8\u7684\u5c3a\u5bf8\u6570</li>\n<li><span translate=no>_^_3_^_</span>\u662f\u7ec4\u5f52\u4e00<a href=\"../../normalization/group_norm/index.html\">\u5316\u7684\u7ec4</a>\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of dimensions in the embedding</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5d4c\u5165\u4e2d\u7684\u7ef4\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of input channels </li>\n<li><span translate=no>_^_1_^_</span> is the number of input channels </li>\n<li><span translate=no>_^_2_^_</span> is the number channels in the time step (<span translate=no>_^_3_^_</span>) embeddings </li>\n<li><span translate=no>_^_4_^_</span> is the number of groups for <a href=\"../../normalization/group_norm/index.html\">group normalization</a> </li>\n<li><span translate=no>_^_5_^_</span> is the dropout rate</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u8f93\u5165\u901a\u9053\u7684\u6570\u91cf</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u8f93\u5165\u901a\u9053\u7684\u6570\u91cf</li>\n<li><span translate=no>_^_2_^_</span>\u662f\u65f6\u95f4\u6b65 (<span translate=no>_^_3_^_</span>) \u5d4c\u5165\u4e2d\u7684\u901a\u9053\u6570</li>\n<li><span translate=no>_^_4_^_</span>\u662f\u7528\u4e8e\u7ec4<a href=\"../../normalization/group_norm/index.html\">\u6807\u51c6\u5316\u7684\u7ec4</a>\u6570</li>\n<li><span translate=no>_^_5_^_</span>\u662f\u8f8d\u5b66\u7387</li></ul>\n",
|
||||
"U-Net model for Denoising Diffusion Probabilistic Models (DDPM)": "\u7528\u4e8e\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM) \u7684 U-Net \u6a21\u578b",
|
||||
"UNet model for Denoising Diffusion Probabilistic Models (DDPM)": "\u7528\u4e8e\u53bb\u566a\u6269\u6563\u6982\u7387\u6a21\u578b (DDPM) \u7684 unET \u6a21\u578b"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Utility functions for <a href=\"index.html\">DDPM</a> experiemnt</h1>\n": "<h1><a href=\"index.html\">DPM</a> \u5b9f\u9a13\u7528\u30e6\u30fc\u30c6\u30a3\u30ea\u30c6\u30a3\u95a2\u6570</h1>\n",
|
||||
"<p>Gather consts for <span translate=no>_^_0_^_</span> and reshape to feature map shape </p>\n": "<p><span translate=no>_^_0_^_</span>\u5b9a\u6570\u3092\u96c6\u3081\u3066\u30d5\u30a3\u30fc\u30c1\u30e3\u30de\u30c3\u30d7\u306e\u5f62\u72b6\u306b\u5f62\u72b6\u3092\u5909\u3048\u308b</p>\n",
|
||||
"Utility functions for DDPM experiment": "DDPM \u5b9f\u9a13\u7528\u30e6\u30fc\u30c6\u30a3\u30ea\u30c6\u30a3\u95a2\u6570"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Utility functions for <a href=\"index.html\">DDPM</a> experiemnt</h1>\n": "<h1><a href=\"index.html\">DDPM</a> \u0d85\u0dad\u0dca\u0daf\u0dd0\u0d9a\u0dd3\u0db8\u0dca \u0dc3\u0db3\u0dc4\u0dcf \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd2\u0dad\u0dcf \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba\u0db1\u0dca</h1>\n",
|
||||
"<p>Gather consts for <span translate=no>_^_0_^_</span> and reshape to feature map shape </p>\n": "<p>\u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca\u0dc4\u0dd0\u0da9\u0dba\u0da7 \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 <span translate=no>_^_0_^_</span> \u0dc3\u0dc4 \u0db1\u0dd0\u0dc0\u0dad \u0dc3\u0d9a\u0dc3\u0dca \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d9c\u0dd0\u0da7\u0dd4\u0db8\u0dca \u0d91\u0d9a\u0dca\u0dbb\u0dd0\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1 </p>\n",
|
||||
"Utility functions for DDPM experiment": "\u0da9\u0dd3\u0da9\u0dd3\u0db4\u0dd3\u0d91\u0db8\u0dca \u0d85\u0dad\u0dca\u0dc4\u0daf\u0dcf \u0db6\u0dd0\u0dbd\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d8b\u0db4\u0dba\u0ddd\u0d9c\u0dd2\u0dad\u0dcf \u0d9a\u0dcf\u0dbb\u0dca\u0dba\u0dba\u0db1\u0dca"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1>Utility functions for <a href=\"index.html\">DDPM</a> experiemnt</h1>\n": "<h1><a href=\"index.html\">DDPM</a> \u5b9e\u9a8c\u7684\u5b9e\u7528\u7a0b\u5e8f\u51fd\u6570</h1>\n",
|
||||
"<p>Gather consts for <span translate=no>_^_0_^_</span> and reshape to feature map shape </p>\n": "<p>\u6536\u96c6\u8981\u7d20\u5730\u56fe\u5f62\u72b6\u7684<span translate=no>_^_0_^_</span>\u5e38\u91cf\u5e76\u5c06\u5176\u6574\u5f62\u4e3a\u8981\u7d20\u5730\u56fe\u5f62\u72b6</p>\n",
|
||||
"Utility functions for DDPM experiment": "DDPM \u5b9e\u9a8c\u7684\u5b9e\u7528\u7a0b\u5e8f\u51fd\u6570"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"<h1>Latent Diffusion Models</h1>\n<p>Latent diffusion models use an auto-encoder to map between image space and latent space. The diffusion model works on the latent space, which makes it a lot easier to train. It is based on paper <a href=\"https://arxiv.org/abs/2112.10752\">High-Resolution Image Synthesis with Latent Diffusion Models</a>.</p>\n<p>They use a pre-trained auto-encoder and train the diffusion U-Net on the latent space of the pre-trained auto-encoder.</p>\n<p>For a simpler diffusion implementation refer to our <a href=\"../ddpm/index.html\">DDPM implementation</a>. We use same notations for <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> schedules, etc.</p>\n": "<h1>\u6f5c\u5728\u62e1\u6563\u30e2\u30c7\u30eb</h1>\n<p>\u6f5c\u5728\u62e1\u6563\u30e2\u30c7\u30eb\u3067\u306f\u3001\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u30fc\u3092\u4f7f\u7528\u3057\u3066\u753b\u50cf\u7a7a\u9593\u3068\u6f5c\u5728\u7a7a\u9593\u3092\u30de\u30c3\u30d4\u30f3\u30b0\u3057\u307e\u3059\u3002\u62e1\u6563\u30e2\u30c7\u30eb\u306f\u6f5c\u5728\u7a7a\u9593\u3067\u6a5f\u80fd\u3059\u308b\u305f\u3081\u3001\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u304c\u306f\u308b\u304b\u306b\u7c21\u5358\u306b\u306a\u308a\u307e\u3059\u3002\u3053\u308c\u306f\u3001<a href=\"https://arxiv.org/abs/2112.10752\">\u6f5c\u5728\u62e1\u6563\u30e2\u30c7\u30eb\u3092\u7528\u3044\u305f\u8ad6\u6587\u306e\u9ad8\u89e3\u50cf\u5ea6\u753b\u50cf\u5408\u6210\u306b\u57fa\u3065\u3044\u3066\u3044\u307e\u3059</a></p>\u3002\n<p>\u4e8b\u524d\u306b\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3055\u308c\u305f\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u30fc\u3092\u4f7f\u7528\u3057\u3001\u4e8b\u524d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u6e08\u307f\u306e\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u30fc\u306e\u6f5c\u5728\u7a7a\u9593\u3067\u62e1\u6563 U-Net \u3092\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u307e\u3059\u3002</p>\n<p><a href=\"../ddpm/index.html\">\u3088\u308a\u5358\u7d14\u306a\u62e1\u6563\u5b9f\u88c5\u306b\u3064\u3044\u3066\u306f\u3001DDPM \u5b9f\u88c5\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002</a><span translate=no>_^_1_^_</span>\u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\u306a\u3069\u306b\u3082\u540c\u3058\u8868\u8a18\u3092\u4f7f\u3044\u307e\u3059</p>\u3002<span translate=no>_^_0_^_</span>\n",
|
||||
"<h2>Latent diffusion model</h2>\n<p>This contains following components:</p>\n<ul><li><a href=\"model/autoencoder.html\">AutoEncoder</a> </li>\n<li><a href=\"model/unet.html\">U-Net</a> with <a href=\"model/unet_attention.html\">attention</a> </li>\n<li><a href=\"model/clip_embedder.html\">CLIP embeddings generator</a></li></ul>\n": "<h2>\u6f5c\u4f0f\u62e1\u6563\u30e2\u30c7\u30eb</h2>\n<p>\u3053\u308c\u306b\u306f\u4ee5\u4e0b\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304c\u542b\u307e\u308c\u307e\u3059\u3002</p>\n<ul><li><a href=\"model/autoencoder.html\">\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0</a></li>\n<li><a href=\"model/unet.html\"><a href=\"model/unet_attention.html\">\u6ce8\u610f\u3092\u5411\u3051\u305fU-Net</a></a></li>\n<li><a href=\"model/clip_embedder.html\">CLIP \u57cb\u3081\u8fbc\u307f\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc</a></li></ul>\n",
|
||||
"<h3>Get <a href=\"model/clip_embedder.html\">CLIP embeddings</a> for a list of text prompts</h3>\n": "<h3>\u30c6\u30ad\u30b9\u30c8\u30d7\u30ed\u30f3\u30d7\u30c8\u306e\u30ea\u30b9\u30c8\u306e <a href=\"model/clip_embedder.html\">CLIP \u57cb\u3081\u8fbc\u307f\u3092\u53d6\u5f97\u3059\u308b</a></h3>\n",
|
||||
"<h3>Get image from the latent representation</h3>\n<p>We scale down by the scaling factor and then decode.</p>\n": "<h3>\u6f5c\u5728\u8868\u73fe\u304b\u3089\u753b\u50cf\u3092\u53d6\u5f97</h3>\n<p>\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u4fc2\u6570\u3067\u30b9\u30b1\u30fc\u30eb\u30c0\u30a6\u30f3\u3057\u3066\u304b\u3089\u30c7\u30b3\u30fc\u30c9\u3057\u307e\u3059\u3002</p>\n",
|
||||
"<h3>Get model device</h3>\n": "<h3>\u30e2\u30c7\u30eb\u30c7\u30d0\u30a4\u30b9\u3092\u53d6\u5f97</h3>\n",
|
||||
"<h3>Get scaled latent space representation of the image</h3>\n<p>The encoder output is a distribution. We sample from that and multiply by the scaling factor.</p>\n": "<h3>\u753b\u50cf\u306e\u62e1\u5927\u7e2e\u5c0f\u3055\u308c\u305f\u6f5c\u5728\u7a7a\u9593\u8868\u73fe\u3092\u53d6\u5f97</h3>\n<p>\u30a8\u30f3\u30b3\u30fc\u30c0\u51fa\u529b\u306f\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3\u3067\u3059\u3002\u305d\u3053\u304b\u3089\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057\u3001\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u4fc2\u6570\u3092\u639b\u3051\u307e\u3059</p>\u3002\n",
|
||||
"<h3>Predict noise</h3>\n<p>Predict noise given the latent representation <span translate=no>_^_0_^_</span>, time step <span translate=no>_^_1_^_</span>, and the conditioning context <span translate=no>_^_2_^_</span>.</p>\n<p><span translate=no>_^_3_^_</span></p>\n": "<h3>\u30ce\u30a4\u30ba\u3092\u4e88\u6e2c</h3>\n<p>\u6f5c\u5728\u8868\u73fe\u3001\u30bf\u30a4\u30e0\u30b9\u30c6\u30c3\u30d7<span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u3001<span translate=no>_^_2_^_</span>\u6761\u4ef6\u4ed8\u3051\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3092\u8003\u616e\u3057\u3066\u30ce\u30a4\u30ba\u3092\u4e88\u6e2c\u3057\u307e\u3059\u3002</p>\n<p><span translate=no>_^_3_^_</span></p>\n",
|
||||
"<p> <em>This is an empty wrapper class around the <a href=\"model/unet.html\">U-Net</a>. We keep this to have the same model structure as <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a> so that we do not have to map the checkpoint weights explicitly</em>.</p>\n": "<p><em>\u3053\u308c\u306f <a href=\"model/unet.html\">U-Net</a> \u5468\u8fba\u306e\u7a7a\u306e\u30e9\u30c3\u30d1\u30fc\u30af\u30e9\u30b9\u3067\u3059\u3002\u30c1\u30a7\u30c3\u30af\u30dd\u30a4\u30f3\u30c8\u306e\u91cd\u307f\u3092\u660e\u793a\u7684\u306b\u30de\u30c3\u30d4\u30f3\u30b0\u3059\u308b\u5fc5\u8981\u304c\u306a\u3044\u3088\u3046\u306b\u3001\u3053\u308c\u3092 <a href=\"https://github.com/CompVis/stable-diffusion\">compVis/Stable-Diffusion</a> \u3068\u540c\u3058\u30e2\u30c7\u30eb\u69cb\u9020\u306b\u3057\u3066\u304a\u304d\u307e\u3059</em></p>\u3002\n",
|
||||
"<p><a href=\"model/clip_embedder.html\">CLIP embeddings generator</a> </p>\n": "<p><a href=\"model/clip_embedder.html\">CLIP \u57cb\u3081\u8fbc\u307f\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc</a></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> schedule </p>\n": "<p><span translate=no>_^_0_^_</span>\u30b9\u30b1\u30b8\u30e5\u30fc\u30eb</p>\n",
|
||||
"<p>Auto-encoder and scaling factor </p>\n": "<p>\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u3068\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u30d5\u30a1\u30af\u30bf\u30fc</p>\n",
|
||||
"<p>Number of steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30b9\u30c6\u30c3\u30d7\u6570 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Wrap the <a href=\"model/unet.html\">U-Net</a> to keep the same model structure as <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a>. </p>\n": "<p><a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/Stable-Diffusion\u3068\u540c\u3058\u30e2\u30c7\u30eb\u69cb\u9020\u3092\u4fdd\u3064\u305f\u3081\u306b</a> <a href=\"model/unet.html\">U-Net</a> \u3092\u30e9\u30c3\u30d7\u3057\u3066\u304f\u3060\u3055\u3044\u3002</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the <a href=\"model/unet.html\">U-Net</a> that predicts noise <span translate=no>_^_1_^_</span>, in latent space </li>\n<li><span translate=no>_^_2_^_</span> is the <a href=\"model/autoencoder.html\">AutoEncoder</a> </li>\n<li><span translate=no>_^_3_^_</span> is the <a href=\"model/clip_embedder.html\">CLIP embeddings generator</a> </li>\n<li><span translate=no>_^_4_^_</span> is the scaling factor for the latent space. The encodings of the autoencoder are scaled by this before feeding into the U-Net. </li>\n<li><span translate=no>_^_5_^_</span> is the number of diffusion steps <span translate=no>_^_6_^_</span>. </li>\n<li><span translate=no>_^_7_^_</span> is the start of the <span translate=no>_^_8_^_</span> schedule. </li>\n<li><span translate=no>_^_9_^_</span> is the end of the <span translate=no>_^_10_^_</span> schedule.</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span><a href=\"model/unet.html\"><span translate=no>_^_1_^_</span>\u6f5c\u4f0f\u7a7a\u9593\u306e\u30ce\u30a4\u30ba\u3092\u4e88\u6e2c\u3059\u308bU-Net\u3067\u3059</a></li>\n<li><span translate=no>_^_2_^_</span><a href=\"model/autoencoder.html\">\u306f\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u3067\u3059</a></li>\n<li><span translate=no>_^_3_^_</span><a href=\"model/clip_embedder.html\">CLIP \u57cb\u3081\u8fbc\u307f\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3067\u3059</a></li>\n<li><span translate=no>_^_4_^_</span>\u306f\u6f5c\u5728\u7a7a\u9593\u306e\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u4fc2\u6570\u3067\u3059\u3002\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u306e\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u306f\u3001U-Net\u306b\u30d5\u30a3\u30fc\u30c9\u3059\u308b\u524d\u306b\u3053\u308c\u306b\u3088\u3063\u3066\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u3055\u308c\u307e\u3059</li>\u3002\n<li><span translate=no>_^_5_^_</span>\u306f\u62e1\u6563\u30b9\u30c6\u30c3\u30d7\u306e\u6570\u3067\u3059\u3002<span translate=no>_^_6_^_</span></li>\n<li><span translate=no>_^_7_^_</span><span translate=no>_^_8_^_</span>\u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\u306e\u59cb\u307e\u308a\u3067\u3059\u3002</li>\n<li><span translate=no>_^_9_^_</span><span translate=no>_^_10_^_</span>\u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\u306f\u7d42\u4e86\u3067\u3059\u3002</li></ul>\n",
|
||||
"Annotated PyTorch implementation/tutorial of latent diffusion models from paper High-Resolution Image Synthesis with Latent Diffusion Models": "\u8ad6\u6587\u304b\u3089\u306e\u6f5c\u5728\u62e1\u6563\u30e2\u30c7\u30eb\u306e\u6ce8\u91c8\u4ed8\u304dPyTorch\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u6f5c\u4f0f\u62e1\u6563\u30e2\u30c7\u30eb\u306b\u3088\u308b\u9ad8\u89e3\u50cf\u5ea6\u753b\u50cf\u5408\u6210",
|
||||
"Latent Diffusion Models": "\u6f5c\u5728\u62e1\u6563\u30e2\u30c7\u30eb"
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"<h1>Latent Diffusion Models</h1>\n<p>Latent diffusion models use an auto-encoder to map between image space and latent space. The diffusion model works on the latent space, which makes it a lot easier to train. It is based on paper <a href=\"https://arxiv.org/abs/2112.10752\">High-Resolution Image Synthesis with Latent Diffusion Models</a>.</p>\n<p>They use a pre-trained auto-encoder and train the diffusion U-Net on the latent space of the pre-trained auto-encoder.</p>\n<p>For a simpler diffusion implementation refer to our <a href=\"../ddpm/index.html\">DDPM implementation</a>. We use same notations for <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> schedules, etc.</p>\n": "<h1>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0d86\u0d9a\u0dd8\u0dad\u0dd2</h1>\n<p>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0dbb\u0dd6\u0db4 \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0dc3\u0dc4 \u0d9c\u0dd4\u0db4\u0dca\u0dad \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0d85\u0dad\u0dbb \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca \u0d9c\u0dad \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba\u0d9a\u0dca \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0dba\u0dd2. \u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba \u0dc3\u0dd0\u0dc4\u0dd0\u0dbd\u0dca\u0dbd\u0dd4 \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0db8\u0dad \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf \u0d9a\u0dbb\u0dba\u0dd2, \u0d91\u0dba \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0db4\u0dc4\u0dc3\u0dd4 \u0d9a\u0dbb\u0dba\u0dd2. \u0d91\u0dba \u0db4\u0daf\u0db1\u0db8\u0dca \u0dc0\u0dd3 \u0d87\u0dad\u0dca\u0dad\u0dda <a href=\"https://arxiv.org/abs/2112.10752\">\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0dc3\u0db8\u0d9f \u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0d85\u0db0\u0dd2-\u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1 \u0dbb\u0dd6\u0db4 \u0dc3\u0d82\u0dc1\u0dca\u0dbd\u0dda\u0dc2\u0dab\u0dba</a> \u0db8\u0dad \u0dba.</p>\n<p>\u0d94\u0dc0\u0dd4\u0db1\u0dca \u0db4\u0dd9\u0dbb \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0db1 \u0dbd\u0daf \u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba\u0d9a\u0dca \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1 \u0d85\u0dad\u0dbb \u0db4\u0dd9\u0dbb \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0db1 \u0dbd\u0daf \u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba\u0dda \u0d9c\u0dd4\u0db4\u0dca\u0dad \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0db8\u0dad \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca \u0db4\u0dd4\u0dc4\u0dd4\u0dab\u0dd4 \u0d9a\u0dbb\u0dba\u0dd2.</p>\n<p>\u0dc3\u0dbb\u0dbd \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0d9c\u0dda <a href=\"../ddpm/index.html\">DDPM \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8</a> \u0dc0\u0dd9\u0dad \u0dba\u0ddc\u0db8\u0dd4 \u0dc0\u0db1\u0dca\u0db1. <span translate=no>_^_1_^_</span>\u0d9a\u0dcf\u0dbd\u0dc3\u0da7\u0dc4\u0db1\u0dca<span translate=no>_^_0_^_</span> \u0d86\u0daf\u0dd2\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dd2 \u0d91\u0d9a\u0db8 \u0d85\u0d82\u0d9a\u0db1 \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db8\u0dd4.</p>\n",
|
||||
"<h2>Latent diffusion model</h2>\n<p>This contains following components:</p>\n<ul><li><a href=\"model/autoencoder.html\">AutoEncoder</a> </li>\n<li><a href=\"model/unet.html\">U-Net</a> with <a href=\"model/unet_attention.html\">attention</a> </li>\n<li><a href=\"model/clip_embedder.html\">CLIP embeddings generator</a></li></ul>\n": "<h2>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba</h2>\n<p>\u0db4\u0dc4\u0dad \u0dc3\u0db3\u0dc4\u0db1\u0dca \u0dc3\u0d82\u0dbb\u0da0\u0d9a \u0d85\u0da9\u0d82\u0d9c\u0dd4 \u0dc0\u0dda:</p>\n<ul><li><a href=\"model/autoencoder.html\">\u0dc3\u0dca\u0dc0\u0dba\u0d82 \u0d86\u0d9a\u0dda\u0dad\u0d9a\u0dba</a></li>\n<li><a href=\"model/unet.html\">U-Net</a> <a href=\"model/unet_attention.html\">\u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba\u0dd9\u0db1\u0dca</a></li>\n<li><a href=\"model/clip_embedder.html\">CLIP \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0d8b\u0dad\u0dca\u0db4\u0dcf\u0daf\u0d9a \u0dba\u0db1\u0dca\u0dad\u0dca\u0dbb\u0dba</a></li></ul>\n",
|
||||
"<h3>Get <a href=\"model/clip_embedder.html\">CLIP embeddings</a> for a list of text prompts</h3>\n": "<h3>\u0db4\u0dd9\u0dc5 \u0dc0\u0dd2\u0db8\u0dc3\u0dd4\u0db8\u0dca \u0dbd\u0dd0\u0dba\u0dd2\u0dc3\u0dca\u0dad\u0dd4\u0dc0\u0d9a\u0dca <a href=\"model/clip_embedder.html\">\u0dc3\u0db3\u0dc4\u0dcf CLIP \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca</a> \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</h3>\n",
|
||||
"<h3>Get image from the latent representation</h3>\n<p>We scale down by the scaling factor and then decode.</p>\n": "<h3>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba\u0dd9\u0db1\u0dca \u0dbb\u0dd6\u0db4\u0dba \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</h3>\n<p>\u0d85\u0db4\u0dd2 \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab \u0dc3\u0dcf\u0db0\u0d9a\u0dba \u0d85\u0db1\u0dd4\u0dc0 \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb \u0dc0\u0dd2\u0d9a\u0dda\u0dad\u0db1\u0dba \u0d9a\u0dbb\u0db8\u0dd4.</p>\n",
|
||||
"<h3>Get model device</h3>\n": "<h3>\u0d86\u0daf\u0dbb\u0dca\u0dc1 \u0d8b\u0db4\u0dcf\u0d82\u0d9c\u0dba \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</h3>\n",
|
||||
"<h3>Get scaled latent space representation of the image</h3>\n<p>The encoder output is a distribution. We sample from that and multiply by the scaling factor.</p>\n": "<h3>\u0dbb\u0dd6\u0db4\u0dba\u0dda \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb\u0db1 \u0dbd\u0daf \u0d9c\u0dd4\u0db4\u0dca\u0dad \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</h3>\n<p>\u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dca \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0daf\u0dcf\u0db1\u0dba \u0db6\u0dd9\u0daf\u0dcf \u0dc4\u0dd0\u0dbb\u0dd3\u0db8\u0d9a\u0dd2. \u0d85\u0db4\u0dd2 \u0d91\u0dba\u0dd2\u0db1\u0dca \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2 \u0d9a\u0dbb \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0dc3\u0dcf\u0db0\u0d9a\u0dba \u0db8\u0d9c\u0dd2\u0db1\u0dca \u0d9c\u0dd4\u0dab \u0d9a\u0dbb\u0db8\u0dd4.</p>\n",
|
||||
"<h3>Predict noise</h3>\n<p>Predict noise given the latent representation <span translate=no>_^_0_^_</span>, time step <span translate=no>_^_1_^_</span>, and the conditioning context <span translate=no>_^_2_^_</span>.</p>\n<p><span translate=no>_^_3_^_</span></p>\n": "<h3>\u0dc1\u0db6\u0dca\u0daf\u0dba \u0db4\u0dd4\u0dbb\u0ddd\u0d9a\u0dae\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</h3>\n<p>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba<span translate=no>_^_0_^_</span>, \u0d9a\u0dcf\u0dbd \u0db4\u0dd2\u0dba\u0dc0\u0dbb<span translate=no>_^_1_^_</span> \u0dc3\u0dc4 \u0d9a\u0db1\u0dca\u0da9\u0dd2\u0dc2\u0db1\u0dda\u0dc2\u0db1\u0dca \u0dc3\u0db1\u0dca\u0daf\u0dbb\u0dca\u0db7\u0dba \u0d85\u0db1\u0dd4\u0dc0 \u0dc1\u0db6\u0dca\u0daf\u0dba \u0db4\u0dd4\u0dbb\u0ddd\u0d9a\u0dae\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1<span translate=no>_^_2_^_</span>.</p>\n<p><span translate=no>_^_3_^_</span></p>\n",
|
||||
"<p> <em>This is an empty wrapper class around the <a href=\"model/unet.html\">U-Net</a>. We keep this to have the same model structure as <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a> so that we do not have to map the checkpoint weights explicitly</em>.</p>\n": "<p><em>\u0db8\u0dd9\u0dba <a href=\"model/unet.html\">\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca</a> \u0dc0\u0da7\u0dcf \u0dc4\u0dd2\u0dc3\u0dca \u0daf\u0dc0\u0da7\u0db1 \u0db4\u0db1\u0dca\u0dad\u0dd2\u0dba\u0d9a\u0dd2. \u0da0\u0dd9\u0d9a\u0dca\u0db4\u0ddc\u0dba\u0dd2\u0db1\u0dca\u0da7\u0dca \u0db6\u0dbb \u0db4\u0dd0\u0dc4\u0dd0\u0daf\u0dd2\u0dbd\u0dd2\u0dc0 \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca \u0d9c\u0dad \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0d85\u0dc0\u0dc1\u0dca\u0dba \u0db1\u0ddc\u0dc0\u0db1 \u0db4\u0dbb\u0dd2\u0daf\u0dd2 <a href=\"https://github.com/CompVis/stable-diffusion\">\u0d9a\u0ddc\u0db8\u0dca\u0dc0\u0dd2\u0dc3\u0dca/\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba</a> \u0dc4\u0dcf \u0dc3\u0db8\u0dcf\u0db1 \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0dc0\u0dca\u0dba\u0dd4\u0dc4\u0dba\u0d9a\u0dca \u0dad\u0dd2\u0db6\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0d85\u0db4\u0dd2 \u0db8\u0dd9\u0dba \u0dad\u0db6\u0dcf</em> \u0d9c\u0db1\u0dd2\u0db8\u0dd4.</p>\n",
|
||||
"<p><a href=\"model/clip_embedder.html\">CLIP embeddings generator</a> </p>\n": "<p><a href=\"model/clip_embedder.html\">CLIP \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0d8b\u0dad\u0dca\u0db4\u0dcf\u0daf\u0d9a \u0dba\u0db1\u0dca\u0dad\u0dca\u0dbb\u0dba</a></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> schedule </p>\n": "<p><span translate=no>_^_0_^_</span>\u0d9a\u0dcf\u0dbd\u0dc3\u0da7\u0dc4\u0db1</p>\n",
|
||||
"<p>Auto-encoder and scaling factor </p>\n": "<p>\u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba \u0dc3\u0dc4 \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab \u0dc3\u0dcf\u0db0\u0d9a\u0dba</p>\n",
|
||||
"<p>Number of steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0dab\u0db1<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Wrap the <a href=\"model/unet.html\">U-Net</a> to keep the same model structure as <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a>. </p>\n": "<p><a href=\"https://github.com/CompVis/stable-diffusion\">Compvis/\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0dbd\u0dd9\u0dc3 \u0d91\u0db8 \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba \u0dc0\u0dca\u0dba\u0dd4\u0dc4\u0dba \u0dad\u0db6\u0dcf \u0d9c\u0dd0\u0db1\u0dd3\u0db8\u0da7 <a href=\"model/unet.html\">U-\u0dc1\u0dd4\u0daf\u0dca\u0db0</a></a> \u0d86\u0dc0\u0dbb\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dc0\u0dcf.</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the <a href=\"model/unet.html\">U-Net</a> that predicts noise <span translate=no>_^_1_^_</span>, in latent space </li>\n<li><span translate=no>_^_2_^_</span> is the <a href=\"model/autoencoder.html\">AutoEncoder</a> </li>\n<li><span translate=no>_^_3_^_</span> is the <a href=\"model/clip_embedder.html\">CLIP embeddings generator</a> </li>\n<li><span translate=no>_^_4_^_</span> is the scaling factor for the latent space. The encodings of the autoencoder are scaled by this before feeding into the U-Net. </li>\n<li><span translate=no>_^_5_^_</span> is the number of diffusion steps <span translate=no>_^_6_^_</span>. </li>\n<li><span translate=no>_^_7_^_</span> is the start of the <span translate=no>_^_8_^_</span> schedule. </li>\n<li><span translate=no>_^_9_^_</span> is the end of the <span translate=no>_^_10_^_</span> schedule.</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0dda \u0dc1\u0db6\u0dca\u0daf\u0dba<span translate=no>_^_1_^_</span> \u0db4\u0dd4\u0dbb\u0ddd\u0d9a\u0dae\u0db1\u0dba \u0d9a\u0dbb\u0db1 <a href=\"model/unet.html\">\u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca</a> \u0dba</li>\n<li><span translate=no>_^_2_^_</span>\u0db8\u0dd9\u0db8 <a href=\"model/autoencoder.html\">\u0dc3\u0dca\u0dc0\u0dba\u0d82 \u0d86\u0d9a\u0dda\u0dad\u0d9a\u0dba</a> \u0dc0\u0dda</li>\n<li><span translate=no>_^_3_^_</span><a href=\"model/clip_embedder.html\">CLIP \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0d8b\u0dad\u0dca\u0db4\u0dcf\u0daf\u0d9a \u0dba\u0db1\u0dca\u0dad\u0dca\u0dbb\u0dba</a></li>\n<li><span translate=no>_^_4_^_</span>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab \u0dc3\u0dcf\u0db0\u0d9a\u0dba \u0dc0\u0dda. \u0dba\u0dd6-\u0db1\u0dd9\u0da7\u0dca \u0dc0\u0dd9\u0dad \u0db4\u0ddd\u0dc2\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 \u0db4\u0dd9\u0dbb \u0d94\u0da7\u0ddd\u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba\u0dda \u0d9a\u0dda\u0dad\u0dd3\u0d9a\u0dbb\u0dab \u0db8\u0dda \u0db8\u0d9c\u0dd2\u0db1\u0dca \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab\u0dba \u0d9a\u0dbb\u0db1\u0dd4 \u0dbd\u0dd0\u0db6\u0dda.</li>\n<li><span translate=no>_^_5_^_</span>\u0dba\u0db1\u0dd4 \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0dda \u0db4\u0dd2\u0dba\u0dc0\u0dbb \u0d9c\u0dab\u0db1 \u0dc0\u0dda<span translate=no>_^_6_^_</span>.</li>\n<li><span translate=no>_^_7_^_</span><span translate=no>_^_8_^_</span>\u0d9a\u0dcf\u0dbd\u0dc3\u0da7\u0dc4\u0db1\u0dda \u0d86\u0dbb\u0db8\u0dca\u0db7\u0dba \u0dc0\u0dda.</li>\n<li><span translate=no>_^_9_^_</span><span translate=no>_^_10_^_</span>\u0d9a\u0dcf\u0dbd\u0dc3\u0da7\u0dc4\u0db1\u0dda \u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dba\u0dba\u0dd2.</li></ul>\n",
|
||||
"Annotated PyTorch implementation/tutorial of latent diffusion models from paper High-Resolution Image Synthesis with Latent Diffusion Models": "PyTorch \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8/\u0db1\u0dd2\u0db6\u0db1\u0dca\u0db0\u0db1\u0dba \u0d9a\u0da9\u0daf\u0dcf\u0dc3\u0dd2 \u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0d9c\u0dd4\u0db4\u0dca\u0dad \u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0dc3\u0db8\u0d9f \u0d85\u0db0\u0dd2-\u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1 \u0dbb\u0dd6\u0db4 \u0dc3\u0d82\u0dc1\u0dca\u0dbd\u0dda\u0dc2\u0dab\u0dba",
|
||||
"Latent Diffusion Models": "\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0dc0\u0dd2\u0dc3\u0dbb\u0dab \u0d86\u0d9a\u0dd8\u0dad\u0dd2"
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"<h1>Latent Diffusion Models</h1>\n<p>Latent diffusion models use an auto-encoder to map between image space and latent space. The diffusion model works on the latent space, which makes it a lot easier to train. It is based on paper <a href=\"https://arxiv.org/abs/2112.10752\">High-Resolution Image Synthesis with Latent Diffusion Models</a>.</p>\n<p>They use a pre-trained auto-encoder and train the diffusion U-Net on the latent space of the pre-trained auto-encoder.</p>\n<p>For a simpler diffusion implementation refer to our <a href=\"../ddpm/index.html\">DDPM implementation</a>. We use same notations for <span translate=no>_^_0_^_</span>, <span translate=no>_^_1_^_</span> schedules, etc.</p>\n": "<h1>\u6f5c\u5728\u6269\u6563\u6a21\u578b</h1>\n<p>\u6f5c\u5728\u6269\u6563\u6a21\u578b\u4f7f\u7528\u81ea\u52a8\u7f16\u7801\u5668\u5728\u56fe\u50cf\u7a7a\u95f4\u548c\u6f5c\u5728\u7a7a\u95f4\u4e4b\u95f4\u8fdb\u884c\u6620\u5c04\u3002\u6269\u6563\u6a21\u578b\u9002\u7528\u4e8e\u6f5c\u5728\u7a7a\u95f4\uff0c\u8fd9\u4f7f\u5f97\u8bad\u7ec3\u53d8\u5f97\u5bb9\u6613\u5f97\u591a\u3002\u5b83\u57fa\u4e8e<a href=\"https://arxiv.org/abs/2112.10752\">\u5e26\u6709\u6f5c\u5728\u6269\u6563\u6a21\u578b\u7684\u7eb8\u8d28\u9ad8\u5206\u8fa8\u7387\u56fe\u50cf\u5408\u6210</a>\u3002</p>\n<p>\u5b83\u4eec\u4f7f\u7528\u9884\u8bad\u7ec3\u7684\u81ea\u52a8\u7f16\u7801\u5668\uff0c\u5728\u9884\u8bad\u7ec3\u7684\u81ea\u52a8\u7f16\u7801\u5668\u7684\u6f5c\u5728\u7a7a\u95f4\u4e0a\u8bad\u7ec3\u6269\u6563 U-Net\u3002</p>\n<p>\u6709\u5173\u66f4\u7b80\u5355\u7684\u6269\u6563\u5b9e\u73b0\uff0c\u8bf7\u53c2\u9605\u6211\u4eec\u7684 <a href=\"../ddpm/index.html\">DDPM \u5b9e\u73b0</a>\u3002\u6211\u4eec\u5bf9<span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u65f6\u95f4\u8868\u7b49\u4f7f\u7528\u76f8\u540c\u7684\u7b26\u53f7\u3002</p>\n",
|
||||
"<h2>Latent diffusion model</h2>\n<p>This contains following components:</p>\n<ul><li><a href=\"model/autoencoder.html\">AutoEncoder</a> </li>\n<li><a href=\"model/unet.html\">U-Net</a> with <a href=\"model/unet_attention.html\">attention</a> </li>\n<li><a href=\"model/clip_embedder.html\">CLIP embeddings generator</a></li></ul>\n": "<h2>\u6f5c\u5728\u6269\u6563\u6a21\u578b</h2>\n<p>\u5b83\u5305\u542b\u4ee5\u4e0b\u7ec4\u4ef6\uff1a</p>\n<ul><li><a href=\"model/autoencoder.html\">\u81ea\u52a8\u7f16\u7801\u5668</a></li>\n<li><a href=\"model/unet_attention.html\">\u5907\u53d7\u5173\u6ce8</a>\u7684 <a href=\"model/unet.html\">U-Net</a></li>\n<li><a href=\"model/clip_embedder.html\">CLIP \u5d4c\u5165\u5f0f\u751f\u6210\u5668</a></li></ul>\n",
|
||||
"<h3>Get <a href=\"model/clip_embedder.html\">CLIP embeddings</a> for a list of text prompts</h3>\n": "<h3>\u83b7\u53d6 <a href=\"model/clip_embedder.html\">CLIP \u5d4c\u5165</a>\u4ee5\u83b7\u53d6\u6587\u672c\u63d0\u793a\u5217\u8868</h3>\n",
|
||||
"<h3>Get image from the latent representation</h3>\n<p>We scale down by the scaling factor and then decode.</p>\n": "<h3>\u4ece\u6f5c\u5728\u8868\u793a\u4e2d\u83b7\u53d6\u56fe\u50cf</h3>\n<p>\u6211\u4eec\u6309\u7f29\u653e\u7cfb\u6570\u5411\u4e0b\u7f29\u653e\uff0c\u7136\u540e\u89e3\u7801\u3002</p>\n",
|
||||
"<h3>Get model device</h3>\n": "<h3>\u83b7\u53d6\u8bbe\u5907\u6a21\u578b</h3>\n",
|
||||
"<h3>Get scaled latent space representation of the image</h3>\n<p>The encoder output is a distribution. We sample from that and multiply by the scaling factor.</p>\n": "<h3>\u83b7\u53d6\u56fe\u50cf\u7684\u7f29\u653e\u6f5c\u5728\u7a7a\u95f4\u8868\u793a</h3>\n<p>\u7f16\u7801\u5668\u8f93\u51fa\u662f\u5206\u5e03\u5f0f\u3002\u6211\u4eec\u4ece\u4e2d\u53d6\u6837\u5e76\u4e58\u4ee5\u7f29\u653e\u7cfb\u6570\u3002</p>\n",
|
||||
"<h3>Predict noise</h3>\n<p>Predict noise given the latent representation <span translate=no>_^_0_^_</span>, time step <span translate=no>_^_1_^_</span>, and the conditioning context <span translate=no>_^_2_^_</span>.</p>\n<p><span translate=no>_^_3_^_</span></p>\n": "<h3>\u9884\u6d4b\u566a\u97f3</h3>\n<p>\u6839\u636e\u6f5c\u5728\u8868\u793a<span translate=no>_^_0_^_</span>\u3001\u65f6\u95f4\u6b65<span translate=no>_^_1_^_</span>\u957f\u548c\u6761\u4ef6\u73af\u5883\u9884\u6d4b\u566a\u58f0<span translate=no>_^_2_^_</span>\u3002</p>\n<p><span translate=no>_^_3_^_</span></p>\n",
|
||||
"<p> <em>This is an empty wrapper class around the <a href=\"model/unet.html\">U-Net</a>. We keep this to have the same model structure as <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a> so that we do not have to map the checkpoint weights explicitly</em>.</p>\n": "<p><em>\u8fd9\u662f\u56f4\u7ed5 <a href=\"model/unet.html\">U-Net</a> \u7684\u7a7a\u5305\u88c5\u7c7b\u3002\u6211\u4eec\u4fdd\u6301\u5b83\u4e0e <a href=\"https://github.com/CompVis/stable-diffusion\">compVIS/Stable-</a> Difusion \u76f8\u540c\u7684\u6a21\u578b\u7ed3\u6784\uff0c\u8fd9\u6837\u6211\u4eec\u5c31\u4e0d\u5fc5\u660e\u786e\u5730\u6620\u5c04\u68c0\u67e5\u70b9\u6743\u91cd</em>\u3002</p>\n",
|
||||
"<p><a href=\"model/clip_embedder.html\">CLIP embeddings generator</a> </p>\n": "<p><a href=\"model/clip_embedder.html\">CLIP \u5d4c\u5165\u5f0f\u751f\u6210\u5668</a></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> schedule </p>\n": "<p><span translate=no>_^_0_^_</span>\u65f6\u95f4\u8868</p>\n",
|
||||
"<p>Auto-encoder and scaling factor </p>\n": "<p>\u81ea\u52a8\u7f16\u7801\u5668\u548c\u7f29\u653e\u7cfb\u6570</p>\n",
|
||||
"<p>Number of steps <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6b65\u6570<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Wrap the <a href=\"model/unet.html\">U-Net</a> to keep the same model structure as <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a>. </p>\n": "<p>\u5c01\u88c5 <a href=\"model/unet.html\">U-Net</a> \u4ee5\u4fdd\u6301\u4e0e <a href=\"https://github.com/CompVis/stable-diffusion\">compVIS/Stable-</a> Difusion \u76f8\u540c\u7684\u6a21\u578b\u7ed3\u6784\u3002</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the <a href=\"model/unet.html\">U-Net</a> that predicts noise <span translate=no>_^_1_^_</span>, in latent space </li>\n<li><span translate=no>_^_2_^_</span> is the <a href=\"model/autoencoder.html\">AutoEncoder</a> </li>\n<li><span translate=no>_^_3_^_</span> is the <a href=\"model/clip_embedder.html\">CLIP embeddings generator</a> </li>\n<li><span translate=no>_^_4_^_</span> is the scaling factor for the latent space. The encodings of the autoencoder are scaled by this before feeding into the U-Net. </li>\n<li><span translate=no>_^_5_^_</span> is the number of diffusion steps <span translate=no>_^_6_^_</span>. </li>\n<li><span translate=no>_^_7_^_</span> is the start of the <span translate=no>_^_8_^_</span> schedule. </li>\n<li><span translate=no>_^_9_^_</span> is the end of the <span translate=no>_^_10_^_</span> schedule.</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u9884\u6d4b\u6f5c\u5728\u7a7a\u95f4\u4e2d\u566a\u58f0<span translate=no>_^_1_^_</span>\u7684 <a href=\"model/unet.html\">U-Ne</a> t</li>\n<li><span translate=no>_^_2_^_</span>\u662f<a href=\"model/autoencoder.html\">\u81ea\u52a8\u7f16\u7801\u5668</a></li>\n<li><span translate=no>_^_3_^_</span>\u662f <a href=\"model/clip_embedder.html\">CLIP \u5d4c\u5165\u751f\u6210\u5668</a></li>\n<li><span translate=no>_^_4_^_</span>\u662f\u6f5c\u5728\u7a7a\u95f4\u7684\u7f29\u653e\u7cfb\u6570\u3002\u5728\u9988\u5165 U-Net \u4e4b\u524d\uff0c\u81ea\u52a8\u7f16\u7801\u5668\u7684\u7f16\u7801\u4f1a\u6309\u6b64\u8fdb\u884c\u7f29\u653e\u3002</li>\n<li><span translate=no>_^_5_^_</span>\u662f\u6269\u6563\u6b65\u9aa4\u7684\u6570\u91cf<span translate=no>_^_6_^_</span>\u3002</li>\n<li><span translate=no>_^_7_^_</span>\u662f<span translate=no>_^_8_^_</span>\u65f6\u95f4\u8868\u7684\u5f00\u59cb\u3002</li>\n<li><span translate=no>_^_9_^_</span>\u662f<span translate=no>_^_10_^_</span>\u65f6\u95f4\u8868\u7684\u7ed3\u675f\u3002</li></ul>\n",
|
||||
"Annotated PyTorch implementation/tutorial of latent diffusion models from paper High-Resolution Image Synthesis with Latent Diffusion Models": "\u5e26\u6ce8\u91ca\u7684 PyTorch \u5b9e\u73b0/\u6559\u7a0b\u6765\u81ea\u8bba\u6587\u7684\u6f5c\u5728\u6269\u6563\u6a21\u578b\u4f7f\u7528\u6f5c\u5728\u6269\u6563\u6a21\u578b\u8fdb\u884c\u9ad8\u5206\u8fa8\u7387\u56fe\u50cf\u5408\u6210",
|
||||
"Latent Diffusion Models": "\u6f5c\u5728\u6269\u6563\u6a21\u578b"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1><a href=\"../index.html\">Stable Diffusion</a> Models</h1>\n<ul><li><a href=\"autoencoder.html\">AutoEncoder</a> </li>\n<li><a href=\"unet.html\">U-Net</a> with <a href=\"unet_attention.html\">attention</a> </li>\n<li><a href=\"clip_embedder.html\">CLIP embedder</a>.</li></ul>\n": "<h1><a href=\"../index.html\">\u5b89\u5b9a\u62e1\u6563\u30e2\u30c7\u30eb</a></h1>\n<ul><li><a href=\"autoencoder.html\">\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0</a></li>\n<li><a href=\"unet.html\"><a href=\"unet_attention.html\">\u6ce8\u610f\u3092\u5411\u3051\u305fU-Net</a></a></li>\n<li><a href=\"clip_embedder.html\">\u30af\u30ea\u30c3\u30d7\u30a8\u30f3\u30d9\u30c0\u30fc\u3002</a></li></ul>\n",
|
||||
"Models and components for stable diffusion.": "\u5b89\u5b9a\u62e1\u6563\u306e\u305f\u3081\u306e\u30e2\u30c7\u30eb\u3068\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8",
|
||||
"Modules used in stable diffusion": "\u5b89\u5b9a\u62e1\u6563\u306b\u4f7f\u7528\u3055\u308c\u308b\u30e2\u30b8\u30e5\u30fc\u30eb"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1><a href=\"../index.html\">Stable Diffusion</a> Models</h1>\n<ul><li><a href=\"autoencoder.html\">AutoEncoder</a> </li>\n<li><a href=\"unet.html\">U-Net</a> with <a href=\"unet_attention.html\">attention</a> </li>\n<li><a href=\"clip_embedder.html\">CLIP embedder</a>.</li></ul>\n": "<h1><a href=\"../index.html\">\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab</a> \u0d86\u0d9a\u0dd8\u0dad\u0dd2</h1>\n<ul><li><a href=\"autoencoder.html\">\u0dc3\u0dca\u0dc0\u0dba\u0d82 \u0d86\u0d9a\u0dda\u0dad\u0d9a\u0dba</a></li>\n<li><a href=\"unet.html\">U-Net</a> <a href=\"unet_attention.html\">\u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba\u0dd9\u0db1\u0dca</a></li>\n<li><a href=\"clip_embedder.html\">\u0d9a\u0dca\u0dbd\u0dd2\u0db4\u0dca \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0db1\u0dca\u0db1\u0dcf</a>.</li></ul>\n",
|
||||
"Models and components for stable diffusion.": "\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0d86\u0d9a\u0dd8\u0dad\u0dd2 \u0dc3\u0dc4 \u0dc3\u0d82\u0dbb\u0da0\u0d9a.",
|
||||
"Modules used in stable diffusion": "\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1 \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<h1><a href=\"../index.html\">Stable Diffusion</a> Models</h1>\n<ul><li><a href=\"autoencoder.html\">AutoEncoder</a> </li>\n<li><a href=\"unet.html\">U-Net</a> with <a href=\"unet_attention.html\">attention</a> </li>\n<li><a href=\"clip_embedder.html\">CLIP embedder</a>.</li></ul>\n": "<h1><a href=\"../index.html\">\u7a33\u5b9a\u7684\u6269\u6563</a>\u6a21\u578b</h1>\n<ul><li><a href=\"autoencoder.html\">\u81ea\u52a8\u7f16\u7801\u5668</a></li>\n<li><a href=\"unet_attention.html\">\u5907\u53d7\u5173\u6ce8</a>\u7684 <a href=\"unet.html\">U-Net</a></li>\n<li><a href=\"clip_embedder.html\">CLIP \u5d4c\u5165\u5668</a>\u3002</li></ul>\n",
|
||||
"Models and components for stable diffusion.": "\u7528\u4e8e\u7a33\u5b9a\u6269\u6563\u7684\u6a21\u578b\u548c\u7ec4\u4ef6\u3002",
|
||||
"Modules used in stable diffusion": "\u7528\u4e8e\u7a33\u5b9a\u6269\u6563\u7684\u6a21\u5757"
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
{
|
||||
"<h1>Autoencoder for <a href=\"../index.html\">Stable Diffusion</a></h1>\n<p>This implements the auto-encoder model used to map between image space and latent space.</p>\n<p>We have kept to the model definition and naming unchanged from <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a> so that we can load the checkpoints directly.</p>\n": "<h1><a href=\"../index.html\">\u5b89\u5b9a\u3057\u305f\u62e1\u6563\u3092\u5b9f\u73fe\u3059\u308b\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u30fc</a></h1>\n<p>\u3053\u308c\u306f\u3001\u753b\u50cf\u7a7a\u9593\u3068\u6f5c\u5728\u7a7a\u9593\u306e\u30de\u30c3\u30d4\u30f3\u30b0\u306b\u4f7f\u7528\u3055\u308c\u308b\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u30e2\u30c7\u30eb\u3092\u5b9f\u88c5\u3057\u3066\u3044\u307e\u3059\u3002</p>\n<p>\u30c1\u30a7\u30c3\u30af\u30dd\u30a4\u30f3\u30c8\u3092\u76f4\u63a5\u8aad\u307f\u8fbc\u3081\u308b\u3088\u3046\u306b\u3001<a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/Stable-Diffusion\u304b\u3089\u30e2\u30c7\u30eb\u5b9a\u7fa9\u3068\u547d\u540d\u3092\u5909\u66f4\u3057\u3066\u3044\u307e\u305b\u3093</a>\u3002</p>\n",
|
||||
"<h2>Attention block</h2>\n": "<h2>\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30d6\u30ed\u30c3\u30af</h2>\n",
|
||||
"<h2>Autoencoder</h2>\n<p>This consists of the encoder and decoder modules.</p>\n": "<h2>\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0</h2>\n<p>\u3053\u308c\u306f\u30a8\u30f3\u30b3\u30fc\u30c0\u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u30c7\u30b3\u30fc\u30c0\u30e2\u30b8\u30e5\u30fc\u30eb\u3067\u69cb\u6210\u3055\u308c\u3066\u3044\u307e\u3059\u3002</p>\n",
|
||||
"<h2>Decoder module</h2>\n": "<h2>\u30c7\u30b3\u30fc\u30c0\u30e2\u30b8\u30e5\u30fc\u30eb</h2>\n",
|
||||
"<h2>Down-sampling layer</h2>\n": "<h2>\u30c0\u30a6\u30f3\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u30ec\u30a4\u30e4\u30fc</h2>\n",
|
||||
"<h2>Encoder module</h2>\n": "<h2>\u30a8\u30f3\u30b3\u30fc\u30c0\u30e2\u30b8\u30e5\u30fc\u30eb</h2>\n",
|
||||
"<h2>Gaussian Distribution</h2>\n": "<h2>\u30ac\u30a6\u30b9\u5206\u5e03</h2>\n",
|
||||
"<h2>ResNet Block</h2>\n": "<h2>\u30ea\u30cd\u30c3\u30c8\u30d6\u30ed\u30c3\u30af</h2>\n",
|
||||
"<h2>Up-sampling layer</h2>\n": "<h2>\u30a2\u30c3\u30d7\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u30ec\u30a4\u30e4\u30fc</h2>\n",
|
||||
"<h3>Decode images from latent representation</h3>\n<ul><li><span translate=no>_^_0_^_</span> is the latent representation with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<h3>\u6f5c\u5728\u8868\u73fe\u304b\u3089\u753b\u50cf\u3092\u30c7\u30b3\u30fc\u30c9</h3>\n<ul><li><span translate=no>_^_0_^_</span>\u5f62\u3092\u4f7f\u3063\u305f\u6f5c\u5728\u8868\u73fe\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<h3>Encode images to latent representation</h3>\n<ul><li><span translate=no>_^_0_^_</span> is the image tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<h3>\u753b\u50cf\u3092\u6f5c\u5728\u8868\u73fe\u306b\u30a8\u30f3\u30b3\u30fc\u30c9</h3>\n<ul><li><span translate=no>_^_0_^_</span>\u5f62\u72b6\u306e\u3042\u308b\u30a4\u30e1\u30fc\u30b8\u30c6\u30f3\u30bd\u30eb\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<h3>Group normalization</h3>\n<p>This is a helper function, with fixed number of groups and <span translate=no>_^_0_^_</span>.</p>\n": "<h3>\u30b0\u30eb\u30fc\u30d7\u6b63\u898f\u5316</h3>\n<p>\u3053\u308c\u306f\u30d8\u30eb\u30d1\u30fc\u95a2\u6570\u3067\u3001\u30b0\u30eb\u30fc\u30d7\u306e\u6570\u306f\u56fa\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\u3002<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<h3>Swish activation</h3>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h3>\u30b9\u30a6\u30a3\u30c3\u30b7\u30e5\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3</h3>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> convolution mapping </p>\n": "<p><span translate=no>_^_0_^_</span>\u30b3\u30f3\u30dc\u30ea\u30e5\u30fc\u30b7\u30e7\u30f3\u30de\u30c3\u30d4\u30f3\u30b0</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> convolution with stride length of <span translate=no>_^_1_^_</span> to down-sample by a factor of <span translate=no>_^_2_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u30b9\u30c8\u30e9\u30a4\u30c9\u306e\u9577\u3055\u304c\u306e\u7573\u307f\u8fbc\u307f\u304b\u3089\u3001<span translate=no>_^_1_^_</span>\u306e\u4fc2\u6570\u3067\u30c0\u30a6\u30f3\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057\u307e\u3059 <span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> to <span translate=no>_^_1_^_</span> mapping layer for residual connection </p>\n": "<p><span translate=no>_^_0_^_</span><span translate=no>_^_1_^_</span>\u6b8b\u7559\u63a5\u7d9a\u7528\u306e\u30de\u30c3\u30d4\u30f3\u30b0\u30ec\u30a4\u30e4\u3078</p>\n",
|
||||
"<p>Add ResNet Blocks </p>\n": "<p>ResNet \u30d6\u30ed\u30c3\u30af\u3092\u8ffd\u52a0</p>\n",
|
||||
"<p>Add padding </p>\n": "<p>\u30d1\u30c7\u30a3\u30f3\u30b0\u3092\u8ffd\u52a0</p>\n",
|
||||
"<p>Add residual connection </p>\n": "<p>\u6b8b\u4f59\u63a5\u7d9a\u3092\u8ffd\u52a0</p>\n",
|
||||
"<p>Apply convolution </p>\n": "<p>\u30b3\u30f3\u30dc\u30ea\u30e5\u30fc\u30b7\u30e7\u30f3\u3092\u9069\u7528</p>\n",
|
||||
"<p>Attention scaling factor </p>\n": "<p>\u30a2\u30c6\u30f3\u30b7\u30e7\u30f3\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u30d5\u30a1\u30af\u30bf\u30fc</p>\n",
|
||||
"<p>Calculate standard deviation </p>\n": "<p>\u6a19\u6e96\u504f\u5dee\u306e\u8a08\u7b97</p>\n",
|
||||
"<p>Clamp the log of variances </p>\n": "<p>\u5dee\u7570\u306e\u5bfe\u6570\u3092\u30af\u30e9\u30f3\u30d7</p>\n",
|
||||
"<p>Compute <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30b3\u30f3\u30d4\u30e5\u30fc\u30c8 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Convolution to map from embedding space to quantized embedding space moments (mean and log variance) </p>\n": "<p>\u57cb\u3081\u8fbc\u307f\u7a7a\u9593\u304b\u3089\u91cf\u5b50\u5316\u3055\u308c\u305f\u57cb\u3081\u8fbc\u307f\u7a7a\u9593\u306e\u30e2\u30fc\u30e1\u30f3\u30c8\u306b\u30de\u30c3\u30d4\u30f3\u30b0\u3059\u308b\u305f\u3081\u306e\u7573\u307f\u8fbc\u307f (\u5e73\u5747\u3068\u5bfe\u6570\u5206\u6563)</p>\n",
|
||||
"<p>Convolution to map from quantized embedding space back to embedding space </p>\n": "<p>\u91cf\u5b50\u5316\u3055\u308c\u305f\u57cb\u3081\u8fbc\u307f\u7a7a\u9593\u304b\u3089\u57cb\u3081\u8fbc\u307f\u7a7a\u9593\u306b\u30de\u30c3\u30d4\u30f3\u30b0\u3059\u308b\u7573\u307f\u8fbc\u307f</p>\n",
|
||||
"<p>Create top-level blocks </p>\n": "<p>\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af\u3092\u4f5c\u6210</p>\n",
|
||||
"<p>Decode the image of shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u5f62\u72b6\u306e\u753b\u50cf\u3092\u30c7\u30b3\u30fc\u30c9 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Down-sampling </p>\n": "<p>\u30c0\u30a6\u30f3\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</p>\n",
|
||||
"<p>Down-sampling at the end of each top level block except the last </p>\n": "<p>\u6700\u5f8c\u3092\u9664\u304f\u5404\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af\u306e\u6700\u5f8c\u3067\u306e\u30c0\u30a6\u30f3\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</p>\n",
|
||||
"<p>Each top level block consists of multiple ResNet Blocks and down-sampling </p>\n": "<p>\u5404\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af\u306f\u8907\u6570\u306eResNet\u30d6\u30ed\u30c3\u30af\u3068\u30c0\u30a6\u30f3\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3067\u69cb\u6210\u3055\u308c\u3066\u3044\u307e\u3059</p>\n",
|
||||
"<p>Each top level block consists of multiple ResNet Blocks and up-sampling </p>\n": "<p>\u5404\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af\u306f\u8907\u6570\u306eResNet\u30d6\u30ed\u30c3\u30af\u3068\u30a2\u30c3\u30d7\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3067\u69cb\u6210\u3055\u308c\u3066\u3044\u307e\u3059</p>\n",
|
||||
"<p>Final <span translate=no>_^_0_^_</span> convolution layer </p>\n": "<p><span translate=no>_^_0_^_</span>\u6700\u7d42\u7573\u307f\u8fbc\u307f\u5c64</p>\n",
|
||||
"<p>Final ResNet blocks with attention </p>\n": "<p>\u6700\u5f8c\u306e ResNet \u30d6\u30ed\u30c3\u30af\u306b\u306f\u6ce8\u610f\u304c\u5fc5\u8981\u3067\u3059\u3002</p>\n",
|
||||
"<p>First normalization and convolution layer </p>\n": "<p>\u6700\u521d\u306e\u6b63\u898f\u5316\u3068\u7573\u307f\u8fbc\u307f\u5c64</p>\n",
|
||||
"<p>Get embeddings with shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u56f3\u5f62\u4ed8\u304d\u306e\u57cb\u3081\u8fbc\u307f\u3092\u3059\u308b <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Get query, key and vector embeddings </p>\n": "<p>\u30af\u30a8\u30ea\u3001\u30ad\u30fc\u3001\u30d9\u30af\u30bf\u30fc\u306e\u57cb\u3081\u8fbc\u307f\u3092\u53d6\u5f97</p>\n",
|
||||
"<p>Get the moments in the quantized embedding space </p>\n": "<p>\u91cf\u5b50\u5316\u3055\u308c\u305f\u57cb\u3081\u8fbc\u307f\u7a7a\u9593\u306e\u30e2\u30fc\u30e1\u30f3\u30c8\u3092\u53d6\u5f97</p>\n",
|
||||
"<p>Group normalization </p>\n": "<p>\u30b0\u30eb\u30fc\u30d7\u6b63\u898f\u5316</p>\n",
|
||||
"<p>Initial <span translate=no>_^_0_^_</span> convolution layer that maps the embedding space to <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u57cb\u3081\u8fbc\u307f\u30b9\u30da\u30fc\u30b9\u3092\u30de\u30c3\u30d4\u30f3\u30b0\u3059\u308b\u6700\u521d\u306e\u7573\u307f\u8fbc\u307f\u30ec\u30a4\u30e4\u30fc <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Initial <span translate=no>_^_0_^_</span> convolution layer that maps the image to <span translate=no>_^_1_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u753b\u50cf\u3092\u30de\u30c3\u30d7\u3059\u308b\u6700\u521d\u306e\u7573\u307f\u8fbc\u307f\u30ec\u30a4\u30e4\u30fc <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>List of top-level blocks </p>\n": "<p>\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af\u306e\u30ea\u30b9\u30c8</p>\n",
|
||||
"<p>Map and add residual </p>\n": "<p>\u6b8b\u5dee\u3092\u30de\u30c3\u30d4\u30f3\u30b0\u3057\u3066\u8ffd\u52a0</p>\n",
|
||||
"<p>Map to <span translate=no>_^_0_^_</span> with the initial convolution </p>\n": "<p><span translate=no>_^_0_^_</span>\u6700\u521d\u306e\u7573\u307f\u8fbc\u307f\u3067\u306b\u30de\u30c3\u30d4\u30f3\u30b0</p>\n",
|
||||
"<p>Map to embedding space from the quantized representation </p>\n": "<p>\u91cf\u5b50\u5316\u3055\u308c\u305f\u8868\u73fe\u304b\u3089\u57cb\u3081\u8fbc\u307f\u7a7a\u9593\u306b\u30de\u30c3\u30d4\u30f3\u30b0</p>\n",
|
||||
"<p>Map to embedding space with a <span translate=no>_^_0_^_</span> convolution </p>\n": "<p>\u7573\u307f\u8fbc\u307f\u306b\u3088\u308b\u57cb\u3081\u8fbc\u307f\u7a7a\u9593\u306b\u30de\u30c3\u30d4\u30f3\u30b0 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Map to image space with a <span translate=no>_^_0_^_</span> convolution </p>\n": "<p>\u7573\u307f\u8fbc\u307f\u306b\u3088\u308b\u753b\u50cf\u7a7a\u9593\u306b\u30de\u30c3\u30d4\u30f3\u30b0 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Normalize <span translate=no>_^_0_^_</span> </p>\n": "<p>\u30ce\u30fc\u30de\u30e9\u30a4\u30ba <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Normalize and map to embedding space </p>\n": "<p>\u6b63\u898f\u5316\u3057\u3066\u57cb\u3081\u8fbc\u307f\u30b9\u30da\u30fc\u30b9\u306b\u30de\u30c3\u30d4\u30f3\u30b0</p>\n",
|
||||
"<p>Normalize and map to image space </p>\n": "<p>\u6b63\u898f\u5316\u3057\u3066\u753b\u50cf\u7a7a\u9593\u306b\u30de\u30c3\u30d4\u30f3\u30b0</p>\n",
|
||||
"<p>Number of blocks of different resolutions. The resolution is halved at the end each top level block </p>\n": "<p>\u89e3\u50cf\u5ea6\u306e\u7570\u306a\u308b\u30d6\u30ed\u30c3\u30af\u6570\u3002\u89e3\u50cf\u5ea6\u306f\u3001\u5404\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af\u306e\u6700\u5f8c\u3067\u534a\u5206\u306b\u306a\u308a\u307e\u3059</p>\u3002\n",
|
||||
"<p>Number of channels in each top level block </p>\n": "<p>\u5404\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</p>\n",
|
||||
"<p>Number of channels in each top level block, in the reverse order </p>\n": "<p>\u5404\u6700\u4e0a\u4f4d\u30d6\u30ed\u30c3\u30af\u5185\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570 (\u9006\u9806)</p>\n",
|
||||
"<p>Number of channels in the top-level block </p>\n": "<p>\u6700\u4e0a\u4f4d\u30d6\u30ed\u30c3\u30af\u5185\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</p>\n",
|
||||
"<p>Prepend to be consistent with the checkpoint </p>\n": "<p>\u30c1\u30a7\u30c3\u30af\u30dd\u30a4\u30f3\u30c8\u3068\u4e00\u81f4\u3059\u308b\u3088\u3046\u306b\u30d7\u30ea\u30da\u30f3\u30c9\u3092\u4ed8\u3051\u308b</p>\n",
|
||||
"<p>Query, key and value mappings </p>\n": "<p>\u30af\u30a8\u30ea\u3001\u30ad\u30fc\u3001\u5024\u306e\u30de\u30c3\u30d4\u30f3\u30b0</p>\n",
|
||||
"<p>ResNet Blocks </p>\n": "<p>ResNet \u30d6\u30ed\u30c3\u30af</p>\n",
|
||||
"<p>ResNet blocks with attention </p>\n": "<p>ResNet \u30d6\u30ed\u30c3\u30af\u306b\u306f\u6ce8\u610f\u304c\u5fc5\u8981</p>\n",
|
||||
"<p>Reshape back to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u5f62\u72b6\u3092\u5909\u3048\u3066\u5143\u306b\u623b\u3059 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Reshape to query, key and vector embeedings from <span translate=no>_^_0_^_</span> to <span translate=no>_^_1_^_</span> </p>\n": "<p>\u5f62\u72b6\u3092\u5909\u3048\u3066\u30af\u30a8\u30ea\u3001\u30ad\u30fc\u3001\u30d9\u30af\u30bf\u30fc\u306e\u57cb\u3081\u8fbc\u307f\u3092\u304b\u3089\u3078 <span translate=no>_^_0_^_</span> <span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Return the distribution </p>\n": "<p>\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3\u3092\u8fd4\u3059</p>\n",
|
||||
"<p>Sample from the distribution </p>\n": "<p>\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3\u304b\u3089\u306e\u30b5\u30f3\u30d7\u30eb</p>\n",
|
||||
"<p>Second normalization and convolution layer </p>\n": "<p>2 \u756a\u76ee\u306e\u6b63\u898f\u5316\u3068\u7573\u307f\u8fbc\u307f\u5c64</p>\n",
|
||||
"<p>Split mean and log of variance </p>\n": "<p>\u5206\u5272\u5e73\u5747\u3068\u5206\u6563\u5bfe\u6570</p>\n",
|
||||
"<p>Top-level block </p>\n": "<p>\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af</p>\n",
|
||||
"<p>Top-level blocks </p>\n": "<p>\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af</p>\n",
|
||||
"<p>Up-sample by a factor of <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6b21\u306e\u500d\u307e\u3067\u306e\u30a2\u30c3\u30d7\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0 <span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Up-sampling </p>\n": "<p>\u30a2\u30c3\u30d7\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</p>\n",
|
||||
"<p>Up-sampling at the end of each top level block except the first </p>\n": "<p>\u6700\u521d\u306e\u30d6\u30ed\u30c3\u30af\u3092\u9664\u304f\u5404\u30c8\u30c3\u30d7\u30ec\u30d9\u30eb\u30d6\u30ed\u30c3\u30af\u306e\u6700\u5f8c\u3067\u306e\u30a2\u30c3\u30d7\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> are the means and log of variances of the embedding of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u56f3\u5f62\u306e\u57cb\u3081\u8fbc\u307f\u306e\u5e73\u5747\u3068\u5206\u6563\u306e\u5bfe\u6570\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the embedding tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u5f62\u72b6\u4ed8\u304d\u306e\u57cb\u3081\u8fbc\u307f\u30c6\u30f3\u30bd\u30eb\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the encoder </li>\n<li><span translate=no>_^_1_^_</span> is the decoder </li>\n<li><span translate=no>_^_2_^_</span> is the number of dimensions in the quantized embedding space </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u30a8\u30f3\u30b3\u30fc\u30c0\u3067\u3059</li>\n<li><span translate=no>_^_1_^_</span>\u30c7\u30b3\u30fc\u30c0\u3067\u3059</li>\n<li><span translate=no>_^_2_^_</span>\u306f\u91cf\u5b50\u5316\u3055\u308c\u305f\u57cb\u3081\u8fbc\u307f\u7a7a\u9593\u306e\u6b21\u5143\u6570\u3067\u3059</li>\n<li><span translate=no>_^_3_^_</span>\u306f\u57cb\u3081\u8fbc\u307f\u30b9\u30da\u30fc\u30b9\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3067\u3059</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the image tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u5f62\u72b6\u306e\u3042\u308b\u30a4\u30e1\u30fc\u30b8\u30c6\u30f3\u30bd\u30eb\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the input feature map with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u5f62\u72b6\u4ed8\u304d\u306e\u5165\u529b\u30d5\u30a3\u30fc\u30c1\u30e3\u30de\u30c3\u30d7\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the final convolution layer </li>\n<li><span translate=no>_^_1_^_</span> are the multiplicative factors for the number of channels in the previous blocks, in reverse order </li>\n<li><span translate=no>_^_2_^_</span> is the number of resnet layers at each resolution </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_4_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u6700\u5f8c\u306e\u7573\u307f\u8fbc\u307f\u5c64\u306e\u30c1\u30e3\u30cd\u30eb\u6570\u3067\u3059</li>\n<li><span translate=no>_^_1_^_</span>\u524d\u306e\u30d6\u30ed\u30c3\u30af\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u306e\u4e57\u7b97\u4fc2\u6570 (\u9006\u9806)</li>\n<li><span translate=no>_^_2_^_</span>\u306f\u5404\u89e3\u50cf\u5ea6\u3067\u306e\u518d\u30cd\u30c3\u30c8\u5c64\u306e\u6570\u3067\u3059</li>\n<li><span translate=no>_^_3_^_</span>\u306f\u753b\u50cf\u5185\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</li>\n<li><span translate=no>_^_4_^_</span>\u306f\u57cb\u3081\u8fbc\u307f\u30b9\u30da\u30fc\u30b9\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3067\u3059</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the first convolution layer </li>\n<li><span translate=no>_^_1_^_</span> are the multiplicative factors for the number of channels in the subsequent blocks </li>\n<li><span translate=no>_^_2_^_</span> is the number of resnet layers at each resolution </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_4_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u6700\u521d\u306e\u7573\u307f\u8fbc\u307f\u5c64\u306e\u30c1\u30e3\u30cd\u30eb\u6570\u3067\u3059</li>\n<li><span translate=no>_^_1_^_</span>\u306f\u5f8c\u7d9a\u306e\u30d6\u30ed\u30c3\u30af\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u306e\u4e57\u6570\u3067\u3059</li>\n<li><span translate=no>_^_2_^_</span>\u306f\u5404\u89e3\u50cf\u5ea6\u3067\u306e\u518d\u30cd\u30c3\u30c8\u5c64\u306e\u6570\u3067\u3059</li>\n<li><span translate=no>_^_3_^_</span>\u306f\u753b\u50cf\u5185\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</li>\n<li><span translate=no>_^_4_^_</span>\u306f\u57cb\u3081\u8fbc\u307f\u30b9\u30da\u30fc\u30b9\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3067\u3059</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the input </li>\n<li><span translate=no>_^_1_^_</span> is the number of channels in the output</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u5165\u529b\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u306f\u51fa\u529b\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u306f\u30c1\u30e3\u30cd\u30eb\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the tensor of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u5f62\u72b6\u306e\u30c6\u30f3\u30bd\u30eb\u3067\u3059 <span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"Annotated PyTorch implementation/tutorial of the autoencoder for stable diffusion.": "\u5b89\u5b9a\u3057\u305f\u62e1\u6563\u306e\u305f\u3081\u306e\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u30fc\u306e\u6ce8\u91c8\u4ed8\u304dPyTorch\u5b9f\u88c5/\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3002",
|
||||
"Autoencoder for Stable Diffusion": "\u5b89\u5b9a\u3057\u305f\u62e1\u6563\u3092\u5b9f\u73fe\u3059\u308b\u30aa\u30fc\u30c8\u30a8\u30f3\u30b3\u30fc\u30c0\u30fc"
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
{
|
||||
"<h1>Autoencoder for <a href=\"../index.html\">Stable Diffusion</a></h1>\n<p>This implements the auto-encoder model used to map between image space and latent space.</p>\n<p>We have kept to the model definition and naming unchanged from <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a> so that we can load the checkpoints directly.</p>\n": "<h1><a href=\"../index.html\">\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba</a> \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d86\u0d9a\u0dda\u0dad\u0d9a\u0dba</h1>\n<p>\u0dbb\u0dd6\u0db4 \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0dc3\u0dc4 \u0d9c\u0dd4\u0db4\u0dca\u0dad \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0d85\u0dad\u0dbb \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca \u0d9c\u0dad \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0db7\u0dcf\u0dc0\u0dd2\u0dad\u0dcf \u0d9a\u0dbb\u0db1 \u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dca \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba \u0db8\u0dd9\u0dba \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dbb\u0dba\u0dd2.</p>\n<p>\u0d85\u0db4\u0dd2 \u0d86\u0daf\u0dbb\u0dca\u0dc1 \u0d85\u0dbb\u0dca\u0dae \u0daf\u0dd0\u0d9a\u0dca\u0dc0\u0dd3\u0db8 \u0dad\u0db6\u0dcf \u0d87\u0dad\u0dd2 \u0d85\u0dad\u0dbb <a href=\"https://github.com/CompVis/stable-diffusion\">\u0d9a\u0ddc\u0db8\u0dca\u0dc0\u0dd2\u0dc3\u0dca/\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab</a> \u0dc3\u0dd2\u0da7 \u0db1\u0ddc\u0dc0\u0dd9\u0db1\u0dc3\u0dca\u0dc0 \u0db1\u0db8\u0dca \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 \u0d85\u0db4\u0da7 \u0db8\u0dd4\u0dbb\u0db4\u0ddc\u0dbd\u0dc0\u0dbd\u0dca \u0d9a\u0dd9\u0dbd\u0dd2\u0db1\u0dca\u0db8 \u0db4\u0dd0\u0da7\u0dc0\u0dd2\u0dba \u0dc4\u0dd0\u0d9a\u0dd2 \u0dc0\u0db1 \u0db4\u0dbb\u0dd2\u0daf\u0dd2.</p>\n",
|
||||
"<h2>Attention block</h2>\n": "<h2>\u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0dc0\u0dcf\u0dbb\u0dab</h2>\n",
|
||||
"<h2>Autoencoder</h2>\n<p>This consists of the encoder and decoder modules.</p>\n": "<h2>\u0d94\u0da7\u0ddd\u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba</h2>\n<p>\u0db8\u0dd9\u0dba \u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba \u0dc3\u0dc4 \u0dc0\u0dd2\u0d9a\u0dda\u0dad\u0d9a \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd \u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0dc3\u0db8\u0db1\u0dca\u0dc0\u0dd2\u0dad \u0dc0\u0dda.</p>\n",
|
||||
"<h2>Decoder module</h2>\n": "<h2>\u0dc0\u0dd2\u0d9a\u0dda\u0dad\u0d9a \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd\u0dba</h2>\n",
|
||||
"<h2>Down-sampling layer</h2>\n": "<h2>\u0db4\u0dc4\u0dc5-\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2 \u0dc3\u0dca\u0dae\u0dbb\u0dba</h2>\n",
|
||||
"<h2>Encoder module</h2>\n": "<h2>\u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dca \u0db8\u0ddc\u0da9\u0dd2\u0dba\u0dd4\u0dbd\u0dba</h2>\n",
|
||||
"<h2>Gaussian Distribution</h2>\n": "<h2>\u0d9c\u0dc0\u0dd4\u0dc3\u0dd2\u0dba\u0dcf\u0db1\u0dd4 \u0db6\u0dd9\u0daf\u0dcf\u0dc4\u0dd0\u0dbb\u0dd3\u0db8\u0dca</h2>\n",
|
||||
"<h2>ResNet Block</h2>\n": "<h2>\u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca</h2>\n",
|
||||
"<h2>Up-sampling layer</h2>\n": "<h2>\u0daf\u0d9a\u0dca\u0dc0\u0dcf-\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dca \u0dc3\u0dca\u0dae\u0dbb\u0dba</h2>\n",
|
||||
"<h3>Decode images from latent representation</h3>\n<ul><li><span translate=no>_^_0_^_</span> is the latent representation with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<h3>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba\u0dd9\u0db1\u0dca \u0dbb\u0dd6\u0db4 \u0dc0\u0dd2\u0d9a\u0dda\u0dad\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</h3>\n<ul><li><span translate=no>_^_0_^_</span>\u0dc4\u0dd0\u0da9\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0d9c\u0dd4\u0db4\u0dca\u0dad \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba\u0dba\u0dd2<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<h3>Encode images to latent representation</h3>\n<ul><li><span translate=no>_^_0_^_</span> is the image tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<h3>\u0d9c\u0dd4\u0db4\u0dca\u0dad \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba\u0da7 \u0dbb\u0dd6\u0db4 \u0d9a\u0dda\u0dad\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</h3>\n<ul><li><span translate=no>_^_0_^_</span>\u0dc4\u0dd0\u0da9\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0dbb\u0dd6\u0db4 \u0da7\u0dd9\u0db1\u0dca\u0dc3\u0dbb\u0dba\u0dba\u0dd2<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<h3>Group normalization</h3>\n<p>This is a helper function, with fixed number of groups and <span translate=no>_^_0_^_</span>.</p>\n": "<h3>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba</h3>\n<p>\u0db8\u0dd9\u0dba \u0d8b\u0db4\u0d9a\u0dcf\u0dbb\u0d9a \u0dc1\u0dca\u0dbb\u0dd2\u0dad\u0dba\u0d9a\u0dca \u0dc0\u0db1 \u0d85\u0dad\u0dbb \u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca \u0d9c\u0dab\u0db1 \u0dc3\u0dc4<span translate=no>_^_0_^_</span>.</p>\n",
|
||||
"<h3>Swish activation</h3>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h3>\u0dc3\u0dca\u0dc0\u0dd2\u0dc2\u0dca \u0dc3\u0d9a\u0dca\u0dbb\u0dd2\u0dba \u0d9a\u0dd2\u0dbb\u0dd3\u0db8</h3>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> convolution mapping </p>\n": "<p><span translate=no>_^_0_^_</span>\u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd3\u0db8\u0dda \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca\u0d9a\u0dbb\u0dab\u0dba</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> convolution with stride length of <span translate=no>_^_1_^_</span> to down-sample by a factor of <span translate=no>_^_2_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u0d9a \u0dc3\u0dcf\u0db0\u0d9a\u0dba\u0d9a\u0dca \u0dc0\u0dd2\u0dc3\u0dd2\u0db1\u0dca \u0db4\u0dc4\u0dc5-\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2<span translate=no>_^_1_^_</span> \u0d9a\u0dd2\u0dbb\u0dd3\u0db8\u0da7 stride \u0daf\u0dd2\u0d9c \u0dc3\u0db8\u0d9c convolution<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> to <span translate=no>_^_1_^_</span> mapping layer for residual connection </p>\n": "<p><span translate=no>_^_0_^_</span>\u0d85\u0dc0\u0dc1\u0dda\u0dc2 \u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0\u0dad\u0dcf\u0dc0\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dca\u0dad\u0dbb\u0dba<span translate=no>_^_1_^_</span> \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca\u0d9c\u0dad \u0d9a\u0dd2\u0dbb\u0dd3\u0db8</p>\n",
|
||||
"<p>Add ResNet Blocks </p>\n": "<p>\u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Add padding </p>\n": "<p>\u0db4\u0dd1\u0da9\u0dd2\u0db1\u0dca \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Add residual connection </p>\n": "<p>\u0d85\u0dc0\u0dc1\u0dda\u0dc2 \u0dc3\u0db8\u0dca\u0db6\u0db1\u0dca\u0db0\u0dad\u0dcf\u0dc0\u0dba \u0d91\u0d9a\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Apply convolution </p>\n": "<p>\u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd2\u0db8 \u0dba\u0ddc\u0daf\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Attention scaling factor </p>\n": "<p>\u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0db4\u0dbb\u0dd2\u0db8\u0dcf\u0dab \u0dc3\u0dcf\u0db0\u0d9a\u0dba</p>\n",
|
||||
"<p>Calculate standard deviation </p>\n": "<p>\u0dc3\u0db8\u0dca\u0db8\u0dad \u0d85\u0db4\u0d9c\u0db8\u0db1\u0dba \u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Clamp the log of variances </p>\n": "<p>\u0dc0\u0dd2\u0da0\u0dbd\u0dca\u0dba\u0dba\u0db1\u0dca\u0d9c\u0dda \u0dbd\u0ddc\u0d9c\u0dca \u0daf\u0dd0\u0db8\u0dd3\u0db8</p>\n",
|
||||
"<p>Compute <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0d9c\u0dab\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Convolution to map from embedding space to quantized embedding space moments (mean and log variance) </p>\n": "<p>\u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0dc3\u0dd2\u0da7 \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0d85\u0dc0\u0d9a\u0dcf\u0dc1 \u0d85\u0dc0\u0dc3\u0dca\u0dae\u0dcf \u0daf\u0d9a\u0dca\u0dc0\u0dcf \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca \u0d9c\u0dad \u0d9a\u0dd2\u0dbb\u0dd3\u0db8 (\u0db8\u0db0\u0dca\u0dba\u0db1\u0dca\u0dba \u0dc3\u0dc4 \u0dbd\u0ddc\u0d9c\u0dca \u0dc0\u0dd2\u0da0\u0dbd\u0dad\u0dcf\u0dc0)</p>\n",
|
||||
"<p>Convolution to map from quantized embedding space back to embedding space </p>\n": "<p>\u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0dda \u0dc3\u0dd2\u0da7 \u0db1\u0dd0\u0dc0\u0dad \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0daf\u0d9a\u0dca\u0dc0\u0dcf \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0da7 \u0dc3\u0d82\u0d9a\u0ddd\u0da0\u0db1\u0dba</p>\n",
|
||||
"<p>Create top-level blocks </p>\n": "<p>\u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0d9a\u0dd4\u0da7\u0dca\u0da7\u0dd2 \u0dc3\u0dcf\u0daf\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Decode the image of shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc4\u0dd0\u0da9\u0dba\u0dda \u0dbb\u0dd6\u0db4\u0dba \u0dc0\u0dd2\u0d9a\u0dda\u0dad\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Down-sampling </p>\n": "<p>\u0db4\u0dc4\u0dc5-\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dca</p>\n",
|
||||
"<p>Down-sampling at the end of each top level block except the last </p>\n": "<p>\u0d85\u0db1\u0dca\u0dad\u0dd2\u0db8 \u0dc4\u0dd0\u0dbb \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0d9a\u0ddc\u0da7\u0dc3 \u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dba\u0dda \u0db4\u0dc4\u0dc5-\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8</p>\n",
|
||||
"<p>Each top level block consists of multiple ResNet Blocks and down-sampling </p>\n": "<p>\u0dc3\u0dd1\u0db8 \u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0d91\u0d9a\u0d9a\u0dca\u0db8 \u0db6\u0dc4\u0dd4 \u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0dc3\u0dc4 \u0db4\u0dc4\u0dc5-\u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dca \u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0dc3\u0db8\u0db1\u0dca\u0dc0\u0dd2\u0dad \u0dc0\u0dda</p>\n",
|
||||
"<p>Each top level block consists of multiple ResNet Blocks and up-sampling </p>\n": "<p>\u0dc3\u0dd1\u0db8 \u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0d91\u0d9a\u0d9a\u0dca\u0db8 \u0db6\u0dc4\u0dd4 \u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0dc3\u0dc4 \u0d89\u0dc4\u0dc5 \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8\u0dca \u0dc0\u0dbd\u0dd2\u0db1\u0dca \u0dc3\u0db8\u0db1\u0dca\u0dc0\u0dd2\u0dad \u0dc0\u0dda</p>\n",
|
||||
"<p>Final <span translate=no>_^_0_^_</span> convolution layer </p>\n": "<p>\u0d85\u0dc0\u0dc3\u0dcf\u0db1<span translate=no>_^_0_^_</span> \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba</p>\n",
|
||||
"<p>Final ResNet blocks with attention </p>\n": "<p>\u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0dba\u0ddc\u0db8\u0dd4 \u0d9a\u0dbb\u0db1 \u0d85\u0dc0\u0dc3\u0dcf\u0db1 \u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca</p>\n",
|
||||
"<p>First normalization and convolution layer </p>\n": "<p>\u0db4\u0dc5\u0db8\u0dd4 \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0dc4 \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba</p>\n",
|
||||
"<p>Get embeddings with shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc4\u0dd0\u0da9\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Get query, key and vector embeddings </p>\n": "<p>\u0dc0\u0dd2\u0db8\u0dc3\u0dd4\u0db8, \u0dba\u0dad\u0dd4\u0dbb \u0dc3\u0dc4 \u0daf\u0ddb\u0dc1\u0dd2\u0d9a \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Get the moments in the quantized embedding space </p>\n": "<p>\u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0dda \u0db8\u0ddc\u0dc4\u0ddc\u0dad \u0dbd\u0db6\u0dcf \u0d9c\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Group normalization </p>\n": "<p>\u0d9a\u0dab\u0dca\u0da9\u0dcf\u0dba\u0db8\u0dca \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba</p>\n",
|
||||
"<p>Initial <span translate=no>_^_0_^_</span> convolution layer that maps the embedding space to <span translate=no>_^_1_^_</span> </p>\n": "<p>\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca \u0d9c\u0dad \u0d9a\u0dbb\u0db1 \u0db8\u0dd6\u0dbd\u0dd2\u0d9a<span translate=no>_^_0_^_</span> \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dca\u0dc0\u0dd3\u0db8\u0dda \u0dc3\u0dca\u0dae\u0dbb\u0dba<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Initial <span translate=no>_^_0_^_</span> convolution layer that maps the image to <span translate=no>_^_1_^_</span> </p>\n": "<p>\u0dbb\u0dd6\u0db4\u0dba \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca<span translate=no>_^_0_^_</span> \u0d9c\u0dad \u0d9a\u0dbb\u0db1 \u0db8\u0dd6\u0dbd\u0dd2\u0d9a \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>List of top-level blocks </p>\n": "<p>\u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0d9a\u0dd4\u0da7\u0dca\u0da7\u0dd2 \u0dbd\u0dd0\u0dba\u0dd2\u0dc3\u0dca\u0dad\u0dd4\u0dc0</p>\n",
|
||||
"<p>Map and add residual </p>\n": "<p>\u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8 \u0dc3\u0dc4 \u0d85\u0dc0\u0dc1\u0dda\u0dc2 \u0d91\u0d9a\u0dad\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Map to <span translate=no>_^_0_^_</span> with the initial convolution </p>\n": "<p>\u0d86\u0dbb\u0db8\u0dca\u0db7\u0d9a \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dca\u0db8<span translate=no>_^_0_^_</span> \u0dc3\u0db8\u0d9f \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8</p>\n",
|
||||
"<p>Map to embedding space from the quantized representation </p>\n": "<p>\u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0db1\u0dd2\u0dbb\u0dd6\u0db4\u0dab\u0dba\u0dd9\u0db1\u0dca \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8</p>\n",
|
||||
"<p>Map to embedding space with a <span translate=no>_^_0_^_</span> convolution </p>\n": "<p><span translate=no>_^_0_^_</span>\u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd3\u0db8\u0d9a\u0dd2\u0db1\u0dca \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8</p>\n",
|
||||
"<p>Map to image space with a <span translate=no>_^_0_^_</span> convolution </p>\n": "<p><span translate=no>_^_0_^_</span>\u0dc3\u0d82\u0d9a\u0ddd\u0da0\u0db1\u0dba \u0dc3\u0db8\u0d9f \u0dbb\u0dd6\u0db4 \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0da7 \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8</p>\n",
|
||||
"<p>Normalize <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u200d\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Normalize and map to embedding space </p>\n": "<p>\u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0d9a\u0dbb \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca \u0d9c\u0dad \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Normalize and map to image space </p>\n": "<p>\u0dbb\u0dd6\u0db4 \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0da7 \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0d9a\u0dbb \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca \u0d9c\u0dad \u0d9a\u0dbb\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Number of blocks of different resolutions. The resolution is halved at the end each top level block </p>\n": "<p>\u0dc0\u0dd2\u0dc0\u0dd2\u0db0 \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1 \u0dc0\u0dbd \u0d9a\u0dd4\u0da7\u0dca\u0da7\u0dd2 \u0d9c\u0dab\u0db1. \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0d9a\u0ddc\u0da7\u0dc3 \u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dba\u0dda \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba \u0d85\u0da9\u0d9a\u0dd2\u0db1\u0dca \u0dba\u0dd4\u0d9a\u0dca\u0dad \u0dc0\u0dda</p>\n",
|
||||
"<p>Number of channels in each top level block </p>\n": "<p>\u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0d91\u0d9a\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</p>\n",
|
||||
"<p>Number of channels in each top level block, in the reverse order </p>\n": "<p>\u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dbd\u0ddd\u0db8 \u0d85\u0db1\u0dd4\u0db4\u0dd2\u0dc5\u0dd2\u0dc0\u0dd9\u0dbd\u0dd9\u0dc4\u0dd2 \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0d91\u0d9a\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</p>\n",
|
||||
"<p>Number of channels in the top-level block </p>\n": "<p>\u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0d91\u0d9a\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</p>\n",
|
||||
"<p>Prepend to be consistent with the checkpoint </p>\n": "<p>\u0db8\u0dd4\u0dbb\u0db4\u0ddc\u0dbd\u0da7 \u0d85\u0db1\u0dd4\u0d9a\u0dd6\u0dbd \u0dc0\u0dd3\u0db8\u0da7 \u0dc3\u0dd6\u0daf\u0dcf\u0db1\u0db8\u0dca \u0dc0\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Query, key and value mappings </p>\n": "<p>\u0dc0\u0dd2\u0db8\u0dc3\u0dd4\u0db8\u0dca, \u0dba\u0dad\u0dd4\u0dbb \u0dc3\u0dc4 \u0d85\u0d9c\u0dba \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dca</p>\n",
|
||||
"<p>ResNet Blocks </p>\n": "<p>\u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca</p>\n",
|
||||
"<p>ResNet blocks with attention </p>\n": "<p>\u0d85\u0dc0\u0db0\u0dcf\u0db1\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca</p>\n",
|
||||
"<p>Reshape back to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0db1\u0dd0\u0dc0\u0dad \u0dc3\u0d9a\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Reshape to query, key and vector embeedings from <span translate=no>_^_0_^_</span> to <span translate=no>_^_1_^_</span> </p>\n": "<p>\u0dc0\u0dd2\u0db8\u0dc3\u0dd4\u0db8, \u0db4\u0dca\u0dbb\u0db0\u0dcf\u0db1 \u0dc3\u0dc4 \u0daf\u0ddb\u0dc1\u0dd2\u0d9a \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dca<span translate=no>_^_0_^_</span> \u0dc0\u0dd9\u0dad \u0db1\u0dd0\u0dc0\u0dad \u0dc3\u0d9a\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Return the distribution </p>\n": "<p>\u0db6\u0dd9\u0daf\u0dcf \u0dc4\u0dd0\u0dbb\u0dd3\u0db8 \u0d86\u0db4\u0dc3\u0dd4 \u0dbd\u0db6\u0dcf \u0daf\u0dd9\u0db1\u0dca\u0db1</p>\n",
|
||||
"<p>Sample from the distribution </p>\n": "<p>\u0db6\u0dd9\u0daf\u0dcf\u0dc4\u0dd0\u0dbb\u0dd3\u0db8\u0dd9\u0db1\u0dca \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba</p>\n",
|
||||
"<p>Second normalization and convolution layer </p>\n": "<p>\u0daf\u0dd9\u0dc0\u0db1 \u0dc3\u0dcf\u0db8\u0dcf\u0db1\u0dca\u0dba\u0d9a\u0dbb\u0dab\u0dba \u0dc3\u0dc4 \u0d9a\u0dd0\u0da7\u0dd2 \u0d9c\u0dd0\u0dc3\u0dd4\u0dab\u0dd4 \u0dc3\u0dca\u0dae\u0dbb\u0dba</p>\n",
|
||||
"<p>Split mean and log of variance </p>\n": "<p>\u0db7\u0dda\u0daf\u0dba \u0db8\u0db0\u0dca\u0dba\u0db1\u0dca\u0dba\u0dba \u0dc3\u0dc4 \u0dc0\u0dd2\u0da0\u0dbd\u0dad\u0dcf\u0dc0 \u0dbd\u0d9d\u0dd4-\u0dc3\u0da7\u0dc4\u0db1</p>\n",
|
||||
"<p>Top-level block </p>\n": "<p>\u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca</p>\n",
|
||||
"<p>Top-level blocks </p>\n": "<p>\u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0d9a\u0dd4\u0da7\u0dca\u0da7\u0dd2</p>\n",
|
||||
"<p>Up-sample by a factor of <span translate=no>_^_0_^_</span> </p>\n": "<p>\u0dc3\u0dcf\u0db0\u0d9a\u0dba\u0d9a\u0dca \u0d85\u0db1\u0dd4\u0dc0 \u0d89\u0dc4\u0dc5 \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd2\u0dba<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Up-sampling </p>\n": "<p>\u0d89\u0dc4\u0dc5\u0da7 \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8</p>\n",
|
||||
"<p>Up-sampling at the end of each top level block except the first </p>\n": "<p>\u0db4\u0dc5\u0db8\u0dd4\u0dc0\u0dd0\u0db1\u0dca\u0db1 \u0dc4\u0dd0\u0dbb \u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0d89\u0dc4\u0dc5 \u0db8\u0da7\u0dca\u0da7\u0db8\u0dda \u0d9a\u0ddc\u0da7\u0dc3 \u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dba\u0dda \u0d89\u0dc4\u0dc5\u0da7 \u0db1\u0dd2\u0dba\u0dd0\u0daf\u0dd3\u0db8</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> are the means and log of variances of the embedding of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0dc4\u0dd0\u0da9\u0dba\u0dda \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 \u0db4\u0dd2\u0dc5\u0dd2\u0db6\u0db3 \u0dc0\u0dd2\u0da0\u0dbd\u0db1\u0dba\u0db1\u0dca\u0d9c\u0dda \u0db8\u0dcf\u0db0\u0dca\u0dba\u0dba\u0db1\u0dca \u0dc3\u0dc4 \u0dbd\u0ddc\u0d9c\u0dca \u0dc0\u0dda<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the embedding tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0dc4\u0dd0\u0da9\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8 tensor \u0dc0\u0dda<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the encoder </li>\n<li><span translate=no>_^_1_^_</span> is the decoder </li>\n<li><span translate=no>_^_2_^_</span> is the number of dimensions in the quantized embedding space </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0d86\u0d9a\u0dda\u0dad\u0d9a\u0dba \u0dc0\u0dda</li>\n<li><span translate=no>_^_1_^_</span>\u0dc0\u0dd2\u0d9a\u0dda\u0dad\u0d9a\u0dba \u0dc0\u0dda</li>\n<li><span translate=no>_^_2_^_</span>\u0dba\u0db1\u0dd4 \u0db4\u0dca\u0dbb\u0db8\u0dcf\u0dab\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0dda \u0db8\u0dcf\u0db1\u0dba\u0db1\u0dca \u0d9c\u0dab\u0db1</li>\n</ul><li><span translate=no>_^_3_^_</span>\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the image tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0dc4\u0dd0\u0da9\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0dbb\u0dd6\u0db4 \u0da7\u0dd9\u0db1\u0dca\u0dc3\u0dbb\u0dba\u0dba\u0dd2<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the input feature map with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0dc4\u0dd0\u0da9\u0dba \u0dc3\u0dc4\u0dd2\u0dad \u0d86\u0daf\u0dcf\u0db1 \u0dc0\u0dd2\u0dc1\u0dda\u0dc2\u0dcf\u0d82\u0d9c \u0dc3\u0dd2\u0dad\u0dd2\u0dba\u0db8\u0dba\u0dd2<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the final convolution layer </li>\n<li><span translate=no>_^_1_^_</span> are the multiplicative factors for the number of channels in the previous blocks, in reverse order </li>\n<li><span translate=no>_^_2_^_</span> is the number of resnet layers at each resolution </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_4_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0d85\u0dc0\u0dc3\u0dcf\u0db1 \u0dc3\u0d82\u0dc0\u0dc4\u0db1 \u0dc3\u0dca\u0dae\u0dbb\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li>\n<li><span translate=no>_^_1_^_</span>\u0db4\u0dd9\u0dbb \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0dc0\u0dbd \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc3\u0db3\u0dc4\u0dcf \u0db6\u0dc4\u0dd4\u0d9a\u0dcf\u0dbb\u0dca\u0dba \u0dc3\u0dcf\u0db0\u0d9a, \u0db4\u0dca\u0dbb\u0dad\u0dd2\u0dbd\u0ddd\u0db8 \u0d85\u0db1\u0dd4\u0db4\u0dd2\u0dc5\u0dd2\u0dc0\u0dd9\u0dbd</li>\n<li><span translate=no>_^_2_^_</span>\u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda \u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0dc3\u0dca\u0dae\u0dbb \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li>\n<li><span translate=no>_^_3_^_</span>\u0dba\u0db1\u0dd4 \u0dbb\u0dd6\u0db4\u0dba\u0dda \u0d87\u0dad\u0dd2 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</li>\n</ul><li><span translate=no>_^_4_^_</span>\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the first convolution layer </li>\n<li><span translate=no>_^_1_^_</span> are the multiplicative factors for the number of channels in the subsequent blocks </li>\n<li><span translate=no>_^_2_^_</span> is the number of resnet layers at each resolution </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_4_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0db4\u0dc5\u0db8\u0dd4 \u0dc3\u0d82\u0dc0\u0dc4\u0db1 \u0dc3\u0dca\u0dae\u0dbb\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li>\n<li><span translate=no>_^_1_^_</span>\u0db4\u0dc3\u0dd4\u0d9a\u0dcf\u0dbd\u0dd3\u0db1 \u0db6\u0dca\u0dbd\u0ddc\u0d9a\u0dca \u0dc0\u0dbd \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0dc3\u0d82\u0d9b\u0dca\u0dba\u0dcf\u0dc0 \u0dc3\u0db3\u0dc4\u0dcf \u0db6\u0dc4\u0dd4\u0d9a\u0dcf\u0dbb\u0dca\u0dba \u0dc3\u0dcf\u0db0\u0d9a \u0dc0\u0dda</li>\n<li><span translate=no>_^_2_^_</span>\u0d91\u0d9a\u0dca \u0d91\u0d9a\u0dca \u0dc0\u0dd2\u0db7\u0dda\u0daf\u0db1\u0dba\u0dda \u0dbb\u0dd9\u0dc3\u0dca\u0db1\u0dd9\u0da7\u0dca \u0dc3\u0dca\u0dae\u0dbb \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li>\n<li><span translate=no>_^_3_^_</span>\u0dba\u0db1\u0dd4 \u0dbb\u0dd6\u0db4\u0dba\u0dda \u0d87\u0dad\u0dd2 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</li>\n</ul><li><span translate=no>_^_4_^_</span>\u0d9a\u0dcf\u0dc0\u0dd0\u0daf\u0dca\u0daf\u0dd3\u0db8\u0dda \u0d85\u0dc0\u0d9a\u0dcf\u0dc1\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the input </li>\n<li><span translate=no>_^_1_^_</span> is the number of channels in the output</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0dba\u0db1\u0dd4 \u0d86\u0daf\u0dcf\u0db1\u0dba\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</li>\n<li><span translate=no>_^_1_^_</span>\u0db1\u0dd2\u0db8\u0dd0\u0dc0\u0dd4\u0db8\u0dda \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1 \u0dc0\u0dda</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0dba\u0db1\u0dd4 \u0db1\u0dcf\u0dbd\u0dd2\u0d9a\u0dcf \u0d9c\u0dab\u0db1</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the tensor of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u0dc4\u0dd0\u0da9\u0dba\u0dda \u0d86\u0dad\u0dad\u0dd2\u0d9a\u0dba \u0dc0\u0dda<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"Annotated PyTorch implementation/tutorial of the autoencoder for stable diffusion.": "\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d91\u0db1\u0dca\u0d9a\u0ddd\u0da9\u0dbb\u0dba\u0dda PyTorch \u0d9a\u0dca\u0dbb\u0dd2\u0dba\u0dcf\u0dad\u0dca\u0db8\u0d9a \u0d9a\u0dd2\u0dbb\u0dd3\u0db8/\u0db1\u0dd2\u0db6\u0db1\u0dca\u0db0\u0db1\u0dba.",
|
||||
"Autoencoder for Stable Diffusion": "\u0dc3\u0dca\u0dae\u0dcf\u0dc0\u0dbb \u0dc0\u0dd2\u0dc3\u0dbb\u0dab\u0dba \u0dc3\u0db3\u0dc4\u0dcf \u0dc3\u0dca\u0dc0\u0dba\u0d82\u0d9a\u0dca\u0dbb\u0dd3\u0dba \u0d86\u0d9a\u0dda\u0dad\u0d9a\u0dba"
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
{
|
||||
"<h1>Autoencoder for <a href=\"../index.html\">Stable Diffusion</a></h1>\n<p>This implements the auto-encoder model used to map between image space and latent space.</p>\n<p>We have kept to the model definition and naming unchanged from <a href=\"https://github.com/CompVis/stable-diffusion\">CompVis/stable-diffusion</a> so that we can load the checkpoints directly.</p>\n": "<h1>\u7528\u4e8e<a href=\"../index.html\">\u7a33\u5b9a\u6269\u6563</a>\u7684\u81ea\u52a8\u7f16\u7801\u5668</h1>\n<p>\u8fd9\u5b9e\u73b0\u4e86\u7528\u4e8e\u5728\u56fe\u50cf\u7a7a\u95f4\u548c\u6f5c\u5728\u7a7a\u95f4\u4e4b\u95f4\u8fdb\u884c\u6620\u5c04\u7684\u81ea\u52a8\u7f16\u7801\u5668\u6a21\u578b\u3002</p>\n<p>\u6211\u4eec\u4fdd\u6301\u4e86 <a href=\"https://github.com/CompVis/stable-diffusion\">compvis/Stable-Difusi</a> on \u7684\u6a21\u578b\u5b9a\u4e49\u548c\u547d\u540d\u4e0d\u53d8\uff0c\u8fd9\u6837\u6211\u4eec\u5c31\u53ef\u4ee5\u76f4\u63a5\u52a0\u8f7d\u68c0\u67e5\u70b9\u3002</p>\n",
|
||||
"<h2>Attention block</h2>\n": "<h2>\u6ce8\u610f\u65b9\u5757</h2>\n",
|
||||
"<h2>Autoencoder</h2>\n<p>This consists of the encoder and decoder modules.</p>\n": "<h2>\u81ea\u52a8\u7f16\u7801\u5668</h2>\n<p>\u5b83\u7531\u7f16\u7801\u5668\u548c\u89e3\u7801\u5668\u6a21\u5757\u7ec4\u6210\u3002</p>\n",
|
||||
"<h2>Decoder module</h2>\n": "<h2>\u89e3\u7801\u5668\u6a21\u5757</h2>\n",
|
||||
"<h2>Down-sampling layer</h2>\n": "<h2>\u5411\u4e0b\u91c7\u6837\u5c42</h2>\n",
|
||||
"<h2>Encoder module</h2>\n": "<h2>\u7f16\u7801\u5668\u6a21\u5757</h2>\n",
|
||||
"<h2>Gaussian Distribution</h2>\n": "<h2>\u9ad8\u65af\u5206\u5e03</h2>\n",
|
||||
"<h2>ResNet Block</h2>\n": "<h2>ResNet \u533a\u5757</h2>\n",
|
||||
"<h2>Up-sampling layer</h2>\n": "<h2>\u5411\u4e0a\u91c7\u6837\u5c42</h2>\n",
|
||||
"<h3>Decode images from latent representation</h3>\n<ul><li><span translate=no>_^_0_^_</span> is the latent representation with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<h3>\u4ece\u6f5c\u5728\u8868\u73b0\u4e2d\u89e3\u7801\u56fe\u50cf</h3>\n<ul><li><span translate=no>_^_0_^_</span>\u662f\u5e26\u6709\u5f62\u72b6\u7684\u6f5c\u5728\u8868\u793a\u5f62\u5f0f<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<h3>Encode images to latent representation</h3>\n<ul><li><span translate=no>_^_0_^_</span> is the image tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<h3>\u5c06\u56fe\u50cf\u7f16\u7801\u4e3a\u6f5c\u5728\u8868\u793a</h3>\n<ul><li><span translate=no>_^_0_^_</span>\u662f\u5e26\u6709\u5f62\u72b6\u7684\u56fe\u50cf\u5f20\u91cf<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<h3>Group normalization</h3>\n<p>This is a helper function, with fixed number of groups and <span translate=no>_^_0_^_</span>.</p>\n": "<h3>\u7fa4\u7ec4\u6807\u51c6\u5316</h3>\n<p>\u8fd9\u662f\u4e00\u4e2a\u8f85\u52a9\u51fd\u6570\uff0c\u5177\u6709\u56fa\u5b9a\u6570\u91cf\u7684\u7ec4\u548c<span translate=no>_^_0_^_</span>\u3002</p>\n",
|
||||
"<h3>Swish activation</h3>\n<p><span translate=no>_^_0_^_</span></p>\n": "<h3>Swish \u6fc0\u6d3b</h3>\n<p><span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p> </p>\n": "<p></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> convolution mapping </p>\n": "<p><span translate=no>_^_0_^_</span>\u5377\u79ef\u6620\u5c04</p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> convolution with stride length of <span translate=no>_^_1_^_</span> to down-sample by a factor of <span translate=no>_^_2_^_</span> </p>\n": "<p><span translate=no>_^_0_^_</span>\u5377\u79ef\uff0c\u6b65\u957f\u4e3a<span translate=no>_^_1_^_</span>\u5411\u4e0b\u91c7\u6837\u7684\u7cfb\u6570\u4e3a<span translate=no>_^_2_^_</span></p>\n",
|
||||
"<p><span translate=no>_^_0_^_</span> to <span translate=no>_^_1_^_</span> mapping layer for residual connection </p>\n": "<p><span translate=no>_^_0_^_</span>\u5230\u5269\u4f59\u8fde\u63a5\u7684<span translate=no>_^_1_^_</span>\u6620\u5c04\u5c42</p>\n",
|
||||
"<p>Add ResNet Blocks </p>\n": "<p>\u6dfb\u52a0 ResNet \u533a\u5757</p>\n",
|
||||
"<p>Add padding </p>\n": "<p>\u6dfb\u52a0\u5185\u8fb9\u8ddd</p>\n",
|
||||
"<p>Add residual connection </p>\n": "<p>\u6dfb\u52a0\u5269\u4f59\u8fde\u63a5</p>\n",
|
||||
"<p>Apply convolution </p>\n": "<p>\u5e94\u7528\u5377\u79ef</p>\n",
|
||||
"<p>Attention scaling factor </p>\n": "<p>\u6ce8\u610f\u529b\u7f29\u653e\u7cfb\u6570</p>\n",
|
||||
"<p>Calculate standard deviation </p>\n": "<p>\u8ba1\u7b97\u6807\u51c6\u5dee</p>\n",
|
||||
"<p>Clamp the log of variances </p>\n": "<p>\u9650\u5236\u65b9\u5dee\u65e5\u5fd7</p>\n",
|
||||
"<p>Compute <span translate=no>_^_0_^_</span> </p>\n": "<p>\u8ba1\u7b97<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Convolution to map from embedding space to quantized embedding space moments (mean and log variance) </p>\n": "<p>\u4ece\u5d4c\u5165\u7a7a\u95f4\u5230\u91cf\u5316\u5d4c\u5165\u7a7a\u95f4\u77e9\u7684\u5377\u79ef\u5230\u6620\u5c04\uff08\u5747\u503c\u548c\u5bf9\u6570\u65b9\u5dee\uff09</p>\n",
|
||||
"<p>Convolution to map from quantized embedding space back to embedding space </p>\n": "<p>\u5377\u79ef\u5c06\u4ece\u91cf\u5316\u5d4c\u5165\u7a7a\u95f4\u6620\u5c04\u56de\u5d4c\u5165\u7a7a\u95f4</p>\n",
|
||||
"<p>Create top-level blocks </p>\n": "<p>\u521b\u5efa\u9876\u7ea7\u533a\u5757</p>\n",
|
||||
"<p>Decode the image of shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u89e3\u7801\u5f62\u72b6\u7684\u56fe\u50cf<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Down-sampling </p>\n": "<p>\u5411\u4e0b\u91c7\u6837</p>\n",
|
||||
"<p>Down-sampling at the end of each top level block except the last </p>\n": "<p>\u5728\u6bcf\u4e2a\u9876\u7ea7\u533a\u5757\u7684\u672b\u5c3e\u5904\u5411\u4e0b\u91c7\u6837\uff08\u6700\u540e\u4e00\u4e2a\u533a\u5757\u9664\u5916\uff09</p>\n",
|
||||
"<p>Each top level block consists of multiple ResNet Blocks and down-sampling </p>\n": "<p>\u6bcf\u4e2a\u9876\u7ea7\u533a\u5757\u7531\u591a\u4e2a ResNet \u6a21\u5757\u548c\u5411\u4e0b\u91c7\u6837\u7ec4\u6210</p>\n",
|
||||
"<p>Each top level block consists of multiple ResNet Blocks and up-sampling </p>\n": "<p>\u6bcf\u4e2a\u9876\u7ea7\u533a\u5757\u7531\u591a\u4e2a ResNet \u6a21\u5757\u548c\u5411\u4e0a\u91c7\u6837\u7ec4\u6210</p>\n",
|
||||
"<p>Final <span translate=no>_^_0_^_</span> convolution layer </p>\n": "<p>\u6700\u7ec8<span translate=no>_^_0_^_</span>\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>Final ResNet blocks with attention </p>\n": "<p>\u6700\u540e\u4e00\u4e2a\u503c\u5f97\u6ce8\u610f\u7684 ResNet \u5c01\u9501</p>\n",
|
||||
"<p>First normalization and convolution layer </p>\n": "<p>\u7b2c\u4e00\u4e2a\u5f52\u4e00\u5316\u548c\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>Get embeddings with shape <span translate=no>_^_0_^_</span> </p>\n": "<p>\u83b7\u53d6\u5e26\u6709\u5f62\u72b6\u7684\u5d4c\u5165\u7269<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Get query, key and vector embeddings </p>\n": "<p>\u83b7\u53d6\u67e5\u8be2\u3001\u952e\u548c\u5411\u91cf\u5d4c\u5165</p>\n",
|
||||
"<p>Get the moments in the quantized embedding space </p>\n": "<p>\u83b7\u53d6\u91cf\u5316\u5d4c\u5165\u7a7a\u95f4\u4e2d\u7684\u77ac\u95f4</p>\n",
|
||||
"<p>Group normalization </p>\n": "<p>\u7fa4\u7ec4\u6807\u51c6\u5316</p>\n",
|
||||
"<p>Initial <span translate=no>_^_0_^_</span> convolution layer that maps the embedding space to <span translate=no>_^_1_^_</span> </p>\n": "<p>\u5c06\u5d4c\u5165\u7a7a\u95f4\u6620\u5c04\u5230\u7684\u521d\u59cb<span translate=no>_^_0_^_</span>\u5377\u79ef\u5c42<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Initial <span translate=no>_^_0_^_</span> convolution layer that maps the image to <span translate=no>_^_1_^_</span> </p>\n": "<p>\u5c06\u56fe\u50cf\u6620\u5c04\u5230\u7684\u521d\u59cb<span translate=no>_^_0_^_</span>\u5377\u79ef\u5c42<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>List of top-level blocks </p>\n": "<p>\u9876\u7ea7\u533a\u5757\u5217\u8868</p>\n",
|
||||
"<p>Map and add residual </p>\n": "<p>\u6620\u5c04\u5e76\u6dfb\u52a0\u6b8b\u5dee</p>\n",
|
||||
"<p>Map to <span translate=no>_^_0_^_</span> with the initial convolution </p>\n": "<p><span translate=no>_^_0_^_</span>\u4f7f\u7528\u521d\u59cb\u5377\u79ef\u6620\u5c04\u5230</p>\n",
|
||||
"<p>Map to embedding space from the quantized representation </p>\n": "<p>\u4ece\u91cf\u5316\u8868\u793a\u6620\u5c04\u5230\u5d4c\u5165\u7a7a\u95f4</p>\n",
|
||||
"<p>Map to embedding space with a <span translate=no>_^_0_^_</span> convolution </p>\n": "<p>\u7528<span translate=no>_^_0_^_</span>\u5377\u79ef\u6620\u5c04\u5230\u5d4c\u5165\u7a7a\u95f4</p>\n",
|
||||
"<p>Map to image space with a <span translate=no>_^_0_^_</span> convolution </p>\n": "<p>\u4f7f\u7528<span translate=no>_^_0_^_</span>\u5377\u79ef\u6620\u5c04\u5230\u56fe\u50cf\u7a7a\u95f4</p>\n",
|
||||
"<p>Normalize <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6807\u51c6\u5316<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Normalize and map to embedding space </p>\n": "<p>\u5f52\u4e00\u5316\u5e76\u6620\u5c04\u5230\u5d4c\u5165\u7a7a\u95f4</p>\n",
|
||||
"<p>Normalize and map to image space </p>\n": "<p>\u5f52\u4e00\u5316\u5e76\u6620\u5c04\u5230\u56fe\u50cf\u7a7a\u95f4</p>\n",
|
||||
"<p>Number of blocks of different resolutions. The resolution is halved at the end each top level block </p>\n": "<p>\u4e0d\u540c\u5206\u8fa8\u7387\u7684\u533a\u5757\u6570\u3002\u6bcf\u4e2a\u9876\u5c42\u65b9\u5757\u7684\u7ed3\u5c3e\u5904\u5206\u8fa8\u7387\u51cf\u534a</p>\n",
|
||||
"<p>Number of channels in each top level block </p>\n": "<p>\u6bcf\u4e2a\u9876\u7ea7\u533a\u5757\u4e2d\u7684\u9891\u9053\u6570</p>\n",
|
||||
"<p>Number of channels in each top level block, in the reverse order </p>\n": "<p>\u6bcf\u4e2a\u9876\u7ea7\u5757\u4e2d\u7684\u901a\u9053\u6570\uff0c\u6309\u76f8\u53cd\u987a\u5e8f\u6392\u5217</p>\n",
|
||||
"<p>Number of channels in the top-level block </p>\n": "<p>\u9876\u7ea7\u533a\u5757\u4e2d\u7684\u9891\u9053\u6570</p>\n",
|
||||
"<p>Prepend to be consistent with the checkpoint </p>\n": "<p>\u9884\u5148\u8bbe\u7f6e\u4ee5\u4e0e\u68c0\u67e5\u70b9\u4fdd\u6301\u4e00\u81f4</p>\n",
|
||||
"<p>Query, key and value mappings </p>\n": "<p>\u67e5\u8be2\u3001\u952e\u548c\u503c\u6620\u5c04</p>\n",
|
||||
"<p>ResNet Blocks </p>\n": "<p>ResNet \u533a\u5757</p>\n",
|
||||
"<p>ResNet blocks with attention </p>\n": "<p>ResNet \u8981\u6ce8\u610f\u5c01\u9501</p>\n",
|
||||
"<p>Reshape back to <span translate=no>_^_0_^_</span> </p>\n": "<p>\u91cd\u5851\u56de\u539f\u72b6<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Reshape to query, key and vector embeedings from <span translate=no>_^_0_^_</span> to <span translate=no>_^_1_^_</span> </p>\n": "<p>\u91cd\u5851\u4e3a\u67e5\u8be2\uff0c\u952e\u5d4c\u5165\u548c\u5411\u91cf\u5d4c\u5165\u4ece<span translate=no>_^_0_^_</span>\u4e3a<span translate=no>_^_1_^_</span></p>\n",
|
||||
"<p>Return the distribution </p>\n": "<p>\u8fd4\u56de\u5206\u5e03</p>\n",
|
||||
"<p>Sample from the distribution </p>\n": "<p>\u6765\u81ea\u5206\u5e03\u7684\u6837\u672c</p>\n",
|
||||
"<p>Second normalization and convolution layer </p>\n": "<p>\u7b2c\u4e8c\u4e2a\u5f52\u4e00\u5316\u548c\u5377\u79ef\u5c42</p>\n",
|
||||
"<p>Split mean and log of variance </p>\n": "<p>\u5206\u5272\u5747\u503c\u548c\u65b9\u5dee\u5bf9\u6570</p>\n",
|
||||
"<p>Top-level block </p>\n": "<p>\u9876\u7ea7\u533a\u5757</p>\n",
|
||||
"<p>Top-level blocks </p>\n": "<p>\u9876\u7ea7\u533a\u5757</p>\n",
|
||||
"<p>Up-sample by a factor of <span translate=no>_^_0_^_</span> </p>\n": "<p>\u6309\u7cfb\u6570\u5411\u4e0a\u91c7\u6837<span translate=no>_^_0_^_</span></p>\n",
|
||||
"<p>Up-sampling </p>\n": "<p>\u5411\u4e0a\u91c7\u6837</p>\n",
|
||||
"<p>Up-sampling at the end of each top level block except the first </p>\n": "<p>\u5728\u6bcf\u4e2a\u9876\u7ea7\u533a\u5757\u7684\u7ed3\u5c3e\u5904\u5411\u4e0a\u91c7\u6837\uff08\u7b2c\u4e00\u4e2a\u9664\u5916\uff09</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> are the means and log of variances of the embedding of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5f62\u72b6\u5d4c\u5165\u7684\u65b9\u5dee\u7684\u5747\u503c\u548c\u5bf9\u6570<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the embedding tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5e26\u6709\u5f62\u72b6\u7684\u5d4c\u5165\u5f20\u91cf<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the encoder </li>\n<li><span translate=no>_^_1_^_</span> is the decoder </li>\n<li><span translate=no>_^_2_^_</span> is the number of dimensions in the quantized embedding space </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u7f16\u7801\u5668</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u89e3\u7801\u5668</li>\n<li><span translate=no>_^_2_^_</span>\u662f\u91cf\u5316\u5d4c\u5165\u7a7a\u95f4\u4e2d\u7684\u7ef4\u6570</li>\n<li><span translate=no>_^_3_^_</span>\u662f\u5d4c\u5165\u7a7a\u95f4\u4e2d\u7684\u901a\u9053\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the image tensor with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5e26\u6709\u5f62\u72b6\u7684\u56fe\u50cf\u5f20\u91cf<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the input feature map with shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5e26\u6709\u5f62\u72b6\u7684\u8f93\u5165\u8981\u7d20\u56fe<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the final convolution layer </li>\n<li><span translate=no>_^_1_^_</span> are the multiplicative factors for the number of channels in the previous blocks, in reverse order </li>\n<li><span translate=no>_^_2_^_</span> is the number of resnet layers at each resolution </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_4_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u6700\u7ec8\u5377\u79ef\u5c42\u4e2d\u7684\u901a\u9053\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u524d\u9762\u533a\u5757\u4e2d\u4fe1\u9053\u6570\u7684\u4e58\u6cd5\u56e0\u5b50\uff0c\u987a\u5e8f\u76f8\u53cd</li>\n<li><span translate=no>_^_2_^_</span>\u662f\u6bcf\u79cd\u5206\u8fa8\u7387\u4e0b\u7684 resnet \u5c42\u6570</li>\n<li><span translate=no>_^_3_^_</span>\u662f\u56fe\u50cf\u4e2d\u7684\u901a\u9053\u6570</li>\n<li><span translate=no>_^_4_^_</span>\u662f\u5d4c\u5165\u7a7a\u95f4\u4e2d\u7684\u901a\u9053\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the first convolution layer </li>\n<li><span translate=no>_^_1_^_</span> are the multiplicative factors for the number of channels in the subsequent blocks </li>\n<li><span translate=no>_^_2_^_</span> is the number of resnet layers at each resolution </li>\n<li><span translate=no>_^_3_^_</span> is the number of channels in the image </li>\n<li><span translate=no>_^_4_^_</span> is the number of channels in the embedding space</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u7b2c\u4e00\u4e2a\u5377\u79ef\u5c42\u4e2d\u7684\u901a\u9053\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u540e\u7eed\u533a\u7ec4\u4e2d\u4fe1\u9053\u6570\u91cf\u7684\u4e58\u6cd5\u56e0\u5b50</li>\n<li><span translate=no>_^_2_^_</span>\u662f\u6bcf\u79cd\u5206\u8fa8\u7387\u4e0b\u7684 resnet \u5c42\u6570</li>\n<li><span translate=no>_^_3_^_</span>\u662f\u56fe\u50cf\u4e2d\u7684\u901a\u9053\u6570</li>\n<li><span translate=no>_^_4_^_</span>\u662f\u5d4c\u5165\u7a7a\u95f4\u4e2d\u7684\u901a\u9053\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels in the input </li>\n<li><span translate=no>_^_1_^_</span> is the number of channels in the output</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u8f93\u5165\u4e2d\u7684\u901a\u9053\u6570</li>\n<li><span translate=no>_^_1_^_</span>\u662f\u8f93\u51fa\u4e2d\u7684\u901a\u9053\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the number of channels</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u9891\u9053\u6570</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the tensor of shape <span translate=no>_^_1_^_</span></li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u662f\u5f62\u72b6\u7684\u5f20\u91cf<span translate=no>_^_1_^_</span></li></ul>\n",
|
||||
"Annotated PyTorch implementation/tutorial of the autoencoder for stable diffusion.": "\u5e26\u6709\u6ce8\u91ca\u7684\u81ea\u52a8\u7f16\u7801\u5668\u7684 PyTorch \u5b9e\u73b0/\u6559\u7a0b\uff0c\u7528\u4e8e\u7a33\u5b9a\u6269\u6563\u3002",
|
||||
"Autoencoder for Stable Diffusion": "\u7528\u4e8e\u7a33\u5b9a\u6269\u6563\u7684\u81ea\u52a8\u7f16\u7801\u5668"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"<h1>CLIP Text Embedder</h1>\n<p>This is used to get prompt embeddings for <a href=\"../index.html\">stable diffusion</a>. It uses HuggingFace Transformers CLIP model.</p>\n": "<h1>CLIP \u30c6\u30ad\u30b9\u30c8\u30a8\u30f3\u30d9\u30c0\u30fc</h1>\n<p><a href=\"../index.html\">\u3053\u308c\u3092\u4f7f\u3046\u3068\u3001\u9ad8\u901f\u306b\u57cb\u3081\u8fbc\u3080\u3053\u3068\u304c\u3067\u304d\u3001\u5b89\u5b9a\u3057\u305f\u62e1\u6563\u304c\u5f97\u3089\u308c\u307e\u3059\u3002</a>\u30cf\u30ae\u30f3\u30b0\u30d5\u30a7\u30a4\u30b9\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30de\u30fcCLIP\u30e2\u30c7\u30eb\u3092\u4f7f\u7528\u3057\u3066\u3044\u307e\u3059</p>\u3002\n",
|
||||
"<h2>CLIP Text Embedder</h2>\n": "<h2>CLIP \u30c6\u30ad\u30b9\u30c8\u30a8\u30f3\u30d9\u30c0\u30fc</h2>\n",
|
||||
"<p>Get CLIP embeddings </p>\n": "<p>CLIP \u57cb\u3081\u8fbc\u307f\u3092\u53d6\u5f97</p>\n",
|
||||
"<p>Get token ids </p>\n": "<p>\u30c8\u30fc\u30af\u30f3 ID \u3092\u53d6\u5f97</p>\n",
|
||||
"<p>Load the CLIP transformer </p>\n": "<p>CLIP \u30c8\u30e9\u30f3\u30b9\u3092\u30ed\u30fc\u30c9\u3057\u307e\u3059</p>\n",
|
||||
"<p>Load the tokenizer </p>\n": "<p>\u30c8\u30fc\u30af\u30ca\u30a4\u30b6\u30fc\u3092\u30ed\u30fc\u30c9</p>\n",
|
||||
"<p>Tokenize the prompts </p>\n": "<p>\u30d7\u30ed\u30f3\u30d7\u30c8\u3092\u30c8\u30fc\u30af\u30f3\u5316</p>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> are the list of prompts to embed</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u57cb\u3081\u8fbc\u3080\u30d7\u30ed\u30f3\u30d7\u30c8\u306e\u30ea\u30b9\u30c8\u3067\u3059</li></ul>\n",
|
||||
"<ul><li><span translate=no>_^_0_^_</span> is the model version </li>\n<li><span translate=no>_^_1_^_</span> is the device </li>\n<li><span translate=no>_^_2_^_</span> is the max length of the tokenized prompt</li></ul>\n": "<ul><li><span translate=no>_^_0_^_</span>\u30e2\u30c7\u30eb\u30d0\u30fc\u30b8\u30e7\u30f3\u3067\u3059</li>\n<li><span translate=no>_^_1_^_</span>\u30c7\u30d0\u30a4\u30b9\u3067\u3059</li>\n<li><span translate=no>_^_2_^_</span>\u30c8\u30fc\u30af\u30f3\u5316\u3055\u308c\u305f\u30d7\u30ed\u30f3\u30d7\u30c8\u306e\u6700\u5927\u9577\u3067\u3059</li></ul>\n",
|
||||
"CLIP Text Embedder": "CLIP \u30c6\u30ad\u30b9\u30c8\u30a8\u30f3\u30d9\u30c0\u30fc",
|
||||
"CLIP embedder to get prompt embeddings for stable diffusion": "CLIP\u30a8\u30f3\u30d9\u30c0\u30fc\u306b\u3088\u308a\u3001\u8fc5\u901f\u306a\u57cb\u3081\u8fbc\u307f\u304c\u53ef\u80fd\u3067\u5b89\u5b9a\u3057\u305f\u62e1\u6563\u304c\u53ef\u80fd"
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user