1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phân tích hành vi sử dụng dịch vụ viễn thông của khách hàng dựa trên thuật toán phân cụm đưa ra chính sách khuyến mại về sản phẩm và theo phân khúc khách hàng

81 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Phân Tích Hành Vi Sử Dụng Dịch Vụ Viễn Thông Của Khách Hàng Dựa Trên Thuật Toán Phân Cụm Đưa Ra Chính Sách Khuyến Mại Về Sản Phẩm Và Theo Phân Khúc Khách Hàng
Tác giả Hoàng Anh Dũng
Người hướng dẫn TS. Trần Trúc Mai, TS. Nguyễn Đình Hóa
Trường học Đại Học Quốc Gia Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại luận văn thạc sĩ
Năm xuất bản 2020
Thành phố Hà Nội
Định dạng
Số trang 81
Dung lượng 2,26 MB

Cấu trúc

  • Chương 1: Giới thiệu (7)
  • Chương 2: Công cụ, nền tảng, thuật toán sử dụng và ứng dụng Phân tích dữ liệu (9)
    • 2.1. Các công cụ nền tảng (9)
      • 2.1.1. Big Data (9)
      • 2.1.2. Giới thiệu về Hadoop (13)
      • 2.1.3. Các ứng dụng trên nền tảng Apache Hadoop (14)
      • 2.1.4. HDFS (16)
      • 2.1.5. Đọc ghi dữ liệu trên HDFS (17)
      • 2.1.6. Map-Reduce (19)
      • 2.1.7. SPARK, nền tảng công cụ và ứng dụng (20)
    • 2.2. Giới thiệu về học máy (26)
      • 2.2.1. Một số khái niệm cơ bản (27)
      • 2.2.2. Các vấn đề trong quá trình thực hiện đề tài (30)
  • Chương 3: Spark và giải thuật rừng ngẫu nhiên song song (Parallel Random Forest - PRF) (32)
    • 3.1. Thuật toán rừng ngẫu nhiên (33)
    • 3.2. Giải thuật xử lý song song rừng ngẫu nhiên cho dữ liệu lớn trong nền tảng Spark (36)
      • 3.2.1. Tối ưu hóa xử lý dữ liệu đồng thời (37)
      • 3.2.2. Tối ưu hóa xử lý tiến trình đồng thời (44)
      • 3.2.3. Phân tích phương pháp xử lý task đồng thời (49)
    • 3.3. Kmeans, tối ưu hóa xử lý Kmeans với Spark (52)
  • Chương 4: Triển khai thực nghiệm (57)
    • 4.1. Cơ sở dữ liệu Khách hàng 360 độ (57)
    • 4.2. Mô hình ứng dụng (60)
      • 4.2.1. Quá trình Phân cụm dữ liệu huấn luyện (63)
      • 4.2.2. Lựa chọn ngẫu nhiên các thuộc tính và đánh giá (67)
      • 4.2.3. Thực hiện huấn luyện dữ liệu với mô hình Parallel RandomForest (67)
    • 4.3. Đánh giá hiệu suất (73)
      • 4.3.1. Đánh giá thời gian xử lý với nhóm dữ liệu (73)
      • 4.3.2. Đánh giá thời gian xử lý với từng cụm (73)
    • 4.4. Đánh giá hiệu quả thực tế (74)
  • TÀI LIỆU THAM KHẢO (80)

Nội dung

Giới thiệu

Trong thời đại hiện nay, dữ liệu đã trở thành nguồn lực thiết yếu cho sự phát triển của doanh nghiệp bên cạnh vốn và nhân lực Khi mua sắm trực tuyến trên các trang thương mại điện tử như eBay, Amazon, Sendo hay Tiki, người tiêu dùng thường nhận được những gợi ý sản phẩm liên quan, phù hợp với nhu cầu của họ, nhờ vào việc phân tích dữ liệu.

Khi bạn duyệt điện thoại, các trang mua sắm trực tuyến thường gợi ý thêm các sản phẩm như ốp lưng và pin dự phòng Tương tự, khi bạn chọn mua áo thun, hệ thống cũng sẽ đề xuất các mặt hàng liên quan như quần jean và thắt lưng để tăng cường trải nghiệm mua sắm của bạn.

Các trang web thông minh sử dụng dữ liệu khách hàng để tối ưu hóa sản phẩm và dịch vụ Dữ liệu này được thu thập từ hoạt động của khách hàng trên website hoặc mua từ các công ty cung cấp dữ liệu Việc phân tích thông tin giúp doanh nghiệp tăng lợi nhuận và cải thiện trải nghiệm mua sắm cho người tiêu dùng Doanh nghiệp có thể phát triển sản phẩm phù hợp với nhu cầu khách hàng và xây dựng chính sách phân phối hiệu quả Người tiêu dùng cũng tiết kiệm thời gian và cảm thấy an tâm hơn khi mua sắm Ở cấp độ ngành và vĩ mô, ứng dụng Big Data giúp dự đoán tỉ lệ thất nghiệp, xu hướng nghề nghiệp tương lai, và đưa ra các chiến lược kinh tế phù hợp, bao gồm cả phòng ngừa dịch bệnh.

