Code Monkey home page Code Monkey logo

Comments (26)

bernstei avatar bernstei commented on August 28, 2024 1

Thanks - it's going to take a little bit to get set up on an NVIDIA (V100) node, and I'm going on holiday for the next week, but I hope to get this tested soon.

from mace.

ilyes319 avatar ilyes319 commented on August 28, 2024 1

Sorry for the delay, stress and virials should be working, currently in the stress_develop branch.
To use it, just add to your parsing file these lines:
--loss='stress' \
--stress_key='your_stress_key'\
For virials, please just replace both by virials . You can also change the loss with stress_weight.
If you can give it a try that would be great.

from mace.

bernstei avatar bernstei commented on August 28, 2024

@ilyes319 - thanks for opening the issue. On what kind of time scale are you thinking this will be implemented?

from mace.

ilyes319 avatar ilyes319 commented on August 28, 2024

I will try to have something working in a "stress" branch for next week. Happy if you could try it with one of your systems when I pushed to check it.

from mace.

bernstei avatar bernstei commented on August 28, 2024

I'll re-prioritize testing it on one of systems, which I'm having trouble with.

from mace.

bernstei avatar bernstei commented on August 28, 2024

I'm about to start thinking about running the test - what's the state of per-configuration force/energy(/virial) weights, and/or the documentation for this and other features?

from mace.

davkovacs avatar davkovacs commented on August 28, 2024

The per configuration type weights are implemented and I believe work as intended.
The stress and virial are also implemented, but are somewhat untested. If you could run some fits with them it would be great.
As for documentation of features they are documented somewhat in the ReadMe of the repo and in the argument parser if you pass in --help.

from mace.

davkovacs avatar davkovacs commented on August 28, 2024

Let me know if you have any problems. I will also be on holiday from Monday. @ilyes319 will be around to answer any questions.

from mace.

bernstei avatar bernstei commented on August 28, 2024

I don't see any documentation for per-config weights (unless I define a separate config type for each config, and give it a config-type weight, which will make for an insanely long command line). Is it in the stress_develop branch? I previously attempted to use config_weight - is that still right?

Also, I don't see any evidence any stress_key or virial_key in run_train.py - is this right?

from mace.

davkovacs avatar davkovacs commented on August 28, 2024

Sorry, you are right. The model has stress implemented, but we have not finished it fully yet (ie. there is no data parsing for example). I think it will be ready by the time you are back at the end of next week.

The per config weight is also something that currently only works by making all of them have a separate config_type making it a very long command line input. I can look into implementing it properly if you find that it is necessary, we have not seen such a case yet, where we needed this. So definitely try with and without it as well and let me know the results :)

from mace.

bernstei avatar bernstei commented on August 28, 2024

I'm sure it's not necessary, in the sense that I can group the configurations and probably get equally good results, but it just happens to not be the way I generated my existing per-config weights. I do have a wide range of configurations that all come from the same process (GAP RSS), so it's not like I can say these are from low T MD and need high accuracy (weight) and these are from high T MD and need lower accuracy.

from mace.

bernstei avatar bernstei commented on August 28, 2024

Is there any way to tell from the output that it's successfully using the CUDA device? How fast should I expect an epoch to take for about 46000 environments, hidden_irreps = "128x0e", batch size 10, on a V100 is this case?

from mace.

davkovacs avatar davkovacs commented on August 28, 2024

It prints on the top of the log whether it uses device CUDA or device CPU.
as for the time it should be quite fast but I don’t have a good sense whether it is minutes or tens of minutes.

from mace.

bernstei avatar bernstei commented on August 28, 2024

1500 epochs in about 6 hours on a V100, without virials actually active. If you let me know when virial parsing is ready, I'll do a proper run.

from mace.

bernstei avatar bernstei commented on August 28, 2024

I'm back at work. Any progress on the virial-parsing version?

from mace.

JonathanSchmidt1 avatar JonathanSchmidt1 commented on August 28, 2024

Is the stress version ready to be merged into main?
Jonathan (we talked at psik about the multigpu)

from mace.

bernstei avatar bernstei commented on August 28, 2024

Thanks - I'll start testing, although it'll probably be a week or so.

from mace.

JonathanSchmidt1 avatar JonathanSchmidt1 commented on August 28, 2024

Training with energy, forces and stress seems to work for me.

from mace.

bernstei avatar bernstei commented on August 28, 2024

Any idea about a reasonable value for stress_weight, by the way? (although I can't really test until it's possible to turn off stress on a per-config-type basis). I'm currently using weights of 1.0 for energy and 10.0 for force.

[this is waiting on the per-config stress weight, see #13 ]

from mace.

ilyes319 avatar ilyes319 commented on August 28, 2024

from mace.

bernstei avatar bernstei commented on August 28, 2024

What's the current status? The stress_develop branch seems to be gone.

from mace.

ilyes319 avatar ilyes319 commented on August 28, 2024

The stress branch is now merged into the develop branch. We are still not supporting the missing virials/stress but that is a more generic issue of handling missing data that we need to solve.

from mace.

bernstei avatar bernstei commented on August 28, 2024

Thanks. I'll switch to that branch while I play with it. I only need to ignore the stress in my nonperiodic configs, so I can add a fake stress to those, and make them into a special config type that has zero weight on the stress.

from mace.

bernstei avatar bernstei commented on August 28, 2024

@ilyes319 Now that we have stresses in fitting and missing data, what's the status of the remaining step which is supporting prediction of stresses in the ASE Calculator?

from mace.

bernstei avatar bernstei commented on August 28, 2024

Does #24 looks right? I'll try to play with a test.

from mace.

ilyes319 avatar ilyes319 commented on August 28, 2024

I am closing virials stress related support as we merged #22 and #26.

from mace.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.