t_learn 0.1.1.4 → 0.1.1.5
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/lib/t_learn/em.rb +37 -7
- data/lib/t_learn/version.rb +1 -1
- metadata +2 -3
- data/lib/t_learn/.em.rb.swp +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8a5ec34f34ed37b9d565989b377f3d73def58395
|
4
|
+
data.tar.gz: 96fb03c78080151b6c3dd171cfbdda4218a3c916
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 110a637a57bb8ecbe136c5b674fdfe77eb9faf4491373f9afc2c66a8d19ef976da93f3acb1c18527813dfeb12fab701a7ea6af35194eb9500211a17406c3f08a
|
7
|
+
data.tar.gz: 0d8ff3858f5e65c3f20f8e54f88a3d4b3bc4a69579212fc1d76f37a00cdde4511861a69c952635dc59aa4e0bbac4f1ae6c3452e5223416b7189a6d608a6ab990
|
data/lib/t_learn/em.rb
CHANGED
@@ -14,27 +14,36 @@ module TLearn
|
|
14
14
|
@k_num = k_num # ガウス分布の数
|
15
15
|
@data_list = data_list
|
16
16
|
@dim = @data_list[0].size
|
17
|
-
@data_list = scale(@data_list)
|
17
|
+
# @data_list = scale(@data_list)
|
18
|
+
data_ave_std =calc_first_ave_std(@data_list)
|
18
19
|
@real_data_list = Marshal.load(Marshal.dump(@data_list))
|
19
|
-
@mu_list = Array.new(@k_num).map{
|
20
|
-
@conv_list = Array.new(@k_num).map{ini_conv()}
|
20
|
+
@mu_list = Array.new(@k_num).map{ini_ave(data_ave_std[:ave_list])}
|
21
|
+
@conv_list = Array.new(@k_num).map{ini_conv(data_ave_std[:std_list])}
|
21
22
|
@pi_list = @k_num.times.map{rand()}
|
22
23
|
@gamma = Array.new(@data_list.size).map{Array.new(@k_num, 0)}
|
23
24
|
end
|
24
25
|
|
25
|
-
def
|
26
|
+
def ini_ave(ave_list)
|
27
|
+
array = []
|
28
|
+
@dim.times {|i|
|
29
|
+
array.push(ave_list[i]*rand())
|
30
|
+
}
|
31
|
+
return array
|
32
|
+
end
|
33
|
+
|
34
|
+
def ini_conv(std_list)
|
26
35
|
conv = []
|
27
36
|
@dim.times {|i|
|
28
|
-
conv.push(make_array(i))
|
37
|
+
conv.push(make_array(i, std_list[i]))
|
29
38
|
}
|
30
39
|
return conv
|
31
40
|
end
|
32
41
|
|
33
|
-
def make_array(i)
|
42
|
+
def make_array(i, std)
|
34
43
|
array = []
|
35
44
|
@dim.times {|x|
|
36
45
|
if i == x
|
37
|
-
array.push(
|
46
|
+
array.push(std**2)
|
38
47
|
else
|
39
48
|
array.push(0.0)
|
40
49
|
end
|
@@ -188,6 +197,27 @@ module TLearn
|
|
188
197
|
return (f1 * f2)
|
189
198
|
end
|
190
199
|
|
200
|
+
def calc_first_ave_std(x)
|
201
|
+
sum_each_vec = []
|
202
|
+
ave_list = []
|
203
|
+
std_list = []
|
204
|
+
x.each{|vec|
|
205
|
+
vec.each_with_index{|data, i|
|
206
|
+
sum_each_vec[i] = (sum_each_vec[i] == nil) ? data : sum_each_vec[i]+data
|
207
|
+
}
|
208
|
+
}
|
209
|
+
x[0].size.times{|i| ave_list.push(sum_each_vec[i]/x.size)}
|
210
|
+
|
211
|
+
sum_each_vec = []
|
212
|
+
x.each{|vec|
|
213
|
+
vec.each_with_index{|data, i|
|
214
|
+
sum_each_vec[i] = (sum_each_vec[i] == nil) ? (ave_list[i]-data)**2 : (sum_each_vec[i]+(ave_list[i]-data)**2)
|
215
|
+
}
|
216
|
+
}
|
217
|
+
x[0].size.times{|i| std_list.push(Math.sqrt(sum_each_vec[i]/x.size))}
|
218
|
+
|
219
|
+
return {:ave_list => ave_list, :std_list => std_list}
|
220
|
+
end
|
191
221
|
|
192
222
|
def scale(x)
|
193
223
|
if x[0].instance_of?(Array) # check whether x's factor is 1dim or over 2dim
|
data/lib/t_learn/version.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.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tcom242242
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-06-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -71,7 +71,6 @@ files:
|
|
71
71
|
- bin/console
|
72
72
|
- bin/setup
|
73
73
|
- lib/t_learn.rb
|
74
|
-
- lib/t_learn/.em.rb.swp
|
75
74
|
- lib/t_learn/em.rb
|
76
75
|
- lib/t_learn/feedforward_neural_network.rb
|
77
76
|
- lib/t_learn/hop_field_net.rb
|
data/lib/t_learn/.em.rb.swp
DELETED
Binary file
|