Exemplo n.º 1
0
def linear_regression():
  line = Line()
  line.slanting_line()
  sample = line.generate_sample(N)

  lr = LinearRegression()
  lr.learn(sample)

  # in-sample error
  e_in = lr.calculate_error(sample)
  # Plotting in-sample graph
  #plt = lr.plot(sample) #plot the samples
  #plt.plot([-lr.weight[0]/lr.weight[1] for y in xrange(-1,2)], [y for y in xrange(-1,2)]) # Add the x intercept line
  #plt.show()

  # out-sample error
  sample = line.generate_sample(1000)
  e_out = lr.calculate_error(sample)
  # Plotting out-sample graph
  #plt = lr.plot(sample) #plot the samples
  #plt.plot([-lr.weight[0]/lr.weight[1] for y in xrange(-1,2)], [y for y in xrange(-1,2)]) # Add the x intercept line
  #plt.show()

  #print "Line: slope=", line.slope, " intercept=", line.intercept
  #print "W_Vec: weight=", lr.weight[1], " threshold=", lr.weight[0]

  return e_in, e_out
Exemplo n.º 2
0
def preceptron_learning():
  line = Line()
  line.random_line()
  sample = line.generate_sample(100)
  # print sample

  p = Preceptron([.01,0])
  p.learn(sample)

  sample = line.generate_sample(100000)

  incorrect = p.fng(sample)
  #print p.weight
  #print p.count

  return p.count, incorrect
Exemplo n.º 3
0
def lr_booting_preceptron():
  line = Line()
  line.slanting_line()
  sample = line.generate_sample(N)

  lr = LinearRegression()
  lr.learn(sample)

  p = Preceptron(lr.weight)
  p.learn(sample)

  return p.count