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

建設局和城鄉(xiāng)建設局什么關系?

時間:2024-08-12 04:21 人氣:0 編輯:招聘街

一、建設局和城鄉(xiāng)建設局什么關系?

城市建委與建設局實際上就是承擔同樣的管理職能、屬于同一類性質的一個政府機構,只不過是由于所在地方的級別不同,導致機構的名稱不一樣而已。城市建委的全稱為住房和城鄉(xiāng)建設委員會,規(guī)范簡稱是叫做“住建委”,一般設在副省級市和地級市,是所在地方市政府的工作部門之一,而建設局的全稱為住房和城鄉(xiāng)建設局,規(guī)范簡稱是叫做“住建局”,一般設在縣、縣級市、副省級市和地級市的市轄區(qū),是所在縣(市、區(qū))政府的工作部門之一。城市建委(住建委)與建設局(住建局)都是負責當?shù)亟ㄔO行政與房地產業(yè)管理的工作部門,主要職責包括:(一)貫徹執(zhí)行國家關于建設事業(yè)的法律法規(guī)和方針政策;研究制定工程建設、城市建設、建筑業(yè)、房地產業(yè)、市政公用事業(yè)和建筑工程勘察的發(fā)展規(guī)劃和相關的產業(yè)政策,并組織實施。(二)指導監(jiān)督有關工程設計、施工的招投標活動,指導與規(guī)范設計市場、建筑市場;負責工程勘察設計和建筑安裝的行業(yè)管理和資質管理;管理工程質量監(jiān)督和監(jiān)理工作;負責建設工程竣工驗收備案、工程造價管理、質量等級核定及工程咨詢工作;指導建設工程安全生產,組織或會同有關部門查處建設工程重大事故。(三)負責編制并組織實施中心城區(qū)市政公用設施建設和維護規(guī)劃;指導管理全市供水、供氣、市政設施、園林綠化工作;綜合管理城市給水排水、燈光夜景、路燈設施。(四)負責房地產行業(yè)管理,規(guī)范房地產市場;組織開展城市配套建設綜合驗收工作;負責住宅區(qū)物業(yè)管理;管理房產轉讓、抵押和租賃工作。(五)制定實施行業(yè)科技發(fā)展規(guī)劃、人才培養(yǎng)規(guī)劃;推廣應用新技術、新工藝和新材料;管理建設行業(yè)的對外經濟技術合作工作,指導企業(yè)開拓國內外建筑市場和房地產市場。(六)管理全市工業(yè)與民用建筑的抗震和人防工程建設工作;指導全市建制鎮(zhèn)、集鎮(zhèn)、村莊的建設工作;負責城市建設和工程建設的檔案管理。

二、如何順利通過建設局考試?成功攻克建設局考試的關鍵

建設局考試是對報考者在建筑領域相關知識與能力的考察,對于想要進入建筑行業(yè)發(fā)展的人來說是一個重要的里程碑。通過建設局考試,不僅可以獲得相關專業(yè)資質證書,還可以拓寬個人發(fā)展的道路。

1. 了解考試要求

在開始備考之前,首先要了解建設局考試的要求和內容。建設局考試通常分為筆試和面試兩部分,筆試考察報考者對建筑法律法規(guī)、施工管理、工程質量控制等方面的理論知識,而面試則對報考者的實際操作能力和經驗進行評估。

2. 制定復習計劃

根據(jù)考試的時間和內容,合理制定復習計劃是成功備考的關鍵。將整個復習過程劃分為若干個階段,每個階段都制定明確的學習目標和計劃,逐步推進復習進度。同時,合理安排時間,將每天的學習時間分解為若干個小段,以保持精力集中。

3. 合理選擇學習資源

在備考過程中,選擇適合自己的學習資源非常重要。可以通過參加培訓班、購買教材、參考歷年真題等方式獲取學習材料。此外,互聯(lián)網上也有很多建設局考試的相關資料和經驗分享,可以借鑒他人的學習方法和心得體會。

4. 小組學習和討論

與他人一起學習和討論是相互促進進步的好方式??梢越M建一個備考小組,與其他志同道合的考生一起交流學習心得、解答疑惑。在小組學習中,相互督促和鼓勵,可以更好地保持學習動力和效率。

5. 制定題目練習計劃

通過大量的題目練習,可以幫助熟悉考試格式和題型,并且鞏固知識點。可以根據(jù)每個階段的學習進度,制定相應的題目練習計劃。并且,要有意識地分析每個題目的解題思路和方法,找出自己的不足之處,以便提高解題能力。

6. 注意健康和心理調節(jié)

