added main

main
onebigear 2 years ago
parent d83167c953
commit 0bf552f31c

@ -3,25 +3,25 @@ Development Notes
JSON is a common format used to represent structured text. JSON is a common format used to represent structured text.
The essence of the program is to introduce noise to disrupt the The essence of the program is to introduce noise to disrupt the
mapping relation of the dictionary. mapping relation present in the dictionary.
Learning rules is also essential to machine learning. Rules are also present in machine learning.
When the rule is disrupted, when I query the dictionary again, The mapping rule is disrupted, when I query the dictionary again,
the message is disrupted. the message is disrupted.
The rule is disrupted by linear arithemetic operation, The rule is disrupted by linear arithemetic operation,
are there more disruptive and complex rules? are there more non-linear and nuanced rules?
Prototype to translate a system to text into dictionary Prototype to translate a system to text into dictionary
as a type of structured text as a type of structured text.
str int conversion is important to debug the program str int conversion is important to debug the program
why is it that noise is perceived as adverse? I am still hostile to the concept and etymology of noise, rename
the concept into something else.
''' '''
import numpy as np import numpy as np
import json import json
@ -34,49 +34,77 @@ import json
# disrupted message idenfified by "no" field # disrupted message idenfified by "no" field
data = json.load(open('seed.json', 'r'))
print("before disrupting, the message is: ") def parse_json(filename):
data = json.load(open(filename,'r'))
return data
def in_msg(data):
message_i = []
message_full_i = []
for i in data: for i in data:
print(i)
if i["no"] == "2": if i["no"] == "2":
print(i["glyph"] + " " + i["radical"] ) message_i.append(i["glyph"])
message_full_i.append(i)
if i["no"] == "3": if i["no"] == "3":
print(i["glyph"] + " " + i["radical"] ) message_i.append(i["glyph"])
message_full_i.append(i)
# write as a function, input are codes, output are a {} of glyphs
noise = np.random.randint(1,3) print("message prior to disruption contains: ")
for s in message_i:
print(s)
for i in data: def disrupt(data):
noise = np.random.randint(1,3)
for i in data:
i["no"] = int(i["no"]) i["no"] = int(i["no"])
i["no"] += noise i["no"] += noise
return data
with open('noised.json','w') as w_file: def save_json(data):
json.dump(data,w_file, indent=4) with open('noised.json','w', encoding='utf-8') as w_file:
json.dump(data,w_file, indent=4, ensure_ascii = False)
print("after disrupting, the message is: ") def out_msg(noise_data):
message_o = []
message_full_o = []
# use noised json to decrypt for i in noise_data:
#comparing integers, the noise_data no fields are previously
noise_data = json.load(open('noised.json','r')) #dumped as integers
for i in noise_data:
print(i)
print(type(i["no"]))
# comparing integers, the noise_data no fields are previously
# dumped as integers
if i["no"] == 2: if i["no"] == 2:
print(i["glyph"] + " " + i["radical"] ) message_o.append(i["glyph"])
message_full_o.append(i)
if i["no"] == 3: if i["no"] == 3:
print(i["glyph"] + " " + i["radical"] ) message_o.append(i["glyph"])
message_full_o.append(i)
print("message after disruption contains: ")
# at this point the interferences are not so apparent for s in message_o:
print(s)
# test with a large corpus # at this point the interferences are somewhat apparent
# how can i present the interference to be more apparent?
# todo
# input chinese blocks in here
if __name__ == "__main__":
parsed_json = parse_json(filename = "seed.json")
in_msg(data = parsed_json)
disrupted_data = disrupt(data = parsed_json)
save_json(data = disrupted_data)
parsed_noise_json = parse_json(filename = "noised.json")
out_msg(noise_data = parsed_noise_json)
# test with a large corpus in separate program
# try with corpuses of different language # try with corpuses of different language
# try a chinese dictionary and a latin dictionary # try a chinese dictionary and a latin dictionary
# and any other types of dictionary structures, remix! # and any other types of dictionary structures, remix!
# main section looks really ugly

@ -3,24 +3,24 @@
"glyph": "hong", "glyph": "hong",
"dept-no": "silk-1", "dept-no": "silk-1",
"radical": "silk", "radical": "silk",
"no": 2 "no": 3
}, },
{ {
"glyph": "jiao", "glyph": "jiao",
"dept-no": "silk-2", "dept-no": "silk-2",
"radical": "silk", "radical": "silk",
"no": 3 "no": 4
}, },
{ {
"glyph": "zhu", "glyph": "zhu",
"dept-no": "silk-3", "dept-no": "silk-3",
"radical": "silk", "radical": "silk",
"no": 4 "no": 5
}, },
{ {
"glyph": "du", "glyph": "du",
"dept-no": "earth-1", "dept-no": "earth-1",
"radical": "earth", "radical": "earth",
"no": 5 "no": 6
} }
] ]
Loading…
Cancel
Save