simple_neural_network 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +5 -5
  2. data/lib/layer.rb +4 -4
  3. metadata +6 -21
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 38af9f9ff92a917ee9d8468adfae6f0d747219a7
4
- data.tar.gz: 4aafd03d59079c099d3aaa0c595fc8abf48034ba
2
+ SHA256:
3
+ metadata.gz: d968cc9e65918096e1b97005ea76f677f1aa45ba5bf5c2bad97dbc04d8bf1ca6
4
+ data.tar.gz: 7a5e5132696488077a77d33400e0c7e5bbce9b7530863ec7c1ca487bf437e4e4
5
5
  SHA512:
6
- metadata.gz: 3b419df2647c65d17ab71758a001d78498fd7c8fccbcf71547040b795b1521d6863e0c7807768a82ee84811afd7bdd17619f4f767df9c96a90062103203e9cb9
7
- data.tar.gz: 435dcc47fa8333ba5a82a8142cbfa57558cdce2302078468e034890a1e057d5dcaba0a996a60feca17de332cacb8228f180bcf3967f4429903c0be77866335fa
6
+ metadata.gz: 01502c003275496a7dbe4d04d455b6f5e4d3be38dbcb51b9ee241a36106c5bd05cc59eca53828dc38df1ba4a31a67b478925f114dfced6e0b3bcc89c8cd5761f
7
+ data.tar.gz: 8e772e8d56bf39e8e4cf873b07f3a8be80eef6f75e32be6a1036059d67976f4d1c2bcaeb2503972f7b2a7872a15cfb79781e4aa792a136abf039f6feb43056ee
data/lib/layer.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  require_relative "neuron"
2
- require "nmatrix"
2
+ require "matrix"
3
3
 
4
4
  class SimpleNeuralNetwork
5
5
  class Layer
@@ -42,9 +42,9 @@ class SimpleNeuralNetwork
42
42
  # + ...
43
43
  # ) + self.neurons[i].bias
44
44
  prev_output = prev_layer.get_output
45
- prev_output_matrix = NMatrix.new([prev_output.length, 1], prev_output, dtype: :float64)
45
+ prev_output_matrix = Vector[*prev_output]
46
46
 
47
- result = (edge_matrix.dot(prev_output_matrix)).each_with_index.map do |val, i|
47
+ result = (edge_matrix * prev_output_matrix).each_with_index.map do |val, i|
48
48
  val + @neurons[i].bias
49
49
  end
50
50
 
@@ -65,7 +65,7 @@ class SimpleNeuralNetwork
65
65
 
66
66
  @edge_matrix ||= begin
67
67
  elements = prev_layer.neurons.map{|a| a.edges}
68
- NMatrix.new([elements.count, elements[0].count], elements.flatten, dtype: :float64).transpose
68
+ Matrix[*elements].transpose
69
69
  end
70
70
  end
71
71
 
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_neural_network
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathaniel Woodthorpe
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2018-03-11 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: nmatrix
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '0.2'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '0.2'
12
+ dependencies: []
27
13
  description: A simple neural network implementation in Ruby.
28
14
  email: njwoodthorpe@gmail.com
29
15
  executables: []
@@ -38,7 +24,7 @@ homepage: https://github.com/d12/SimpleNeuralNetwork
38
24
  licenses:
39
25
  - MIT
40
26
  metadata: {}
41
- post_install_message:
27
+ post_install_message:
42
28
  rdoc_options: []
43
29
  require_paths:
44
30
  - lib
@@ -53,9 +39,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
53
39
  - !ruby/object:Gem::Version
54
40
  version: '0'
55
41
  requirements: []
56
- rubyforge_project:
57
- rubygems_version: 2.6.13
58
- signing_key:
42
+ rubygems_version: 3.0.9
43
+ signing_key:
59
44
  specification_version: 4
60
45
  summary: A simple neural network implementation in Ruby.
61
46
  test_files: []