Royce  Reinger

Royce Reinger


Deepjazz: Deep Learning Driven Jazz Generation using Keras & Theano!

Note: deepjazz is no longer being actively developed. It may be refactored at some point in the future. Goodbye and thank you for your interest 😢


Using Keras & Theano for deep learning driven jazz generation

I built deepjazz in 36 hours at a hackathon. It uses Keras & Theano, two deep learning libraries, to generate jazz music. Specifically, it builds a two-layer LSTM, learning from the given MIDI file. It uses deep learning, the AI tech that powers Google's AlphaGo and IBM's Watson, to make music -- something that's considered as deeply human.

Check out deepjazz's music on SoundCloud!



Run on CPU with command:

python [# of epochs]

Run on GPU with command:

THEANO_FLAGS=mode=FAST_RUN,device=gpu,floatX=float32 python [# of epochs]

Note: running Keras/Theano on GPU is formally supported for only NVIDIA cards (CUDA backend).

Note: must be modified to work with other MIDI files (the relevant "melody" MIDI part needs to be selected). The ability to handle this natively is a planned feature.


Ji-Sung Kim
Princeton University, Department of Computer Science
hello (at)


This project develops a lot of preprocessing code (with permission) from Evan Chow's jazzml. Thank you Evan! Public examples from the Keras documentation were also referenced.

Code License, Media Copyright

Code is licensed under the Apache License 2.0
Images and other media are copyrighted (Ji-Sung Kim)

Download Details:

Author: jisungk
Source Code: 
License: Apache-2.0 license

#machinelearning #theano #music #deeplearning #keras 

Deepjazz: Deep Learning Driven Jazz Generation using Keras & Theano!
Royce  Reinger

Royce Reinger


Keras-vis: Neural Network Visualization toolkit for Keras

Keras Visualization Toolkit

keras-vis is a high-level toolkit for visualizing and debugging your trained keras neural net models. Currently supported visualizations include:

  • Activation maximization
  • Saliency maps
  • Class activation maps

All visualizations by default support N-dimensional image inputs. i.e., it generalizes to N-dim image inputs to your model.

The toolkit generalizes all of the above as energy minimization problems with a clean, easy to use, and extendable interface. Compatible with both theano and tensorflow backends with 'channels_first', 'channels_last' data format.

Getting Started

In image backprop problems, the goal is to generate an input image that minimizes some loss function. Setting up an image backprop problem is easy.

Define weighted loss function

Various useful loss functions are defined in losses. A custom loss function can be defined by implementing Loss.build_loss.

from vis.losses import ActivationMaximization
from vis.regularizers import TotalVariation, LPNorm

filter_indices = [1, 2, 3]

# Tuple consists of (loss_function, weight)
# Add regularizers as needed.
losses = [
    (ActivationMaximization(keras_layer, filter_indices), 1),
    (LPNorm(model.input), 10),
    (TotalVariation(model.input), 10)

Configure optimizer to minimize weighted loss

In order to generate natural looking images, image search space is constrained using regularization penalties. Some common regularizers are defined in regularizers. Like loss functions, custom regularizer can be defined by implementing Loss.build_loss.

from vis.optimizer import Optimizer

optimizer = Optimizer(model.input, losses)
opt_img, grads, _ = optimizer.minimize()

Concrete examples of various supported visualizations can be found in examples folder.


Install keras with theano or tensorflow backend. Note that this library requires Keras > 2.0

Install keras-vis

From sources

sudo python install

PyPI package

sudo pip install keras-vis


NOTE: The links are currently broken and the entire documentation is being reworked. Please see examples/ for samples.

Neural nets are black boxes. In the recent years, several approaches for understanding and visualizing Convolutional Networks have been developed in the literature. They give us a way to peer into the black boxes, diagnose mis-classifications, and assess whether the network is over/under fitting.

Guided backprop can also be used to create trippy art, neural/texture style transfer among the list of other growing applications.

Various visualizations, documented in their own pages, are summarized here.

Conv filter visualization

Convolutional filters learn 'template matching' filters that maximize the output when a similar template pattern is found in the input image. Visualize those templates via Activation Maximization.

Dense layer visualization

How can we assess whether a network is over/under fitting or generalizing well?

Attention Maps

How can we assess whether a network is attending to correct parts of the image in order to generate a decision?

Generating animated gif of optimization progress

It is possible to generate an animated gif of optimization progress by leveraging callbacks. Following example shows how to visualize the activation maximization for 'ouzel' class (output_index: 20).

from keras.applications import VGG16

from vis.losses import ActivationMaximization
from vis.regularizers import TotalVariation, LPNorm
from vis.input_modifiers import Jitter
from vis.optimizer import Optimizer
from vis.callbacks import GifGenerator

# Build the VGG16 network with ImageNet weights
model = VGG16(weights='imagenet', include_top=True)
print('Model loaded.')

# The name of the layer we want to visualize
# (see model definition in
layer_name = 'predictions'
layer_dict = dict([(, layer) for layer in model.layers[1:]])
output_class = [20]

losses = [
    (ActivationMaximization(layer_dict[layer_name], output_class), 2),
    (LPNorm(model.input), 10),
    (TotalVariation(model.input), 10)
opt = Optimizer(model.input, losses)
opt.minimize(max_iter=500, verbose=True, input_modifiers=[Jitter()], callbacks=[GifGenerator('opt_progress')])

Notice how the output jitters around? This is because we used Jitter, a kind of ImageModifier that is known to produce crisper activation maximization images. As an exercise, try:

  • Without Jitter
  • Varying various loss weights



Please cite keras-vis in your publications if it helped your research. Here is an example BibTeX entry:

  author={Kotikalapudi, Raghavendra and contributors},

Quick links

Download Details:

Author: Raghakot
Source Code: 
License: MIT license

#machinelearning #visualization #theano #deeplearning #tensorflow 

Keras-vis: Neural Network Visualization toolkit for Keras
Hoang  Kim

Hoang Kim


Hơn 8 Thư Viện Python Hàng đầu Cho Machine Learning

Hơn 8 thư viện Python hàng đầu cho máy học để học là TensorFlow, Scikit-learning, Numpy, Keras, PyTorch, LightGBM, Eli5, SciPy, Theano, Pandas

Python là một đại dương các thư viện phục vụ nhiều mục đích khác nhau và là một nhà phát triển Python, bạn phải có kiến ​​thức vững chắc về những thư viện tốt nhất. Để giúp bạn trong việc này, đây là bài viết mang đến cho bạn 10 Thư viện Python hàng đầu dành cho học máy:

Giới thiệu

Python là một trong những ngôn ngữ lập trình phổ biến và được sử dụng rộng rãi và đã thay thế nhiều ngôn ngữ lập trình trong ngành.

Có rất nhiều lý do khiến Python được các nhà phát triển yêu thích và một trong số đó là nó có một bộ sưu tập thư viện lớn đáng kinh ngạc mà người dùng có thể làm việc. 

Dưới đây là một số lý do quan trọng giải thích tại sao Python lại phổ biến:

  • Python có một bộ sưu tập thư viện khổng lồ.
  • Python là một ngôn ngữ lập trình cấp độ mới bắt đầu vì tính đơn giản và dễ sử dụng.
  • Từ phát triển đến triển khai và duy trì Python đều mong muốn các nhà phát triển của họ làm việc hiệu quả hơn.
  • Tính di động là một lý do khác cho sự phổ biến rộng rãi của Python.
  • Cú pháp lập trình của Python rất đơn giản để học và có mức độ cao khi chúng ta so sánh nó với C, Java và C ++.

Do đó, chỉ một vài dòng mã tạo ra các ứng dụng mới.

Sự đơn giản của Python đã thu hút nhiều nhà phát triển tạo các thư viện mới cho học máy. Do bộ sưu tập thư viện khổng lồ nên Python đang trở nên cực kỳ phổ biến đối với các chuyên gia học máy.

Vì vậy, thư viện đầu tiên trong blog 10 thư viện Python hàng đầu của chúng tôi là TensorFlow.


10 thư viện Python hàng đầu - Edureka

TensorFlow là gì?

Nếu bạn hiện đang làm việc trên một dự án học máy bằng Python, thì bạn có thể đã nghe nói về thư viện nguồn mở phổ biến này được gọi là TensorFlow.

Thư viện này được phát triển bởi Google với sự cộng tác của Brain Team. TensorFlow là một phần của hầu hết mọi ứng dụng Google dành cho học máy.

TensorFlow hoạt động giống như một thư viện tính toán để viết các thuật toán mới liên quan đến một số lượng lớn các hoạt động tensor, vì mạng nơ-ron có thể dễ dàng được thể hiện dưới dạng đồ thị tính toán, chúng có thể được thực hiện bằng cách sử dụng TensorFlow như một chuỗi hoạt động trên Tensors. Ngoài ra, tenxơ là ma trận N chiều đại diện cho dữ liệu của bạn.

Đặc điểm của TensorFlow

TensorFlow được tối ưu hóa cho tốc độ, nó sử dụng các kỹ thuật như XLA cho các phép toán đại số tuyến tính nhanh chóng.

1. Cấu trúc đáp ứng

Với TensorFlow, chúng ta có thể dễ dàng hình dung từng phần của biểu đồ mà không phải là một tùy chọn khi sử dụng  Numpy  hoặc  SciKit .

2. Linh hoạt

Một trong những Tính năng Tensorflow rất quan trọng là nó linh hoạt trong khả năng hoạt động, có nghĩa là nó có tính mô đun và các phần của nó mà bạn muốn tạo độc lập, nó cung cấp cho bạn tùy chọn đó.

3. Dễ dàng đào tạo

Nó có thể dễ dàng đào tạo trên CPU cũng như  GPU  cho tính toán phân tán.

4. Đào tạo mạng thần kinh song song

TensorFlow cung cấp pipelining theo nghĩa là bạn có thể đào tạo nhiều  mạng nơ-ron và nhiều GPU, điều này làm cho các mô hình hoạt động rất hiệu quả trên các hệ thống quy mô lớn.

5. Cộng đồng lớn

Không cần phải nói, nếu nó được phát triển bởi Google, thì đã có một đội ngũ kỹ sư phần mềm lớn làm việc liên tục để cải thiện độ ổn định.

6. Nguồn mở

Điều tốt nhất về thư viện máy học này là nó là mã nguồn mở nên bất kỳ ai cũng có thể sử dụng nó miễn là họ có kết nối internet.

Công dụng của TensorFlow?

Bạn đang sử dụng TensorFlow hàng ngày nhưng gián tiếp với các ứng dụng như Google Voice Search hoặc Google Photos. Đây là những ứng dụng của TensorFlow.

Tất cả các thư viện được tạo trong TensorFlow được viết bằng C và C ++. Tuy nhiên, nó có một giao diện người dùng phức tạp cho Python. Mã Python của bạn sẽ được biên dịch và sau đó được thực thi trên công cụ thực thi phân tán TensorFlow được xây dựng bằng C và C ++.

Số lượng ứng dụng của TensorFlow theo nghĩa đen là không giới hạn và đó là vẻ đẹp của TensorFlow.

Vì vậy, tiếp theo trên blog '10 Thư viện Python hàng đầu' này, chúng tôi có Scikit-Learn!


10 thư viện Python hàng đầu - Edureka

Scikit-learning là gì?

Nó là một thư viện Python được liên kết với NumPy và SciPy. Nó được coi là một trong những thư viện tốt nhất để làm việc với dữ liệu phức tạp.

Có rất nhiều thay đổi đang được thực hiện trong thư viện này. Một sửa đổi là tính năng xác thực chéo, cung cấp khả năng sử dụng nhiều hơn một chỉ số. Rất nhiều phương pháp đào tạo như hồi quy hậu cần và các nước láng giềng gần nhất đã nhận được một số cải tiến nhỏ.

Các tính năng của Scikit-Learn

1. Xác nhận chéo:  Có nhiều phương pháp khác nhau để kiểm tra tính chính xác của các mô hình được giám sát trên dữ liệu không nhìn thấy.

2. Các thuật toán học không giám sát:  Một lần nữa, có một lượng lớn các thuật toán được cung cấp - bắt đầu từ phân nhóm, phân tích nhân tố, phân tích thành phần chính cho đến các mạng thần kinh không được giám sát.

3. Trích xuất tính năng:  Hữu ích để trích xuất các tính năng từ hình ảnh và văn bản (ví dụ: Túi từ)

Chúng tôi đang sử dụng Scikit-Learn ở đâu?

Nó chứa rất nhiều thuật toán để thực hiện các tác vụ học máy và khai thác dữ liệu tiêu chuẩn như giảm kích thước, phân loại, hồi quy, phân cụm và lựa chọn mô hình.

Vì vậy, tiếp theo trên blog '10 Thư viện Python hàng đầu' này, chúng tôi có Numpy!


10 thư viện Python hàng đầu - Edureka

Numpy là gì?

Numpy được coi là một trong những thư viện học máy phổ biến nhất trong Python.

TensorFlow và các thư viện khác sử dụng Numpy nội bộ để thực hiện nhiều thao tác trên Tensors. Giao diện mảng là tính năng tốt nhất và quan trọng nhất của Numpy.

Đặc điểm của Numpy

  1. Tương tác: Numpy rất tương tác và dễ sử dụng.
  2. Toán học: Làm cho việc triển khai toán học phức tạp trở nên rất đơn giản.
  3. Trực quan: Làm cho việc viết mã trở nên thực sự dễ dàng và việc nắm bắt các khái niệm cũng dễ dàng.
  4. Nhiều tương tác: Được sử dụng rộng rãi, do đó có rất nhiều đóng góp cho nguồn mở.

Công dụng của Numpy?

Giao diện này có thể được sử dụng để thể hiện hình ảnh, sóng âm thanh và các luồng thô nhị phân khác dưới dạng một mảng số thực trong N-chiều.

Để triển khai thư viện này cho việc học máy, có kiến ​​thức về Numpy là điều quan trọng đối với các nhà phát triển ngăn xếp đầy đủ.

Vì vậy, tiếp theo trên blog '10 Thư viện Python hàng đầu' này, chúng tôi có Keras!


10 thư viện Python hàng đầu - Edureka

Keras là gì?

Keras được coi là một trong những thư viện học máy thú vị nhất trong Python. Nó cung cấp một cơ chế dễ dàng hơn để thể hiện mạng nơ-ron. Keras cũng cung cấp một số tiện ích tốt nhất để biên dịch mô hình, xử lý tập dữ liệu, trực quan hóa đồ thị và hơn thế nữa.

Trong phần phụ trợ, Keras sử dụng Theano hoặc TensorFlow bên trong. Một số mạng nơ-ron phổ biến nhất như CNTK cũng có thể được sử dụng. Keras tương đối chậm khi chúng tôi so sánh nó với các thư viện học máy khác. Bởi vì nó tạo ra một đồ thị tính toán bằng cách sử dụng cơ sở hạ tầng back-end và sau đó tận dụng nó để thực hiện các hoạt động. Tất cả các mẫu ở Keras đều là hàng xách tay.

Đặc điểm của Keras

  • Nó chạy mượt mà trên cả CPU và GPU.
  • Keras hỗ trợ hầu hết các mô hình của mạng nơ-ron - được kết nối đầy đủ, tích hợp, gộp, lặp lại, nhúng, v.v. Hơn nữa, các mô hình này có thể được kết hợp để xây dựng các mô hình phức tạp hơn.
  • Keras, có bản chất mô-đun, cực kỳ biểu cảm, linh hoạt và thích nghiên cứu đổi mới.
  • Keras là một khung hoàn toàn dựa trên Python, giúp bạn dễ dàng gỡ lỗi và khám phá.

Chúng ta đang sử dụng Keras ở đâu?

Bạn đã thường xuyên tương tác với các tính năng được xây dựng bằng Keras - tính năng này đang được sử dụng tại Netflix, Uber, Yelp, Instacart, Zocdoc, Square và nhiều tính năng khác. Nó đặc biệt phổ biến trong số các công ty khởi nghiệp đặt học sâu vào cốt lõi của sản phẩm của họ.

Keras chứa nhiều triển khai các khối xây dựng mạng nơ-ron thường được sử dụng như các lớp, mục tiêu, chức năng kích hoạt, trình tối ưu hóa và một loạt các công cụ giúp làm việc với dữ liệu hình ảnh và văn bản dễ dàng hơn. 

Thêm vào đó, nó cung cấp nhiều tập dữ liệu được xử lý trước và các mô hình được đào tạo trước như MNIST, VGG, Inception, SqueezeNet, ResNet, v.v.

Keras cũng là người được các nhà nghiên cứu học sâu yêu thích, đứng ở vị trí thứ 2. Keras cũng đã được các nhà nghiên cứu tại các tổ chức khoa học lớn, đặc biệt là CERN và NASA chấp nhận.

Vì vậy, tiếp theo trên blog '10 thư viện Python hàng đầu' này, chúng tôi có PyTorch!


10 thư viện Python hàng đầu - Edureka

PyTorch là gì?

PyTorch là thư viện học máy lớn nhất cho phép các nhà phát triển thực hiện tính toán tensor sau khi tăng tốc lần thứ i của GPU, tạo đồ thị tính toán động và tính toán độ dốc tự động. Ngoài ra, PyTorch cung cấp các API phong phú để giải quyết các vấn đề ứng dụng liên quan đến mạng nơ-ron.

Thư viện máy học này dựa trên Torch, là một thư viện máy mã nguồn mở được triển khai bằng C với trình bao bọc trong Lua.

Thư viện máy này bằng Python đã được giới thiệu vào năm 2017, và kể từ khi thành lập, thư viện đang trở nên phổ biến và thu hút ngày càng nhiều nhà phát triển máy học.

Các tính năng của PyTorch

Kết hợp phía trước

Giao diện người dùng kết hợp mới cung cấp tính linh hoạt và dễ sử dụng trong chế độ háo hức, đồng thời chuyển đổi liền mạch sang chế độ đồ thị để tăng tốc độ, tối ưu hóa và chức năng trong môi trường thời gian chạy C ++.

Đào tạo phân tán

Tối ưu hóa hiệu suất trong cả nghiên cứu và sản xuất bằng cách tận dụng hỗ trợ gốc để thực thi không đồng bộ các hoạt động tập thể và giao tiếp ngang hàng có thể truy cập từ Python và C ++.

Python đầu tiên

PyTorch không phải là một liên kết Python vào một khung C ++ nguyên khối. Nó được xây dựng để tích hợp sâu vào Python để có thể được sử dụng với các thư viện và gói phổ biến như Cython và Numba.

Thư viện và công cụ

Một cộng đồng tích cực gồm các nhà nghiên cứu và nhà phát triển đã xây dựng một hệ sinh thái phong phú gồm các công cụ và thư viện để mở rộng PyTorch và hỗ trợ phát triển trong các lĩnh vực từ thị giác máy tính đến học tăng cường.

Các ứng dụng của PyTorch?

PyTorch chủ yếu được sử dụng cho các ứng dụng như xử lý ngôn ngữ tự nhiên.

Nó chủ yếu được phát triển bởi nhóm nghiên cứu trí tuệ nhân tạo của Facebook và phần mềm “Pyro” của Uber để lập trình xác suất được xây dựng dựa trên nó.

PyTorch đang vượt trội hơn TensorFlow về nhiều mặt và nó đang được rất nhiều người chú ý trong những ngày gần đây.

Vì vậy, tiếp theo trên blog '10 thư viện Python hàng đầu' này, chúng tôi có LightGBM!


10 thư viện Python hàng đầu - Edureka

LightGBM là gì?

Gradient Boosting là một trong những thư viện học máy tốt nhất và phổ biến nhất, giúp các nhà phát triển xây dựng các thuật toán mới bằng cách sử dụng các mô hình cơ bản được xác định lại và cụ thể là cây quyết định. Do đó, có những thư viện đặc biệt có sẵn để thực hiện nhanh chóng và hiệu quả phương pháp này.

Các thư viện này là LightGBM, XGBoost và CatBoost. Tất cả các thư viện này là đối thủ cạnh tranh giúp giải quyết một vấn đề chung và có thể được sử dụng theo cách gần như tương tự.

Các tính năng của LightGBM

Tính toán rất nhanh đảm bảo hiệu quả sản xuất cao.

Trực quan, do đó làm cho nó thân thiện với người dùng.

Đào tạo nhanh hơn nhiều thư viện học sâu khác.

Sẽ không tạo ra lỗi khi bạn xem xét các giá trị NaN và các giá trị chuẩn khác.

Các ứng dụng của LightGBM là gì?

Thư viện này cung cấp khả năng mở rộng, được tối ưu hóa và triển khai nhanh chóng của tăng độ dốc, điều này làm cho nó trở nên phổ biến trong số các nhà phát triển máy học. Bởi vì hầu hết các nhà phát triển toàn diện về máy học đã giành chiến thắng trong các cuộc thi máy học bằng cách sử dụng các thuật toán này.

Vì vậy, tiếp theo trên blog '10 Thư viện Python hàng đầu' này, chúng tôi có Eli5!


10 thư viện Python hàng đầu - Edureka

Eli5 là gì?

Thông thường, các kết quả dự đoán mô hình máy học không chính xác và thư viện máy học Eli5 được xây dựng bằng Python sẽ giúp vượt qua thách thức này. Nó là sự kết hợp của trực quan hóa và gỡ lỗi tất cả các mô hình học máy và theo dõi tất cả các bước làm việc của một thuật toán.

Đặc điểm của Eli5

Hơn nữa, Eli5 hỗ trợ các thư viện wother XGBoost, lightning, scikit-learning và sklearn-crfsuite. 

Các ứng dụng của Eli5 là gì?

Các ứng dụng toán học đòi hỏi nhiều tính toán trong thời gian ngắn.

Eli5 đóng một vai trò quan trọng trong đó có sự phụ thuộc với các gói Python khác.

Các ứng dụng kế thừa và triển khai các phương pháp luận mới hơn trong các lĩnh vực khác nhau.

Vì vậy, tiếp theo trên blog '10 Thư viện Python hàng đầu' này, chúng tôi có SciPy!


10 thư viện Python hàng đầu - Edureka

SciPy là gì?

SciPy là một thư viện học máy dành cho các kỹ sư và nhà phát triển ứng dụng. Tuy nhiên, bạn vẫn cần biết sự khác biệt giữa thư viện SciPy và ngăn xếp SciPy. Thư viện SciPy chứa các mô-đun để tối ưu hóa, đại số tuyến tính, tích hợp và thống kê.

Tính năng của SciPy

Tính năng chính của thư viện SciPy là nó được phát triển bằng cách sử dụng NumPy và mảng của nó tận dụng tối đa NumPy.

Ngoài ra, SciPy cung cấp tất cả các quy trình số hiệu quả như tối ưu hóa, tích hợp số và nhiều quy trình khác bằng cách sử dụng các mô-đun con cụ thể của nó.

Tất cả các chức năng trong tất cả các mô-đun con của SciPy đều được ghi lại đầy đủ.

Các ứng dụng của SciPy?

SciPy là một thư viện sử dụng NumPy cho mục đích giải các hàm toán học. SciPy sử dụng mảng NumPy làm cấu trúc dữ liệu cơ bản và đi kèm với các mô-đun cho các tác vụ thường dùng khác nhau trong lập trình khoa học.

Các tác vụ bao gồm đại số tuyến tính, tích phân (giải tích), giải phương trình vi phân thông thường và xử lý tín hiệu được thực hiện dễ dàng bởi SciPy.

Vì vậy, tiếp theo trên blog '10 Thư viện Python hàng đầu' này, chúng tôi có Theano!


10 thư viện Python hàng đầu - Edureka

Theano là gì?

Theano là một thư viện máy học khung tính toán bằng Python để tính toán các mảng đa chiều. Theano hoạt động tương tự như TensorFlow, nhưng nó không hiệu quả bằng TensorFlow. Vì không có khả năng phù hợp với môi trường sản xuất.

Hơn nữa, Theano cũng có thể được sử dụng trên môi trường phân tán hoặc song song tương tự như TensorFlow.

Đặc điểm của Theano

  • Tích hợp chặt chẽ với NumPy  - Khả năng sử dụng hoàn toàn các mảng NumPy trong các hàm do Theano biên dịch.
  • Sử dụng GPU trong suốt  - Thực hiện các phép tính chuyên sâu về dữ liệu nhanh hơn nhiều so với trên CPU.
  • Phân biệt biểu tượng hiệu quả  - Theano thực hiện các dẫn xuất của bạn cho các hàm với một hoặc nhiều đầu vào.
  • Tối ưu hóa tốc độ và độ ổn định  - Nhận câu trả lời phù hợp  log(1+x) ngay cả khi  x rất nhỏ. Đây chỉ là một trong những ví dụ cho thấy sự ổn định của Theano.
  • Tạo mã động C  - Đánh giá các biểu thức nhanh hơn bao giờ hết, do đó, tăng hiệu quả lên rất nhiều.
  • Kiểm tra đơn vị rộng rãi và tự xác minh  - Phát hiện và chẩn đoán nhiều loại lỗi và sự không rõ ràng trong mô hình.

Chúng tôi đang sử dụng Theano ở đâu?

Cú pháp thực tế của các biểu thức Theano là tượng trưng, ​​có thể gây khó khăn cho những người mới bắt đầu sử dụng để phát triển phần mềm thông thường. Cụ thể, biểu thức được định nghĩa theo nghĩa trừu tượng, được biên dịch và sau đó thực sự được sử dụng để thực hiện các phép tính.

Nó đặc biệt xử lý các loại tính toán cho các thuật toán mạng nơ-ron lớn trong Học sâu. Đây là một trong những thư viện đầu tiên của loại hình này (bắt đầu phát triển vào năm 2007) và là một tiêu chuẩn công nghiệp cho nghiên cứu và phát triển Deep Learning.

Theano là thế mạnh của nhiều dự án mạng nơ-ron ngày nay và sự phổ biến của Theano chỉ ngày càng phát triển theo thời gian.

Và cuối cùng, trên blog '10 Thư viện Python hàng đầu' này, chúng tôi có Gấu trúc!

Gấu trúc

10 thư viện Python hàng đầu - Edureka

Gấu trúc là gì?

Pandas là một thư viện học máy bằng Python cung cấp cấu trúc dữ liệu cấp cao và nhiều công cụ để phân tích. Một trong những tính năng tuyệt vời của thư viện này là khả năng dịch các hoạt động phức tạp với dữ liệu bằng cách sử dụng một hoặc hai lệnh. Gấu trúc có rất nhiều phương pháp sẵn có để nhóm, kết hợp dữ liệu và lọc, cũng như chức năng chuỗi thời gian.

Đặc điểm của gấu trúc

Gấu trúc đảm bảo rằng toàn bộ quá trình thao tác dữ liệu sẽ dễ dàng hơn. Hỗ trợ cho các hoạt động như Lập chỉ mục lại, Lặp lại, Sắp xếp, Tổng hợp, Kết hợp và Hình ảnh hóa là một trong những tính năng nổi bật của Pandas.

Ứng dụng của gấu trúc?

Hiện tại, có ít bản phát hành thư viện gấu trúc hơn bao gồm hàng trăm tính năng mới, sửa lỗi, cải tiến và thay đổi trong API. Những cải tiến ở gấu trúc liên quan đến khả năng nhóm và sắp xếp dữ liệu, chọn đầu ra phù hợp nhất cho phương pháp áp dụng và cung cấp hỗ trợ để thực hiện các thao tác loại tùy chỉnh.

Phân tích dữ liệu trong số mọi thứ khác là điểm nổi bật khi nói đến việc sử dụng Gấu trúc. Tuy nhiên, Pandas khi được sử dụng với các thư viện và công cụ khác đảm bảo chức năng cao và tính linh hoạt tốt.

Kết luận

Tôi hy vọng blog Top 10 Thư viện Python này đã giúp bạn bắt đầu việc học của mình trên các thư viện có sẵn bằng Python.

Nguồn bài viết gốc tại

#python  #tensorflow  #scikitlearn  #numpy  #keras  #pytorch  #lightgbm  #eli5  #scipy  #theano  #pandas 

Hơn 8 Thư Viện Python Hàng đầu Cho Machine Learning
许 志强

许 志强


用于机器学习的 8 个以上 Python 库

用于机器学习的前 8 个以上 Python 库是 TensorFlow、Scikit-learn、Numpy、Keras、PyTorch、LightGBM、Eli5、SciPy、Theano、Pandas

Python是服务于各种用途的库的海洋,作为 Python 开发人员,您必须对最好的库有充分的了解。为了在这方面为您提供帮助,这里有一篇文章为您介绍了用于机器学习的 10 大 Python 库,它们是:


Python 是最流行和使用最广泛的编程语言之一,已经取代了业内的许多编程语言。

Python 在开发人员中流行的原因有很多,其中之一是它拥有大量用户可以使用的库。 

以下是 Python 受欢迎的几个重要原因:

  • Python 拥有大量的库。
  • Python 是一种初学者级别的编程语言,因为它简单易用。
  • 从开发到部署和维护 Python 希望他们的开发人员更有效率。
  • 可移植性是 Python 大受欢迎的另一个原因。
  • 与 C、Java 和 C++ 相比,Python 的编程语法简单易学,而且水平很高。


Python 的简单性吸引了许多开发人员为机器学习创建新的库。由于库的庞大集合,Python 在机器学习专家中变得非常流行。

因此,我们 Top 10 Python 库博客中的第一个库是 TensorFlow。


十大 Python 库 - Edureka

什么是 TensorFlow?

如果您目前正在使用 Python 进行机器学习项目,那么您可能听说过这个流行的开源库,称为 TensorFlow。

该库由 Google 与 Brain Team 合作开发。TensorFlow 几乎是所有 Google 机器学习应用程序的一部分。

TensorFlow 就像一个计算库,用于编写涉及大量张量操作的新算法,因为神经网络可以很容易地表示为计算图,它们可以使用 TensorFlow 作为对张量的一系列操作来实现。另外,张量是代表数据的 N 维矩阵。

TensorFlow 的特点

TensorFlow 针对速度进行了优化,它利用 XLA 等技术进行快速线性代数运算。

1. 响应式构造

使用 TensorFlow,我们可以轻松地可视化图形的每个部分,而这在使用 Numpy 或 SciKit时不是一个选项。

2. 灵活

Tensorflow 非常重要的特性之一是它的可操作性是灵活的,这意味着它具有模块化,并且您想要独立制作的部分,它为您提供了该选项。

3. 易于训练

它很容易在 CPU 和GPU上进行训练以  进行分布式计算。

4. 并行神经网络训练

从某种意义上说,TensorFlow 提供了流水线,您可以训练多个 神经网络和多个 GPU,这使得模型在大规模系统上非常高效。

5. 大社区


6. 开源



您每天都在使用 TensorFlow,但间接地与 Google Voice Search 或 Google Photos 等应用程序一起使用。这些是 TensorFlow 的应用。

在 TensorFlow 中创建的所有库都是用 C 和 C++ 编写的。但是,它有一个复杂的 Python 前端。您的 Python 代码将被编译,然后在使用 C 和 C++ 构建的 TensorFlow 分布式执行引擎上执行。

TensorFlow 的应用数量几乎是无限的,这就是 TensorFlow 的美妙之处。

所以,接下来在这个“十大 Python 库”博客上,我们有 Scikit-Learn!


十大 Python 库 - Edureka

什么是 Scikit-learn?

它是一个与 NumPy 和 SciPy 相关联的 Python 库。它被认为是处理复杂数据的最佳库之一。


Scikit-Learn 的特点

1. 交叉验证: 有多种方法可以检查监督模型在未见数据上的准确性。

2. 无监督学习算法: 同样有大量算法可供选择——从聚类、因子分析、主成分分析到无监督神经网络。

3.特征提取: 用于从图像和文本中提取特征(例如Bag of words)

我们在哪里使用 Scikit-Learn?


所以,接下来在这个“十大 Python 库”博客上,我们有 Numpy!


十大 Python 库 - Edureka

什么是 Numpy?

Numpy 被认为是 Python 中最流行的机器学习库之一。

TensorFlow 和其他库在内部使用 Numpy 对张量执行多项操作。数组接口是 Numpy 最好也是最重要的特性。

Numpy 的特点

  1. 互动: Numpy 非常互动且易于使用。
  2. 数学:使复杂的数学实现变得非常简单。
  3. 直观:使编码变得真正容易,并且容易掌握概念。
  4. 大量交互:广泛使用,因此有很多开源贡献。

Numpy 的用途?

该接口可用于将图像、声波和其他二进制原始流表示为 N 维实数数组。

为了实现这个用于机器学习的库,了解 Numpy 对全栈开发人员来说很重要。

所以接下来在这个“十大 Python 库”博客上,我们有 Keras!


十大 Python 库 - Edureka

什么是 Keras?

Keras 被认为是 Python 中最酷的机器学习库之一。它提供了一种更简单的机制来表达神经网络。Keras 还提供了一些用于编译模型、处理数据集、图形可视化等的最佳实用程序。

在后端,Keras 在内部使用 Theano 或 TensorFlow。也可以使用一些最流行的神经网络,如 CNTK。当我们将 Keras 与其他机器学习库进行比较时,它的速度相对较慢。因为它通过使用后端基础设施创建计算图,然后利用它来执行操作。Keras 中的所有模型都是可移植的。

Keras 的特点

  • 它可以在 CPU 和 GPU 上流畅运行。
  • Keras 支持神经网络的几乎所有模型——全连接、卷积、池化、循环、嵌入等。此外,这些模型可以组合起来构建更复杂的模型。
  • Keras 本质上是模块化的,具有令人难以置信的表现力、灵活性和创新性研究能力。
  • Keras 是一个完全基于 Python 的框架,易于调试和探索。

我们在哪里使用 Keras?

您已经在不断地与使用 Keras 构建的功能进行交互——它在 Netflix、Uber、Yelp、Instacart、Zocdoc、Square 和许多其他公司中使用。它在将深度学习作为其产品核心的初创公司中尤其受欢迎。

Keras 包含许多常用神经网络构建块的实现,例如层、目标、激活函数、优化器和大量工具,可以更轻松地处理图像和文本数据。 

此外,它还提供了许多预处理数据集和预训练模型,如 MNIST、VGG、Inception、SqueezeNet、ResNet 等。

Keras 也是深度学习研究人员的最爱,排名第二。Keras 也被大型科学组织的研究人员采用,特别是 CERN 和 NASA。

所以,接下来在这个“十大 Python 库”博客上,我们有 PyTorch!


十大 Python 库 - Edureka

什么是 PyTorch?

PyTorch 是最大的机器学习库,允许开发人员在 GPU 加速的情况下执行张量计算,创建动态计算图,并自动计算梯度。除此之外,PyTorch 提供了丰富的 API 来解决与神经网络相关的应用程序问题。

这个机器学习库基于 Torch,它是一个用 C 语言实现的开源机器库,并在 Lua 中进行了包装。

这个 Python 机器库于 2017 年推出,自成立以来,该库越来越受欢迎,并吸引了越来越多的机器学习开发人员。

PyTorch 的特点


新的混合前端在 Eager 模式下提供易用性和灵活性,同时无缝过渡到图形模式以在 C++ 运行时环境中实现速度、优化和功能。


通过利用对异步执行集体操作和可从 Python 和 C++ 访问的点对点通信的本机支持来优化研究和生产中的性能。


PyTorch 不是一个 Python 绑定到一个单一的 C++ 框架。它被构建为深度集成到 Python 中,因此可以与流行的库和包(例如 Cython 和 Numba)一起使用。


一个活跃的研究人员和开发人员社区已经建立了一个丰富的工具和库生态系统,用于扩展 PyTorch 并支持从计算机视觉到强化学习等领域的开发。

PyTorch 的应用?

PyTorch 主要用于自然语言处理等应用程序。

它主要由 Facebook 的人工智能研究小组开发,Uber 的概率编程“Pyro”软件就是建立在它上面的。

PyTorch 在多个方面都优于 TensorFlow,并且在最近几天引起了很多关注。

所以,接下来在这个“十大 Python 库”博客上,我们有 LightGBM!


十大 Python 库 - Edureka

什么是 LightGBM?

Gradient Boosting 是最好和最受欢迎的机器学习库之一,它通过使用重新定义的基本模型(即决策树)帮助开发人员构建新算法。因此,有一些特殊的库可用于快速有效地实现此方法。

这些库是 LightGBM、XGBoost 和 CatBoost。所有这些库都是有助于解决常见问题的竞争对手,并且可以以几乎类似的方式使用。





考虑 NaN 值和其他规范值时不会产生错误。



所以,接下来在这个“十大 Python 库”博客上,我们有 Eli5!


十大 Python 库 - Edureka

什么是 Eli5?

大多数情况下,机器学习模型预测的结果并不准确,而使用 Python 构建的 Eli5 机器学习库有助于克服这一挑战。它结合了可视化和调试所有机器学习模型并跟踪算法的所有工作步骤。


此外,Eli5 还支持其他库 XGBoost、lightning、scikit-learn 和 sklearn-crfsuite 库。 



Eli5 在与其他 Python 包存在依赖关系的情况下起着至关重要的作用。


所以,接下来在这个“十大 Python 库”博客上,我们有 SciPy!


十大 Python 库 - Edureka

什么是 SciPy?

SciPy 是一个面向应用程序开发人员和工程师的机器学习库。但是,您仍然需要了解 SciPy 库和 SciPy 堆栈之间的区别。SciPy 库包含用于优化、线性代数、积分和统计的模块。

SciPy 的特点

SciPy 库的主要特点是它是使用 NumPy 开发的,它的数组最大限度地利用了 NumPy。

此外,SciPy 使用其特定的子模块提供所有高效的数值例程,如优化、数值积分和许多其他程序。

SciPy 的所有子模块中的所有功能都有很好的文档记录。

SciPy 的应用?

SciPy 是一个使用 NumPy 来求解数学函数的库。SciPy 使用 NumPy 数组作为基本数据结构,并附带了用于科学编程中各种常用任务的模块。

SciPy 可以轻松执行包括线性代数、积分(微积分)、常微分方程求解和信号处理在内的任务。

所以,接下来在这个“十大 Python 库”博客上,我们有 Theano!


十大 Python 库 - Edureka

什么是 Theano?

Theano 是 Python 中用于计算多维数组的计算框架机器学习库。Theano 的工作原理与 TensorFlow 类似,但不如 TensorFlow 高效。因为它无法适应生产环境。

此外,Theano 还可以用于类似于 TensorFlow 的分布式或并行环境。

Theano 的特点

  • 与 NumPy 紧密集成 ——能够在 Theano 编译的函数中使用完整的 NumPy 数组。
  • 透明使用 GPU  – 执行数据密集型计算的速度比在 CPU 上快得多。
  • 高效 的符号微分——Theano 为具有一个或多个输入的函数求导。
  • 速度和稳定性优化log(1+x)—— 即使在 x 非常小的情况下也能 获得正确的答案 。这只是展示 Theano 稳定性的示例之一。
  • 动态 C 代码生成 ——比以往更快地评估表达式,从而大大提高效率。
  • 广泛的单元测试和自我验证 ——检测和诊断模型中的多种类型的错误和歧义。

我们在哪里使用 Theano?

Theano 表达式的实际语法是符号化的,这对于习惯于正常软件开发的初学者来说是不合适的。具体来说,表达式是在抽象意义上定义的,经过编译后实际用于进行计算。

它专门处理深度学习中大型神经网络算法的计算类型。它是同类中最早的库之一(开发于 2007 年开始),是深度学习研究和开发的行业标准。

Theano 是当今多个神经网络项目的强项,而 Theano 的受欢迎程度只会随着时间的推移而增长。

最后,在这个“十大 Python 库”博客上,我们有 Pandas!


十大 Python 库 - Edureka


Pandas 是 Python 中的机器学习库,提供高级数据结构和各种分析工具。这个库的一大特点是能够使用一两个命令来转换复杂的数据操作。Pandas 具有许多用于分组、组合数据和过滤的内置方法,以及时间序列功能。


Pandas 确保操作数据的整个过程会更容易。对重新索引、迭代、排序、聚合、连接和可视化等操作的支持是 Pandas 的功能亮点之一。


目前,pandas 库的版本较少,其中包含数百个新功能、错误修复、增强和 API 更改。pandas 的改进在于它能够对数据进行分组和排序,为 apply 方法选择最适合的输出,并提供对执行自定义类型操作的支持。

当谈到 Pandas 的使用时,数据分析是最重要的。但是,当与其他库和工具一起使用时,Pandas 可确保高功能性和良好的灵活性。


我希望这篇 Top 10 Python Libraries 博客能帮助您开始学习 Python 中可用的库。


#python  #tensorflow  #scikitlearn  #numpy  #keras  #pytorch  #lightgbm  #eli5  #scipy  #theano  #pandas 

用于机器学习的 8 个以上 Python 库








  • Pythonには膨大な数のライブラリのコレクションがあります。
  • Pythonは、その単純さと容易さのために、初心者レベルのプログラミング言語です。
  • Pythonの開発から展開、保守まで、開発者の生産性を高める必要があります。
  • 移植性は、Pythonが非常に人気があるもう1つの理由です。
  • Pythonのプログラミング構文は習得が簡単で、C、Java、およびC++と比較すると高水準です。













TensorFlowを使用すると、 Numpy または SciKitを使用している間はオプションではない、グラフのすべての部分を簡単に視覚化できます 。




 分散コンピューティング用のGPUだけでなくCPUでも簡単にトレーニングできます 。











それで、この「トップ10 Pythonライブラリ」ブログの次はScikit-Learn!







1.相互検証: 見えないデータの教師ありモデルの精度をチェックするためのさまざまな方法があります。

2.教師なし学習アルゴリズム: この場合も、クラスタリング、因子分析、主成分分析から教師なしニューラルネットワークまで、さまざまなアルゴリズムが提供されています。

3.特徴抽出: 画像やテキストから特徴を抽出するのに便利です(例:Bag of words)



それで、この「トップ10 Pythonライブラリ」ブログの次は、Numpyです!







  1. インタラクティブ: Numpyは非常にインタラクティブで使いやすいです。
  2. 数学:複雑な数学の実装を非常に簡単にします。
  3. 直感的:コーディングが非常に簡単になり、概念を理解するのも簡単になります。
  4. 多くの相互作用:広く使用されているため、多くのオープンソースの貢献があります。











  • CPUとGPUの両方でスムーズに動作します。
  • Kerasは、完全に接続された、畳み込み、プーリング、反復、埋め込みなど、ニューラルネットワークのほぼすべてのモデルをサポートします。さらに、これらのモデルを組み合わせて、より複雑なモデルを構築できます。
  • Kerasは本質的にモジュール式であり、非常に表現力があり、柔軟性があり、革新的な研究に適しています。
  • Kerasは完全にPythonベースのフレームワークであり、デバッグと探索が簡単になります。






それで、この「トップ10 Pythonライブラリ」ブログの次は、PyTorchです!









新しいハイブリッドフロントエンドは、イーガーモードでの使いやすさと柔軟性を提供すると同時に、C ++ランタイム環境での速度、最適化、および機能のためにグラフモードにシームレスに移行します。



Python First








それで、この「トップ10 Pythonライブラリ」ブログの次は、LightGBMです!













それで、この「トップ10 Pythonライブラリ」ブログの次は、Eli5です!











それで、この「トップ10 Pythonライブラリ」ブログの次は、SciPyです!












それで、この「トップ10 Pythonライブラリ」ブログの次は、Theanoです!







  • NumPyとの緊密な統合 –Theanoでコンパイルされた関数で完全にNumPy配列を使用する機能。
  • GPUの透過的な使用 –CPUよりもはるかに高速にデータ集約型の計算を実行します。
  • 効率的なシンボリック微分 – Theanoは、1つまたは複数の入力を持つ関数の導関数を実行します。
  • 速度と安定性の最適化– 非常に小さいlog(1+x) 場合でも  正しい答えを得る ことができます。xこれは、Theanoの安定性を示す例の1つにすぎません。
  • 動的Cコード生成 –これまでになく高速に式を評価することにより、効率が大幅に向上します。
  • 広範な単体テストと自己検証 –モデル内の複数のタイプのエラーとあいまいさを検出および診断します。





そして最後に、この「トップ10 Pythonライブラリ」ブログにパンダがあります!













#python  #tensorflow  #scikitlearn  #numpy  #keras  #pytorch  #lightgbm  #eli5  #scipy  #theano  #pandas 

Saul  Alaniz

Saul Alaniz


Las 8 Bibliotecas Principales De Python Para El Aprendizaje Automático

Las 8 bibliotecas principales de Python para el aprendizaje automático son TensorFlow, Scikit-learn, Numpy, Keras, PyTorch, LightGBM, Eli5, SciPy, Theano, Pandas

Python es un océano de bibliotecas que sirven para varios propósitos y, como desarrollador de Python, debe tener un conocimiento sólido de las mejores. Para ayudarlo en esto, aquí hay un artículo que le trae las 10 mejores bibliotecas de Python para el aprendizaje automático, que son:


Python es uno de los lenguajes de programación más populares y ampliamente utilizados y ha reemplazado a muchos lenguajes de programación en la industria.

Hay muchas razones por las que Python es popular entre los desarrolladores y una de ellas es que tiene una colección increíblemente grande de bibliotecas con las que los usuarios pueden trabajar. 

Aquí hay algunas razones importantes de por qué Python es popular:

  • Python tiene una gran colección de bibliotecas.
  • Python es un lenguaje de programación de nivel principiante debido a su simplicidad y facilidad.
  • Desde el desarrollo hasta la implementación y el mantenimiento, Python quiere que sus desarrolladores sean más productivos.
  • La portabilidad es otra razón de la gran popularidad de Python.
  • La sintaxis de programación de Python es fácil de aprender y es de alto nivel cuando la comparamos con C, Java y C++.

Por lo tanto, solo unas pocas líneas de código crean nuevas aplicaciones.

La simplicidad de Python ha atraído a muchos desarrolladores a crear nuevas bibliotecas para el aprendizaje automático. Debido a la enorme colección de bibliotecas, Python se está volviendo muy popular entre los expertos en aprendizaje automático.

Entonces, la primera biblioteca en nuestro blog de las 10 mejores bibliotecas de Python es TensorFlow.


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es TensorFlow?

Si actualmente está trabajando en un proyecto de aprendizaje automático en Python, es posible que haya oído hablar de esta popular biblioteca de código abierto conocida como TensorFlow.

Esta biblioteca fue desarrollada por Google en colaboración con Brain Team. TensorFlow es parte de casi todas las aplicaciones de Google para el aprendizaje automático.

TensorFlow funciona como una biblioteca computacional para escribir nuevos algoritmos que involucran una gran cantidad de operaciones de tensor, dado que las redes neuronales se pueden expresar fácilmente como gráficos computacionales, se pueden implementar usando TensorFlow como una serie de operaciones en tensores. Además, los tensores son matrices N-dimensionales que representan sus datos.

Características de TensorFlow

TensorFlow está optimizado para la velocidad, utiliza técnicas como XLA para operaciones rápidas de álgebra lineal.

1. Construcción receptiva

Con TensorFlow, podemos visualizar fácilmente todas y cada una de las partes del gráfico que no es una opción al usar  Numpy  o  SciKit .

2. flexibles

Una de las características más importantes de Tensorflow es que es flexible en su operatividad, lo que significa que tiene modularidad y las partes que desea hacer independientes, le ofrece esa opción.

3. Fácilmente entrenable

Es fácilmente entrenable en CPU y  GPU  para computación distribuida.

4. Entrenamiento de redes neuronales paralelas

TensorFlow ofrece canalización en el sentido de que puede entrenar múltiples  redes neuronales y múltiples GPU, lo que hace que los modelos sean muy eficientes en sistemas a gran escala.

5. Gran comunidad

No hace falta decir que si ha sido desarrollado por Google, ya hay un gran equipo de ingenieros de software que trabajan en mejoras de estabilidad continuamente.

6. Código abierto

Lo mejor de esta biblioteca de aprendizaje automático es que es de código abierto, por lo que cualquiera puede usarla siempre que tenga conexión a Internet.

¿Usos de TensorFlow?

Estás usando TensorFlow a diario, pero indirectamente con aplicaciones como Google Voice Search o Google Photos. Estas son las aplicaciones de TensorFlow.

Todas las bibliotecas creadas en TensorFlow están escritas en C y C++. Sin embargo, tiene un front-end complicado para Python. Su código de Python se compilará y luego se ejecutará en el motor de ejecución distribuida de TensorFlow creado con C y C++.

La cantidad de aplicaciones de TensorFlow es literalmente ilimitada y esa es la belleza de TensorFlow.

Entonces, a continuación en este blog de 'Las 10 mejores bibliotecas de Python' tenemos Scikit-Learn.


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es Scikit-learn?

Es una biblioteca de Python asociada con NumPy y SciPy. Está considerada como una de las mejores bibliotecas para trabajar con datos complejos.

Se están realizando muchos cambios en esta biblioteca. Una modificación es la función de validación cruzada, que brinda la capacidad de usar más de una métrica. Muchos métodos de entrenamiento como la regresión logística y los vecinos más cercanos han recibido algunas pequeñas mejoras.

Características de Scikit-Learn

1. Validación cruzada:  existen varios métodos para verificar la precisión de los modelos supervisados ​​en datos no vistos.

2. Algoritmos de aprendizaje no supervisados:  una vez más, hay una gran variedad de algoritmos en la oferta, desde la agrupación, el análisis de factores, el análisis de componentes principales hasta las redes neuronales no supervisadas.

3. Extracción de características:  útil para extraer características de imágenes y texto (por ejemplo, bolsa de palabras)

¿Dónde estamos usando Scikit-Learn?

Contiene una gran cantidad de algoritmos para implementar tareas estándar de aprendizaje automático y minería de datos, como la reducción de la dimensionalidad, la clasificación, la regresión, la agrupación en clústeres y la selección de modelos.

Entonces, a continuación en este blog de 'Las 10 mejores bibliotecas de Python', ¡tenemos Numpy!


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es Numpy?

Numpy se considera una de las bibliotecas de aprendizaje automático más populares en Python.

TensorFlow y otras bibliotecas usan Numpy internamente para realizar múltiples operaciones en Tensors. La interfaz de matriz es la mejor y más importante característica de Numpy.

Características de Numpy

  1. Interactivo: Numpy es muy interactivo y fácil de usar.
  2. Matemáticas: hace que las implementaciones matemáticas complejas sean muy simples.
  3. Intuitivo: hace que la codificación sea realmente fácil y la comprensión de los conceptos sea sencilla.
  4. Mucha interacción: ampliamente utilizado, por lo tanto, mucha contribución de código abierto.

¿Usos de Numpy?

Esta interfaz se puede utilizar para expresar imágenes, ondas de sonido y otros flujos binarios sin procesar como una matriz de números reales en N-dimensional.

Para implementar esta biblioteca para el aprendizaje automático, es importante tener conocimiento de Numpy para los desarrolladores de pila completa.

Entonces, a continuación en este blog de 'Las 10 mejores bibliotecas de Python', ¡tenemos Keras!


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es Keras?

Keras se considera una de las mejores bibliotecas de aprendizaje automático en Python. Proporciona un mecanismo más fácil para expresar redes neuronales. Keras también proporciona algunas de las mejores utilidades para compilar modelos, procesar conjuntos de datos, visualizar gráficos y mucho más.

En el backend, Keras usa Theano o TensorFlow internamente. También se pueden utilizar algunas de las redes neuronales más populares como CNTK. Keras es comparativamente lento cuando lo comparamos con otras bibliotecas de aprendizaje automático. Porque crea un gráfico computacional mediante el uso de la infraestructura de back-end y luego lo utiliza para realizar operaciones. Todos los modelos de Keras son portátiles.

Características de Keras

  • Funciona sin problemas tanto en CPU como en GPU.
  • Keras es compatible con casi todos los modelos de una red neuronal: totalmente conectada, convolucional, de agrupación, recurrente, incrustada, etc. Además, estos modelos se pueden combinar para crear modelos más complejos.
  • Keras, al ser de naturaleza modular, es increíblemente expresivo, flexible y apto para la investigación innovadora.
  • Keras es un marco completamente basado en Python, lo que facilita la depuración y la exploración.

¿Dónde estamos usando Keras?

Ya está interactuando constantemente con las funciones creadas con Keras: está en uso en Netflix, Uber, Yelp, Instacart, Zocdoc, Square y muchos otros. Es especialmente popular entre las nuevas empresas que colocan el aprendizaje profundo en el centro de sus productos.

Keras contiene numerosas implementaciones de bloques de construcción de redes neuronales de uso común, como capas, objetivos, funciones de activación, optimizadores y una gran cantidad de herramientas para facilitar el trabajo con datos de imágenes y texto. 

Además, proporciona muchos conjuntos de datos preprocesados ​​y modelos preentrenados como MNIST, VGG, Inception, SqueezeNet, ResNet, etc.

Keras también es uno de los favoritos entre los investigadores de aprendizaje profundo y ocupa el segundo lugar. Keras también ha sido adoptado por investigadores de grandes organizaciones científicas, en particular el CERN y la NASA.

Entonces, a continuación en este blog de 'Las 10 mejores bibliotecas de Python', ¡tenemos PyTorch!


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es PyTorch?

PyTorch es la biblioteca de aprendizaje automático más grande que permite a los desarrolladores realizar cálculos de tensor con aceleración de GPU, crea gráficos computacionales dinámicos y calcula gradientes automáticamente. Aparte de esto, PyTorch ofrece API ricas para resolver problemas de aplicaciones relacionados con redes neuronales.

Esta biblioteca de aprendizaje automático se basa en Torch, que es una biblioteca de máquina de código abierto implementada en C con un contenedor en Lua.

Esta biblioteca de máquinas en Python se introdujo en 2017 y, desde su creación, la biblioteca está ganando popularidad y atrayendo a un número cada vez mayor de desarrolladores de aprendizaje automático.

Características de PyTorch

Interfaz híbrida

Un nuevo front-end híbrido brinda facilidad de uso y flexibilidad en el modo entusiasta, al tiempo que realiza una transición sin problemas al modo gráfico para obtener velocidad, optimización y funcionalidad en entornos de tiempo de ejecución de C++.

Entrenamiento Distribuido

Optimice el rendimiento tanto en la investigación como en la producción aprovechando el soporte nativo para la ejecución asíncrona de operaciones colectivas y la comunicación entre pares a la que se puede acceder desde Python y C++.

pitón primero

PyTorch no es un enlace de Python en un marco monolítico de C++. Está diseñado para integrarse profundamente en Python, por lo que se puede usar con bibliotecas y paquetes populares como Cython y Numba.

Bibliotecas y herramientas

Una comunidad activa de investigadores y desarrolladores ha creado un rico ecosistema de herramientas y bibliotecas para ampliar PyTorch y respaldar el desarrollo en áreas que van desde la visión artificial hasta el aprendizaje por refuerzo.

¿Aplicaciones de PyTorch?

PyTorch se utiliza principalmente para aplicaciones como el procesamiento de lenguaje natural.

Es desarrollado principalmente por el grupo de investigación de inteligencia artificial de Facebook y el software "Pyro" de Uber para programación probabilística se basa en él.

PyTorch está superando a TensorFlow de varias maneras y está ganando mucha atención en los últimos días.

Entonces, a continuación en este blog 'Top 10 Python Libraries', ¡tenemos LightGBM!


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es LightGBM?

Gradient Boosting es una de las mejores y más populares bibliotecas de aprendizaje automático, que ayuda a los desarrolladores a crear nuevos algoritmos mediante el uso de modelos elementales redefinidos y, a saber, árboles de decisión. Por lo tanto, existen bibliotecas especiales que están disponibles para una implementación rápida y eficiente de este método.

Estas bibliotecas son LightGBM, XGBoost y CatBoost. Todas estas bibliotecas son competidores que ayudan a resolver un problema común y se pueden utilizar de manera casi similar.

Características de LightGBM

El cálculo muy rápido garantiza una alta eficiencia de producción.

Intuitivo, por lo tanto, lo hace fácil de usar.

Entrenamiento más rápido que muchas otras bibliotecas de aprendizaje profundo.

No producirá errores cuando considere valores NaN y otros valores canónicos.

¿Cuáles son las aplicaciones de LightGBM?

Esta biblioteca proporciona implementaciones altamente escalables, optimizadas y rápidas de aumento de gradiente, lo que lo hace popular entre los desarrolladores de aprendizaje automático. Porque la mayoría de los desarrolladores de pila completa de aprendizaje automático ganaron competencias de aprendizaje automático mediante el uso de estos algoritmos.

Entonces, a continuación en este blog de 'Las 10 mejores bibliotecas de Python', ¡tenemos Eli5!


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es Eli5?

La mayoría de las veces, los resultados de las predicciones del modelo de aprendizaje automático no son precisos, y la biblioteca de aprendizaje automático Eli5 integrada en Python ayuda a superar este desafío. Es una combinación de visualización y depuración de todos los modelos de aprendizaje automático y seguimiento de todos los pasos de trabajo de un algoritmo.

Características de Eli5

Además, Eli5 es compatible con otras bibliotecas XGBoost, lightning, scikit-learn y sklearn-crfsuite. 

¿Cuáles son las aplicaciones de Eli5?

Aplicaciones matemáticas que requieren mucho cálculo en poco tiempo.

Eli5 juega un papel vital donde hay dependencias con otros paquetes de Python.

Aplicaciones heredadas e implementación de nuevas metodologías en varios campos.

Entonces, a continuación en este blog 'Top 10 Python Libraries', ¡tenemos SciPy!


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es SciPy?

SciPy es una biblioteca de aprendizaje automático para desarrolladores e ingenieros de aplicaciones. Sin embargo, aún necesita saber la diferencia entre la biblioteca SciPy y la pila SciPy. La biblioteca SciPy contiene módulos para optimización, álgebra lineal, integración y estadísticas.

Características de SciPy

La característica principal de la biblioteca SciPy es que se desarrolla utilizando NumPy, y su matriz aprovecha al máximo NumPy.

Además, SciPy proporciona todas las rutinas numéricas eficientes como optimización, integración numérica y muchas otras utilizando sus submódulos específicos.

Todas las funciones en todos los submódulos de SciPy están bien documentadas.

¿Aplicaciones de SciPy?

SciPy es una biblioteca que utiliza NumPy con el fin de resolver funciones matemáticas. SciPy usa arreglos NumPy como la estructura de datos básica y viene con módulos para varias tareas de uso común en la programación científica.

SciPy ejecuta fácilmente tareas que incluyen álgebra lineal, integración (cálculo), resolución de ecuaciones diferenciales ordinarias y procesamiento de señales.

Entonces, a continuación en este blog de 'Las 10 mejores bibliotecas de Python', ¡tenemos a Theano!


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es Teano?

Theano es una biblioteca de aprendizaje automático de marco computacional en Python para computar arreglos multidimensionales. Theano funciona de manera similar a TensorFlow, pero no es tan eficiente como TensorFlow. Debido a su incapacidad para encajar en entornos de producción.

Además, Theano también se puede usar en entornos distribuidos o paralelos, de forma similar a TensorFlow.

caracteristicas de teano

  • Estrecha integración con NumPy  : capacidad de usar arreglos completamente NumPy en funciones compiladas por Theano.
  • Uso transparente de una GPU  : realice cálculos intensivos en datos mucho más rápido que en una CPU.
  • Diferenciación simbólica eficiente  : Theano realiza sus derivadas para funciones con una o varias entradas.
  • Optimizaciones de velocidad y estabilidad  : obtenga la respuesta correcta  log(1+x) incluso cuando  x es muy pequeño. Este es solo uno de los ejemplos para mostrar la estabilidad de Theano.
  • Generación dinámica de código C  : evalúe expresiones más rápido que nunca y, por lo tanto, aumente considerablemente la eficiencia.
  • Extensas pruebas unitarias y autoverificación  : detecte y diagnostique múltiples tipos de errores y ambigüedades en el modelo.

¿Dónde estamos usando a Theano?

La sintaxis real de las expresiones de Theano es simbólica, lo que puede resultar desagradable para los principiantes acostumbrados al desarrollo normal de software. Específicamente, las expresiones se definen en sentido abstracto, se compilan y luego se usan para hacer cálculos.

Maneja específicamente los tipos de computación para grandes algoritmos de redes neuronales en Deep Learning. Fue una de las primeras bibliotecas de este tipo (el desarrollo comenzó en 2007) y es un estándar de la industria para la investigación y el desarrollo de Deep Learning.

Theano es la fuerza de múltiples proyectos de redes neuronales en la actualidad y la popularidad de Theano solo crece con el tiempo.

Y, por último, en este blog de 'Las 10 mejores bibliotecas de Python', ¡tenemos Pandas!


Las 10 mejores bibliotecas de Python - Edureka

¿Qué es Pandas?

Pandas es una biblioteca de aprendizaje automático en Python que proporciona estructuras de datos de alto nivel y una amplia variedad de herramientas para el análisis. Una de las grandes características de esta biblioteca es la capacidad de traducir operaciones complejas con datos utilizando uno o dos comandos. Pandas tiene tantos métodos incorporados para agrupar, combinar datos y filtrar, así como la funcionalidad de series temporales.

Características de los pandas

Los pandas se aseguran de que todo el proceso de manipulación de datos sea más fácil. El soporte para operaciones como la reindexación, la iteración, la clasificación, las agregaciones, las concatenaciones y las visualizaciones se encuentran entre las funciones destacadas de Pandas.

¿Aplicaciones de Pandas?

Actualmente, hay menos versiones de la biblioteca pandas que incluye cientos de nuevas funciones, correcciones de errores, mejoras y cambios en la API. Las mejoras en pandas se refieren a su capacidad para agrupar y ordenar datos, seleccionar la salida más adecuada para el método de aplicación y brinda soporte para realizar operaciones de tipos personalizados.

El análisis de datos, entre todo lo demás, se destaca cuando se trata del uso de Pandas. Pero, Pandas, cuando se usa con otras bibliotecas y herramientas, garantiza una alta funcionalidad y una buena cantidad de flexibilidad.


Espero que este blog de las 10 principales bibliotecas de Python lo haya ayudado a comenzar su aprendizaje sobre las bibliotecas disponibles en Python.

Fuente del artículo original en

#python  #tensorflow  #scikitlearn  #numpy  #keras  #pytorch  #lightgbm  #eli5  #scipy  #theano  #pandas 

Las 8 Bibliotecas Principales De Python Para El Aprendizaje Automático
Anne  de Morel

Anne de Morel


Top 8+ Des Bibliothèques Python Pour L'apprentissage Automatique

Les 8 meilleures bibliothèques Python pour l'apprentissage automatique sont TensorFlow, Scikit-learn, Numpy, Keras, PyTorch, LightGBM, Eli5, SciPy, Theano, Pandas

Python est un océan de bibliothèques qui servent à diverses fins et en tant que développeur Python, vous devez avoir une bonne connaissance des meilleures. Pour vous y aider, voici un article qui vous présente les 10 meilleures bibliothèques Python pour l'apprentissage automatique qui sont :


Python est l'un des langages de programmation les plus populaires et les plus utilisés et a remplacé de nombreux langages de programmation dans l'industrie.

Il existe de nombreuses raisons pour lesquelles Python est populaire parmi les développeurs et l'une d'entre elles est qu'il possède une collection incroyablement vaste de bibliothèques avec lesquelles les utilisateurs peuvent travailler. 

Voici quelques raisons importantes pour lesquelles Python est populaire :

  • Python a une énorme collection de bibliothèques.
  • Python est un langage de programmation de niveau débutant en raison de sa simplicité et de sa facilité.
  • Du développement au déploiement et à la maintenance, Python veut que ses développeurs soient plus productifs.
  • La portabilité est une autre raison de l'énorme popularité de Python.
  • La syntaxe de programmation de Python est simple à apprendre et est de haut niveau lorsque nous la comparons à C, Java et C++.

Par conséquent, seules quelques lignes de code créent de nouvelles applications.

La simplicité de Python a incité de nombreux développeurs à créer de nouvelles bibliothèques pour l'apprentissage automatique. En raison de l'énorme collection de bibliothèques, Python devient extrêmement populaire parmi les experts en apprentissage automatique.

Ainsi, la première bibliothèque de notre blog Top 10 des bibliothèques Python est TensorFlow.


Top 10 des bibliothèques Python - Edureka

Qu'est-ce que TensorFlow ?

Si vous travaillez actuellement sur un projet d'apprentissage automatique en Python, vous avez peut-être entendu parler de cette bibliothèque open source populaire connue sous le nom de TensorFlow.

Cette bibliothèque a été développée par Google en collaboration avec Brain Team. TensorFlow fait partie de presque toutes les applications Google pour l'apprentissage automatique.

TensorFlow fonctionne comme une bibliothèque de calcul pour écrire de nouveaux algorithmes qui impliquent un grand nombre d'opérations de tenseur, puisque les réseaux de neurones peuvent être facilement exprimés sous forme de graphes de calcul, ils peuvent être implémentés à l'aide de TensorFlow comme une série d'opérations sur les tenseurs. De plus, les tenseurs sont des matrices à N dimensions qui représentent vos données.

Fonctionnalités de TensorFlow

TensorFlow est optimisé pour la vitesse, il utilise des techniques comme XLA pour des opérations d'algèbre linéaire rapides.

1. Construction réactive

Avec TensorFlow, nous pouvons facilement visualiser chaque partie du graphique, ce qui n'est pas une option lors de l'utilisation de  Numpy  ou  SciKit .

2. Flexible

L'une des fonctionnalités très importantes de Tensorflow est qu'il est flexible dans son opérabilité, ce qui signifie qu'il est modulaire et que les parties que vous souhaitez rendre autonomes, il vous offre cette option.

3. Facilement formable

Il est facilement entraînable sur CPU ainsi que  sur GPU  pour l'informatique distribuée.

4. Formation parallèle sur les réseaux de neurones

TensorFlow propose le pipelining dans le sens où vous pouvez entraîner plusieurs  réseaux de neurones et plusieurs GPU, ce qui rend les modèles très efficaces sur des systèmes à grande échelle.

5. Grande communauté

Inutile de dire que s'il a été développé par Google, il existe déjà une grande équipe d'ingénieurs logiciels qui travaillent en permanence sur l'amélioration de la stabilité.

6. Source ouverte

La meilleure chose à propos de cette bibliothèque d'apprentissage automatique est qu'elle est open source, donc tout le monde peut l'utiliser tant qu'il dispose d'une connexion Internet.

Utilisations de TensorFlow ?

Vous utilisez TensorFlow quotidiennement mais indirectement avec des applications comme Google Voice Search ou Google Photos. Ce sont les applications de TensorFlow.

Toutes les bibliothèques créées dans TensorFlow sont écrites en C et C++. Cependant, il a une interface compliquée pour Python. Votre code Python sera compilé puis exécuté sur le moteur d'exécution distribué TensorFlow construit à l'aide de C et C++.

Le nombre d'applications de TensorFlow est littéralement illimité et c'est la beauté de TensorFlow.

Donc, ensuite sur ce blog "Top 10 des bibliothèques Python", nous avons Scikit-Learn !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce que Scikit-learn ?

C'est une bibliothèque Python associée à NumPy et SciPy. Elle est considérée comme l'une des meilleures bibliothèques pour travailler avec des données complexes.

De nombreuses modifications sont apportées à cette bibliothèque. Une modification est la fonction de validation croisée, offrant la possibilité d'utiliser plus d'une métrique. De nombreuses méthodes de formation comme la régression logistique et les voisins les plus proches ont reçu quelques petites améliorations.

Caractéristiques de Scikit-Learn

1. Validation croisée :  Il existe différentes méthodes pour vérifier l'exactitude des modèles supervisés sur des données invisibles.

2. Algorithmes d'apprentissage non supervisés :  encore une fois, il existe une large gamme d'algorithmes dans l'offre - du regroupement, de l'analyse factorielle, de l'analyse des composants principaux aux réseaux de neurones non supervisés.

3. Extraction de caractéristiques :  utile pour extraire des caractéristiques d'images et de texte (par exemple, un sac de mots)

Où utilisons-nous Scikit-Learn ?

Il contient un grand nombre d'algorithmes pour implémenter des tâches standard d'apprentissage automatique et d'exploration de données telles que la réduction de la dimensionnalité, la classification, la régression, le regroupement et la sélection de modèles.

Alors, ensuite sur ce blog "Top 10 des bibliothèques Python", nous avons Numpy !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce que Numpy ?

Numpy est considéré comme l'une des bibliothèques d'apprentissage automatique les plus populaires en Python.

TensorFlow et d'autres bibliothèques utilisent Numpy en interne pour effectuer plusieurs opérations sur les Tensors. L'interface Array est la meilleure et la plus importante fonctionnalité de Numpy.

Caractéristiques de Numpy

  1. Interactif : Numpy est très interactif et facile à utiliser.
  2. Mathématiques : Rend les implémentations mathématiques complexes très simples.
  3. Intuitif : rend le codage vraiment facile et la compréhension des concepts est facile.
  4. Beaucoup d'interaction : largement utilisé, d'où de nombreuses contributions open source.

Les usages de Numpy ?

Cette interface peut être utilisée pour exprimer des images, des ondes sonores et d'autres flux bruts binaires sous la forme d'un tableau de nombres réels en N dimensions.

Pour implémenter cette bibliothèque pour l'apprentissage automatique, il est important pour les développeurs de pile complète de connaître Numpy.

Ensuite, sur ce blog "Top 10 des bibliothèques Python", nous avons Keras !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce que Keras ?

Keras est considéré comme l'une des bibliothèques d'apprentissage automatique les plus cool de Python. Il fournit un mécanisme plus simple pour exprimer les réseaux de neurones. Keras fournit également certains des meilleurs utilitaires pour compiler des modèles, traiter des ensembles de données, visualiser des graphiques, et bien plus encore.

Dans le backend, Keras utilise Theano ou TensorFlow en interne. Certains des réseaux de neurones les plus populaires comme CNTK peuvent également être utilisés. Keras est relativement lent par rapport à d'autres bibliothèques d'apprentissage automatique. Parce qu'il crée un graphe de calcul en utilisant une infrastructure back-end, puis l'utilise pour effectuer des opérations. Tous les modèles de Keras sont portables.

Caractéristiques de Keras

  • Il fonctionne sans problème à la fois sur le CPU et sur le GPU.
  • Keras prend en charge presque tous les modèles d'un réseau de neurones - entièrement connectés, convolutifs, mutualisés, récurrents, intégrés, etc. De plus, ces modèles peuvent être combinés pour créer des modèles plus complexes.
  • Keras, étant de nature modulaire, est incroyablement expressif, flexible et apte à la recherche innovante.
  • Keras est un framework entièrement basé sur Python, ce qui facilite le débogage et l'exploration.

Où utilisons-nous Keras ?

Vous interagissez déjà constamment avec les fonctionnalités créées avec Keras - il est utilisé par Netflix, Uber, Yelp, Instacart, Zocdoc, Square et bien d'autres. Il est particulièrement populaire parmi les startups qui placent l'apprentissage en profondeur au cœur de leurs produits.

Keras contient de nombreuses implémentations de blocs de construction de réseaux neuronaux couramment utilisés tels que des couches, des objectifs, des fonctions d'activation, des optimiseurs et une multitude d'outils pour faciliter le travail avec des données d'image et de texte. 

De plus, il fournit de nombreux ensembles de données prétraités et des modèles préformés tels que MNIST, VGG, Inception, SqueezeNet, ResNet, etc.

Keras est également un favori parmi les chercheurs en apprentissage profond, se classant n ° 2. Keras a également été adopté par des chercheurs de grands organismes scientifiques, notamment le CERN et la NASA.

Alors, ensuite sur ce blog "Top 10 des bibliothèques Python", nous avons PyTorch !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce que PyTorch ?

PyTorch est la plus grande bibliothèque d'apprentissage automatique qui permet aux développeurs d'effectuer des calculs de tenseur avec l'accélération du GPU, de créer des graphiques de calcul dynamiques et de calculer automatiquement les gradients. En dehors de cela, PyTorch propose des API riches pour résoudre les problèmes d'application liés aux réseaux de neurones.

Cette bibliothèque d'apprentissage automatique est basée sur Torch, qui est une bibliothèque de machines open source implémentée en C avec un wrapper en Lua.

Cette bibliothèque machine en Python a été introduite en 2017, et depuis sa création, la bibliothèque gagne en popularité et attire un nombre croissant de développeurs d'apprentissage machine.

Caractéristiques de PyTorch

Frontal hybride

Un nouveau frontal hybride offre une facilité d'utilisation et une flexibilité en mode impatient, tout en passant de manière transparente au mode graphique pour la vitesse, l'optimisation et la fonctionnalité dans les environnements d'exécution C++.

Formation distribuée

Optimisez les performances en recherche et en production en tirant parti de la prise en charge native de l'exécution asynchrone des opérations collectives et de la communication peer-to-peer accessible depuis Python et C++.

Python d'abord

PyTorch n'est pas une liaison Python dans un framework C++ monolithique. Il est conçu pour être profondément intégré à Python afin de pouvoir être utilisé avec des bibliothèques et des packages populaires tels que Cython et Numba.

Bibliothèques et outils

Une communauté active de chercheurs et de développeurs a construit un riche écosystème d'outils et de bibliothèques pour étendre PyTorch et soutenir le développement dans des domaines allant de la vision par ordinateur à l'apprentissage par renforcement.

Applications de PyTorch ?

PyTorch est principalement utilisé pour des applications telles que le traitement du langage naturel.

Il est principalement développé par le groupe de recherche sur l'intelligence artificielle de Facebook et le logiciel "Pyro" d'Uber pour la programmation probabiliste est construit dessus.

PyTorch surpasse TensorFlow de plusieurs manières et attire beaucoup l'attention ces derniers jours.

Alors, ensuite sur ce blog "Top 10 des bibliothèques Python", nous avons LightGBM !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce que LightGBM ?

Gradient Boosting est l'une des bibliothèques d'apprentissage automatique les meilleures et les plus populaires, qui aide les développeurs à créer de nouveaux algorithmes en utilisant des modèles élémentaires redéfinis et notamment des arbres de décision. Par conséquent, il existe des bibliothèques spéciales qui sont disponibles pour une mise en œuvre rapide et efficace de cette méthode.

Ces bibliothèques sont LightGBM, XGBoost et CatBoost. Toutes ces bibliothèques sont des concurrents qui aident à résoudre un problème commun et peuvent être utilisées de manière presque similaire.

Caractéristiques de LightGBM

Le calcul très rapide assure une efficacité de production élevée.

Intuitif, donc convivial.

Formation plus rapide que de nombreuses autres bibliothèques d'apprentissage en profondeur.

Ne produira pas d'erreurs lorsque vous considérez les valeurs NaN et d'autres valeurs canoniques.

Quelles sont les applications de LightGBM ?

Ces bibliothèques fournissent des implémentations hautement évolutives, optimisées et rapides de l'amplification de gradient, ce qui la rend populaire parmi les développeurs d'apprentissage automatique. Parce que la plupart des développeurs de machine learning full stack ont ​​remporté des concours de machine learning en utilisant ces algorithmes.

Alors, ensuite sur ce blog "Top 10 des bibliothèques Python", nous avons Eli5 !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce qu'Eli5 ?

Le plus souvent, les résultats des prédictions du modèle d'apprentissage automatique ne sont pas précis, et la bibliothèque d'apprentissage automatique Eli5 construite en Python aide à surmonter ce défi. Il s'agit d'une combinaison de visualisation et de débogage de tous les modèles d'apprentissage automatique et de suivi de toutes les étapes de travail d'un algorithme.

Caractéristiques d'Eli5

De plus, Eli5 prend en charge les autres bibliothèques XGBoost, Lightning, scikit-learn et sklearn-crfsuite. 

Quelles sont les applications d'Eli5 ?

Applications mathématiques nécessitant beaucoup de calculs en peu de temps.

Eli5 joue un rôle vital là où il existe des dépendances avec d'autres packages Python.

Applications héritées et mise en œuvre de méthodologies plus récentes dans divers domaines.

Donc, ensuite sur ce blog "Top 10 des bibliothèques Python", nous avons SciPy !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce que SciPy ?

SciPy est une bibliothèque d'apprentissage automatique pour les développeurs d'applications et les ingénieurs. Cependant, vous devez toujours connaître la différence entre la bibliothèque SciPy et la pile SciPy. La bibliothèque SciPy contient des modules d'optimisation, d'algèbre linéaire, d'intégration et de statistiques.

Caractéristiques de SciPy

La principale caractéristique de la bibliothèque SciPy est qu'elle est développée à l'aide de NumPy et que son tableau utilise le plus NumPy.

De plus, SciPy fournit toutes les routines numériques efficaces comme l'optimisation, l'intégration numérique et bien d'autres en utilisant ses sous-modules spécifiques.

Toutes les fonctions de tous les sous-modules de SciPy sont bien documentées.

Applications de SciPy ?

SciPy est une bibliothèque qui utilise NumPy dans le but de résoudre des fonctions mathématiques. SciPy utilise des tableaux NumPy comme structure de données de base et est livré avec des modules pour diverses tâches couramment utilisées dans la programmation scientifique.

Les tâches telles que l'algèbre linéaire, l'intégration (calcul), la résolution d'équations différentielles ordinaires et le traitement du signal s'exécutent facilement par SciPy.

Alors, ensuite sur ce blog "Top 10 des bibliothèques Python", nous avons Theano !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce que Théano ?

Theano est une bibliothèque d'apprentissage automatique de cadre de calcul en Python pour le calcul de tableaux multidimensionnels. Theano fonctionne de manière similaire à TensorFlow, mais pas aussi efficace que TensorFlow. En raison de son incapacité à s'adapter aux environnements de production.

De plus, Theano peut également être utilisé sur des environnements distribués ou parallèles, tout comme TensorFlow.

Caractéristiques de Théano

  • Intégration étroite avec NumPy  - Possibilité d'utiliser complètement des tableaux NumPy dans les fonctions compilées par Theano.
  • Utilisation transparente d'un GPU  - Effectuez des calculs gourmands en données beaucoup plus rapidement que sur un CPU.
  • Différenciation symbolique efficace  - Theano fait vos dérivés pour les fonctions avec une ou plusieurs entrées.
  • Optimisations de la vitesse et de la stabilité  - Obtenez la bonne réponse  log(1+x) même lorsqu'il  x est très petit. Ce n'est qu'un des exemples pour montrer la stabilité de Theano.
  • Génération de code C dynamique  - Évaluez les expressions plus rapidement que jamais, augmentant ainsi considérablement l'efficacité.
  • Tests unitaires et auto-vérification approfondis  - Détectez et diagnostiquez plusieurs types d'erreurs et d'ambiguïtés dans le modèle.

Où utilisons-nous Theano ?

La syntaxe réelle des expressions Theano est symbolique, ce qui peut être rebutant pour les débutants habitués au développement logiciel normal. Plus précisément, les expressions sont définies au sens abstrait, compilées et utilisées ultérieurement pour effectuer des calculs.

Il gère spécifiquement les types de calcul pour les grands algorithmes de réseau de neurones dans Deep Learning. C'était l'une des premières bibliothèques de ce type (le développement a commencé en 2007) et c'est un standard de l'industrie pour la recherche et le développement en Deep Learning.

Theano est aujourd'hui la force de plusieurs projets de réseaux de neurones et la popularité de Theano ne fait que croître avec le temps.

Et, enfin, sur ce blog "Top 10 des bibliothèques Python", nous avons des Pandas !


Top 10 des bibliothèques Python - Edureka

Qu'est-ce qu'un panda ?

Pandas est une bibliothèque d'apprentissage automatique en Python qui fournit des structures de données de haut niveau et une grande variété d'outils d'analyse. L'une des grandes caractéristiques de cette bibliothèque est la possibilité de traduire des opérations complexes avec des données à l'aide d'une ou deux commandes. Les pandas ont tellement de méthodes intégrées pour regrouper, combiner des données et filtrer, ainsi que des fonctionnalités de séries chronologiques.

Caractéristiques des pandas

Les pandas s'assurent que l'ensemble du processus de manipulation des données sera plus facile. La prise en charge d'opérations telles que la réindexation, l'itération, le tri, les agrégations, les concaténations et les visualisations font partie des fonctionnalités phares de Pandas.

Applications des pandas ?

Actuellement, il existe moins de versions de la bibliothèque pandas qui comprend des centaines de nouvelles fonctionnalités, des corrections de bogues, des améliorations et des modifications de l'API. Les améliorations apportées à pandas concernent sa capacité à regrouper et trier les données, à sélectionner la sortie la mieux adaptée à la méthode d'application et à prendre en charge l'exécution d'opérations de types personnalisés.

L'analyse des données, parmi tout le reste, est mise en avant lorsqu'il s'agit de l'utilisation de Pandas. Cependant, Pandas, lorsqu'il est utilisé avec d'autres bibliothèques et outils, garantit une fonctionnalité élevée et une bonne flexibilité.


J'espère que ce blog sur les 10 meilleures bibliothèques Python vous a aidé à démarrer votre apprentissage sur les bibliothèques disponibles en Python.

Source de l'article original sur

#python  #tensorflow  #scikitlearn  #numpy  #keras  #pytorch  #lightgbm  #eli5  #scipy  #theano  #pandas 

Top 8+ Des Bibliothèques Python Pour L'apprentissage Automatique
Iara  Simões

Iara Simões


As 8 Principais Bibliotecas Python Para Aprendizado De Máquina

As 8 principais bibliotecas Python para aprendizado de máquina são TensorFlow, Scikit-learn, Numpy, Keras, PyTorch, LightGBM, Eli5, SciPy, Theano, Pandas

Python é um oceano de bibliotecas que servem a vários propósitos e, como desenvolvedor Python, você deve ter um bom conhecimento das melhores. Para ajudá-lo nisso, aqui está um artigo que traz para você as 10 principais bibliotecas Python para aprendizado de máquina, que são:


Python é uma das linguagens de programação mais populares e amplamente utilizadas e substituiu muitas linguagens de programação na indústria.

Existem muitas razões pelas quais o Python é popular entre os desenvolvedores e uma delas é que ele possui uma coleção incrivelmente grande de bibliotecas com as quais os usuários podem trabalhar. 

Aqui estão algumas razões importantes de por que o Python é popular:

  • Python tem uma enorme coleção de bibliotecas.
  • Python é uma linguagem de programação de nível iniciante por causa de sua simplicidade e facilidade.
  • Do desenvolvimento à implantação e manutenção do Python, eles querem que seus desenvolvedores sejam mais produtivos.
  • A portabilidade é outra razão para a enorme popularidade do Python.
  • A sintaxe de programação do Python é simples de aprender e de alto nível quando comparada com C, Java e C++.

Portanto, apenas algumas linhas de código criam novos aplicativos.

A simplicidade do Python atraiu muitos desenvolvedores para criar novas bibliotecas para aprendizado de máquina. Por causa da enorme coleção de bibliotecas, o Python está se tornando muito popular entre os especialistas em aprendizado de máquina.

Portanto, a primeira biblioteca em nosso blog das 10 principais bibliotecas Python é o TensorFlow.


As 10 principais bibliotecas Python - Edureka

O que é TensorFlow?

Se você está trabalhando atualmente em um projeto de aprendizado de máquina em Python, pode ter ouvido falar sobre essa popular biblioteca de código aberto conhecida como TensorFlow.

Esta biblioteca foi desenvolvida pelo Google em colaboração com Brain Team. O TensorFlow faz parte de quase todos os aplicativos do Google para aprendizado de máquina.

O TensorFlow funciona como uma biblioteca computacional para escrever novos algoritmos que envolvem um grande número de operações de tensor, pois as redes neurais podem ser facilmente expressas como gráficos computacionais e podem ser implementadas usando o TensorFlow como uma série de operações em tensores. Além disso, os tensores são matrizes N-dimensionais que representam seus dados.

Recursos do TensorFlow

O TensorFlow é otimizado para velocidade, usa técnicas como XLA para operações rápidas de álgebra linear.

1. Construção responsiva

Com o TensorFlow, podemos visualizar facilmente cada parte do gráfico que não é uma opção ao usar  Numpy  ou  SciKit .

2. Flexível

Um dos recursos muito importantes do Tensorflow é que ele é flexível em sua operabilidade, o que significa que possui modularidade e as partes que você deseja tornar independentes, oferece essa opção.

3. Facilmente Treinável

É facilmente treinável em CPU e  GPU  para computação distribuída.

4. Treinamento de Redes Neurais Paralelas

O TensorFlow oferece pipeline no sentido de que você pode treinar várias  redes neurais e várias GPUs, o que torna os modelos muito eficientes em sistemas de grande escala.

5. Grande Comunidade

Escusado será dizer que, se foi desenvolvido pelo Google, já existe uma grande equipe de engenheiros de software que trabalham continuamente em melhorias de estabilidade.

6. Código Aberto

A melhor coisa sobre esta biblioteca de aprendizado de máquina é que ela é de código aberto para que qualquer pessoa possa usá-la desde que tenha conectividade com a Internet.

Usos do TensorFlow?

Você está usando o TensorFlow diariamente, mas indiretamente com aplicativos como Google Voice Search ou Google Photos. Estas são as aplicações do TensorFlow.

Todas as bibliotecas criadas no TensorFlow são escritas em C e C++. No entanto, tem um front-end complicado para Python. Seu código Python será compilado e executado no mecanismo de execução distribuído TensorFlow criado usando C e C++.

O número de aplicativos do TensorFlow é literalmente ilimitado e essa é a beleza do TensorFlow.

Então, a seguir neste blog 'Top 10 Python Libraries' temos o Scikit-Learn!


As 10 principais bibliotecas Python - Edureka

O que é Scikit-learn?

É uma biblioteca Python associada ao NumPy e ao SciPy. É considerada uma das melhores bibliotecas para trabalhar com dados complexos.

Há muitas mudanças sendo feitas nesta biblioteca. Uma modificação é o recurso de validação cruzada, fornecendo a capacidade de usar mais de uma métrica. Muitos métodos de treinamento, como regressão logística e vizinhos mais próximos, receberam algumas pequenas melhorias.

Recursos do Scikit-Learn

1. Validação cruzada:  Existem vários métodos para verificar a precisão de modelos supervisionados em dados não vistos.

2. Algoritmos de aprendizado não supervisionado:  Novamente, há uma grande variedade de algoritmos na oferta – começando de clustering, análise fatorial, análise de componentes principais até redes neurais não supervisionadas.

3. Extração de recursos:  Útil para extrair recursos de imagens e texto (por exemplo, saco de palavras)

Onde estamos usando o Scikit-Learn?

Ele contém vários algoritmos para implementar tarefas padrão de aprendizado de máquina e mineração de dados, como redução de dimensionalidade, classificação, regressão, clustering e seleção de modelo.

Então, a seguir neste blog 'Top 10 Python Libraries', temos o Numpy!


As 10 principais bibliotecas Python - Edureka

O que é Numpy?

O Numpy é considerado uma das bibliotecas de aprendizado de máquina mais populares em Python.

O TensorFlow e outras bibliotecas usam o Numpy internamente para realizar várias operações nos tensores. A interface de matriz é o melhor e mais importante recurso do Numpy.

Características do Numpy

  1. Interativo: Numpy é muito interativo e fácil de usar.
  2. Matemática: Torna as implementações matemáticas complexas muito simples.
  3. Intuitivo: Torna a codificação muito fácil e a compreensão dos conceitos é fácil.
  4. Muita interação: Amplamente utilizado, portanto, muita contribuição de código aberto.

Usos do Numpy?

Essa interface pode ser utilizada para expressar imagens, ondas sonoras e outros fluxos binários brutos como uma matriz de números reais em N-dimensional.

Para implementar esta biblioteca para aprendizado de máquina, ter conhecimento do Numpy é importante para desenvolvedores de pilha completa.

Então, a seguir, neste blog 'Top 10 Python Libraries', temos Keras!


As 10 principais bibliotecas Python - Edureka

O que é Keras?

Keras é considerada uma das bibliotecas de aprendizado de máquina mais legais em Python. Ele fornece um mecanismo mais fácil para expressar redes neurais. Keras também fornece alguns dos melhores utilitários para compilar modelos, processar conjuntos de dados, visualizar gráficos e muito mais.

No back-end, o Keras usa Theano ou TensorFlow internamente. Algumas das redes neurais mais populares, como CNTK, também podem ser usadas. Keras é comparativamente lento quando comparado com outras bibliotecas de aprendizado de máquina. Porque ele cria um gráfico computacional usando infraestrutura de back-end e depois faz uso dele para realizar operações. Todos os modelos em Keras são portáteis.

Características do Keras

  • Ele roda sem problemas tanto na CPU quanto na GPU.
  • Keras suporta quase todos os modelos de uma rede neural – totalmente conectada, convolucional, pooling, recorrente, embedding, etc. Além disso, esses modelos podem ser combinados para construir modelos mais complexos.
  • Keras, por ser modular por natureza, é incrivelmente expressivo, flexível e apto para pesquisas inovadoras.
  • Keras é uma estrutura completamente baseada em Python, o que facilita a depuração e a exploração.

Onde estamos usando Keras?

Você já está constantemente interagindo com recursos criados com Keras - está em uso no Netflix, Uber, Yelp, Instacart, Zocdoc, Square e muitos outros. É especialmente popular entre as startups que colocam o aprendizado profundo no centro de seus produtos.

Keras contém várias implementações de blocos de construção de redes neurais comumente usados, como camadas, objetivos, funções de ativação, otimizadores e uma série de ferramentas para facilitar o trabalho com dados de imagem e texto. 

Além disso, fornece muitos conjuntos de dados pré-processados ​​e modelos pré-treinados como MNIST, VGG, Inception, SqueezeNet, ResNet etc.

Keras também é um favorito entre os pesquisadores de aprendizado profundo, chegando em segundo lugar. Keras também foi adotado por pesquisadores de grandes organizações científicas, em particular CERN e NASA.

Então, a seguir neste blog 'Top 10 Python Libraries', temos o PyTorch!


As 10 principais bibliotecas Python - Edureka

O que é PyTorch?

PyTorch é a maior biblioteca de aprendizado de máquina que permite aos desenvolvedores realizar cálculos de tensor com aceleração de GPU, criar gráficos computacionais dinâmicos e calcular gradientes automaticamente. Além disso, o PyTorch oferece APIs ricas para resolver problemas de aplicativos relacionados a redes neurais.

Esta biblioteca de aprendizado de máquina é baseada no Torch, que é uma biblioteca de máquina de código aberto implementada em C com um wrapper em Lua.

Esta biblioteca de máquina em Python foi introduzida em 2017 e, desde a sua criação, a biblioteca está ganhando popularidade e atraindo um número crescente de desenvolvedores de aprendizado de máquina.

Recursos do PyTorch

Front-end híbrido

Um novo front-end híbrido oferece facilidade de uso e flexibilidade no modo ansioso, enquanto faz a transição perfeita para o modo gráfico para velocidade, otimização e funcionalidade em ambientes de tempo de execução C++.

Treinamento distribuído

Otimize o desempenho em pesquisa e produção aproveitando o suporte nativo para execução assíncrona de operações coletivas e comunicação ponto a ponto que pode ser acessada em Python e C++.

Python primeiro

PyTorch não é uma ligação do Python em uma estrutura C++ monolítica. Ele foi desenvolvido para ser profundamente integrado ao Python, para que possa ser usado com bibliotecas e pacotes populares, como Cython e Numba.

Bibliotecas e ferramentas

Uma comunidade ativa de pesquisadores e desenvolvedores construiu um rico ecossistema de ferramentas e bibliotecas para estender o PyTorch e apoiar o desenvolvimento em áreas de visão computacional a aprendizado por reforço.

Aplicações do PyTorch?

O PyTorch é usado principalmente para aplicativos como processamento de linguagem natural.

Ele é desenvolvido principalmente pelo grupo de pesquisa de inteligência artificial do Facebook e o software “Pyro” da Uber para programação probabilística é construído sobre ele.

O PyTorch está superando o TensorFlow de várias maneiras e está ganhando muita atenção nos últimos dias.

Então, a seguir neste blog 'Top 10 Python Libraries', temos o LightGBM!

Light GBM

As 10 principais bibliotecas Python - Edureka

O que é LightGBM?

O Gradient Boosting é uma das melhores e mais populares bibliotecas de aprendizado de máquina, que ajuda os desenvolvedores na construção de novos algoritmos usando modelos elementares redefinidos e árvores de decisão. Portanto, existem bibliotecas especiais que estão disponíveis para implementação rápida e eficiente deste método.

Essas bibliotecas são LightGBM, XGBoost e CatBoost. Todas essas bibliotecas são concorrentes que ajudam a resolver um problema comum e podem ser utilizadas quase de maneira semelhante.

Características do LightGBM

A computação muito rápida garante alta eficiência de produção.

Intuitivo, portanto, torna-o amigável.

Treinamento mais rápido do que muitas outras bibliotecas de aprendizado profundo.

Não produzirá erros quando você considerar valores NaN e outros valores canônicos.

Quais são as aplicações do LightGBM?

Essas bibliotecas fornecem implementações altamente escaláveis, otimizadas e rápidas de aumento de gradiente, o que a torna popular entre os desenvolvedores de aprendizado de máquina. Porque a maioria dos desenvolvedores de pilha completa de aprendizado de máquina venceu competições de aprendizado de máquina usando esses algoritmos.

Então, a seguir neste blog 'Top 10 Python Libraries', temos o Eli5!


As 10 principais bibliotecas Python - Edureka

O que é Eli5?

Na maioria das vezes, os resultados das previsões do modelo de aprendizado de máquina não são precisos, e a biblioteca de aprendizado de máquina Eli5 construída em Python ajuda a superar esse desafio. É uma combinação de visualização e depuração de todos os modelos de aprendizado de máquina e rastreia todas as etapas de trabalho de um algoritmo.

Características do Eli5

Além disso, o Eli5 suporta outras bibliotecas XGBoost, Lightning, scikit-learn e sklearn-crfsuite. 

Quais são as aplicações do Eli5?

Aplicações matemáticas que requerem muita computação em pouco tempo.

Eli5 desempenha um papel vital onde existem dependências com outros pacotes Python.

Aplicações legadas e implementação de novas metodologias em vários campos.

Então, a seguir neste blog 'Top 10 Python Libraries', temos o SciPy!


As 10 principais bibliotecas Python - Edureka

O que é SciPy?

SciPy é uma biblioteca de aprendizado de máquina para desenvolvedores e engenheiros de aplicativos. No entanto, você ainda precisa saber a diferença entre a biblioteca SciPy e a pilha SciPy. A biblioteca SciPy contém módulos para otimização, álgebra linear, integração e estatísticas.

Características do SciPy

A principal característica da biblioteca SciPy é que ela é desenvolvida usando o NumPy, e seu array faz o maior uso do NumPy.

Além disso, o SciPy fornece todas as rotinas numéricas eficientes como otimização, integração numérica e muitas outras usando seus submódulos específicos.

Todas as funções em todos os submódulos do SciPy estão bem documentadas.

Aplicações do SciPy?

SciPy é uma biblioteca que usa NumPy com o propósito de resolver funções matemáticas. O SciPy usa arrays NumPy como estrutura de dados básica e vem com módulos para várias tarefas comumente usadas em programação científica.

Tarefas incluindo álgebra linear, integração (cálculo), resolução de equações diferenciais ordinárias e processamento de sinais são executadas facilmente pelo SciPy.

Então, a seguir neste blog 'Top 10 Python Libraries', temos Theano!


As 10 principais bibliotecas Python - Edureka

O que é Theano?

Theano é uma biblioteca de aprendizado de máquina de estrutura computacional em Python para computação de matrizes multidimensionais. O Theano funciona de maneira semelhante ao TensorFlow, mas não é tão eficiente quanto o TensorFlow. Por causa de sua incapacidade de se encaixar em ambientes de produção.

Além disso, o Theano também pode ser usado em ambientes distribuídos ou paralelos, semelhantes ao TensorFlow.

Características de Theano

  • Forte integração com o NumPy  – Capacidade de usar matrizes completamente NumPy em funções compiladas pelo Theano.
  • Uso transparente de uma GPU  – Execute cálculos com uso intensivo de dados muito mais rápido do que em uma CPU.
  • Diferenciação simbólica eficiente  – Theano faz suas derivadas para funções com uma ou várias entradas.
  • Otimizações de velocidade e estabilidade  – Obtenha a resposta certa  log(1+x) mesmo quando  x é muito pequeno. Este é apenas um dos exemplos para mostrar a estabilidade de Theano.
  • Geração de código C dinâmico  – Avalie expressões mais rápido do que nunca, aumentando assim a eficiência em muito.
  • Extensos testes de unidade e autoverificação  – Detecte e diagnostique vários tipos de erros e ambiguidades no modelo.

Onde estamos usando Theano?

A sintaxe real das expressões Theano é simbólica, o que pode ser desanimador para iniciantes acostumados ao desenvolvimento normal de software. Especificamente, as expressões são definidas no sentido abstrato, compiladas e posteriormente usadas para fazer cálculos.

Ele lida especificamente com os tipos de computação para grandes algoritmos de rede neural em Deep Learning. Foi uma das primeiras bibliotecas desse tipo (desenvolvimento iniciado em 2007) e é um padrão da indústria para pesquisa e desenvolvimento de Deep Learning.

Theano é a força de vários projetos de rede neural hoje e a popularidade do Theano só está crescendo com o tempo.

E, por último, neste blog 'Top 10 Python Libraries', temos Pandas!


As 10 principais bibliotecas Python - Edureka

O que é Panda?

Pandas é uma biblioteca de aprendizado de máquina em Python que fornece estruturas de dados de alto nível e uma ampla variedade de ferramentas para análise. Um dos grandes recursos desta biblioteca é a capacidade de traduzir operações complexas com dados usando um ou dois comandos. Os Pandas têm muitos métodos embutidos para agrupar, combinar dados e filtrar, bem como funcionalidade de série temporal.

Características dos pandas

Pandas garantem que todo o processo de manipulação de dados seja mais fácil. Suporte para operações como reindexação, iteração, classificação, agregações, concatenações e visualizações estão entre os destaques de recursos do Pandas.

Aplicações de Pandas?

Atualmente, há menos versões da biblioteca pandas que inclui centenas de novos recursos, correções de bugs, aprimoramentos e alterações na API. As melhorias no pandas dizem respeito à sua capacidade de agrupar e classificar dados, selecionar a saída mais adequada para o método de aplicação e fornecer suporte para executar operações de tipos personalizados.

A análise de dados entre tudo o mais é o destaque quando se trata de uso do Pandas. Mas, Pandas, quando usado com outras bibliotecas e ferramentas, garante alta funcionalidade e boa flexibilidade.


Espero que este blog Top 10 Python Libraries tenha ajudado você a iniciar seu aprendizado nas bibliotecas disponíveis em Python.

Fonte do artigo original em

#python  #tensorflow  #scikitlearn  #numpy  #keras  #pytorch  #lightgbm  #eli5  #scipy  #theano  #pandas 

As 8 Principais Bibliotecas Python Para Aprendizado De Máquina
Joshua Yates

Joshua Yates


Top 8+ Python Libraries for Machine Learning You Need to Know

Top 8+ Python Libraries for machine learning to learn are TensorFlow, Scikit-learn, Numpy, Keras, PyTorch, LightGBM, Eli5, SciPy, Theano, Pandas

Python is an ocean of libraries that serve various purposes and as a Python developer, you must have sound knowledge of the best ones. To help you in this, here is an article that brings to you the Top 10 Python Libraries for machine learning which are:


Python is one of the most popular and widely used programming languages and has replaced many programming languages in the industry.

There are a lot of reasons why Python is popular among developers and one of them is that it has an amazingly large collection of libraries that users can work with. 

Here are a few important reasons as to why Python is popular:

  • Python has a huge collection of libraries.
  • Python is a beginner’s level programming language because of it simplicity and easiness.
  • From developing to deploying and maintaining Python wants their developers to be more productive.
  • Portability is another reason for huge popularity of Python.
  • Python’s programming syntax is simple to learn and is of high level when we compare it to C, Java, and C++.

Hence, only a few lines of code make new applications.

The simplicity of Python has attracted many developers to create new libraries for machine learning. Because of the huge collection of libraries Python is becoming hugely popular among machine learning experts.

So the first library in our Top 10 Python libraries blog is TensorFlow.


Top 10 Python Libraries - Edureka

What Is TensorFlow?

If you are currently working on a machine learning project in Python, then you may have heard about this popular open source library known as TensorFlow.

This library was developed by Google in collaboration with Brain Team. TensorFlow is a part of almost every Google application for machine learning.

TensorFlow works like a computational library for writing new algorithms that involve a large number of tensor operations, since neural networks can be easily expressed as computational graphs they can be implemented using TensorFlow as a series of operations on Tensors. Plus, tensors are N-dimensional matrices which represent your data.

Features of TensorFlow

TensorFlow is optimized for speed, it makes use of techniques like XLA for quick linear algebra operations.

1. Responsive Construct

With TensorFlow, we can easily visualize each and every part of the graph which is not an option while using Numpy or SciKit.

2. Flexible

One of the very important Tensorflow Features is that it is flexible in its operability, meaning it has modularity and the parts of it which you want to make standalone, it offers you that option.

3. Easily Trainable

It is easily trainable on CPU as well as GPU for distributed computing.

4. Parallel Neural Network Training

TensorFlow offers pipelining in the sense that you can train multiple neural networksand multiple GPUs which makes the models very efficient on large-scale systems.

5. Large Community

Needless to say, if it has been developed by Google, there already is a large team of software engineers who work on stability improvements continuously.

6. Open Source

The best thing about this machine learning library is that it is open source so anyone can use it as long as they have internet connectivity.

Uses of TensorFlow?

You are using TensorFlow daily but indirectly with applications like Google Voice Search or Google Photos. These are the  applications of TensorFlow.

All the libraries created in TensorFlow are written in C and C++. However, it has a complicated front-end for Python. Your Python code will get compiled and then executed on TensorFlow distributed execution engine built using C and C++.

The number of applications of TensorFlow is literally unlimited and that is the beauty of TensorFlow.

So, next up on this ‘Top 10 Python Libraries’ blog we have Scikit-Learn!


Top 10 Python Libraries - Edureka

What Is Scikit-learn?

It is a Python library is associated with NumPy and SciPy. It is considered as one of the best libraries for working with complex data.

There are a lot of changes being made in this library. One modification is the cross-validation feature, providing the ability to use more than one metric. Lots of training methods like logistics regression and nearest neighbors have received some little improvements.

Features Of Scikit-Learn

1. Cross-validation: There are various methods to check the accuracy of supervised models on unseen data.

2. Unsupervised learning algorithms: Again there is a large spread of algorithms in the offering – starting from clustering, factor analysis, principal component analysis to unsupervised neural networks.

3. Feature extraction: Useful for extracting features from images and text (e.g. Bag of words)

Where are we using Scikit-Learn?

It contains a numerous number of algorithms for implementing standard machine learning and data mining tasks like reducing dimensionality, classification, regression, clustering, and model selection.

So, next up on this ‘Top 10 Python Libraries’ blog, we have Numpy!


Top 10 Python Libraries - Edureka

What Is Numpy?

Numpy is considered as one of the most popular machine learning library in Python.

TensorFlow and other libraries uses Numpy internally for performing multiple operations on Tensors. Array interface is the best and the most important feature of Numpy.

Features Of Numpy

  1. Interactive: Numpy is very interactive and easy to use.
  2. Mathematics: Makes complex mathematical implementations very simple.
  3. Intuitive: Makes coding real easy and grasping the concepts is easy.
  4. Lot of Interaction: Widely used, hence a lot of open source contribution.

Uses of Numpy?

This interface can be utilized for expressing images, sound waves, and other binary raw streams as an array of real numbers in N-dimensional.

For implementing this library for machine learning having knowledge of Numpy is important for full stack developers.

So next up on this ‘Top 10 Python Libraries’ blog, we have Keras!


Top 10 Python Libraries - Edureka

What Is Keras?

Keras is considered as one of the coolest machine learning libraries in Python. It provides an easier mechanism to express neural networks. Keras also provides some of the best utilities for compiling models, processing data-sets, visualization of graphs, and much more.

In the backend, Keras uses either Theano or TensorFlow internally. Some of the most popular neural networks like CNTK can also be used. Keras is comparatively slow when we compare it with other machine learning libraries. Because it creates a computational graph by using back-end infrastructure and then makes use of it to perform operations. All the models in Keras are portable.

Features Of Keras

  • It runs smoothly on both CPU and GPU.
  • Keras supports almost all the models of a neural network – fully connected, convolutional, pooling, recurrent, embedding, etc. Furthermore, these models can be combined to build more complex models.
  • Keras, being modular in nature,  is incredibly expressive, flexible, and apt for innovative research.
  • Keras is a completely Python-based framework, which makes it easy to debug and explore.

Where are we using Keras?

You are already constantly interacting with features built with Keras — it is in use at Netflix, Uber, Yelp, Instacart, Zocdoc, Square, and many others. It is especially popular among startups that place deep learning at the core of their products.

Keras contains numerous implementations of commonly used neural network building blocks such as layers, objectives, activation functions, optimizers and a host of tools to make working with image and text data easier. 

Plus, it provides many pre-processed data-sets and pre-trained models like MNIST, VGG, Inception, SqueezeNet, ResNet etc.

Keras is also a favorite among deep learning researchers, coming in at #2. Keras has also been adopted by researchers at large scientific organizations, in partic,ular CERN and NASA.

So, next up on this ‘Top 10 Python Libraries’ blog, we have PyTorch!


Top 10 Python Libraries - Edureka

What Is PyTorch?

PyTorch is the largest machine learning library that allow developers to perform tensor computations wan ith acceleration of GPU, creates dynamic computational graphs, and calculate gradients automatically. Other than this, PyTorch offers rich APIs for solving application issues related to neural networks.

This machine learning library is based on Torch, which is an open source machine library implemented in C with a wrapper in Lua.

This machine library in Python was introduced in 2017, and since its inception, the library is gaining popularity and attracting an increasing number of machine learning developers.

Features Of PyTorch

Hybrid Front-End

A new hybrid front-end provides ease-of-use and flexibility in eager mode, while seamlessly transitioning to graph mode for speed, optimization, and functionality in C++ runtime environments.

Distributed Training

Optimize performance in both research and production by taking advantage of native support for asynchronous execution of collective operations and peer-to-peer communication that is accessible from Python and C++.

Python First

PyTorch is not a Python binding into a monolithic C++ framework. It’s built to be deeply integrated into Python so it can be used with popular libraries and packages such as Cython and Numba.

Libraries And Tools

An active community of researchers and developers have built a rich ecosystem of tools and libraries for extending PyTorch and supporting development in areas from computer vision to reinforcement learning.

Applications of PyTorch?

PyTorch is primarily used for applications such as natural language processing.

It is primarily developed by Facebook’s artificial-intelligence research group and Uber’s “Pyro” software for probabilistic programming is built on it.

PyTorch is outperforming TensorFlow in multiple ways and it is gaining a lot of attention in the recent days.

So, next up on this ‘Top 10 Python Libraries’ blog, we have LightGBM!


Top 10 Python Libraries - Edureka

What Is LightGBM?

Gradient Boosting is one of the best and most popular machine learning library, which helps developers in building new algorithms by using redefined elementary models and namely decision trees. Therefore, there are special libraries which are available for fast and efficient implementation of this method.

These libraries are LightGBM, XGBoost, and CatBoost. All these libraries are competitors that helps in solving a common problem and can be utilized in almost the similar manner.

Features of LightGBM

Very fast computation ensures high production efficiency.

Intuitive, hence makes it user friendly.

Faster training than many other deep learning libraries.

Will not produce errors when you consider NaN values and other canonical values.

What are the applications of LightGBM?

These library provides provide highly scalable, optimized, and fast implementations of gradient boosting, which makes it popular among machine learning developers. Because most of the machine learning full stack developers won machine learning competitions by using these algorithms.

So, next up on this ‘Top 10 Python Libraries’ blog, we have Eli5!


Top 10 Python Libraries - Edureka

What Is Eli5?

Most often the results of machine learning model predictions are not accurate, and Eli5 machine learning library built in Python helps in overcoming this challenge. It is a combination of visualization and debug all the machine learning models and track all working steps of an algorithm.

Features of Eli5

Moreover, Eli5 supports wother libraries XGBoost, lightning, scikit-learn, and sklearn-crfsuite libraries. 

What are the applications of Eli5?

Mathematical applications which requires a lot of computation in a short time.

Eli5 plays a vital role where there are dependencies with other Python packages.

Legacy applications and implementing newer methodologies in various fields.

So, next up on this ‘Top 10 Python Libraries’ blog, we have SciPy!


Top 10 Python Libraries - Edureka

What Is SciPy?

SciPy is a machine learning library for application developers and engineers. However, you still need to know the difference between SciPy library and SciPy stack. SciPy library contains modules for optimization, linear algebra, integration, and statistics.

Features Of SciPy

The main feature of SciPy library is that it is developed using NumPy, and its array makes the most use of NumPy.

In addition, SciPy provides all the efficient numerical routines like optimization, numerical integration, and many others using its specific submodules.

All the functions in all submodules of SciPy are well documented.

Applications of SciPy?

SciPy is a library that uses NumPy for the purpose of solving mathematical functions. SciPy uses NumPy arrays as the basic data structure, and comes with modules for various commonly used tasks in scientific programming.

Tasks including linear algebra, integration (calculus), ordinary differential equation solving and signal processing execute easily by SciPy.

So, next up on this ‘Top 10 Python Libraries’ blog, we have Theano!


Top 10 Python Libraries - Edureka

What Is Theano?

Theano is a computational framework machine learning library in Python for computing multidimensional arrays. Theano works similar to TensorFlow, but it not as efficient as TensorFlow. Because of its inability to fit into production environments.

Moreover, Theano can also be used on a distributed or parallel environments just similar to TensorFlow.

Features Of Theano

  • Tight integration with NumPy – Ability to use completely NumPy arrays in Theano-compiled functions.
  • Transparent use of a GPU – Perform data-intensive computations much faster than on a CPU.
  • Efficient symbolic differentiation – Theano does your derivatives for functions with one or many inputs.
  • Speed and stability optimizations – Get the right answer for log(1+x) even when x is very tiny. This is just one of the examples to show the stability of Theano.
  • Dynamic C code generation – Evaluate expressions faster than ever before, thereby, increasing efficiency by a lot.
  • Extensive unit-testing and self-verification – Detect and diagnose multiple types of errors and ambiguities in the model.

Where are we using Theano?

The actual syntax of Theano expressions is symbolic, which can be off putting to beginners used to normal software development. Specifically, expression are defined in the abstract sense, compiled and later actually used to make calculations.

It specifically handles the types of computation for large neural network algorithms in Deep Learning. It was one of the first libraries of its kind (development started in 2007) and is an industry standard for Deep Learning research and development.

Theano is the strength of multiple neural network projects today and the popularity of Theano is only growing with time.

And, lastly, on this ‘Top 10 Python Libraries’ blog, we have Pandas!


Top 10 Python Libraries - Edureka

What Is Pandas?

Pandas is a machine learning library in Python that provides data structures of high-level and a wide variety of tools for analysis. One of the great feature of this library is the ability to translate complex operations with data using one or two commands. Pandas have so many inbuilt methods for grouping, combining data, and filtering, as well as time-series functionality.

Features Of Pandas

Pandas make sure that the entire process of manipulating data will be easier. Support for operations such as Re-indexing, Iteration, Sorting, Aggregations, Concatenations and Visualizations are among the feature highlights of Pandas.

Applications of Pandas?

Currently, there are fewer releases of pandas library which includes hundred of new features, bug fixes, enhancements, and changes in API. The improvements in pandas regards its ability to group and sort data, select best suited output for the apply method, and provides support for performing custom types operations.

Data Analysis among everything else takes the highlight when it comes to usage of Pandas. But, Pandas when used with other libraries and tools ensure high functionality and good amount of flexibility.


I hope this Top 10 Python Libraries blog helped you to kick start your learning on the libraries available in Python.

Original article source at

#python #tensorflow #scikitlearn #numpy #keras #pytorch #lightgbm #eli5 #scipy #theano #pandas

Top 8+ Python Libraries for Machine Learning You Need to Know
Zachary Palmer

Zachary Palmer


Top 5 Machine Learning Libraries

Machine Learning has grown in the past few years at a very rapid rate. This is due to the release of Machine Learning (ML)/Deep Learning (DL) libraries that abstracts away the huge complexity of scaffolding or implementing an ML/DL model.

ML/DL involves a lot of mathematical calculations and operationsת especially Matrix. These ML/DL makes it very easy for a complete noob in ML to start it up like a pro. The very first day I used Tensorflow I was awed by the amount of Matrix operations and mathematics I could skip-over, which was done for me by the library, I was able to build and train a XOR model at the very first attempt.

Machine learning, sometimes abbreviated to “ML,” uses general-purpose mathematical models to answer specific questions using data. Machine learning has been used to detect spam email, build highly-smart missiles, build intelligent robots, detect objects through computer vision, build intelligent homes, recognize speech, build a system that can write (novels, poetry, etc), recommend products to customers, and predict the value of commodities for many years.

In this post, we will discuss the most popular and important ML/DL libraries in the world right now.


This is the most popular ML/DL in the world today, it wasn’t the first, but when it came with its simplicity. It grew rapidly to surpass the already existing libraries. It was because of its easy-to-use APIs. You could guess, it was released by Google in November 2015.

It is written in Python, but now we have a JavaScript port of it tensorflow.js.

This was due to the upsurge of JavaScript following the advent of Node.js.

According to Wikipedia:

TensorFlow is a free and open-source software library for dataflow and differentiable programming across a range of tasks. It is a symbolic math library, and is also used for machine learning applications such as neural networks.


Theano is a Python library for fast numerical computation that can be run on the CPU or GPU. It was developed by the LISA (now MILA) group at the University of Montreal, Quebec, Canada. It is named after a Greek mathematician, Theano.

According to Wikipedia:

Theano is a Python library and optimizing compiler for manipulating and evaluating mathematical expressions, especially matrix-valued ones.


This is a Facebook deep-learning library. PyTorch was built by Facebook, as it name implies it was written in Python.

Compared to Tensorflow, it is easier to learn and use but as you can guess it was beaten by Tensorflow. This is because Tensorflow encompasses a wide-range of stuff in ML/DL while PyTorch has a few. Nonetheless, PyTorch provide a simpler API for working with Neural Networks.

According to Wikipedia:

PyTorch is a deep learning library based on the Torch library, used for applications such as computer vision and natural language processing. It is primarily developed by Facebook’s artificial intelligence research group. It is free and open-source software released under the Modified BSD license.


This is a popular ML library, built on NumPy, SciPy and matplotlib. It focuses mostly on ML algorithms:

  • Supervised learning
  • Unsupervised learning
  • Linear regression
  • Logistic regression
  • SVM
  • Naive Bayes
  • Gradient boosting
  • Clustering
  • K-Means

Like PyTorch it is less mature to Tensorflow, but it provides simple and efficient tools for data mining and data analysis.

According to Wikipedia:

Scikit-learn (formerly scikits.learn) is a free software machine learning library for the Python programming language.[3] It features various classification, regression and clustering algorithms including support vector machines, random forests, gradient boosting, k-means and DBSCAN, and is designed to interoperate with the Python numerical and scientific libraries NumPy and SciPy.


Keras is a DL library that wraps around the functionalities of othe libraries like Tensorflow, Theano or CNTK. Written in Python.

Keras has upper-hand on its competitors like Scikit-learn and PyTorch because it runs on top of Tensorflow.

According to Wikipedia:

Keras is an open-source neural-network library written in Python. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, Theano, or PlaidML. Designed to enable fast experimentation with deep neural networks, it focuses on being user-friendly, modular, and extensible.


There are many more tools in ML/DL world, but these are the most popular and widely used. ML/DL is a huge world and the most promising tech right now .

If you have any question regarding this or anything I should add, correct or remove, feel free to comment, email or DM me.

Thanks for reading

If you liked this post, share it with all of your programming buddies!

#machinelearning #tensorflow #python #datascience #theano #pytorch #scikitlearn #keras #deeplearning

Top 5 Machine Learning Libraries