公路管理局。
公路局歸屬交通運(yùn)輸局管理,主要是負(fù)責(zé)干線公路(國、省道路)的養(yǎng)護(hù)管理工作。
公路局是交通運(yùn)輸部門的二級局。交通運(yùn)輸部設(shè)有公路局,負(fù)責(zé)公路建設(shè)市場監(jiān)管工作,擬訂公路建設(shè)、維護(hù)、路政、運(yùn)營相關(guān)政策、制度和技術(shù)標(biāo)準(zhǔn)并監(jiān)督實(shí)施。
1、 認(rèn)真貫徹執(zhí)行黨和國家關(guān)于公路建設(shè)、養(yǎng)護(hù)、管理工作的方針、政策、法令,參與制定我省公路工作政策、法規(guī)、實(shí)施意見、辦法、措施。
2、 參與編制公路發(fā)展規(guī)劃、中長期計(jì)劃和年度計(jì)劃,指導(dǎo)建設(shè)項(xiàng)目可行性研究編報(bào)工作,負(fù)責(zé)公路系統(tǒng)統(tǒng)計(jì)、交通量調(diào)查工作,公路行業(yè)統(tǒng)計(jì)預(yù)測和信息引導(dǎo)工作。
3、 負(fù)責(zé)全省一般新建、改建、改善公路工程設(shè)計(jì)、預(yù)算審批、日常施工管理工作。受廳委托,參與或負(fù)責(zé)一般工程的招投標(biāo)、工程質(zhì)量監(jiān)督、驗(yàn)收工作。
4、 負(fù)責(zé)抓好全省(除高速公路以外)公路通行費(fèi)征收、使用、管理工作,嚴(yán)格收支兩條線、??顚S谩⒋_保還貸。
5、 負(fù)責(zé)編報(bào)全省以工代賑計(jì)劃,負(fù)責(zé)編制縣鄉(xiāng)道路規(guī)劃及年度計(jì)劃、負(fù)責(zé)項(xiàng)目的設(shè)計(jì)、審批、行業(yè)管理工作,加快縣鄉(xiāng)公路建設(shè)步伐。
6、 負(fù)責(zé)全省公路系統(tǒng)通信網(wǎng)工作。
7、 負(fù)責(zé)全省一般公路工程、養(yǎng)護(hù)質(zhì)量監(jiān)督、檢測工作,配合廳檢測部門搞好全省公路檢測實(shí)施網(wǎng)建設(shè)和公路部門三級試驗(yàn)檢測管理工作。
8、 負(fù)責(zé)全省公路綠化和路政管理工作,維護(hù)路產(chǎn)、路權(quán)。
9 、組織公路系統(tǒng)安排科研計(jì)劃項(xiàng)目及項(xiàng)目實(shí)施過程中的協(xié)調(diào)工作,配合省廳做好科研項(xiàng)目管理、推廣應(yīng)用新技術(shù)、新工藝、新材料、新設(shè)備、加快科研成果轉(zhuǎn)化為生產(chǎn)力步伐。
10、負(fù)責(zé)全省公路部門的財(cái)務(wù)管理和財(cái)務(wù)審計(jì)工作,嚴(yán)格財(cái)經(jīng)紀(jì)律,提高投資效益。
11、負(fù)責(zé)全省公路系統(tǒng)職工教育、各類專業(yè)技術(shù)人員培訓(xùn)及局屬單位領(lǐng)導(dǎo)班子建設(shè),干部職工的管理工作。
12、負(fù)責(zé)全省路用設(shè)備材料、物資管理、制定施工現(xiàn)場物資管理辦法,儲存、管理戰(zhàn)略鋼材。
13、負(fù)責(zé)編報(bào)公路統(tǒng)計(jì)報(bào)表,定期公布公路養(yǎng)護(hù)、工程施工,通行費(fèi)征收等計(jì)劃完成情況,向上報(bào)機(jī)關(guān)和有關(guān)部門提供及時(shí)、準(zhǔn)確的統(tǒng)計(jì)數(shù)字和分析報(bào)告。
14、指導(dǎo)公路部門精神文明建設(shè)和職工隊(duì)伍建設(shè),加強(qiáng)思想政治工作,開展各項(xiàng)社會主義勞動競賽,增強(qiáng)職工凝聚力、向心力。
俺就是公路局的。
我沒有任何關(guān)系,大學(xué)畢業(yè)之后,通過市直事業(yè)單位考試錄用的,完全憑借自身實(shí)力加運(yùn)氣。必須承認(rèn)這種考試有運(yùn)氣成分在里邊。有時(shí)候運(yùn)氣不好,并不一定都是別人有關(guān)系。某些人沒考之前就抱怨考試不公平,既然不公平那就不用去考了,不然又成了你考不上的借口了。既然報(bào)名了,就把它當(dāng)做完全公平,去奮斗吧!誠然,我們的社會存在相當(dāng)多的不公,但比如公務(wù)員、事業(yè)單位考試也一點(diǎn)點(diǎn)在公平,老是抱怨是不起任何作用的!希望你能如愿進(jìn)入公路局!一、負(fù)責(zé)管理局人事勞資、勞動保護(hù)、社會保障、離退休職工管理等方面的工作。
二、負(fù)責(zé)本科室職責(zé)內(nèi)各項(xiàng)管理制度的建立、修訂、完善;科室工作任務(wù)的安排下達(dá);科室人員的教育、管理、監(jiān)督、考核等各項(xiàng)工作。
三、負(fù)責(zé)職工調(diào)配、獎懲、退休等管理工作,督促并審理職工傷、殘、病、休、死亡之后有關(guān)政策待遇的執(zhí)行標(biāo)準(zhǔn)。
四、負(fù)責(zé)職工教育、培訓(xùn)、考核及職稱申報(bào)、評聘等工作。
五、督促并審核職工調(diào)標(biāo)晉級及增加離退休費(fèi)等工作
六、負(fù)責(zé)審核勞動工資統(tǒng)計(jì)月、季、年報(bào)表及干部人事年報(bào)。
七、深入基層調(diào)查研究,不斷探索人力資源及工資分配和績效考核的新思路、新方式,為領(lǐng)導(dǎo)決策提供信息。
八、做好局人事勞資、勞動保護(hù)、社會保障、離退休職工管理等方面的來信來訪接待、受理、交辦等工作。
九、負(fù)責(zé)離退休職工的思想建設(shè)和管理等工作。
十、及時(shí)向領(lǐng)導(dǎo)匯報(bào)工作,并按時(shí)辦理領(lǐng)導(dǎo)交辦的其它事項(xiàng)。
公路局改制不會有太大的變化,我就是縣公路分局的。一般改革的方向是向二個(gè)方向,一個(gè)是路政部門會向行政執(zhí)法單位靠,一個(gè)是養(yǎng)護(hù)會走向市場化。但不管怎樣改,都不會差,畢竟公路是基礎(chǔ)設(shè)施行業(yè),每天都與老百姓打交道。至于編制,倒是不要去太在意了,只要效益好,什么編制都一個(gè)樣。
挺好的
收入可以,但是很累。公路局是交通運(yùn)輸部門的二級局。交通運(yùn)輸部設(shè)有公路局,負(fù)責(zé)公路建設(shè)市場監(jiān)管工作,擬訂公路建設(shè)、維護(hù)、路政、運(yùn)營相關(guān)政策、制度和技術(shù)標(biāo)準(zhǔn)并監(jiān)督實(shí)施。主要負(fù)責(zé)國家公路網(wǎng)運(yùn)行監(jiān)測和應(yīng)急處置協(xié)調(diào)工作;負(fù)責(zé)國家重點(diǎn)公路工程設(shè)計(jì)審批、施工許可、實(shí)施監(jiān)督和竣工驗(yàn)收工作;負(fù)責(zé)公路標(biāo)志標(biāo)線管理工作;負(fù)責(zé)指導(dǎo)農(nóng)村公路建設(shè)工作;負(fù)責(zé)起草公路有關(guān)規(guī)費(fèi)政策并監(jiān)督實(shí)施。
公路局的工作是很有前途的,我們知道公路局其實(shí)是一個(gè)非常重要的部門,他們管理著城市的各條道路我們都知道綠的好嗨取決于交通的暢通與否,取決于交通的安全快速暢通并且還有一些行車部門也是歸公路局管的你比方說,像現(xiàn)在的駕校都劃歸了公路局管所以說,公路局把工作做好了,對城市,對國家都是有很大的貢獻(xiàn)的,所以公路局的工作是很有前途的
講述了在一個(gè)原本百無聊賴的平凡夏天,一群企鵝憑空出現(xiàn)在遠(yuǎn)離大海的小鎮(zhèn)之上。在目睹了牙醫(yī)大姐姐所投擲的可樂罐變成企鵝之后,有著強(qiáng)烈好奇心的小少年青山同學(xué)決心一探究竟,并展開了一場不可思議而令人難忘的夏季冒險(xiǎn)。
市公路局為我市專養(yǎng)公路的行政管理部門,隸屬市交通局,副處級事業(yè)單位。下設(shè)10個(gè)內(nèi)設(shè)機(jī)構(gòu),1個(gè)路政分局,7個(gè)直屬單位,為正科級建制。
之前看了Mahout官方示例 20news 的調(diào)用實(shí)現(xiàn);于是想根據(jù)示例的流程實(shí)現(xiàn)其他例子。網(wǎng)上看到了一個(gè)關(guān)于天氣適不適合打羽毛球的例子。
訓(xù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
結(jié)果:
Yes=》 0.007039
No=》 0.027418
于是使用Java代碼調(diào)用Mahout的工具類實(shí)現(xiàn)分類。
基本思想:
1. 構(gòu)造分類數(shù)據(jù)。
2. 使用Mahout工具類進(jìn)行訓(xùn)練,得到訓(xùn)練模型。
3。將要檢測數(shù)據(jù)轉(zhuǎn)換成vector數(shù)據(jù)。
4. 分類器對vector數(shù)據(jù)進(jìn)行分類。
接下來貼下我的代碼實(shí)現(xiàn)=》
1. 構(gòu)造分類數(shù)據(jù):
在hdfs主要創(chuàng)建一個(gè)文件夾路徑 /zhoujainfeng/playtennis/input 并將分類文件夾 no 和 yes 的數(shù)據(jù)傳到hdfs上面。
數(shù)據(jù)文件格式,如D1文件內(nèi)容: Sunny Hot High Weak
2. 使用Mahout工具類進(jìn)行訓(xùn)練,得到訓(xùn)練模型。
3。將要檢測數(shù)據(jù)轉(zhuǎn)換成vector數(shù)據(jù)。
4. 分類器對vector數(shù)據(jù)進(jìn)行分類。
這三步,代碼我就一次全貼出來;主要是兩個(gè)類 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) {
//將訓(xùn)練數(shù)據(jù)轉(zhuǎn)換成 vector數(shù)據(jù)
makeTrainVector();
//產(chǎn)生訓(xùn)練模型
makeModel(false);
//測試檢測數(shù)據(jù)
BayesCheckData.printResult();
}
public static void makeCheckVector(){
//將測試數(shù)據(jù)轉(zhuǎn)換成序列化文件
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);
}
//將序列化文件轉(zhuǎn)換成向量文件
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("序列化文件轉(zhuǎn)換成向量失敗!");
System.out.println(2);
}
}
public static void makeTrainVector(){
//將測試數(shù)據(jù)轉(zhuǎn)換成序列化文件
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);
}
//將序列化文件轉(zhuǎn)換成向量文件
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("序列化文件轉(zhuǎn)換成向量失敗!");
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("生成訓(xùn)練模型失?。?#34;);
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ù)構(gòu)造成vectors初始化時(shí)報(bào)錯。。。。");
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í)表示總文檔數(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());
}
}