一个色的导航资源精品在线观看|手机看片在线精品视频|伊人亚洲成人电影|亚洲欧美在线男女|无码无码在线观看五月精品视频在线|超碰日韩欧美在线|午夜精品蜜桃一区二区久久久|91欧美动态国产精品女主播|色欲色香天天天综合网在线观看免费|伊人春色在线伊人

為什么失敗是成功之母?

時間:2024-08-25 04:18 人氣:0 編輯:招聘街

一、為什么失敗是成功之母?

失敗中總結經驗,尋找方法,更容易走向成功

二、如何論證“失敗是成功之母”?

 “失敗是成功之母”之論證篇   當一個人失敗時,我們常常聽到周圍的人用“失敗是成功之母”這句話來鼓勵他。

這句人們耳熟能詳?shù)脑挷恢獜暮螘r何處流傳開,反正它如今以成為人盡皆知,被人廣泛使用的名言了?! ∪藗冇眠@句話來安慰或勉勵受挫折的人,這本無可厚非。畢竟誰一生中不遇到點困難呢?眼前的路即使再崎嶇不平,也還是要向前走的。那么,我們必然就不能一遇挫折就灰心喪氣,一蹶不振。而用失敗是成功之母來安慰他人或勉勵自己都是不錯的選擇。有助于受困的人們盡快從人生低谷中走出來?! ”M管從實用角度來講,這句名言有其存在的必要性,也的確能在一定程度上發(fā)揮出積極作用來。但我們常說分析問題要一分為二嗎辯證地看問題在任何時候都是適用的。在這里也是,失敗中固然孕育著成功的動因,可一個人是否一定能從失敗中吸取經驗從而走向成功卻還值得商榷。比如,若一個人遇到接二連三的打擊,次次失敗,用這樣的話安慰她顯然更像嘲弄和輕視,還不如讓其正視現(xiàn)實。而當遭受挫折的人本性懦弱時,這話也只能起到飲鴆止渴的作用。因為他會一直沉浸在自我安慰中,過度催眠從而不思進取,就真正陷入美好的謊言二不能自拔了?! ζ胀ㄈ藘貉裕@句話最好用于屬于正常人能承受的打擊程度內。對意志特別堅定的人而言,則或許他們根本用不著這樣虛無的安慰,他們自己就會不滿于失敗的現(xiàn)狀,從而激勵自己走出陰影。  由此可見,失敗未必就是成功之母,若要失敗成為成功之母,還需在其上加一個前提條件,就是凡事都應保持在一個度內,只有在合理范圍內,一些規(guī)則才可能成為真理,才能被有效地使用。失敗和成功僅一墻之隔,人們有可能通過失敗走向成功,也有可能走錯了方向,離成功越來越遠。失敗和成功的轉化需依勢而行。

三、失敗是成功之母誰說的?

  “失敗乃成功之母”是溫德爾·菲利普斯說的,溫德爾·菲利普斯是十九世紀美國杰出的演說家和改革家,“失敗乃成功之母”正是他在一次演講中說出來的話語,這句話告訴我們要不斷從失敗當中吸取經驗教訓,為成功做好準備。

  其實歷史上還有著許多與“失敗乃成功之母”這句話相關的名人事例,例如我國古代流傳著的大禹治水的故事。大禹治水的故事講的是,在上古時期,黃河泛濫成災,鯀、禹父子二人受命負責治理水患。鯀一直是采取堵水的方式來治理,但是仍舊沒有效果,禹在吸收父親治水經驗的同時,自己不斷的進行研究、實驗,最終采取疏的方式,將水患平息。

四、失敗是成功之母是哪篇課文?

