Scikit-learn: K-nearest neighbors

knn concept

knn concept

Trong bài viết này, ta sẽ tìm hiểu thuật toán K-láng giềng gần (K-nearest neighbors (KNN)). KNN thuộc nhóm phương pháp phân lớp dựa trên thể hiện (instance-based classification). Tôi sẽ trình bày ý tưởng đơn giản về thuật toán này. Sau đó, ta sẽ sử dụng thư viện scikit-learn phục vụ cho việc cài đặt mô hình dự đoán KNN.

Tiếp tục đọc

Giới thiệu về scikit-learn

scikit-learn algorithm cheat sheet

scikit-learn algorithm cheat sheet

Trong bài viết này, ta sẽ làm quen với scikit-learn, một bộ thư viện mạnh mẽ được viết bằng Python, hỗ trợ các thuật toán machine learning phục vụ cho việc xây dựng các mô hình dự đoán.

Ta có thể cài đặt thư viện này ở link: http://scikit-learn.org/stable/index.html

Tiếp tục đọc

Exploratory Data Analysis: Các hệ thống Plotting

xyplot plotting 2x2
Trong bài viết này, ta sẽ khảo sát tổng quan ba hệ thống plotting trong R. Mỗi hệ thống có điểm mạnh và điểm yếu riêng. Chúng ta sẽ tìm hiểu sơ về ý tưởng tổng quát của các hệ thống này. Ở các bài viết sau, ta sẽ đi vào chi tiết hơn.

Tiếp tục đọc

Exploratory Data Analysis: Thiết bị đồ họa trong R

PDF format

PDF format


Trong bài viết này, ta sẽ làm quen với các thiết bị đồ họa trong R. Các thiết bị đồ họa là gì? Đó là nơi để bạn có thể xuất biểu đồ của mình ra các thiết bị như màn hình, file ảnh (PNG, JPEG, SVG, TIFF) hay file văn bản (PDF). Cụ thể, khi ta xuất biểu đồ, R sẽ gửi thông tin hiển thị biểu đồ đến thiết bị đồ họa. Thông thường, ta sẽ xuất ra thiết bị màn hình (đây là thiết bị mặc định). Ta xuất biểu đồ ra file khi muốn viết báo cáo, thuyết trình, hay gửi thông tin cho các đồng nghiệp của mình.

Tiếp tục đọc

Exploratory Data Analysis: Giảm số chiều dữ liệu

Mình xin chia sẻ bài viết về phân tích thành phần chính (Principle Component Analsysi – PCA). Đây là một công cụ rất hữu ích khi làm việc với big data. Bằng cách giảm số chiều dữ liệu từ vài triệu xuống còn vài nghìn, ta có thể cải thiện hiệu suất tính toán của máy tính nhưng vẫn giữ được độ chính xác của mô hình dự đoán của mình. Đây là bài báo được viết bởi Jonathon Shlens của Google Research, có nhan đề “A Tutorial on Principal Component Analysis”. Bạn có thể download ở link sau: http://arxiv.org/pdf/1404.1100.pdf

pca

pca

Exploratory Data Analysis: K Means Clustering

K Means Clustering

K Means Clustering


Trong bài viết này, ta sẽ khảo sát về k-means clustering, một cách đơn giản khác để quan sát tập dữ liệu đa chiều (multi-dimensional data). Tương tự như hierarchical clustering, kĩ thuật này hữu ích khi bước đầu phân tích dữ liệu (quan sát mối quan hệ giữa các điểm dữ liệu, thuộc tính). Tiếp tục đọc

Exploratory Data Analysis: Hierarchical Clustering

Hierarchical Clustering

Hierarchical Clustering


Hôm nay, chúng ta sẽ tìm hiểu về hierarchical clustering. Đây là kĩ thuật hữu ích trong giai đoạn đầu phân tích dữ liệu, nó giúp chúng ta hiểu rõ hơn về tập dữ liệu đang khảo sát (nhận dạng mẫu, mối quan hệ giữa các thuộc tính). Hierarchical clustering có nghĩa là tạo ra cây phân cấp các nhóm dữ liệu.

Tiếp tục đọc

Kaggle’s Titanic Competition: Chapter 2 – From icebergs to trees

Titanic

Titanic

Ở phần trước, chúng ta đã phân tích một số đặc trưng của tập dữ liệu để xác định rằng giới tính là tác nhân chính ảnh hưởng đến tỉ lệ sống sót. Thuật toán cây quyết định (decision tree) sẽ giúp ta tự động hóa quá trình này và xuất ra flowchart giúp chúng ta dễ dàng diễn giải kết quả dự đoán.

Về mặt khái niệm, thuật toán cây quyết định lấy tập dữ liệu đưa qua nút gốc (root node). Sau đó, dữ liệu được quét qua các thuộc tính phân nhóm. Khi chọn được một thuộc tính phân nhóm, ta sẽ tiếp tục phân nhóm cho đến hết thuộc tính của cây. Nút cuối cùng nằm ở đáy của cây cho biết kết quả dự đoán của mô hình.

Tiếp tục đọc