數據挖掘技術簡介[轉]

?

關鍵詞: 關鍵詞:數據挖掘 ?? 數據集合 ?? ??????????????????????????????????????

 1. 引言

  數據挖掘(Data Mining)是從大量的、不完全的、有噪聲的、模糊的、隨機的數據中提取隱含在其中的、人們事先不知道的、但又是潛在有用的信息和知識的過程。隨著信息技術的高速發展,人們積累的數據量急劇增長,動輒以TB計,如何從海量的數據中提取有用的知識成為當務之急。數據挖掘就是為順應這種需要應運而生發展起來的數據處理技術。是知識發現(Knowledge Discovery in Database)的關鍵步驟。

  2. 數據挖掘的任務

  數據挖掘的任務主要是關聯分析、聚類分析、分類、預測、時序模式和偏差分析等。

  ⑴關聯分析(association analysis)

  關聯規則挖掘是由Rakesh Apwal等人首先提出的。兩個或兩個以上變量的取值之間存在某種規律性,就稱為關聯。數據關聯是數據庫中存在的一類重要的、可被發現的知識。關聯分為簡單關聯、時序關聯和因果關聯。關聯分析的目的是找出數據庫中隱藏的關聯網。一般用支持度和可信度兩個閥值來度量關聯規則的相關性,還不斷引入興趣度、相關性等參數,使得所挖掘的規則更符合需求。

  ⑵聚類分析(clustering)

  聚類是把數據按照相似性歸納成若干類別,同一類中的數據彼此相似,不同類中的數據相異。聚類分析可以建立宏觀的概念,發現數據的分布模式,以及可能的數據屬性之間的相互關系。

  ⑶分類(classification)

  分類就是找出一個類別的概念描述,它代表了這類數據的整體信息,即該類的內涵描述,并用這種描述來構造模型,一般用規則或決策樹模式表示。分類是利用訓練數據集通過一定的算法而求得分類規則。分類可被用于規則描述和預測。

  ⑷預測(predication)

  預測是利用歷史數據找出變化規律,建立模型,并由此模型對未來數據的種類及特征進行預測。預測關心的是精度和不確定性,通常用預測方差來度量。

  ⑸時序模式(time-series pattern)

  時序模式是指通過時間序列搜索出的重復發生概率較高的模式。與回歸一樣,它也是用己知的數據預測未來的值,但這些數據的區別是變量所處時間的不同。

  ⑹偏差分析(deviation)

  在偏差中包括很多有用的知識,數據庫中的數據存在很多異常情況,發現數據庫中數據存在的異常情況是非常重要的。偏差檢驗的基本方法就是尋找觀察結果與參照之間的差別。

  3.數據挖掘對象

  根據信息存儲格式,用于挖掘的對象有關系數據庫、面向對象數據庫、數據倉庫、文本數據源、多媒體數據庫、空間數據庫、時態數據庫、異質數據庫以及Internet等。
 

  4.數據挖掘流程

  ⑴定義問題:清晰地定義出業務問題,確定數據挖掘的目的。

  ⑵數據準備:數據準備包括:選擇數據--在大型數據庫和數據倉庫目標中提取數據挖掘的目標數據集;數據預處理--進行數據再加工,包括檢查數據的完整性及數據的一致性、去噪聲,填補丟失的域,刪除無效數據等。

  ⑶數據挖掘:根據數據功能的類型和和數據的特點選擇相應的算法,在凈化和轉換過的數據集上進行數據挖掘。

  ⑷結果分析:對數據挖掘的結果進行解釋和評價,轉換成為能夠最終被用戶理解的知識。

  ⑸知識的運用:將分析所得到的知識集成到業務信息系統的組織結構中去。

  5.數據挖掘的方法

  ⑴神經網絡方法

  神經網絡由于本身良好的魯棒性、自組織自適應性、并行處理、分布存儲和高度容錯等特性非常適合解決數據挖掘的問題,因此近年來越來越受到人們的關注。典型的神經網絡模型主要分3大類:以感知機、BP反向傳播模型、函數型網絡為代表的,用于分類、預測和模式識別的前饋式神經網絡模型;以Hopfield的離散模型和連續模型為代表的,分別用于聯想記憶和優化計算的反饋式神經網絡模型;以ART模型、Koholon模型為代表的,用于聚類的自組織映射方法。神經網絡方法的缺點是"黑箱"性,人們難以理解網絡的學習和決策過程。

  ⑵遺傳算法

  遺傳算法是一種基于生物自然選擇與遺傳機理的隨機搜索算法,是一種仿生全局優化方法。遺傳算法具有的隱含并行性、易于和其它模型結合等性質使得它在數據挖掘中被加以應用。

  Sunil已成功地開發了一個基于遺傳算法的數據挖掘工具,利用該工具對兩個飛機失事的真實數據庫進行了數據挖掘實驗,結果表明遺傳算法是進行數據挖掘的有效方法之一[4]。遺傳算法的應用還體現在與神經網絡、粗集等技術的結合上。如利用遺傳算法優化神經網絡結構,在不增加錯誤率的前提下,刪除多余的連接和隱層單元;用遺傳算法和BP算法結合訓練神經網絡,然后從網絡提取規則等。但遺傳算法的算法較復雜,收斂于局部極小的較早收斂問題尚未解決。

  ⑶決策樹方法

  決策樹是一種常用于預測模型的算法,它通過將大量數據有目的分類,從中找到一些有價值的,潛在的信息。它的主要優點是描述簡單,分類速度快,特別適合大規模的數據處理。最有影響和最早的決策樹方法是由Quinlan提出的著名的基于信息熵的ID3算法。它的主要問題是:ID3是非遞增學習算法;ID3決策樹是單變量決策樹,復雜概念的表達困難;同性間的相互關系強調不夠;抗噪性差。針對上述問題,出現了許多較好的改進算法,如 Schlimmer和Fisher設計了ID4遞增式學習算法;鐘鳴,陳文偉等提出了IBLE算法等。

  ⑷粗集方法

  粗集理論是一種研究不精確、不確定知識的數學工具。粗集方法有幾個優點:不需要給出額外信息;簡化輸入信息的表達空間;算法簡單,易于操作。粗集處理的對象是類似二維關系表的信息表。目前成熟的關系數據庫管理系統和新發展起來的數據倉庫管理系統,為粗集的數據挖掘奠定了堅實的基礎。但粗集的數學基礎是集合論,難以直接處理連續的屬性。而現實信息表中連續屬性是普遍存在的。因此連續屬性的離散化是制約粗集理論實用化的難點。現在國際上已經研制出來了一些基于粗集的工具應用軟件,如加拿大Regina大學開發的KDD-R;美國Kansas大學開發的LERS等。

  ⑸覆蓋正例排斥反例方法

  它是利用覆蓋所有正例、排斥所有反例的思想來尋找規則。首先在正例集合中任選一個種子,到反例集合中逐個比較。與字段取值構成的選擇子相容則舍去,相反則保留。按此思想循環所有正例種子,將得到正例的規則(選擇子的合取式)。比較典型的算法有Michalski的AQ11方法、洪家榮改進的AQ15方法以及他的AE5方法。

  ⑹統計分析方法

  在數據庫字段項之間存在兩種關系:函數關系(能用函數公式表示的確定性關系)和相關關系(不能用函數公式表示,但仍是相關確定性關系),對它們的分析可采用統計學方法,即利用統計學原理對數據庫中的信息進行分析。可進行常用統計(求大量數據中的最大值、最小值、總和、平均值等)、回歸分析(用回歸方程來表示變量間的數量關系)、相關分析(用相關系數來度量變量間的相關程度)、差異分析(從樣本統計量的值得出差異來確定總體參數之間是否存在差異)等。

  ⑺模糊集方法

  即利用模糊集合理論對實際問題進行模糊評判、模糊決策、模糊模式識別和模糊聚類分析。系統的復雜性越高,模糊性越強,一般模糊集合理論是用隸屬度來刻畫模糊事物的亦此亦彼性的。李德毅等人在傳統模糊理論和概率統計的基礎上,提出了定性定量不確定性轉換模型--云模型,并形成了云理論。

  6.評價數據挖掘軟件需要考慮的問題

  越來越多的軟件供應商加入了數據挖掘這一領域的競爭。用戶如何正確評價一個商業軟件,選擇合適的軟件成為數據挖掘成功應用的關鍵。

  評價一個數據挖掘軟件主要應從以下四個主要方面:

  ⑴計算性能:如該軟件能否在不同的商業平臺運行;軟件的架構;能否連接不同的數據源;操作大數據集時,性能變化是線性的還是指數的;算的效率;是否基于組件結構易于擴展;運行的穩定性等;

  ⑵功能性:如軟件是否提供足夠多樣的算法;能否避免挖掘過程黑箱化;軟件提供的算法能否應用于多種類型的數據;用戶能否調整算法和算法的參數;軟件能否從數據集隨機抽取數據建立預挖掘模型;能否以不同的形式表現挖掘結果等;

  ⑶可用性:如用戶界面是否友好;軟件是否易學易用;軟件面對的用戶:初學者,高級用戶還是專家?錯誤報告對用戶調試是否有很大幫助;軟件應用的領域:是專攻某一專業領域還是適用多個領域等;

  ⑷輔助功能:如是否允許用戶更改數據集中的錯誤值或進行數據清洗;是否允許值的全局替代;能否將連續數據離散化;能否根據用戶制定的規則從數據集中提取子集;能否將數據中的空值用某一適當均值或用戶指定的值代替;能否將一次分析的結果反饋到另一次分析中,等等。

  7.結束語

  數據挖掘技術是一個年輕且充滿希望的研究領域,商業利益的強大驅動力將會不停地促進它的發展.每年都有新的數據挖掘方法和模型問世,人們對它的研究正日益廣泛和深入。盡管如此,數據挖掘技術仍然面臨著許多問題和挑戰:如數據挖掘方法的效率亟待提高,尤其是超大規模數據集中數據挖掘的效率;開發適應多數據類型、容噪的挖掘方法,以解決異質數據集的數據挖掘問題;動態數據和知識的數據挖掘;網絡與分布式環境下的數據挖掘等;另外,近年來多媒體數據庫發展很快,面向多媒體數據庫的挖掘技術和軟件今后將成為研究開發的熱點。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/537161.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/537161.shtml
