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

北京微軟總部部門地址

時間:2025-01-27 01:25 人氣:0 編輯:招聘街

一、北京微軟總部部門地址

北京微軟總部部門地址

北京微軟總部部門地址是許多人關(guān)心的問題。作為一家全球知名的科技公司,微軟在中國設(shè)立了多個辦公室和部門,其中包括北京微軟總部。下面將詳細介紹北京微軟總部部門地址及相關(guān)信息。

北京微軟總部概況

北京微軟總部位于中國首都北京,是微軟在中國的重要分支機構(gòu)之一。作為全球領(lǐng)先的科技公司,微軟不僅在軟件開發(fā)、人工智能等領(lǐng)域取得重要成就,也在全球范圍內(nèi)擁有著多個辦公地點。

北京微軟總部是微軟在中國的重要研發(fā)和運營中心,匯集了大量優(yōu)秀的技術(shù)人才和專業(yè)團隊。這里不僅承擔著產(chǎn)品研發(fā)、技術(shù)支持等重要工作,還積極參與了許多國際合作項目。

北京微軟總部部門地址

北京微軟總部部門地址為北京市海淀區(qū)中關(guān)村大街5號微軟大廈。這里集中了微軟在北京的各個部門,包括研發(fā)團隊、市場營銷部門、人力資源部門等。微軟大廈是一座現(xiàn)代化的寫字樓,為員工提供了舒適的工作環(huán)境。

如果您需要前往北京微軟總部辦公,可以通過地鐵、公交等多種方式到達。附近交通便利,周邊設(shè)施完善,是一處便捷的辦公場所。

北京微軟總部部門地址詳細信息

如果您有需要前往北京微軟總部部門地址,以下是一些詳細信息供參考:

  • 地址:北京市海淀區(qū)中關(guān)村大街5號微軟大廈
  • 交通:可乘坐地鐵、公交等前往,周邊交通便利
  • 辦公環(huán)境:舒適的現(xiàn)代化寫字樓,適合工作
  • 部門:包括研發(fā)團隊、市場營銷部門、人力資源部門等

北京微軟總部部門地址是眾多想要了解微軟在中國方面信息的人所關(guān)注的焦點之一。微軟作為全球科技巨頭,在中國擁有著廣泛而深厚的影響力,其在北京的總部更是承擔著重要的使命和責任。

總結(jié)

北京微軟總部部門地址是微軟在中國重要的辦公地點,承載著公司在研發(fā)、運營等方面的重要任務(wù)。微軟大廈作為總部辦公地點,提供給員工良好的工作環(huán)境,周邊交通便利,是一處值得信賴和便捷的工作場所。

北京微軟總部部門地址的詳細信息可隨時在官方網(wǎng)站或相關(guān)渠道獲取,希望以上內(nèi)容能夠為您提供一些幫助和參考。感謝您閱讀本文。

二、微軟stca部門北京地址

微軟STCA部門北京地址

微軟是全球領(lǐng)先的科技公司之一,總部位于美國,在全球范圍內(nèi)設(shè)有多個分支機構(gòu)和辦事處。其中,在中國,微軟設(shè)有多個辦事處,包括位于北京的STCA部門。

STCA,即中國技術(shù)與工程院(Microsoft Software Technology and Engineering Academy),是微軟專門為中國區(qū)域的研發(fā)人才設(shè)立的部門。其主要任務(wù)是培養(yǎng)和開發(fā)高水平的技術(shù)人才,提升中國在全球科技領(lǐng)域的競爭力。

微軟STCA部門的北京地址是:

北京市海淀區(qū)中關(guān)村南大街5號院微軟亞洲研究院

該地址位于北京市海淀區(qū),距離中關(guān)村地鐵站僅幾分鐘路程。這個地理位置十分優(yōu)越,處于中國科技創(chuàng)新中心的核心地帶。

微軟STCA部門在北京設(shè)有一流的研發(fā)機構(gòu),擁有全球領(lǐng)先的技術(shù)設(shè)備和環(huán)境。這里聚集了眾多頂尖的中國科技人才,他們在不同領(lǐng)域的研究和開發(fā)中取得了突破性的成果。

