From d40d980bce0a8e797e9b1e0feb07436419fe5623 Mon Sep 17 00:00:00 2001 From: nawnie <106923464+nawnie@users.noreply.github.com> Date: Mon, 27 Feb 2023 19:08:50 -0600 Subject: [PATCH] Created using Colaboratory --- Train_Colab.ipynb | 102 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 71 insertions(+), 31 deletions(-) diff --git a/Train_Colab.ipynb b/Train_Colab.ipynb index bbe89e6..e8f38e1 100644 --- a/Train_Colab.ipynb +++ b/Train_Colab.ipynb @@ -3,8 +3,8 @@ { "cell_type": "markdown", "metadata": { - "colab_type": "text", - "id": "view-in-github" + "id": "view-in-github", + "colab_type": "text" }, "source": [ "\"Open" @@ -47,12 +47,24 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "metadata": { "cellView": "form", - "id": "f2cdMtCt9Wb6" + "id": "f2cdMtCt9Wb6", + "outputId": "af696921-97a5-4667-d3cc-efba1222975b", + "colab": { + "base_uri": "https://localhost:8080/" + } }, - "outputs": [], + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Python 3.10.6\n" + ] + } + ], "source": [ "#@title Verify python version, should be 3.10.something\n", "!python --version" @@ -60,12 +72,24 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "metadata": { "cellView": "form", - "id": "d1di4EC6ygw1" + "id": "d1di4EC6ygw1", + "outputId": "98e1e97c-c829-4c17-c169-01d22318a924", + "colab": { + "base_uri": "https://localhost:8080/" + } }, - "outputs": [], + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Mounted at /content/drive\n" + ] + } + ], "source": [ "#@title Optional connect Gdrive\n", "#@markdown # But strongly recommended\n", @@ -80,12 +104,24 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "metadata": { "cellView": "form", - "id": "hAuBbtSvGpau" + "id": "hAuBbtSvGpau", + "outputId": "99c0130a-a997-4bf3-e8cb-18f9cd152390", + "colab": { + "base_uri": "https://localhost:8080/" + } }, - "outputs": [], + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "DONE!\n" + ] + } + ], "source": [ "#@markdown # Install Dependencies\n", "#@markdown This will take a couple minutes, be patient and watch the output for \"DONE!\"\n", @@ -263,6 +299,7 @@ "outputs": [], "source": [ "#@title \n", + "%cd /content/EveryDream2trainer\n", "#@markdown # Run Everydream 2\n", "#@markdown If you want to use a .json config or upload your own, skip this cell and run the cell below instead\n", "\n", @@ -302,7 +339,7 @@ "\n", "#@markdown * Location on your Gdrive where your training images are.\n", "Dataset_Location = \"/content/drive/MyDrive/training_samples\" #@param {type:\"string\"}\n", - "dataset = Dataset_Location\n", + "\n", "model = save_name\n", "\n", "#@markdown * Max Epochs to train for, this defines how many total times all your training data is used. Default of 100 is a good start if you are training ~30-40 images of one subject. If you have 100 images, you can reduce this to 40-50 and so forth.\n", @@ -332,7 +369,7 @@ "Training_Seed = -1 #@param{type:\"integer\"}\n", "#@markdown * use this option to configure a sample_prompts.json\n", "#@markdown * check out /content/EveryDream2trainer/doc/logging.md. for more details\n", - "Advance_Samples = False #@param{type:\"boolean\"}\n", + "Advance_Samples = True #@param{type:\"boolean\"}\n", "Sample_File = \"sample_prompts.txt\"\n", "if Advance_Samples:\n", " Sample_File = \"sample_prompts.json\"\n", @@ -342,28 +379,32 @@ "#@markdown * Tag shuffling, mainly for booru training. Best to just read this if interested in shufflng tags /content/EveryDream2trainer/doc/SHUFFLING_TAGS.md\n", "shuffle_tags = False #@param{type:\"boolean\"}\n", "#@markdown * You can turn off the text encoder training (generally not suggested)\n", - "Disable_text_Encoder= False #@param{type:\"boolean\"}\n", - "#@markdown * Skip the nth last layer of CLIP. 0 is default for SD1.x, 2 recommended for SD2.x models.\n", - "Clip_skip = 0 #@param {type:\"slider\", min:0, max:4, step:1}\n", - "#@markdown * Ratio of training on empty caption. Improves unconditional guidance.\n", - "Conditional_DropOut = 0.04 #@param {type:\"slider\", min:0, max:0.3, step:0.01}\n", - "#@markdown * Ratio of images randomly to flip horizontally. Use for small data sets. May negtively affect likeness of subjects with asymmetric features.\n", - "Picture_flip = 0.0 #@param {type:\"slider\", min:0, max:0.5, step:0.05}\n", - "#@markdown * This can improve contrast in light and dark scenes, Use a ratio between 0-10% for Best results. 0\n", - "zero_frequency_noise = 0.05 #@param {type:\"slider\", min:0, max:0.25, step:0.01}\n", + "Disable_text_Encoder= True #@param{type:\"boolean\"}\n", + "#@markdown * Skip the nth last layer of CLIP.\n", + "Clip_skip = 1 #@param {type:\"slider\", min:0, max:4, step:1}\n", + "#@markdown * ratio of captions dropped from training data.\n", + "Conditional_DropOut = 0.1 #@param {type:\"slider\", min:0, max:0.3, step:0.01}\n", + "#@markdown * Ratio of images randomly to flip horizontally.\n", + "Picture_flip = 0.05 #@param {type:\"slider\", min:0, max:0.5, step:0.05}\n", + "#@markdown * This can improve contrast in light and dark scenes, Use a ratio between 0-10% for Best results.\n", + "zero_frequency_noise = 0.1 #@param {type:\"slider\", min:0, max:0.25, step:0.01}\n", "\n", "#@markdown * Weights and Biases logging token. \n", "# #@markdown Paste your token here if you have an account so you can use it to track your training progress. If you don't have an account, you can create one for free at https://wandb.ai/site. Log will use your project name from above. This is a free online logging utility.\n", "# #@markdown Your key is on this page: https://wandb.ai/settings under \"Danger Zone\" \"API Keys\"\n", "wandb_token = '' #@param{type:\"string\"}\n", - "\n", - "\n", - "\n", "wandb_settings = \"\"\n", "if wandb_token:\n", " !wandb login $wandb_token\n", " wandb_settings = \"--wandb\"\n", "\n", + "if \"zip\" in Dataset_Location:\n", + " !rm -r /Training_Data/\n", + " !mkdir Training_Data\n", + " !unzip $Dataset_Location -d /Training_Data\n", + " Dataset_Location = \"/Training_Data\"\n", + "dataset = Dataset_Location\n", + "\n", "Drive=\"\"\n", "if Save_to_Gdrive:\n", " Drive = \"--logdir /content/drive/MyDrive/everydreamlogs --save_ckpt_dir /content/drive/MyDrive/everydreamlogs/ckpt\"\n", @@ -390,7 +431,7 @@ "\n", "textencode = \"\"\n", "if Disable_text_Encoder:\n", - " textencode = \"--disable_textenc_training Train_text \"\n", + " textencode = \"--disable_textenc_training\"\n", "\n", "!python train.py --resume_ckpt \"$model\" \\\n", " $textencode \\\n", @@ -415,8 +456,7 @@ " --sample_steps $Steps_between_samples \\\n", " --save_every_n_epoch $Save_every_N_epoch \\\n", " --seed $Training_Seed \\\n", - " --zero_frequency_noise_ratio $zero_frequency_noise \\\n", - " --useadam8bit \n", + " --zero_frequency_noise_ratio $zero_frequency_noise\n", "\n" ] }, @@ -486,8 +526,8 @@ "metadata": { "accelerator": "GPU", "colab": { - "include_colab_link": true, - "provenance": [] + "provenance": [], + "include_colab_link": true }, "gpuClass": "standard", "kernelspec": { @@ -507,4 +547,4 @@ }, "nbformat": 4, "nbformat_minor": 0 -} +} \ No newline at end of file