Simple machine learning library / 簡單易用的機器學習套件

Overview

FukuML

https://travis-ci.org/fukuball/fuku-ml.svg?branch=master https://codecov.io/github/fukuball/fuku-ml/coverage.svg?branch=master https://api.codacy.com/project/badge/grade/afc87eff27ab47d6b960ea7b3088c469

Simple machine learning library / 簡單易用的機器學習套件

Installation

$ pip install FukuML

Tutorial

Algorithm

  • Perceptron
    • Perceptron Binary Classification Learning Algorithm
    • Perceptron Multi Classification Learning Algorithm
    • Pocket Perceptron Binary Classification Learning Algorithm
    • Pocket Perceptron Multi Classification Learning Algorithm
  • Regression
    • Linear Regression Learning Algorithm
    • Linear Regression Binary Classification Learning Algorithm
    • Linear Regression Multi Classification Learning Algorithm
    • Ridge Regression Learning Algorithm
    • Ridge Regression Binary Classification Learning Algorithm
    • Ridge Regression Multi Classification Learning Algorithm
    • Kernel Ridge Regression Learning Algorithm
    • Kernel Ridge Regression Binary Classification Learning Algorithm
    • Kernel Ridge Regression Multi Classification Learning Algorithm
  • Logistic Regression
    • Logistic Regression Learning Algorithm
    • Logistic Regression Binary Classification Learning Algorithm
    • Logistic Regression One vs All Multi Classification Learning Algorithm
    • Logistic Regression One vs One Multi Classification Learning Algorithm
    • L2 Regularized Logistic Regression Learning Algorithm
    • L2 Regularized Logistic Regression Binary Classification Learning Algorithm
    • Kernel Logistic Regression Learning Algorithm
  • Support Vector Machine
    • Primal Hard Margin Support Vector Machine Binary Classification Learning Algorithm
    • Dual Hard Margin Support Vector Machine Binary Classification Learning Algorithm
    • Polynomial Kernel Support Vector Machine Binary Classification Learning Algorithm
    • Gaussian Kernel Support Vector Machine Binary Classification Learning Algorithm
    • Soft Polynomial Kernel Support Vector Machine Binary Classification Learning Algorithm
    • Soft Gaussian Kernel Support Vector Machine Binary Classification Learning Algorithm
    • Polynomial Kernel Support Vector Machine Multi Classification Learning Algorithm
    • Gaussian Kernel Support Vector Machine Multi Classification Learning Algorithm
    • Soft Polynomial Kernel Support Vector Machine Multi Classification Learning Algorithm
    • Soft Gaussian Kernel Support Vector Machine Multi Classification Learning Algorithm
    • Probabilistic Support Vector Machine Learning Algorithm
    • Least Squares Support Vector Machine Binary Classification Learning Algorithm
    • Least Squares Support Vector Machine Multi Classification Learning Algorithm
    • Support Vector Regression Learning Algorithm
  • Decision Tree
    • Decision Stump Binary Classification Learning Algorithm
    • AdaBoost Stump Binary Classification Learning Algorithm
    • AdaBoost Decision Tree Classification Learning Algorithm
    • Gradient Boost Decision Tree Regression Learning Algorithm
    • Decision Tree Classification Learning Algorithm
    • Decision Tree Regression Learning Algorithm
    • Random Forest Classification Learning Algorithm
    • Random Forest Regression Learning Algorithm
  • Neural Network
    • Neural Network Learning Algorithm
    • Neural Network Binary Classification Learning Algorithm
  • Accelerator
    • Linear Regression Accelerator
  • Feature Transform
    • Polynomial Feature Transform
    • Legendre Feature Transform
  • Validation
    • 10 Fold Cross Validation
  • Blending
    • Uniform Blending for Classification
    • Linear Blending for Classification
    • Uniform Blending for Regression
    • Linear Blending for Regression

Usage

>>> import numpy as np
# we need numpy as a base libray

>>> import FukuML.PLA as pla
# import FukuML.PLA to do Perceptron Learning

>>> your_input_data_file = '/path/to/your/data/file'
# assign your input data file, please check the data format: https://github.com/fukuball/fuku-ml/blob/master/FukuML/dataset/pla_binary_train.dat

