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

Tóm tắt nghiên cứu các phần tử ngoại lai

23 307 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

Định dạng
Số trang 23
Dung lượng 287 KB

Nội dung

Đồng thời trình bày các ứng dụng sử dụngcác khai thác dữ liệu và các ứng dụng trong thực tế, khai thác dữ liệu có sự hỗ trợ của các kỹ thuật khai thác dữ liệu.. Trong thực tế, các chương

Trang 1

LÝ DO CHON ĐỀ TÀI

Trong cuộc sống hiện đại ngày nay, làm thế nào để phát hiệnnhững thẻ rút tiền bất thường trong hệ thống ngân hàng, những bấtthường trong thị trường chứng khoán,…vv Tuy nhiên, với số lượng

dữ liệu tập trung và lưu trữ trong cơ sở dữ liệu ngày càng lớn thì việctìm kiếm các phần tử ngoại lai trở nên cần thiết hơn nhiều trong cuộcsống

Xuất phát từ yêu cầu thực tế đó, tôi đã lựa chọn và thực hiện

luận văn này với đề tài “Nghiên cứu các phần tử ngoại lai” Tôi hy

vọng đề tài trên đây với sự hướng dẫn của GS.TS Vũ Đức Thi, cùng

sự góp ý của các chuyên gia sẽ giúp giải quyết một số bài toán thực

tế phục vụ cho xã hội ngày càng phát triển trong công cuộc Côngnghiệp hóa và Hiện đại hóa đất nước

Nội dung luận văn được xây dựng trong 3 chương

Trang 2

CHƯƠNG 1: KHÁM PHÁ TRI THỨC TRONG CƠ SỞ DỮ

LIỆU VÀ PHẦN TỬ NGOẠI LAI

Trong chương này, chúng tôi giới thiệu quá trình khám phá trithức bao gồm các khái niệm: Khám phá tri thức, khai thác dữ liệu,khái niệm về các phần tử ngoại lai và các ứng dụng tìm kiếm phần tửngoại lai trong thực tiễn Đồng thời trình bày các ứng dụng sử dụngcác khai thác dữ liệu và các ứng dụng trong thực tế, khai thác dữ liệu

có sự hỗ trợ của các kỹ thuật khai thác dữ liệu Ngoài ra chúng tôicòn trình bày các khái niệm về phần tử ngoại lai, mối quan hệ giữalĩnh vực khai thác dữ liệu và lĩnh vực khám phá phần tử ngoại lai vàcác ứng dụng của phần tử ngoại lai

1.1 Khám phá tri thức

Khám phá tri thức là toàn bộ quá trình tìm kiếm tri thức từ dữliệu, bao gồm các bước sau:

- Chuẩn bị dữ liệu: Trong bước này dữ liệu được làm sạch để loại

bỏ các dữ liệu không liên quan, dữ liệu không phù hợp Sau khi dữliệu được làm sạch, dữ liệu sẽ được bổ sung các thông tin cần thiết,sau đó dữ liệu được biến đổi theo các dạng phù hợp để thực hiện quátrình khai thác dữ liệu

- Khai thác dữ liệu: là một bước quan trọng trong quá trình khám

phá tri thức, bước này sử dụng các kỹ thuật và các phương thức

thông minh để xác định các mẫu dữ liệu theo yêu cầu người dùng

Khai thác dữ liệu bao gồm:

♦ Tìm kiếm các luật kết hợp

♦ Phát hiện phần tử ngoại lệ

♦ Nhận dạng và phân lớp mẫu

♦ Dự báo

- Đánh giá: Đánh giá mẫu là tìm ra những mẫu quan tâm từ các mẫu

đã có trong bước khai thác dữ liệu, có thể sử dụng các ngưỡng cầnthiết để lọc ra các mẫu cần khai thác

1.2 Những ứng dụng sử dụng kỹ thuật khai thác dữ liệu.

Trang 3

