Who can help compose a normal Markov algorithm for comparing two numbers in the unary system? I made a Turing machine, but I can’t figure out how to make a Markov algorithm.
Related
When simulating a Bayesian model, are we supposed to treat the parameters as a random variable (a prior), but not use a fixed value?
For example, we have a Bayesian linear model y=x\beta+\epsilon. When simulating it, literature usually: 1. set regression coefficients at fixed values, e.g. (0,3,-2,1,0,...); 2. simulate the predictors many times; 3. simulate the error term, usually standard normal; 4. generate the response.
If the regression coefficients have a prior (assume they have exchangeable priors), and thus we have posterior distributions, why would we simulate only one set of regression coefficients values? This sounds like the posterior has a distribution, meaning that we don't believe in any fixed value, while the truth indeed is fixed value. Even the posterior mean is supposed to converge to the OLS estimate under good setups, but this still feels difficult to understand.
Wanted to ask the opinion of SO experts about the type of neural network I should use to teach it make yes/no answers on the combination of over fifty parameters. Essentially I have a valuation that may produce up to fifty different warnings or errors that are present in what’s being evaluated. So far I’ve been using mean average with coefficients to produce yes/no threshold, but wanted to learn more about applying it through supervised neural network, which I can feed different results and teach it to give final verdict. Which neural network I can use for such undertaking? There are quite a few there and as I’m entering the field of artificial learning, I wanted to which direction I should start looking to.
EDIT
What I'm starting to lean towards is employing some kind of back-propagation to adjust coefficients for each of the rule, where the decision of whether barcode data is correct or not will influence those coefficients. I'm pretty sure this can be achieved using a NN, but not exactly sure which one to use.
I have 3 neurons x1, x2, x3. Now I know my value is being overflowed by the actual result value at output (as it is wrong answer) and my weights need new value, but how much value to be set for each neuron ? How to calculate that ?
One way is to divide the (desired value - output value) / 3 and assign the answer to each neuron ... but it won't work for new input, as no proper learning is made.
From your question it seems you do not understand yet how really neural networks work.
First of all, neural networks are a class of algorithms that fall under machine learning techniques. Therefore, they learn, either unsupervised, supervised or in a reinforcement type of training. This of course require a learning paradigm. In neural networks the most well studied supervised training is the backpropagation method. However, to understand how this work you first need to understand how a network is developed.
A description of what is a neural network and its foundations can be seen here: http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/cs11/report.html
One practical explanation how you can implement a functional network through backpropagation can be seen here: http://galaxy.agh.edu.pl/~vlsi/AI/backp_t_en/backprop.html
If you read these you will probably know enough to answer your question.
Is supervised training of a neural network with 2 unknown outputs possible where there is a relation such as y=a.x^b between known parameters (y,x) and unknowns (a,b). here (a,b) are the outputs of network!!!
The direct consequence of the universal approximation theorem is that any continous function from the compact subset of R^d onto k-dimensional hypercube can be approximated with standard feed forward neural network with given error bound eps.
So in simple words - in fact every function can be trained using neural network, which does not mean that in practise any algorithm will actually do this (it is purely existantional proof, which gives no intuition "where to look").
So if your question is "is it possible to train a network that will aproximate my function?" the answer is yes, if the question is "is it possible to make neural network represent exactly my function" then the answer is yes, but given a custom activation function.
I have just started programming for Neural networks. I am currently working on understanding how a Backpropogation (BP) neural net works. While the algorithm for training in BP nets is quite straightforward, I was unable to find any text on why the algorithm works. More specifically, I am looking for some mathematical reasoning to justify using sigmoid functions in neural nets, and what makes them mimic almost any data distribution thrown at them.
Thanks!
The sigmoid function introduces non-linearity in the network. Without a non-linear activation function, the net can only learn functions which are linear combinations of its inputs. The result is called universal approximation theorem or Cybenko theorem, after the gentleman who proved it in 1989. Wikipedia is a good place to start, and it has a link to the original paper (the proof is somewhat involved though). The reason why you would use a sigmoid as opposed to something else is that it is continuous and differentiable, its derivative is very fast to compute (as opposed to the derivative of tanh, which has similar properties) and has a limited range (from 0 to 1, exclusive)