Git Product home page Git Product logo

labview-libsvm's Introduction

Palette

Description

A LabVIEW wrapper for libsvm (3.22) and liblinear (2.11). The implementation is thread-safe, which means that multiple cross-validate/train/predict operations can be executed simultaneously.

Interfaces to both libsvm sparse and dense is included. The recommendation is to use the dense variant unless you know you need sparseness. This is both due to better performance and a more practical data format as the indices are implicit. Both sparse and dense perform similarly for small number of features. Note however, that performance for the sparse 32-bit library suffers on Windows because the LabVIEW structures are not directly memory compatible with the C++ library, which introduces unnecessary copies. The recommendation is therefore to use a 64-bit LabVIEW installation if the sparse library is needed on Windows.

Sparse is only necessary for datasets consisting of an extremely large number of features, where many features are zeros.

Installation

  1. Download the newest .vip file on the release page
  2. Open and install the file with VI package manager (VIPM)

This includes all necessary binaries and OpenG dependencies (note: internet access required for automatic download of OpenG). The binaries themselves is also supplied in a separate zip archive, for those that prefer to use the library without installing.

The library is compatible with LabVIEW 2015 SP1 (64/32bit) and later. On Linux you need to run VIPM as root, and ensure that the target LabVIEW installation allows for TCP/IP connections (Options - Protocols - TCP/IP).

Dependencies

  • libsvm and liblinear binaries (included in the VIPM package or through the zip files)
  • OpenG Toolkit VIs (automatically installed by VIPM)
  • Windows: Microsoft Visual C++ 2017 Redistributable (x86 for 32bit LabVIEW, x64 for 64bit LabVIEW)
  • Linux: Distributed binaries compiled with GCC/G++-5.4 on Ubuntu 16.04 LTS 64-bit, compatible ABI required on target system (only 64bit binaries is distributed)

Usage

Each sub-library contains some basic examples. Look at the official libsvm/liblinear documentation if something should be unclear. The documentation for the python wrapper in scikit-learn is also very useful.

The library primarily consists of VIs that more or less wrap the functions exposed through the libsvm/liblinear API. The data structures used for these calls are relatively similar.

Note that when distributing built executables on Windows with this library, you may have to include msvcp140.dll in your build specification (Windows/System32/msvcp140.dll). If the redistributable is installed on the target system, it should be found automatically.

Bugs

Please report any bugs or feature requests either through the issue system or a message.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.