備考期間,要注意保持身體健康和心理平衡。合理安排休息時間,避免過度疲勞。多參加一些放松身心的活動,如散步、運動、聚會等,以緩解學習的壓力和緊張情緒。

無論是考取建設局相關證書,還是提升自己在建筑領域的競爭力,建設局考試都是一項重要的機會和挑???。通過科學合理的備考策略,以及積極認真的學習態(tài)度,我們一定能夠成功攻克建設局考試,實現(xiàn)自己的目標。

感謝您閱讀本文,希望通過這篇文章能夠為您提供有關建設局考試的正式和實用信息,幫助您順利通過考試,順利進入建筑行業(yè)發(fā)展。祝您考試順利!

三、建設局幾點下班?

由于所處地方不同,各個地方的住建局上班時間都有不同。有的市、區(qū)(縣)住建局按照當?shù)貦C關單位上班作息時間要求,一般與當?shù)氐臋C關單位作息一致,基本都是上午八點半或九點上班,中午十二點下班,下午六點下班;也有的住建局全年都是下午九點上班,下午六點下班。

四、建設局管轄范圍?

建設局一般管理范圍為:城市規(guī)劃、城市管理、公用事業(yè)、園林綠化、房地產、建筑業(yè)等。國、省道上的行道樹一般屬交通、公路部門管理;城市(鎮(zhèn))街道上的行道樹屬于建設局管理。

五、建設局單位好嗎?

建設局單位作為一個政府部門,在推動城市建設、規(guī)劃和安全等方面扮演著重要的角色。其優(yōu)點在于穩(wěn)定的職業(yè)發(fā)展路徑、相對固定的工作時間和穩(wěn)定的薪資待遇等。

并且,建設局單位的崗位較為穩(wěn)定,工作內容也與城市規(guī)劃、建設、環(huán)保等緊密相關,具有一定的社會意義。

缺點則是工作比較繁瑣、規(guī)矩多而繁、內部升遷機制不完善等,需要具備一定的耐心和毅力。總體而言,建設局單位作為一個穩(wěn)定的職業(yè)選擇,適合對事業(yè)穩(wěn)定性和社會責任感有較高要求的人群。

六、建設局歸誰管?

