예제 #1
0
  def __init__(self, hidden_neuron_num=1, hidden_type='sigmoid'):
    self.hidden_neuron_num = hidden_neuron_num
    self.hidden_type = hidden_type

    self.net = FeedForwardNetwork()
    self.samples = SupervisedDataSet(784, 784)

    self.vectorizer = ImageVectorizer()

    self.add_layers()
    self.add_connections()
    self.sort()
예제 #2
0
import sys, os
sys.path.append(os.path.join(os.path.dirname(__file__), "lib"))

from IPython import embed
from neural_net import NeuralNet
from image_vectorizer import ImageVectorizer


vectorizer = ImageVectorizer()
paths = vectorizer.get_image_paths()

############################################################
################### Assignment Questions ###################
############################################################

############################################################
# Train a feedforward neural network with one hidden layer #
# of size 3 to learn representations of those digits.      #
# Try using (a) Linear transform function                  #
############################################################ 

net_3lin = NeuralNet(3, 'linear')
net_3lin.train(paths)
weights = net_3lin.input_weights_of_hidden_layer()
vectorizer.vectors_to_images(weights, '3_hidden_layer_linear')

############################################################
# (b) Sigmoid transform function for the hidden layer      #
############################################################

net_3sig = NeuralNet(3, 'sigmoid')