中國古代神話《山海經·海內經》。故事梗概:鯀偷了天帝的息壤(可以生長的土)來擋洪水,沒有成功。天帝命祝融殺死了鯀,但他雖死猶生。《歸藏·啟筮》云:“鯀死三歲不腐,剖之以吳刀,是以出禹?!边@幾句話是說“禹是從鯀肚子里生出來的。他的父親死后三年尸體不腐爛,最終生出了兒子禹?!边@正說明了這個失敗的英雄壯志未酬,精神不滅,他把不屈的奮斗精神傳給了下一代——禹。而禹就是在總結上一代經驗教訓的基礎上經過艱苦不屈的奮斗,用疏導的方法治服了洪水,獲得了成功。 鯀失敗了,鯀生出了禹,禹成功了。后世人們正是根據(jù)鯀禹治水神話中“失敗生出了成功”這一情況創(chuàng)造了成語:失敗乃成功之母。

五、失敗是成功之母反方辯論詞?

失敗是成功之母,也非常的正確。任何人不可避免遇到失敗的時候,但關鍵是看你能不能從失敗汲取教訓和經驗,能不能從失敗中自我反省,能不能從失敗中更加激起自己成功的決心。

愛迪生,在發(fā)明電燈之前,曾歷經無數(shù)的失敗,做過不計其數(shù)的實驗,但他始終堅定信念信念,不斷從實驗中找到突破方法,最終他成功發(fā)明了電燈。因此,失敗不是壞事,失敗是成功的前提,失敗是晨曦來臨前的黑夜。

六、為什么說失敗是成功之母?

我們善于從失敗中積累經驗教訓,才能獲得成功。馬克思說:人要學會走路,也要學會摔跤。而且只有經過摔跤,才能學會走路。

為什么有些人成功了,有些人失敗了呢?因為每個人面對失敗的問題不同,有的人積極面對,有的人后退。積極面對困難的人離成功越來越近,而后退的人越來越遠,不成功是因為我們很努力,而是我們走錯了路。

迎難而上的人很多,知難而退的也不少。我們都知道那些有錢人,都遭遇過拒絕,但是他們面對拒絕從不妥協(xié),每一次拒絕對他們來說是一種成長,每一次拒絕他們都會找問題,解決問題,他們相信總會有人相信他們支持他們,我們身邊這樣的例子數(shù)不勝數(shù)。

有人說馬云被很多人拒絕過,一次又一次面對失敗他沒有退縮,最終功夫不負有心人,還是得到了他人的認可,我很佩服,但我做不到,只有羨慕嫉妒恨了。很多名人的成功都是從失敗中走出來的,世間沒有不犯錯的人,而是每個人解決問題的方法不一樣罷了。

說說身邊的例子吧,我們那兒有個大老板,只有小學文化,干過包工頭,做過超市,也做過菜譜,但還是失敗了,可人家不氣餒,借錢買了個雙排車,又開始做起來買菜的生意,做了幾年掙了錢,開了幾個大餐飲。成功總是青睞那些從失敗中走出來的人。

不氣餒不妥協(xié),我們沒有理由退縮,唯有從失敗中吸取經驗教訓,才能走向成功,才能實現(xiàn)自己的目標,努力吧少年。

七、失敗是成功之母排比句?

我認為:上失敗是成功之母寫排比句就是寫出三個和三個以上的含有比喻中的暗喻的修辭手法的句子。這樣的句子舉不勝舉。比喻說:祖國是我的母親,大地是我的家園,母校是我溫暖的家,教師是我的再生父母,警察是我的守護神,白衣天使是我的救命恩人。

八、說失敗是成功之母的諺語

說失敗是成功之母的諺語

失敗是每個人成長道路上不可避免的一部分。然而,許多人對失敗抱有消極的態(tài)度,視之為一種恥辱或無能的表現(xiàn)。然而,有一句古老的諺語說“失敗是成功之母”,意味著失敗實際上是成功的基石。在這篇博文中,我們將探討這句諺語的含義,以及為什么我們應該積極看待失敗。

失敗是學習的機會