STCA部門提供了豐富的技術(shù)研發(fā)項目,涵蓋了人工智能、云計算、大數(shù)據(jù)分析、物聯(lián)網(wǎng)等領(lǐng)域。研發(fā)人員可以根據(jù)自身興趣和專長,選擇參與不同的項目,并與全球頂尖的科技專家和團隊進行密切合作。

微軟STCA部門注重人才培養(yǎng)和創(chuàng)新能力的培養(yǎng)。他們?yōu)閱T工提供了良好的學習和發(fā)展機會,包括內(nèi)部培訓(xùn)、技術(shù)交流、學術(shù)研討會等。同時,微軟STCA部門與中國各大高校和研究機構(gòu)有著廣泛的合作,為員工搭建了與學術(shù)界和產(chǎn)業(yè)界交流的平臺。

作為中國區(qū)域的科技創(chuàng)新中心,微軟STCA部門在推動中國科技發(fā)展方面發(fā)揮了重要作用。他們與政府、學術(shù)界、產(chǎn)業(yè)界等各方合作,共同探索前沿科技應(yīng)用,推動技術(shù)創(chuàng)新和產(chǎn)業(yè)升級。

此外,微軟STCA部門還積極參與社會公益活動,關(guān)注教育、環(huán)境保護等領(lǐng)域,致力于推動社會進步和可持續(xù)發(fā)展。

總之,微軟STCA部門在北京的地址位于北京市海淀區(qū)中關(guān)村南大街5號院微軟亞洲研究院。這是一個擁有先進技術(shù)設(shè)備和高水平科技人才的研發(fā)機構(gòu),他們致力于培養(yǎng)和發(fā)展中國區(qū)域的技術(shù)人才,推動科技創(chuàng)新和產(chǎn)業(yè)升級。

三、北京開科唯識面試題

北京開科唯識面試題解析

作為求職者,參加面試是我們找工作過程中最重要的一環(huán)。面試是與用人單位接觸的第一次機會,而且是展示個人能力和技能的最佳舞臺。對于計算機行業(yè)的求職者來說,參加北京開科唯識的面試尤為重要。在本篇文章中,我們將深入解析北京開科唯識面試中的一些常見面試題,希望能夠幫助大家更好地應(yīng)對面試的挑戰(zhàn)。

題目一:簡述什么是開科唯識?

開科唯識是一家北京知名的科技公司,專注于人工智能和機器學習領(lǐng)域的研發(fā)與應(yīng)用。該公司以其高效的團隊和創(chuàng)新的技術(shù)聞名于業(yè)界。在面試中,被問到這個問題時,我們應(yīng)該簡要介紹開科唯識的核心業(yè)務(wù)和技術(shù)特點,并強調(diào)其在人工智能領(lǐng)域的領(lǐng)先地位。

題目二:請談?wù)勀阍谌斯ぶ悄茴I(lǐng)域的經(jīng)驗和技能。

在回答這個問題時,我們應(yīng)該突出自己在人工智能領(lǐng)域的實際項目經(jīng)驗和相關(guān)的技術(shù)技能??梢灾v述自己針對某一具體問題所設(shè)計的智能算法、深度學習模型或者應(yīng)用程序,并且重點強調(diào)這些經(jīng)驗和技能如何與開科唯識的需求相互匹配。

題目三:請說說你對機器學習的理解。

機器學習是人工智能的一個分支,它通過計算機對大量數(shù)據(jù)進行分析和學習,從而讓機器可以自主的進行決策和預(yù)測。機器學習的核心在于構(gòu)建模型,通過對已有數(shù)據(jù)的學習,實現(xiàn)對未知數(shù)據(jù)的預(yù)測。面試官可能會進一步提問機器學習的常見算法和技術(shù)應(yīng)用,所以我們需要對機器學習的基本原理和常見算法有一定的了解。

題目四:請解釋一下神經(jīng)網(wǎng)絡(luò)是什么。

神經(jīng)網(wǎng)絡(luò)是一種模擬人腦神經(jīng)元網(wǎng)絡(luò)結(jié)構(gòu)的計算模型。它由大量的人工神經(jīng)元節(jié)點組成,并通過節(jié)點之間的連接和權(quán)重來模擬信息的傳遞和處理過程。神經(jīng)網(wǎng)絡(luò)可以通過對大量樣本的學習,自動提取特征并完成分類、預(yù)測等任務(wù)。在解釋神經(jīng)網(wǎng)絡(luò)時,我們可以舉一些實際應(yīng)用的例子,以便更好地展示自己的理解和應(yīng)用能力。

