Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
torchani
Commits
ea718be0
"testing/python/vscode:/vscode.git/clone" did not exist on "159af5dfb322df80356130e30130db20a0ebdf21"
Unverified
Commit
ea718be0
authored
Jul 30, 2018
by
Gao, Xiang
Committed by
GitHub
Jul 30, 2018
Browse files
add common loss and metrics (#32)
parent
e2bc9f29
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
13 additions
and
8 deletions
+13
-8
tests/test_ignite.py
tests/test_ignite.py
+3
-6
torchani/ignite/__init__.py
torchani/ignite/__init__.py
+4
-2
torchani/ignite/loss_metrics.py
torchani/ignite/loss_metrics.py
+6
-0
No files found.
tests/test_ignite.py
View file @
ea718be0
...
@@ -4,7 +4,6 @@ if sys.version_info.major >= 3:
...
@@ -4,7 +4,6 @@ if sys.version_info.major >= 3:
import
os
import
os
import
unittest
import
unittest
import
torch
import
torch
from
ignite.metrics
import
RootMeanSquaredError
from
ignite.engine
import
create_supervised_trainer
,
\
from
ignite.engine
import
create_supervised_trainer
,
\
create_supervised_evaluator
create_supervised_evaluator
import
torchani
import
torchani
...
@@ -39,15 +38,13 @@ if sys.version_info.major >= 3:
...
@@ -39,15 +38,13 @@ if sys.version_info.major >= 3:
nnp
=
Flatten
(
nnp
)
nnp
=
Flatten
(
nnp
)
batch_nnp
=
torchani
.
models
.
BatchModel
(
nnp
)
batch_nnp
=
torchani
.
models
.
BatchModel
(
nnp
)
container
=
torchani
.
ignite
.
Container
({
'energies'
:
batch_nnp
})
container
=
torchani
.
ignite
.
Container
({
'energies'
:
batch_nnp
})
loss
=
torchani
.
ignite
.
DictLoss
(
'energies'
,
torch
.
nn
.
MSELoss
())
optimizer
=
torch
.
optim
.
SGD
(
container
.
parameters
(),
optimizer
=
torch
.
optim
.
SGD
(
container
.
parameters
(),
lr
=
0.001
,
momentum
=
0.8
)
lr
=
0.001
,
momentum
=
0.8
)
trainer
=
create_supervised_trainer
(
container
,
optimizer
,
loss
)
trainer
=
create_supervised_trainer
(
container
,
optimizer
,
torchani
.
ignite
.
energy_mse_loss
)
trainer
.
run
(
loader
,
max_epochs
=
10
)
trainer
.
run
(
loader
,
max_epochs
=
10
)
metric
=
torchani
.
ignite
.
DictMetric
(
'energies'
,
RootMeanSquaredError
())
evaluator
=
create_supervised_evaluator
(
container
,
metrics
=
{
evaluator
=
create_supervised_evaluator
(
container
,
metrics
=
{
'RMSE'
:
metric
'RMSE'
:
torchani
.
ignite
.
energy_rmse_
metric
})
})
evaluator
.
run
(
loader
)
evaluator
.
run
(
loader
)
...
...
torchani/ignite/__init__.py
View file @
ea718be0
from
.container
import
Container
from
.container
import
Container
from
.loss_metrics
import
DictLoss
,
DictMetric
from
.loss_metrics
import
DictLoss
,
DictMetric
,
energy_mse_loss
,
\
energy_rmse_metric
__all__
=
[
'Container'
,
'DictLoss'
,
'DictMetric'
]
__all__
=
[
'Container'
,
'DictLoss'
,
'DictMetric'
,
'energy_mse_loss'
,
'energy_rmse_metric'
]
torchani/ignite/loss_metrics.py
View file @
ea718be0
from
torch.nn.modules.loss
import
_Loss
from
torch.nn.modules.loss
import
_Loss
from
ignite.metrics.metric
import
Metric
from
ignite.metrics.metric
import
Metric
from
ignite.metrics
import
RootMeanSquaredError
import
torch
class
DictLoss
(
_Loss
):
class
DictLoss
(
_Loss
):
...
@@ -29,3 +31,7 @@ class DictMetric(Metric):
...
@@ -29,3 +31,7 @@ class DictMetric(Metric):
def
compute
(
self
):
def
compute
(
self
):
self
.
metric
.
compute
()
self
.
metric
.
compute
()
energy_mse_loss
=
DictLoss
(
'energies'
,
torch
.
nn
.
MSELoss
())
energy_rmse_metric
=
DictMetric
(
'energies'
,
RootMeanSquaredError
())
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment