Phân cụm Websites với K-MEANS

Phân cụm Websites với K-MEANS

 

1.Thuật toán K-MEANS

Thuật toán K-MEANS thuộc nhóm các phương pháp phân cụm dựa vào cụm trung tâm. Thuật toán K-MEANS trong quá trình học không cần giám sát, nghĩa là trước khi chạy không định sẵn các kết quả trả về. Quá trình học, cập nhật và chạy có thể diễn ra đồng thời.Mục tiêu của thuật toán là phân chia tập dữ liệu có sẵn thành k cụm khác nhau với số là số cho trước. Đối với dữ liệu mới cần phân cụm có thể chạy lại thuật toán từ đầu để phân cụm được kết quả tốt nhất, điều này gây mất thời gian do thuật toán sử dụng việc lặp các thao tác tìm cụm trung tâm và tính khoảng cách giữa cụm trung tâm và các phần tử. Trên thực tế, quá trình xác định dữ liệu mới sẽ được phân vào các cụm nào người ta thường dựa trên khoảng cách từ dữ liệu mới tới các cụm trung tâm của lần phân cụm cuối cùng. Sau một khoảng thời gian định trước hoặc số lượng tới hạn dữ liệu mới được thêm, thuật toán K-MEANS sẽ được chạy lại để tăng độ chính xác các cụm.Thuật toán K-Means hoạt động dựa vào các bước xử lý theo trình tự:

Bước 1: Cho dữ liệu đầu vào là một tập S gồm M điểm (mỗi điểm là một phần tử có N thuộc tính, hay có thể gọi là một vector N chiều), và giá trị K (số cụm).

Bước 2: Với mỗi cụm trong K cụm ta cần có một điểm trung tâm, vì vậy ta cần khởi tạo giá trị cho K điểm ngẫu nhiên, mỗi điểm cùng có N thuộc tính và giá trị nằm trong khoảng biên giá trị tương ứng với thuộc tính đó của tập dữ liệu được cho. Đôi khi người ta chỉ đơn giản là chọn ngẫu nhiên K điểm trung tâm từ trong số các điểm dữ liệu thuộc tập được cho.

Bước 3: Lần lượt kiểm tra và nhóm mỗi điểm trong tập S vào một trong K nhóm mà nó gần nhất (dựa vào sự tương đồng, hay khoảng cách) với điểm trung tâm của nhóm đó. Có rất nhiều dạng khoảng cách hay độ tương đồng có thể được sử dụng, trong đó phổ biến nhất có lẽ là khoảng cách Euclid.

Bước 4: Cập nhật lại điểm trung tâm của mỗi nhóm bằng giá trị trung bình của tập điểm trong mỗi nhóm.

Bước 5: Lặp lại bước 3 và bước 4 cho đến khi giá trị điểm trung tâm không còn thay đổi hoặc sự thay đổi của giá trị điểm trung tâm giữa 2 lần chạy đạt một giá trị epsilon (e) cho trước. Khi đó thuật toán kết thúc, tập dữ liệu đã được phân vào K cụm, mỗi cụm có một điểm trung tâm xác định.

Để việc phân cụm được chính xác và tốc độ phân cụm được nhanh, người ta có thể kết hợp một hoặc nhiều cải tiến sau để nâng cao hiệu quả của thuật toán K-MEANS:

+ Sử dụng K số cụm phù hợp đảm bảo tốc độ và số cụm được phân

+ Chuẩn hóa dữ liệu trước khi phân cụm

+ Chọn các điểm trung tâm ban đầu và số epxilon phù hợp

+ Sử dụng công thức tính độ tương đồng hoặc khoảng cách giữa 2 điểm dữ liệu phù hợp

 

2.Ứng dụng thuật toán K-MEANS trong phân cụm website

Đối với bài toán phân cụm Website, thuật toán K-MEANS là ứng cử viên hàng đầu để giải bởi tính đơn giản, dễ cài đặt của thuật toán và đặc thù của website là sự phức tạp của dữ liệu. Có nhiều hướng tiếp cận bài toán với thuật toán K-MEANS, sau đây là hướng tiếp cận cơ bản được nhiều nhà nghiên cứu sử dụng:

+ Đối với mỗi website được coi là một điểm dữ liệu, tập dữ liệu M chính là tập các website cần phân cụm.

+ Số thuộc tính (N) của một điểm dữ liệu là tập hợp danh sách các từ khóa, các từ khóa này được lấy có thể dựa vào thuật toán trích trọn đặc trưng từ trang, danh sách các thẻ được gắn, các từ khóa trong thẻ metadata…

