Phương pháp lan truyền độ tương tự trong phân cụm dữ liệu và ứng dụng

79 129 0
Phương pháp lan truyền độ tương tự trong phân cụm dữ liệu và ứng dụng

Đ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

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TRUYỀN THÔNG TẠ DUY KHÁNH PHƯƠNG PHÁP LAN TRUYỀN ĐỘ TƯƠNG TỰ TRONG PHÂN CỤM DỮ LIỆU ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Nguyên - 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TRUYỀN THÔNG TẠ DUY KHÁNH PHƯƠNG PHÁP LAN TRUYỀN ĐỘ TƯƠNG TỰ TRONG PHÂN CỤM DỮ LIỆU ỨNG DỤNG Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS NGUYỄN ĐÌNH HĨA Thái Ngun - 2015 Số hóa Trung tâm Học liệu – ĐHTNii http://www.lrc.tnu.edu.vn LỜI CÁM ƠN Đầu tiên, xin gửi lời cảm ơn sâu sắc đến thầy giáo, cán hướng dẫn khoa học PGS.TS Nguyễn Đình Hóa tận tình hướng dẫn từ buổi tiếp cận với đề tài khoa học Trong trình làm luận văn, tơi nhận giúp đỡ nhiệt tình từ nhóm nghiên cứu TS Lê Hồng Sơn Trung tâm tính tốn hiệu cao, trường ĐH KHTN đề tài NCKH cấp ĐHQG, mã số GG.14.60 Tôi xin bày tỏ lòng biết ơn đến thầy giáo trường Đại học Công nghệ thông tin Truyền thông – Đại học Thái Nguyên, cán Trung tâm Đơng Đơ - Hà Nội, tận tình giảng dạy tạo điều kiện cho học tập, nghiên cứu hồn thành luận văn Tơi xin chân thành cảm ơn bạn học viên lớp CK12H, CK13H – Khoa học máy tính giúp đỡ, tạo điều kiện cho tơi suốt q trình học tập thực luận văn Cuối cùng, xin gửi lời cảm ơn sâu sắc đến gia đình, đồng nghiệp bạn bè tôi, người động viên, tạo điều kiện cho lao động học tập suốt thời gian qua Tôi xin cam đoan luận văn cơng trình nghiên cứu riêng cá nhân tôi, không chép Luận văn tự nghiên cứu, đọc, dịch tài liệu, tổng hợp thực Nội dung lý thuyết luận văn có sử dụng số tài liệu tham khảo trình bày phần tài liệu tham khảo Chương trình phần mềm kết luận văn trung thực chưa công bố hệ thống khác Một lần nữa, xin chân thành cảm ơn! Số hóa Trung tâm Học liệu – ĐHTN i http://www.lrc.tnu.edu.vn MỤC LỤC LỜI CÁM ƠN i MỤC LỤC………………………………………………………………………ii DANH MỤC CÁC TỪ VIẾT TẮT iv DANH MỤC CÁC HÌNH VẼ v MỞ ĐẦU CHƯƠNG 1: HỆ THỐNG THÔNG TIN ĐỊA LÝ PHÂN CỤM DỮ LIỆU ĐỊA LÝ 1.1 Tổng quan hệ thống thông tin địa lý 1.1.1 Lịch sử đời 1.1.2 Định nghĩa 1.1.3 Các thành phần hệ thống thông tin địa lý 1.1.4 Dữ liệu hệ thống thông tin địa lý 10 1.2 Phân cụm liệu địa lý 11 1.2.1 Phân cụm liệu 11 1.2.2 Một số kỹ thuật phân cụm liệu 12 1.2.2.1 Thuật toán phân cụm theo phân cấp 13 1.2.2.2 Thuật toán phân cụm phân hoạch : Phân cụm k-means 14 1.2.2.3 Phân cụm mờ 16 1.3 Dữ liệu địa lý vấn đề phân cụm đối tượng địa lý 17 1.3.1 Cấu trúc liệu GIS 18 1.3.1.1 Hai mơ hình liệu khơng gian 18 1.3.1.2 Dữ liệu thuộc tính 19 1.3.2 Các vấn đề phân cụm liệu địa lý 20 CHƯƠNG 2: PHÂN CỤM BẰNG THUẬT TOÁN LAN TRUYỀN ĐỘ TƯƠNG TỰ 22 2.1 Các khái niệm sở 22 2.1.1 Ý tưởng thuật toán 22 2.1.2 Các cơng thức thuật tốn AP 24 2.1.3 Thuật toán AP nguyên thủy 25 2.2 Thuật tốn lan truyền AP tự thích nghi 27 2.2.1 Phương pháp thích ứng giảm dần 28 2.2.2 Kỹ thuật thích nghi p-scanning 30 Số hóa Trung tâm Học liệu – ĐHTN2 http://www.lrc.tnu.edu.vn 2.3 Thuật toán lan truyền AP với tập liệu hỗn hợp kiểu số kiểu phân loại 31 2.3.1 Khoảng cách ý nghĩa 32 2.3.2 Phương pháp 32 2.3.3 Cải thiện độ đo tương tự 34 2.3.4 Thích nghi thuật tốn lan truyền 36 CHƯƠNG 3: XÂY DỰNG ỨNG DỤNG PHÂN CỤM DỮ LIỆU ĐỊA LÝ 39 3.1 Bài toán thực tế cách tiếp cận phân cụm liệu 39 3.1.1 Bài toán khai thác liệu quan trắc khí tượng 39 3.1.2 Lựa chọn giải pháp kỹ thuật công nghệ 40 3.2 Các phần mềm GIS 40 3.3 Tìm hiểu phần mềm mã nguồn mở MapWindow 42 3.4 Thiết kế plug-in phần mềm mã nguồn mở Mapwindown 44 3.4.1 Thêm plug-ins từ Visual Studio vào MapWindow 44 3.4.2 Xây dựng ứng dụng với Active X map control Visual Studio 45 Kết chạy thử nghiệm 53 KẾT LUẬN 56 Một số kết đạt luận văn 56 Những hạn chế hướng phát triển 56 TÀI LIỆU THAM KHẢO 57 Số hóa Trung tâm Học liệu – ĐHTN3 http://www.lrc.tnu.edu.vn DANH MỤC CÁC TỪ VIẾT TẮT STT Từ viết tắt GIS Từ tiếng Anh Geographical Ý nghĩa Hệ thống thông tin địa lý Information System AP affinity propagation Thuật toán lan truyền độ tương tự CSDL Database Cơ sở liệu SIL Silhouette Công thức Silhouette DEM Digital Elevation Model Mô hình kỹ thuật số độ cao DTM Digital Terrain Model Mơ hình kỹ thuật số địa hình TIN Triangulated Irregular Lưới tam giác không Network SQL Structured Query Language Ngơn ngữ truy vấn có cấu trúc Số hóa Trung tâm Học liệu – ĐHTNiv http://www.l rc.tnu.edu.vn DANH MỤC CÁC HÌNH VẼ Hình 1.1: Các thành phần hệ thống thông tin địa lý Gis Hình 1.2: Thuật tốn phân cụm K-means Hình 1.3: Cấu trúc vector raster Hình 2.1: Đồ thị Affinity Propagation (AP) Hình 2.2: Minh họa hiệu ba kỹ thuật rời rạc hóa khác Hình 3.1: Phần mềm mã nguồn mở Mapwindow Hình 3.2: Kiếm tra plug-ins vừa add MapWindow Hình 3.3: Kéo thả Map Control vào form Hình 3.4: Kéo Legend vào form Hình 3.5: Kéo thêm DataGridView vào form Table Hình 3.6: Giao diện plugin APCluster Số hóa Trung tâm Học liệu – ĐHTNv http://ww w.lrc.tnu.e du.vn MỞ ĐẦU Đặt vấn đề Nguồn liệu dồi cung cấp nhiều thông tin, từ nhân loại đúc rút thành tri thức trình phát triển xã hội lồi người Với phát triển cơng nghệ điện tốn hệ thống lưu trữ liệu khối lượng tài nguyên số ngày trở nên phong phú đồ sộ Trong xã hội đại, thơng tin đóng vai trò then chốt Nhu cầu xử lý liệu, trích rút thơng tin, kịp thời khai thác chúng để mang lại hiệu thiết thực cho công tác quản lý, hoạt động sản xuất kinh doanh,… ngày trở nên cấp thiết Khai phá liệu nói chung để trích rút thơng tin phân cụm liệu nói riêng trọng tâm nghiên cứu khoa học máy tính Phân cụm liệu biện pháp để tìm kiếm tri thức, ta chưa biết nhiều thông tin miền ứng dụng Phân cụm coi công cụ độc lập để xem xét phân bố liệu, bước tiền xử lý cho bước sau Phân cụm liệu có nhiều ứng dụng hầu hết lĩnh vực hoạt động kinh tế, xã hội Có nhiều phương pháp thuật toán phân cụm liệu khác nhau, tùy theo cách tiếp cận tốn góc độ Một phương pháp đề xuất tương đối gần Phương pháp lan truyền độ tương tự Thuật toán lan truyền độ tương tự (Affinity Propagation - AP) thuật toán phân cụm liệu đưa Frey & Dueck vào năm 2007 dựa ý tưởng thuật toán lan truyền độ tin cậy suy diễn mạng xác xuất Bayes, dựa sở toán học lý thuyết xác suất Thuật toán lan truyền làm việc dựa tương đồng (affinity nghĩa giống nhau, tương thích, hấp dẫn) cặp điểm liệu đồng thời xem xét tất điểm liệu tâm cụm tiềm năng, theo thuật ngữ tất điểm liệu hình mẫu (exemplar) tiềm năng, trao đổi thông điệp giá trị thực có tập hình mẫu tốt (phân cụm tương ứng) Số hóa Trung tâm Học liệu – ĐHTN1 http://www.lrc.tnu.edu.vn thêm vào Windows Visual Basic, C #, Delphi, ngơn ngữ khác có hỗ trợ ActiveX, cung cấp ứng dụng với đồ Cài đặt Active X map control 4.9.3.5 Link download đây: http://mapwingis.codeplex.com/releases/view/541892 Để đưa Active X map control vào form Visual studio ta làm sau:  Bước 1: Tạo project VB, ngôn ngữ C#.NET, loại ứng dụng Windows Forms Application, framework NET 3.5 Sau tạo thành công mộtWindow form Application, thực đặt tên, ID cho form cách: Ấn chuột phải vào form, chọn Properties Thiết lập thuộc tính (Name) Text cho form Thuộc tính (Name) coi ID form để gọi đến form Thuộc tính Text để hiển thị tên form  Bước 2: Đưa Active X vào Visual Studio cách: Tại công cụ chọn TOOL  Choose Toolbox Item  COM components  đánh dấu tích vào Map Control  OK Sau add xong, kiểm tra mục Tool box form thấy control Map Control:  Bước 3: Đưa Map Control vào form cách: kéo chức Map Control từ Toolbox thả vào form, form khung có toạ độ hình: Số hóa Trung tâm Học liệu – ĐHTN46 http://www.lrc.tnu.edu.vn Hình 3.3: Kéo thả Map Control vào form Đặt (Name) cho Map Control vừa kéo vào AxMap1  Bước 4: tạo Legend : Mục đích tạo điều khiển lớp layer (cho phép layer hiển thị, nằm trên) Các bước thực hiện: -Bước 4.1: Tại Tool  Choose Toolbox Item, Net Framework Component  Brower đến C:\Program Files\MapWindow  chọn MapWinInterfaces.dll, tick chọn Legend Sau tick chọn xong, control Legned add vào Toolbox: -Bước 4.2: Kéo Legend từ Toolbox thả vào phía bên trái form Thiết lập thuộc tính (Name) Legend Số hóa Trung tâm Học liệu – ĐHTN47 http://www.lrc.tnu.edu.vn Hình 3.4: Kéo Legend vào form Tạo liên kết Legend Mapcontrol: Chuyển sang hình code form, viết kiện load cho form sau: private void TestMap_Load(System.Object sender, System.EventArgs e) { Legend.Map = AxMap.GetOcx(); }  Bước 5: Thêm chức Tạo layer Xoá layer -Bước 5.1: Tạo Layer Thêm button vào form, đặt thuộc tính Text Tạo layer Viết kiện Click cho button Tạo layer sau: Số hóa Trung tâm Học liệu – ĐHTN48 http://www.lrc.tnu.edu.vn private void BtAdd_Click(object sender, EventArgs e) { int handle = 0; MapWinGIS.Shapefile sf = new MapWinGIS.Shapefile(); OpenFileDialog open1 = new OpenFileDialog(); open1.Filter = sf.CdlgFilter; if (open1.ShowDialog(this) == System.Windows.Forms.DialogResult.OK) { sf.Open(open1.FileName); handle = Legend.Layers.Add(sf, true); Legend.Map.LayerName(handle) = System.IO.Path.GetFileNameWithoutExtension(sf.Filename); } } -Bước 5.2: Xoá Layer Thêm button vào form, đặt thuộc tính Text Xố layer, Name BtDel Viết kiện Click cho button Xoá layer sau: private void BtDel_Click(object sender, EventArgs e) { AxMap.RemoveAllLayers(); Legend.Layers.Clear(); }  Bước 6: Chọn màu cho vùng hiển thị Thêm button vào form, đặt thuộc tính Text Set Color, Name Bttcolour Từ toolbox, kéo control ColorDialog vào cạnh button Set Color Viết kiện click cho button Set Color sau: Số hóa Trung tâm Học liệu – ĐHTN49 http://www.lrc.tnu.edu.vn private void BttColour_Click(object sender, EventArgs e) { int hnd = 0; System.UInt32 col = 0; hnd = Legend.SelectedLayer; if (ColorDialog1.ShowDialog == System.Windows.Forms.DialogResult.OK) { Col = System.Convert.ToUInt32(Information.RGB(ColorDialog1.Color.R, ColorDialog1.Color.G, ColorDialog1.Color.B)); AxMap.set_ShapeLayerFillColor(hnd, col); Legend.Refresh(); AxMap.Refresh(); } }  Bước 7: Tạo bảng hiển thị liệu layer add vào form -Bước 7.1: Tạo bảng: Tạo window form project cách: Bấm chuột phải vào tên project, chọn Add, chọnWindow form…; Đặt tên file Table.cs Tạo thêm Data grid vào form: Từ tool box, kéo control DatagridView vào form, đặt Name cho control DataGridView1, set thuộc tính dock DataGridView1 Fill Số hóa Trung tâm Học liệu – ĐHTN50 http://www.lrc.tnu.edu.vn Hình 3.5: Kéo thêm DataGridView vào form Table Chuyển sang hình code form Table, thêm dòng khai báo Shape file vào sau dòng Public class Table: MapWinGIS.Shapefile pshape = default(MapWinGIS.Shapefile); Tạo sub với tham số myShapeFile As MapWinGIS.Shapefile cách thêm đoạn code phía vào public Class Table public New(ref MapWinGIS.Shapefile myShapeFile) { pshape = myShapeFile; InitializeComponent(); } Viết kiện load cho form Table sau: Số hóa Trung tâm Học liệu – ĐHTN51 http://www.lrc.tnu.edu.vn private void Table_Load(object sender, EventArgs e) { DataTable myDataTable = new DataTable(); DataRow myDataRow = null; int i = 0; int j = 0; int k = 0; for (i = 0; i

Ngày đăng: 18/11/2018, 10:33

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan