-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path__init__.py
executable file
·37 lines (30 loc) · 1.05 KB
/
__init__.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
from gym.envs.registration import register
# get samples for environment
from gym_malware.envs.utils import interface, pefeatures
sha256 = interface.get_available_sha256()
# create a holdout set
from sklearn.model_selection import train_test_split
import numpy as np
np.random.seed(123)
sha256_train, sha256_holdout = train_test_split(sha256, test_size=200)
MAXTURNS = 10
register(
id='malware-v0',
entry_point='gym_malware.envs:MalwareEnv',
kwargs={'random_sample': True, 'maxturns': MAXTURNS, 'sha256list': sha256_train}
)
register(
id='malware-test-v0',
entry_point='gym_malware.envs:MalwareEnv',
kwargs={'random_sample': False, 'maxturns': MAXTURNS, 'sha256list': sha256_holdout}
)
register(
id='malware-score-v0',
entry_point='gym_malware.envs:MalwareScoreEnv',
kwargs={'random_sample': True, 'maxturns': MAXTURNS, 'sha256list': sha256_train}
)
register(
id='malware-score-test-v0',
entry_point='gym_malware.envs:MalwareScoreEnv',
kwargs={'random_sample': False, 'maxturns': MAXTURNS, 'sha256list': sha256_holdout}
)