Việc ứng dụng nền tảng Big Data một cách hiệu quả có thể mang lại lợi thế cạnh tranh lớn trong nhiều lĩnh vực, đặc biệt là trong thị trường dịch vụ tài chính đang bão hòa Phân tích các ứng dụng của Big Data và các điều kiện cần thiết để triển khai sẽ giúp tối ưu hóa việc sử dụng nguồn tài nguyên, tối đa hóa doanh thu và gắn kết các mục tiêu kinh doanh với hành vi của khách hàng.

8 khách hàng, nhằm mang lại cho doanh nghiệp phương án kinh doanh hiệu quả nhất

Việc khai thác dữ liệu lớn như một nguồn tài nguyên quý giá giúp doanh nghiệp tiếp cận người dùng hiệu quả, đồng thời tối ưu hóa chính sách kinh doanh Điều này không chỉ mang lại lợi ích cho người dùng mà còn thúc đẩy tăng trưởng doanh thu bền vững cho doanh nghiệp.

Đề tài "Phân Tích Hành Vi Sử Dụng Dịch Vụ Viễn Thông Của Khách Hàng Dựa Trên Thuật Toán Phân Cụm Đưa Ra Chính Sách Khuyến Mại Về Sản Phẩm Và Theo Phân Khúc Khách Hàng" nhằm ứng dụng phân tích dữ liệu lớn vào khai thác nguồn tài nguyên đặc biệt - Big Data Bài viết sử dụng các công cụ như Hadoop để lưu trữ và vận hành hệ thống Big Data, cùng với các công cụ xử lý học máy như Spark và Zeppelin (Spark ML) Mục tiêu là áp dụng hệ khuyến nghị và các kỹ thuật phân tích hành vi khách hàng để đưa ra kết quả phù hợp nhất cho từng nhóm đối tượng khách hàng sử dụng dịch vụ viễn thông.

Phần còn lại của luận văn được trình bày theo cấu trúc như sau

Chương 2 trình bày các khái niệm cơ bản liên quan đến nghiên cứu về Big Data, bao gồm các công cụ cần thiết cho việc thực hiện đề tài Phần này cũng mô tả phương thức xây dựng hệ cơ sở dữ liệu khách hàng 360, là khung dữ liệu quan trọng cho việc phát triển và đánh giá các mô hình học máy Ngoài ra, chương còn đề cập đến các thuật toán sẽ được sử dụng trong quá trình thực hiện, cùng với tính ứng dụng của thư viện Spark ML và những ưu điểm nổi bật của Spark trong việc phát triển và áp dụng giải thuật rừng ngẫu nhiên song song.

Chương 3 sẽ trình bày về quá trình thực hiện, các phiên bản xây dựng mô hình và kết quả thực nghiệm

Cuối cùng sẽ là phần kết luận, ý nghĩa phương pháp triển khai, các kết quả đạt được và định hướng nghiên cứu tiếp theo

Công cụ, nền tảng, thuật toán sử dụng và ứng dụng Phân tích dữ liệu

Các công cụ nền tảng

Sự gia tăng không ngừng của công nghệ điện toán đám mây và Internet vạn vật (IoT) đã dẫn đến sự bùng nổ dữ liệu toàn cầu, với quy mô dữ liệu tăng gấp đôi sau mỗi hai năm Giá trị của dữ liệu trong mọi lĩnh vực đang trở nên quan trọng hơn bao giờ hết, nhưng cũng đi kèm với những thách thức lớn trong việc khai thác thông tin có giá trị từ khối lượng dữ liệu khổng lồ Do áp lực cạnh tranh, doanh nghiệp cần xử lý dữ liệu theo thời gian thực, đặt ra yêu cầu cao về hiệu suất và độ chính xác Dữ liệu lớn thường có độ phức tạp và chứa nhiều thuộc tính khác nhau, khiến việc lựa chọn kỹ thuật phân tích phù hợp trở nên cần thiết Khai thác và phân tích dữ liệu quy mô lớn đã trở thành chủ đề nóng trong nghiên cứu, đặc biệt là trong lĩnh vực khai thác dữ liệu phân tán và song song dựa trên nền tảng điện toán đám mây, với Hadoop là một trong những nền tảng nổi bật được sử dụng rộng rãi.