題目五:你在項目中遇到的挑戰(zhàn)以及如何解決的?

在面試中,面試官通常會關(guān)注我們在實際項目中遇到的挑戰(zhàn)和困難,以及我們是如何解決問題的。我們可以從技術(shù)、團隊協(xié)作和時間管理等方面,結(jié)合具體項目,詳細闡述遇到的問題和解決方案。同時,我們還需要強調(diào)自己的思考過程和創(chuàng)新能力,以展現(xiàn)出自己的優(yōu)勢。

題目六:如何評價開科唯識在人工智能領(lǐng)域的發(fā)展前景?

在回答這個問題時,我們可以結(jié)合開科唯識在人工智能領(lǐng)域的技術(shù)積累、團隊實力和市場前景等方面,給出個人的觀點和評價。可以從市場需求不斷增加、技術(shù)持續(xù)創(chuàng)新、公司潛力巨大等方面進行評價,以展現(xiàn)自己對開科唯識的充分了解和專業(yè)見解。

題目七:請介紹一下你在機器學習項目中的工作職責。

在機器學習項目中,我們的工作職責可能包括數(shù)據(jù)清洗和預(yù)處理、特征工程、模型選擇和調(diào)優(yōu)等多個方面。面試官想要了解我們在項目中具體承擔的角色和工作內(nèi)容,所以我們需要詳細描述自己在每個階段所做的工作,并強調(diào)自己的貢獻和成果。

總結(jié)

北京開科唯識是一家在人工智能領(lǐng)域頗有影響力的公司,參加其面試是一次很好的機會。通過深入了解常見的面試題,我們可以更好地準備自己,提高面試的成功率。在面試過程中,我們要保持自信、冷靜并清晰地表達自己的觀點。相信通過良好的準備和積極的心態(tài),我們一定能夠在北京開科唯識的面試中脫穎而出!

四、微軟北京總部待遇怎么樣?

微軟是世界上市值最高的公司之一,每年的營收超過1000億美元,而微軟對待內(nèi)部的員工,其資薪也是非常高的,那么微軟正式員工工資待遇多少?微軟中國總部在哪個地方?下文就來帶大家了解一下。

微軟正式員工工資待遇多少?

1、集團項目經(jīng)理:微軟集團項目經(jīng)理的年收入為23萬美元,這個數(shù)字是平均值,不包括獎金等其他額外津貼。

微軟正式員工工資

2、高級工程師:根據(jù)經(jīng)驗和績效,微軟工程高級總監(jiān)每年的薪酬大約在17萬美元至22萬美元之間。

3、主要產(chǎn)品經(jīng)理:從職位角度看,主要負責推廣產(chǎn)品,負責與分配產(chǎn)品相關(guān)的所有內(nèi)容。微軟主要產(chǎn)品經(jīng)理每年的平均工資是21萬美元。

4、高級營銷總監(jiān):處理與所分配產(chǎn)品相關(guān)的一系列產(chǎn)品和人員。微軟的高級營銷總監(jiān)的薪酬大約為200000美元。

5、高級軟件開發(fā)人員:工作角色是開發(fā)和故障排除軟件,微軟高級軟件開發(fā)人員每年的薪酬大約為18萬美元,不包括獎金,優(yōu)惠券,食品券等其他優(yōu)惠。

微軟中國總部在哪個地方?

微軟始建于1975年,是一家美國跨國科技公司,也是世界PC軟件開發(fā)的先導(dǎo),由比爾·蓋茨與保羅·艾倫創(chuàng)辦于1975年。

微軟是最早進入中國市場的美國大型企業(yè)之一,早在1992年,微軟便宣布進入中國,并且在北京設(shè)立總部。目前,微軟在北京、上海、廣州、深圳等多個中國城市,均設(shè)有分公司。微軟的美國總部,則設(shè)在華盛

五、北京冬奧志愿者面試題庫?

東奧志愿者的面試主要是包括奧運的基本知識,還有一些賽場李杰方面的知識的面試。

六、中國一共有多少輛汽車(這樣的微軟面試題該怎樣回答)?