英文地址,請注明出處:http://en.pswp.cn/news/537161.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

樹莓派安裝smbus_樹莓派使用smbus不兼容問題(no module named 'smbus')

樹莓派使用smbus不兼容問題(no module named ‘smbus’)python3.5–3.6可以使用smbus2代替smbus1. 先參考以下方法:github討論樹莓派社區2.Pypi上可以下載smbus2smbus2PyPi介紹:當前支持的功能有:獲取i2c功能(I2C_FUNCS)read_bytewrite_byter…

Java并發編程之線程池ThreadPoolExecutor解析

線程池存在的意義 平常使用線程即new Thread()然后調用start()方法去啟動這個線程,但是在頻繁的業務情況下如果在生產環境大量的創建Thread對象是則會浪費資源,不僅增加GC回收壓力,并且還浪費了時間,創建線程是需要花時間的&…

面向過程的門面模式

{*******************************************************}{ }{ 業務邏輯一 }{ }{ 版權所有 (C) 2008 陳…

Java并發編程之線程定時器ScheduledThreadPoolExecutor解析

定時器 就是需要周期性的執行任務,也叫調度任務,在JDK中有個類Timer是支持周期性執行,但是這個類不建議使用了。 ScheduledThreadPoolExecutor 繼承自ThreadPoolExecutor線程池,在Executors默認創建了兩種: newSin…

python xml轉換鍵值對_Python 提取dict轉換為xml/json/table并輸出

#!/usr/bin/python#-*- coding:gbk -*-#設置源文件輸出格式import sysimport getoptimport jsonimport createDictimport myConToXMLimport myConToTabledef getRsDataToDict():#獲取控制臺中輸入的參數,并根據參數找到源文件獲取源數據csDict{}try:#通過getopt獲取…

應用開發框架之——根據數據表中的存儲的方法名稱來調用方法

功用一:在框架里面根據存儲在數據表中的方法名來動態調用執行方法。 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 class(TForm) Button1: TButton; procedu…

Spring IOC容器組件注入的幾種方式

整理一下之前Spring的學習筆記,大致有一下幾種Spring注入到容器中的方法: 1)、配置在xml的方式。 2)、開啟包掃描ComponentScan使用Component,Service,Controller,Repository(其實后三個都繼承…

我們是如何拿下Google和Facebook Offer的?

http://posts.careerengine.us/p/57c3a1c1a09633ee7e57803c 大家好,我是小高,CMU CS Master,來Offer第一期學員,2014年初在孫老師的帶領下我在幾個月的時間內進入了Yahoo,并工作了近2年。2016年初,Yahoo工作…

Spring中BeanFactory和FactoryBean的區別

先介紹一下Spring的IOC容器到底是個什么東西&#xff0c;都說是一個控制反轉的容器&#xff0c;將對象的控制權交給IOC容器&#xff0c;其實在看了源代碼之后&#xff0c;就會發現IOC容器只是一個存儲單例的一個ConcurrentHashMap<String, BeanDefinition> BeanDefiniti…

python中數字和字符串可以直接相加_用c語言或者python將文件中特定字符串后面的數字相加...

匿名用戶1級2014-08-31 回答代碼應該不難吧。既然用爬蟲爬下來了&#xff0c;為什么爬取數據的時候沒做處理呢。之前用過Scrapy爬蟲框架&#xff0c;挺好用的&#xff0c;你可研究下。代碼&#xff1a;#!codingutf-8import osimport reimport random# 獲取當前目錄文件列表def …

Spring中Aware的用法以及實現

Aware 在Spring當中有一些內置的對象是未開放給我們使用的&#xff0c;例如Spring的上下文ApplicationContext、環境屬性Environment&#xff0c;BeanFactory等等其他的一些內置對象&#xff0c;而在我們可以通過實現對應的Aware接口去拿到我們想要的一些屬性&#xff0c;一般…

c#字符型轉化為asc_C#字符串和ASCII碼的轉換

//字符轉ASCII碼&#xff1a;public static int Asc(string character){if (character.Length 1){System.Text.ASCIIEncoding asciiEncoding new System.Text.ASCIIEncoding();int intAsciiCode (int)asciiEncoding.GetBytes(character)[0];return (intAsciiCode);}else{thr…

topcoder srm 625 div1

problem1 link 假設第$i$種出現的次數為$n_{i}$&#xff0c;總個數為$m$&#xff0c;那么排列數為$T\frac{m!}{\prod_{i1}^{26}(n_{i}!)}$ 然后計算回文的個數&#xff0c;只需要考慮前一半&#xff0c;得到個數為$R$&#xff0c;那么答案為$\frac{R}{T}$. 為了防止數字太大導致…

Spring的組件賦值以及環境屬性@PropertySource

PropertySource 將指定類路徑下的.properties一些配置加載到Spring當中&#xff0c; 有個跟這個差不多的注解PropertySources Target(ElementType.TYPE) Retention(RetentionPolicy.RUNTIME) Documented public interface PropertySources {PropertySource[] value();} 使用…

python語音識別框架_橫評:五款免費開源的語音識別工具

編者按&#xff1a;本文原作者 Cindi Thompson&#xff0c;美國德克薩斯大學奧斯汀分校(University of Texas at Austin)計算機科學博士&#xff0c;數據科學咨詢公司硅谷數據科學(Silicon Valley Data Science&#xff0c;SVDS)首席科學家&#xff0c;在機器學習、自然語言處理…

csharp read excel file get sheetName list

1 /// <summary>2 /// 3 /// 塗聚文4 /// 201208035 /// Geovin Du6 ///找到EXCEL的工作表名稱 要考慮打開的文件的進程問題7 /// </summary>8 /// <param name"filename">…

Spring Bean的生命周期以及IOC源碼解析

IOC源碼這一塊太多只能講個大概吧&#xff0c;建議還是去買本Spring IOC源碼解析的書來看比較好&#xff0c;我也是自己看源代碼以及視頻整理的筆記 Bean的生命周期大概可以分為四個階段&#xff0c;具體的等會再說&#xff0c;先看看IOC的源碼吧 1、bean的創建 2、bean的屬…

python3繪圖_python3繪圖示例2(基于matplotlib:柱狀圖、分布圖、三角圖等)

#!/usr/bin/env python# -*- coding:utf-8 -*-from matplotlib import pyplot as pltimport numpy as npimport pylabimport os,sys,time,math,random# 圖1-給已有的圖加上刻度filer‘D:\jmeter\jmeter3.2\data\Oracle數據庫基礎.png‘arrnp.array(file.getdata()).reshape(fil…

bzoj4152-[AMPPZ2014]The_Captain

Description 給定平面上的n個點&#xff0c;定義(x1,y1)到(x2,y2)的費用為min(|x1-x2|,|y1-y2|)&#xff0c;求從1號點走到n號點的最小費用。 Input 第一行包含一個正整數n(2<n<200000)&#xff0c;表示點數。 接下來n行&#xff0c;每行包含兩個整數x[i],yi&#xff0c;…