Big Data (Dữ liệu lớn) đề cập đến việc xử lý và phân tích một khối lượng lớn dữ liệu, bao gồm cả dữ liệu có cấu trúc và không có cấu trúc Đối với các tổ chức và doanh nghiệp, việc khai thác dữ liệu khổng lồ này ngày càng trở nên quan trọng, vì nó giúp cải thiện độ chính xác của các phân tích và ra quyết định Sự gia tăng về lượng dữ liệu mang lại cơ hội lớn cho việc tối ưu hóa quy trình và nâng cao hiệu quả kinh doanh.

10 chính xác này sẽ giúp doanh nghiệp đưa ra các quyết định giúp tăng hiệu quả sản xuất, giảm rủi ro và chi phí

Dữ liệu lớn được hình thành từ nhiều nguồn khác nhau, bao gồm cảm biến thu thập thông tin thời tiết, cập nhật từ mạng xã hội, hình ảnh và video kỹ thuật số, cùng với dữ liệu giao dịch từ hoạt động mua sắm trực tuyến Những dữ liệu này có thể tồn tại dưới nhiều hình thức, từ có cấu trúc, phi cấu trúc đến bán cấu trúc.

Big Data là thuật ngữ chỉ tập hợp dữ liệu lớn và phức tạp, vượt quá khả năng xử lý của các công cụ truyền thống Nó tổng hợp thông tin từ nhiều nguồn khác nhau, giúp cải thiện quyết định kinh doanh và nhận diện hành vi nhanh chóng hơn Big Data được nhận diện qua ba khía cạnh chính: Dữ liệu, Công nghệ và Quy mô Dữ liệu bao gồm nhiều định dạng như hình ảnh, video, và thông tin từ các hệ thống công nghệ thông tin, tạo ra quy trình khép kín trong việc thu thập và huấn luyện dữ liệu Khối lượng dữ liệu này rất lớn, được đo bằng Terabytes, Petabytes và Exabytes Ví dụ, Walmart xử lý hơn 1 triệu giao dịch mỗi giờ, trong khi Facebook có hơn 1.9 tỷ người dùng Yếu tố công nghệ trong Big Data bao gồm hệ sinh thái như Hadoop, cho phép xử lý dữ liệu phức tạp hiệu quả Quy mô dữ liệu vẫn đang được mở rộng và phát triển.

Dữ liệu được coi là lớn khi vượt quá khả năng xử lý của các hệ thống truyền thống, và thường được phân loại là Big Data.

Ngày nay, việc các doanh nghiệp sở hữu Big Data riêng đã trở nên phổ biến Chẳng hạn, eBay sử dụng hai trung tâm dữ liệu với dung lượng 40 petabyte để lưu trữ thông tin về truy vấn và hàng hóa, trong khi Amazon xử lý hàng triệu giao dịch và yêu cầu từ nửa triệu đối tác mỗi ngày Facebook quản lý 50 tỉ bức ảnh từ người dùng, còn YouTube và Google lưu giữ thông tin về lượt truy vấn và video Theo khảo sát của Qubole và Dimensional Research, lĩnh vực chăm sóc khách hàng, công nghệ thông tin, và hoạt động tài chính là những lĩnh vực thu lợi nhiều nhất từ Big Data Mục đích khai thác Big Data của các nhà cung cấp toàn cầu là cải thiện dịch vụ khách hàng, phân tích dữ liệu để phát triển sản phẩm, và tăng cường trải nghiệm khách hàng trong bối cảnh cạnh tranh gay gắt Với các công cụ phân tích như phân tích dự báo và khai thác dữ liệu, Big Data hỗ trợ doanh nghiệp đo lường, phân tích vấn đề sản phẩm, phát hiện cơ hội và rủi ro, đồng thời dự báo doanh thu từ hoạt động kinh doanh hàng ngày.

Big Data có thể bao gồm những kiểu dữ liệu sau:

Dữ liệu trong các hệ thống doanh nghiệp truyền thống bao gồm thông tin từ hệ thống quản lý khách hàng, giao dịch tài chính, dữ liệu kế toán, cũng như thông tin giao dịch giữa khách hàng và doanh nghiệp.

Dữ liệu sinh tự động hoặc do cảm biến bao gồm thông tin khách hàng sử dụng dịch vụ, lịch sử truy cập các trang web và dữ liệu ghi lại lịch sử thiết bị sử dụng.

Dữ liệu mạng xã hội là các thông tin được tạo ra từ hoạt động của người dùng trên các nền tảng như Facebook, Twitter, và Instagram, bao gồm hình ảnh, video và nhiều loại dữ liệu khác Đặc điểm nổi bật của Big Data là khối lượng lớn, tốc độ xử lý nhanh và tính đa dạng của dữ liệu, điều này tạo ra cơ hội và thách thức trong việc khai thác và phân tích thông tin.

