p2 data gen
This commit is contained in:
parent
34bf851d1a
commit
d8198c522b
BIN
answer.pickle
Normal file
BIN
answer.pickle
Normal file
Binary file not shown.
BIN
devset.pickle
Normal file
BIN
devset.pickle
Normal file
Binary file not shown.
70
p2data.py
Normal file
70
p2data.py
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
import numpy as np
|
||||||
|
import pickle
|
||||||
|
import math
|
||||||
|
|
||||||
|
DIMENTION = 3
|
||||||
|
VAR_RANGE = 1
|
||||||
|
N = 20
|
||||||
|
ALPHA = 0.1
|
||||||
|
SIGMA = VAR_RANGE * ALPHA
|
||||||
|
|
||||||
|
TrainingSetFilename = "trainingset.pickle"
|
||||||
|
TrainingSetRatio = 0.85
|
||||||
|
DevSetFilename = "devset.pickle"
|
||||||
|
DevSetRatio = 0.05
|
||||||
|
TestSetFilename = "testset.pickle"
|
||||||
|
TestSetRatio = 0.10
|
||||||
|
AnswerFilename = "answer.pickle"
|
||||||
|
|
||||||
|
def LoadAnswer():
|
||||||
|
with open(AnswerFilename,"rb") as fr:
|
||||||
|
w = pickle.load(fr)
|
||||||
|
b = pickle.load(fr)
|
||||||
|
|
||||||
|
def SaveAnswer(w,b):
|
||||||
|
with open(AnswerFilename,"wb") as fw:
|
||||||
|
pickle.dump(w, fw)
|
||||||
|
pickle.dump(b, fw)
|
||||||
|
|
||||||
|
def LoadData(filename):
|
||||||
|
with open(filename,"rb") as fr:
|
||||||
|
x = pickle.load(fr)
|
||||||
|
y = pickle.load(fr)
|
||||||
|
return x, y
|
||||||
|
|
||||||
|
def SaveData(filename,x,y):
|
||||||
|
with open(filename,"wb") as fw:
|
||||||
|
pickle.dump(x, fw)
|
||||||
|
pickle.dump(y, fw)
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
gen: np.random.Generator = np.random.default_rng()
|
||||||
|
or_weight = (gen.uniform(high = VAR_RANGE,low = -VAR_RANGE,size=(DIMENTION,1)))
|
||||||
|
or_bias = (gen.uniform(high = VAR_RANGE, low = -VAR_RANGE,size=()))
|
||||||
|
|
||||||
|
input_x = gen.uniform(low = -VAR_RANGE,high=VAR_RANGE,size=(N,DIMENTION))
|
||||||
|
y = input_x @ or_weight + or_bias
|
||||||
|
error = gen.normal(0,SIGMA,size = (N,1))
|
||||||
|
y += error
|
||||||
|
|
||||||
|
"""
|
||||||
|
p = gen.permutation(N)
|
||||||
|
x,y= x[p],y[p]
|
||||||
|
"""
|
||||||
|
|
||||||
|
print("success to generate dataset")
|
||||||
|
SaveAnswer(or_weight,or_bias)
|
||||||
|
TrainingIndex = math.ceil(N * TrainingSetRatio)
|
||||||
|
TrainingSetX = input_x[0:TrainingIndex]
|
||||||
|
TrainingSetY = y[0:TrainingIndex]
|
||||||
|
SaveData(TrainingSetFilename,TrainingSetX,TrainingSetY)
|
||||||
|
|
||||||
|
DevSetIndex = math.ceil(TrainingIndex + N * DevSetRatio)
|
||||||
|
DevSetX = input_x[TrainingIndex:DevSetIndex]
|
||||||
|
DevSetY = y[TrainingIndex:DevSetIndex]
|
||||||
|
SaveData(DevSetFilename,DevSetX,DevSetY)
|
||||||
|
|
||||||
|
TestSetX = input_x[DevSetIndex:N]
|
||||||
|
TestSetY = y[DevSetIndex:N]
|
||||||
|
SaveData(TestSetFilename,TestSetX,TestSetY)
|
||||||
|
print("success to save dataset")
|
BIN
testset.pickle
Normal file
BIN
testset.pickle
Normal file
Binary file not shown.
BIN
trainingset.pickle
Normal file
BIN
trainingset.pickle
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user