建設局屬縣直單位,人事財政都歸縣政府管理。市建設局是市政府管理。

  建設局:縣(或設區(qū))一級主管建設行業(yè)的行政部門。建設局與住建局是一個概念,只是稱呼不同而已,決定于當?shù)卣庌k的機構命名。

  主要職能

 ?。ㄒ唬┴瀼貓?zhí)行國家和省關于建設事業(yè)的方針、政策和法律、法規(guī);研究擬定全市城市規(guī)劃、村鎮(zhèn)規(guī)劃、工程建設、城市建設、村鎮(zhèn)建設、建筑業(yè)、住宅與房地產業(yè)、勘察設計咨詢業(yè)、市政公用事業(yè)的政策、規(guī)章實施辦法以及相關的發(fā)展戰(zhàn)略、中長期規(guī)劃、改革方案,并指導實施,進行行業(yè)管理;指導全市建設行業(yè)行政監(jiān)察工作。

 ?。ǘ┲笇谐鞘幸?guī)劃、村鎮(zhèn)規(guī)劃、城市勘察和市政工程測量工作;研究擬定加快全市城鎮(zhèn)化進程的發(fā)展戰(zhàn)略;指導全市城市規(guī)劃、村鎮(zhèn)規(guī)劃的編制與實施;負責城市總體規(guī)劃的審查和市域城鎮(zhèn)體系的編制、報批工作;參與市土地利用總體規(guī)劃的審查;承擔對歷史文化名城相關的審查、報批和保護監(jiān)督工作;參與重點建設項目的選址,核發(fā)建設項目選址意見書;負責市區(qū)建設項目選址意見書、建設項目用地許可證及建設項目規(guī)劃許可證的核發(fā)工作;指導全市城市建設檔案管理工作。

 ?。ㄈ┚C合管理全市建筑活動;規(guī)范建筑市場;指導和監(jiān)督建筑市場準入、工程招標投標、工程監(jiān)理、工程質量與安全;擬定勘察設計、施工、建設監(jiān)理和相關社會中介組織管理法規(guī)實施辦法并監(jiān)督實施;管理全市裝飾(含室內裝飾)行業(yè);組織協(xié)調建設企業(yè)參與市外工程承包的建筑勞務合作;負責核發(fā)市城市規(guī)劃區(qū)建設項目施工許可證。

 ?。ㄋ模┲笇谐鞘薪ㄔO和村鎮(zhèn)建設工作;指導全市城市供水、燃氣、市政工程、城市照明、城市廣告及設施、城市公共客運、園林、市容環(huán)境衛(wèi)生、城建監(jiān)察工作以及城鎮(zhèn)規(guī)劃區(qū)的綠化工作;負責全市名勝區(qū)及其規(guī)劃的審查報批和保護監(jiān)督工作;負責市城市規(guī)劃區(qū)供水、燃氣、市政工程及設施、公共客運、園林、城建監(jiān)察工作。

 ?。ㄎ澹┲笇凶≌ㄔO和城鎮(zhèn)住房制度改革工作,負責全市房地產業(yè)行業(yè)管理;規(guī)范房地產市場;管理房產總量;指導城鎮(zhèn)土地使用權有償轉讓和開發(fā)利用工作;負責市城鎮(zhèn)住房制度改革實施方案和各項配套政策的擬定并監(jiān)督實施;指導住房公積金及其他房改資金的歸集、使用、管理;負責市城市規(guī)劃區(qū)范圍的房地產發(fā)證、交易等工作;指導全市城市房屋拆遷管理工作。

 ?。┴撠熑薪ㄔO工程的勘察、設計、咨詢行業(yè)管理,規(guī)范建設工程勘察、設計、咨詢市場;指導建筑智能化工作;監(jiān)督管理城鎮(zhèn)及工業(yè)與民用建筑的抗震設計,規(guī)范實施抗震設計和施工;指導城市地下空間的開發(fā)利用;負責一切工業(yè)建筑、民用建筑的工程造價、工程定額和費用標準管理。

 ?。ㄆ撸┲贫ㄈ薪ㄔO行業(yè)科技發(fā)展規(guī)劃和技術經濟政策;組織重大科研項目攻關和新技術、新產品的引進,制定行業(yè)教育發(fā)展規(guī)劃,指導行業(yè)教育培訓工作;負責建設行業(yè)執(zhí)業(yè)資格管理。

  (八)管理全市建設行業(yè)對外經濟技術合作;指導建設企業(yè)開拓省外、國(境)外建筑市場和房地產市場。

 ?。ň牛┴撠熅謾C關和下屬單位的人事管理、勞動工資、機構編制管理工作;負責局機關和下屬單位的黨群、紀律檢查工作及工、青、婦、老干部工作。

 ?。ㄊ┏修k市政府交辦的其他事項。

七、怎么進建設局?

一考二調。 一考:去建設局,局機關是公務員編制,現(xiàn)在取消里面的事業(yè)的編制,建設局下屬單位是事業(yè)編制,但還管什么編制進去都要考。 二調:考入別的單位,然后找到門路,調入建設局。 如果你有門路,不去考公務員。可以先考個三支一扶(較容易),二年后,再調入建設局下屬事業(yè)單位?;驁螽?shù)鼗鶎庸珓諉T,可以加分,錄取后,再調入建設局,此時是行政編制。

八、建設局幾點上班?

建設局屬于機關單位。是國家公務員性質。由法定的上班時間。一般是。周一到周五工作日。是上午8:30上班,下午17:30下班。周六、周日和國家的法定節(jié)假日都會休息,不安排上班。如果需要去建設局辦事的話,那就是周一到周五工作日時間的上述時間段。

九、建設局招聘條件?

1.前來應聘的人員必須要有中華人民共和國的國籍,必須要擁護中國共產黨的領導,必須要遵守我國相關的法律,不能違法亂紀,要有良好的道德品質,要擁有責任感和工作的熱情,必須要一心一意為老百姓辦事,不能徇私舞弊,不能索取賄賂。

2.具備良好的品行和符合工作要求的能力,擁有與工作崗位相匹配的工作技能等其他資格條件,因為建設局的工作是指導全市建設行業(yè)的行政監(jiān)察工作,然后根據(jù)相應的規(guī)定來修改和完善關于城市規(guī)劃,村鎮(zhèn)規(guī)劃,工程建設,城市建設,村鎮(zhèn)建設等等關于建設的發(fā)展戰(zhàn)略和改革方案。

3.應聘者要具備正常履行工作職責所需要的文化程度和身體條件,有一個好的身體才能好的工作,如果沒有良好的身體狀況和身體條件,不能進行高效率地完成工作,所以要有良好的身體條件,工作時要用到很多知識,不同的文化程度有著不同的工作能力,要具備一定關于工作的文化知識。

十、mahout面試題?

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

訓練數(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("文件序列化失??!");

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("序列化文件轉換成向量失?。?#34;);

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