General > General Technical Chat
Generative adversarial networks to generate electronics?
(1/1)
cdev:
This thread is kind of related to the discussion on image enhancement.. It was mentioned in that discussion that software now is trained on real life images - image enhncement may be primed with images from a training set. (like with the "deep dream" software). Which raises a great many legal and moral issues, on algorithmic transparency. There is fear that the discriminator if fed with discriminatory data will contiunue and make more pervasive whatever inherent biases were used to generate the training set.
I was just reading (actually had a dream last night about) generative adversarial networks, like StyleGAN. (https://github.com/NVlabs/stylegan) A good example is illustrated by
https://thispersondoesnotexist.com/ a web URL that generates a new face shot of a nonexistent person each time you click on it.
or https://thisrentaldoesnotexist.com/ which generates hypothetical rentals.
from Wikipedia:
https://en.wikipedia.org/wiki/Generative_adversarial_network
The generative network generates candidates while the discriminative network evaluates them.[1] The contest operates in terms of data distributions. Typically, the generative network learns to map from a latent space to a data distribution of interest, while the discriminative network distinguishes candidates produced by the generator from the true data distribution. The generative network's training objective is to increase the error rate of the discriminative network (i.e., "fool" the discriminator network by producing novel candidates that the discriminator thinks are not synthesized (are part of the true data distribution)).[1][6]
A known dataset serves as the initial training data for the discriminator. Training it involves presenting it with samples from the training dataset, until it achieves acceptable accuracy. The generator trains based on whether it succeeds in fooling the discriminator. Typically the generator is seeded with randomized input that is sampled from a predefined latent space (e.g. a multivariate normal distribution). Thereafter, candidates synthesized by the generator are evaluated by the discriminator. Independent backpropagation procedures are applied to both networks so that the generator produces better samples, while the discriminator becomes more skilled at flagging synthetic samples.[7] When used for image generation, the generator is typically a deconvolutional neural network, and the discriminator is a convolutional neural network.
GANs often suffer from a "mode collapse" where they fail to generalize properly, missing entire modes from the input data. For example, a GAN trained on the MNIST dataset containing many samples of each digit, might nevertheless timidly omit a subset of the digits from its output. Some researchers perceive the root problem to be a weak discriminative network that fails to notice the pattern of omission, while others assign blame to a bad choice of objective function. Many solutions have been proposed.[8]
I am wondering if we will start to see applications that can - taking a desired set of inputs and outputs, generate a circuit via some machine learning method. Then produce a schematic, design a PCB and produce a BOM? And a 3D rendered image of the product, optimized for cost?
This technique is being used to generate all kinds of products. I first saw it being applied to architecture. (commercially) more than a decade ago. Its also generated legislation. (in California) against the use of generative mthods for generating pornography (so called "deep fakes")
It lends itself to an iterative design process. Perhaps involving a collaborative design space.
penfold:
It's a fantastic application for it, but never heard of anything using proper AI approaches, there's been some work with the dumber varients, GP, GAs, simulated annealing, particle swar etc
There has been a fair amount of work in the field of control theory (I'll see if I can dig out some citations) using genetic programming, genetic algorithms and similar to generate optimal control methods on-the-fly, essentially building the control equation as it goes and could generate anything from simple proportional control to something more akin to model predictive without depending how well it met certain constraints.
The control structure generation was interesting from a legal perspective since it could theoretically generate any currently patented control algorithm and use it without the owner's knowledge.
I believe there has been some work in filter structure/polynomial generation using similar techniques, definitely using GP/GA because I'm working on one at the moment.. but can't share too much about it I'm afraid. EvoSPICE is an LTSpice component/parameter selector tool that I think uses some evolutionary algorithms in the background,
Navigation
[0] Message Index
Go to full version