先知cd——熱愛生活是一切藝術的開始
寫下來的都是資源,分享給互聯網~~均屬原創隨筆。 轉載引用請注明作者changedi。 喜歡應用研究,熱愛編程,歡迎交流。
result is
=== Attribute Selection on all input data ===
Search Method: Best first. Start set: no attributes Search direction: forward Stale search after 5 node expansions Total number of subsets evaluated: 12 Merit of best subset found: 0.887
Attribute Subset Evaluator (supervised, Class (nominal): 5 class): CFS Subset Evaluator Including locally predictive attributes
Selected attributes: 3,4 : 2 petallength petalwidth
old number of Attributes is 5 new number of Attributes is 2 2 3 4 原來的iris數據集中共有4個屬性(包含一個分類類標所以一共5維),經過特征選擇后,只有第3和第4兩個維度的特征保留,所以新特征子集有兩個維度(不包含類標,有點繞,不好意思,我總是這樣)。 最后的2,3,4是屬性數組的下標,表示經過特征選擇保留的屬性子集是第3,4,5個屬性。
posted on 2010-11-23 10:06 changedi 閱讀(17981) 評論(19) 編輯 收藏 所屬分類: 機器學習
你好!請問你能給我講講CFS算法嗎?最終的特征子集中的特征是怎么得出來的,那個Ms函數中的n是原始特征集中的特征個數,還是選完之后的特征子集的個數?這個n變化嗎?最好有個例子,我不太明白這個算法的步驟,謝謝你啦! 回復 更多評論
@張 CFS的算法,可以參考這篇文章correlation-based feature selection for machine learning。numOfOldAttributes 是原始數據集中的數據維數,numOfNewAttributes 是經過select以后的特征維數。selectedAttributes是select的attribute的index。 回復 更多評論
@changedi 下這篇文章了,英文的,看的比較費盡,還有里面的特征之間的相關度量,特征與類之間的相關度量,用得好像是互信息的公式,那個最終的特征子集是從空集開始一個一個把特征加進去的還是怎么得出來的?還是不明白,最后那個merits函數的值,是不是得先設個閾值啊?大于這個閾值的才加入?就是這個得出來的值是不是就像算信息增益似的,這個特征的信息增益越大代表和類的相關性越大?麻煩你能給我說說這個算法的過程嗎?真的謝謝你了! 回復 更多評論
關于CFS算法和IG算法,最近在看CFS算法,上些看不明白的,麻煩你能給解釋下嗎? CFS中的那個評價函數:merits中有特征與類這間的平均相關度量和特征與特征之間的平均相關度量,關于這個相關度量我看的是通過信息論中熵的公式和互信息的公式算出來的,有的也說這個互信息就是信息增益,所以對于CFS中算相關度量的信息增益 和平時說的IG算法是一回事嗎?到底是怎么用CFS算法選出那些特征的,最后算的merits的值是不是得有個閾值來判斷什么的,還是在計算那些平均相關度量是要有個閾值的問題?總而言之對于這個CFS算法的流程還不太明白,老師能幫忙給講下嗎?非常感謝! 回復 更多評論
@張 在郵件中回復你了 回復 更多評論
你能告訴我這個weka怎么安裝嗎?能否把相關的安裝程序給俺發一份?我在網上搜了搜,也沒弄明白怎么安裝?得java環境下吧?沒用過,幫幫忙吧,謝謝你了!能否留下QQ? 回復 更多評論
謝謝你的熱心解答,還有一個問題 我看網上說KDD 99中“kddcup.data_10_percent” 數據集,接近50萬條數據,做成ARFF文件后有70多M。太大了 weka恐怕沒法運行吧?在weka中如何抽樣啊?KDD 99中的數據集是CSV格式的,是不是可以在weka中直接轉化為ARFF格式啊? 回復 更多評論
你好!還能再請教幾個問題嗎?我把weka導入進了MyEclips中,導完在console中出了三個小問題,有兩個說沒找到什么.xml文件,有影響嗎?要用weka中的算法時,怎么加入你想用的數據集啊?就像你提到的iris數據集,我想在MyEclips中看運行的結果。謝謝你能幫忙給說下嗎? 回復 更多評論
你好! 我是應屆畢業生,現在正在做畢業設計。有個步驟想用weka的使用。具體是這樣的: 我想抽取文章的關鍵詞。對文章分詞后可以抽取每一個詞語的特征比如:TF-IDF、位置特征、詞匯鏈特征等等。。那么現在問題可以轉化為一個分類問題: 已知每個詞的特征,將詞語分成關鍵詞和非關鍵詞兩類。 我從前沒有用過weka,在網上得到的資料也很不全。不知道從哪里下手。希望得到你的指點。如果可以,能否和你交流,我的email:caike11@sina.com 蔡科 回復 更多評論
@蔡科 如果只是二類的分類問題,那么weka當然可以做,前提是你的訓練文件先做好。就是你要把你的詞匯的特征全部提取出來,做成arff文件~~~ 有什么細節問題可以郵件問我jysoftware@gmail.com 回復 更多評論
老師,您好,我剛接觸到weka,我現在想用weka 做特征選擇,在java中調用weka 的特征選擇算法,可weka要求的數據格式是arff格式的,我現在不太明白一個問題,就是我把我的數據的分詞結果作為特征集,那么這些中文的分詞結果怎么轉成arff格式的啊,希望能得到老師的指點。謝謝拉 回復 更多評論
@lijia 老師是談不上的,不用叫老師啦~~~ 你的問題其實很簡單,weka提供了強大的機器學習能力,分類、聚類、特征選擇都非常易用。你的問題主要在如何建模你的訓練集,arff訓練集就像一個2維數據庫表一樣,每一行是一條訓練記錄,每一列分別代表一個維度的特征,有其特定意義。實踐第一位,你先把weka裝上然后使用一下,weka默認帶了很多經典訓練庫,看看別人的arff是怎么構建的~~ 回復 更多評論
呵呵,好的,我看到arff格式的數據,需要有@realation--數據集的名字,然后用@attribute--屬性信息,@data--實例數據,每個屬性值用逗號分割 現在我描述一下我要做的內容:我的數據是一行一行待分類的中文文本,比如“我用5230手機,信號非常差,待機還行2天左右”,我現在已經將其分詞,并去除掉了停用詞,結果是這樣的:“我”“用”“手機”“信號”“非常差”“待機”“還行”“2天”“左右”我現在想把所有的這些分詞結果作為特征,然后用IG進行特征選擇,現在有一個困惑是,我把他表示成arff格式的時候@attribute--屬性信息這塊我不知道填寫什么,,@data--實例數據這塊就是每條文本的分詞結果作為實例,分詞結果用逗號相隔,我可以先把分詞結果寫入到excel表格中?然后再轉換成csv格式的文件?希望能得到您的指點 回復 更多評論
@lijia attribute名字是你自己定的,只要能描述清楚該列所代表的特征就可以,屬于metadata元數據。至于你怎么確定你的特征。如果你只把分詞結果作為特征,那么可以告訴你,你的訓練庫是一個列數不確定的庫,因為一句話的分詞結果詞數是不一樣的。我的直觀思路是定義一個上限值比如一句話最多10個詞,那么你的attribute數量就是10,然后假設一句話有8個詞,那么把另兩個位置填充null即可。文本的學習我沒有研究過,怎么建模不是很清楚。建議你搜搜相關文章,有了思路后用weka很容易做實驗的 回復 更多評論
@changedi 你可以傳給我一份用于特征選擇的arff格式的數據嗎?我的郵箱:llj85born040@sina.com 回復 更多評論
@lijia 你可以傳給我一份用于特征選擇的arff格式的數據嗎?謝謝,我的郵箱: 1292629198@qq.com 回復 更多評論
老師請問:CFS中的評價函數,最后運行結果里給出的merits的值是如何算出來的?這個值得含義是什么?在weka軟件中如何手動修改一個閾值來作為停止準則?CFS是如何一步一步得到最終的特征子集的,對這個算法的流程不太明白,老師可否幫忙給講解下?真的非常感謝。 回復 更多評論
@changedi@changedi同求老師的回復,關于CFS算法,哪里可以找到一個比較由淺入深的解釋,剛剛接觸數據挖掘。 回復 更多評論
@changedi@changedi同求老師的回復,關于CFS算法,哪里可以找到一個比較由淺入深的解釋,剛剛接觸數據挖掘 925452096@qq.com 回復 更多評論
Powered by: BlogJava Copyright © changedi