+ Để tính khoảng cách giữa các điểm dữ liệu ta có thể sử dụng hoặc sự kết hợp giữa các phương pháp sau: độ tương tự giữa từ với từ, sử dụng độ đo Cosin, lập từ điển từ khoá…

+ Lựa chọn các website lớn làm các điểm trung tâm ban đầu thay vì việc lựa chọn ngẫu nhiên.

 

3.Khó khăn trong sử dụng K-MEANS để phân cụm website

Trong phân cụm Website, K-means là một lựa chọn tốt nhưng cũng có một số điểm hạn chế cũng như khó khăn nhất trong việc triển khai thực tế như sau:

+ Dữ liệu trên các website ngày càng đa dạng, việc trích lấy danh sách các từ khóa cũng là một chủ đề lớn cần nghiên cứu. Ví dụ việc lấy thông tin từ khóa từ các website chuyên về ảnh, video, âm thanh…

+ Số lượng các website ngày càng lớn, việc chạy thuật toán lặp nhiều lần là cả một vấn đề. Cần đưa ra những chiến lược mới về việc lựa chọn phương pháp đo khoảng cách hiệu quả, áp dụng các thuật toán chạy song song…

+ Một số các website là các trang tin tức nhiều chủ đề, các website mạng xã hội… cần nghiên cứu loại bỏ hoặc sắp xếp sau do những trang này có thể sẽ thuộc vào nhiều cụm sẽ làm thuật toán chạy chậm và kém hiệu quả.

+ Các website ngày càng phát triển nhiều về nội dung đồng nghĩa với việc sẽ có nhiều chủ đề dẫn tới việc phân chia thành các cụm phẳng (đồng mức) làm tăng số cụm. Việc này sẽ không hiệu quả trong thực tế, cần phải nghiên cứu việc phân cụm theo từng mức.

[Download] Tạp chí Trí tuệ nhân tạo số 4

Tạp chí Trí tuệ nhân tạo số 4

Tạp chí Trí tuệ nhân tạo số 2
Tạp chí Trí tuệ nhân tạo

Trong số này, Chuyên mục Góc nhìn chuyên gia sẽ đề cập đến những tác động của Trí tuệ Nhân tạo tới các vị trí công việc trong ngành tài chính, mà cụ thể là các trader trên các sàn giao dịch.

Mục Machine Learning tutorial vẫn sẽ tiếp tục giới thiệu sâu hơn về mô hình linear regression.

Trong khi đó, chuyên mục Python trong Machine Learning sẽ dừng lại để nhường chỗ cho việc giới thiệu R, một ngôn ngữ thống kê rất manh mẽ được sử dụng rất phổ biến trong khoa học dữ liệu và phát triển Machine Learning trước khi Python bắt đầu xâm lấn. Ngôn ngữ R sẽ được giới thiệu trong hai số liên tiếp, sau đó Python sẽ trở lại với một cấu trúc nội dung mới.

Như đã nói, 2 pages paper sẽ đề cập đến AlphaGo Zero, AI agent đã gây sốc cho toàn thế giới khi vượt qua mọi phiên bản tiền nhiệm mà không cần dùng đến dữ liệu huẩn luyện từ con người. Chúng ta sẽ tìm hiểu training pipeline của AlphaGo Zero để có những hình dung cơ bản nhất về phương pháp self-play Reinforcement Learning mới này.

Bạn có thể xem và tải miễn phí tại đây.

[Download] Tạp chí Trí tuệ nhân tạo số 3

Tạp chí Trí tuệ nhân tạo số 3

Tạp chí Trí tuệ nhân tạo
Tạp chí Trí tuệ nhân tạo

Tháng 11 đã tới và đã đến lúc Tạp chí Trí tuệ Nhân tạo số mới được phát hành. Lý do số thứ 3 đến hôm nay mới được ra mắt vì lịch phát hành được ấn định mới vào thứ Hai đầu tiên của mỗi tháng.
Trong số thứ 3 này:

  • Chuyên mục Machine Learning tutorial sẽ được tiếp tục với những kiến thức chuyên sâu hơn về thuật toán Regression.
  • Chuyên mục Python sẽ giới thiệu về những thư viện Python cơ bản được dùng thường xuyên trong Machine Leaning và Data Science.
  • Phần Góc nhìn chuyên gia sẽ giới thiệu bài viết về phân đoạn thị trường của Công nghiệp Trí tuệ Nhân tạo.
  • Chuyên mục 2 Pages Paper sẽ nói về một nghiên cứu mang tính thực tế cao trong lĩnh vực Big Data và Applied Statistic là sử dụng các dữ liệu tiêu thụ ánh sáng ban đêm quan sát từ không gian để ước lượng tốc độ phát triển kinh tế.