每次我們經歷失敗的時刻,我們都有機會從中學到寶貴的教訓。失敗不是終點,而是一個新的起點。它幫助我們認識到我們的缺點和不足,并鼓勵我們不斷改進自己。正如Thomas Edison曾經說過:“我沒有失敗。我只是找到了一千種行不通的方法?!?/p>

請不要把失敗看作是一種打擊,而是把它作為成功的機會。當我們能夠從失敗中吸取教訓并應用于下一次嘗試時,我們就離成功更近了一步。比如,當你在工作中遇到挫折時,不要放棄,而要反思并找出哪里出了錯,然后下次做得更好。失敗可以教會我們如何更好地應對困難,并為我們的成長提供重要的經驗。

失敗是勇氣和毅力的考驗

成功往往需要充滿勇氣和毅力。而這些品質往往是通過經歷多次失敗并堅持不懈才能培養(yǎng)起來的。失敗可以考驗我們是否具備必要的毅力和勇氣,看我們是否能夠在挫折面前不屈不撓。只有那些敢于冒險、敢于追求夢想的人,才有可能取得真正的成功。

當你遇到失敗時,不要氣餒,而是保持積極的心態(tài)。選擇從失敗中吸取經驗教訓,堅持不懈地努力,這將是你成功的關鍵。正如Winston Churchill曾經說過:“成功是能夠從一個失敗到另一個失敗不斷前進?!敝挥心切┯掠诿鎸κ?,并且保持堅持不懈的人,才能最終實現(xiàn)他們的目標。

成功不是一蹴而就

許多人常常把成功看作是一蹴而就的事情。然而,真正的成功是需要經歷大量的努力、堅持和耐心的。失敗是我們在追求成功的道路上必須經歷的一部分。當我們在一次又一次的失敗中堅持下來時,我們實際上是在為成功鋪路。每一次失敗都為我們提供了新的洞察和經驗,幫助我們更加明確我們的目標并制定更好的計劃。

成功需要時間和耐心。當我們不斷經歷失敗的時候,我們應該看到這是一個磨煉我們耐心和毅力的過程。不要灰心喪氣,相信自己的能力,并持之以恒地努力。只有那些能夠堅持并從失敗中學習的人,才能最終獲得成功的美好。

結論

失敗是成功之母的諺語告訴我們,不要害怕失敗,不要把失敗視為終點,而是要將其看作是成功的基石。每次失敗都是一次寶貴的學習機會,它幫助我們發(fā)現(xiàn)并改進自己,提升我們的能力。失敗也是勇氣和毅力的考驗,只有那些勇于面對失敗并堅持不懈的人才能最終實現(xiàn)自己的目標。成功并非一蹴而就,它需要堅持、努力和耐心。當我們能夠積極看待失敗,并從中吸取經驗教訓時,我們才能越來越接近成功。

九、失敗是成功之母辯論賽

失敗是成功之母辯論賽

引言

人們常說,失敗是成功之母。這句話意味著在我們的人生旅程中,失敗不僅是難以避免的,而且是我們獲得成功的重要一步。然而,這一觀點也引發(fā)了激烈的辯論。讓我們深入探討這個話題,探索失敗和成功之間的關系。

失敗的定義

要理解這個辯論,我們首先需要定義失敗。失敗可以是目標未能實現(xiàn)的結果,也可以是行動或決策的不成功嘗試。無論是個人生活還是職業(yè)領域,失敗是一種常見的現(xiàn)象。它可以是臨時的挫折,也可以是長期的阻礙。

失敗與學習

那么,為什么說失敗是成功之母呢?一個主要的觀點是,失敗提供了重要的學習機會。當我們失敗時,我們會經歷痛苦和失望,但這也是一個時機,一個反思并從錯誤中汲取教訓的機會。通過審視我們的失敗,我們可以識別出導致失敗的原因,并制定新的策略來避免相同的錯誤。