Ba đặc điểm chính của Big Data bao gồm Dung lượng (volume), Tốc độ (velocity) và Tính đa dạng (variety) Dung lượng của Dữ liệu lớn ngày càng gia tăng mạnh mẽ, với thông tin từ Google cho biết rằng cứ mỗi giây, có một lượng dữ liệu khổng lồ được tạo ra.

Trên toàn cầu, có khoảng 87,000 từ khóa tìm kiếm và hàng petabyte dữ liệu được tạo ra, phản ánh tốc độ (Velocity) mà các công ty phân tích dữ liệu để nâng cao trải nghiệm người dùng Sự phát triển của các kỹ thuật, công cụ và ứng dụng lưu trữ đã giúp nguồn dữ liệu được bổ sung nhanh chóng Về tính đa dạng (Variety), dữ liệu đến từ nhiều nguồn khác nhau, bao gồm dữ liệu có cấu trúc, bán cấu trúc và không có cấu trúc, từ giao dịch đến văn bản ngẫu nhiên trên internet Đặc biệt, khối lượng dữ liệu (Volume) ngày càng lớn, với dữ liệu sinh ra tự động (machine-generated data) vượt xa dữ liệu truyền thống, có thể tạo ra hàng terabyte trong thời gian ngắn và lưu trữ lên đến petabytes Trước đây, việc lưu trữ dữ liệu lớn là một thách thức, nhưng hiện nay, nhờ vào phần cứng rẻ hơn và công nghệ lưu trữ đám mây, việc xác định giá trị từ tập dữ liệu lớn trở thành vấn đề quan trọng hơn.

Tốc độ xử lý dữ liệu (velocity) là yếu tố quan trọng trong việc quản lý dữ liệu lớn, không chỉ đơn thuần là khối lượng dữ liệu mà còn yêu cầu khả năng xử lý nhanh chóng Các hệ thống truyền thông hiện đại cần đảm bảo phản hồi kịp thời và chấp nhận được cho người dùng, vì vậy việc tối ưu hóa tốc độ xử lý dữ liệu là điều cần thiết để đáp ứng nhu cầu ngày càng cao trong việc xử lý dữ liệu lớn.

Tính đa dạng dữ liệu (variety) trong Big Data được thể hiện qua việc thu thập từ nhiều nguồn khác nhau như web và mobile Ngày nay, Big Data không chỉ bao gồm dữ liệu truyền thống theo dạng schema mà còn tích hợp nhiều loại dữ liệu khác, chẳng hạn như hình ảnh.

Big Data có khả năng xử lý dữ liệu cấu trúc, phi cấu trúc và bán cấu trúc, điều này rất quan trọng trong việc quản lý thông tin khổng lồ Để đáp ứng các yêu cầu này, nhiều công ty lớn như Amazon, Google và Facebook đã chọn nền tảng Hadoop làm công cụ chính cho việc lưu trữ và xử lý dữ liệu hiệu quả.

Apache Hadoop là một framework cho phép xử lý dữ liệu lớn phân tán qua các cụm máy tính, sử dụng mô hình lập trình đơn giản Được thiết kế để mở rộng từ một đến hàng nghìn máy, Hadoop hỗ trợ tính toán và lưu trữ cục bộ Một điểm nổi bật của Apache Hadoop là khả năng phát hiện và quản lý lỗi tại tầng ứng dụng, thay vì dựa vào phần cứng để thiết lập cơ chế sẵn sàng cao (High Availability - HA) Điều này cho phép Hadoop cung cấp dịch vụ HA tại các cụm máy tính bằng cách thiết lập thêm một ứng dụng (node) ở chế độ hoạt động hoặc chế độ chờ (active/standby).

Giới thiệu về học máy

Học máy là một lĩnh vực khoa học nghiên cứu và phát triển các kỹ thuật dựa trên trí tuệ nhân tạo, cho phép máy tính suy luận và dự đoán kết quả tương lai thông qua việc huấn luyện từ dữ liệu lịch sử.

Việc xây dựng mô hình học máy và ứng dụng thực tiễn đòi hỏi nhiều mô hình khác nhau, trong đó việc sử dụng mô hình tổng hợp để đạt kết quả tối ưu là rất quan trọng Cần lựa chọn mô hình nhanh, mạnh và hiệu quả về chi phí và tài nguyên Theo [20], học máy được chia thành ba nhóm chính: học có giám sát (supervised), học không giám sát (unsupervised), học bán giám sát (semisupervised) và học tăng cường (Reinforcement Learning).

