arrigonialberto86 / ruby-band Goto Github PK
View Code? Open in Web Editor NEWMachine learning and data mining algorithms for JRuby
License: Other
Machine learning and data mining algorithms for JRuby
License: Other
Are there deeper thoughts behind using singular names for the Weka modules as Weka::Filter
, Weka::Clusterer
and Weka::Classifier
instead of the plural names used in the original weka library Weka::Filters
, Weka::Clusterers
and Weka::Classifiers
? (Whereas they are placed in plural named directories.)
For me, plural forms would make absolutely sense since there are e.g. several classifier modules and classes in the Weka::Classifier
module. Consistency might also help in refering to the weka documentation.
Maybe then also the <Part>_utils
modules should be nested in a Weka::<Part>
module, so their name can be a simple Utils
.
What do you think?
Hi,
I would like to use ruby-band gem in rails app (ruby 2.1.3p242, Rails 4.2.1).
When i run by irb:
hvt@hvts-macpro:~/ck (master)$ irb
irb(main):001:0> require 'ruby-band'
LoadError: cannot load such file -- java
from /Users/hvt/.rbenv/versions/2.1.3/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:120:in `require'
from /Users/hvt/.rbenv/versions/2.1.3/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:120:in `require'
from /Users/hvt/.rbenv/versions/2.1.3/lib/ruby/gems/2.1.0/gems/jbundler-0.4.3/lib/jbundler/pom.rb:24:in `<top (required)>'
from /Users/hvt/.rbenv/versions/2.1.3/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /Users/hvt/.rbenv/versions/2.1.3/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /Users/hvt/.rbenv/versions/2.1.3/lib/ruby/gems/2.1.0/gems/jbundler-0.4.3/lib/jbundler/gemfile_lock.rb:22:in `<top (required)>'
from /Users/hvt/.rbenv/versions/2.1.3/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:68:in `require'
Version ruby-band in gem list: ruby-band (0.1.13)
What should i do?
Thanks,
Tran
Using jruby 1.7.10 with rvm 1.25.15 I get this message when running bundle install:
Bundler could not find compatible versions for gem "bundler":
In Gemfile:
ruby-band (>= 0) java depends on
bundler (~> 1.3.5) java
Current Bundler version:
bundler (1.5.2)
My Gemfile comprises only the ruby-band
gem.
Hi
How can I know which version of Weka is installed/used ? Can I update the jar file?
Best regards
Riadh
Support for linear algebra functionalities should be extended by following the guidelines listed here:
http://commons.apache.org/proper/commons-math/userguide/linear.html
Some R-style accessors methods should be added to the Instances class, as this is basically a matrix. Some parallels could be drawn between this class and the R data.frame class.
Hi
I tried to install ruby-band gem within jruby 1.7.8, the command was successful:
/opt/jruby-1.7.8/bin/jruby -S gem install ruby-band
Fetching: i18n-0.6.1.gem (100%)
Successfully installed i18n-0.6.1
Fetching: multi_json-1.8.2.gem (100%)
Successfully installed multi_json-1.8.2
...
But when I run a small program:
cat classify_function.rb
-->
require 'rubygems'
require 'ruby-band'
classifier = Weka::Classifier::Lazy::LWL.new
puts classifier.description
puts classifier.list_options
jruby complains that it cannot find multi_json-1.8.0. Note that multi_json-1.8.2 is installed. May be you need to update the dependencies versions.
Thanks
Riadh.
I believe this is a must. As I tested it some months ago, objects serialization did not work for instances of Classifiers::Base
class. This may be because Base
does not inherit the implementation of Java interface Serializable
.
Hey @arrigonialberto86,
currently I'm observing a couple of issues with the latest version of this gem and its dependencies, e.g. https://github.com/webis-de/wikipedia-vandalism-detection/issues/2 (at least I think this is related to the defined dependencies of ruby-band). So I thought about improving this gem a bit.
Do you have any interest in cleaning up ruby-band together, so that it is only a kind of Ruby wrapper for the Weka library? I like the approach that a gem should do one thing well. Hence, I would like to see e.g. the server stuff removed from ruby-band. Is there a need for the bio dependency? Also the gemspec and a lot of other places could be cleaned up.
Another idea could be to kind of rewrite the gem from scratch as e.g. weka
and use the good parts of the wrapper implementations from this repo. The gem could be simplified and could also use an up-to-date version of Weka and a proper set of specs. It's just that I wouldn't like to see this project dying because I think it is a nice thing to have access to a mature ML lib through Ruby.
What are your thoughts on this?
It would be great if we could add more functionalities to the server.
Right now it only handles classifiers, so clusterers support is the next step.
NameError: cannot link Java class jbundler.Aether, probable missing dependency: org/sonatype/aether/artifact/Artifact
for_name at org/jruby/javasupport/JavaClass.java:1250
get_proxy_class at org/jruby/javasupport/JavaUtilities.java:34
java_import at file:/Users/Apisak/.rvm/rubies/jruby-1.7.13/lib/jruby.jar!/jruby/java/core_ext/object.rb:26
map at org/jruby/RubyArray.java:2412
java_import at file:/Users/Apisak/.rvm/rubies/jruby-1.7.13/lib/jruby.jar!/jruby/java/core_ext/object.rb:22
setup_classloader at /Users/Apisak/.rvm/gems/jruby-1.7.13/gems/jbundler-0.4.3/lib/jbundler/aether.rb:46
initialize at /Users/Apisak/.rvm/gems/jruby-1.7.13/gems/jbundler-0.4.3/lib/jbundler/aether.rb:51
(root) at /Users/Apisak/.rvm/gems/jruby-1.7.13/gems/jbundler-0.4.3/lib/jbundler.rb:36
require at org/jruby/RubyKernel.java:1065
(root) at /Users/Apisak/.rvm/rubies/jruby-1.7.13/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:1
require at /Users/Apisak/.rvm/rubies/jruby-1.7.13/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:73
require at org/jruby/RubyKernel.java:1065
(root) at /Users/Apisak/.rvm/gems/jruby-1.7.13/gems/ruby-band-0.1.13/lib/ruby-band.rb:3
(root) at test.rb:18
Please help me, how to solve this problem?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.