微軟出這個問題應(yīng)該是考你的思維敏捷程度和邏輯統(tǒng)計能力,而并不是要你給他一個確切的答案.你可以根據(jù)自己的想法給他一個答案,并且把這個答案解釋通就可以了. 比如你可以告訴他,中國目前有13億人,如果4人一家的話,那么就有3000萬戶,如果一戶折合一輛汽車的話就有3000萬輛.

七、北京環(huán)球影城官網(wǎng)面試題目

大家好,我是博客作者王小明。今天我為大家?guī)砹岁P(guān)于北京環(huán)球影城官網(wǎng)面試題目的詳細介紹。

什么是北京環(huán)球影城官網(wǎng)面試題目?

北京環(huán)球影城官網(wǎng)面試題目是指在申請北京環(huán)球影城官方網(wǎng)站工作崗位時,面試官會提出的問題。這些問題旨在了解應(yīng)聘者的專業(yè)知識、工作經(jīng)驗和解決問題的能力。不同崗位的面試題目會有所不同,但都是為了評估應(yīng)聘者的能力和適應(yīng)性。

常見的北京環(huán)球影城官網(wǎng)面試題目有哪些?

下面是一些常見的北京環(huán)球影城官網(wǎng)面試題目,供大家參考:

  1. 請介紹一下你自己的工作經(jīng)驗和相關(guān)技能。
  2. 你在過去的工作中遇到的最大挑戰(zhàn)是什么,你是如何應(yīng)對的?
  3. 請分享你最自豪的工作成就。
  4. 如果你遇到一個不懂的技術(shù)問題,你會如何解決?
  5. 你如何處理工作中的壓力和緊急情況?
  6. 你對團隊合作的看法是什么?請分享一次你在團隊中發(fā)揮領(lǐng)導(dǎo)作用的經(jīng)驗。
  7. 請描述一次你與客戶之間的沖突,并且你是如何解決的?
  8. 你對北京環(huán)球影城官網(wǎng)的了解有多少?
  9. 請介紹一下你的項目管理經(jīng)驗。
  10. 你如何確保你的工作始終按時完成?

如何準備北京環(huán)球影城官網(wǎng)面試題目?

準備北京環(huán)球影城官網(wǎng)面試題目非常重要,可以幫助應(yīng)聘者在面試中展現(xiàn)出優(yōu)秀的能力和素質(zhì)。以下是一些建議:

  • 研究公司背景: 在面試前,了解北京環(huán)球影城官網(wǎng)的背景和業(yè)務(wù)。這將有助于你理解他們的期望,更好地回答問題。
  • 復(fù)習常見問題: 復(fù)習一些常見的面試題目,并準備好針對這些問題的答案。這樣可以在面試時更加從容和自信。
  • 展示專業(yè)知識: 在回答問題時,展示你的專業(yè)知識和技能。用具體的實例和成就支持你的回答。
  • 練習模擬面試: 邀請朋友或家人扮演面試官,進行模擬面試練習。這樣可以提高你的應(yīng)對能力和口頭表達能力。
  • 提前準備問題: 在面試過程中,你也可以提前準備一些問題,問面試官關(guān)于北京環(huán)球影城官網(wǎng)的工作環(huán)境、團隊合作等方面的問題。這顯示出你對這個崗位的興趣和熱情。

如何在北京環(huán)球影城官網(wǎng)面試中脫穎而出?

在北京環(huán)球影城官網(wǎng)的面試中,脫穎而出的關(guān)鍵在于展示出自己的獨特優(yōu)勢和能力。

以下是一些建議:

  • 自信和積極: 保持自信和積極的態(tài)度,展現(xiàn)你的熱情和動力。
  • 準確回答問題: 在回答問題時,盡量準確、簡潔地回答,避免模糊或含糊不清。
  • 展示團隊合作能力: 強調(diào)你在團隊中的合作經(jīng)驗,并且能夠有效地與他人合作。
  • 積極溝通: 在面試中,積極主動地與面試官溝通,并展示你的良好溝通能力。
  • 靈活應(yīng)對: 在面試中可能會遇到一些難以預(yù)料的情況,保持靈活,適應(yīng)變化,并展示你解決問題的能力。

總之,準備充分、展示自己的專業(yè)能力和積極態(tài)度,是成功應(yīng)對北京環(huán)球影城官網(wǎng)面試的關(guān)鍵。希望以上的建議對你有所幫助!祝你面試成功!