Cây quyết định là một công cụ mạnh mẽ và phổ biến trong khai thác dữ liệu lớn, đặc biệt là trong phân lớp dữ liệu Những ưu điểm nổi bật của cây quyết định bao gồm khả năng xây dựng nhanh chóng, tính đơn giản và dễ hiểu Hơn nữa, cây quyết định có thể dễ dàng chuyển đổi sang các câu lệnh SQL, giúp truy cập cơ sở dữ liệu hiệu quả Cuối cùng, phương pháp phân lớp dựa trên cây quyết định thường đạt được độ chính xác cao hơn so với các phương pháp khác.

Trong quá trình nghiên cứu, các thuật toán như kiểm định và phân lớp theo rừng ngẫu nhiên (random forest) cùng với phân cụm K-Means được áp dụng để tương tác hiệu quả với nhóm khách hàng mục tiêu, nhằm đạt được tỷ lệ thành công cao nhất.

Cho một tập dữ liệu X:

Một hàm mục tiêu f: X → {đúng, sai}

Tính toán một hàm f’: X → {đúng, sai} sao cho f’(x)  f(x), x X

2.2.1 Một số khái niệm cơ bản

Không gian biểu diễn là một tập hợp:

Ký hiệu là X, mỗi phần tử thuộc X có thể được gọi là các dữ liệu, các thể hiện, các đối tượng hay các ví dụ

Mỗi phần tử S  X được biểu diễn bởi một tập gồm n thuộc tính:

Đối tượng S có thể được biểu diễn kết hợp với lớp liên thuộc của nó, tức là dưới dạng nhãn: z = (s, c) Hình thức học này được gọi là học có giám sát.

Học có giám sát (supervised learning) là một kỹ thuật trong lĩnh vực học máy, nhằm xây dựng hàm f từ dữ liệu huấn luyện Dữ liệu huấn luyện bao gồm các cặp đầu vào và đầu ra mong muốn, với đầu ra của hàm f có thể là giá trị liên tục hoặc dự đoán nhãn phân lớp cho đầu vào.

Hình 2.10 Mô hình học có giám sát

Chương trình học có giám sát nhằm dự đoán giá trị của hàm f cho các đối tượng đầu vào hợp lệ, dựa trên các mẫu dữ liệu huấn luyện gồm cặp đầu vào và đầu ra tương ứng Để đạt được điều này, chương trình cần tổng quát hóa từ dữ liệu hiện có, giúp dự đoán các tình huống chưa gặp một cách hợp lý.

Các bước giải bài toán học có giám sát Ứng dụng các giải thuật sử dụng trong đề tài:

Phân lớp nhị phân (BinaryClassification)

Cây quyết định (Decision Tree)

Thuật toán học Mô hình

29 b Học không có giám sát

Học không có giám sát (unsupervised learning) là phương pháp học máy sử dụng dữ liệu huấn luyện chưa được gán nhãn để tìm ra mô hình phù hợp với các quan sát Khác với học có giám sát, đầu ra đúng cho mỗi đầu vào trong học không có giám sát không được biết trước Quá trình này thường bắt đầu bằng việc thu thập một tập dữ liệu đầu vào ngẫu nhiên, sau đó xây dựng một mô hình mật độ kết hợp cho tập dữ liệu đó.

Học không có giám sát có thể kết hợp với suy diễn Bayes để tạo ra xác suất có điều kiện cho các biến ngẫu nhiên dựa trên thông tin từ các biến khác, chuyển đổi từ học không có giám sát sang học có giám sát Tất cả các thuật toán nén dữ liệu đều dựa vào một phân bố xác suất trên tập đầu vào, có thể là tường minh hoặc không tường minh Thuật toán Clustering phân tích đặc trưng của dữ liệu và nhóm chúng thành các cụm khác nhau, sau đó phân loại các đầu vào mới vào các cụm đã được xác định dựa trên đặc trưng của chúng.

Thuật toán này có 3 loại điển hình:

K-Means Clustering: Phân nhóm dữ liệu vào một số K cụm với quy luật nhất định

Hierarchical Clustering: Phân loại theo thứ bậc

Probabilistic Clustering: Phân loại theo xác suất c Học bán giám sát

Học nửa giám sát (semi-supervised learning) là một phương pháp học máy hiệu quả, trong đó dữ liệu huấn luyện bao gồm cả dữ liệu đã được gán nhãn và dữ liệu chưa được gán nhãn Phương pháp này giúp cải thiện độ chính xác của mô hình học máy bằng cách tận dụng thông tin từ cả hai loại dữ liệu, từ đó nâng cao khả năng nhận diện và phân loại.

Hình 2.11 Mô hình học bán giám sát

