-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtiny_model.h
More file actions
136 lines (121 loc) · 6.39 KB
/
Copy pathtiny_model.h
File metadata and controls
136 lines (121 loc) · 6.39 KB
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#pragma once
#include <Arduino.h>
#include <avr/pgmspace.h>
#define VOCAB_SIZE 34
#define D_MODEL 8
#define FF_DIM 16
#define CONTEXT_SIZE 12
const char VOCAB[VOCAB_SIZE + 1] = " abcdefghijklmnopqrstuvwxyz'.,!?;\n";
const int8_t TOK_EMB_Q[272] PROGMEM = {
37, 15, 32, -43, 18, -30, -9, -34, -18, 56, -25, -54, -5, -7, 12, 6,
37, 34, 25, 6, -18, 37, 29, 30, 46, 37, 7, 35, 1, -15, -16, 0,
-68, -13, 9, 13, 26, 11, 12, 1, -42, 38, 2, -16, -54, 74, -64, -15,
-37, -6, 3, 0, 22, 77, 1, -12, -41, 3, 0, 36, -4, 47, -46, -44,
11, 27, 41, 16, -6, 4, -25, 54, -31, 22, -40, -35, -3, -47, -73, -18,
48, -4, 1, 41, 30, 40, 37, -6, 16, 20, -12, 29, -65, -6, 9, 24,
-60, -8, 36, -9, 18, 31, 21, 8, 35, 49, 15, 7, -2, 36, 23, 31,
-66, 0, 11, 10, 29, -15, -23, 3, 22, 10, -37, -21, 57, 4, 29, -14,
7, 54, 1, 13, -29, 29, 32, -1, 127, -46, -71, 115, 45, 105, 69, -29,
-56, 2, 40, 0, -5, 3, -26, 33, 2, 33, -10, 41, -19, -36, -29, -1,
-48, 22, -8, 36, 16, -10, 13, -32, -34, 29, 17, -17, -49, -17, -17, 41,
-13, 26, 33, 65, 4, 7, 17, 12, -49, 0, 17, 27, -16, -15, -33, -1,
27, 20, 13, 7, -42, -11, -46, 39, -3, 58, -2, 2, 19, 34, 22, 18,
-29, -39, 20, -3, -37, 29, 15, -18, -11, 30, -49, 41, 8, -14, 28, 46,
2, -1, -19, 9, 43, 38, -52, 101, -21, -4, -84, 11, -3, 47, -5, 19,
-21, 42, -54, 23, 25, 12, -34, 56, 3, 2, -46, 14, 29, 2, -24, 37,
-19, 15, -41, -44, -40, 12, -3, 21, -4, -29, -6, 5, 45, 7, -114, -17
};
const int8_t POS_EMB_Q[96] PROGMEM = {
-35, 32, 15, -5, 3, 101, -127, -75, -24, 32, 13, -7, -5, 85, -99, -53,
-27, 34, 14, -3, -2, 68, -83, -41, -28, 34, 16, 2, 1, 52, -65, -36,
-27, 36, 15, 6, 5, 38, -46, -29, -26, 37, 15, 12, 8, 25, -29, -22,
-25, 37, 16, 16, 12, 13, -14, -16, -22, 38, 19, 20, 19, -1, 2, -8,
-22, 38, 18, 24, 22, -14, 17, 0, -22, 38, 22, 28, 26, -28, 33, 8,
-22, 35, 25, 30, 29, -41, 52, 18, -22, 40, 26, 33, 28, -52, 74, 26
};
const int8_t RMS1_G_Q[8] PROGMEM = {
110, 127, 107, 93, 105, 122, 108, 113
};
const int8_t RMS2_G_Q[8] PROGMEM = {
76, 105, 98, 113, 116, 82, 95, 127
};
const int8_t WQ_Q[64] PROGMEM = {
99, -6, -12, -82, -40, -74, -53, 38, -112, 84, 58, 12, 115, 69, 116, -127,
-103, -36, 8, 0, 101, -40, 83, 57, -39, -43, -48, -84, 40, 22, 56, -89,
-51, 46, 59, -23, 78, 29, 74, -45, -17, 13, -50, -34, 11, -71, 54, -12,
-8, 10, -1, -50, 29, -11, 19, -39, 42, -15, 20, 8, -35, -25, -69, 32
};
const int8_t WK_Q[64] PROGMEM = {
-19, -24, -31, 35, 3, -16, 10, 35, 23, 119, 80, 66, -12, 29, -23, -12,
-28, 19, -8, -18, 23, 56, 25, -75, 5, 8, -47, -24, -13, -23, 10, -18,
-44, -36, 31, 18, 46, 2, 32, 22, 85, -65, -42, -28, -84, -73, -104, 81,
-95, 73, 33, -77, 127, -10, 114, -83, -57, 27, 54, 96, 30, 76, 22, -46
};
const int8_t WV_Q[64] PROGMEM = {
-13, 105, -17, -4, -6, -12, -21, -21, -32, -40, -25, 6, 10, 2, -57, 17,
100, 79, 26, 4, -18, 24, 5, 33, 2, -38, -7, -38, -14, 52, -14, 45,
6, -29, 2, -79, 67, -7, -39, 2, 66, -13, -4, -6, 47, 33, -40, -95,
36, 22, 20, 32, -8, -68, 14, 127, 38, -57, -106, -48, 31, -66, 9, -20
};
const int8_t WO_Q[64] PROGMEM = {
19, -8, 54, -28, 42, 43, -52, 63, 120, -42, -4, 31, 127, 33, -28, -55,
-40, -35, 38, 51, -17, -21, -71, -13, -22, -6, 46, 11, 14, 27, 4, -58,
4, -37, -26, -22, -6, -61, 0, 42, -14, 5, 48, 55, -41, -12, 50, 28,
-33, 84, 21, 2, 35, 49, -46, -13, -14, -21, 19, 1, -62, 76, -104, -35
};
const int8_t W1_Q[128] PROGMEM = {
-25, -63, -13, 29, -25, -67, -44, -24, -26, -47, -6, -50, -1, -32, -23, -27,
58, 33, 41, 58, 5, 21, 34, 84, 57, -6, -41, 45, -32, 65, 55, 32,
11, 11, -82, 40, -101, -9, -44, 11, -17, 7, 90, -24, 11, 4, 12, -97,
-1, 49, 50, -23, -17, 2, 78, 53, 47, -37, 127, 65, 71, 78, -3, 63,
60, 23, -4, -93, -74, 38, 10, 24, 22, -17, -14, 21, 35, -30, 61, 59,
-18, -10, -19, -64, 27, 60, 3, 42, 37, 46, 54, -2, 77, -41, -16, -10,
-38, -6, 37, -8, -35, -8, 23, -47, -35, -83, 29, 9, -13, 48, -42, -7,
-35, 37, 73, 83, 91, -17, -55, 12, 32, 61, 3, 27, 93, 72, -33, -31
};
const int8_t W2_Q[128] PROGMEM = {
-9, 6, 31, -54, 38, -20, -6, -6, -17, -17, 22, 35, 5, 18, 9, -39,
43, 48, -11, 59, 21, -48, -26, 22, 17, 76, 44, -18, -37, -50, 19, -73,
-6, 17, -21, 22, 72, 127, -49, 49, -73, -9, -28, -20, -2, 0, -4, -1,
-3, -15, -53, 24, 35, 19, -45, -43, 12, 12, 45, 51, -17, -26, 9, 4,
22, -3, 40, 50, 5, -12, -4, 11, 7, -37, -79, -20, -30, -11, -28, -35,
14, 87, 66, 5, -10, 24, 36, -24, -8, -22, 10, 53, 52, 7, 6, -14,
8, 54, 16, 33, 63, 70, -3, 70, -50, -15, -42, -37, 2, 3, -63, 80,
0, -1, 34, -57, 32, -19, -11, -7, 10, 59, -42, -6, -13, 52, 12, -65
};
const int8_t LM_HEAD_Q[272] PROGMEM = {
-15, 48, 49, -14, -103, -7, -36, -30, -7, -20, 48, -12, -24, 49, 2, 13,
33, 60, 47, 1, -2, 46, -21, 35, -24, -11, 20, 54, 9, 5, 12, 15,
53, 39, 13, -22, 7, -15, -64, 22, -32, -40, 3, 40, -41, 13, 34, 5,
28, 20, 14, -73, 47, 13, 24, 5, -7, -5, -96, 4, 1, -72, -23, -9,
-17, -30, -73, -41, -49, 67, -4, -43, -47, 49, -23, -36, 42, 35, 2, -45,
17, -18, -43, 18, 3, -14, 7, 2, -5, -25, -14, -15, -42, 36, -13, -35,
-29, -31, -26, -43, -36, -19, 33, 23, -54, -40, -113, 29, -72, -37, 38, -11,
-4, 9, -24, -25, -42, 22, -6, 44, -35, -32, -22, 47, -50, 2, -7, -24,
-9, 34, 62, 58, 68, 71, 34, 18, 30, 9, 10, -33, -30, -1, 38, -13,
-21, 24, -10, -13, -42, -18, -6, 69, -25, 16, -52, 0, 16, 39, -46, 40,
-117, -10, -127, -116, -17, -8, -28, -42, -117, 60, 39, 32, 2, -69, 8, 0,
61, -76, -84, -6, -24, -110, -3, 1, 2, 1, -23, -52, 56, -9, -40, -1,
-3, -31, -46, 29, -39, -70, 5, 15, -12, -18, -69, 34, -17, -31, 21, -51,
-34, 5, 36, -82, 39, 30, 36, 34, 44, -10, -23, 39, -13, 23, 12, -32,
-29, 98, 22, 42, 10, 16, 48, 72, -1, -1, 16, 26, 71, -46, 12, -18,
66, -17, 18, 9, -12, 60, -88, 5, 70, 11, -13, -14, -15, -2, 7, 10,
-39, 8, -6, -1, -25, -12, -83, 41, -13, 78, 31, 23, 26, 26, 74, 20
};
const int8_t LM_BIAS_Q[34] PROGMEM = {
-1, 4, -15, -11, 36, 22, -96, -4, -38, -13, -18, 49, 124, 19, -16, -39,
6, -23, 1, 38, 28, 127, -19, 19, -21, 26, -15, -20, -43, -21, -51, -40,
-20, -65
};
const float S_TOK_EMB_Q = 3.3295218400e-02f;
const float S_POS_EMB_Q = 9.9016690817e-03f;
const float S_RMS1_G_Q = 1.5271288203e-02f;
const float S_RMS2_G_Q = 1.8328450796e-02f;
const float S_WQ_Q = 9.9416464333e-03f;
const float S_WK_Q = 1.0768183573e-02f;
const float S_WV_Q = 4.7057003487e-03f;
const float S_WO_Q = 5.0721830270e-03f;
const float S_W1_Q = 9.8107771611e-03f;
const float S_W2_Q = 1.2545363171e-02f;
const float S_LM_HEAD_Q = 7.3088384050e-03f;
const float S_LM_BIAS_Q = 8.9358861052e-03f;