>>> pla_bc = pla.BinaryClassifier()
# new a PLA binary classifier

>>> pla_bc.load_train_data(your_input_data_file)
# load train data

>>> pla_bc.set_param()
# set parameter

>>> pla_bc.init_W()
# init the W

>>> W = pla_bc.train()
# train by Perceptron Learning Algorithm to find best W

>>> test_data = 'Each feature of data x separated with spaces. And the ground truth y put in the end of line separated by a space'
# assign test data, format like this '0.97681 0.10723 0.64385 ........ 0.29556 1'

>>> prediction = pla_bc.prediction(test_data)
# prediction by trained W

>>> print prediction['input_data_x']
# print test data x

>>> print prediction['input_data_y']
# print test data y

>>> print prediction['prediction']
# print the prediction, will find out prediction is the same as pla_bc.test_data_y

For detail, please check https://github.com/fukuball/fuku-ml/blob/master/doc/sample_code.rst

Tests

python test_fuku_ml.py

PEP8

pep8 FukuML/*.py --ignore=E501

Donate

If you find fuku-ml useful, please consider a donation. Thank you!

  • bitcoin: 1BbihQU3CzSdyLSP9bvQq7Pi1z1jTdAaq9
  • eth: 0x92DA3F837bf2F79D422bb8CEAC632208F94cdE33

License

The MIT License (MIT)

Copyright (c) 2016 fukuball

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Comments
  • Random Forest

    Random Forest

    http://www.cnblogs.com/xbf9xbf/p/4716834.html

    https://github.com/kevin-keraudren/randomforest-python

    https://github.com/chandarb/Python-Regression-Tree-Forest/blob/master/random_forest.py

    opened by fukuball 9
  • SVR 實作

    SVR 實作

    https://github.com/misaka-10032/ML/blob/master/hw3/handin/code/svr.py

    http://cvxopt.org/examples/tutorial/qp.html

    http://cvxopt.org/userguide/coneprog.html

    opened by fukuball 3
  • Bump numpy from 1.10.4 to 1.21.0

    Bump numpy from 1.10.4 to 1.21.0

    Bumps numpy from 1.10.4 to 1.21.0.

    Release notes

    Sourced from numpy's releases.

    v1.21.0

    NumPy 1.21.0 Release Notes

    The NumPy 1.21.0 release highlights are

    • continued SIMD work covering more functions and platforms,
    • initial work on the new dtype infrastructure and casting,
    • universal2 wheels for Python 3.8 and Python 3.9 on Mac,
    • improved documentation,
    • improved annotations,
    • new PCG64DXSM bitgenerator for random numbers.

    In addition there are the usual large number of bug fixes and other improvements.

    The Python versions supported for this release are 3.7-3.9. Official support for Python 3.10 will be added when it is released.

    :warning: Warning: there are unresolved problems compiling NumPy 1.21.0 with gcc-11.1 .

    • Optimization level -O3 results in many wrong warnings when running the tests.
    • On some hardware NumPy will hang in an infinite loop.

    New functions

    Add PCG64DXSM BitGenerator

    Uses of the PCG64 BitGenerator in a massively-parallel context have been shown to have statistical weaknesses that were not apparent at the first release in numpy 1.17. Most users will never observe this weakness and are safe to continue to use PCG64. We have introduced a new PCG64DXSM BitGenerator that will eventually become the new default BitGenerator implementation used by default_rng in future releases. PCG64DXSM solves the statistical weakness while preserving the performance and the features of PCG64.

    See upgrading-pcg64 for more details.

    (gh-18906)

    Expired deprecations

    • The shape argument numpy.unravel_index cannot be passed as dims keyword argument anymore. (Was deprecated in NumPy 1.16.)

    ... (truncated)

    Commits
    • b235f9e Merge pull request #19283 from charris/prepare-1.21.0-release
    • 34aebc2 MAINT: Update 1.21.0-notes.rst
    • 493b64b MAINT: Update 1.21.0-changelog.rst
    • 07d7e72 MAINT: Remove accidentally created directory.
    • 032fca5 Merge pull request #19280 from charris/backport-19277
    • 7d25b81 BUG: Fix refcount leak in ResultType
    • fa5754e BUG: Add missing DECREF in new path
    • 61127bb Merge pull request #19268 from charris/backport-19264
    • 143d45f Merge pull request #19269 from charris/backport-19228
    • d80e473 BUG: Removed typing for == and != in dtypes
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • PLA中檢查data是否線性可分的方法

    PLA中檢查data是否線性可分的方法

    我在網上找的資料說,如果數據線性可分,那麼PLA一定會停止,最大步數為 對於R我們可以從數據集中得到,但是對於gamma,我們無法求得,所以我們只知道存在最大步數,但具體是多少無從得知。

    看你的code(PLA.py),似乎是能確定一個上界,可以請問下相關的理論證明麼

    if (self.tune_times > (2 * self.data_num)):
          print("Dataset not linear separable.")
          break
    
    opened by irexyc 1
  • Decision Tree

    Decision Tree

    https://github.com/michaeldorner/DecisionTrees/tree/master/03_Python%20Code

    https://github.com/gumption/Python_for_Data_Science/blob/master/4_Python_Simple_Decision_Tree.ipynb

    http://www.cnblogs.com/xbf9xbf/p/4716834.html

    opened by fukuball 1
  • Adaptive Boosting(Linear Aggregation)

    Adaptive Boosting(Linear Aggregation)

    https://github.com/haiqiong/machine-learning/blob/master/supervised/adaboost.py

    http://blog.csdn.net/maoersong/article/details/24776905

    http://hhtucode.blogspot.tw/2013/04/ml-adaboost-part-2.html

    https://github.com/mazefeng/ml

    http://www.cnblogs.com/xbf9xbf/p/4694364.html

    opened by fukuball 1
  • Logistic Regression L2 Regularization 實作

    Logistic Regression L2 Regularization 實作

    http://blog.smellthedata.com/2009/06/python-logistic-regression-with-l2.html

    http://aimotion.blogspot.tw/2011/11/machine-learning-with-python-logistic.html

    opened by fukuball 1
  • Bump numpy from 1.10.4 to 1.22.0

    Bump numpy from 1.10.4 to 1.22.0

    Bumps numpy from 1.10.4 to 1.22.0.

    Release notes

    Sourced from numpy's releases.

    v1.22.0

    NumPy 1.22.0 Release Notes

    NumPy 1.22.0 is a big release featuring the work of 153 contributors spread over 609 pull requests. There have been many improvements, highlights are:

    • Annotations of the main namespace are essentially complete. Upstream is a moving target, so there will likely be further improvements, but the major work is done. This is probably the most user visible enhancement in this release.
    • A preliminary version of the proposed Array-API is provided. This is a step in creating a standard collection of functions that can be used across application such as CuPy and JAX.
    • NumPy now has a DLPack backend. DLPack provides a common interchange format for array (tensor) data.
    • New methods for quantile, percentile, and related functions. The new methods provide a complete set of the methods commonly found in the literature.
    • A new configurable allocator for use by downstream projects.

    These are in addition to the ongoing work to provide SIMD support for commonly used functions, improvements to F2PY, and better documentation.

    The Python versions supported in this release are 3.8-3.10, Python 3.7 has been dropped. Note that 32 bit wheels are only provided for Python 3.8 and 3.9 on Windows, all other wheels are 64 bits on account of Ubuntu, Fedora, and other Linux distributions dropping 32 bit support. All 64 bit wheels are also linked with 64 bit integer OpenBLAS, which should fix the occasional problems encountered by folks using truly huge arrays.

    Expired deprecations

    Deprecated numeric style dtype strings have been removed

    Using the strings "Bytes0", "Datetime64", "Str0", "Uint32", and "Uint64" as a dtype will now raise a TypeError.

    (gh-19539)

    Expired deprecations for loads, ndfromtxt, and mafromtxt in npyio

    numpy.loads was deprecated in v1.15, with the recommendation that users use pickle.loads instead. ndfromtxt and mafromtxt were both deprecated in v1.17 - users should use numpy.genfromtxt instead with the appropriate value for the usemask parameter.

    (gh-19615)

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump cvxopt from 1.1.8 to 1.2.7

    Bump cvxopt from 1.1.8 to 1.2.7

    Bumps cvxopt from 1.1.8 to 1.2.7.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Installation Error

    Installation Error

    Collecting FukuML Downloading FukuML-0.4.1-py2.py3-none-any.whl (1.4MB) 100% |████████████████████████████████| 1.4MB 490kB/s Collecting cvxopt==1.1.8 (from FukuML) Downloading cvxopt-1.1.8.tar.gz (5.3MB) 100% |████████████████████████████████| 5.3MB 167kB/s Collecting scikit-learn==0.17.1 (from FukuML) Downloading scikit_learn-0.17.1-cp27-cp27mu-manylinux1_x86_64.whl (17.6MB) 100% |████████████████████████████████| 17.6MB 69kB/s Collecting scipy==0.17.0 (from FukuML) Downloading scipy-0.17.0-cp27-cp27mu-manylinux1_x86_64.whl (39.5MB) 100% |████████████████████████████████| 39.5MB 36kB/s Collecting numpy==1.10.4 (from FukuML) Downloading numpy-1.10.4-cp27-cp27mu-manylinux1_x86_64.whl (15.0MB) 100% |████████████████████████████████| 15.0MB 79kB/s Requirement already satisfied: pep8==1.7.0 in /mnt/disk1/anaconda2/lib/python2.7/site-packages (from FukuML) Building wheels for collected packages: cvxopt Running setup.py bdist_wheel for cvxopt ... error Complete output from command /mnt/disk1/anaconda2/bin/python -u -c "import setuptools, tokenize;file='/tmp/pip-build-Yide8J/cvxopt/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" bdist_wheel -d /tmp/tmpr_lP_apip-wheel- --python-tag cp27: running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-2.7 creating build/lib.linux-x86_64-2.7/cvxopt copying src/python/coneprog.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/modeling.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/printing.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/cvxprog.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/info.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/init.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/msk.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/solvers.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/misc.py -> build/lib.linux-x86_64-2.7/cvxopt running build_ext building 'base' extension creating build/temp.linux-x86_64-2.7 creating build/temp.linux-x86_64-2.7/src creating build/temp.linux-x86_64-2.7/src/C gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/mnt/disk1/anaconda2/include/python2.7 -c src/C/base.c -o build/temp.linux-x86_64-2.7/src/C/base.o gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/mnt/disk1/anaconda2/include/python2.7 -c src/C/dense.c -o build/temp.linux-x86_64-2.7/src/C/dense.o gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/mnt/disk1/anaconda2/include/python2.7 -c src/C/sparse.c -o build/temp.linux-x86_64-2.7/src/C/sparse.o src/C/sparse.c: In function ‘sparse_concat’: src/C/sparse.c:368:30: warning: variable ‘blk_ncols’ set but not used [-Wunused-but-set-variable] int_t blk_nrows = 0, blk_ncols = 0; ^ gcc -pthread -shared -L/mnt/disk1/anaconda2/lib -Wl,-rpath=/mnt/disk1/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/src/C/base.o build/temp.linux-x86_64-2.7/src/C/dense.o build/temp.linux-x86_64-2.7/src/C/sparse.o -L/usr/lib -L/mnt/disk1/anaconda2/lib -lm -llapack -lblas -lpython2.7 -o build/lib.linux-x86_64-2.7/cvxopt/base.so /usr/bin/ld: 找不到 -llapack collect2: error: ld returned 1 exit status error: command 'gcc' failed with exit status 1


    Failed building wheel for cvxopt Running setup.py clean for cvxopt Failed to build cvxopt Installing collected packages: cvxopt, scikit-learn, scipy, numpy, FukuML Running setup.py install for cvxopt ... error Complete output from command /mnt/disk1/anaconda2/bin/python -u -c "import setuptools, tokenize;file='/tmp/pip-build-Yide8J/cvxopt/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-vV2hrJ-record/install-record.txt --single-version-externally-managed --compile: running install running build running build_py creating build creating build/lib.linux-x86_64-2.7 creating build/lib.linux-x86_64-2.7/cvxopt copying src/python/coneprog.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/modeling.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/printing.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/cvxprog.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/info.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/init.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/msk.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/solvers.py -> build/lib.linux-x86_64-2.7/cvxopt copying src/python/misc.py -> build/lib.linux-x86_64-2.7/cvxopt running build_ext building 'base' extension creating build/temp.linux-x86_64-2.7 creating build/temp.linux-x86_64-2.7/src creating build/temp.linux-x86_64-2.7/src/C gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/mnt/disk1/anaconda2/include/python2.7 -c src/C/base.c -o build/temp.linux-x86_64-2.7/src/C/base.o gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/mnt/disk1/anaconda2/include/python2.7 -c src/C/dense.c -o build/temp.linux-x86_64-2.7/src/C/dense.o gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/mnt/disk1/anaconda2/include/python2.7 -c src/C/sparse.c -o build/temp.linux-x86_64-2.7/src/C/sparse.o src/C/sparse.c: In function ‘sparse_concat’: src/C/sparse.c:368:30: warning: variable ‘blk_ncols’ set but not used [-Wunused-but-set-variable] int_t blk_nrows = 0, blk_ncols = 0; ^ gcc -pthread -shared -L/mnt/disk1/anaconda2/lib -Wl,-rpath=/mnt/disk1/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/src/C/base.o build/temp.linux-x86_64-2.7/src/C/dense.o build/temp.linux-x86_64-2.7/src/C/sparse.o -L/usr/lib -L/mnt/disk1/anaconda2/lib -lm -llapack -lblas -lpython2.7 -o build/lib.linux-x86_64-2.7/cvxopt/base.so /usr/bin/ld: 找不到 -llapack collect2: error: ld returned 1 exit status error: command 'gcc' failed with exit status 1

    ----------------------------------------
    

    Command "/mnt/disk1/anaconda2/bin/python -u -c "import setuptools, tokenize;file='/tmp/pip-build-Yide8J/cvxopt/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-vV2hrJ-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-Yide8J/cvxopt/

    opened by share123321 5
  • 其他課程

    其他課程

    https://www.youtube.com/watch?v=g-PvXUjD6qg&list=PLlJy-eBtNFt6EuMxFYRiNRS07MCWN5UIA&index=1

    https://www.youtube.com/playlist?list=PLDVUyNKQkt3ro0GUDynHp5ekOAoUZrCsl

    https://www.youtube.com/view_play_list?p=A89DCFA6ADACE599

    opened by fukuball 0
Releases(v0.4.1)
  • v0.4.1(May 1, 2017)

  • v0.4.0(Apr 29, 2017)

  • v0.3.6(Nov 7, 2016)

  • v0.3.3(Oct 28, 2016)

  • v0.3.2(Sep 21, 2016)

  • v0.3.0(Jun 27, 2016)

    • Probabilistic Support Vector Machine Learning Algorithm
    • Least Squares Support Vector Machine Learning Algorithm
    • Support Vector Regression Learning Algorithm
    • Decision Stump Binary Classification Learning Algorithm
    • AdaBoost Stump Binary Classification Learning Algorithm
    • Decision Tree Classification Learning Algorithm
    • Decision Tree Regression Learning Algorithm
    Source code(tar.gz)
    Source code(zip)
  • v0.2.7(Jun 19, 2016)

    • Polynomial Kernel Support Vector Machine Multi Classification Learning Algorithm
    • Gaussian Kernel Support Vector Machine Multi Classification Learning Algorithm
    • Soft Polynomial Kernel Support Vector Machine Multi Classification Learning Algorithm
    • Soft Gaussian Kernel Support Vector Machine Multi Classification Learning Algorithm
    Source code(tar.gz)
    Source code(zip)
  • v0.2.6(Jun 16, 2016)

    • Kernel Ridge Regression Learning Algorithm
    • Kernel Ridge Regression Binary Classification Learning Algorithm
    • Least Squares Support Vector Machine Learning Algorithm
    Source code(tar.gz)
    Source code(zip)
  • v0.2.5(Jun 15, 2016)

  • v0.2.4(Jun 13, 2016)

  • v0.2.3(Jun 10, 2016)

  • v0.2.2(Jun 9, 2016)

  • v0.2.0(May 29, 2016)

    • Soft Polynomial Kernel Support Vector Machine Binary Classification Learning Algorithm
    • Soft Gaussian Kernel Support Vector Machine Binary Classification Learning Algorithm
    Source code(tar.gz)
    Source code(zip)
  • v0.1.8(May 28, 2016)

    • Primal Hard Margin Support Vector Machine Binary Classification Learning Algorithm
    • Dual Hard Margin Support Vector Machine Binary Classification Learning Algorithm
    • Polynomial Kernel Support Vector Machine Binary Classification Learning Algorithm
    • Gaussian Kernel Support Vector Machine Binary Classification Learning Algorithm
    Source code(tar.gz)
    Source code(zip)
  • v0.1.7(May 17, 2016)

  • v0.1.6(Apr 29, 2016)

    • Ridge Regression Learning Algorithm
    • Ridge Regression Binary Classification Learning Algorithm
    • Ridge Regression Multi Classification Learning Algorithm
    • setParam method
    Source code(tar.gz)
    Source code(zip)
  • v0.1.5(Apr 9, 2016)

  • v0.1.4(Apr 3, 2016)

  • v0.1.3(Feb 24, 2016)

    • Pocket Perceptron Multi Classification Learning Algorithm
    • Pocket Perceptron Multi Classification Learning Algorithm with Linear Regression Accelerator
    Source code(tar.gz)
    Source code(zip)
  • v0.1.2(Feb 14, 2016)

  • v0.1.1(Feb 14, 2016)

    • Logistic Regression One vs All Multi Classification Learning Algorithm
    • Logistic Regression One vs All Multi Classification Learning Algorithm with Linear Regression Accelerator
    • Logistic Regression One vs One Multi Classification Learning Algorithm
    • Logistic Regression One vs One Multi Classification Learning Algorithm with Linear Regression Accelerator
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0(Feb 10, 2016)

  • v0.0.9(Feb 9, 2016)

  • v0.0.8(Feb 9, 2016)

  • v0.0.7(Feb 9, 2016)

  • v0.0.6(Jan 24, 2016)

  • v0.0.5(Jan 21, 2016)

  • v0.0.4(Jan 19, 2016)

    • Use OOP to refactor the code
    • Perceptron Learning Algorithm for Binary Classification
    • Pocket Perceptron Learning Algorithm for Binary Classification
    Source code(tar.gz)
    Source code(zip)
  • v0.0.3(Jan 18, 2016)

Owner
Fukuball Lin
我是林志傑,網路上常用的名字是 Fukuball。我使用 PHP 及 Python,最近對機器學習感到興趣。 / 我也是一個快樂的吉他手~ www.fukuball.com
Fukuball Lin
Machine Learning From Scratch. Bare bones NumPy implementations of machine learning models and algorithms with a focus on accessibility. Aims to cover everything from linear regression to deep learning.

Machine Learning From Scratch About Python implementations of some of the fundamental Machine Learning models and algorithms from scratch. The purpose

Erik Linder-Norén 21.8k Jan 9, 2023
Vowpal Wabbit is a machine learning system which pushes the frontier of machine learning with techniques such as online, hashing, allreduce, reductions, learning2search, active, and interactive learning.

This is the Vowpal Wabbit fast online learning code. Why Vowpal Wabbit? Vowpal Wabbit is a machine learning system which pushes the frontier of machin

Vowpal Wabbit 8.1k Jan 6, 2023
A Python Automated Machine Learning tool that optimizes machine learning pipelines using genetic programming.

Master status: Development status: Package information: TPOT stands for Tree-based Pipeline Optimization Tool. Consider TPOT your Data Science Assista

Epistasis Lab at UPenn 8.9k Dec 30, 2022
Scripts of Machine Learning Algorithms from Scratch. Implementations of machine learning models and algorithms using nothing but NumPy with a focus on accessibility. Aims to cover everything from basic to advance.

Algo-ScriptML Python implementations of some of the fundamental Machine Learning models and algorithms from scratch. The goal of this project is not t

Algo Phantoms 81 Nov 26, 2022
This is a Machine Learning Based Hand Detector Project, It Uses Machine Learning Models and Modules Like Mediapipe, Developed By Google!

Machine Learning Hand Detector This is a Machine Learning Based Hand Detector Project, It Uses Machine Learning Models and Modules Like Mediapipe, Dev

Popstar Idhant 3 Feb 25, 2022
💡 Learnergy is a Python library for energy-based machine learning models.

Learnergy: Energy-based Machine Learners Welcome to Learnergy. Did you ever reach a bottleneck in your computational experiments? Are you tired of imp

Gustavo Rosa 57 Nov 17, 2022
PyBrain - Another Python Machine Learning Library.

PyBrain -- the Python Machine Learning Library =============================================== INSTALLATION ------------ Quick answer: make sure you

null 2.8k Dec 31, 2022
A library of extension and helper modules for Python's data analysis and machine learning libraries.

Mlxtend (machine learning extensions) is a Python library of useful tools for the day-to-day data science tasks. Sebastian Raschka 2014-2020 Links Doc

Sebastian Raschka 4.2k Jan 2, 2023
A fast, scalable, high performance Gradient Boosting on Decision Trees library, used for ranking, classification, regression and other machine learning tasks for Python, R, Java, C++. Supports computation on CPU and GPU.

Website | Documentation | Tutorials | Installation | Release Notes CatBoost is a machine learning method based on gradient boosting over decision tree

CatBoost 6.9k Jan 4, 2023
Library for machine learning stacking generalization.

stacked_generalization Implemented machine learning *stacking technic[1]* as handy library in Python. Feature weighted linear stacking is also availab

null 114 Jul 19, 2022
An open source machine learning library for performing regression tasks using RVM technique.

Introduction neonrvm is an open source machine learning library for performing regression tasks using RVM technique. It is written in C programming la

Siavash Eliasi 33 May 31, 2022
A fast, scalable, high performance Gradient Boosting on Decision Trees library, used for ranking, classification, regression and other machine learning tasks for Python, R, Java, C++. Supports computation on CPU and GPU.

Website | Documentation | Tutorials | Installation | Release Notes CatBoost is a machine learning method based on gradient boosting over decision tree

CatBoost 5.7k Feb 12, 2021
mlpack: a scalable C++ machine learning library --

a fast, flexible machine learning library Home | Documentation | Doxygen | Community | Help | IRC Chat Download: current stable version (3.4.2) mlpack

mlpack 4.2k Jan 9, 2023
Image augmentation library in Python for machine learning.

Augmentor is an image augmentation library in Python for machine learning. It aims to be a standalone library that is platform and framework independe

Marcus D. Bloice 4.8k Jan 7, 2023
QuickAI is a Python library that makes it extremely easy to experiment with state-of-the-art Machine Learning models.

QuickAI is a Python library that makes it extremely easy to experiment with state-of-the-art Machine Learning models.

null 152 Jan 2, 2023
An end-to-end machine learning library to directly optimize AUC loss

LibAUC An end-to-end machine learning library for AUC optimization. Why LibAUC? Deep AUC Maximization (DAM) is a paradigm for learning a deep neural n

Andrew 75 Dec 12, 2022
Adversarial Robustness Toolbox (ART) - Python Library for Machine Learning Security - Evasion, Poisoning, Extraction, Inference - Red and Blue Teams

Adversarial Robustness Toolbox (ART) is a Python library for Machine Learning Security. ART provides tools that enable developers and researchers to defend and evaluate Machine Learning models and applications against the adversarial threats of Evasion, Poisoning, Extraction, and Inference. ART supports all popular machine learning frameworks (TensorFlow, Keras, PyTorch, MXNet, scikit-learn, XGBoost, LightGBM, CatBoost, GPy, etc.), all data types (images, tables, audio, video, etc.) and machine learning tasks (classification, object detection, speech recognition, generation, certification, etc.).

null 3.4k Jan 4, 2023
A machine learning library for spiking neural networks. Supports training with both torch and jax pipelines, and deployment to neuromorphic hardware.

Rockpool Rockpool is a Python package for developing signal processing applications with spiking neural networks. Rockpool allows you to build network

SynSense 21 Dec 14, 2022
AgML is a comprehensive library for agricultural machine learning

AgML is a comprehensive library for agricultural machine learning. Currently, AgML provides access to a wealth of public agricultural datasets for common agricultural deep learning tasks.

Plant AI and Biophysics Lab 1 Jul 7, 2022