Học có giám sát yêu cầu dữ liệu huấn luyện được gán nhãn, mang lại độ chính xác cao nhưng tốn nhiều thời gian và tài nguyên để thực hiện Việc gán nhãn dữ liệu là một quá trình tốn kém và đòi hỏi nỗ lực lớn từ con người Ngược lại, mô hình học không có giám sát sử dụng dữ liệu chưa được gán nhãn, dẫn đến độ chính xác thấp hơn, nhưng lại dễ dàng thu thập với chi phí rẻ.

Học nửa giám sát kết hợp ưu điểm của học có giám sát và không có giám sát, giúp khắc phục nhược điểm của cả hai phương pháp Bằng cách sử dụng một lượng lớn dữ liệu chưa gán nhãn cùng với một lượng nhỏ dữ liệu đã gán nhãn, các thuật toán học nửa giám sát mang lại kết quả với độ chính xác cao và tiết kiệm thời gian Do đó, học nửa giám sát trở thành một phương pháp hiệu quả trong lĩnh vực học máy.

Trong quá trình thực hiện đề tài, việc ứng dụng kết hợp các mô hình học máy và phân tích dữ liệu là cần thiết để đạt hiệu quả tối ưu, đặc biệt khi xử lý khối lượng dữ liệu lớn.

2.2.2 Các vấn đề trong quá trình thực hiện đề tài

Trong quá trình thực hiện đề tài, một trong những vướng mắc lớn nhất trong học máy là chọn thuật toán phù hợp và huấn luyện trên tập dữ liệu xác định Có hai tình huống xấu nhất có thể xảy ra: thứ nhất, thuật toán không hiệu quả, và thứ hai, dữ liệu không đạt yêu cầu Dù dữ liệu đã được làm sạch, nhưng vẫn có thể bị nhiễu bởi các yếu tố bên ngoài hoặc ảnh hưởng từ các thuộc tính đặc thù do tình huống thực tế tạo ra.

Theo [23], những vấn đề chính trong quá trình xây dựng mô hình bao gồm thiếu dữ liệu đào tạo, dữ liệu không đại diện, chất lượng dữ liệu kém, và hiện tượng Overfitting và Underfitting Để khắc phục, cần bổ sung dữ liệu, loại bỏ thuộc tính dư thừa và tách tập huấn luyện và kiểm tra nhiều lần Việc chọn tập dữ liệu đại diện cho nhóm huấn luyện là rất quan trọng để nâng cao hiệu quả mô hình Bên cạnh đó, lựa chọn giải thuật và phương pháp xử lý tối ưu, cùng với việc thử nghiệm nhiều lần, sẽ giúp tìm ra mô hình phù hợp nhất Sử dụng cơ chế xử lý của Spark kết hợp với giải thuật Rừng Ngẫu Nhiên và giải thuật Phân Cụm sẽ được trình bày chi tiết trong các phần 2.3 và 2.4, trong đó sẽ cụ thể hóa thuộc tính dữ liệu sau khi loại bỏ các yếu tố gây nhiễu.

Spark và giải thuật rừng ngẫu nhiên song song (Parallel Random Forest - PRF)

Thuật toán rừng ngẫu nhiên

Thuật toán rừng ngẫu nhiên là một phương pháp phân loại dựa trên cây quyết định, trong đó tạo ra nhiều tập con dữ liệu huấn luyện khác nhau từ tập dữ liệu gốc thông qua kỹ thuật lấy mẫu bootstrap Sau đó, các cây quyết định được xây dựng từ những tập con này để tạo thành một tập hợp rừng ngẫu nhiên Mỗi mẫu trong tập dữ liệu thử nghiệm sẽ được dự đoán bởi tất cả các cây quyết định, và kết quả phân loại cuối cùng được xác định dựa trên đánh giá tổng hợp từ các cây này.

Hình 3.2 Quá trình xây dựng thuật toán rừng ngẫu nhiên RandomForest

Tập dữ liệu huấn luyện ban đầu S bao gồm N mẫu với M biến đặc trưng, trong đó x đại diện cho mẫu và y đại diện cho thuộc tính của S Quy trình xây dựng thuật toán RF được minh họa rõ ràng trong hình.

Các bước xây dựng thuật toán rừng ngẫu nhiên như sau:

Bước 1 : lấy k mẫu con huấn luyện

Trong bước này, k tập con huấn luyện được tạo ra từ tập dữ liệu huấn luyện ban đầu S thông qua phương pháp lấy mẫu bootstrap Cụ thể, N bản ghi được chọn ngẫu nhiên từ S với phương pháp lấy mẫu và thay thế Kết quả là, k tập con huấn luyện hình thành nên một tập hợp các tập con huấn luyện S Train.

Tập S Train bao gồm các bản ghi S1, S2, …, Sk Trong mỗi giai đoạn lấy mẫu, các bản ghi không được chọn sẽ tạo thành tập dữ liệu Out-Of-Bag (OOB) Như vậy, k tập OOB được xây dựng sẽ tạo thành tập hợp S OOB.