Có rất nhiều ứng dụng trong các lĩnh vực khác nhau sử dụng các

kỹ thuật khai thác dữ liệu nhằm hỗ trợ cho mục đích sử dụng Trong thương mại, tổ chức hay công ty nào đó họ có thể sửdụng các kỹ thuật khai thác dữ liệu để tặng khuyến mãi cho cáckhách hàng dựa vào tần xuất mua hàng, số lượng hàng đã mua ở cáclần trước hay tần suất truy cập website, kiểu khách hàng Trong cáccông ty bảo hiểm, sử dụng kỹ thuật khai thác dữ liệu để xác định cáclỗi và các trường hợp rủi ro có thể xảy ra Trong ngân hàng, người ta

sử dụng các kỹ thuật khai thác dữ liệu để xác định các rủi ro thườnggặp về thẻ tín dụng hay các lỗi trong quá trình giao dịch Các tổ chứcchống tội phạm sử dụng các kỹ thuật khai thác dữ liệu để tìm kiếm,nhận dạng và phát hiện tội phạm…

1.3 Phần tử ngoại lai.

1.3.1 Khái niệm phần tử ngoại lai

Trong các tập dữ liệu thường tồn tại các đối tượng dữ liệu không tuân theo một hình thức hoặc một mô hình dữ liệu chung, các đối tượng dữ liệu mà giá trị dữ liệu được xem là nằm ngoài phạm vi hoặc không liên quan tới tập dữ liệu còn lại Những đối tượng có đặc tính như vậy được gọi là phần tử ngoại lai.

Một phần tử ngoại lai có thể là một đối tượng dữ liệu trong một

số trường hợp sau:

 Là đối tượng dữ liệu được tạo sinh có sai sót

 Nằm trong một phân bố khác với phân bố của tập dữ liệu còn lại

 Là một đối tượng có giá trị hợp lệ nhưng không phải là đối tượngmong muốn

Tóm lại, các phẩn tử ngoại lai là những đối tượng đủ khác vớihầu hết các đối tượng còn lại

1.3.2 Những ứng dụng của phần tử ngoại lai

Phát hiện các thẻ tín dụng giả, theo dõi các hoạt động thươngmại điện tử, xác định các rủi ro về thẻ tín dụng, tìm kiếm nhận dạngtội phạm,…

Trang 4

Với các hệ thống thanh toán điện tử bao gồm các ứng dụngnhư thẻ ngân hàng, thẻ thông minh, thẻ điện thoại, và thẻ tín dụng,chúng ta quan tâm tới việc làm sao để phát hiện ra các loại thẻ giả,thẻ không hợp lệ trong hệ thống thanh toán điện tử.

Một ứng dụng nữa trong việc phát hiện phần tử ngoại lai là ứngdụng để nghiên cứu cổ phiếu, chứng khoán

Trong thể thao chuyên nghiệp các ông bầu ai cũng muốn xâydựng cho mình một đội hình mạnh nhất, nhưng chi phí dẻ, hợp lý vớinguồn tài chính cố định và một đội hình tài năng, đa dạng được xácđịnh bằng những sự thống kê hiệu suất và sự trình diễn kỹ thuật củacác cầu thủ

1.4 Mối quan hệ giữa phần tử ngoại lai và khai thác dữ liệu.

Trong thực tế, các chương trình ứng dụng khai thác dữ liệuthường phải khai thác dữ liệu trên các tập dữ liệu rất lớn với khốilượng thông tin khổng lồ, không phù hợp với bộ nhớ chính, dữ liệu

♦ Cung cấp một số giải thích hoặc mô tả về không gian dữ liệu

mà trong đó xuất hiện phần tử ngoại lai

