[scikit-learn] Using Scikit-Learn to predict magnetism in chemical systems

Tommaso Costanzo tommaso.costanzo01 at gmail.com
Mon Mar 27 15:15:57 EDT 2017


Dear Henrique,


I agree with Robert on the use of a supervised algorithm and I would also
suggest you to try a semisupervised one if you have trouble in labeling
your data.


Moreover, as a chemist I think that the input you are thinking to use is
not the in the best form for machine learning because you are trying to
predict coupling J(AB) but in the future space you have only coordinates
(XYZ). What I suggest is to generate the pair of atoms externally and then
use a matrix of the form (Mx3), where M are the pairs of atoms you want to
predict your J and 3 are the features of the two atoms (distance, angle,
unpaired electrons). For a supervised approach you will need a training set
where the J is know so your training data will be of the form Mx4 and the
fourth feature will be the J you know.

Hope that this is clear, if not I will be happy to help more


Sincerely

Tommaso

2017-03-27 13:46 GMT-04:00 Henrique C. S. Junior <henriquecsj at gmail.com>:

> Dear Robert, thank you. Yes, I'd like to talk about some specifics on the
> project.
> Thank you again.
>
> On Mon, Mar 27, 2017 at 2:25 PM, Robert Slater <rdslater at gmail.com> wrote:
>
>> You definitely can use some of the tools in sci-kit learn for supervised
>> machine learning.  The real trick will be how well your training system is
>> representative of your future predictions.  All of the various regression
>> algorithms would be of some value and you make even consider an ensemble to
>> help generalize.  There will be some important questions to answer--what
>> kind of loss function do you want to look at?  I assumed regression
>> (continuous response) but it could also classify--paramagnetic,
>> diamagnetic, ferromagnetic, etc...
>>
>> Another task to think about might be dimension reduction.
>> There is no guarantee you will get fantastic results--every problem is
>> unique and much will depend on exactly what you want out of the
>> solution--it may be that we get '10%' accuracy at best--for some systems
>> that is quite good, others it is horrible.
>>
>> If you'd like to talk specifics, feel free to contact me at this email.
>> I have a background in magnetism (PhD in magnetic multilayers--i was
>> physics, but as you are probably aware chemisty and physics blend in this
>> area) and have a fairly good knowledge of sci-kit learn and machine
>> learning.
>>
>>
>>
>> On Mon, Mar 27, 2017 at 10:50 AM, Henrique C. S. Junior <
>> henriquecsj at gmail.com> wrote:
>>
>>> I'm a chemist with some rudimentary programming skills (getting started
>>> with python) and in the middle of the year I'll be starting a Ph.D. project
>>> that uses computers to describe magnetism in molecular systems.
>>>
>>> Most of the time I get my results after several simulations and
>>> experiments, so, I know that one of the hardest tasks in molecular
>>> magnetism is to predict the nature of magnetic interactions. That's why
>>> I'll try to tackle this problem with Machine Learning (because such
>>> interactions are dependent, basically, of distances, angles and number of
>>> unpaired electrons). The idea is to feed the computer with a large training
>>> set (with number of unpaired electrons, XYZ coordinates of each molecule
>>> and experimental magnetic couplings) and see if it can predict the magnetic
>>> couplings (J(AB)) of new systems:
>>> (see example in the attached image)
>>>
>>> Can Scikit-Learn handle the task, knowing that the matrix used to
>>> represent atomic coordinates will probably have a different number of atoms
>>> (because some molecules have more atoms than others)? Or is this a job
>>> better suited for another software/approach? ​
>>>
>>>
>>> --
>>> *Henrique C. S. Junior*
>>> Industrial Chemist - UFRRJ
>>> M. Sc. Inorganic Chemistry - UFRRJ
>>> Data Processing Center - PMP
>>> Visite o Mundo Químico <http://mundoquimico.com.br>
>>>
>>> _______________________________________________
>>> scikit-learn mailing list
>>> scikit-learn at python.org
>>> https://mail.python.org/mailman/listinfo/scikit-learn
>>>
>>>
>>
>> _______________________________________________
>> scikit-learn mailing list
>> scikit-learn at python.org
>> https://mail.python.org/mailman/listinfo/scikit-learn
>>
>>
>
>
> --
> *Henrique C. S. Junior*
> Industrial Chemist - UFRRJ
> M. Sc. Inorganic Chemistry - UFRRJ
> Data Processing Center - PMP
> Visite o Mundo Químico <http://mundoquimico.com.br>
>
> _______________________________________________
> scikit-learn mailing list
> scikit-learn at python.org
> https://mail.python.org/mailman/listinfo/scikit-learn
>
>


-- 
Please do NOT send Microsoft Office Attachments:
http://www.gnu.org/philosophy/no-word-attachments.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scikit-learn/attachments/20170327/8ca3fe41/attachment.html>


More information about the scikit-learn mailing list