t_learn 0.1.1.7 → 0.1.1.8
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/README.md +1 -20
- data/examples/fnn.rb +28 -0
- data/examples/hnn.rb +36 -0
- data/examples/k_means.rb +2 -1
- data/examples/sample_2dim.json +1 -0
- data/lib/t_learn/feedforward_neural_network.rb +1 -1
- data/lib/t_learn/hop_field_net.rb +1 -0
- data/lib/t_learn/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a2d674d1541bc01c00c01f8fff120ae43f483993
|
4
|
+
data.tar.gz: 60337b00ae171accad05b8ed6e1b945d87f6b07a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d3cfe9906b72d6eedc16cbde263925ec5053fcb26fd65c978d66973a3f37657c202283ebf4751ccef7910bd5559ad9743f84b444f7ed9243baaf4cda8b33da58
|
7
|
+
data.tar.gz: 8bcaa8772f48a822e6e40cc8ef64f00d92c2e6fe0d9123aa8f87a3e253b35729f73b49951eeffe15b59be7e83231b97924e4ba6f046f44d35625dd198ce47947
|
data/README.md
CHANGED
@@ -27,7 +27,7 @@ respect for keras.
|
|
27
27
|
|
28
28
|
require "t_learn"
|
29
29
|
|
30
|
-
model = TLearn::
|
30
|
+
model = TLearn::FNN.new(learning_rate=0.1)
|
31
31
|
|
32
32
|
model.add_layer(node_num=2)
|
33
33
|
model.add_layer(node_num=3)
|
@@ -44,23 +44,6 @@ err_rate = model.evaluate(x_test, y_test)
|
|
44
44
|
|
45
45
|
puts "err rate: #{err_rate}%"
|
46
46
|
|
47
|
-
# p x_test[0]
|
48
|
-
# model.propagation(x_text[0])
|
49
|
-
# puts model.get_output_layer[1].w
|
50
|
-
|
51
|
-
```
|
52
|
-
|
53
|
-
### result
|
54
|
-
....
|
55
|
-
|
56
|
-
```
|
57
|
-
|
58
|
-
x [0.0, 0.0], y [0.0] , output [0.03286460161620565]
|
59
|
-
x [0.0, 1.0], y [1.0] , output [0.9733866321804969]
|
60
|
-
x [1.0, 0.0], y [1.0] , output [0.9731963536942299]
|
61
|
-
x [1.0, 1.0], y [0.0] , output [0.014481150692655216]
|
62
|
-
err rate: 2.5190691608533524%
|
63
|
-
|
64
47
|
```
|
65
48
|
|
66
49
|
|
@@ -74,10 +57,8 @@ data = [1.0, 1.0, -1.0, -1.0, 1.0] # teacher data
|
|
74
57
|
hop_field_net = TLearn::HopFieldNet.new(0.0, data)
|
75
58
|
hop_field_net.memorize
|
76
59
|
noisedData = TLearn.add_noise_data(data, 0.0) # make test data
|
77
|
-
puts "======[before]======"
|
78
60
|
puts "#{TLearn.evaluate(data, noisedData)}%"
|
79
61
|
hop_field_net.remember(noisedData)
|
80
|
-
puts "======[after]======"
|
81
62
|
puts "#{ TLearn.evaluate(data,hop_field_net.nodes) }%"
|
82
63
|
|
83
64
|
```
|
data/examples/fnn.rb
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
# -*- encoding: utf-8 -*-
|
3
|
+
|
4
|
+
require "t_learn"
|
5
|
+
|
6
|
+
model = TLearn::FNN.new(learning_rate=0.1)
|
7
|
+
|
8
|
+
model.add_layer(node_num=2)
|
9
|
+
model.add_layer(node_num=3)
|
10
|
+
model.add_layer(node_num=1)
|
11
|
+
|
12
|
+
x_train = [[0.0, 0.0],[0.0, 1.0], [1.0, 0.0], [1.0, 1.0]]
|
13
|
+
y_train = [[ 0.0 ], [ 1.0 ],[ 1.0 ],[ 0.0 ]]
|
14
|
+
model.fit(x_train, y_train, epoch=50000)
|
15
|
+
|
16
|
+
x_test = x_train
|
17
|
+
y_test = y_train
|
18
|
+
|
19
|
+
err_rate = model.evaluate(x_test, y_test)
|
20
|
+
|
21
|
+
puts "err rate: #{err_rate}%"
|
22
|
+
|
23
|
+
# p x_test[0]
|
24
|
+
# model.propagation(x_text[0])
|
25
|
+
# puts model.get_output_layer[1].w
|
26
|
+
|
27
|
+
|
28
|
+
|
data/examples/hnn.rb
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
# -*- encoding: utf-8 -*-
|
3
|
+
|
4
|
+
$LOAD_PATH.push(File::dirname($0)) ;
|
5
|
+
require "pry"
|
6
|
+
require "yaml"
|
7
|
+
require 'rubyOkn/BasicTool'
|
8
|
+
require 'rubyOkn/StringTool'
|
9
|
+
|
10
|
+
include BasicTool
|
11
|
+
include StringTool;
|
12
|
+
|
13
|
+
#
|
14
|
+
# ==
|
15
|
+
#
|
16
|
+
class
|
17
|
+
# attr_accessor :test #書き込み、参照可能
|
18
|
+
# attr_writer :test #書き込み可能
|
19
|
+
# attr_reader :test #参照可能
|
20
|
+
def initialize()
|
21
|
+
end
|
22
|
+
|
23
|
+
def main()
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
#
|
29
|
+
# 実行用
|
30
|
+
#
|
31
|
+
if($0 == __FILE__) then
|
32
|
+
test = .new() ;
|
33
|
+
test.main() ;
|
34
|
+
end
|
35
|
+
|
36
|
+
|
data/examples/k_means.rb
CHANGED
@@ -2,4 +2,5 @@ require "t_learn"
|
|
2
2
|
|
3
3
|
k_means = TLearn::K_Means.new()
|
4
4
|
data_list = JSON.load(open("./sample_1dim.json"))
|
5
|
-
history = k_means.fit(data_list)
|
5
|
+
history = k_means.fit(data_list, c=3) # => {result:=> Array, history => Array}
|
6
|
+
# history[:result][0] => {id=>cluster's number, :vec=>cluster's point, :v_list=> clustered data list}
|
@@ -0,0 +1 @@
|
|
1
|
+
[[5.663514072929293,1.428337397725662],[7.398386534336297,9.18778625753581],[4.309437529192255,6.513059497747291],[1.7839299701911693,9.16161988256119],[4.389189054232916,3.7711452189814496],[6.369772085215105,8.536060683939455],[8.103846212946436,8.096207236096228],[1.7214899894356028,8.342913262143137],[1.218238972404626,6.019785796333171],[2.52796883935655,7.735447001646304],[1.1023799643972987,9.02994164212782],[7.780518243136445,8.245945056536952],[9.338725253226455,4.243287565422232],[4.479431282937733,0.5511900673060077],[9.961556187025556,6.901562324134769],[5.704302651790685,0.8332816316353064],[8.782704425631298,7.137321847187199],[3.9006771271175076,0.34429431524262144],[8.534966233053762,0.4631434459502204],[8.30934708784729,4.311013661204187],[9.159890180342911,2.120436821290533],[7.814380903472193,2.42316038524463],[1.1811096994178472,7.915784293161384],[1.9977929196093458,9.053569884518502],[8.733619755795349,8.305999636815304],[7.464775013297059,2.7812496321815083],[9.302237974058581,9.706257751781898],[2.165795691635318,0.9918262469586903],[4.9760136529315915,4.290122107571067],[8.004706289050826,4.290381500494526],[5.130700785885224,6.357911145705035],[5.756523135814593,6.883361003554043],[3.1041613222778364,9.45252436870105],[7.859826903813908,0.7238412937327643],[2.9964433278551326,1.577922352120713],[8.09790136517906,8.583667344127171],[0.17332448590139604,7.234587763082776],[9.141281293774806,3.1569517173214146],[5.215407922262065,4.311755227255064],[9.255456031930349,9.950754808474455],[6.724715219650354,9.607352089859218],[3.318080273137458,6.749394402974924],[8.86178784234771,8.333389776962637],[2.434975397364012,1.2992074306299173],[9.275566274828915,3.9156957357838507],[9.535111444668974,8.929287953939667],[4.947886478399349,9.651544653798474],[3.17034536041961,6.905977849877493],[7.014131871930612,6.569275241012339],[4.570244684840354,6.167605983843649],[2.83125931134217,7.591971371240892],[3.9874438302042137,1.9664511622534508],[2.928203864220804,1.0051955642561183],[5.192074270659303,1.1914878369726056],[4.846771445421384,2.1316422079114936],[4.260687610411659,8.120080978124314],[4.745218307158279,9.327513108080488],[8.905743144044298,5.602753198240866],[2.9716414875941712,3.242207001726898],[8.876720033131276,9.730766316504694],[6.215157036550765,1.9821563348579052],[8.893538131923158,1.3956348309392852],[1.2132952542367825,9.349268017426509],[7.215902455037054,4.858903443105287],[9.037496565750269,8.551835738200692],[9.229776882620756,3.9463800652506773],[5.938089173421583,3.338227810030694],[7.246634106383446,8.219518006593042],[2.9180060264243703,5.465002827141511],[3.265559609694244,0.5756194187802111],[2.9294564994029706,1.4952635534488112],[0.8302331915170613,8.950393028836052],[8.297508435259877,9.149207369316581],[6.368662836957864,0.818178417138663],[5.058030473877366,1.2376894947128125],[5.073949372499653,4.933573696535561],[3.280615404652545,7.496029955616857],[7.295942715741047,9.772414202534721],[1.550022260754711,4.871502094641721],[9.602962503613691,3.1867084762900877],[9.87624644928686,5.55466643676509],[8.974284440662082,2.8620721099870563],[7.068141890314177,0.5001520515311297],[4.198868416258711,7.104937313809617],[8.004669479314188,2.4272020829902328],[8.999590725029126,0.48483517194878645],[3.1372411434218406,0.9564909468117433],[9.693481061926972,6.557500325939955],[5.0637332098447105,9.502885964334117],[2.091061264935674,0.29600851274654394],[6.211265050859046,8.23506911079576],[2.5170701639214688,3.203840335593621],[4.5679429359824955,6.98212473923642],[7.206558271453803,8.371750977106672],[5.6033069228028936,7.470827356632568],[8.383175654656206,8.025299422886844],[3.281424511670019,0.09006914837090596],[7.18168420416922,1.9784358035378202],[5.852291083618106,1.211128796878177],[7.430807189056894,1.7449418782310366],[3.5235974745142062,6.84382571843374],[1.602218697941834,8.849332003825687],[6.808449062747405,6.919987245144527],[8.543284860328349,9.690536255167556],[6.937312668869206,5.689140265963727],[2.0207074626817434,2.1490550094596195],[4.331481853677703,5.660910584364926],[1.2589889224963946,8.949950983298699],[3.8347243972157887,7.021534345293449],[0.047097573012125915,7.140892116905344],[9.273296627925982,9.348983101154705],[9.427431950118176,6.83579605593199],[7.397103401944766,8.509183932455278],[6.8283943062885655,8.977389745816895],[6.181719012246948,5.65292878747377],[1.0194681086858304,7.860339553711676],[2.827640740963356,5.1473627245283655],[5.16098938202976,3.7229537079549413],[3.622172505361152,5.371944405426843],[6.9970560694740325,5.899736423000136],[2.734712172433016,6.398871041172926],[8.658555610598391,1.6410085305694533],[1.363698013487853,7.785933923655003],[7.268059554979153,9.397350993740833],[4.340295296969604,8.259683581967591],[7.22358196927143,3.798559340013324],[8.551033452744367,2.5227262515529745],[6.202203838432779,0.2392172132479864],[9.805637291906269,5.687325833197865],[5.567011369427691,7.241580232496646],[5.951012620944893,8.34069453170814],[6.614517873870627,6.87407382711754],[5.293185972145365,9.299065287176699],[3.661693889623118,1.491493848612806],[0.9908709878366662,2.5763055854656325],[7.852581951999921,5.553785421182813],[8.94234582925598,4.484635511287884],[3.474592259104438,3.7899015475107376],[7.661295395833358,6.20792089236539],[8.63179242253416,3.677167765166632],[9.806517718624681,1.9016322615196601],[1.8862522825315686,4.7724551973876],[1.6541183903499812,9.819391281594225],[0.811997978380703,8.67161856659754],[2.8105324682609645,6.1877305418866495],[8.804797734249252,6.508220225399181],[2.708437840160318,7.43181786078963],[3.219305165630535,9.26545885656035],[7.6094015274927305,6.184971864067281],[5.008833602051061,0.08374681778530735],[7.813899297845698,0.6296860478566313],[7.034801771589124,7.720561255362554],[9.46597596526215,5.571997989031168],[7.473636886863449,7.864526027292394],[5.89539670450516,0.18327399972270064],[5.884310189068848,1.3748314754436541],[6.717808871011681,3.4450257263718886],[2.5864482939067646,8.700023677540923],[0.20394211698466447,0.29818325397551804],[9.179482510099234,0.17824219516630269],[8.46433625062908,8.185509587373303],[7.980212506775067,2.6706259590257297],[7.289709940518616,9.135866231639056],[6.511647804903012,2.3640853900122694],[1.529567823169068,8.671213048400993],[4.73979028074297,8.170095609307785],[7.302290183815005,8.056606786389365],[4.858990077001556,7.931745144885919],[0.24997905213162586,9.700609326468431],[3.6186949215866293,4.6129903126841345],[2.164138888287134,9.740882459925862],[3.989650209918164,4.5893604684623055],[3.993928989830171,1.278958963575415],[0.9567990507470969,4.044579132281315],[0.3812596593805806,6.11847527743709],[6.802649815094316,0.9807109965910454],[6.975135493752536,7.441974452945381],[4.309591427181885,4.753102880628287],[2.1621569786090467,7.878738651987175],[9.766663793692773,3.937226368036655],[5.036322183525829,6.51884965654001],[7.2508688398154835,2.6540008157874437],[7.988725701196044,2.4495295634703496],[6.750116821256071,2.5419471531707782],[2.7669110772503047,0.301084556014628],[0.8124834261989056,8.418418297167126],[2.0986309416286932,9.289548949376629],[9.508686680109705,7.8887352594753954],[2.5284853914572714,9.438041334509315],[2.371705577130113,4.549161565889768],[4.934056282602502,2.0007573449420546],[0.6993951576816204,9.98840612245639],[1.8538731769081507,6.165434234749352],[1.7576789792449055,1.8149404857698814],[9.552087740844327,6.744296337642392],[2.3918214271156133,1.5899158564925253],[9.717336566577217,7.480282585173467],[7.66425751778303,2.25466171755642],[5.755380720864269,0.9152563401143532],[1.4817497231074883,8.522487191535623]]
|
@@ -5,7 +5,7 @@ module TLearn
|
|
5
5
|
#
|
6
6
|
# ==
|
7
7
|
#
|
8
|
-
class
|
8
|
+
class FNN
|
9
9
|
attr_accessor :layer_list, :layer_size, :link_list, :node_id, :learning_rate, :err_list, :threshold
|
10
10
|
def initialize(learning_rate=0.1, threshold=0.0, momentum_rate=0.01)
|
11
11
|
@layer_size = 0 #layer iterator
|
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.8
|
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-07-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -71,8 +71,11 @@ files:
|
|
71
71
|
- bin/setup
|
72
72
|
- examples/em_gaussian.rb
|
73
73
|
- examples/faithful.json
|
74
|
+
- examples/fnn.rb
|
75
|
+
- examples/hnn.rb
|
74
76
|
- examples/k_means.rb
|
75
77
|
- examples/sample_1dim.json
|
78
|
+
- examples/sample_2dim.json
|
76
79
|
- lib/t_learn.rb
|
77
80
|
- lib/t_learn/em.rb
|
78
81
|
- lib/t_learn/feedforward_neural_network.rb
|