Ruby classifier

I tried installing ruby classifier using
sudo gem install classifier
but when I try to use classifier I get

irb(main):001:0> require "classifier"
LoadError: no such file to load -- classifier
        from (irb):1:in `require'
        from (irb):1

What am I doing wrong? Thank you.

···

--
Posted via http://www.ruby-forum.com/.

I tried installing ruby classifier using
sudo gem install classifier
but when I try to use classifier I get

irb(main):001:0> require "classifier"
LoadError: no such file to load -- classifier
        from (irb):1:in `require'
        from (irb):1

What am I doing wrong? Thank you.

Didja try
require 'rubygems'
require 'classifier'

?

···

On 3/28/07, Ryo Fojiba <fojiba@gmail.com> wrote:

--
Posted via http://www.ruby-forum.com/\.

Ah, whoops, that part is fixed now. But when to add items to the LSI
classifier, I get:

lsi.add_item( "This is a turtle.", :turtle )

=> nil

lsi.add_item( "This is a cuckoo.", :cuckoo )

ArgumentError: wrong number of arguments (1 for 0)
        from
/usr/local/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi/content_node.rb:37:in
`initialize'
...

i.e., I get these "wrong number of arguments" errors as soon as I try to
add more than one item.

Any idea about this?

Logan Capaldo wrote:

···

On 3/28/07, Ryo Fojiba <fojiba@gmail.com> wrote:

Didja try
require 'rubygems'
require 'classifier'

?

--
Posted via http://www.ruby-forum.com/\.

I've spent a couple of days trying to get LSI Classifer to work. The
Bayesian library works fine (and is fun), but LSI is not working for me.
I have the GSL installed and the ruby-gsl wrapper, which seem to be
working fine. However, I get the same error as mentioned in the previous
post. The error occurs as the 2nd item is added to the index. It occurs
somewhere within the rebuild_index procedure. If auto_index is switched
off, items can be added infinitum. Please help :S

#--------test script

require 'rubygems'
require 'gsl'
require 'classifier'
require 'stemmer'

  lsi = Classifier::LSI.new
  strings = [ ["This text deals with dogs. Dogs.", :dog],
              ["This text involves dogs too. Dogs! ", :dog],
              ["This text revolves around cats. Cats.", :cat],
              ["This text also involves cats. Cats!", :cat],
              ["This text involves birds. Birds.",:bird ]]
  strings.each {|x| lsi.add_item x.first, x.last}

  lsi.search("dog", 3)
  # returns => ["This text deals with dogs. Dogs.", "This text involves
dogs too
. Dogs! ",
  # "This text also involves cats. Cats!"]

  lsi.find_related(strings[2], 2)
  # returns => ["This text revolves around cats. Cats.", "This text also
involve
s cats. Cats!"]

  lsi.classify "This text is also about dogs!"
  # returns => :dog

#--------error

/usr/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/extensions/string.rb:6:Warning:
require_gem is obsolete. Use gem instead.
/usr/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi/content_node.rb:37:in
`initialize': wrong number of arguments (1 for 0) (ArgumentError)
        from
/usr/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi/content_node.rb:37:in
`new'
        from
/usr/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi/content_node.rb:37:in
`raw_vector_with'
        from
/usr/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi.rb:123:in
`build_index'
        from
/usr/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi.rb:123:in
`collect'
        from
/usr/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi.rb:123:in
`build_index'
        from
/usr/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi.rb:65:in
`add_item'
        from lsitest.rb:12
        from lsitest.rb:12:in `each'
        from lsitest.rb:12

Dan

Colin Brander wrote:

···

Ah, whoops, that part is fixed now. But when to add items to the LSI
classifier, I get:

lsi.add_item( "This is a turtle.", :turtle )

=> nil

lsi.add_item( "This is a cuckoo.", :cuckoo )

ArgumentError: wrong number of arguments (1 for 0)
        from
/usr/local/lib/ruby/gems/1.8/gems/classifier-1.3.0/lib/classifier/lsi/content_node.rb:37:in
`initialize'
...

i.e., I get these "wrong number of arguments" errors as soon as I try to
add more than one item.

Any idea about this?

Logan Capaldo wrote:

On 3/28/07, Ryo Fojiba <fojiba@gmail.com> wrote:

Didja try
require 'rubygems'
require 'classifier'

?

--
Posted via http://www.ruby-forum.com/\.

Dan and Colin,

The current version of Classifier's LSI is kind of broken. It was
half in development ages ago and for whatever reason the "stable"
version got merged with a half-working dev version. For a number of
reasons (which I'll omit), development stalled and it wasn't cleaned
up.

I wasn't involved directly with the main development of Classifier,
but I did have some involvement with some of the not-so-implemented
ideas. I've been extremely busy for a couple months, but sometime
soon I hope to smooth over some of the LSI issues to get it stable
again.

I'll look into the exact error you both are posting - if it's
something workaroundable I'll let you know.

Cameron

Cameron McBride wrote:

Dan and Colin,

The current version of Classifier's LSI is kind of broken. It was
half in development ages ago and for whatever reason the "stable"
version got merged with a half-working dev version. For a number of
reasons (which I'll omit), development stalled and it wasn't cleaned
up.

I wasn't involved directly with the main development of Classifier,
but I did have some involvement with some of the not-so-implemented
ideas. I've been extremely busy for a couple months, but sometime
soon I hope to smooth over some of the LSI issues to get it stable
again.

I'll look into the exact error you both are posting - if it's
something workaroundable I'll let you know.

Cameron

Cameron, Thanks for your reply. I appreciate the difficulty in
maintaining these things, so thanks for any input you can provide. If I
find a fix, I'll post it here.

Regards
Dan

···

--
Posted via http://www.ruby-forum.com/\.