Bạn có thể xem và tải miễn phí tại đây.

[Download] Tạp chí Trí tuệ nhân tạo số 2

Tạp chí Trí tuệ nhân tạo số 2

Tạp chí Trí tuệ nhân tạo số 2
Tạp chí Trí tuệ nhân tạo số 2

Trong số 2 này, Tạp chí Trí tuệ Nhân tạo đánh dấu những thay đổi lớn trong định hướng xây dựng nội dung. Từ số thứ 2 trở đi, Tạp chí Trí tuệ Nhân tạo sẽ tập trung vào việc cung cấp những thông tin, kiến thức bổ ích chuyên sâu về Artificial Intelligence nói chung và Machine Learning nói riêng. Tạp chí sẽ cấu thành từ 4 chuyên mục nhỏ:

  • Góc nhìn chuyên gia: Giới thiệu các bài viết của các chuyên gia Artificial Intelligence và các lĩnh vực liên quan về các vấn đề trong ngành.
  • Machine Learning tutorial: Cung cấp các kiến thức từ cơ bản tới nâng cao về Machine Learning tới các bạn đọc đang tìm hiểu và học hỏi về Machine Learning.
  • Python trong Machine Learning: Python là ngôn ngữ chính được sử dụng trong quá trình nghiên cứu và lập trình ứng dụng Machine Learning. Chuyên mục này sẽ giới thiệu tới bạn đọc các kiến thức về lập trình Python trong Machine Learning, cách thực thi các thuật toán Machine Learning dựa trên Python
  • 2 pages paper: Đây là chuyên mục giới thiệu các công trình nghiên cứu của các chuyên gia trên thế giới. Tất cả các nội dung sẽ được tóm tắt gọn trong 2 trang tạp chí.

BTT Tạp chí rất cám ơn bạn đọc đã ủng hộ tạp chí trong thời gian qua. Chúng tôi sẽ cố gắng nâng cao cả về chất lượng và số lượng nội dung trong các số báo trong tương lai để phục vụ bạn đọc.

Bạn có thể xem và tải miễn phí tại đây.

Tạp chí Trí tuệ nhân tạo số 1

Tạp chí Trí tuệ nhân tạo số 1

Mặc dù Trí tuệ Nhân tạo mới được chú ý trong vài năm trở lại đây, nhưng những lý thuyết và kỹ thuật trong lĩnh vực này đã được liên tục nghiên cứu và phát triển trong hơn nửa thế kỷ qua. Cho đến năm 2017, khối lượng tri thức trong lĩnh vực này đã rất lớn và tăng ngày càng nhanh. Đó là nhờ sự đầu tư tích cực từ các tập đoàn công nghệ cũng như các trường đại học trên thế giới.

Tạp chí Trí tuệ nhân tạo số 1
Tạp chí Trí tuệ nhân tạo số 1

Các nội dung chính trong số đầu tiên này

Mong muốn đem những kiến thức, thông tin về Trí tuệ Nhân tạo và Machine Learning đến gần với bạn đọc Việt Nam hơn, giúp công nghệ này dễ tiếp cận hơn với người Việt. Tạp trí Trí tuệ Nhân tạo Số đầu tiên sẽ giới thiệu tới các bạn đọc cái nhìn tổng quan nhất về Trí tuệ Nhân tạo. Sau đó là những kiến thức về Reinforcement Learning. Đó một phương pháp Machine Learning đang đạt được nhiều thành tựu trong phát triển Trí tuệ Nhân tạo hiện nay.

Tạp chí cũng sẽ cung cấp nhưng bài viết về những kiến thức cơ bản về toán học và lập trình cần thiết. Để bạn đọc, kể cả những người hoàn toàn chưa có kiến thức về lĩnh vực này, có thể bắt tay vào tìm hiểu và nghiên cứu AI.

Các bạn độc giả có thể truy cập và tải về số đầu tiên của Tạp chí: Tạp chí Trí tuệ nhân tạo số 1.

Là số đầu tiên, Tạp chí khó tránh khỏi những sai sót không đáng có. Ban Biên Tập rất mong nhận được sự góp ý của độc giả để có thể nâng cao chất lượng nội dung của tạp chí. BBT cũng rất mong nhận được sự đóng góp về ý tưởng và bài viết của các bạn độc giả. Mọi chi tiết xin liên hệ [email protected]

BBT xin chân thành cảm ơn!!!

Bài viết được trích dẫn tại đây.

Bạn cũng có thể xem các tin tức mới nhất về trí tuệ nhân tạo tại đây.