Skip to main content

In my view, Python is a good choice for building the machine learning part (you don't say anything about the rest of your application, so I can't comment of that).

NumPyNumPy is powerful and mature, and has lots of numerical packages built on top of it.

For example, SciKitsSciKits is a suite of such packages. It incorporates scikit-learnscikit-learn, which is

a Python module integrating classic machine learning algorithms in the tightly-knit scientific Python world (numpy, scipy, matplotlib). It aims to provide simple and efficient solutions to learning problems, accessible to everybody and reusable in various contexts: machine-learning as a versatile tool for science and engineering

With regards to performance, native NumPy operations are on par with their BLASBLAS counterparts (they basically are wrappers around BLAS). Thus, NumPy code that can be expressed in terms of vector/matrix operations tends to be as fast as comparable C/Fortran code.

On the flip side, code expressed as Python loops can be slow. Additionally, it is hard to speed things uphard to speed things up by using multiple threads. However, there are ways around both of these shortcomings: using multiprocessingmultiprocessing instead of threading, numexprnumexpr, CythonCython and so on.

In my view, Python is a good choice for building the machine learning part (you don't say anything about the rest of your application, so I can't comment of that).

NumPy is powerful and mature, and has lots of numerical packages built on top of it.

For example, SciKits is a suite of such packages. It incorporates scikit-learn, which is

a Python module integrating classic machine learning algorithms in the tightly-knit scientific Python world (numpy, scipy, matplotlib). It aims to provide simple and efficient solutions to learning problems, accessible to everybody and reusable in various contexts: machine-learning as a versatile tool for science and engineering

With regards to performance, native NumPy operations are on par with their BLAS counterparts (they basically are wrappers around BLAS). Thus, NumPy code that can be expressed in terms of vector/matrix operations tends to be as fast as comparable C/Fortran code.

On the flip side, code expressed as Python loops can be slow. Additionally, it is hard to speed things up by using multiple threads. However, there are ways around both of these shortcomings: using multiprocessing instead of threading, numexpr, Cython and so on.

In my view, Python is a good choice for building the machine learning part (you don't say anything about the rest of your application, so I can't comment of that).

NumPy is powerful and mature, and has lots of numerical packages built on top of it.

For example, SciKits is a suite of such packages. It incorporates scikit-learn, which is

a Python module integrating classic machine learning algorithms in the tightly-knit scientific Python world (numpy, scipy, matplotlib). It aims to provide simple and efficient solutions to learning problems, accessible to everybody and reusable in various contexts: machine-learning as a versatile tool for science and engineering

With regards to performance, native NumPy operations are on par with their BLAS counterparts (they basically are wrappers around BLAS). Thus, NumPy code that can be expressed in terms of vector/matrix operations tends to be as fast as comparable C/Fortran code.

On the flip side, code expressed as Python loops can be slow. Additionally, it is hard to speed things up by using multiple threads. However, there are ways around both of these shortcomings: using multiprocessing instead of threading, numexpr, Cython and so on.

added 250 characters in body
Source Link
NPE
  • 5.6k
  • 6
  • 38
  • 45

In my view, Python is a good choice for building the machine learning part (you don't say anything about the rest of your application, so I can't comment of that).

NumPy is powerful and mature, and has lots of numerical packages built on top of it.

For example, SciKits is a suite of such packages. It incorporates scikit-learn, which is

a Python module integrating classic machine learning algorithms in the tightly-knit scientific Python world (numpy, scipy, matplotlib). It aims to provide simple and efficient solutions to learning problems, accessible to everybody and reusable in various contexts: machine-learning as a versatile tool for science and engineering

With regards to performance, native NumPy operations are on par with their BLAS counterparts (they basically are wrappers around BLAS). Thus, NumPy code that can be expressed in terms of vector/matrix operations tends to be as fast as comparable C/Fortran code.

On the other handflip side, code expressed as Python loops can be slow. Additionally, it is hard to speed up Python codehard to speed things up by using multiple threads. However, there are ways around both of these shortcomings: using multiprocessing instead of threading, numexpr, Cython and so on.

In my view, Python is a good choice for building the machine learning part (you don't say anything about the rest of your application, so I can't comment of that).

NumPy is powerful and mature, and has lots of numerical packages built on top of it.

For example, SciKits is a suite of such packages. It incorporates scikit-learn, which is

a Python module integrating classic machine learning algorithms in the tightly-knit scientific Python world (numpy, scipy, matplotlib). It aims to provide simple and efficient solutions to learning problems, accessible to everybody and reusable in various contexts: machine-learning as a versatile tool for science and engineering

With regards to performance, native NumPy operations are on par with their BLAS counterparts (they basically are wrappers around BLAS). Thus, NumPy code that can be expressed in terms of vector/matrix operations tends to be as fast as comparable C/Fortran code.

On the other hand, code expressed as Python loops can be slow. Additionally, it is hard to speed up Python code by using multiple threads.

In my view, Python is a good choice for building the machine learning part (you don't say anything about the rest of your application, so I can't comment of that).

NumPy is powerful and mature, and has lots of numerical packages built on top of it.

For example, SciKits is a suite of such packages. It incorporates scikit-learn, which is

a Python module integrating classic machine learning algorithms in the tightly-knit scientific Python world (numpy, scipy, matplotlib). It aims to provide simple and efficient solutions to learning problems, accessible to everybody and reusable in various contexts: machine-learning as a versatile tool for science and engineering

With regards to performance, native NumPy operations are on par with their BLAS counterparts (they basically are wrappers around BLAS). Thus, NumPy code that can be expressed in terms of vector/matrix operations tends to be as fast as comparable C/Fortran code.

On the flip side, code expressed as Python loops can be slow. Additionally, it is hard to speed things up by using multiple threads. However, there are ways around both of these shortcomings: using multiprocessing instead of threading, numexpr, Cython and so on.

Source Link
NPE
  • 5.6k
  • 6
  • 38
  • 45

In my view, Python is a good choice for building the machine learning part (you don't say anything about the rest of your application, so I can't comment of that).

NumPy is powerful and mature, and has lots of numerical packages built on top of it.

For example, SciKits is a suite of such packages. It incorporates scikit-learn, which is

a Python module integrating classic machine learning algorithms in the tightly-knit scientific Python world (numpy, scipy, matplotlib). It aims to provide simple and efficient solutions to learning problems, accessible to everybody and reusable in various contexts: machine-learning as a versatile tool for science and engineering

With regards to performance, native NumPy operations are on par with their BLAS counterparts (they basically are wrappers around BLAS). Thus, NumPy code that can be expressed in terms of vector/matrix operations tends to be as fast as comparable C/Fortran code.

On the other hand, code expressed as Python loops can be slow. Additionally, it is hard to speed up Python code by using multiple threads.