Cho đến nay, chưa có một định nghĩa nào có thể định nghĩa mộtcách đầy đủ và chính xác về phần tử ngoại lai, việc xác định cácphần tử ngoại lai trong mỗi lĩnh vực là khác nhau, bởi vì ý nghĩangoại lai của các phần tử ngoại lai mang tính chất và đặc trưng củatừng lĩnh vực áp dụng (có thể nhiễu của người này nhưng lại là tínhiệu tốt của người khác), nên rất khó có thể đưa ra được một địnhnghĩa hoàn chỉnh và chính xác về phần tử ngoại lai

Trang 5

CHƯƠNG 2: MỘT SỐ THUẬT TOÁN TÌM KIẾM PHẦN TỬ NGOẠI LAI DỰA TRÊN KHOẢNG CÁCH

Trong chương này chúng tôi sẽ trình bày khái niệm các phần

tử ngoại lai theo cách nhìn toàn cục, đồng thời giới thiệu thuật toánNested Loop và hai phiên bản của thuật toán đánh giá theo ô để tìmkiếm các phần tử ngoại lai dựa trên các tập dữ liệu chính nhiều chiềunằm trong bộ nhớ trong hoặc nằm trong bộ nhớ ngoài Chúng tôiđánh giá độ phức tạp về thời gian của các thuật toán và trình bàythực nghiệm với chương trình ứng dụng sử dụng thuật toán NestedLoop trên cơ sở dữ liệu thực của ngân hàng Nông nghiệp và Pháttriển Nông thôn Agribank đồng thời so sánh thời gian thực hiện trêntừng tập dữ liệu

2.1 Định nghĩa các phần tử ngoại lai dựa trên khoảng cách

Cho N là số lượng các đối tượng trong tập dữ liệu T Gọi d làhàm khoảng cách giữa một cặp đối tượng bất kì trong tập dữ liệu.Với một đối tượng O, gọi S(o) là tập các lân cận của o bao gồm tất cảcác đối tượng q thỏa mãn điều kiện: d(o,q)< D, trong đó, D là tham

số đầu vào

Có nghĩa là: S(o) = {q€T | d(o,q) ≤ D}

S(o) được gọi là tập hợp các lân cận của điểm O theo khoảng cách D

Định nghĩa: Một đối tượng O trong một tập cơ sở dữ liệu T được gọi

là một phần tử ngoại lai dựa trên khoảng cách DB(p,D) (DB là viết tắt của từ Distance Based) nếu có ít nhất p phần trăm các đối tượng

trong T mà khoảng cách giữa chúng với O lớn hơn D Điều đó cónghĩa là lực lượng của tập hợp S(o) là nhỏ hơn hoặc bằng (100 - p)%

Trang 6

sẽ được bắt đầu từ việc tìm kiếm các đối tượng thuộc S(o) của tất cảcác điểm O trong tập dữ liệu Trong quá trình tìm kiếm nếu số lượngcủa S(o) lớn hơn M thì O được gọi là không ngoại lai Ngược lại saukhi kết thúc quá trình tìm kiếm mà lực lượng của S(o) ≤ M thì thôngbáo O là phần tử ngoại lai

2.2 Thuật toán Nested-Loop.

2.2.1 Tư tưởng thuật toán.

Để tìm kiếm tất cả các phần tử ngoại lai dựa trên khoảng cáchDB(p,D) trên tập dữ liệu lớn, nằm ở bộ nhớ ngoài, thuật toán NestedLoop chia tập dữ liệu thành các khối sử dụng các vòng lồng nhau đểtìm kiếm

2.2.2 Mô tả thuật toán Nested Loop:

1 Đưa một khối các điểm dữ liệu từ T vào trong mảng A(có cỡ là b/2% cỡ của tập dữ liệu)

2 For (mỗi điểm ti trong mảng A) do:

để tính toán cho lần sau)

b For (mỗi điểm ti chưa được đánh dấu trong mảngA) do

Trang 7

{for (mỗi điểm tj trong mảng B) do

If (d(ti,tj) ≤ D) {counti++;

if (counti>M) {ti=khôngngoại lai; break;}} } }