Khi k nhỏ hơn nhiều so với N, tập hợp S i giao với OOB i sẽ là rỗng, trong khi S i hợp với OOB i sẽ bằng S Để xác định độ chính xác phân loại của từng cây, các bộ OOB này được sử dụng làm tập kiểm tra sau quá trình huấn luyện.

Bước 2: Xây dựng mô hình cây quyết định

Trong mô hình RF, mỗi cây quyết định được tạo ra từ thuật toán C4.5 dựa trên các tập huấn luyện nhỏ Trong quá trình phát triển cây, một số thuộc tính được chọn ngẫu nhiên từ tập hợp tổng thể Khi phân tách các nút của cây, thuật toán xem xét tất cả các phép thử có thể và chọn phép thử có Gain Ratio tốt nhất để phân chia dữ liệu Gain Ratio giúp đánh giá hiệu quả của thuộc tính trong việc tách dữ liệu Quá trình này tiếp tục cho đến khi tạo ra nút lá, dẫn đến việc hình thành k cây quyết định từ k tập con huấn luyện.

Bước 3: thu thập k cây vào trong một mô hình RF

Toàn bộ k cây huấn luyện được thu thập vào một mô hình RF:

Trong bài viết này, chúng ta tìm hiểu về cây quyết định trong thuật toán Random Forest (RF), trong đó h j (x, Θ j ) đại diện cho số lượng cây quyết định, X là các vectơ thuộc tính đầu vào từ tập dữ liệu huấn luyện, và Θ j là vectơ ngẫu nhiên độc lập Độ phức tạp của thuật toán RF ban đầu là O(kMNlogN), với k là số cây, M là số thuộc tính, N là số mẫu, và logN là độ sâu trung bình của các cây trong mô hình Thuật toán cải tiến PRF áp dụng phương pháp giảm chiều dữ liệu với độ phức tạp O(MN), cho phép xử lý song song và phân chia các tác vụ trên Spark đồng thời trên các node Quá trình này kết hợp các hàm tính toán trong việc phân chia và xử lý trên mỗi nút.

36 entropy(), gain(), và gainratio() với mỗi không gian thuộc tính con đặc trưng

