t_learn 0.1.1.6 → 0.1.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/examples/em_gaussian.rb +6 -0
- data/examples/faithful.json +272 -0
- data/examples/k_means.rb +5 -0
- data/examples/sample_1dim.json +1 -0
- data/lib/t_learn/k_means.rb +90 -47
- data/lib/t_learn/version.rb +1 -1
- data/lib/t_learn.rb +1 -0
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '089047f4bcbd495dbdfa41279fca1ba29f330601'
|
4
|
+
data.tar.gz: 031cdacdfb6d0a0113855558f1ffe7552bfcc67a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 79085f6851b4c8dbc5bc7edec7512d4b23440c6c601def92fe3f711d8e18efea792834a883df2baf64c4bfe85a6a9aedf9b4b4bb2037e5553a3c5facc56795c8
|
7
|
+
data.tar.gz: d2f1763f628f74f6b15c4f163b415c9f8ba196b0a2eb5e88551fd797e88d09c86793e14c2fc08c03c4cfffe166b94c33e910bc7ca3449e4b238f59a9a418a9b8
|
@@ -0,0 +1,272 @@
|
|
1
|
+
[[3.600000, 79.000000],
|
2
|
+
[1.800000, 54.000000],
|
3
|
+
[3.333000, 74.000000],
|
4
|
+
[2.283000, 62.000000],
|
5
|
+
[4.533000, 85.000000],
|
6
|
+
[2.883000, 55.000000],
|
7
|
+
[4.700000, 88.000000],
|
8
|
+
[3.600000, 85.000000],
|
9
|
+
[1.950000, 51.000000],
|
10
|
+
[4.350000, 85.000000],
|
11
|
+
[1.833000, 54.000000],
|
12
|
+
[3.917000, 84.000000],
|
13
|
+
[4.200000, 78.000000],
|
14
|
+
[1.750000, 47.000000],
|
15
|
+
[4.700000, 83.000000],
|
16
|
+
[2.167000, 52.000000],
|
17
|
+
[1.750000, 62.000000],
|
18
|
+
[4.800000, 84.000000],
|
19
|
+
[1.600000, 52.000000],
|
20
|
+
[4.250000, 79.000000],
|
21
|
+
[1.800000, 51.000000],
|
22
|
+
[1.750000, 47.000000],
|
23
|
+
[3.450000, 78.000000],
|
24
|
+
[3.067000, 69.000000],
|
25
|
+
[4.533000, 74.000000],
|
26
|
+
[3.600000, 83.000000],
|
27
|
+
[1.967000, 55.000000],
|
28
|
+
[4.083000, 76.000000],
|
29
|
+
[3.850000, 78.000000],
|
30
|
+
[4.433000, 79.000000],
|
31
|
+
[4.300000, 73.000000],
|
32
|
+
[4.467000, 77.000000],
|
33
|
+
[3.367000, 66.000000],
|
34
|
+
[4.033000, 80.000000],
|
35
|
+
[3.833000, 74.000000],
|
36
|
+
[2.017000, 52.000000],
|
37
|
+
[1.867000, 48.000000],
|
38
|
+
[4.833000, 80.000000],
|
39
|
+
[1.833000, 59.000000],
|
40
|
+
[4.783000, 90.000000],
|
41
|
+
[4.350000, 80.000000],
|
42
|
+
[1.883000, 58.000000],
|
43
|
+
[4.567000, 84.000000],
|
44
|
+
[1.750000, 58.000000],
|
45
|
+
[4.533000, 73.000000],
|
46
|
+
[3.317000, 83.000000],
|
47
|
+
[3.833000, 64.000000],
|
48
|
+
[2.100000, 53.000000],
|
49
|
+
[4.633000, 82.000000],
|
50
|
+
[2.000000, 59.000000],
|
51
|
+
[4.800000, 75.000000],
|
52
|
+
[4.716000, 90.000000],
|
53
|
+
[1.833000, 54.000000],
|
54
|
+
[4.833000, 80.000000],
|
55
|
+
[1.733000, 54.000000],
|
56
|
+
[4.883000, 83.000000],
|
57
|
+
[3.717000, 71.000000],
|
58
|
+
[1.667000, 64.000000],
|
59
|
+
[4.567000, 77.000000],
|
60
|
+
[4.317000, 81.000000],
|
61
|
+
[2.233000, 59.000000],
|
62
|
+
[4.500000, 84.000000],
|
63
|
+
[1.750000, 48.000000],
|
64
|
+
[4.800000, 82.000000],
|
65
|
+
[1.817000, 60.000000],
|
66
|
+
[4.400000, 92.000000],
|
67
|
+
[4.167000, 78.000000],
|
68
|
+
[4.700000, 78.000000],
|
69
|
+
[2.067000, 65.000000],
|
70
|
+
[4.700000, 73.000000],
|
71
|
+
[4.033000, 82.000000],
|
72
|
+
[1.967000, 56.000000],
|
73
|
+
[4.500000, 79.000000],
|
74
|
+
[4.000000, 71.000000],
|
75
|
+
[1.983000, 62.000000],
|
76
|
+
[5.067000, 76.000000],
|
77
|
+
[2.017000, 60.000000],
|
78
|
+
[4.567000, 78.000000],
|
79
|
+
[3.883000, 76.000000],
|
80
|
+
[3.600000, 83.000000],
|
81
|
+
[4.133000, 75.000000],
|
82
|
+
[4.333000, 82.000000],
|
83
|
+
[4.100000, 70.000000],
|
84
|
+
[2.633000, 65.000000],
|
85
|
+
[4.067000, 73.000000],
|
86
|
+
[4.933000, 88.000000],
|
87
|
+
[3.950000, 76.000000],
|
88
|
+
[4.517000, 80.000000],
|
89
|
+
[2.167000, 48.000000],
|
90
|
+
[4.000000, 86.000000],
|
91
|
+
[2.200000, 60.000000],
|
92
|
+
[4.333000, 90.000000],
|
93
|
+
[1.867000, 50.000000],
|
94
|
+
[4.817000, 78.000000],
|
95
|
+
[1.833000, 63.000000],
|
96
|
+
[4.300000, 72.000000],
|
97
|
+
[4.667000, 84.000000],
|
98
|
+
[3.750000, 75.000000],
|
99
|
+
[1.867000, 51.000000],
|
100
|
+
[4.900000, 82.000000],
|
101
|
+
[2.483000, 62.000000],
|
102
|
+
[4.367000, 88.000000],
|
103
|
+
[2.100000, 49.000000],
|
104
|
+
[4.500000, 83.000000],
|
105
|
+
[4.050000, 81.000000],
|
106
|
+
[1.867000, 47.000000],
|
107
|
+
[4.700000, 84.000000],
|
108
|
+
[1.783000, 52.000000],
|
109
|
+
[4.850000, 86.000000],
|
110
|
+
[3.683000, 81.000000],
|
111
|
+
[4.733000, 75.000000],
|
112
|
+
[2.300000, 59.000000],
|
113
|
+
[4.900000, 89.000000],
|
114
|
+
[4.417000, 79.000000],
|
115
|
+
[1.700000, 59.000000],
|
116
|
+
[4.633000, 81.000000],
|
117
|
+
[2.317000, 50.000000],
|
118
|
+
[4.600000, 85.000000],
|
119
|
+
[1.817000, 59.000000],
|
120
|
+
[4.417000, 87.000000],
|
121
|
+
[2.617000, 53.000000],
|
122
|
+
[4.067000, 69.000000],
|
123
|
+
[4.250000, 77.000000],
|
124
|
+
[1.967000, 56.000000],
|
125
|
+
[4.600000, 88.000000],
|
126
|
+
[3.767000, 81.000000],
|
127
|
+
[1.917000, 45.000000],
|
128
|
+
[4.500000, 82.000000],
|
129
|
+
[2.267000, 55.000000],
|
130
|
+
[4.650000, 90.000000],
|
131
|
+
[1.867000, 45.000000],
|
132
|
+
[4.167000, 83.000000],
|
133
|
+
[2.800000, 56.000000],
|
134
|
+
[4.333000, 89.000000],
|
135
|
+
[1.833000, 46.000000],
|
136
|
+
[4.383000, 82.000000],
|
137
|
+
[1.883000, 51.000000],
|
138
|
+
[4.933000, 86.000000],
|
139
|
+
[2.033000, 53.000000],
|
140
|
+
[3.733000, 79.000000],
|
141
|
+
[4.233000, 81.000000],
|
142
|
+
[2.233000, 60.000000],
|
143
|
+
[4.533000, 82.000000],
|
144
|
+
[4.817000, 77.000000],
|
145
|
+
[4.333000, 76.000000],
|
146
|
+
[1.983000, 59.000000],
|
147
|
+
[4.633000, 80.000000],
|
148
|
+
[2.017000, 49.000000],
|
149
|
+
[5.100000, 96.000000],
|
150
|
+
[1.800000, 53.000000],
|
151
|
+
[5.033000, 77.000000],
|
152
|
+
[4.000000, 77.000000],
|
153
|
+
[2.400000, 65.000000],
|
154
|
+
[4.600000, 81.000000],
|
155
|
+
[3.567000, 71.000000],
|
156
|
+
[4.000000, 70.000000],
|
157
|
+
[4.500000, 81.000000],
|
158
|
+
[4.083000, 93.000000],
|
159
|
+
[1.800000, 53.000000],
|
160
|
+
[3.967000, 89.000000],
|
161
|
+
[2.200000, 45.000000],
|
162
|
+
[4.150000, 86.000000],
|
163
|
+
[2.000000, 58.000000],
|
164
|
+
[3.833000, 78.000000],
|
165
|
+
[3.500000, 66.000000],
|
166
|
+
[4.583000, 76.000000],
|
167
|
+
[2.367000, 63.000000],
|
168
|
+
[5.000000, 88.000000],
|
169
|
+
[1.933000, 52.000000],
|
170
|
+
[4.617000, 93.000000],
|
171
|
+
[1.917000, 49.000000],
|
172
|
+
[2.083000, 57.000000],
|
173
|
+
[4.583000, 77.000000],
|
174
|
+
[3.333000, 68.000000],
|
175
|
+
[4.167000, 81.000000],
|
176
|
+
[4.333000, 81.000000],
|
177
|
+
[4.500000, 73.000000],
|
178
|
+
[2.417000, 50.000000],
|
179
|
+
[4.000000, 85.000000],
|
180
|
+
[4.167000, 74.000000],
|
181
|
+
[1.883000, 55.000000],
|
182
|
+
[4.583000, 77.000000],
|
183
|
+
[4.250000, 83.000000],
|
184
|
+
[3.767000, 83.000000],
|
185
|
+
[2.033000, 51.000000],
|
186
|
+
[4.433000, 78.000000],
|
187
|
+
[4.083000, 84.000000],
|
188
|
+
[1.833000, 46.000000],
|
189
|
+
[4.417000, 83.000000],
|
190
|
+
[2.183000, 55.000000],
|
191
|
+
[4.800000, 81.000000],
|
192
|
+
[1.833000, 57.000000],
|
193
|
+
[4.800000, 76.000000],
|
194
|
+
[4.100000, 84.000000],
|
195
|
+
[3.966000, 77.000000],
|
196
|
+
[4.233000, 81.000000],
|
197
|
+
[3.500000, 87.000000],
|
198
|
+
[4.366000, 77.000000],
|
199
|
+
[2.250000, 51.000000],
|
200
|
+
[4.667000, 78.000000],
|
201
|
+
[2.100000, 60.000000],
|
202
|
+
[4.350000, 82.000000],
|
203
|
+
[4.133000, 91.000000],
|
204
|
+
[1.867000, 53.000000],
|
205
|
+
[4.600000, 78.000000],
|
206
|
+
[1.783000, 46.000000],
|
207
|
+
[4.367000, 77.000000],
|
208
|
+
[3.850000, 84.000000],
|
209
|
+
[1.933000, 49.000000],
|
210
|
+
[4.500000, 83.000000],
|
211
|
+
[2.383000, 71.000000],
|
212
|
+
[4.700000, 80.000000],
|
213
|
+
[1.867000, 49.000000],
|
214
|
+
[3.833000, 75.000000],
|
215
|
+
[3.417000, 64.000000],
|
216
|
+
[4.233000, 76.000000],
|
217
|
+
[2.400000, 53.000000],
|
218
|
+
[4.800000, 94.000000],
|
219
|
+
[2.000000, 55.000000],
|
220
|
+
[4.150000, 76.000000],
|
221
|
+
[1.867000, 50.000000],
|
222
|
+
[4.267000, 82.000000],
|
223
|
+
[1.750000, 54.000000],
|
224
|
+
[4.483000, 75.000000],
|
225
|
+
[4.000000, 78.000000],
|
226
|
+
[4.117000, 79.000000],
|
227
|
+
[4.083000, 78.000000],
|
228
|
+
[4.267000, 78.000000],
|
229
|
+
[3.917000, 70.000000],
|
230
|
+
[4.550000, 79.000000],
|
231
|
+
[4.083000, 70.000000],
|
232
|
+
[2.417000, 54.000000],
|
233
|
+
[4.183000, 86.000000],
|
234
|
+
[2.217000, 50.000000],
|
235
|
+
[4.450000, 90.000000],
|
236
|
+
[1.883000, 54.000000],
|
237
|
+
[1.850000, 54.000000],
|
238
|
+
[4.283000, 77.000000],
|
239
|
+
[3.950000, 79.000000],
|
240
|
+
[2.333000, 64.000000],
|
241
|
+
[4.150000, 75.000000],
|
242
|
+
[2.350000, 47.000000],
|
243
|
+
[4.933000, 86.000000],
|
244
|
+
[2.900000, 63.000000],
|
245
|
+
[4.583000, 85.000000],
|
246
|
+
[3.833000, 82.000000],
|
247
|
+
[2.083000, 57.000000],
|
248
|
+
[4.367000, 82.000000],
|
249
|
+
[2.133000, 67.000000],
|
250
|
+
[4.350000, 74.000000],
|
251
|
+
[2.200000, 54.000000],
|
252
|
+
[4.450000, 83.000000],
|
253
|
+
[3.567000, 73.000000],
|
254
|
+
[4.500000, 73.000000],
|
255
|
+
[4.150000, 88.000000],
|
256
|
+
[3.817000, 80.000000],
|
257
|
+
[3.917000, 71.000000],
|
258
|
+
[4.450000, 83.000000],
|
259
|
+
[2.000000, 56.000000],
|
260
|
+
[4.283000, 79.000000],
|
261
|
+
[4.767000, 78.000000],
|
262
|
+
[4.533000, 84.000000],
|
263
|
+
[1.850000, 58.000000],
|
264
|
+
[4.250000, 83.000000],
|
265
|
+
[1.983000, 43.000000],
|
266
|
+
[2.250000, 60.000000],
|
267
|
+
[4.750000, 75.000000],
|
268
|
+
[4.117000, 81.000000],
|
269
|
+
[2.150000, 46.000000],
|
270
|
+
[4.417000, 90.000000],
|
271
|
+
[1.817000, 46.000000],
|
272
|
+
[4.467000, 74.000000]]
|
data/examples/k_means.rb
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
[[15.502247605699552],[10.031162361842734],[12.785893673235108],[9.101787584643649],[8.647216162595063],[-0.18602575596870674],[13.304426208844399],[9.691071183781588],[6.42067013175459],[11.410522422736252],[15.061843518069862],[7.892876730248111],[14.036467319023096],[6.594403929208391],[3.4827705992049784],[6.510911464377955],[1.2338132042668954],[11.274962028428515],[7.385139146369269],[11.840565857891843],[7.145437185273359],[9.5860931304683],[-1.1101193089497627],[6.166011479135468],[-1.0232417412298849],[4.517231764628045],[15.453434948054953],[8.924087576264307],[8.471811880085701],[5.566816799742032],[4.526121591525575],[7.087145103274265],[17.734835501954183],[6.774528498041885],[8.056725084356396],[8.992945694804154],[7.320003093978557],[6.154146419514867],[8.11953365993374],[1.605019852398205],[10.744777918330055],[-3.8150729128173193],[1.856341135400534],[9.37726386224961],[9.521590037302113],[-3.724567455687217],[9.436834483294769],[12.432290857672488],[15.764592737908913],[10.45691608811633],[10.335262467866157],[7.645888069314575],[8.662350038896388],[15.204632711371449],[-1.362131304963583],[8.673790237277027],[14.303132054259702],[9.407310384835348],[15.489471014310393],[11.784177605464693],[13.081321775851572],[0.12813568830203256],[9.454716226746015],[14.461871596975556],[10.59334927222542],[1.14826061938625],[12.313253819226755],[1.4848050716972914],[3.8430735080525724],[8.779307281571308],[13.03521984767956],[9.553188061865956],[0.9593970124980657],[4.5622810423605795],[10.104908182668678],[-2.7163689804225934],[2.7686890003356712],[6.714494861544314],[13.10234877440273],[11.52762307484217],[8.387534638580826],[7.259383208763349],[8.375832159980039],[-2.8626781725826937],[8.431021127905721],[8.629136498526792],[1.4591735611654637],[0.4657154506804408],[10.546625051757905],[14.253441435238162],[9.421198322953561],[12.07421405190815],[8.099434161749084],[-3.1050347782908974],[-1.5578393185663357],[3.593119213632388],[13.943739479258545],[1.8424980867139922],[8.885745797303457],[11.365570868405632],[9.220388707642815],[11.352743860422661],[0.246185155880314],[13.182837074477344],[8.637212485174542],[4.107418483903812],[9.048010450304112],[12.30201263717897],[12.776693211844393],[-1.2126916390721605],[3.9409592101827204],[-3.268898754189706],[3.296789824005917],[0.955980175167626],[1.3394605402972912],[9.4928068769355],[2.1317279463698777],[-0.2087322832067032],[11.2515087067311],[12.785013819155662],[9.418700028504125],[8.378057834354497],[3.3482056866827032],[9.392298240210362],[6.921995878116412],[16.908489763737787],[3.534245230202511],[-2.2365752310826243],[9.119842878360831],[11.297449188818385],[9.612580394444354],[2.371380157340184],[11.160765268939183],[5.603869929933659],[-0.26573363237181163],[14.276634206035144],[13.126602143830695],[15.149085946207833],[11.030701895515875],[7.891717858874601],[4.807939258683021],[8.68274742027678],[6.5655644555652755],[10.11676469149336],[7.269476521328406],[-1.2246736267114038],[0.061196655713479625],[9.015487057987318],[11.972733849002077],[2.494327090011312],[0.3410899276817611],[-2.7185611705972383],[12.89515846065358],[-0.2287557950171077],[13.063768157796964],[2.067665220590409],[12.28857755903164],[2.629145241294504],[-0.7999786706840172],[12.303970045348843],[5.885767241791362],[0.9954931035147419],[0.5674631008972914],[9.675813844097476],[7.57772903364708],[0.9352375647926452],[10.851741546186366],[9.056107988640361],[11.706366635646681],[-3.1056394772569016],[10.49702296210099],[12.386215594617864],[1.0825285279734609],[8.156288458928259],[7.237971175255197],[-0.39319950015284244],[6.7951689976248355],[9.316439057266157],[-1.1862581543868318],[9.8677803172003],[11.567807468288098],[11.712366114761261],[2.8021279792383456],[1.0864390998340236],[10.672799051720531],[12.528497591176869],[11.573219485070453],[11.513867907501144],[8.977297976173382],[0.33309581008515765],[5.254123959131286],[8.457045337591826],[11.221232127880537],[13.057822540210566],[15.870383775463846],[8.653900561775957],[0.2090038838574081],[10.440768172806697],[9.594376008824582],[14.682891446600262],[8.684235973505213],[8.665357977185492],[4.609559789910099],[12.413890859308076],[1.2085488729490927],[12.284558050201383],[0.44880847055899786],[10.461721216078697],[9.275868247708484],[7.6473573978426455],[-3.8613883690119604],[9.927687290530022],[8.6319531488332],[10.546173095121517],[13.979166467914116],[12.30404888652566],[-3.2221373433549485],[10.2719843681249],[12.420493930956022],[0.44313249008706557],[16.29855687012691],[11.536811134446914],[-1.0237670201328983],[0.35637044002024343],[0.504602671744997],[2.6434730691169515],[12.06090401906364],[3.805746224622683],[0.5463643731112694],[10.515423629096826],[2.2234689632136106],[8.142833933578867],[-3.847638123628101],[-2.404379833974876],[9.112330418143985],[13.950787549141399],[10.555136121171866],[5.508604726360282],[10.793864974466372],[-2.9780215034251607],[4.387130979934475],[-0.13496597118199066],[16.437705847171294],[9.071711706499118],[13.153838362459492],[2.0918333259933632],[4.577344474962946],[8.009387982113106],[11.813062417466991],[-0.995094456017056],[7.68977315287397],[6.7655341877021975],[11.38875938863969],[16.17851567075197],[9.924697399796067],[11.73220350062593],[7.490976868415431],[12.264270948635499],[7.747700367450154],[10.07712430140692],[10.291131999929663],[12.349501507500499],[12.853996969527525],[7.860460596888769],[8.596333857844167],[14.105539278113094],[15.791341823719318],[7.884837592006897],[9.43834789749129],[9.566411107753797],[6.966210997658388],[10.237691960544549],[12.644170129605351],[10.229718686681089],[7.383972182951306],[12.296526853133999],[8.200169279516654],[0.8184214582033573],[13.7996120002719],[8.329736792830808],[2.192444856463629],[0.7515006759937947],[11.771915306561114],[-2.2843553799862306],[-1.756184177427617],[13.242810304305195],[11.03632887255782],[-3.666908277837644],[9.069921648824026],[9.71612460013958],[-0.3945217669154956],[6.743623116013861],[2.2987335899762376],[7.625414880838391],[-0.9397412637674939],[7.954814312706203],[6.070314098336373],[11.704466227635201],[1.4766980650579413],[2.2168151294945773],[7.5375286583817065],[16.57328558530112],[11.799675973596432],[10.224269413021169],[9.923952880820396],[7.942254044414861],[10.626440666839484],[14.359518603341147],[6.9696795151871935],[12.507930842967156],[-0.40305246278086565],[10.570663962559587],[17.315445354559227],[8.123521076638607],[9.93215026394885],[12.658251385187352],[3.1026958046024693],[10.861016997313305],[12.069627387079938],[11.76237676199894],[11.382856638305942],[-2.348473015802888],[6.179039669778126],[1.8989130215439645],[6.311756661809932],[11.0821979124593],[11.729466513147036],[12.41327720797426],[9.191663296706482],[1.658409827583641],[14.182772920455829],[0.5736792399317429],[-2.088443843010152],[5.528659693064155],[13.594817468390527],[-3.7057149510589857],[10.030589665509797],[-0.14396643361136202],[8.390579203308498],[13.407028638159662],[-1.547296212112352],[9.216511032616935],[11.719957003072588],[2.0698927242384904],[11.679975361382933],[10.183640971764437],[9.381256394022916],[8.294859663651426],[12.63477024594534],[4.7912905460124255],[1.91908634470975],[0.050252706631403965],[10.591074101026125],[5.403684627151474],[8.05681042491621],[0.7055476904164113],[9.581499878072126],[15.850774069743641],[9.721412676023311],[1.5889715524940167],[-2.0134286508879478],[7.426700049446142],[-1.4705551807780604],[0.10088791315321076],[-2.62923890377994],[8.085396042835088],[11.130784966219872],[-1.5320077306463644],[10.710039474329418],[2.181332519738917],[11.937636798469489],[7.188908608106005],[9.345707295971902],[-2.0407961552057925],[16.054755598913093],[-0.9712890285923469],[-1.5802608489197045],[9.4099325997907],[5.231837206345258],[12.596585236598518],[2.179012130124208],[5.100981099767372],[3.944062315132305],[12.735496140408795],[12.979763965643397],[8.436320043842857],[2.795718769082819],[7.590530353721933],[11.21419949514024],[7.812131212003473],[10.604196826782333],[1.340897198889198],[2.733992796844685],[10.886085218984723],[11.535242220878125],[4.971850988154721],[13.518644505790189],[9.017478875338604],[9.216053709641875],[1.7605808358657622],[0.15613722776168257],[-3.5867107207778424],[8.797926778908332],[10.949188524689433],[0.09157568332540343],[10.27981629865942],[7.937433746588284],[0.27099126512957905],[-1.469112242646236],[9.356526275052753],[10.472635216889525],[7.81877054850128],[-4.44987154642714],[-1.2361777578038993],[11.429183549268433],[-0.08898409073707754],[10.995640852446694],[-0.5288530935205223],[0.7243412299301414],[6.249068686029716],[6.0034253658717125],[1.1239086848538358],[7.1998706759317805],[-1.6547807856206616],[12.219660918009465],[7.738300910859522],[12.815250194725714],[8.946489960475075],[-1.4062946883195333],[11.409940657889473],[6.1318663049810365],[15.978565403413208],[11.065381703870761],[-0.3952702437145058],[4.372777145561995],[14.03637656044724],[-0.895131913959072],[15.835277032238048],[0.777475447360546],[8.226870175342572],[5.201531404753933],[12.254529849570584],[1.1263280159610882],[5.46235324824203],[-4.413913909220167],[5.685095264573909],[10.74830778025776],[12.170126570479916],[-1.9977018177972077],[-0.3161310758930191],[10.519529341952026],[13.03335694681526],[10.191283346622507],[3.5390508142700687],[15.81664860341442],[14.238438288209316],[1.0512724226529755],[15.185551599993442],[6.787423164021456],[10.065131691210965],[-0.021051514774684116],[12.367038286085073],[-2.048307119788346],[6.095082565129533],[-2.0784816436205307],[-0.811286200879647],[8.13762914089264],[2.270626681845356],[8.646665368744696],[-1.806605437014543],[12.916127410761808],[7.221661382446129],[9.473303837689082],[8.218928172934403],[12.96448644401525],[12.456365140583507],[1.1883420324699512],[12.642910923987763],[0.8245151907737727],[1.8971073473734166],[8.348883833345692],[11.00870993281469],[5.165734073406337],[5.208012852701222],[-1.212177622103903],[-1.5394709710819319],[0.8963039171629066],[10.911456501845603],[11.697980198982727],[13.327775867333337],[13.72719580949661],[7.835791977577916],[13.895217811649186],[1.722993213283189],[9.386120841482011],[-2.1740018986815888],[9.955680711320975],[8.984579243361235],[9.890800732256235],[4.2131377905094665],[8.94929917502587],[2.1401873466195167],[10.78859192574119],[-0.5833714242224266],[1.6390489306476577],[8.010863327090256],[12.94204325753381],[3.5977256471138186],[12.597880031017043],[10.189500529743178],[9.928519872727202],[8.907913427635767],[9.238833669214115],[9.002848703200982],[9.953238073901993],[9.278961472988577],[5.9724237725367955],[14.394994210014382],[8.971895366839636],[9.887407634210325],[1.779396534760567],[4.260469344211703],[6.100106463014408],[9.131299696775384],[6.454990286556848],[9.897158805490399],[7.356475004781496],[11.91536147180269],[7.550148404517969],[12.473278246278628],[9.787846975114844],[10.588163880846865],[9.802374728598762],[8.29971880703361],[15.135612831802371],[-0.966562465625433],[7.517189862556036],[-1.4770502733865034],[9.136118114268346],[-1.2103940839026877],[16.990319786340375],[6.8265137582338555],[10.941204990123673],[0.10684157955724193],[2.2005905214276913],[8.121344534753893],[10.530173454617678],[1.3965030810116659],[14.948109079850227],[-1.7652891278432585],[1.9898109349598094],[7.8128072041575],[10.337707324809193],[6.568080948430055],[0.7246305128983277],[11.365215193111561],[5.247262971578076],[10.50770874116011],[0.759004128697865],[0.8429299575132868],[9.869569623241823],[2.195745359022679],[15.124548927221253],[4.6529052072953645],[-0.6899233734952687],[0.9543911097196206],[-0.07949165291552161],[15.087459407091359],[-0.9887882680334682],[-0.363668576467377],[1.4733769508280663],[-0.8623281644380896],[-1.2236254616961673],[9.621710964228297],[8.309570855506161],[11.703481543603848],[-2.2905233081503567],[0.1959128322407891],[0.25768090754266143],[14.030176033355223],[-2.24657826437145],[7.597146897927336],[9.456104935755516],[3.505393339532704],[-2.7532482175667647],[11.549018349827021],[10.786166978409554],[-0.3699488427237593],[0.6761949315328198],[8.481562286496187],[8.333886114056876],[8.617657713909287],[14.330396502925922],[5.76091127857288],[7.374911816726527],[18.147291065409103],[9.042920954738575],[8.947163615459115],[-1.3752367691217444],[9.928013278711289],[11.721337324865743],[9.476993669053837],[10.470062203906467],[12.532121711447953],[2.1184430592909558],[14.373512371323885],[13.954160028070916],[10.6534353674781],[11.815957633962729],[-1.8661399507507657],[11.274001133527182],[12.347049358192159],[-0.7448364365947734],[5.867432651768153],[2.4840855262281223],[8.173221900574575],[9.62777584864659],[9.515803116312371],[-3.5324510578352153],[8.219105293938311],[-1.7478013125543708],[6.937271951484538],[7.2044658840478935],[11.395382263085857],[1.5933903310021351],[1.915042784168672],[0.5198839163458],[19.20668937731098],[11.195369565025388],[9.128450542601234],[10.190899490456621],[9.066060068079064],[9.145252737399803],[8.529033306742804],[14.288689058936136],[5.223923974279991],[17.235939911164035],[5.701872357076631],[8.11427520421839],[15.293061421392252],[9.78963061414035],[13.492101611686149],[10.345215813687178],[-2.4170264107008834],[14.685085172077807],[13.447530758928904],[13.6159111319957],[11.71961184907073],[1.6208514273781338],[5.6845913174227345],[6.06689103839725],[9.537675094575548],[14.283061684062343],[11.847229035677454],[9.748460165202717],[12.08767705230039],[1.6956503579118893],[10.320754761031798],[12.328381379547135],[-3.3198536750494863],[-0.5482734804352287],[4.010243910776242],[8.0201062773544],[7.1281845698434445],[13.37958319049942],[-0.6721640468049742],[7.875563550071588],[4.275598966685068],[11.219087718335185],[-3.712992219439484],[16.44902645493505],[-0.6506926093290356],[0.3633250934453858],[14.952435270059526],[9.958289707155057],[10.518222246138638],[11.043605796286753],[8.827898808100226],[8.290467973868838],[1.412499416831038],[4.743984069390151],[2.467649632044351],[13.50168017979888],[12.171619731784528],[6.838880392383106],[3.5136771511065423],[-2.2081681733583602],[-1.0595626807050285],[13.794393620643529],[4.148910157967242],[2.254048985884531],[11.236436406373667],[11.052866701956653],[9.982622659305164],[11.179716290828445],[13.628978985358486],[11.200247733634981],[7.3259001195986295],[10.762649214437516],[-0.5142096433242179],[0.2455786723866265],[14.155579171958411],[12.0517530302819],[8.980899582439058],[-0.8956454159862468],[9.476228433494827],[-0.024571305539980444],[0.19195698536185243],[2.4504941248338805],[6.420574853838474],[0.26482762548182204],[9.539366612551257],[3.632109301188442],[7.75570081216071],[12.809046786046373],[14.895613824355253],[5.991873055112181],[9.01152128428593],[0.2180522684949],[2.0706599477345238],[10.038211762826894],[2.0646970174688555],[12.45571302197418],[11.502259326586964],[8.781515104313842],[10.883046834210779],[0.546986172389343],[13.426482630404735],[9.685971514604304],[5.1959221080265],[12.3813604757959],[13.543459978333711],[13.840262603153004],[14.162437541888494],[9.905212450157551],[10.633279239415165],[8.02661163038807],[10.106014573953814],[10.549762156941974],[6.230245975470977],[9.213558288558927],[9.244322044647749],[0.5928137763696705],[1.1852006404793392],[11.895915440894148],[15.538445890085322],[-0.07750443443606975],[-0.6587351084651677],[7.965292054292426],[4.204958981186933],[13.917783966696192],[15.566790222237264],[13.670468369928539],[8.251586876085923],[3.1285539367023603],[-0.8710641929211371],[12.001819567832527],[8.415925845235341],[11.728549187942697],[12.465834674331612],[-2.5429055837894787],[11.871116870194665],[1.5646252307254114],[7.750869754552471],[12.738228969596655],[1.6941368243812867],[9.169545346592518],[9.641297333028287],[14.497187206418392],[4.66474191019107],[6.597312046043578],[-1.8513912308752094],[11.499016936757476],[12.380527293992145],[1.2162249011532633],[5.474535765512798],[-0.22752805843098492],[2.4258994908528684],[7.22731295532195],[12.48055970646311],[11.264067295539586],[8.87277401558749],[14.789436054448803],[10.534376913904563],[10.543367762062132],[14.03717190590259],[15.9043606984584],[9.739123944001593],[5.948917676063814],[12.42165752456597],[3.93807933083818],[9.271791495932778],[1.5753628967928195],[10.142625549578723],[0.8087577441763097],[-2.0309810521037712],[10.589010948406122],[4.898505033389448],[3.911550389317146],[8.310687037332034],[5.559148019329627],[5.626544086747856],[-1.8925894714162004],[14.309966385694931],[11.565599226033076],[-1.7478333361640095],[8.623956522235229],[1.2014069244044316],[10.464450758652236],[11.668919397071317],[-2.0960121047699722],[-1.3890019832675595],[8.750279434073443],[14.083921890021672],[2.0224791846666146],[8.689442366267873],[-0.21469236257760396],[11.358613927118466],[10.128813755120802],[-1.9952934660945896],[-2.605266637974046],[9.703862799010892],[10.26280659210915],[-0.2806808584057161],[13.77389147328887],[13.385869556775644],[6.712661489467903],[6.89621411523284],[12.926434358486969],[0.08894655632628302],[-1.018702833572004],[8.147939599209222],[5.877443955649673],[12.49624487599963],[2.0828292696183537],[6.588475167859203],[4.982746107212007],[1.971393504011664],[11.281935858514364],[12.250222867757103],[15.92015990743926],[9.740636635330931],[8.406338823165918],[9.295474793579185],[5.437126113589852],[-2.875515878186959],[6.660803026789807],[1.8694953642865653],[7.182911012163147],[9.528514062468503],[13.948737970938552],[11.923377041790957],[9.90499681908829],[1.33127628404691],[13.384175678691959],[10.94115667482623],[-0.9360994854802568],[12.984351703527578],[7.714902352326556],[11.503142407093105],[7.721445331637765],[-3.2292296232381723],[6.502661960384979],[12.069333143611855],[0.9760605749082268],[9.815920409259324],[9.741126874888307],[12.014966801239868],[1.1071299958533045],[11.030772598329355],[7.887418302817871],[-0.16377989382718205],[-2.820836720988677],[10.512254794832273],[-2.5323651843342336],[11.972926917176531],[8.115442291151851],[10.378947287151888],[5.750119246128844],[1.0669351505106683],[-1.0755498240608472],[10.02522470815749],[6.989802149270142],[9.483778488844619],[9.429737901855237],[8.433397226001226],[8.667258500109439],[12.742851583277329],[-2.942570985261663],[1.8691870918872437],[7.804778306252633],[-0.8722023746684421],[9.677666535567862],[9.390509813229096],[10.638570537243524],[9.550156351457426],[13.371897027433487],[-2.9811723732923903],[2.025792885357035],[4.987954016912232],[-2.1780023163360505],[-2.025324695765787],[-2.5588722094445484],[-0.3356624514885333],[9.85036607021067],[7.384072910512523],[13.278115410768915],[10.383362916167526],[2.0349375800245104],[11.988118089541517],[2.3973449630732047],[-0.6332114953784734],[11.292130825205271],[0.6391966651251385],[-3.5960802863799923],[3.5966510597496866],[13.251991489455785],[12.065683251009828],[-1.2331056091930745],[-3.5365224002331566],[8.216771000760426],[-0.8418401364414764],[11.871614912942485],[9.944699210976495],[12.275637337066572],[6.959826852645902],[10.534974858787324],[7.2142692470872225],[12.22078931844262],[11.384659147151437],[14.16940134920316],[12.030509452977611],[10.186826378143115],[9.704009684609293],[5.761341667021915],[10.175306993016891],[9.880798879744496],[8.50450210284044],[0.04916291139224314],[-1.6904525249140607],[14.223330343530849],[12.058688794410905],[8.950385968969272],[8.35676382245941],[4.307416257592619],[9.352323600244981],[8.705187636632376],[-1.4087353322231884],[4.6901489670330605],[8.212577214365188],[11.887613062399002],[10.59518256246398],[-1.168141932732482],[7.096573676112399],[2.7604194655658976],[9.124303250342246],[12.386437015171193],[12.811082524142401],[8.193955304622454],[9.084413537221801],[13.278005920720972],[-0.09926210842197081],[5.16615021620256],[12.590795166669738],[10.640359396457491],[11.917701548714833],[7.930314343216054],[-1.3995734643269309],[9.656551902401244],[12.273502335178954],[5.680973062888465],[-3.745589525642805],[8.157975255659595],[1.8491977796015737],[11.417329946627436],[13.203833023276324],[10.917415043751337],[10.483920326306768],[6.589350914044032],[-3.0910037235221854],[12.048557885465152],[19.76966315506804],[13.399272691188349],[5.794717587289478],[10.873413036995343],[-0.11962028562985301],[-2.773023040242623],[10.907371318317992],[7.6535777123164355],[4.322701649430708],[8.479512697765625],[3.1542141810234994],[6.4963805236451675],[5.322503490177721],[9.50730475309078],[9.546758225814788],[12.578592122421819],[11.247196713885662],[7.315000408811874],[7.478680462728828]]
|
data/lib/t_learn/k_means.rb
CHANGED
@@ -1,71 +1,114 @@
|
|
1
1
|
#!/usr/bin/ruby
|
2
2
|
# -*- encoding: utf-8 -*-
|
3
3
|
|
4
|
-
require "yaml"
|
5
4
|
|
6
5
|
module TLearn
|
7
6
|
class K_Means
|
8
|
-
attr_accessor
|
9
|
-
|
10
|
-
def initialize
|
11
|
-
end
|
12
|
-
|
13
|
-
#
|
14
|
-
# === make datas for test
|
15
|
-
#
|
16
|
-
def make_data
|
7
|
+
attr_accessor :data_list, :k, :c_list
|
17
8
|
|
9
|
+
def init(data_list, k=2)
|
10
|
+
@data_list = data_list
|
11
|
+
sliced_data_list = @data_list.each_slice(k).to_a
|
12
|
+
@dim = data_list[0].size
|
13
|
+
@k = k
|
14
|
+
@cluster_list = @k.times.map {|n| Cluster.new(n, nil,sliced_data_list[n] , @dim)}
|
18
15
|
end
|
19
16
|
|
20
|
-
def run
|
21
|
-
|
22
|
-
end
|
23
17
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
18
|
+
def fit(data_list, k)
|
19
|
+
init(data_list, k)
|
20
|
+
history = []
|
21
|
+
loop {
|
22
|
+
@cluster_list.each{|c| c.reset_v_list()}
|
23
|
+
@data_list.each {|d|
|
24
|
+
min_dist = 100000
|
25
|
+
min_cluster_id = -1
|
26
|
+
@cluster_list.each {|c|
|
27
|
+
dist = calc_dist(d, c)
|
28
|
+
if dist < min_dist
|
29
|
+
min_cluster_id = c.id
|
30
|
+
min_dist = dist
|
31
|
+
end
|
32
|
+
}
|
33
|
+
@cluster_list[min_cluster_id].add_v(d)
|
34
|
+
}
|
28
35
|
|
29
|
-
|
30
|
-
|
31
|
-
|
36
|
+
history.push(format_for_log())
|
37
|
+
@cluster_list.each{|c| c.calc_center()}
|
38
|
+
break if !change_clusters_center?
|
39
|
+
}
|
32
40
|
|
33
|
-
|
34
|
-
|
41
|
+
return {:result => format_for_log(), :history => history}
|
42
|
+
end
|
35
43
|
|
36
|
-
def
|
37
|
-
|
44
|
+
def format_for_log()
|
45
|
+
result = @cluster_list.map {|c| c.format_hash()}
|
46
|
+
end
|
38
47
|
|
39
|
-
def
|
48
|
+
def calc_dist(v, cluster)
|
49
|
+
dist_sum = 0.0
|
50
|
+
v.each_with_index { |v_x, i|
|
51
|
+
dist_sum += (cluster.vec[i] - v_x).abs
|
52
|
+
}
|
53
|
+
return dist_sum/v.size
|
40
54
|
end
|
41
|
-
|
42
|
-
#
|
43
|
-
# === 混合正規分布を生成する
|
44
|
-
#
|
45
|
-
def gaussian_mix()
|
46
|
-
end
|
47
55
|
|
56
|
+
def change_clusters_center?()
|
57
|
+
@cluster_list.each {|c|
|
58
|
+
return true if(c.change_center?)
|
59
|
+
}
|
60
|
+
return false
|
61
|
+
end
|
48
62
|
|
49
63
|
#
|
50
|
-
#
|
64
|
+
# cluster
|
65
|
+
# cluster has id, vec, and v_list
|
51
66
|
#
|
52
|
-
|
53
|
-
|
54
|
-
f2 = Math.exp(-((x-mu)^2 / 2*sigma^2))
|
55
|
-
return f1 * f2
|
56
|
-
end
|
67
|
+
class Cluster
|
68
|
+
attr_accessor :id, :vec, :v_list, :last_vec
|
57
69
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
a, b = rand(), rand() ;
|
66
|
-
return (Math.sqrt(-2*Math.log(rand()))*Math.sin(2*Math::PI*rand()) * sigma) + mu
|
67
|
-
end
|
70
|
+
def initialize(id, vec=nil, v_list=nil, dim=1)
|
71
|
+
@id = id
|
72
|
+
@v_list= v_list
|
73
|
+
@vec = dim.times.map{0.0} if vec == nil
|
74
|
+
@dim = dim
|
75
|
+
calc_center()
|
76
|
+
end
|
68
77
|
|
78
|
+
def calc_center()
|
79
|
+
@last_vec = Marshal.load(Marshal.dump(@vec))
|
80
|
+
vec_sum = Array.new
|
81
|
+
@v_list.each { |v|
|
82
|
+
v.each_with_index { |v_x, i|
|
83
|
+
vec_sum[i] ||= 0.0
|
84
|
+
vec_sum[i] += v_x
|
85
|
+
}
|
86
|
+
}
|
87
|
+
vec_sum.each_with_index { |new_vec, i| @vec[i] = new_vec/@v_list.size.to_f }
|
88
|
+
end
|
69
89
|
|
90
|
+
def add_v(v)
|
91
|
+
@v_list.push(v)
|
92
|
+
end
|
93
|
+
|
94
|
+
def reset_v_list()
|
95
|
+
@v_list = []
|
96
|
+
end
|
97
|
+
|
98
|
+
def change_center?
|
99
|
+
@dim.times { |i|
|
100
|
+
return true if @vec[i] != @last_vec[i]
|
101
|
+
}
|
102
|
+
return false
|
103
|
+
end
|
104
|
+
|
105
|
+
def format_hash()
|
106
|
+
cluster_hash = {}
|
107
|
+
cluster_hash[:id] = @id
|
108
|
+
cluster_hash[:vec] = @vec
|
109
|
+
cluster_hash[:v_list] = @v_list
|
110
|
+
return cluster_hash
|
111
|
+
end
|
112
|
+
end
|
70
113
|
end
|
71
114
|
end
|
data/lib/t_learn/version.rb
CHANGED
data/lib/t_learn.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: t_learn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.1.
|
4
|
+
version: 0.1.1.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tcom242242
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-06-
|
11
|
+
date: 2017-06-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -69,6 +69,10 @@ files:
|
|
69
69
|
- Rakefile
|
70
70
|
- bin/console
|
71
71
|
- bin/setup
|
72
|
+
- examples/em_gaussian.rb
|
73
|
+
- examples/faithful.json
|
74
|
+
- examples/k_means.rb
|
75
|
+
- examples/sample_1dim.json
|
72
76
|
- lib/t_learn.rb
|
73
77
|
- lib/t_learn/em.rb
|
74
78
|
- lib/t_learn/feedforward_neural_network.rb
|