八、北京微軟亞洲研究院好進嗎?

我覺得那種體驗應(yīng)該是非常的棒。你想想你在那里繼續(xù)實習的話,那你會接觸到很多東西會學到你非常多的東西,不讓你感受到那里的人文。

九、北京市政府熱線面試題

北京市政府熱線面試題

面試是求職過程中至關(guān)重要的一環(huán)。無論是應(yīng)聘普通職位還是高層管理職位,都要經(jīng)歷面試環(huán)節(jié)。北京市政府熱線作為一個公共服務(wù)平臺,對招聘人員的要求也相對較高。因此,他們使用面試題來評估求職者的能力和素質(zhì)。

面試題一:您對北京市政府熱線的了解有多少?

這道題是考察求職者對北京市政府熱線的了解程度。作為求職者,應(yīng)提前充分了解北京市政府熱線的職責、服務(wù)對象以及工作內(nèi)容。可以從官方網(wǎng)站、新聞報道和相關(guān)文獻中獲取詳細信息。

面試題二:您為何選擇應(yīng)聘北京市政府熱線的崗位?

這道題考察求職者對自己職業(yè)發(fā)展的規(guī)劃和目標?;卮饡r可以結(jié)合個人經(jīng)歷和興趣,強調(diào)對公共事務(wù)的關(guān)注以及為社會做出貢獻的意愿。

面試題三:請談?wù)勀臏贤记珊徒鉀Q問題的能力。

作為北京市政府熱線的工作人員,良好的溝通技巧和解決問題的能力是必備的素質(zhì)。在回答時,可以通過舉例,介紹自己在以往工作中處理問題的經(jīng)驗,以及如何與不同背景的人進行有效溝通。

面試題四:當您遇到來自民眾的惡意投訴時,您將如何處理?

這道題考察求職者的應(yīng)變能力和處理矛盾的能力。在回答時,應(yīng)強調(diào)保持冷靜和客觀,并表達自己理性處理矛盾的能力。

面試題五:您是否具備處理緊急情況的能力?請舉例說明。

北京市政府熱線工作可能會面臨一些緊急情況,需要快速反應(yīng)和處理。在回答時,應(yīng)提供自己在緊急情況下的經(jīng)驗,并強調(diào)自己的組織能力和決策能力。

面試題六:您認為信息安全在北京市政府熱線工作中的重要性是什么?

北京市政府熱線處理大量敏感信息,信息安全至關(guān)重要。在回答時,應(yīng)強調(diào)對信息保密的重視和個人在信息安全方面的實踐經(jīng)驗。

面試題七:請談?wù)勀鷮ぷ鲌F隊的理解和如何與團隊成員合作。

團隊合作是北京市政府熱線工作的重要組成部分。在回答時,應(yīng)強調(diào)自己具備的團隊合作精神和良好的溝通、協(xié)作能力。

面試題八:您是否具備長時間高強度工作的能力?請舉例說明。

北京市政府熱線可能需要長時間高強度的工作,因此對求職者的體力和心理素質(zhì)有一定要求。在回答時,應(yīng)提供自己在高強度工作下的經(jīng)驗,并表達自己具備應(yīng)對壓力的能力。

總結(jié):面試是一個展示自己能力和素質(zhì)的機會,北京市政府熱線作為一個公共服務(wù)平臺,在招聘中會提出一些有針對性的面試題。作為求職者,需要提前準備并了解企業(yè)的背景及招聘要求。合理準備并認真回答面試題,展示自己的實力和優(yōu)勢,增加成功的機會。祝愿所有求職者能夠順利通過面試,取得自己理想的職位。

十、mahout面試題?

之前看了Mahout官方示例 20news 的調(diào)用實現(xiàn);于是想根據(jù)示例的流程實現(xiàn)其他例子。網(wǎng)上看到了一個關(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的工具類實現(xiàn)分類。

基本思想:

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

2. 使用Mahout工具類進行訓(xùn)練,得到訓(xùn)練模型。

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

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

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

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

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

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

2. 使用Mahout工具類進行訓(xùn)練,得到訓(xùn)練模型。

3。將要檢測數(shù)據(jù)轉(zhuǎn)換成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) {

//將訓(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初始化時報錯。。。。");

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

}

}

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

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