實際上,許多成功的人都經歷過一系列的失敗。他們把失敗視為通向成功的必經之路。失敗驅使著他們不斷進步,完善自己的技能和知識。正是通過從失敗中學習,他們才能在后來的嘗試中獲得成功。

失敗與意志力

除了學習,失敗還可以培養(yǎng)和發(fā)展我們的意志力。在面對失敗時,我們被迫面對困難和挑戰(zhàn)。這種挑戰(zhàn)可以激發(fā)我們內在的毅力,使我們更加堅定地追求成功。

當我們經歷一次又一次的失敗,但依然堅持不懈地追求目標,我們變得更加堅強和有決心。我們學會了在逆境中堅持,并在面對困難時保持積極的心態(tài)。這種意志力是成功的關鍵要素之一。

成功之母的批評者

然而,支持者之外也有一些人對"失敗是成功之母"持懷疑態(tài)度。他們認為這是一種過于浪漫化和美化失敗的觀點。他們指出,成功往往是與熱情、才能和機遇相聯(lián)系的結果,而不僅僅是源自失敗的教訓。

這些批評者聲稱,失敗并不必然導致成功。只有在適當?shù)沫h(huán)境和條件下,才能從失敗中吸取經驗教訓,然后轉化為成功的動力。對于一些人來說,失敗只是源源不斷的挫敗和失望,沒有真正的好處。

平衡觀點

在這場辯論中,我們需要采取一種平衡的觀點。毫無疑問,失敗可以成為成功的催化劑。它帶來了痛苦,但也帶來了寶貴的學習經驗和機會。然而,失敗本身并不足以確保成功。

要獲得成功,我們還需要其他的因素,如熱情、毅力、才能和機遇。這些因素和失敗密切相關,但它們并不是失敗的必然結果。

結論

在這場關于失敗與成功之間關系的辯論中,我們得出的結論是,失敗是成功的一部分,但并非成功的全部。失敗提供了寶貴的學習機會,并培養(yǎng)了我們的意志力。然而,成功也需要其他的因素的支持。

正如任何一句格言一樣,"失敗是成功之母"不應被看作是絕對的真理,而是一種靈感,一種鼓勵我們在面對挑戰(zhàn)時持樂觀態(tài)度的想法。

十、mahout面試題?

之前看了Mahout官方示例 20news 的調用實現(xiàn);于是想根據(jù)示例的流程實現(xiàn)其他例子。網(wǎng)上看到了一個關于天氣適不適合打羽毛球的例子。

訓練數(shù)據(jù):

Day Outlook Temperature Humidity Wind PlayTennis

D1 Sunny Hot High Weak No

D2 Sunny Hot High Strong No

D3 Overcast Hot High Weak Yes

D4 Rain Mild High Weak Yes

D5 Rain Cool Normal Weak Yes

D6 Rain Cool Normal Strong No

D7 Overcast Cool Normal Strong Yes

D8 Sunny Mild High Weak No

D9 Sunny Cool Normal Weak Yes

D10 Rain Mild Normal Weak Yes

D11 Sunny Mild Normal Strong Yes

D12 Overcast Mild High Strong Yes

D13 Overcast Hot Normal Weak Yes

D14 Rain Mild High Strong No

檢測數(shù)據(jù):

sunny,hot,high,weak

結果:

Yes=》 0.007039

No=》 0.027418

于是使用Java代碼調用Mahout的工具類實現(xiàn)分類。

基本思想:

1. 構造分類數(shù)據(jù)。

2. 使用Mahout工具類進行訓練,得到訓練模型。

3。將要檢測數(shù)據(jù)轉換成vector數(shù)據(jù)。

4. 分類器對vector數(shù)據(jù)進行分類。

接下來貼下我的代碼實現(xiàn)=》

1. 構造分類數(shù)據(jù):

在hdfs主要創(chuàng)建一個文件夾路徑 /zhoujainfeng/playtennis/input 并將分類文件夾 no 和 yes 的數(shù)據(jù)傳到hdfs上面。

