11 machine learning open source projects

As machine learning gets more and more attention from developers, there are many open source projects for machine learning. In the 11 machine learning open source projects listed in this article, whether you are a Java enthusiast or a Python madman, you can find yourself here. Wanted machine learning open source project.

Spam filtering, face recognition, recommendation engine - Machine learning is the way to go when you have a big data set and want to use them to perform predictive analysis and pattern recognition. In this science, computers can learn, analyze, and manipulate data autonomously without prior planning. More and more developers are now focusing on machine learning.

The rise of machine learning technology is not only due to the increasingly cheaper hardware costs and the increasing performance, but the proliferation of free software that makes machine learning easy to deploy on a stand-alone or large-scale cluster is also an important factor. The diversity of machine learning libraries means that no matter what language or environment you prefer, you may be able to get what you like.

1. Scikit-learn Python has become the programming language of choice for mathematics, natural sciences, and statistics due to its ease of use and rich library of functions. Scikit-learn serves mathematics and the natural sciences by building on existing Python packages - NumPy SciPy and matplotlib. The generated library can either be used with an interactive "workbench" application or embedded in other software and reused. The toolbox is available under the BSD license, so it is completely open and reusable.

2. Shogun In the oldest and most respected machine learning library, Shogun was created in 1999 and written in C++, but is not limited to working in C++. Thanks to the SWIG library, Shogun can be easily used in Java, Python, C#, Ruby, R, Lua, Octave, Matlab and environments.

Although highly respected, Shogun has other competitors. Another C++-based machine learning library, Mlpack, appeared in 2011 and claims to be faster and easier to use than other competitors (a more complete API set).

3. Accord Framework/AForge.net Accord, a .Net machine learning and signal processing framework, was an extension of a similar project, AForge.net. By the way, "signal processing" refers here to a series of machine learning algorithms for images and audio, such as seamless stitching of pictures or performing face detection. Contains a set of visual processing algorithms; it acts on image streams (such as video) and can be used to implement tracking of moving objects. Accord also provides a common library of machine learning from neural networks to decision tree systems.

4. The Mahout Mahout framework has been associated with Hadoop, but many of its algorithms can also be run off Hadoop. They are very useful for projects that might eventually migrate to Hadoop or be stripped from Hadoop into a standalone application.

One of Mahout's shortcomings: There are currently few algorithms that support the high-performance Spark framework, but instead use the increasingly obsolete MapReduce framework. The project currently does not accept MapReduce-based algorithms, and developers who want to achieve higher performance instead use MLlib instead.

5. MLlib Apache's own Spark and Hadoop machine learning libraries, designed to be large-scale and high-speed, MLlib claims to have all the common algorithms and useful data types. Like any Hadoop project, Java is the base language on MLlib, but Python users can connect with the MLlib NumPy library (also for scikit-learn), and Scala users can write code for MLlib. If you can't set up a Hadoop cluster, MLlib can be deployed on Spark without Hadoop -- and on EC2 or Mesos.

6. The H2O 0xdata H2O algorithm is oriented to business processes—fraud or trend prediction. Hadoop experts can use Java to interact with H2O, but the framework also provides bundles for Python, R, and Scala.

7. Cloudera Oryx Another machine learning project designed for Hadoop, Oryx, is provided by the creators of Cloudera Hadoop distribuTIon. Oryx is designed to allow machine learning models to be deployed on real-time streaming data, such as real-time spam filters or recommendation engines.

The new version of the project is tentatively named Oryx 2 and is currently in the preparation phase. It uses Apache projects such as Spark and Kafka for higher performance, and its component builds are loosely coupled so that it can stand the test of time.

8. GoLearn Google's Go language has begun to be widely used. With the increasing number of libraries, according to its developer Stephen Witworth, GoLearn is built as an integrated machine learning library for Go, with the goal of “simple customizable”. . Simplicity is mainly due to the fact that the data is loaded and processed in the library because it is modeled on SciPy and R; the customizability lies in the open source nature of the library and the fact that some data structures can be easily extended in an application. Witworth also created a wrapper for the Vowpal Wabbit library, one of which was placed in the Shogun toolbox.


9. Weka Weka was developed by Waikato University in New Zealand to collect a set of Java machine learning algorithms designed specifically for data mining. This set of GNU GPLv3 licensed sets has a package system to extend its functionality, both official and non-official. Weka even has a special book explaining its software and combat technology, so developers who want to take advantage of concepts and software can pay attention to it.

Although Weka is not specifically for Hadoop users, a new set of Weka's wrappers is available for Hadoop. Please note that it does not support Spark, only MapReduc. Clojure users can also use Weka through the ?Clj-ml?? library.

10. CUDA-Convnet Most people now know that GPUs are faster than CPUs in dealing with certain issues. But the application does not automatically take advantage of the GPU's acceleration; they must explicitly write through the program. CUDA-Convne is a neural network application machine learning library written in C++ to develop Nvidia's CUDA GPU processing technology. For those who use Python instead of C++, the resulting neural network can be saved as a Python pickle object, so it can be accessed from Python.

Note that the original version of the project is no longer being developed, but has been reorganized into CUDA-Convnet2, supporting multiple GPUs and Kepler-generaTIon GPUs. A similar project, Vulpes, has been written in F# and is usually used with the .Net framework.

11. ConvNetJS As its name suggests, ConvNetJS is a js-based deep learning library that lets you train deep networks in your browser. The NPM version is also available to users who use Node.js, and this library is also designed to handle the asynchronous nature of JavaScript. For example, once they have completed the training operation, they can give a callback function to execute. There are also a large number of demo cases.

Subminiature Sealed Micro Switch

Features

â—† Designed For Water and Dust Tight(IP67)

â—† Small Compact Size
â—† UL&ENEC&CQC Safety Approvals
â—† Long life & high reliability
â—† Variety of Levers
â—† Wide Range of wiring Terminals
â—† Wide used in Automotive Electronics,Appliance and Industrial Control etc.

â—† Customized Designs


Safety Micro Switch,Central Locking Switch,Sealed Waterproof Micro Switch,Subminiature Sealed Micro Switch

Ningbo Jialin Electronics Co.,Ltd , https://www.donghai-switch.com

Posted on