Latest News

 Latest News Nov 06: We have made our own Fink repository so that we can distribute Orange to all Fink users - that is to Mac OS X users who would like to use it for more serious things. That does not mean that updated bundles are not for serious things but scripting and combining with other Python modules is much easier through an established system like Fink.  More...

Jul 17: With the final version of Orange 1.0 still not completely wrapped up, we are already progressing fast in porting it to Qt 4.X. There are not many new functions, but it looks way nicer than before. See it yourself...  More...

Jun 13: Noticed the Catalog of widgets expanding fast lately?  

Jun 13: We've been busy the last year, unfortunately not (only) with Orange. But we've intensified the work in last weeks, so expect a wrapped up version 1.0b really soon.  

Oct 31: The list of example scripts from documentation works again. For instance, you want to know how to induce random forests in Orange? Just type 'forest' into the filter, and you'll know...  

Sep 02: The next installment in the very popular soap opera series Orange for Mac OS X, now under direct support of Universal studios.  More...

Jul 19: A month later: towards fixing pickling, we completely reworked the attribute construction protocol. This breaks some backward compatibility; canvas users should only discover that the values of discrete attributes may have a different order than before, while more advanced users will notice that attributes with the same name and type are now always the same attribute, even when loaded from different files. The end goal of all this is that pickling should start working properly and be, finally, also supported in the canvas.  More...

Jun 19: Bad news: as you may already seen in the forum, there's a bug in unpickling. The problem is hard to fix, so you should avoid using pickling (or be really careful with it) until further notice.  

More news...


FRI > AI Lab > Orange

Orange

Orange is a component-based data mining software. It includes a range of preprocessing, modelling and data exploration techniques. It is based on C++ components, that are accessed either directly (not very common), through Python scripts (easier and better), or through GUI objects called Orange Widgets.

Orange is distributed free under GPL and can be downloaded from the download page.

Some Features of Orange

Orange is a component-based framework, which means you can use existing components and build your own ones. You can even prototype your own components in Python, and use it in place of some standard C-based Orange component. For instance, you may craft your own function for attribute quality estimation, and use it within Orange's classification tree induction algorithm. Orange provides for some elementary components and more complex components build from elementary ones, and uses Python as a glue language. Some of the readily-available features of Orange include:
  • Data input/ouput: Orange can read from and write to tab-delimited files and C4.5 files, and supports also some more exotic formats.
  • Preprocessing: feature subset selection, discretization, feature utility estimation for predictive tasks.
  • Predictive modelling: classification trees, naive bayesian classifer, k-NN, majority classifier, support vector machines, logistic regression, rule-based classifiers (e.g., CN2).
  • Ensemble methods, including boosting, bagging, and forest trees.
  • Data description methods: various visulizations (in widgets), self-organizing maps, hierarchical clustering, k-means clustering, multi-dimensional scaling, and other.
  • Model validation techniques, that include different data sampling and validation techniques (like cross-validation, random sampling, etc.), and various statistics for model validation (classification accuracy, AUC, sensitivity, specificity, ...).

Visual Programming

Orange's visual programming interface is based on GUI components we call Orange Widgets, and a signalling framework that uses communication channels to connect widgets and tokens to pass the data from one widget to another. Although this sounds very scientific, working with widgets in the Orange Canvas is simple as point-and-click. Currently, more then forty widgets are available, with more coming out every week.

Orange

Orange

Orange is a component-based data mining software. It includes a range of preprocessing, modelling and data exploration techniques. It is based on C++ components, that are accessed either directly (not very common), through Python scripts (easier and better), or through GUI objects called Orange Widgets.

Orange is distributed free under GPL and can be downloaded from the download page.

Some Features of Orange

Orange is a component-based framework, which means you can use existing components and build your own ones. You can even prototype your own components in Python, and use it in place of some standard C-based Orange component. For instance, you may craft your own function for attribute quality estimation, and use it within Orange's classification tree induction algorithm. Orange provides for some elementary components and more complex components build from elementary ones, and uses Python as a glue language. Some of the readily-available features of Orange include:
  • Data input/ouput: Orange can read from and write to tab-delimited files and C4.5 files, and supports also some more exotic formats.
  • Preprocessing: feature subset selection, discretization, feature utility estimation for predictive tasks.
  • Predictive modelling: classification trees, naive bayesian classifer, k-NN, majority classifier, support vector machines, logistic regression, rule-based classifiers (e.g., CN2).
  • Ensemble methods, including boosting, bagging, and forest trees.
  • Data description methods: various visulizations (in widgets), self-organizing maps, hierarchical clustering, k-means clustering, multi-dimensional scaling, and other.
  • Model validation techniques, that include different data sampling and validation techniques (like cross-validation, random sampling, etc.), and various statistics for model validation (classification accuracy, AUC, sensitivity, specificity, ...).

Visual Programming

Orange's visual programming interface is based on GUI components we call Orange Widgets, and a signalling framework that uses communication channels to connect widgets and tokens to pass the data from one widget to another. Although this sounds very scientific, working with widgets in the Orange Canvas is simple as point-and-click. Currently, more then forty widgets are available, with more coming out every week.

Orange Scripting

Seamless integration within Python is probably the most important feature of Orange. Python is a great and very flexible scripting language. We have designed Orange to be fully accessible within Python and are trying to expose almost every essential Orange's component within Python. We provide a number of example scripts on Orange's web pages, but just to give you a taste, here is one that reads the data file, builds a naive Bayesian classifier and outputs original and predicted class for first five instances:

import orange data = orange.ExampleTable('voting') classifier = orange.BayesLearner(data) for i in range(5): print data[i].getclass(), 'classified as', classifier(data[i])

Here is another example that imports two Orange's modules (orngTest and orngStat), reads the data, and uses cross-validation to compare two classifiers using classification accuracy and Brier score:

import orange, orngTest, orngStat data = orange.ExampleTable('voting') bayes = orange.BayesLearner() tree = orange.TreeLearner() results = orngTest.crossValidation([bayes,tree], data, folds=5) print 'Classification accuracy: ', orngStat.CA(results) print 'Brier Score: ', orngStat.BrierScore(results)

Citing Orange

Please use the following reference for citing Orange.

Demsar J, Zupan B, Leban G (2004) Orange: From Experimental Machine Learning to Interactive Data Mining, White Paper (www.ailab.si/orange), Faculty of Computer and Information Science, University of Ljubljana.

And if you will become an Orange user, we won't mind getting a postcard from you. Please use the following address:

Orange
AI Lab
Faculty of Computer and Informations Science
University of Ljubljana
Trzaska 25
SI-1000 Ljubljana
Slovenia