數(shù)據(jù)文件格式,如D1文件內容: Sunny Hot High Weak

2. 使用Mahout工具類進行訓練,得到訓練模型。

3。將要檢測數(shù)據(jù)轉換成vector數(shù)據(jù)。

4. 分類器對vector數(shù)據(jù)進行分類。

這三步,代碼我就一次全貼出來;主要是兩個類 PlayTennis1 和 BayesCheckData = =》

package myTesting.bayes;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.fs.FileSystem;

import org.apache.hadoop.fs.Path;

import org.apache.hadoop.util.ToolRunner;

import org.apache.mahout.classifier.naivebayes.training.TrainNaiveBayesJob;

import org.apache.mahout.text.SequenceFilesFromDirectory;

import org.apache.mahout.vectorizer.SparseVectorsFromSequenceFiles;

public class PlayTennis1 {

private static final String WORK_DIR = "hdfs://192.168.9.72:9000/zhoujianfeng/playtennis";

/*

* 測試代碼

*/

public static void main(String[] args) {

//將訓練數(shù)據(jù)轉換成 vector數(shù)據(jù)

makeTrainVector();

//產生訓練模型

makeModel(false);

//測試檢測數(shù)據(jù)

BayesCheckData.printResult();

}

public static void makeCheckVector(){

//將測試數(shù)據(jù)轉換成序列化文件

try {

Configuration conf = new Configuration();

conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));

String input = WORK_DIR+Path.SEPARATOR+"testinput";

String output = WORK_DIR+Path.SEPARATOR+"tennis-test-seq";

Path in = new Path(input);

Path out = new Path(output);

FileSystem fs = FileSystem.get(conf);

if(fs.exists(in)){

if(fs.exists(out)){

//boolean參數(shù)是,是否遞歸刪除的意思

fs.delete(out, true);

}

SequenceFilesFromDirectory sffd = new SequenceFilesFromDirectory();

String[] params = new String[]{"-i",input,"-o",output,"-ow"};

ToolRunner.run(sffd, params);

}

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

System.out.println("文件序列化失敗!");

System.exit(1);

}

//將序列化文件轉換成向量文件

try {

Configuration conf = new Configuration();

conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));

String input = WORK_DIR+Path.SEPARATOR+"tennis-test-seq";

String output = WORK_DIR+Path.SEPARATOR+"tennis-test-vectors";

Path in = new Path(input);

Path out = new Path(output);

FileSystem fs = FileSystem.get(conf);

if(fs.exists(in)){

if(fs.exists(out)){

//boolean參數(shù)是,是否遞歸刪除的意思

fs.delete(out, true);

}

SparseVectorsFromSequenceFiles svfsf = new SparseVectorsFromSequenceFiles();

String[] params = new String[]{"-i",input,"-o",output,"-lnorm","-nv","-wt","tfidf"};

ToolRunner.run(svfsf, params);

}

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

System.out.println("序列化文件轉換成向量失敗!");

System.out.println(2);

}

}

public static void makeTrainVector(){

//將測試數(shù)據(jù)轉換成序列化文件

try {

Configuration conf = new Configuration();

conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));

String input = WORK_DIR+Path.SEPARATOR+"input";

String output = WORK_DIR+Path.SEPARATOR+"tennis-seq";

Path in = new Path(input);

Path out = new Path(output);

FileSystem fs = FileSystem.get(conf);

if(fs.exists(in)){

if(fs.exists(out)){

//boolean參數(shù)是,是否遞歸刪除的意思

fs.delete(out, true);

}

SequenceFilesFromDirectory sffd = new SequenceFilesFromDirectory();

String[] params = new String[]{"-i",input,"-o",output,"-ow"};

ToolRunner.run(sffd, params);

}

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

System.out.println("文件序列化失?。?#34;);

System.exit(1);

}

//將序列化文件轉換成向量文件

try {

Configuration conf = new Configuration();

conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));