4 For (mỗi điểm ti chưa được đánh dấu trong mảng A) do

ti=ngoại lai;

5 Thuật toán sẽ kết thúc nếu khối đang lưu trong mảng B

đã được lưu vào mảng A ở một thời điểm nào đó trongquá trình tính toán trước đây; ngược lại, đổi vai trò 2mảng A và B và quay lại bước 2

2.2.3 Ước lượng tham số p, D sử dụng phương pháp lấy mẫu

Trong thuật toán Nested Loop tìm kiếm phần tử ngoại lai,chúng ta thấy có hai tham số người dùng cần định nghĩa đó là p và D,hai tham số này ảnh hưởng rất lớn đến thời gian thực hiện thuật toán,việc khởi tạo các tham số p và D không tốt dẫn đến sự lãng phí thờigian tính toán

2.2.4 Đánh giá độ phức tạp của thuật toán Nested Loop.

Độ phức tạp của toàn bộ thuật toán Nested Loop là: 1)2*x2*k)=O(N2*k)

O((n-2.3 Thuật toán đánh giá theo ô

2.3.1 Các khái niệm và tính chất liên quan

Với mục tiêu là tìm kiếm tất cả các phần tử ngoại lai dựa trênkhoảng cách dựa vào ô, mỗi một đối tượng trong tập dữ liệu đượcánh xạ hoặc lượng tử hóa tới các ô có cạnh 1 = D/(2 2)

Gọi Cx,y là ô giao giữa dòng x và cột y L1(Cx,y) được địnhnghĩa là tầng các lân cận thứ nhất của ô Cx,y bao gồm các ô Cu,vthỏa mãn điều kiện:

L1(Cx,y)={Cu,v| u= x±1, v=y±1; Cu,v≠Cx,y} (2.1)

Trang 8

Tính chất 1: Bất kỳ một cặp đối tượng trong cùng một ô thì

khoảng cách giữa chúng lớn nhất là D/2

Tính chất 2: Nếu Cu,v là một ô thuộc L1(Cx,y) thì với mỗi

P∈Cu,v và với mọi q∈Cx,y ta luôn có khoảng cách giữa chúng lớnnhất là D

Tính chất 3: Nếu Cu,v≠Cx,y cũng không thuộc L1 và L2 của

ô Cx,y thì mọi đối tượng P∈Cx,y và mọi đối tượng q∈Cu,v khoảng

cách giữa chúng luôn lớn hơn D

2.3.2 Thuật toán FindAllOutsM cho các tập dữ liệu trong bộ nhớ chính.

2.3.2.1 Tư tưởng thuật toán.

2.3.2.2 Mô tả thuật toán FindAllOutsM

Trang 9

a. Countw2=countw+∑∈ ( )counti

Cw LI

b. If (countw2>M) Cw=hồng

c. Else {

1 Countw3=countw2+ ∑iL2 (Cw)counti;

2 if(countw3 ≤M) gán tất cả các đối tượngtrong Cw là ngoại lai

Quay lại bước5.c.3} }

iii P = ngoại lai;

2.3.2.4 Tổng quát cho trường hợp nhiều chiều.

Trong không gian K chiều, tầng các lân cận thứ L1 của ô Cx1,

x2, …, xk được định nghĩa lại như sau:

L1(Cx1, x2,…xk)={Cu1, u2,…uk| ui = xi±1 ∀ ≤ ≤1 i k; Cx1, x2,…

xk≠Cu1, u2,…uk}; (2.3)

Trang 10

Vì vậy, tầng các lân cận thứ hai của ô Cx1, x2,…xk trong khônggian K chiều là:

L2(Cx1, x2,…xk) = {Cu1, u2, … uk| ui =xi±[2 k ] ∀ ≤ ≤1 i k; Cu1,

u2,… uk ∉L1(Cx1, x2,…xk); Cx1, x2,…xk ≠ Cu1, u2,… uk}; (2.4)

2.3.2.5 Đánh giá độ phức tạp trong không gian nhiều chiều.

Độ phức tạp của toàn bộ thuật toán là O(m+N) nhưng theo lýthuyết là O(m ckkk/2+k*N)

2.3.3 Tìm kiếm các phần tử ngoại lai DB(p,D) trong các tập dữ liệu lớn, ở trên bộ nhớ ngoài.

2.3.3.1 Phân tích tổng quát.

Khi thuật toán thực hiện với các tập dữ liệu lớn, nằm ở bộ nhớngoài thì mục đích là làm giảm tối thiểu số lượng các trang được đọcvào bộ nhớ chính hoặc là số lần đọc toàn bộ dữ liệu, các trang ở đây

là một khối dữ liệu nhỏ nhất truyền giữa bộ nhớ ngoài và bộ nhớchính Nội dung thuật toán dựa vào ô, có hai bước cần phải đọc cáctrang đó là:

 Quá trình ánh xạ ban đầu của các đối tượng vào các ô phùhợp

 Quá trình tính toán khoảng cách giữa các cặp đối tượng

2.3.3.2 Thuật toán FindAllOutsD cho các phần tử ngoại lai nằm trong bộ nhớ ngoài.

a Mô tả thuật toán FindAllOutsD.

Trang 11

4. For (mỗi ô đỏ Cr)

C1= hồng; (trong đó có C1 là ô thuộc L1(Cr) và chưa đượcgán màu đỏ)

5. For (mỗi ô màu trắng Cw) do:

a. Countw2 = Countw + ∑iL1(Cw)Count i;

b. If (Countw2>M) Cw = hồng;

c. Else {

1 Countw3 = Countw2 + ∑iL2(Cw)Count i;

2 If (Countw3≤M) Cw = vàng (tức là tất cả cácđiểm ánh xạ tới ô Cw đều là ngoại lai);

3 Else Sumw = Countw2; }

6. For (mỗi trang i chứa ít nhất một điểm trắng hoặc mộtđiểm vàng) do

7. For (mỗi đối tượng p trong ô trắng Cw) do

For (mỗi ô trắng hoặc ô vàng CL∈ L2 (Cw)) do

For (mỗi đối tượng q ∈ CL) if (d(p,q) ≤ D)

Trang 12

9. For (mỗi trang chứa ít nhất một điểm không trắng cũngkhông vàng và ánh xạ tới ô thuộc L2 của một số ô trắngC) do

10.For (mỗi đối tượng p trong ô trắng) if not (p là khôngngoại lai) thông báo p là ngoại lai

b Đánh giá độ phức tạp của thuật toán FindAllOutsD và so sánh với thuật toán Nested Loop.

Thuật toán Find AllOutsD cũng có độ phức tạp tuyến tínhvới N bởi các lý do giống tương tự như đã giải thích cho thuật toánFindAllOutsM, nhưng thuật toán FindAllOutsD tìm kiếm các phần tửngoại lai trên các tập dữ liệu mà nó không phù hợp với bộ nhớ chính

Tính chất 1: Thuật toán FindAllOutsD yêu cầu nhiều nhất là

3 lần đọc toàn bộ tập dữ liệu

Tính chất 2: Nếu có một tập dữ liệu được phân chia vào

trong n =[100/(b/2)] khối logic một bộ nhớ trung gian cỡ bằng b% cỡcủa cơ sở dữ liệu và một khối logic bao gồm nhiều trang thì trongtrường hợp chung, tổng số khối yêu cầu đọc của thuật toán NestedLoop là n+(n-1)*(n-2) Như vậy, số lần đọc tập dữ liệu ít nhất là (n-2) lần nhưng không nhiều hơn (n-1) lần

Trang 13

CHƯƠNG 3: XÁC ĐỊNH CÁC PHẦN TỬ NGOẠI LAI

ra ý nghĩa của các phần tử ngoại lai và cuối cùng chúng tôi trình bày

và đánh giá độ phức tạp của thuật toán xác định giá trị LOF Cụ thểchúng tôi sẽ thảo luận về một số vấn đề có ý nghĩa hơn khi kết gánmỗi đối tượng với một cấp độ ngoại lai của nó, cấp độ này được gọi

là yếu tố ngoại lai cục bộ (Local Outlier Factor - LOF) của một đốitượng Từ "cục bộ" trong LOF có nghĩa là cấp độ phụ thuộc vào cách

cô lập của đối tượng đối với các lân cận xung quanh đối tượng đó.Cũng trong chương này chúng tôi sẽ trình bày và phân tích chi tiếtyếu tố ngoại lai cục bộ LOF cùng với các tính chất liên quan, bằngcách sử dụng các tập hợp dữ liệu trong thế giới thực và chúng ta sẽgiải thích rằng yếu tố ngoại lai cục bộ LOF có thể được sử dụng đểtìm kiếm các phần tử ngoại lai xuất hiện với một ý nghĩa nào đó,nhưng mặt khác lại không được xác định chúng bằng các cách tiếpcận hiện nay

3.1 Các định nghĩa:

Định nghĩa 1: Một phần tử ngoại lai là một sự quan sát lệch hướng rất nhiều với các hướng quan sát khác đưa đến một sự nghi ngờ rằng phần tử đó được tạo ra bởi một kỹ thuật khác.

Định nghĩa 2: Một đối tượng O trong một tập cơ sở dữ liệu T được gọi là một phần tử ngoại lai dựa trên khoảng cách DB(p,D) nếu có ít nhất p (percentage) phần trăm các đối tượng trong T mà khoảng cách giữa chúng với O lớn hơn D Điều đó có nghĩa là lực lượng của

Trang 14

tập hợp {q T| d(o,q) D} nhỏ hơn hoặc bằng (100-p)% * cỡ của T.

Định nghĩa 3: Khoảng cách phụ thuộc tham số k của đối tượng p [7].

Với một số nguyên dương k bất kỳ, khoảng cách phụ thuộc tham số k của đối tượng p được ký hiệu là k_dist(p) được định nghĩa như là khoảng cách d(o,p) giữa p và đối tượng o thuộc T thỏa mãn điều kiện.

♦ Có ít nhất k đối tượng o “∈ T\{p} thỏa mãn d(p,o)” ≤ d(p,o)

♦ Có nhiều nhất k-1 đối tượng o “∈ T\{p} thỏa mãn d(p,o)” <d(p,o)

Định nghĩa 4: Tập các lân cận phụ thuộc tham số k của đối tượng p

Tập các lân cận phụ thuộc tham số k của đối tượng p được

ký hiệu là N k (p) bao gồm tất cả đối tượng mà khoảng cách từ chúng đến p không lớn hơn k_dist(p), điều đó nghĩa là N k (p)={q D| d(p,q) k_dist(p)}.

Định nghĩa 5: Khoảng cách đạt được của một đối tượng p đối với đối

tượng o

Cho k là một số tự nhiên Khoảng cách đạt được của đối tượng p đối với đối tượng o được định nghĩa là: read_distk(p,o)= max{k_dist(o), d(o,p)}

Định nghĩa 3: Khoảng cách phụ thuộc tham số k của đối tượng p [7].

Với một số nguyên dương k bất kỳ, khoảng cách phụ thuộc tham số k của đối tượng p được ký hiệu là k_dist(p) được định nghĩa như là khoảng cách d(o,p) giữa p và đối tượng o thuộc T thỏa mãn điều kiện.

♦ Có ít nhất k đối tượng o “∈ T\{p} thỏa mãn d(p,o)” ≤ d(p,o)

♦ Có nhiều nhất k-1 đối tượng o “∈ T\{p} thỏa mãn d(p,o)” <d(p,o)

Ngày đăng: 13/04/2016, 09:19

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w