On Sun, Sep 29, 2019 at 7:06 AM Francesco Bonazzi
<[email protected]> wrote:
>
>
>
> On Saturday, 28 September 2019 19:43:23 UTC+2, Gagandeep Singh (B17CS021) 
> wrote:
>>
>> When I skimmed through the paper, I had the following queries:
>>
>> 1. Is integration really a tree to tree translation? Because, neural network 
>> is predicting the resulting expression tree for the input equation. However, 
>> integration is not a predictive operation. Moreover, how can we define that 
>> whether the model is over-fitting or not on the training data? What was the 
>> size of the training data set?
>
>
> They claim they write the expression tree into a sequence using 
> Polish-notation. After that they train a sequence-to-sequence model developed 
> by Google for machine translation (I have previously posted a link to a 
> notebook containing an example of that model used for Portuguese to English 
> translation).
>
> They discuss the possibility that the resulting sequence in Polish-notation 
> may not be parseable into an expression tree, but they claim that this rarely 
> occurs.
>
> Any correct result for the equation is OK, as long as it is correct. The 
> current SymPy integrator only returns one result (even if there are multiple).
>
>>
>> 2. Does the data set of equations contains noise? Is there any uncertainty 
>> in the data set? For example, while translating from one language to another 
>> there are chances that one word can be mapped to different ones having the 
>> same meaning. However, here, it is not the case, there may be multiple 
>> results but we can check whether they are correct or not with 100% surety.
>
>
> It would be interesting to see how many results are actually parseable (let 
> alone correct). If a translation gives you a grammar mistake, you can still 
> read the text, but it doesn't work like that on expression trees.

I'm also curious what it returns for non integrable functions. Like
what does it think the integral for exp(-x^2) is and is it in any way
relatable to the error function.

>
>>
>> 3. Is this model able to generalise over any mathematical expression. The 
>> way they generated data sets is algorithmic and deterministic. It is not 
>> random(random number generators are itself deterministic). So, how can we 
>> say that this model is the one that outperforms any CAS?
>
>
> I really doubt it will outperform CAS algorithms, but let's wait for their 
> results first.
>
>>
>> Neural Networks don't learn, the way human beings do. They just imitate the 
>> underlying distribution of the data. But, I don't think that mathematical 
>> expressions have any such underlying distribution. Well, we can take a 
>> subset of those expressions which can have a distribution and I think that's 
>> the case with their model.
>
>
> I think it's more promising to use mixtures of ML and rules. For example, you 
> have many possible rules to apply and use ML/neural networks to decide which 
> rules to try first.
>
> I'm always a bit skeptical of neural networks, in the end they work as huge 
> black boxes.

(Indefinite) integration is a great fit because it's trivial to tell
if an answer is correct or not (up to some caveats, but at least you
won't ever get any false positives). So any kind of heuristic can be
useful. Even if it returns wrong answers some of the time, but right
answers a good fraction of the time, it can be useful.

Other CAS algorithms don't have this property, so I'd be much more
sceptical of using machine learning to solve them. For instance people
sometimes want to use some kind of genetic algorithm or something to
do expression simplification. But unless you constrain it to only
perform mathematically correct transformations, you cannot guarantee
that the resulting "simplification" is correct, and testing expression
equality is an unsolvable problem that can only be done heuristically
in general.

Aaron Meurer

>
> --
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sympy/644a1d7a-48e7-4bcb-842d-223ba225091b%40googlegroups.com.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CAKgW%3D6%2BEHVqLUMYZR6pMHheUTC9-dPK%2BediJZcgzpcGZ6CXNVg%40mail.gmail.com.

Reply via email to