{"id":2312,"date":"2022-07-16T21:14:58","date_gmt":"2022-07-16T20:14:58","guid":{"rendered":"https:\/\/toshareproject.it\/artmakerblog\/?p=2312"},"modified":"2022-07-16T21:14:58","modified_gmt":"2022-07-16T20:14:58","slug":"training-your-own-unconditional-diffusion-model-with-minimal-coding","status":"publish","type":"post","link":"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/","title":{"rendered":"Training Your Own Unconditional Diffusion Model (With Minimal Coding)"},"content":{"rendered":"<p>*Meanwhile, in image-generator land:<\/p>\n<p><a href=\"https:\/\/hive.blog\/hive-158694\/@kaliyuga\/training-your-own-unconditional-diffusion-model-with-minimal-coding\">https:\/\/hive.blog\/hive-158694\/@kaliyuga\/training-your-own-unconditional-diffusion-model-with-minimal-coding<\/a><\/p>\n<p>About two years ago, I wrote my first how-to guide for non-coders on training custom AI models. Back then, GANs were the most cutting-edge form of AI art. Today that title belongs to Clip-guided diffusion models, but a lot of the underlying prep work for creating custom models remains similar and creating custom models remains accessible, even if you can&#8217;t code at all.<\/p>\n<p>In this article, I&#8217;ll be focusing on guiding you through building an image dataset, and then turning that dataset into a custom clip-guided diffusion model. More specifically, your end result will be an unconditional clip-guided diffusion model. This is a fancy way of saying that all you need to provide to the training notebook is an image dataset, none of the metadata\/associated text that would be used to train a conditional model. Due to technological wizardry, an unconditional model is still fully guidable by text inputs!<\/p>\n<p>I won&#8217;t be getting into the differences between GANs and diffusion models or how diffusion models work in this tutorial. If you&#8217;re new to AI art and the concepts I&#8217;m discussing here, the recent Vox piece on clip-guided diffusion (which I&#8217;m actually featured in!) is a really good place to start; I recommend that you watch it first and maybe play around with tools like Disco Diffusion before launching into this. I&#8217;ve tried to make this guide pretty simple, but at the same time, it&#8217;s definitely written with the expectation that you have some experience with AI art\/colab notebooks.<\/p>\n<p>To complete this tutorial, you will need:<\/p>\n<p>A Google Colab Pro account to train your model and navigate the final result<\/p>\n<p>ImageAssistant, a Chrome extension for bulk-downloading images from websites<\/p>\n<p>BIRME, a bulk image cropper\/resizer accessible from your browser<\/p>\n<p>Alex Spirin&#8217;s 256&#215;256 OpenAI diffusion model fine-tuning colab notebook, for training a model based on your dataset<\/p>\n<p>Custom Model-Enabled Disco Diffusion v 5.2 notebook for periodically checking in on your model&#8217;s training progress<\/p>\n<p>Step 1: Gathering your dataset&#8230;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>*Meanwhile, in image-generator land: https:\/\/hive.blog\/hive-158694\/@kaliyuga\/training-your-own-unconditional-diffusion-model-with-minimal-coding About two years ago, I wrote my first how-to guide for non-coders on training custom AI models. Back then, GANs were the most cutting-edge form of AI art. Today that title belongs to Clip-guided diffusion models, but a lot of the underlying prep work for creating custom models remains similar [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2312","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v17.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog<\/title>\n<meta name=\"description\" content=\"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog\" \/>\n<meta property=\"og:description\" content=\"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog\" \/>\n<meta property=\"og:url\" content=\"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/\" \/>\n<meta property=\"og:site_name\" content=\"Artmaker Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-07-16T20:14:58+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Bruce Sterling\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/toshareproject.it\/artmakerblog\/#website\",\"url\":\"https:\/\/toshareproject.it\/artmakerblog\/\",\"name\":\"Artmaker Blog\",\"description\":\"on Toshareproject.it - curated by Bruce Sterling\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/toshareproject.it\/artmakerblog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-GB\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/#webpage\",\"url\":\"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/\",\"name\":\"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog\",\"isPartOf\":{\"@id\":\"https:\/\/toshareproject.it\/artmakerblog\/#website\"},\"datePublished\":\"2022-07-16T20:14:58+00:00\",\"dateModified\":\"2022-07-16T20:14:58+00:00\",\"author\":{\"@id\":\"https:\/\/toshareproject.it\/artmakerblog\/#\/schema\/person\/6f20726ed2761431f3e0ff4e096c3085\"},\"description\":\"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog\",\"breadcrumb\":{\"@id\":\"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/toshareproject.it\/artmakerblog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Training Your Own Unconditional Diffusion Model (With Minimal Coding)\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/toshareproject.it\/artmakerblog\/#\/schema\/person\/6f20726ed2761431f3e0ff4e096c3085\",\"name\":\"Bruce Sterling\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/toshareproject.it\/artmakerblog\/#personlogo\",\"inLanguage\":\"en-GB\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c390e8ed4db57a34278dcf667f928a643cf769a865c8a8632dcd310412bb9a99?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c390e8ed4db57a34278dcf667f928a643cf769a865c8a8632dcd310412bb9a99?s=96&d=mm&r=g\",\"caption\":\"Bruce Sterling\"},\"description\":\"Art director at Share Festival, author and journalist\",\"sameAs\":[\"http:\/\/toshareproject.it\/tomorrowart\"],\"url\":\"https:\/\/toshareproject.it\/artmakerblog\/author\/brucesterling\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog","description":"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/","og_locale":"en_GB","og_type":"article","og_title":"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog","og_description":"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog","og_url":"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/","og_site_name":"Artmaker Blog","article_published_time":"2022-07-16T20:14:58+00:00","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Bruce Sterling","Estimated reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/toshareproject.it\/artmakerblog\/#website","url":"https:\/\/toshareproject.it\/artmakerblog\/","name":"Artmaker Blog","description":"on Toshareproject.it - curated by Bruce Sterling","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/toshareproject.it\/artmakerblog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-GB"},{"@type":"WebPage","@id":"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/#webpage","url":"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/","name":"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog","isPartOf":{"@id":"https:\/\/toshareproject.it\/artmakerblog\/#website"},"datePublished":"2022-07-16T20:14:58+00:00","dateModified":"2022-07-16T20:14:58+00:00","author":{"@id":"https:\/\/toshareproject.it\/artmakerblog\/#\/schema\/person\/6f20726ed2761431f3e0ff4e096c3085"},"description":"Training Your Own Unconditional Diffusion Model (With Minimal Coding) | Artmaker Blog","breadcrumb":{"@id":"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/toshareproject.it\/artmakerblog\/training-your-own-unconditional-diffusion-model-with-minimal-coding\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/toshareproject.it\/artmakerblog\/"},{"@type":"ListItem","position":2,"name":"Training Your Own Unconditional Diffusion Model (With Minimal Coding)"}]},{"@type":"Person","@id":"https:\/\/toshareproject.it\/artmakerblog\/#\/schema\/person\/6f20726ed2761431f3e0ff4e096c3085","name":"Bruce Sterling","image":{"@type":"ImageObject","@id":"https:\/\/toshareproject.it\/artmakerblog\/#personlogo","inLanguage":"en-GB","url":"https:\/\/secure.gravatar.com\/avatar\/c390e8ed4db57a34278dcf667f928a643cf769a865c8a8632dcd310412bb9a99?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c390e8ed4db57a34278dcf667f928a643cf769a865c8a8632dcd310412bb9a99?s=96&d=mm&r=g","caption":"Bruce Sterling"},"description":"Art director at Share Festival, author and journalist","sameAs":["http:\/\/toshareproject.it\/tomorrowart"],"url":"https:\/\/toshareproject.it\/artmakerblog\/author\/brucesterling\/"}]}},"_links":{"self":[{"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/posts\/2312","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/comments?post=2312"}],"version-history":[{"count":1,"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/posts\/2312\/revisions"}],"predecessor-version":[{"id":2313,"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/posts\/2312\/revisions\/2313"}],"wp:attachment":[{"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/media?parent=2312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/categories?post=2312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/toshareproject.it\/artmakerblog\/wp-json\/wp\/v2\/tags?post=2312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}