I'd like to use machine learning to guess a mathematical pattern: the input are certain polynomials in four variables $q_1,q_2,q_3,q_4$, the output can be zero or one.

Allowed polynomials are such that (i) all their non-zero coefficients are equal to one, (ii) they do not contain monomials of the form $q_1^j$ for $j \geq 0$, and (iii) if an allowed polynomial contains a monomial $m=q_1^a q_2^b q_3^c q_4^d$ for some non-negative integers $a,b,c,d$, then it also contains $m'=q_1^{a-1} q_2^b q_3^c q_4^d$, provided this does not violate (ii) and $a \geq 1$; similarly for $b \to b-1$, $c \to c-1$, and $d \to d-1$.

Here's an example batch, given by pairs {input, output}: $\{q_2,1\},\{q_3,1\},\{q_4,1\}$

Here's a second batch: $\{q_2+q_1 q_2,0\},\{q_2+q_2^2,0\},\{q_2+q_3,1\},\{q_3+q_1 q_3,0\},\{q_3+q_3^2,0\},\{q_2+q_4,1\},\{q_3+q_4,1\},\{q_4+q_1 q_4,0\},\{q_4+q_4^2,1\}$

I can construct larger and larger batches using Mathematica, and I'd like to know how to practically go from here, to instructing an AI to guess a simple function of $q$'s that reproduces the behavior, namely that can guess the correct output for previously unknown admissible polynomials.

What are the typical batch size and computational power required for such a program to succeed?

My idea is to use a function $\phi$ from the space of allowed polynomials $\mathcal P$ to the set $\mathbb Z_2=\{0,1\}$, of the form $\phi:\mathcal P \to \mathbb Z_2$, $p=\sum_{i \in I} m_i \mapsto \phi(p):= \sum_{i \in I' \subset I} m_i|_1 \mod 2$, where $m_i|_1$ means the $i$-th monomial inside $p$ evaluated at $q_1=q_2=q_3=q_4=1$, and come up with the form of $I'$ as function of $I$.

Notice there's no linear structure on $\mathcal P$.

Remark: of course instead of polynomials one could use punctured solid partitions.

  • 1
    $\begingroup$ Polynomial regression can be used in a model-free scenario for predicting future states. The idea is to use only the given raw data but no additional description of the problem. The python sklearn library supports it out-of-the box. $\endgroup$ – Manuel Rodriguez Feb 15 '19 at 22:59
  • $\begingroup$ @ManuelRodriguez Thanks, I will look into it. Just to get an estimate, is it something one can try on a laptop with a few batches, or does it need more powerful stuff? I'm not very familiar with these things. $\endgroup$ – jj_p Feb 16 '19 at 4:31
  • $\begingroup$ No, a laptop is not required. It will work on a normal Differential analyzer, which is an analog computer, Lin, Phyo Wai. "Analog computer simulation." (2001). $\endgroup$ – Manuel Rodriguez Feb 16 '19 at 7:47
  • $\begingroup$ @ManuelRodriguez I'm a bit confused trying to apply polynomial regression to my case, as all the ways I can come up with involve an infinite dimensional space. For example, I can choose an ordering for the monomials, and then use coordinates associated to each monomial in this ordering, then let $\varphi$ be a linear function of these coordinates to which I apply polynomial regression, and $\phi=\varphi(1,...,1)$, but in this case the coordinates are infinite. Can you explain more what you had in mind? should I truncate to the first $j$ monomials, and train it with $k<j$ known monomials? $\endgroup$ – jj_p Feb 16 '19 at 23:23
  • $\begingroup$ Is there a limit on a,b,c,d? if there is such a limit, we have an upper bound(Number of dimensions = abcd) on types of monomials and hence we can applyit to finite dimensional NN $\endgroup$ – Zaid Syed M Md Feb 17 '19 at 10:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.