Thư viện trong Python

Một phần của tài liệu Nghiên cứu các giải thuật máy học và áp dụng vào bài toán dự đoán bệnh thận tại bệnh viện đa khoa tỉnh điện biên dùng ngôn ngữ python (Trang 56 - 59)

Python là ngôn ngữ thông dịch (interpreted language). Mỗi câu lệnh được dịch trực tiếp, thay vì dịch cả chương trình. Trong Python, chúng ta không cần khai báo kiểu cho biến, tham số, hàm và các phương thức. Điều này làm cho Python ngắn gọn và linh hoạt, và không tốn thời gian kiểm tra kiểu trong thời gian biên dịch. Python sẽ kiểm tra kiểu giá trị tại thời gian chạy.

Không giống với C++ và Java, Python không yêu cầu dấu kết thúc mỗi câu lệnh ở cuối câu lệnh. Tuy nhiên, nó cũng phân biệt chữ cái hoa, thường khi đặt tên biến. Python được lưu trữ trong tệp có phần mở rộng “.py”.

47

Python được xem là ngôn ngữ dễ học, dễ đọc và dễ bảo trì. Là ngôn ngữ hỗ trợ phương thức lập trình có cấu trúc, lập trình hướng đối tượng, và có bộ thu gom rác tự động. Python cũng dễ dàng tích hợp với nhiều ngôn ngữ khác (C, C++, Java).

Vì Python là ngôn ngữ chưa thực sự phổ dụng ở Việt Nam nên Tôi lược dịch ra đây những kiến thức cơ bản và quan trọng nhằm giúp người đọc có thể hiểu được ở phần cài đặt (Chương 3).

2.4.2.1. Pandas

Cùng với Numpy, Pandas là một trong những thư viện được dùng rộng rãi trong chương trình Python. Pandas cung cấp nhiều đối tượng và phương thức cho các cấu trúc dữ liệu. Pandas là thư viện không thể thiếu cho chúng ta trong suốt quá trình xử lý dữ liệu (data munging): Từ chuyển đổi hay ánh xạ dữ liệu thô sang dạng dữ liệu mà chúng ta mong muốn, nhằm có thể phân tích dễ dàng hơn.

Chúng ta sẽ sử dụng hai cấu trúc dữ liệu hiệu quả được dùng trong Python:

SeriesDataFrame; cả hai cấu trúc này được xây trên thư viện Numpy.

2.4.2.2. Nympy

Numpy (viết tắt của Nummerical Python) là một thư viện không thể thiếu khi chúng ta xây dựng các ứng dụng Máy học trên Python. Numpy cung cấp các đối tượng và phương thức để làm việc với mảng nhiều chiều và các phép toán đại số tuyến tính. Trong numpy, chiều của mảng gọi là axes; trong khi số chiều gọi là rank.

Thư viện chính trong numpy là các đối tượng mảng (array). Mảng (array) tương tự như list ở Python với điều kiện là mọi phần tử trong array phải có cùng kiểu dữ liệu. Array có thể thao tác với số lượng lớn dữ liệu số, thường là float hay int, và hiệu quả hơn trên danh sách rất nhiều. Lớp thường dùng trong numpy là ndarray (n- dimentional array).

Khai báo khi dùng thư viện nump. Có nhiều cách để khai báo Numpy: Sử dụng tất cả các đối tượng và hàm của numpy:

import numpy

Chúng ta gọi trực tiếp các hàm qua cú pháp: numpy.array([1,2,3]) Có thể dùng tất cả các đối tượng trong numpy

48

from numpy import *

Chúng ta gọi trực tiếp các hàm qua cú pháp array([1,2,3])

Để ngắn gọn, nhiều người cũng dùng tên giả cho numpy. Đây là cách thường dùng:

import numpy as np

Chúng ta gọi trực tiếp các hàm qua cú pháp: np.array([1,2,3])

2.4.2.3 Scikit – learn [15,16] Scikit – learn là gì

Scikit – learn là một thư viện Máy học miễn phí cho cộng đồng lập trình Python. Scikit – learn cung cấp rất nhiều các thuật toán Máy học: Phân lớp (classification), hồi qui (regression) và phân cụm (clustering) bao gồm support vector machines, random forests, gradient boosting, k-means và DBSCAN, và nó được hỗ trợ bởi rất nhiều các thư viện như NumPy and SciPy.

Scikit – learn được viết bởi phần lớn Python, ban đầu được phát triển bởi David Cournapeau trong một dự án mùa hè 2007. Sau đó Matthieu Brucher tham gia vào dự án và phát triển nó như một phần trong đồ án của mình. Năm 2010 INRIA cũng tham gia và phát ảnh phiên bản đầu tiên (v0.1 beta) tháng 1 năm 2010.

Hiện nay có hơn 30 cá nhân, tổ chức đóng góp để phát triển thư viện này, đặc biệt có kinh phí từ INRIA và Google.

Python với Máy học

Nếu người lập trình Python muốn tìm một thư viện phong phú, dễ dàng để để xây dựng chương trình Máy học, thì thư viện đầu tiên cần nghĩ tới là Scikit – learn.

Scikit – learn càng ngày càng được coi là một công cụ hiệu quả trong khai phá dữ liệu, Máy học và trí tuệ nhân tạo, do có 4 đặc điểm sau:

- Dễ dùng và dễ tương tác bởi nhiều người - Có khả năng sử dụng lại trong nhiều hoàn cảnh

- Được xây dựng trên các thư viện mạnh: NumPy, SciPy, Pandas, IPython, Sympy, và matplotlib

49

Một phần của tài liệu Nghiên cứu các giải thuật máy học và áp dụng vào bài toán dự đoán bệnh thận tại bệnh viện đa khoa tỉnh điện biên dùng ngôn ngữ python (Trang 56 - 59)