diff --git a/answer.pickle b/answer.pickle new file mode 100644 index 0000000..ac4c37b Binary files /dev/null and b/answer.pickle differ diff --git a/devset.pickle b/devset.pickle new file mode 100644 index 0000000..5ea7e62 Binary files /dev/null and b/devset.pickle differ diff --git a/p2data.py b/p2data.py new file mode 100644 index 0000000..0ee0534 --- /dev/null +++ b/p2data.py @@ -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") \ No newline at end of file diff --git a/testset.pickle b/testset.pickle new file mode 100644 index 0000000..b7368cd Binary files /dev/null and b/testset.pickle differ diff --git a/trainingset.pickle b/trainingset.pickle new file mode 100644 index 0000000..1d22b6a Binary files /dev/null and b/trainingset.pickle differ