# meaning dataset meaning数据集是一个模仿自然语言,以及抽象表达的数据集。 ## 概念 1. token表示最终体现的基本数据表达,类似单词。vocab_size表示代表token的数量。 2. meaning表示一种语义(符号),所有的meaning都由一个编号表达,编号越大表示语义越复杂 3. 所有的meaning都可以由更低标号表达 4. 从0到(vocab_size-1)的编号表示基本meaning,是不能被拆解的,也就是token 5. meaning通过一层层的向低编号的meaning进行组合替换,最终形成一个最底层是token的树形数据 6. level表示当前token相对于root meaning的距离 7. rank 8. rank_idx表示当前token在不同层的排序编号,每4位表示在一层里面的编号,低4位表示最低层级的rank_idx,高位无用的位用1填充 9. rank_all表示当前token在不同层的分子个数,每4位表示在一层里面的编号,低4位表示最低层级的rank_all,高位无用的位用1填充 10. tree用于存储每个meaning的拆解的数据,使用字典表达一个树形结构 11. get_seq_mask返回一个sequence每个token在对应level是不是对应的index,level=0:最底层,index=-1:最后一个,index=0:第一个 12. meaning_height 当前meaning的总高度 13. meaning_weight 当前meaning的总宽度 ``` vocab_size = 256 meaning = 115200 115200 / | \ 10240 1100 12322 / | \ / \ / | \ 512 32 1201 245 233 3214 532 324 / \ / \ / \ | / \ 123 42 320 500 1231 23 324 93 176 / \ / \ / \ / \ 176 11 255 129 129 99 211 111 sequence = 123 42 32 176 11 255 129 245 233 129 99 23 211 111 93 176 level = 3 3 2 4 4 4 4 2 2 4 4 3 4 4 3 3 idx at 0 = 0 1 1 0 1 0 1 0 1 0 1 2 0 1 0 1 idx at 1 = 0 0 0 0 0 1 1 1 1 0 0 0 0 0 2 2 idx 0 1 1 0 1 16 17 16 17 0 1 2 0 1 32 33 ```