1、敬业
具备敬业精神,敢做事,能做事,对于工作中存在的问题能够发现并解决,敢于承担,做事主动,具备敬业精神的人,迟早能够收获成功
2、换位思考能力
考虑问题的时候,能够出离狭隘的思维限制,自觉的站在公司的立场上去考虑解决问题的方案,当然,更好的做法是站在领导的角度来考虑问题,更优秀的职场人善于站在比自己高两级的角度来思考问题。
3、文编能力
在时代的今天,领导可没有那么多时间听你冗长的报告,你应当掌握最基本的文字编辑能力,满足异常的办公需求,这是基本能力。
4、逆向思维
脱离思维的桎梏,善于发现工作中的问题,对于难以解决的问题,能够从客观的角度出发,以逆向思维发现和解决工作中存在的问题。
5、使用工具
对于工作中需要使用到的办公工具,请熟练掌握,一些高效办公工具,譬如思维导图、office系列、Photoshop等工具的使用可以极大的提高办公效率。
6、信息搜集整理能力
任何行业都需要信息的交互,优秀员工应该养成信息收集整理的好习惯,譬如知识体系的管理,经验教训的积累,这都不是书上能够学习到的东西,都源于每一天的过程积累。
7、适应能力
从你入职开始,就应努力学会适应新的环境,适应能力无处不需要,优秀的员工就至少做好你升迁的准备,别到时候不适应~
8、解决问题的能力
遇到问题,可别总是指望领导帮助你解决问题,习惯于请示领导的员工不足以承担领导的委托,而优秀的员工要拿出的应该是不止一套解决方案。
9、总结能力
能干不如巧干,善于分析、总结、归纳,效率快人一步!
这次当选,对我是一种鼓励,更是一种鞭策。 回顾进入公司这几年,我有了很大的进步。 不想说些华丽的言语,只想说一声感谢。 感谢领导的厚爱和同事们的帮助!
荣誉至上,它集合了一个人的辛劳、智慧以及公众的认可和尊崇,肩负荣誉,我甚感荣幸与欣慰。 我虽渺小,但也知道自己的重要。
有幸获奖,我将化为企业的动力,更加把企业做大、做强,同时多承担一些社会责任。 在新的一年里,也祝愿公司的业绩蒸蒸日上,自己的工作能够做的更加优秀。
承蒙大家的厚爱,获得2009年度“优秀员工”,能够给与我这份殊荣,我感到很荣幸,心中除了喜悦,但更多的是感动,为了这种认可与接纳,觉得自己融入到了玺萌这个大家庭,自己的付出与表现已经被最大的认可,我会更加努力!
虽然我来公司时间不算太长,但这是我发自肺腑的语言,回想刚来的时候,种种感觉和情影,仍历历在目。正是一种家的温暖和同事的帮助与包容让我有机会踏入并留在了玺萌。
无论是在生活上还是工作中,都得到了领导的关心,让我觉得这里像个家,温暖而亲切。在工作环境中,总难免出错,在不烦原则性错误的时候,总能够得到领导的宽容,也从领导的眼神里可以读到,知错就改,就是好孩子,在不责备的同时,让人没有下次再犯同类错误的理由。
自2007年进公司至今,我并没有为公司做出了不起的贡献,也没有取得特别值得炫耀可喜的业绩,我只是尽量做好属于自己岗位上的工作,尽自己最大的努力尽力尽快地完成每一次任务,总结自己的经验,从经验中学习,向他人学习,尽量将自己的工作争取一次比一次做的更好,尽可能的提高工作效率,与同事相处和睦。虽然如此,但我的付出得到了公司俄认可,我深感无比荣幸,我想公司这次评优活动,也再次向每位员工传达说明了只要有付出,只要做好了属于你的那份工作,就会有回报的务实文化和平凡道理。因此,我认为,在玺萌,无论你是脚踏实地的做好了自己的工作,还是以优秀扎实的综合素质能力成为公司技术骨干,都是优秀的!
虽然被评为优秀员工,我深知,我做的不够的地方太多太多。有很多东西还需要我去学习,我会延续自己踏实肯干的优点的同时,加快脚步,虚心向老员工们学习各种工作技巧,做好每一项工作,这个荣誉会鞭策我不断进步。做的更好,我深信,一份耕耘,一份收获,从点点滴滴的工作中,我细心积累经验,使工作技能不断提高,为以后的工作奠定坚实的基础。让我们携手为玺萌的未来共同努力,使之成为中国最受尊敬的房地产企业集团!
最后,我祝大家工作顺心,身体健康!
1.人生的价值靠自己创造。
2、付出,不一定有回报;不付出,绝对没有回报。
3、要做就做最好,要争就争第一。
4、善待自己,善待生命。
5、人最好的投资就是努力工作。
6、只要努力,黑暗中也会有彩虹。
7、成功没有快捷方式,只有一步步地点击,才能达到理想的界面。
8、多一份努力,就会多一份收获。
9、辛勤的汗水与丰硕的成果同在。
10、珍惜现在所拥有的一切是为了不让自己在失去后才后悔。
11、为上道工序作质检员,为下道工序做服务员。
12、做一个积极主动、忠诚、敬业的员工。
13、将我的青春和热情注入一品皇牛的服务中,当我回首往昔的时候我也会感到自豪。
14、今天我们以一品皇牛为荣,明天一品皇牛以我们为荣。
15、不要被同一块石头绊倒两次。
16、时刻记住自己的责任,并以行动证明一切。
17、人生大多数时间是平淡,但要力求在平淡中创造激情。
18、甘于平凡的人是伟大的。
19、用心去做每件事,只有做了,你才不会后悔。
20、等待机会,不如创造机会。
21、人的一生至少应该像旗帜那样飘扬过,迎着风,美丽而崇高。
22、重视追求的过程,看淡其结果。
23、知足常乐,知不足长胜。
24、为自己定一个目标,不断地努力,就一定会有收获。
25、如果缺乏对事业的热爱,那么才华也是无用的。
26、尽我所能,追求完美。
27、只要付出努力,哪怕失败,也问心无愧。
28、不懈努力,一切尽有可能。
29、善于认识自我,敢于否定自我,勇于超越自我。
30、永不言败,踏实肯干。
31、现在的辛苦,必将换来未来的幸福。
32、明天是无数个今天组成,只有把握住今天才能拥有更美好的明天。
33、努力不一定成功,但成功绝不属于那些袖手旁观、随波逐流的人。
34、只有不断地努力和奉献,才能够达到光辉的顶点。
35、人生应如雄鹰一样,飞得高,望得远,发现目标,就敏锐地去追寻。
36、人生在于拼搏,成功在于努力。
37、得意不忘形,失意不失态。
38、智者用教训避免事故,愚者用事故换取教训。
39、人生的跑道像椭圆,既是起点也是终点。
40、完美的服务出自完美的细节。
41、摒弃借口,踏实做事。
42、能力有限,努力无限。
43、泥泞的路,才会留下脚印。
44、大胆地想,小心地干。
45、进取总结,总结进取,走好人生每一步。
46、追求细微,积沙成塔。
47、业绩是用心干出来的。
48、凡事欲其成功,必须付出努力。
49、工作越努力,幸福越靠近你。
50、英雄出自平凡。
51、现场就是战场。
52、迎接挑战,力求完美。
53、志存高远,脚踏实地。
54、只要思想不滑坡,办法总比困难多。
55、生活要精彩,工作要精细,质量要精雕,行动要精干。
56、少言空洞浮躁之辞,多行求真务实之举。
57、力求工作完美,寻求工作快乐。
58、诚信是成功的基础,责任是成功的动力,行动是成功的途径。
59、奋斗让我们与众不同。
60、快乐在工作和学习中产生。
1.在学习中获取真知,在工作中获取乐趣。
2、用心服务、用情服务、用智服务。
3、作有理想的人,做有意义的事。
4、有一分热,发一分光。
5、阳光下做人,风雨中做事。
6、要做事先做人,低调做人,高调做事。
7、勇于开始,才能找到成功的路。
8、欲想做好事,必先做好人。
9、展现自己价值最好的方法就是去创造!
优秀员工的格言如下:
1. 工作如同栽树,昨天是今天的种子,明天结今天的果子。
2. 与其说是别人让你痛苦,不如说自己的修养不够。
3. 树的方向由风定,人的方向自己决定,我的方向由我定。
4. 如果你还可以努力,可以付出,就不要轻言停止和放弃。
5. 在你成功之前,根本没有人知道你会有多大的成就。
该同志在工作中态度认真,积极向上,为人乐观,自我检讨能力较强,思想态度端正,发现本组员工有思想问题时,也能主动与其谈心进行疏导,在他的带领下,顺利完成了旺季时繁重的生产任务,在沟通和思想疏导方面有相当的经验,为部门员工队伍的稳定发挥了作用,促进了生产的有序进行。
有术无道,那么,止于术。放到一个人身上,就是一定要有道德,良心做事,否则,有术无道,能力再强,也不会有太大的成就;放到一件事上,道就是天道、自然规律,或者是战略,术就是指具体的技巧、战术,也就是说,要想成功,先要符合天道,规划战略,然后研究战术,若只讲究战术,结果可想而知!所谓的技无界,就是说技术是没有边界,我们要打破层层壁垒,突破种种限制,达到无边无界的状态,不断创新,让技术充满无限可能。
谢谢大家!
之前看了Mahout官方示例 20news 的调用实现;于是想根据示例的流程实现其他例子。网上看到了一个关于天气适不适合打羽毛球的例子。
训练数据:
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
检测数据:
sunny,hot,high,weak
结果:
Yes=》 0.007039
No=》 0.027418
于是使用Java代码调用Mahout的工具类实现分类。
基本思想:
1. 构造分类数据。
2. 使用Mahout工具类进行训练,得到训练模型。
3。将要检测数据转换成vector数据。
4. 分类器对vector数据进行分类。
接下来贴下我的代码实现=》
1. 构造分类数据:
在hdfs主要创建一个文件夹路径 /zhoujainfeng/playtennis/input 并将分类文件夹 no 和 yes 的数据传到hdfs上面。
数据文件格式,如D1文件内容: Sunny Hot High Weak
2. 使用Mahout工具类进行训练,得到训练模型。
3。将要检测数据转换成vector数据。
4. 分类器对vector数据进行分类。
这三步,代码我就一次全贴出来;主要是两个类 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) {
//将训练数据转换成 vector数据
makeTrainVector();
//产生训练模型
makeModel(false);
//测试检测数据
BayesCheckData.printResult();
}
public static void makeCheckVector(){
//将测试数据转换成序列化文件
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参数是,是否递归删除的意思
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参数是,是否递归删除的意思
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(){
//将测试数据转换成序列化文件
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参数是,是否递归删除的意思
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参数是,是否递归删除的意思
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参数是,是否递归删除的意思
fs.delete(out, true);
}
if(fs.exists(label)){
//boolean参数是,是否递归删除的意思
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("检测数据构造成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时表示总文档数
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());
}
}
1. 请介绍一下WebGIS的概念和作用,以及在实际应用中的优势和挑战。
WebGIS是一种基于Web技术的地理信息系统,通过将地理数据和功能以可视化的方式呈现在Web浏览器中,实现地理空间数据的共享和分析。它可以用于地图浏览、空间查询、地理分析等多种应用场景。WebGIS的优势包括易于访问、跨平台、实时更新、可定制性强等,但也面临着数据安全性、性能优化、用户体验等挑战。
2. 请谈谈您在WebGIS开发方面的经验和技能。
我在WebGIS开发方面有丰富的经验和技能。我熟悉常用的WebGIS开发框架和工具,如ArcGIS API for JavaScript、Leaflet、OpenLayers等。我能够使用HTML、CSS和JavaScript等前端技术进行地图展示和交互设计,并能够使用后端技术如Python、Java等进行地理数据处理和分析。我还具备数据库管理和地理空间数据建模的能力,能够设计和优化WebGIS系统的架构。
3. 请描述一下您在以往项目中使用WebGIS解决的具体问题和取得的成果。
在以往的项目中,我使用WebGIS解决了许多具体问题并取得了显著的成果。例如,在一次城市规划项目中,我开发了一个基于WebGIS的交通流量分析系统,帮助规划师们评估不同交通方案的效果。另外,在一次环境监测项目中,我使用WebGIS技术实现了实时的空气质量监测和预警系统,提供了准确的空气质量数据和可视化的分析结果,帮助政府和公众做出相应的决策。
4. 请谈谈您对WebGIS未来发展的看法和期望。
我认为WebGIS在未来会继续发展壮大。随着云计算、大数据和人工智能等技术的不断进步,WebGIS将能够处理更大规模的地理数据、提供更丰富的地理分析功能,并与其他领域的技术进行深度融合。我期望未来的WebGIS能够更加智能化、个性化,为用户提供更好的地理信息服务,助力各行各业的决策和发展。
显示全部
收起