# Semantic search

- MLPACK
- MLPACK is a C++ machine learning library with emphasis on scalability, speed, and ease-of-use. Its aim is to make machine learning possible for novice users by means of a simple, consistent API, while simultaneously exploiting C++ language features to provide maximum performance and flexibility for expert users. MLPACK contains the following algorithms: Collaborative Filtering, Density Estimation Trees, Euclidean Minimum Spanning Trees, Fast Exact Max-Kernel Search (FastMKS), Gaussian Mixture Models (GMMs), Hidden Markov Models (HMMs), Kernel Principal Component Analysis (KPCA), K-Means Clustering, Least-Angle Regression (LARS/LASSO), Local Coordinate Coding, Locality-Sensitive Hashing (LSH), Logistic regression, Naive Bayes Classifier, Neighbourhood Components Analysis (NCA), Non-negative Matrix Factorization (NMF), Principal Components Analysis (PCA), Independent component analysis (ICA), Rank-Approximate Nearest Neighbor (RANN), Simple Least-Squares Linear Regression (and Ridge Regression), Sparse Coding, Tree-based Neighbor Search (all-k-nearest-neighbors, all-k-furthest-neighbors), Tree-based Range Search.

- Mastrave
- Mastrave is a free software library written to perform vectorized scientific computing and to be as compatible as possible with both GNU Octave and Matlab computing frameworks, offering general purpose, portable and freely available features for the scientific community. Mastrave is mostly oriented to ease complex modeling tasks such as those typically needed within environmental models, even when involving irregular and heterogeneous data series.
**Semantic array programming**The Mastrave project attempts to allow a more effective, quick interoperability between GNU Octave and Matlab users by using a reasonably well documented wrap around the main incompatibilities between those computing environments and by promoting a reasonably general idiom based on their common, stable syntagms. It also promotes the systematic adoption of data-transformation abstractions and lightweight semantic constraints to enable concise and reliable implementations of models following the paradigm of semantic array programming.

There are a couple of underlying ideas: library design is language design and vice versa (Bell labs); language notation is definitely a "tool of thought" (version), in the sense that there is a feedback between programming/mathematical notation and the ability to think new scientific insights. And perhaps ethic ones.

**Science and society**Mastrave is free software, which is software respecting your freedom. As many other free scientific software packages, it is offered to the scientific community to also promote the development of a free society more concerned about cooperation rather than competitiveness, heading toward knowledge and culture freedom.

Such a vision implies the possibility for motivated individuals to freely access, review and contribute even to the cutting-edge academic culture. This possibility relies on the development of tools and methodologies helping to overcome economic, organizational and institutional barriers (i.e. knowledge oligopolies) while systematically promoting reproducible research. This is a long-term goal to which the free software paradigm can and has been able to actively cooperate.

- Mcsim
**MCSim**is a simulation and statistical inference tool for algebraic or differential equation systems. While other programs have been created to the same end, many of them are not optimal for performing computer intensive and sophisticated Monte Carlo analyses. MCSim was created specifically to perform Monte Carlo analyses in an optimized, and easy to maintain environment.

- MedianTracker
- MedianTracker supports efficient median queries on and dynamic additions to a list of values. It provides both the lower and upper median of all values seen so far. Any __cmp__()-able object can be tracked, in addition to numeric types. add() takes log(n) time for a tracker with n items; lower_median() and upper_median() run in constant time. Since all values must be stored, memory usage is proportional to the number of values added (O(n)).

- Opennn
**OpenNN is a class library written in C++ which implements neural networks.**The library is intended for advanced users, with high C++ and machine learning skills. OpenNN provides an effective framework for the research and development of data mining and predictive analytics algorithms and applications.

OpenNN is based on the most popular neural network model, the multilayer perceptron. The package comes with unit testing, many examples and extensive documentation.

The library has been designed to learn from data sets. Some typical applications here are function regression (modelling), pattern recognition (classification) and time series prediction (forecasting).

OpenNN is being developed by Intelnics, a company specialized in the development and application of neural networks.

- OptionMatrix
- These calculators are real-time multi-model option chain pricers with analytics and interactive controls. optionmatrix is the GTK+ graphical user interface version and optionmatrix_console is the Curses version. Both programs feature: greeks, decimal date to real-date translations, real-date to decimal date translations, real-time time bleeding, configurable option expiration date engines, calendars, strike control systems, tickers and over 168+ option models. optionmatrix also supports: spreads, bonds, term structures, cash flow editing, source code viewing and text exporting.

- Orange
- Orange is a GPL visual programming software suite, featuring widgets for interactive data visualization, statistical data analysis, machine learning, text mining, association rules and frequent pattern ming, data fusion, and data mining in general.

- Papertrail
- Papertrail is a Ballot Counting Software. It helps scanning and counting regular paper ballots as known from common election situations. It is Free Software, licensed via the GPLv3, to make the election process as dependable as possible, but speeding up the manual counting process a lot.

- Ploticus
- Produces full-color lineplots, bargraphs, histograms, scatterplots, pie graphs, rangebars, boxplots, tables, tabular plots etc. Many labeling and style features. Produce graphs for publications, slides, posters, web pages and intranets. Plots from tabular data sets. Handles numeric, date, time, and alphanumeric data. Script-driven, non-interactive. Can render in Postscript, PNG, GIF, or X11.

- Plotutils
- The GNU plotutils package contains software for both programmers and technically oriented users. Its centerpiece is the libplot/libplotter, a C/C++ function lib for exporting 2-D vector graphics in many file formats (including WebCGM format, recommended by the graphics Activity of the W3 Consortium). It can also do vector graphics animations, has thread-safe APIs, and supports the use of Posix threads (if available). The program also contains the following command-line programs for plotting scientific data:
- graph- plots 2-D datasets or data streams in real time
- plot- translates metafile formats to any of the other formats
- tek2plot- translates legacy Tektronix data to any of the above formats
- pic2plot- translates the pic language to any of the other formats
- plotfont- displays character maps of the fonts available in the above formats.
- spline- spline interpolation of data
- ode- numerically integrates ordinary differential equations

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.