国内精品久久久久_亚洲区手机在线中文无码播放_国内精品久久久久影院一蜜桃_日韩内射激情视频在线播放免费

      肅寧縣簡介?

      時(shí)間:2025-05-30 14:43 人氣:0 編輯:招聘街

      一、肅寧縣簡介?

      肅寧縣,隸屬于河北省滄州市,位于河北省中部,滄州市最西端,總面積515平方公里,總?cè)丝?44728人(2011年),1下轄6個(gè)鎮(zhèn)、3個(gè)鄉(xiāng),6個(gè)社區(qū)、253個(gè)村。肅寧縣歷史悠久,原始社會(huì)已有先民在此繁衍生息,春秋時(shí)期燕國置武垣縣,隋朝改為河間縣,金代置肅寧縣。有鉤弋夫人、劉完素、魏忠賢、劉春霖、“畫眉張”等著名人物,文物古跡有武垣城遺址、烈士塔等。

      2肅寧縣地處海河沖積平原,主要種植小麥、玉米等農(nóng)作物,是國家級商品糧基地,是河北省核心區(qū)產(chǎn)糧大縣之一;

      3工業(yè)以毛皮加工、針紡服裝、食品加工、圖書印刷發(fā)行為主導(dǎo)產(chǎn)業(yè),42013年完成地區(qū)生產(chǎn)總值130.0978億元。

      5京九鐵路、朔黃鐵路在肅寧境內(nèi)交叉而過,肅寧北站是西煤東運(yùn)的重要鐵路樞紐。肅寧縣先后獲得省級園林縣城、國家級平安縣、“中國裘皮之都”等榮譽(yù)稱號。

      二、肅寧縣特產(chǎn)?

      1、肅寧裘皮

      2、肅寧西紅柿

      3、肅寧鴨梨

      4、肅寧野豬

      5、西紅柿

      6、肅寧窩北香腸

      7、萬里鎮(zhèn)蔬菜

      8、大紅梨

      9、肅寧韭菜

      10、滄州冬棗

      11、肅寧縣無公害水果

      12、杏梅

      13、鮮桃

      三、肅寧縣網(wǎng)頁設(shè)計(jì)

      肅寧縣網(wǎng)頁設(shè)計(jì)

      在當(dāng)今數(shù)字化時(shí)代,網(wǎng)頁設(shè)計(jì)已經(jīng)成為企業(yè)吸引客戶、增加銷售額的重要工具之一。肅寧縣作為一個(gè)日漸繁榮的地區(qū),網(wǎng)頁設(shè)計(jì)在當(dāng)?shù)仄髽I(yè)中扮演著至關(guān)重要的角色。本文將探討肅寧縣網(wǎng)頁設(shè)計(jì)的現(xiàn)狀、趨勢以及如何選擇合適的網(wǎng)頁設(shè)計(jì)公司。

      肅寧縣網(wǎng)頁設(shè)計(jì)的現(xiàn)狀

      目前,肅寧縣的許多企業(yè)已意識到了網(wǎng)頁設(shè)計(jì)的重要性,開始積極尋求優(yōu)質(zhì)的網(wǎng)頁設(shè)計(jì)服務(wù)。一些知名企業(yè)已經(jīng)通過精心設(shè)計(jì)的網(wǎng)站吸引了大量的客戶,提升了品牌形象和銷售額。

      然而,也有一些企業(yè)在網(wǎng)頁設(shè)計(jì)方面存在不足,網(wǎng)站界面過時(shí)、不易訪問、加載速度慢等問題影響了用戶體驗(yàn),進(jìn)而影響了企業(yè)形象和市場競爭力。

      肅寧縣網(wǎng)頁設(shè)計(jì)的趨勢

      隨著移動(dòng)互聯(lián)網(wǎng)的快速發(fā)展,響應(yīng)式網(wǎng)頁設(shè)計(jì)已成為一個(gè)不可或缺的趨勢。肅寧縣的網(wǎng)頁設(shè)計(jì)公司也開始注重設(shè)計(jì)兼容各種設(shè)備的網(wǎng)站,以提供更好的用戶體驗(yàn)。

      另外,隨著人工智能和大數(shù)據(jù)技術(shù)的應(yīng)用,個(gè)性化定制的網(wǎng)頁設(shè)計(jì)將成為未來的發(fā)展趨勢。企業(yè)需要根據(jù)用戶的偏好和行為習(xí)慣,設(shè)計(jì)出更具吸引力和互動(dòng)性的網(wǎng)站,從而提升用戶留存率和轉(zhuǎn)化率。

      如何選擇合適的肅寧縣網(wǎng)頁設(shè)計(jì)公司

      在選擇肅寧縣的網(wǎng)頁設(shè)計(jì)公司時(shí),企業(yè)需要考慮以下幾個(gè)關(guān)鍵因素:

      • 經(jīng)驗(yàn)和口碑:選擇有豐富經(jīng)驗(yàn)和良好口碑的網(wǎng)頁設(shè)計(jì)公司,可以確保項(xiàng)目順利進(jìn)行并獲得優(yōu)質(zhì)的設(shè)計(jì)服務(wù)。
      • 技術(shù)實(shí)力:要選擇掌握最新網(wǎng)頁設(shè)計(jì)技術(shù)的公司,才能設(shè)計(jì)出具有競爭力的網(wǎng)站。
      • 服務(wù)內(nèi)容:了解網(wǎng)頁設(shè)計(jì)公司提供的服務(wù)內(nèi)容是否符合企業(yè)的需求,包括網(wǎng)站建設(shè)、UI設(shè)計(jì)、SEO優(yōu)化等。
      • 溝通方式:溝通是項(xiàng)目成功的關(guān)鍵,選擇與企業(yè)溝通順暢、理解需求的設(shè)計(jì)公司至關(guān)重要。

      綜上所述,肅寧縣的網(wǎng)頁設(shè)計(jì)行業(yè)正面臨著巨大的發(fā)展機(jī)遇和挑戰(zhàn)。只有不斷學(xué)習(xí)和創(chuàng)新,才能立于市場競爭之中,為企業(yè)提供更優(yōu)質(zhì)的網(wǎng)頁設(shè)計(jì)服務(wù)。

      四、肅寧縣農(nóng)村電價(jià)?

      通常肅寧縣農(nóng)村電價(jià)與全國廣大農(nóng)村電價(jià)基本相同,也就是農(nóng)村的農(nóng)業(yè)用電電最低約為0、4元左右/每度,而農(nóng)村民用電價(jià)約為0、5元左右/每度等。

      五、肅寧縣老味海鮮燒烤

      肅寧縣老味海鮮燒烤:獨(dú)特的美食體驗(yàn)

      肅寧縣位于河北省,擁有豐富的自然資源和獨(dú)特的文化底蘊(yùn)。其中,老味海鮮燒烤成為該地的一張名片,吸引了許多游客前來品嘗。

      老味海鮮燒烤不僅以新鮮的海鮮為特色,還有獨(dú)特的燒烤方式和獨(dú)特的調(diào)味方法。在這里,游客們可以嘗到最地道的海鮮美食,感受到燒烤文化的魅力。

      新鮮的海鮮,口感鮮美

      老味海鮮燒烤以其新鮮的食材而聞名,這里的海鮮全都是當(dāng)天新捕撈的,保證了食材的新鮮和口感的絕佳。無論是魚、蝦、蟹,還是貝類,都能在這里找到最好的品質(zhì)。

      不同于傳統(tǒng)的燒烤,老味海鮮燒烤使用特制的燒烤爐,通過間接火源的方式將海鮮烤至完美。這種燒烤方式可以最大程度地保留海鮮的鮮嫩和汁水,使得每一口都散發(fā)著鮮美的香氣。

      獨(dú)特的燒烤方式,顛覆你的味蕾

      老味海鮮燒烤的燒烤方式頗具獨(dú)特之處。他們將海鮮放置在特制的烤盤上,再加上適量的調(diào)味料,輕輕翻烤,直至入味。

      獨(dú)特的調(diào)味料是老味海鮮燒烤的秘密。根據(jù)不同的海鮮種類,他們會(huì)選用不同的調(diào)味料來提升海鮮本身的鮮美。而這些調(diào)味料都是由他們精心配制而成,絕不重復(fù)。

      感受燒烤文化的魅力

      除了美食的誘惑,老味海鮮燒烤還能讓人感受到燒烤文化的魅力。

      這里的烤魚、烤蝦是當(dāng)?shù)厝俗钕矚g的燒烤食品之一。周末的時(shí)候,不論是老人還是年輕人都會(huì)來這里享受美食,感受到燒烤帶來的快樂。

      此外,老味海鮮燒烤還提供了現(xiàn)場烤制的服務(wù)。游客們可以親自動(dòng)手參與到烤制過程中,體驗(yàn)到獨(dú)特的燒烤樂趣。

      結(jié)語

      肅寧縣老味海鮮燒烤是一個(gè)獨(dú)特的美食品牌,以其新鮮的海鮮、獨(dú)特的燒烤方式和獨(dú)特的調(diào)味方法,吸引了眾多游客前來品嘗。

      如果你對美食有著執(zhí)著的追求,肅寧縣老味海鮮燒烤絕對不容錯(cuò)過。來到這里,你將會(huì)品嘗到最地道的海鮮美食,感受到燒烤文化的魅力。

      來一趟肅寧縣老味海鮮燒烤之旅,讓你的味蕾得到絕對的滿足!

      六、甘肅寧縣的特產(chǎn)?

      1、白蒜

      白蒜,是甘肅省寧縣的特產(chǎn),是中國國家地理標(biāo)志產(chǎn)品。

      2、蒜泥

      蒜泥是寧縣一道特色小吃,主要原料為大蒜,蒜泥有很高的營養(yǎng)價(jià)值,含有豐富的維生素。

      3、鹽蛋

      關(guān)于鹽蛋的由來,有兩種說法:一種說法是,西漢年間漢武帝派使臣從西域引入鹽,因食鹽供應(yīng)不上而導(dǎo)致鹽荒。武帝用重金從購買了鹽,但鹽運(yùn)到咸陽后卻發(fā)生了鹽荒。大臣們都很著急!漢武帝知道鹽荒是匈奴侵略漢朝的借口,便派使臣去匈奴請求支援。匈奴卻將使者打死了,使者的尸體也被匈奴人挖走了。漢武帝大怒,下令對使臣進(jìn)行嚴(yán)懲就是為了防止“鹽荒”現(xiàn)象再次發(fā)生。

      4、寧縣紅富士蘋果

      寧縣紅富士蘋果是甘肅省寧縣的特產(chǎn)。寧縣紅富士蘋果,果面光滑潔凈,色澤艷麗,果汁多,香氣濃郁。果型端正美觀,果肉白色細(xì)膩,肉質(zhì)細(xì)脆易削皮。果核極小。汁多味甜、微酸、芳香。營養(yǎng)豐富、富含多種維生素及微量元素,尤其是蘋果酸的含量為梨的2倍左右,有“天然維生素丸”的美稱。

      5、小碗面

      寧縣小碗面,是一種面食。因其獨(dú)特的吃法,讓人回味無窮;又因其簡單方便,被很多市民所喜愛。每逢節(jié)假日,去縣城買上幾碗小碗面帶回家,和家人一起分享這難得的美味。

      七、甘肅寧縣產(chǎn)茶嗎?

      甘肅寧縣不產(chǎn)茶。

      寧縣隸屬于甘肅省慶陽市,位于甘肅省東部,總土地面積2653.17平方公里,常住人口336316人。

      寧縣有十大特產(chǎn):慶陽白瓜子 、寧縣九龍金棗、寧縣曹杏、寧縣早勝牛、寧縣牛肉丸子、寧縣豬灌腸、寧縣黃花菜、寧縣大棗、寧縣涼皮、綠梨瓜。

      八、肅寧縣最好的酒店?

      感覺這幾家還不錯(cuò),價(jià)格建議去旅游網(wǎng)站查查對比一下。

      華陽大酒店

      澤城東路

      金恩大酒店

      新世紀(jì)廣場南側(cè)

      華源賓館

      緯南路...

      九、肅寧縣的特色美食, 了解肅寧縣的獨(dú)特飲食文化

      肅寧縣的特色美食介紹

      肅寧縣是河北省的一個(gè)縣級市,位于中國北方平原上,擁有豐富的農(nóng)田資源和獨(dú)特的地理環(huán)境,這里的特色美食吸引著眾多游客和美食愛好者。

      1. 肅寧水盆羊肉

      肅寧水盆羊肉是肅寧縣的傳統(tǒng)名菜之一。它選用當(dāng)?shù)貎?yōu)質(zhì)的山羊肉,配以新鮮的蔬菜和調(diào)料,經(jīng)過精心的烹飪而成。這道菜品獨(dú)特的做法是先將山羊肉在溫水中浸泡,去除膻味,然后再進(jìn)行燉煮。燉制出的羊肉鮮嫩多汁,入口即化。它的湯底醇厚,配以豐富的配料,口感豐富。肅寧水盆羊肉以其獨(dú)特的口味和營養(yǎng)價(jià)值備受人們喜愛。

      2. 驢肉火燒

      驢肉火燒是肅寧縣的又一知名美食。它選用新鮮的驢肉為主要食材,搭配上海面粉制作而成。驢肉的肉質(zhì)鮮嫩,含有豐富的蛋白質(zhì)和維生素,口感獨(dú)特。火燒則取材自上海的小籠包,外脆內(nèi)軟,餅皮上覆蓋著一層甜味的糖漿。這種食物的組合讓驢肉火燒獨(dú)具特色,香味四溢,吃起來既有肉的鮮美,又有甜味的融合。

      3. 肅寧地瓜粉

      肅寧地瓜粉是肅寧縣的傳統(tǒng)特產(chǎn)之一。它選用新鮮的地瓜為原料,經(jīng)過洗凈、切碎、壓榨等工藝制作而成。地瓜粉質(zhì)地細(xì)膩,色澤紅亮,富有彈性。它無論是做成糕點(diǎn)還是煮粥都十分美味。肅寧地瓜粉富含膳食纖維和多種礦物質(zhì),是一種營養(yǎng)豐富、健康美食。

      4. 土豆燉牛尾

      土豆燉牛尾是肅寧縣的一道家常菜。選用新鮮的牛尾肉和土豆為主要食材,經(jīng)過燉煮而成。牛尾肉燉煮后十分酥爛,搭配土豆的粉狀口感,口感豐富,美味可口。這道菜品不僅營養(yǎng)豐富,而且獨(dú)特的做法使其獨(dú)具風(fēng)味,成為肅寧縣不可或缺的特色美食。

      總結(jié)

      肅寧縣以其獨(dú)特的地理環(huán)境和豐富的農(nóng)田資源,孕育出了各種各樣的特色美食。肅寧水盆羊肉、驢肉火燒、肅寧地瓜粉、土豆燉牛尾等特色菜品都有著獨(dú)特的做法和口感,吸引著來自不同地方的游客品嘗。如果你來到肅寧縣,一定不要錯(cuò)過這些美食,它們將會(huì)給你帶來美味的享受。

      感謝您閱讀本篇文章,希望通過對肅寧縣特色美食的介紹,能夠讓您更好地了解這個(gè)地方的獨(dú)特飲食文化,為您的旅行或觀光提供一些參考和幫助。

      十、mahout面試題?

      之前看了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主要?jiǎng)?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)練模型失敗!");

      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)錯(cuò)。。。。");

      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());

      }

      }

      相關(guān)資訊
      熱門頻道

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

      国内精品久久久久_亚洲区手机在线中文无码播放_国内精品久久久久影院一蜜桃_日韩内射激情视频在线播放免费

        九龙县| 万安县| 安多县| 大方县| 华安县| 泽库县| 砀山县| 新郑市| 高州市| 于都县| 长阳| 怀远县| 龙山县| 错那县| 来安县| 甘孜县| 濉溪县| 静宁县| 衡阳县| 尚志市| 金堂县| 将乐县| 石首市| 南丹县| 读书| 陆良县| 普陀区| 拉萨市| 盐边县| 清水河县| 宝清县| 延寿县| 潮州市| 封丘县| 精河县| 南昌市| 北川| 屯门区| 江津市| 茂名市| 柏乡县|