String input = WORK_DIR+Path.SEPARATOR+"tennis-seq";

String output = WORK_DIR+Path.SEPARATOR+"tennis-vectors";

Path in = new Path(input);

Path out = new Path(output);

FileSystem fs = FileSystem.get(conf);

if(fs.exists(in)){

if(fs.exists(out)){

//boolean參數(shù)是,是否遞歸刪除的意思

fs.delete(out, true);

}

SparseVectorsFromSequenceFiles svfsf = new SparseVectorsFromSequenceFiles();

String[] params = new String[]{"-i",input,"-o",output,"-lnorm","-nv","-wt","tfidf"};

ToolRunner.run(svfsf, params);

}

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

System.out.println("序列化文件轉換成向量失??!");

System.out.println(2);

}

}

public static void makeModel(boolean completelyNB){

try {

Configuration conf = new Configuration();

conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));

String input = WORK_DIR+Path.SEPARATOR+"tennis-vectors"+Path.SEPARATOR+"tfidf-vectors";

String model = WORK_DIR+Path.SEPARATOR+"model";

String labelindex = WORK_DIR+Path.SEPARATOR+"labelindex";

Path in = new Path(input);

Path out = new Path(model);

Path label = new Path(labelindex);

FileSystem fs = FileSystem.get(conf);

if(fs.exists(in)){

if(fs.exists(out)){

//boolean參數(shù)是,是否遞歸刪除的意思

fs.delete(out, true);

}

if(fs.exists(label)){

//boolean參數(shù)是,是否遞歸刪除的意思

fs.delete(label, true);

}

TrainNaiveBayesJob tnbj = new TrainNaiveBayesJob();

String[] params =null;

if(completelyNB){

params = new String[]{"-i",input,"-el","-o",model,"-li",labelindex,"-ow","-c"};

}else{

params = new String[]{"-i",input,"-el","-o",model,"-li",labelindex,"-ow"};

}

ToolRunner.run(tnbj, params);

}

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

System.out.println("生成訓練模型失敗!");

System.exit(3);

}

}

}

package myTesting.bayes;

import java.io.IOException;

import java.util.HashMap;

import java.util.Map;

import org.apache.commons.lang.StringUtils;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.fs.Path;

import org.apache.hadoop.fs.PathFilter;

import org.apache.hadoop.io.IntWritable;

import org.apache.hadoop.io.LongWritable;

import org.apache.hadoop.io.Text;

import org.apache.mahout.classifier.naivebayes.BayesUtils;

import org.apache.mahout.classifier.naivebayes.NaiveBayesModel;

import org.apache.mahout.classifier.naivebayes.StandardNaiveBayesClassifier;

import org.apache.mahout.common.Pair;

import org.apache.mahout.common.iterator.sequencefile.PathType;

import org.apache.mahout.common.iterator.sequencefile.SequenceFileDirIterable;

import org.apache.mahout.math.RandomAccessSparseVector;

import org.apache.mahout.math.Vector;

import org.apache.mahout.math.Vector.Element;

import org.apache.mahout.vectorizer.TFIDF;

import com.google.common.collect.ConcurrentHashMultiset;

import com.google.common.collect.Multiset;