Theo đó, việc tính toán giảm chiều dữ liệu, sẽ giảm từ M xuống còn m (m

Ngày đăng: 20/07/2021, 09:31

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] U. Sivarajah, M. Kamal, Z. Irani and V. Weerakkody, "Critical analysis of Big Data challenges and analytical methods", Journal of Business Research, vol Sách, tạp chí
Tiêu đề: Critical analysis of Big Data challenges and analytical methods
[2] A. Azar and A. Hassanien, "Dimensionality reduction of medical big data using neural-fuzzy classifier", Soft Computing, vol. 19, no. 4, pp. 1115-1127, June 2014 Sách, tạp chí
Tiêu đề: Dimensionality reduction of medical big data using neural-fuzzy classifier
[3] A. Nega and A. Kumlachew, "Data Mining Based Hybrid Intelligent System for Medical Application", International Journal of Information Engineering and Electronic Business, vol. 9, no. 4, pp. 38-46, 2017 Sách, tạp chí
Tiêu đề: Data Mining Based Hybrid Intelligent System for Medical Application
[4] P. K. Ray, S. R. Mohanty, N. Kishor, and J. P. S. Catalao, “Optimal feature and decision tree-based classification of power quality disturbances in distributed generation systems,” Sustainable Energy, IEEE Transactions on, vol. 5, no. 1, pp. 200–208, January 2014 Sách, tạp chí
Tiêu đề: Optimal feature and decision tree-based classification of power quality disturbances in distributed generation systems,” "Sustainable Energy, IEEE Transactions on
[5] T. White, “Hadoop: The Definitive Guide.” O’Reilly Media Inc./Yahoo Press, 2012 Sách, tạp chí
Tiêu đề: “Hadoop: The Definitive Guide.”
[6] J. Corbett, P. Hochschild, W. Hsieh, S. Kanthak, E. Kogan, H. Li, A. Lloyd, et al., “Spanner: Google’s globally distributed database,” ACM Transactions on Computer Systems, vol. 31, no. 3, pp. 1-22, 2013 Sách, tạp chí
Tiêu đề: et al"., “Spanner: Google’s globally distributed database,” "ACM Transactions "on Computer Systems
[7] Gordon S. Linoff, Michael J. A. Berry (2011): “Data Mining Techniques - For Marketing, Sales, and Customer Relationship Management 3rd”. pp. 23-29 Sách, tạp chí
Tiêu đề: “Data Mining Techniques - For "Marketing, Sales, and Customer Relationship Management 3rd”
Tác giả: Gordon S. Linoff, Michael J. A. Berry
Năm: 2011
[8] L. Abraham, S. Subramanian, J. Wiener, O. Zed, J. Allen, O. Barykin, et al., “Scuba: Diving into data at FaceBook,” Proceedings of the VLDB Endowment, vol. 6, no. 11, pp. 1057-1067, 2013 Sách, tạp chí
Tiêu đề: Scuba: Diving into data at FaceBook
[9] G. Lee, J. Lin, C. Liu, A. Lorek, and D. Ryaboy, “The unified logging infrastructure for data analytics at Twitter,” Proceedings of the VLDB Endowment, vol. 5, no.12, pp.1771-1780, 2012 Sách, tạp chí
Tiêu đề: The unified logging "infrastructure for data analytics at Twitter,”
[10] Sam B. Siewert: “Big data in the cloud - Data velocity, volume, variety and veracity”. pp. 2-8 (2013) Sách, tạp chí
Tiêu đề: “Big data in the cloud - Data velocity, volume, variety and "veracity”
[13] Eric Sammer: “Hadoop Operations”, CHATER 3. MAPREDUCE, pp.25 – 37. September 2012 Sách, tạp chí
Tiêu đề: “Hadoop Operations”, CHATER 3. MAPREDUCE
[14] L. Breiman, “Random forests,” Machine Learning, vol. 45, no. 1, pp. 5–32, October 2001 Sách, tạp chí
Tiêu đề: Random forests",” "Machine Learning
[15] Eréndira Rendón, Itzel Abundez, Alejandra Arizmendi and Elvia M. Quiroz (2011): Internal versus External cluster validation indexes. Issue 1, Volume 5.27-33 Sách, tạp chí
Tiêu đề: Internal versus External cluster validation indexes. Issue 1, Volume 5
Tác giả: Eréndira Rendón, Itzel Abundez, Alejandra Arizmendi and Elvia M. Quiroz
Năm: 2011
[16] S. Bernard, S. Adam, and L. Heutte (September 2012): “Dynamic random forests,” Pattern Recognition Letters, vol. 33, no. 12, pp. 1580–1586 Sách, tạp chí
Tiêu đề: “Dynamic random "forests,” Pattern Recognition Letters
[17] Darius Pfitzner, Richard Leibbrandt, David M. W. Powers (2009): Characterization and evaluation of similarity measures for pairs of clusterings.Knowl. Inf. Syst. 19(3): 361-394 Sách, tạp chí
Tiêu đề: Characterization and evaluation of similarity measures for pairs of clusterings. Knowl. Inf. Syst
Tác giả: Darius Pfitzner, Richard Leibbrandt, David M. W. Powers
Năm: 2009
[18] Maria Halkidi, Yannis Batistakis, Michalis Vazirgiannis (2001): “On Clustering Validation Techniques.”, J. Intell. Inf. Syst. 17(2-3): 107-145 Sách, tạp chí
Tiêu đề: On "Clustering Validation Techniques."”, "J. Intell. Inf. Syst
Tác giả: Maria Halkidi, Yannis Batistakis, Michalis Vazirgiannis
Năm: 2001
[19] Frank, Eibe Hall, Mark A. Pal, Christopher J. Witten, Ian H (2017): “Data mining, practical machine learning tools and techniques”. pp.7-9 Sách, tạp chí
Tiêu đề: “Data "mining, practical machine learning tools and techniques”
Tác giả: Frank, Eibe Hall, Mark A. Pal, Christopher J. Witten, Ian H
Năm: 2017
[20] Aurélien Géron (2017): “Hands-On Machine Learning with Scikit-Learn & TensorFlow - Concepts, Tools, And Techniques To Build Intelligent Systems”, Chapter 1. The Machine Learning Landscape, pp 7-14 Sách, tạp chí
Tiêu đề: “Hands-On Machine Learning with Scikit-Learn & "TensorFlow - Concepts, Tools, And Techniques To Build Intelligent Systems”, Chapter 1. The Machine Learning Landscape
Tác giả: Aurélien Géron
Năm: 2017
[21] Gordon S. Linoff, Michael J. A. Berry (2011): “Data Mining Techniques: For Marketing, Sales, and Customer Relationship Management 3rd”, Figure 5.13, pp. 137-141 Sách, tạp chí
Tiêu đề: “Data Mining Techniques: For "Marketing, Sales, and Customer Relationship Management 3rd”
Tác giả: Gordon S. Linoff, Michael J. A. Berry
Năm: 2011
[22] A. Spark, “Spark mllib - random forest,” Website, June 2016, http://spark.apache.org/docs/latest/mllib-ensembles.html Sách, tạp chí
Tiêu đề: Spark mllib - random forest

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN