Dữ liệu lớn (big data) là thuật ngữ mới được nhắc đến nhiều trong những năm gần đây. Thuật ngữ này ám chỉ đến các tập dữ liệu có kích thước rất lớn và phức tạp.Vì thế, ta không thể quản lý, khai phá được các dữ liệu này với các phương pháp và công cụ hiện có do tính đa dạng (Variety), tốc độ (Velocity) và độ lớn của dữ liệu (Volume). Từ đây nảy sinh ra thuật ngữ khai phá dữ liệu lớn (big data mining) với mục đích khai phá tri thức từ các nguồn dữ liệu lớn này. Khai phá dữ liệu lớn thực sự là một thách thức và cơ hội lớn trong những năm tới. Bài viết này giới thiệu tổng quan về khai phá dữ liệu lớn, những thách thức trong việc khai phá dữ liệu lớn.
DỮ LIỆU LỚN
Thời đại của petabyte đã qua và gần như đã biến mất, thay vào đó là thời đại của exabyte. Cuộc cách mạng công nghệ đã tạo ra nguồn dữ liệu to lớn với sự bùng nổ của hàng triệu thiết bị kĩ thuật số, các thiết bị cảm biến, kết quả là sự ra đời của khái niệm "dữ liệu lớn“ (big data). Chúng ta đang và sẽ tiếp tục đối mặt với một lượng lớn dữ liệu liên tục được tạo ra ở quy mô chưa từng có. Google đã ước tính rằng, trong năm 2010, cứ hai ngày thì thế giới tạo ra dữ liệu nhiều như lượng dữ liệu mà toàn cầu có được đến năm 2003. Một khảo sát được thực hiện năm 2013 của NewVantage [1] đã chỉ ra rằng "nói đến dữ liệu lớn là nói về sự đa dạng của dữ liệu chứ không phải về số lượng dữ liệu" trong khi quan điểm trước đây tin rằng vấn đề quan trọng nhất với dữ liệu lớn là quy mô (scale) và kích thước (volume) dữ liệu. Trên thực tế, dữ liệu lớn bao gồm rất nhiều các dạng dữ liệu, từ văn bản, hình ảnh, âm thanh đến video và bất cứ dạng thức nào khác. Dữ liệu lớn thường xuất hiện dưới hình thức là một dòng (stream) của nhiều dạng dữ liệu. Trong đó, thời gian là yếu tố không thể thiếu của dòng dữ liệu. Điều này nghĩa là các dữ liệu đó cần được xử lý hay khai thác theo thời gian hoặc gần như là theo thời gian thực (real-time). Bên cạnh đó, các doanh nghiệp hay công ty - đối tượng quan tâm chủ yếu hiện tại với dữ liệu lớn, đặc biệt chú ý tới "môi trường dữ liệu lớn có thể tăng tốc các chiến lược kinh doanh quan trọng theo thời gian - điều thể hiện rõ nét giá trị kinh doanh của doanh nghiệp" [4].
NHỮNG THÁCH THỨC CỦA KHAI PHÁ DỮ LIỆU LỚN
Mục tiêu của các kỹ thuật khai phá dữ liệu lớn là đưa ra được các thông tin yêu cầu hoặc thậm chí phát hiện ra những mối quan hệ ẩn và các mẫu (pattern) trong hàng loạt các tham số. Việc phân tích các dòng dữ liệu nhanh và lớn có thể đưa ra những tri thức mới có giá trị và thậm chí là các khái niệm mang tính lý thuyết. So sánh với kết quả thu được từ khai phá các dữ liệu thông thường, việc khai phá dữ liệu lớn trong một lĩnh vực nào đó có tiềm năng tối đa hóa tri thức và hiểu biết của chúng ta trong lĩnh vực đó. Tuy nhiên, theo các nhà phân tích của Gartner thì các đặc điểm nổi trội của dữ liệu lớn là 3 chữ V (Volume - kích thước, Velocity - sự biến đổi, và Variety - đa dạng) (hoặc gọi tắt là V3). Do đó, khai phá dữ liệu lớn phải đối mặt với tính không đồng nhất, kích thước lớn, tốc độ, bảo mật, chính xác, tin cậy [2].
Sự đa dạng và không đồng nhất
Các kỹ thuật khai phá dữ liệu trước đây được sử dụng để khai phá các mẫu chưa biết và các mối quan hệ các tập dữ liệu nhỏ, có cấu trúc, đồng nhất. Sự đa dạng là một trong những đặc điểm quan trọng của dữ liệu lớn. Đây là kết quả sự tổng hợp của gần như không giới hạn các nguồn dữ liệu, hệ quả tất yếu của hiện tượng này là sự không đồng nhất của dữ liệu. Dữ liệu lớn đến từ rất nhiều nguồn khác nhau từ các mạng xã hội, website, trường đại học, các bài báo, hội thảo đến các công ty, doanh nghiệp cùng với mối quan hệ xã hội phức tạp giữa chúng. Việc khai phá những dữ liệu lớn như vậy là một thách thức lớn đến mức khó có thể dự đoán được bởi lẽ việc xử lý những nguồn dữ liệu gồm cả có cấu trúc, bán cấu trúc và phi cấu trúc này là vấn đề cực kì phức tạp. Các hệ thống cơ sở dữ liệu ngày nay có thể phù hợp tốt với cấu trúc dữ liệu có cấu trúc hoặc phù hợp một phần với dữ liệu bán cấu trúc nhưng chắc chắn là không phù hợp với dữ liệu phi cấu trúc. Tuy nhiên, tính không đồng nhất của dữ liệu cũng đem lại những cơ hội khám phá những tri thức mới trong các nguồn dữ liệu lớn này.
Xét một ví dụ kinh điển trong khai phá dữ liệu: xem xét mối quan hệ giữa các mặt hàng trong một cửa hàng tạp hoá. Các bản ghi trong tập dữ liệu lưu trữ đều thuộc cùng kiểu dữ liệu (các mặt hàng). Cụ thể là mối liên hệ chặt chẽ giữa "bia và bỉm“ hay "sữa“ là sản phẩm phổ biến do được mua bởi hầu hết khách hàng cho thấy mối liên hệ mạnh mẽ giữa "sữa“ và các sản phẩm khác. Trái ngược với đó, khai phá dữ liệu lớn phải đối mặt với các dữ liệu bán cấu trúc và không đồng nhất. Mở rộng ví dụ đơn giản trên cho một trang bán hàng trực tuyến như eBay. Các dữ liệu gồm ít nhất 3 kiểu đối tượng khác nhau: mặt hàng, người mua, người bán. Các mối quan hệ có thể tồn tại như: giữa các mặt hàng là quan hệ "mua cùng với“, giữa người bán và mặt hàng là quan hệ "bán“ và "bán bởi“, giữa mua và mặt hàng là quan hệ "mua“ và "mua bởi“, giữa người mua và người bán là quan hệ "mua từ“ và "bán cho“. Rõ ràng, mạng dữ liệu này có các kiểu đối tượng và quan hệ khác nhau và các kĩ thuật khai phá dữ liệu hiện tại sẽ không thể phát hiện hết các mối quan hệ tiềm ẩn và nội tại trong mạng dữ liệu này.
Thực tế cho thấy việc xây dựng một mô hình đơn để khai phá dữ liệu không đồng nhất có thể dẫn đến kết quả khai phá không chấp nhận được. Do vậy, cần thiết phải xây dựng các hệ thống phức tạp, đa mô hình. Vucetic [5] đã giới thiệu một thuật toán khá thú vị để xử lý các dữ liệu không đồng nhất. Theo đó, tác giả sử dụng kĩ thuật phân hoạch tập dữ liệu ban đầu thành các tập con đồng nhất và áp dụng một mô hình chuyên biệt cho mỗi tập con đồng nhất đó. Kỹ thuật phân hoạch sẽ giúp đẩy nhanh quá trình khám phá tri thức từ dữ liệu lớn không đồng nhất thế nhưng có thể làm bỏ sót các tri thức tiềm năng một khi việc phân hoạch làm phá vỡ các mối quan hệ quan trọng trong dữ liệu.
Tương tự như khai phá dữ liệu, quá trình khai phá dữ liệu lớn bắt đầu với việc lựa chọn dữ liệu (từ nhiều nguồn), lọc dữ liệu, làm sạch, giảm, và chuyển đổi. Tại mỗi bước tiền xử lý luôn tồn tại những thách thức. Với lọc dữ liệu, làm sao ta có thể đảm bảo rằng các dữ liệu bị loại bỏ sẽ không làm suy giảm nghiêm trọng chất lượng của các kết quả cuối cùng được khai phá do sự phức tạp của tính không đồng nhất của dữ liệu lớn? Các vấn đề tương tự cũng nảy sinh với các bước tiền xử lý khác và các hoạt động của quá trình khai phá dữ liệu.
Quy mô dữ liệu
Dung lượng và quy mô lớn chưa từng có của dữ liệu lớn đòi hỏi các công cụ quản lý và khai phá dữ liệu phải được cải tiến tương ứng. Điểm quan trọng là với quy mô cực lớn thì ta có nhiều cơ hội để khám phá nhiều tri thức hơn trong dữ liệu thông thường (quy mô nhỏ). Những hướng tiếp cận dưới đây nếu được áp dụng hợp lý sẽ đem lại hiệu quả trong khai phá dữ liệu lớn: (1) điện toán đám mây kết hợp với tính toán song song; (2) tương tác người dùng (đồ hoạ - GUI hoặc dựa trên ngôn ngữ) - giúp việc tương tác giữa người dùng và hệ thống trở nên nhanh chóng và hiệu quả.
Tốc độ/tính chuyển động liên tục
Đối với dữ liệu lớn, tốc độ/chuyển động liên tục thực sự quan trọng. Khả năng truy nhập nhanh và khai phá dữ liệu lớn không chỉ là mong muốn chủ quan mà là một nhiệm vụ xử lý đặc biệt đối với các dòng dữ liệu (data stream) (một định dạng phổ biến của dữ liệu lớn) - chúng ta phải hoàn thành việc xử lý/khai phá dòng dữ liệu đó trong một thời gian nhất định, bởi nếu không thì kết quả xử lý/ khai phá đó trở nên ít có giá trị hoặc thậm chí là vô giá trị. Chẳng hạn, ứng dụng đòi hỏi chạy theo thời gian thực như dự đoán động đất, dự đoán thị trường chứng khoán, thị trường ngoại hối...
Tốc độ khai phá dữ liệu phụ thuộc vào hai yếu tố chính: (1) thời gian truy cập dữ liệu (được xác định chủ yếu bởi hệ thống lưu trữ dữ liệu); (2) hiệu quả của các thuật toán khai phá dữ liệu. Việc khai thác các chương trình lập chỉ mục tiên tiến là chìa khóa giải quyết vấn đề tốc độ. Cấu trúc chỉ số đa chiều đặc biệt hữu ích cho dữ liệu lớn. Ví dụ, sự kết hợp của R-Tree và KD-tree và gần đây là FastBit [2](được phát triển bởi nhóm nghiên cứu ở LBNL) được sử dụng cho dữ liệu lớn. Bên cạnh đó, mặc dù các nhà nghiên cứu vẫn mong muốn thiết kế các chương trình lập chỉ mục mới, hiệu quả nhưng vấn đề này vẫn là một trong những thách thức lớn nhất đối với cộng đồng nghiên cứu.
Tính chính xác và tin cậy
Trước đây, các hệ thống khai phá dữ liệu thường sử dụng những dữ liệu từ những nguồn tin cậy và khá hạn chế, do vậy, kết quả khai phá thường có độ chính xác cao. Tuy nhiên, đối với dữ liệu lớn, dữ liệu có thể đến từ nhiều nguồn khác nhau, có thể từ nguồn không tin cậy và không thể kiểm chứng. Vì vậy, độ chính xác và tin cậy của các nguồn dữ liệu mà kéo theo là kết quả khai phá là một vấn đề cần xem xét. Để giải quyết vấn đề này (ít nhất là một phần) thì việc xác thực dữ liệu và xác minh nguồn gốc dữ liệu là một bước quan trọng trong toàn bộ quá trình khai phá tri thức.
Dữ liệu lớn có tính động (dynamic) cao, do đó, hệ thống phân tích và quản lý dữ liệu lớn cũng phải cho phép các dữ liệu được quản lý trong đó được thay đổi và phát triển. Vì vậy, "dữ liệu gốc“ (data provenance) là thành phần không thể thiếu của bất kỳ hệ thống xử lý dữ liệu lớn nào. Dữ liệu gốc liên quan đến lịch sử phát triển, tiến hoá hoặc nguồn gốc mà dữ liệu được trích xuất hay thu thập. Khi dữ liệu phát triển, các độ đo sự tin cậy cần được thay đổi hoặc cập nhật, do đó, các độ đo này không nên thiết lập cố định. Các nghiên cứu đã chỉ ra rằng, phương pháp học bán giám sát (semi-supervised) với dữ liệu thực có thể cung cấp độ chính xác và độ tin cậy cao hơn đối với các nguồn dữ liệu khác. Các phương pháp xử lý dữ liệu lớn có thể chạy trên các nền tảng song song (nền tảng đám mây - PaaS và IaaS) với khả năng mở rộng trên nhiều nguồn dữ liệu.
Nguồn gốc của dữ liệu góp phần trực tiếp vào độ chính xác và tin cậy của kết quả khai phá dữ liệu. Tuy nhiên, thông tin về nguồn gốc dữ liệu không phải lúc nào cũng có sẵn hoặc được ghi chép. Việc khai phá dữ liệu có thể được sử dụng để phát hiện và xác minh nguồn gốc của dữ liệu. World Wide Web - được xem là nguồn dữ liệu lớn nhất và là cơ sở tri thức mang đầy đủ thông tin cần thiết để đưa ra câu trả lời tốt nhất cho nhiều câu hỏi hóc búa, thế nhưng kích thước của kho lưu trữ dữ liệu lớn nhất này vẫn tiếp tục tăng với tốc độ chưa từng có. Công nghệ khai phá dữ liệu lớn sẽ sớm có thể trả lời nhiều câu hỏi lớn của nhân loại mặc dù khai phá toàn bộ World Wide Web đòi hỏi sự vượt trội về trí tuệ của con người.
Bảo mật
Dữ liệu riêng tư luôn là vấn đề cần xem xét trong khai phá dữ liệu. Vấn đề này còn nghiêm trọng hơn khi các ứng dụng khai phá dữ liệu lớn thường đòi hỏi các thông tin cá nhân để tạo ra các kết quả có liên quan đến từng cá nhân như các dịch vụ dựa trên địa điểm (chẳng hạn quảng cáo). Hơn nữa, trong các dữ liệu có được từ các phương tiện truyền thông hay mạng xã hội, các thông tin cá nhân của nhiều người thường có liên quan đến nhau và dễ dàng bị "đào xới“ bởi các ứng dụng khai phá dữ liệu. Một ví dụ đơn giản, các giao dịch trong cuộc sống hàng ngày của chúng ta đang được đưa lên mạng và được lưu vết ở đó: email, tin nhắn, blog, Facebook, mua sắm, thanh toán hoá đơn trực tuyến, số điện thoại, địa chỉ nhà, ngày sinh...
Hiện nay, nhiều thông tin bí mật của chúng ta được bảo vệ (với một mức độ nhất định), chẳng hạn công ty thẻ tín dụng nắm giữ bí mật về thông tin nhận dạng của chủ thẻ. Theo thời gian, các thông tin cá nhân của mỗi người sẽ nằm rải rác ở đâu đó trên mạng. Tuy nhiên, điều đó không có nghĩa là nó không bị "đào xới“ lên vào một ngày nào đó trong tương lai. Tất cả chỉ là vấn đề thời gian. Mọi người sẽ dễ dàng có được đặc quyền sử dụng các công cụ mạnh mẽ như vậy (qua SaaS trên đám mây). Nếu không có bất kỳ lá chắn bảo vệ nào cho sự riêng tư của bạn, một kẻ xấu có thể mở một tài khoản thẻ tín dụng mới bằng tên của bạn và dễ dàng lấy đi tiền của bạn tại ngân hàng. Tất cả mọi thứ dường như trở thành có thể! Rõ ràng, chúng ta cần có những chính sách đúng đắn và phương pháp tiếp cận để quản lý việc chia sẻ dữ liệu cá nhân, trong khi vẫn tạo điều kiện cho các hoạt động khai phá dữ liệu hợp pháp.
Sự tương tác
Sự tương tác là khả năng hoặc tính năng của một hệ thống khai phá dữ liệu cho phép người dùng tương tác một cách nhanh chóng và đầy đủ (phản hồi/can thiệp/hướng dẫn từ người dùng). Sự tương tác trở thành một vấn đề quan trọng trong khai phá dữ liệu lớn. Nó liên quan đến cả ba chữ V. Sử dụng thông tin phản hồi/hướng dẫn có thể giúp thu hẹp khối lượng dữ liệu, đẩy nhanh tốc độ xử lý, tăng khả năng mở rộng của hệ thống. Hệ thống tương tác cho phép người dùng có khả năng hình dung, đánh giá (tiền đánh giá) và giải thích kết quả khai phá trung gian và cuối cùng.
KẾT LUẬN
Khai phá dữ liệu lớn là một lĩnh vực nghiên cứu đầy thách thức bởi nó vượt qua hầu hết những giới hạn của các kĩ thuật khai phá dữ liệu hiện thời. Khai phá dữ liệu lớn sẽ mở ra nhiều cơ hội mới. Tuy nhiên, những thách thức trong lĩnh vực này đang là bài toán cho việc đưa ra các công cụ khai phá dữ liệu lớn.
Tài liệu tham khảo
[1]. BEYER, M.A, LANEY, D.: The Importance of ‘big data': a Definition. Gartner(2012)
[2].DUNREN CHE, MEJDL SAFRAN, and ZHIYONG PENG, From Big Data to Big Data Mining: Challenges, Issues, and Opportunities, Database Systems for Advanced Applications, pp 1-15, Springer Berlin Heidelberg (2013).
[3]. LANEY, D.: 3D Data Management Controlling Data Volume, Velocity and Variety. Gartner (2001).
[4].NewVantage Partners: Big Data Executive Survey 2013, http://newvantage.com/wpcontent/uploads/2013/02/NVP-Big- Data-Survey-2013-Summary-Report.pdf.
[5]. VUCETIC S., OBRADOVIC Z.: Discovering Homogeneous Regions in Spatial Data through Competitor!. In: 17th International Conference of Machine Learning, pp. 1095-1102. Stanford, CA (2000).
[6]. WEI FAN, ALBERT BIFET, Mining Big Data: Current Status, and Forecast to the Future, SIGKDD Explorations, Volume 14, Issue
2,pp. 1-5 (2013).
ThS. Lê Quý Tài, ThS. Nguyễn Thanh Thụy
(TC TTTT Kỳ 2/12/2014)