public class BayesCheckData {

private static StandardNaiveBayesClassifier classifier;

private static Map<String, Integer> dictionary;

private static Map<Integer, Long> documentFrequency;

private static Map<Integer, String> labelIndex;

public void init(Configuration conf){

try {

String modelPath = "/zhoujianfeng/playtennis/model";

String dictionaryPath = "/zhoujianfeng/playtennis/tennis-vectors/dictionary.file-0";

String documentFrequencyPath = "/zhoujianfeng/playtennis/tennis-vectors/df-count";

String labelIndexPath = "/zhoujianfeng/playtennis/labelindex";

dictionary = readDictionnary(conf, new Path(dictionaryPath));

documentFrequency = readDocumentFrequency(conf, new Path(documentFrequencyPath));

labelIndex = BayesUtils.readLabelIndex(conf, new Path(labelIndexPath));

NaiveBayesModel model = NaiveBayesModel.materialize(new Path(modelPath), conf);

classifier = new StandardNaiveBayesClassifier(model);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

System.out.println("檢測數(shù)據(jù)構造成vectors初始化時報錯。。。。");

System.exit(4);

}

}

/**

* 加載字典文件,Key: TermValue; Value:TermID

* @param conf

* @param dictionnaryDir

* @return

*/

private static Map<String, Integer> readDictionnary(Configuration conf, Path dictionnaryDir) {

Map<String, Integer> dictionnary = new HashMap<String, Integer>();

PathFilter filter = new PathFilter() {

@Override

public boolean accept(Path path) {

String name = path.getName();

return name.startsWith("dictionary.file");

}

};

for (Pair<Text, IntWritable> pair : new SequenceFileDirIterable<Text, IntWritable>(dictionnaryDir, PathType.LIST, filter, conf)) {

dictionnary.put(pair.getFirst().toString(), pair.getSecond().get());

}

return dictionnary;

}

/**

* 加載df-count目錄下TermDoc頻率文件,Key: TermID; Value:DocFreq

* @param conf

* @param dictionnaryDir

* @return

*/

private static Map<Integer, Long> readDocumentFrequency(Configuration conf, Path documentFrequencyDir) {

Map<Integer, Long> documentFrequency = new HashMap<Integer, Long>();

PathFilter filter = new PathFilter() {

@Override

public boolean accept(Path path) {

return path.getName().startsWith("part-r");

}

};

for (Pair<IntWritable, LongWritable> pair : new SequenceFileDirIterable<IntWritable, LongWritable>(documentFrequencyDir, PathType.LIST, filter, conf)) {

documentFrequency.put(pair.getFirst().get(), pair.getSecond().get());

}

return documentFrequency;

}

public static String getCheckResult(){

Configuration conf = new Configuration();

conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));

String classify = "NaN";

BayesCheckData cdv = new BayesCheckData();

cdv.init(conf);

System.out.println("init done...............");

Vector vector = new RandomAccessSparseVector(10000);

TFIDF tfidf = new TFIDF();

//sunny,hot,high,weak

Multiset<String> words = ConcurrentHashMultiset.create();

words.add("sunny",1);

words.add("hot",1);

words.add("high",1);

words.add("weak",1);

int documentCount = documentFrequency.get(-1).intValue(); // key=-1時表示總文檔數(shù)

for (Multiset.Entry<String> entry : words.entrySet()) {

String word = entry.getElement();

int count = entry.getCount();

Integer wordId = dictionary.get(word); // 需要從dictionary.file-0文件(tf-vector)下得到wordID,

if (StringUtils.isEmpty(wordId.toString())){

continue;

}

if (documentFrequency.get(wordId) == null){

continue;

}

Long freq = documentFrequency.get(wordId);

double tfIdfValue = tfidf.calculate(count, freq.intValue(), 1, documentCount);

vector.setQuick(wordId, tfIdfValue);

}

// 利用貝葉斯算法開始分類,并提取得分最好的分類label

Vector resultVector = classifier.classifyFull(vector);

double bestScore = -Double.MAX_VALUE;

int bestCategoryId = -1;

for(Element element: resultVector.all()) {

int categoryId = element.index();

double score = element.get();

System.out.println("categoryId:"+categoryId+" score:"+score);

if (score > bestScore) {

bestScore = score;

bestCategoryId = categoryId;

}

}

classify = labelIndex.get(bestCategoryId)+"(categoryId="+bestCategoryId+")";

return classify;

}

public static void printResult(){

System.out.println("檢測所屬類別是:"+getCheckResult());

}

}

相關資訊
熱門頻道

Copyright © 2024 招聘街 滇ICP備2024020316號-38