導航:首頁 > 凈水問答 > 極限演算法挑戰賽敏感詞大文本過濾

極限演算法挑戰賽敏感詞大文本過濾

發布時間:2022-12-31 03:38:05

A. 沃森超級計算機的賽前軼事

2009年12月,弗里德曼和其他製作人員第一次見到「沃森」,當時這台超級電腦與兩名人類選手展開對決。「沃森」採用IBM POWER7伺服器,能夠將所處理的任務實現最優化。IBM表示參加挑戰的「沃森」必須快速處理所有任務。此外,這台超級電腦還採用了一系列專利技術,能夠讓任務和數據處理與信息實時分析同時進行。
法魯西指出《危險》的本質就是要讓技術朝著正確的方向發展。他說:「這檔節目涉及的領域很廣,會提出各種各樣的問題,是我們希望參加的挑戰之一。這項挑戰是對選手信心的一種考驗,你必須在確信答案正確後才回答,此外,你還不得不快速給出答案。」
IBM表示「沃森」採用的技術能夠在醫療衛生等很多領域發揮作用,能夠幫助提高醫生診斷病情的准確性,改進在線自助咨詢台,為遊客和居民提供相關城市的特定信息,或者通過手機為消費者提供支持。為了備戰《危險》,「沃森」曾與前《危險》冠軍展開50多次對決。此外,它還參加了《危險》節目組為所有潛在選手准備的測驗並順利通過。
《危險》監制哈里·弗里德曼稱,在IBM第一次與《危險》節目組接觸時,製作人員均產生濃厚興趣,但同時也擔心觀眾對「沃森」參加比賽產生分歧,將其視為一個噱頭或者花招。他說:「現在態度不同了。這是電腦獲取的知識與最優秀的《危險》選手獲取的知識之間的一種較量。這是一場重要的比賽,我們都希望參與其中。」 沃森由90台IBM伺服器、360個計算機晶元驅動組成,是一個有10台普通冰箱那麼大的計算機系統。它擁有15TB內存、2880個處理器、每秒可進行80萬億次運算(這是目前的情況)。這些伺服器採用Linux操作系統。IBM為沃森配置的處理器是Power 7系列處理器,這是當前RISC(精簡指令集計算機)架構中最強的處理器。它採用45nm工藝打造,擁有八個核心、32個線程,主頻最高可達4.1GHz,其二級緩存更是達到了32MB。存儲了大量圖書、新聞和電影劇本資料、辭海、文選和《世界圖書網路全書》(World Book Encyclopedia)等數百萬份資料。每當讀完問題的提示後,沃森就在不到三秒鍾的時間里對自己的資料庫挖地三尺,在長達2億頁的漫漫資料里展開搜索。
沃森是基於IBMDeepQA(深度開放域問答系統工程)技術開發的。作為沃森超級電腦基礎的DeepQA技術可以讀取數百萬頁文本數據,利用深度自然語言處理技術產生候選答案,根據諸多不同尺度評估那些問題。IBM研發團隊為沃森開發的100多套演算法可以在3秒內解析問題,檢索數百萬條信息然後再篩選還原 成 答案輸出成人類語言。每一種演算法都有其專門的功能。其中一種演算法被稱為嵌套分解演算法,它可以將線索分解成兩個不同的搜索功能。
沃森超級計算機與谷歌搜索引擎相比究竟誰更智能?對於這一問題,美國《商業周刊》前科技編輯史蒂芬·貝克爾近日通過分析和比較後認為,沃森超級計算機比谷歌更智能。貝克爾認為,答案很簡單,谷歌現在還不能回答問題。谷歌以兩種方式信賴於我們人類的大腦:首先,在描述用戶的查詢請求時,谷歌會讓用戶像計算機一樣去思考,挑選出三或四個最符合計算機意圖的消息,形成一個查詢結果列表。其次,谷歌會將用戶引導到與所查詢的答案類似的答案上去,讓用戶花更多的腦力去發現所需要查詢的確切答案。而沃森超級計算機則是自己處理所有問題。它必須要解碼復雜的英語,窮盡所有可能的答案,並選擇其中一個,最終判定它是否足夠符合要求。 對計算機沃森來說,挑選出合適的語境是一項艱巨任務,尤其是在充滿暗示和惡作劇的游戲里,而且它還必須確定答案的可靠性以及它是不是需要冒險去猜。沃森需要識別人類的語言,並從中分析微妙的含義,諷刺口吻、謎語、構詞斷句、詩篇線索等等這些邏輯和線索,並通過一系列的數據比對和模擬人類的聯想能力得出精準的答案,再反向用人類的語言回答出來。此外,沃森還能模仿人類針對問題進行策略考慮,例如問題的挑選、是否略過不擅長的題目,還會模仿人類的口吻搞笑整個過程僅有計算機和軟體演算法完成,沒有工程師參與(這種快速問答,其實也參與不了),也與互聯網斷開因此計算機不能作弊,必須自己想。
領導設計沃森 的IBM 研究團隊的科學家David Ferrucci 博士表示:經過四年的努力,我們的科學團隊相信沃森已經能夠快速理解《危險邊緣》問題的內容,分析它需要獲得的信息,得到精確的答案,並給出可信的回答。沃森會估計《危險邊緣》節目組剩下的獎金數額、自己比其他對手落後或領先多少、自己在特定類別的題目上的表現,及時調整自己的信息級別。如果沃森落後對手太多,它的信心級別會較低,例如40%,這時它仍會繼續努力;不過在領先對手時它也會想:我已經領先那麼多了,為什麼還要冒險呢?因此,即使它的信心值是75%,它也有可能會選擇不回答。
在開發沃森的四年間,研發團隊主要以兩種方式評估這套系統。首先,他們以成批的方式(如每次3000個問題)進行大規模測試以評估系統性能,實施錯誤分析,提高系統性能。基於這種多問題的表現可以從統計學角度作出重要的性能評估;其次,該團隊評估沃森的第二個方式是,與《危險邊緣》以前的參賽選手進行陪練比賽。在2009年冬天,他們與曾經出現在《危險邊緣》的選手進行了79場比賽,在剛剛過去的秋天,沃森與獲得過《危險邊緣》比賽冠軍的選手進行了55場對決。這些陪練比賽讓研發團隊對沃森的性能有了深入認識。 《危險邊緣》是哥倫比亞廣播公司益智問答游戲節目,已經經歷了數十年歷史。該節目的比賽以一種獨特的問答形式進行,問題設置的涵蓋面非常廣泛,涉及到歷史、文學、藝術、流行文化、科技、體育、地理、文字游戲等等各個領域。根據以答案形式提供的各種線索,參賽者必須以問題的形式做出簡短正確的回。與一般問答節目相反,《危險邊緣》以答案形式提問、提問形式作答。參賽者需具備歷史、文學、政治、科學和通俗文化等知識,還得會解析隱晦含義、反諷與謎語等,而電腦並不擅長進行這類復雜思考。
沃森的設計初衷則是要理解更為復雜的詞句、語言和人類知識。IBM科學家、沃森團隊的負責人大衛·費魯奇(David Ferrucci)表示,利用《危險邊緣》去開發計算機系統將推動技術向正確的方向發展。他表示: 節目會問各種問題。這同時涉及到信心,當你認為你的答案不正確時不要回答。你還需要很快地做出判斷。IBM表示,贏得《危險邊緣》比賽並不是主要目的。通過沃森的技術,醫生可以更快地診斷病例,法律工作者也可以更快地研究案例。《危險邊緣》執行製片人哈里·弗里德曼(Harry Friedman)表示:這些很重要,我們希望成為其中的一部分。 北京時間2011年2月17日,人機大戰最終成績出爐:電腦沃森狂勝人類。由IBM和美國德克薩斯大學聯合研製的超級電腦「沃森」(Watson)在美國最受歡迎的智力競猜電視節目《危險邊緣》中擊敗該節目歷史上兩位最成功的選手肯-詹寧斯和布拉德-魯特,成為《危險邊緣》節目新的王者。
在第三天的比賽中,IBM的超級電腦沃森獲得了41413美元的分數,而兩位人類選手肯·詹寧斯(Ken Jennings)和布拉德·拉特(Brad Rutter)分別僅獲得了19200美元和11200美元。
將三個比賽日的成績相加即可得出最後的總成績,沃森也是大幅領先於人類,最終成績上,沃森達到了77147美元,肯·詹寧斯排名第二,但只獲得了24000美元,而布拉德·拉特獲得了21600美元,排名第三。
在第三比賽日的比賽中,沃森一路領先,以至於在進入最終的Final Jeopardy環節前,人類選手超過沃森的幾率已經幾乎不存在了。
在Final Jeopardy中,排名第二的肯·詹寧斯已經放棄追趕沃森,而選擇保住第二的位子,因此他僅賭了1000美元,排名第三的布拉德·拉特則放手一搏,壓上了他所能賭的最大賭注——5600美元,而沃森再一次暴露了他是非人類的本質,賭了17973美元,這和人類正常賭的整數大相徑庭。 美國哥倫比亞大學醫療中心和馬里蘭大學醫學院已與IBM公司簽訂合同,兩所大學的醫療人員將利用沃森更快、更准確地診病、治病。它的海量信息庫中存有許多發表在期刊上的專業論文,可以讓醫生利用最新科研成果治療病人。
想要讓沃森真正成為醫生的得力助手,還需要對它進行改進。醫生需要的不只是一個答案。而且有時病人提供的信息不準確或相互矛盾,這就需要醫生利用豐富的經驗進行判斷。IBM研發小組接下來的挑戰是,讓沃森多提供一些假設情況,研發小組至少還需要兩年才能完成這一任務。 ?14年前,IBM研發的計算機「深藍」(Deep Blue)戰勝了國際象棋冠軍卡斯帕羅夫;現在,這家公司以創始人Thomas J. Watson名字命名的計算機,繼續著對人類智能極限的挑戰。
IBM長於製造各種復雜的機器,除了伺服器還有這種智能計算機(小型機的集群),它看起來可不僅僅就像那句有點諷刺意味的流行語說的那樣—IBM,不是個生產哲學的公司嗎?
在1960年代人工智慧的技術研發停滯不前數年後,科學家便發現如果以模擬人腦來定義人工智慧那將走入一條死胡同。現在,「通過機器的學習、大規模資料庫、復雜的感測器和巧妙的演算法,來完成分散的任務」是人工智慧的最新定義,這早已經取代了曾經甚囂塵上的「重建大腦」。
按照這個定義,沃森在人工智慧上被認為又邁出了一步。「深藍只是在做非常大規模的計算,它是人類數學能力的體現,」IBM中國研究院資深經理潘越告訴《第一財經周刊》,他同時參與沃森項目,負責提供數據支持。「當涉及到機器學習、大規模並行計算、語義處理等領域,沃森了不起的地方在於把這些技術整合在一個體系架構下來理解人類的自然語言。」
如果這些解釋有點晦澀難懂的話,那麼可以參看一下《危險邊緣》的游戲規則,你便知道沃森的價值何在。
《危險邊緣》是哥倫比亞廣播公司一檔長盛不衰的電視問答節目,自1964年開始播出,最精彩的地方在於游戲里的問題包羅萬象,幾乎涵蓋了人類文明的所有領域。它的規則是答對問題可以獲得獎金,答錯就會倒扣。
對人類來說,規則很簡單,但對沃森來說,則意味著眾多挑戰。首先沃森必須要聽懂主持人的自然語言,這是深藍不具備的;其次是沃森需要分析這些語言,比如哪些是反諷,哪些是雙關,哪些是連詞,隨後根據關鍵字判斷題目的意思,沃森進行相關搜索,並評估各種答案的可能性;最後選擇三個可能性最高的答案,當其中一個可能性超過50%後,程序啟動,沃森按下搶答器。
這些得以實現靠的是90台IBM伺服器、360個計算機晶元驅動以及IBM研發的DeepQA系統。IBM為沃森配置的處理器是Power 750系列處理器,這是當前RISC(精簡指令集計算機)架構中最強的處理器—這些得以支持沃森最終得出可靠答案的時間不超過3秒鍾。
沃森主打的是小型機的並行運算。IBM在大型機上的地位很難撼動—在小沃森(創始人老沃森的兒子)執掌IBM時期,IBM投入約60億美元,這筆超過當年NASA的研發經費,最終把日本的NEC與法國的克雷排擠出去,奠定了IBM在大型機市場的壟斷地位。
「在IBM的內部員工培訓上流傳著一句笑話,那便是在大型機領域,有97%的市場份額來自IBM,剩下的3%來自淘汰的IBM二手大型機。」IBM伺服器銷售部門前負責人告訴《第一財經周刊》。
IBM試圖把大型機上的優勢帶入到小型機領域。沃森主打的正是IBM的銷售新星90台小型機的並行運算,「IBM小型機的運算速度是突出的,」上述IBM員工評價說,「因為它把大型機的CPU研發優勢直接移植到小型機上來了。」
IBM是為數不多的可以有能力獨立開發小型機CPU的廠家,IBM還將這些技術出售給了除英特爾以外的晶元製造商。
現在,在小型機市場上,IBM與HP的市場比例大致為2:1,另外一家小型機公司SUN則現在主要針對低端市場。
此外,IBM的全球研發團隊的某種模式也加大了沃森贏得比賽的可能。
這些團隊分工極為細致,比如以色列海法團隊負責深度開放域問答系統工程的搜索過程,日本東京負責沃森在問答中將詞意和詞語連接,IBM中國研究院和上海分院則負責以不同的資源給沃森提供數據支持,還有專門研究演算法的團隊以及研究策略下注的博弈團隊等。
「我們就好像是每個不同的虛擬部隊,每個人只做自己最擅長與熟悉的那部分。」潘越稱。
事實上這便是IBM的特色,它一直遵循工業時代的成功模式,比如這種製造企業更為擅長的流水線模式,並且通過給員工分級打分的獎懲制度,讓它的各個團隊都更有效率。
這些研發天才開發的DeepQA系統保證了沃森可以具備嶄新的人機交互模式,比如可以理解並分析自然語言,事實上,對自然語言的理解也一直是IBM研究機構在人工智慧上的強項。
這很像科幻電影里的橋段—為了隱秘的機器人開發計劃,在全球招募天賦異秉的人士。所不同的是,IBM的意義顯然更為實際。
此前,基於深藍研發的AIX操作系統讓IBM在商業運用與政府部門中取得了大量的訂單,IBM也希望可以將沃森的DeepQA系統運用於醫療服務、咨詢等領域之中。
「沃森的優勢是給出准確與可靠的答案,因此可以為醫生提供更適合病人的解決方案。「潘越稱,「在醫療領域的應用將是沃森商用最主要的領域。」
沃森項目如果想在醫療行業推行的話,還需要面臨法律層面的問題,IBM一位研究員稱,「如果沃森診斷出錯,而醫生又聽從了錯誤的診斷,那麼沃森就會面臨被患者告上法庭的危險,這對IBM而言是一個正在考慮的應用問題。」
對於IBM來說,沃森未來不僅要繼續挑戰人類智能的極限,還要幫助這家公司去同亞馬遜、谷歌、微軟們競爭,爭奪未來科技制高點的主導權。

B. 增加數據會使svm演算法分類效果更好嗎

數據倉庫,資料庫或者其它信息庫中隱藏著許多可以為商業、科研等活動的決策提供所需要的知識。分類與預測是兩種數據分析形式,它們可以用來抽取能夠描述重要數據集合或預測未來數據趨勢的模型。分類方法(Classification)用於預測數據對象的離散類別(Categorical Label);預測方法(Prediction )用於預測數據對象的連續取值。
分類技術在很多領域都有應用,例如可以通過客戶分類構造一個分類模型來對銀行貸款進行風險評估;當前的市場營銷中很重要的一個特點是強調客戶細分。客戶類別分析的功能也在於此,採用數據挖掘中的分類技術,可以將客戶分成不同的類別,比如呼叫中心設計時可以分為:呼叫頻繁的客戶、偶然大量呼叫的客戶、穩定呼叫的客戶、其他,幫助呼叫中心尋找出這些不同種類客戶之間的特徵,這樣的分類模型可以讓用戶了解不同行為類別客戶的分布特徵;其他分類應用如文獻檢索和搜索引擎中的自動文本分類技術;安全領域有基於分類技術的入侵檢測等等。機器學習、專家系統、統計學和神經網路等領域的研究人員已經提出了許多具體的分類預測方法。下面對分類流程作個簡要描述:
訓練:訓練集——>特徵選取——>訓練——>分類器
分類:新樣本——>特徵選取——>分類——>判決
最初的數據挖掘分類應用大多都是在這些方法及基於內存基礎上所構造的演算法。目前數據挖掘方法都要求具有基於外存以處理大規模數據集合能力且具有可擴展能力。下面對幾種主要的分類方法做個簡要介紹:
(1)決策樹
決策樹歸納是經典的分類演算法。它採用自頂向下遞歸的各個擊破方式構造決策樹。樹的每一個結點上使用信息增益度量選擇測試屬性。可以從生成的決策樹中提取規則。
(2) KNN法(K-Nearest Neighbor)
KNN法即K最近鄰法,最初由Cover和Hart於1968年提出的,是一個理論上比較成熟的方法。該方法的思路非常簡單直觀:如果一個樣本在特徵空間中的k個最相似(即特徵空間中最鄰近)的樣本中的大多數屬於某一個類別,則該樣本也屬於這個類別。該方法在定類決策上只依據最鄰近的一個或者幾個樣本的類別來決定待分樣本所屬的類別。
KNN方法雖然從原理上也依賴於極限定理,但在類別決策時,只與極少量的相鄰樣本有關。因此,採用這種方法可以較好地避免樣本的不平衡問題。另外,由於KNN方法主要靠周圍有限的鄰近的樣本,而不是靠判別類域的方法來確定所屬類別的,因此對於類域的交叉或重疊較多的待分樣本集來說,KNN方法較其他方法更為適合。
該方法的不足之處是計算量較大,因為對每一個待分類的文本都要計算它到全體已知樣本的距離,才能求得它的K個最近鄰點。目前常用的解決方法是事先對已知樣本點進行剪輯,事先去除對分類作用不大的樣本。另外還有一種Reverse KNN法,能降低KNN演算法的計算復雜度,提高分類的效率。
該演算法比較適用於樣本容量比較大的類域的自動分類,而那些樣本容量較小的類域採用這種演算法比較容易產生誤分。
(3) SVM法SVM法即支持向量機(Support Vector Machine)法,由Vapnik等人於1995年提出,具有相對優良的性能指標。該方法是建立在統計學習理論基礎上的機器學習方法。通過學習演算法,SVM可以自動尋找出那些對分類有較好區分能力的支持向量,由此構造出的分類器可以最大化類與類的間隔,因而有較好的適應能力和較高的分准率。該方法只需要由各類域的邊界樣本的類別來決定最後的分類結果。
支持向量機演算法的目的在於尋找一個超平面H(d),該超平面可以將訓練集中的數據分開,且與類域邊界的沿垂直於該超平面方向的距離最大,故SVM法亦被稱為最大邊緣(maximum margin)演算法。待分樣本集中的大部分樣本不是支持向量,移去或者減少這些樣本對分類結果沒有影響,SVM法對小樣本情況下的自動分類有著較好的分類結果。
(4) VSM法VSM法即向量空間模型(Vector Space Model)法,由Salton等人於60年代末提出。這是最早也是最出名的信息檢索方面的數學模型。其基本思想是將文檔表示為加權的特徵向量:D=D(T1,W1;T2,W2;…;Tn,Wn),然後通過計算文本相似度的方法來確定待分樣本的類別。當文本被表示為空間向量模型的時候,文本的相似度就可以藉助特徵向量之間的內積來表示。
在實際應用中,VSM法一般事先依據語料庫中的訓練樣本和分類體系建立類別向量空間。當需要對一篇待分樣本進行分類的時候,只需要計算待分樣本和每一個類別向量的相似度即內積,然後選取相似度最大的類別作為該待分樣本所對應的類別。
由於VSM法中需要事先計算類別的空間向量,而該空間向量的建立又很大程度的依賴於該類別向量中所包含的特徵項。根據研究發現,類別中所包含的非零特徵項越多,其包含的每個特徵項對於類別的表達能力越弱。因此,VSM法相對其他分類方法而言,更適合於專業文獻的分類。
(5) Bayes法
Bayes法是一種在已知先驗概率與類條件概率的情況下的模式分類方法,待分樣本的分類結果取決於各類域中樣本的全體。
設訓練樣本集分為M類,記為C={c1,…,ci,…cM},每類的先驗概率為P(ci),i=1,2,…,M。當樣本集非常大時,可以認為P(ci)=ci類樣本數/總樣本數。對於一個待分樣本X,其歸於cj類的類條件概率是P(X/ci),則根據Bayes定理,可得到cj類的後驗概率P(ci/X):
P(ci/x)=P(x/ci)·P(ci)/P(x)(1)
若P(ci/X)=MaxjP(cj/X),i=1,2,…,M,j=1,2,…,M,則有x∈ci(2)
式(2)是最大後驗概率判決准則,將式(1)代入式(2),則有:
若P(x/ci)P(ci)=Maxj〔P(x/cj)P(cj)〕,i=1,2,…,M,j=1,2,…,M,則x∈ci
這就是常用到的Bayes分類判決准則。經過長期的研究,Bayes分類方法在理論上論證得比較充分,在應用上也是非常廣泛的。
Bayes方法的薄弱環節在於實際情況下,類別總體的概率分布和各類樣本的概率分布函數(或密度函數)常常是不知道的。為了獲得它們,就要求樣本足夠大。另外,Bayes法要求表達文本的主題詞相互獨立,這樣的條件在實際文本中一般很難滿足,因此該方法往往在效果上難以達到理論上的最大值。
神經網路分類演算法的重點是構造閾值邏輯單元,一個值邏輯單元是一個對象,它可以輸入一組加權系數的量,對它們進行求和,如果這個和達到或者超過了某個閾值,輸出一個量。如有輸入值X1, X2, , Xn 和它們的權系數:W1, W2, , Wn,求和計算出的 Xi*Wi ,產生了激發層 a = (X1 * W1)+(X2 * W2)++(Xi * Wi)++ (Xn * Wn),其中Xi 是各條記錄出現頻率或其他參數,Wi是實時特徵評估模型中得到的權系數。神經網路是基於經驗風險最小化原則的學習演算法,有一些固有的缺陷,比如層數和神經元個數難以確定,容易陷入局部極小,還有過學習現象,這些本身的缺陷在SVM演算法中可以得到很好的解決。

C. 《極限挑戰》中江一燕的表現怎麼樣

還行吧,節目而已,不要當真。

而江一燕,應該是個被寵愛的小女人性格,感性浪漫喜歡被人照顧,有些小鳥依人,更適合大男子主義一點,精明能幹,又寵愛她,能給她安全感的男人。 這種性格,說不好聽點,的確是矯情。

王迅是小心翼翼過生活,不去害人也不爭不搶,希望自己平平安安就知足了。江一燕在看清渤哥不會選她後,認為一直選擇自己的王迅很老實,同時分高可以滿足她的高要求。

總之,綜藝而已,當真你就輸了,大家怎麼看呢?

D. 彎道速度極限值的演算法

速度極限看彎道半徑和仰角,靜摩擦力系數,向心力和地面摩擦力的大小。一般看mgsinα和μmgcosα的大小。當向內相對滑動時,摩擦力向外,向心力為兩者的差,此時向心力最小;當向外相對滑動時,摩擦力向內,向心力為兩者的和,此時向心力最大,則速度也最大。
向心力是指古典力學里當物體沿著圓周或者曲線軌道運動時,指向圓心(曲率中心)的合外力作用力。「向心力」一詞是從這種合外力作用所產生的效果而命名的。這種效果可以由彈力、重力、摩擦力等任何一力而產生,也可以由幾個力的合力或其分力提供。
因為圓周運動屬於曲線運動,在做圓周運動中的物體也同時會受到與其速度方向不同的合外力作用。對於在做圓周運動的物體,向心力是一種拉力,其方向隨著物體在圓周軌道上的運動而不停改變。此拉力沿著圓周半徑指向圓周的中心,所以得名「向心力」。向心力指向圓周中心,且被向心力所控制的物體是沿著切線的方向運動,所以向心力必與受控物體的運動方向垂直,僅產生速度法線方向上的加速度。因此向心力只改變所控物體的運動方向,而不改變運動的速率,即使在非勻速圓周運動中也是如此。非勻速圓周運動中,改變運動速率的切向加速度並非由向心力產生。

E. 抖音違禁詞有哪些

抖音直播違禁詞如下:
1、不文明用語不要說。
2、疑似欺騙用戶的詞語不要說。內
3、刺容激消費的詞語不要說。
4、暴力色情類詞語不要說。
5、化妝品虛假宣傳用語不要說。
6、醫療相關用語。
抖音(Tik Tok)是由今日頭條推出的一款短視頻分享APP,於2016年9月上線,是一個專注於年輕人音樂短視頻創作分享的社區平台。抖音應用人工智慧技術為用戶創造多樣的玩法,用戶可以通過這款軟體選擇歌曲,拍攝音樂短視頻,形成自己的作品。抖音2016年9月上線,一直磨刀磨到今年春節後可能感覺跑通了才大舉壓上資源,產品優秀的數據表現又讓頭條很快決定將各種流量明星BD推廣資源全力導向這個可以提升公司品相的新項目。抖音很快成為頭條戰略級產品。當然,頭條最核心的演算法優勢也用到了抖音上,一開始就在產品層面加入演算法推薦模型保證內容分發效率。

F. 數學的來歷(100字)

「數學」的由來

古希臘人在數學中引進了名稱,概念和自我思考,他們很早就開始猜測數學是如何產生的。雖然他們的猜測僅是匆匆記下,但他們幾乎先佔有了猜想這一思考領域。古希臘人隨意記下的東西在19世紀變成了大堆文章,而在20世紀卻變成了令人討厭的陳辭濫調。 在現存的資料中,希羅多德(Herodotus,公元前484--425年)是第一個開始猜想的人。他只談論了幾何學,他對一般的數學概念也許不熟悉,但對土地測量的准確意思很敏感。作為一個人類學家和一個社會歷史學家,希羅多德指出,古希臘的幾何來自古埃及,在古埃及,由於一年一度的洪水淹沒土地,為了租稅的目的,人們經常需要重新丈量土地;他還說:希臘人從巴比倫人那裡學會了日晷儀的使用,以及將一天分成12個時辰。希羅多德的這一發現,受到了肯定和贊揚。認為普通幾何學有一個輝煌開端的推測是膚淺的。

柏拉圖關心數學的各個方面,在他那充滿奇妙幻想的神話故事《費德洛斯篇》中,他說:

故事發生在古埃及的洛克拉丁(區域),在那裡住著一位老神仙,他的名字叫賽斯(Theuth),對於賽斯來說,朱鷺是神鳥,他在朱鷺的幫助下發明了數,計算、幾何學和天文學,還有棋類游戲等。

柏拉圖常常充滿了奇怪的幻想,原因是他不知道自己是否正亞里士多德最後終於用完全概念化的語言談論數學了,即談論統一的、有著自己發展目的的數學。在他的《形而上學》(Meta-physics)第1卷第1章中,亞里士多德說:數學科學或數學藝術源於古埃及,因為在古埃及有一批祭司有空閑自覺地致力於數學研究。亞里士多德所說的是否是事實還值得懷疑,但這並不影響亞里士多德聰慧和敏銳的觀察力。在亞里士多德的書中,提到古埃及僅僅只是為了解決關於以下問題的爭論:1.存在為知識服務的知識,純數學就是一個最佳的例子:2.知識的發展不是由於消費者購物和奢華的需要而產生的。亞里士多德這種「天真」的觀點也許會遭到反對;但卻駁不倒它,因為沒有更令人信服的觀點.

就整體來說,古希臘人企圖創造兩種「科學」的方法論,一種是實體論,而另一種是他們的數學。亞里士多德的邏輯方法大約是介於二者之間的,而亞里士多德自己認為,在一般的意義上講他的方法無論如何只能是一種輔助方法。古希臘的實體論帶有明顯的巴門尼德的「存在」特徵,也受到赫拉克利特「理性」的輕微影響,實體論的特徵僅在以後的斯多葛派和其它希臘作品的翻譯中才表現出來。數學作為一種有效的方法論遠遠地超越了實體論,但不知什麼原因,數學的名字本身並不如「存在」和「理性」那樣響亮和受到肯定。然而,數學名稱的產生和出現,卻反映了古希臘人某些富於創造的特性。下面我們將說明數學這一名詞的來源。

「數學」一詞是來自希臘語,它意味著某種『已學會或被理解的東西』或「已獲得的知識」,甚至意味著「可獲的東西」, 「可學會的東西」,即「通過學習可獲得的知識」,數學名稱的這些意思似乎和梵文中的同根詞意思相同。甚至偉大的辭典編輯人利特雷(E.Littre 也是當時傑出的古典學者),在他編輯的法語字典(1877年)中也收入了「數學」一詞。牛津英語字典沒有參照梵文。公元10世紀的拜占庭希臘字典「Suidas」中,引出了「物理學」、「幾何學」和「算術」的詞條,但沒有直接列出「數學」—詞。

「數學」一詞從表示一般的知識到專門表示數學專業,經歷一個較長的過程,僅在亞里士多德時代,而不是在柏拉圖時代,這一過程才完成。數學名稱的專有化不僅在於其意義深遠,而在於當時古希臘只有「詩歌」一詞的專有化才能與數學名稱的專有化相媲美。「詩歌」原來的意思是「已經製造或完成的某些東西」,「詩歌」一詞的專有化在柏拉圖時代就完成了。而不知是什麼原因辭典編輯或涉及名詞專有化的知識問題從來沒有提到詩歌,也沒有提到詩歌與數學名稱專有化之間奇特的相似性。但數學名稱的專有化確實受到人們的注意。

首先,亞里士多德提出, 「數學」一詞的專門化使用是源於畢達哥拉斯的想法,但沒有任何資料表明對於起源於愛奧尼亞的自然哲學有類似的思考。其次在愛奧尼亞人中,只有泰勒斯(公元前640?--546年)在「純」數學方面的成就是可信的,因為除了第歐根尼·拉爾修(Diogenes Laertius)簡短提到外,這一可信性還有一個較遲的而直接的數學來源,即來源於普羅克洛斯(Proclus)對歐幾里得的評註:但這一可信性不是來源於亞里士多德,盡管他知道泰勒斯是一個「自然哲學家」;也不是來源於早期的希羅多德,盡管他知道塞利斯是一個政治、軍事戰術方面的「愛好者」,甚至還能預報日蝕。以上這些可能有助於解釋為什麼在柏拉圖的體系中,幾乎沒有愛奧尼亞的成份。赫拉克利特(公元前500--?年)有一段名言:「萬物都在運動中,物無常往」, 「人們不可能兩次落進同一條河裡」。這段名言使柏拉圖迷惑了,但赫拉克賴脫卻沒受到柏拉圖給予巴門尼德那樣的尊敬。巴門尼德的實體論,從方法論的角度講,比起赫拉克賴脫的變化論,更是畢達哥拉斯數學的強有力的競爭對手。

對於畢達哥拉斯學派來說,數學是一種「生活的方式」。事實上,從公元2世紀的拉丁作家格利烏斯(Gellius)和公元3世紀的希臘哲學家波菲利(Porphyry)以及公元4世紀的希臘哲學家揚布利科斯(Iamblichus)的某些證詞中看出,似乎畢達哥拉斯學派對於成年人有一個「一般的學位課程」,其中有正式登記者和臨時登記者。臨時成員稱為「旁聽者」,正式成員稱為「數學家」。

這里「數學家」僅僅表示一類成員,而並不是他們精通數學。畢達哥拉斯學派的精神經久不衰。對於那些被阿基米德神奇的發明所深深吸引的人來說,阿基米德是唯一的獨特的數學家,從理論的地位講,牛頓是一個數學家,盡管他也是半個物理學家,一般公眾和新聞記者寧願把愛因斯坦看作數學家,盡管他完全是物理學家。當羅吉爾·培根(Roger Bacon,1214--1292年)通過提倡接近科學的「實體論」,向他所在世紀提出挑戰時,他正將科學放進了一個數學的大框架,盡管他在數學上的造詣是有限的,當笛卡兒(Descartes,1596--1650年)還很年輕時就決心有所創新,於是他確定了「數學萬能論」的名稱和概念。然後萊布尼茨引用了非常類似的概念,並將其變成了以後產生的「符號」邏輯的基礎,而20世紀的「符號」邏輯變成了熱門的數理邏輯。

在18世紀,數學史的先驅作家蒙托克萊(Montucla)說,他已聽說了關於古希臘人首先稱數學為「一般知識」,這一事實有兩種解釋:一種解釋是,數學本身優於其它知識領域;而另一種解釋是,作為一般知識性的學科,數學在修辭學,辯證法,語法和倫理學等等之前就結構完整了。蒙托克萊接受了第二種解釋。他不同意第一種解釋,因為在普羅克洛斯關於歐幾里得的評注中,或在任何古代資料中,都沒有發現適合這種解釋的確證。然而19世紀的語源學家卻傾向於第一種解釋,而20世紀的古典學者卻又偏向第二種解釋。但我們發現這兩種解釋並不矛盾,即很早就有了數學且數學的優越性是無與倫比的。

G. 數學的來歷

http://ke..com/view/1284.html?wtp=tt

數學是研究數量、結構、變化以及空間模型等概念的一門學科。通過抽象化和邏輯推理的使用,由計數、計算、量度和對物體形狀及運動的觀察中產生。數學家們拓展這些概念,為了公式化新的猜想以及從合適選定的公理及定義中建立起嚴謹推導出的真理。
數學屬性是任何事物的可量度屬性,即數學屬性是事物最基本的屬性。可量度屬性的存在與參數無關,但其結果卻取決於參數的選擇。例如:時間,不管用年、月、日還是用時、分、秒來量度;空間,不管用米、微米還是用英寸、光年來量度,它們的可量度屬性永遠存在,但結果的准確性與這些參照系數有關。
數學是研究現實世界中數量關系和空間形式的科學。簡單地說,是研究數和形的科學。由於生活和勞動上的需求,即使是最原始的民族,也知道簡單的計數,並由用手指或實物計數發展到用數字計數。
基礎數學的知識與運用總是個人與團體生活中不可或缺的一塊。其基本概念的精煉早在古埃及、美索不達米亞及古印度內的古代數學文本內便可觀見。從那時開始,其發展便持續不斷地有小幅的進展,直至16世紀的文藝復興時期,因著和新科學發現相作用而生成的數學革新導致了知識的加速,直至今日。
今日,數學被使用在世界上不同的領域上,包括科學、工程、醫學和經濟學等。數學對這些領域的應用通常被稱為應用數學,有時亦會激起新的數學發現,並導致全新學科的發展。數學家亦研究沒有任何實際應用價值的純數學,即使其應用常會在之後被發現。
創立於二十世紀三十年代的法國的布爾巴基學派認為:數學,至少純粹數學,是研究抽象結構的理論。結構,就是以初始概念和公理出發的演繹系統。布學派認為,有三種基本的抽象結構:代數結構(群,環,域……),序結構(偏序,全序……),拓撲結構(鄰域,極限,連通性,維數……)。
編輯本段詞源
數學(mathematics;希臘語:μαθηματικά)這一詞在西方源自於古希臘語的μάθημα(máthēma),其有學習、學問、科學,以及另外還有個較狹意且技術性的意義-「數學研究」,即使在其語源內。其形容詞μαθηματικός(mathēmatikós),意義為和學習有關的或用功的,亦會被用來指數學的。其在英語中表面上的復數形式,及在法語中的表面復數形式les mathématiques,可溯至拉丁文的中性復數mathematica,由西塞羅譯自希臘文復數τα μαθηματικά(ta mathēmatiká),此一希臘語被亞里士多德拿來指「萬物皆數」的概念。
(拉丁文:Mathemetica)原意是數和數數的技術。
我國古代把數學叫算術,又稱算學,後來才改為數學。
編輯本段歷史
奇普,印加帝國時所使用的計數工具。數學,起源於人類早期的生產活動,為中國古代六藝之一,亦被古希臘學者視為哲學之起點。數學的希臘語μαθηματικός(mathematikós)意思是「學問的基礎」,源於μάθημα(máthema)(「科學,知識,學問」)。
數學的演進大約可以看成是抽象化的持續發展,或是題材的延展。第一個被抽象化的概念大概是數字,其對兩個蘋果及兩個橘子之間有某樣相同事物的認知是人類思想的一大突破。 除了認知到如何去數實際物質的數量,史前的人類亦了解了如何去數抽象物質的數量,如時間-日、季節和年。算術(加減乘除)也自然而然地產生了。古代的石碑亦證實了當時已有幾何的知識。
更進一步則需要寫作或其他可記錄數字的系統,如符木或於印加帝國內用來儲存數據的奇普。歷史上曾有過許多且分歧的記數系統。
從歷史時代的一開始,數學內的主要原理是為了做稅務和貿易等相關計算,為了了解數字間的關系,為了測量土地,以及為了預測天文事件而形成的。這些需要可以簡單地被概括為數學對數量、結構、空間及時間方面的研究。
到了16世紀,算術、初等代數、以及三角學等初等數學已大體完備。17世紀變數概念的產生使人們開始研究變化中的量與量的互相關系和圖形間的互相變換。在研究經典力學的過程中,微積分的方法被發明。隨著自然科學和技術的進一步發展,為研究數學基礎而產生的集合論和數理邏輯等也開始慢慢發展。
數學從古至今便一直不斷地延展,且與科學有豐富的相互作用,並使兩者都得到好處。數學在歷史上有著許多的發現,並且直至今日都還不斷地發現中。依據Mikhail B. Sevryuk於美國數學會通報2006年1月的期刊中所說,「存在於數學評論資料庫中論文和書籍的數量自1940年(數學評論的創刊年份)現已超過了一百九十萬份,而且每年還增加超過七萬五千份的細目。此一學海的絕大部份為新的數學定理及其證明。」
編輯本段中國數學歷史
數學古稱算學,是中國古代科學中一門重要的學科,根據中國古代數學發展的特點,可以分為五個時期:萌芽;體系的形成;發展;繁榮和中西方數學的融合。
中國古代數學的萌芽
原始公社末期,私有制和貨物交換產生以後,數與形的概念有了進一步的發展,仰韶文化時期出土的陶器,上面已刻有表示1234的符號。到原始公社末期,已開始用文字元號取代結繩記事了。
西安半坡出土的陶器有用1~8個圓點組成的等邊三角形和分正方形為100個小正方形的圖案,半坡遺址的房屋基址都是圓形和方形。為了畫圓作方,確定平直,人們還創造了規、矩、准、繩等作圖與測量工具。據《史記·夏本紀》記載,夏禹治水時已使用了這些工具。
商代中期,在甲骨文中已產生一套十進制數字和記數法,其中最大的數字為三萬;與此同時,殷人用十個天乾和十二個地支組成甲子、乙丑、丙寅、丁卯等60個名稱來記60天的日期;在周代,又把以前用陰、陽符號構成的八卦表示八種事物發展為六十四卦,表示64種事物。
公元前一世紀的《周髀算經》提到西周初期用矩測量高、深、廣、遠的方法,並舉出勾股形的勾三、股四、弦五以及環矩可以為圓等例子。《禮記·內則》篇提到西周貴族子弟從九歲開始便要學習數目和記數方法,他們要受禮、樂、射、馭、書、數的訓練,作為「六藝」之一的數已經開始成為專門的課程。
春秋戰國之際,籌算已得到普遍的應用,籌算記數法已使用十進位值制,這種記數法對世界數學的發展是有劃時代意義的。這個時期的測量數學在生產上有了廣泛應用,在數學上亦有相應的提高。
戰國時期的百家爭鳴也促進了數學的發展,尤其是對於正名和一些命題的爭論直接與數學有關。名家認為經過抽象以後的名詞概念與它們原來的實體不同,他們提出「矩不方,規不可以為圓」,把「大一」(無窮大)定義為「至大無外」,「小一」(無窮小)定義為「至小無內」。還提出了「一尺之棰,日取其半,萬世不竭」等命題。
而墨家則認為名來源於物,名可以從不同方面和不同深度反映物。墨家給出一些數學定義。例如圓、方、平、直、次(相切)、端(點)等等。
墨家不同意「一尺之棰」的命題,提出一個「非半」的命題來進行反駁:將一線段按一半一半地無限分割下去,就必將出現一個不能再分割的「非半」,這個「非半」就是點。
名家的命題論述了有限長度可分割成一個無窮序列,墨家的命題則指出了這種無限分割的變化和結果。名家和墨家的數學定義和數學命題的討論,對中國古代數學理論的發展是很有意義的。
中國古代數學體系的形成
秦漢是封建社會的上升時期,經濟和文化均得到迅速發展。中國古代數學體系正是形成於這個時期,它的主要標志是算術已成為一個專門的學科,以及以《九章算術》為代表的數學著作的出現。
《九章算術》是戰國、秦、漢封建社會創立並鞏固時期數學發展的總結,就其數學成就來說,堪稱是世界數學名著。例如分數四則運算、今有術(西方稱三率法)、開平方與開立方(包括二次方程數值解法)、盈不足術(西方稱雙設法)、各種面積和體積公式、線性方程組解法、正負數運算的加減法則、勾股形解法(特別是勾股定理和求勾股數的方法)等,水平都是很高的。其中方程組解法和正負數加減法則在世界數學發展上是遙遙領先的。就其特點來說,它形成了一個以籌算為中心、與古希臘數學完全不同的獨立體系。
《九章算術》有幾個顯著的特點:採用按類分章的數學問題集的形式;算式都是從籌算記數法發展起來的;以算術、代數為主,很少涉及圖形性質;重視應用,缺乏理論闡述等。
這些特點是同當時社會條件與學術思想密切相關的。秦漢時期,一切科學技術都要為當時確立和鞏固封建制度,以及發展社會生產服務,強調數學的應用性。最後成書於東漢初年的《九章算術》,排除了戰國時期在百家爭鳴中出現的名家和墨家重視名詞定義與邏輯的討論,偏重於與當時生產、生活密切相結合的數學問題及其解法,這與當時社會的發展情況是完全一致的。
《九章算術》在隋唐時期曾傳到朝鮮、日本,並成為這些國家當時的數學教科書。它的一些成就如十進位值制、今有術、盈不足術等還傳到印度和阿拉伯,並通過印度、阿拉伯傳到歐洲,促進了世界數學的發展。
中國古代數學的發展
魏、晉時期出現的玄學,不為漢儒經學束縛,思想比較活躍;它詰辯求勝,又能運用邏輯思維,分析義理,這些都有利於數學從理論上加以提高。吳國趙爽注《周髀算經》,漢末魏初徐岳撰《九章算術》注,魏末晉初劉徽撰《九章算術》注、《九章重差圖》都是出現在這個時期。趙爽與劉徽的工作為中國古代數學體系奠定了理論基礎。
趙爽是中國古代對數學定理和公式進行證明與推導的最早的數學家之一。他在《周髀算經》書中補充的「勾股圓方圖及注」和「日高圖及注」是十分重要的數學文獻。在「勾股圓方圖及注」中他提出用弦圖證明勾股定理和解勾股形的五個公式;在「日高圖及注」中,他用圖形面積證明漢代普遍應用的重差公式,趙爽的工作是帶有開創性的,在中國古代數學發展中佔有重要地位。
劉徽約與趙爽同時,他繼承和發展了戰國時期名家和墨家的思想,主張對一些數學名詞特別是重要的數學概念給以嚴格的定義,認為對數學知識必須進行「析理」,才能使數學著作簡明嚴密,利於讀者。他的《九章算術》注不僅是對《九章算術》的方法、公式和定理進行一般的解釋和推導,而且在論述的過程中有很大的發展。劉徽創造割圓術,利用極限的思想證明圓的面積公式,並首次用理論的方法算得圓周率為 157/50和 3927/1250。
劉徽用無窮分割的方法證明了直角方錐與直角四面體的體積比恆為2:1,解決了一般立體體積的關鍵問題。在證明方錐、圓柱、圓錐、圓台的體積時,劉徽為徹底解決球的體積提出了正確途徑。
東晉以後,中國長期處於戰爭和南北分裂的狀態。祖沖之父子的工作就是經濟文化南移以後,南方數學發展的具有代表性的工作,他們在劉徽注《九章算術》的基礎上,把傳統數學大大向前推進了一步。他們的數學工作主要有:計算出圓周率在3.1415926~3.1415927之間;提出祖(日恆)原理;提出二次與三次方程的解法等。
據推測,祖沖之在劉徽割圓術的基礎上,算出圓內接正6144邊形和正12288邊形的面積,從而得到了這個結果。他又用新的方法得到圓周率兩個分數值,即約率22/7和密率355/113。祖沖之這一工作,使中國在圓周率計算方面,比西方領先約一千年之久;
祖沖之之子祖(日恆)總結了劉徽的有關工作,提出「冪勢既同則積不容異」,即等高的兩立體,若其任意高處的水平截面積相等,則這兩立體體積相等,這就是著名的祖(日恆)公理。祖(日恆)應用這個公理,解決了劉徽尚未解決的球體積公式。
隋煬帝好大喜功,大興土木,客觀上促進了數學的發展。唐初王孝通的《緝古算經》,主要討論土木工程中計算土方、工程分工、驗收以及倉庫和地窖的計算問題,反映了這個時期數學的情況。王孝通在不用數學符號的情況下,立出數字三次方程,不僅解決了當時社會的需要,也為後來天元術的建立打下基礎。此外,對傳統的勾股形解法,王孝通也是用數字三次方程解決的。
唐初封建統治者繼承隋制,656年在國子監設立算學館,設有算學博士和助教,學生30人。由太史令李淳風等編纂注釋《算經十書》,作為算學館學生用的課本,明算科考試亦以這些算書為准。李淳風等編纂的《算經十書》,對保存數學經典著作、為數學研究提供文獻資料方面是很有意義的。他們給《周髀算經》、《九章算術》以及《海島算經》所作的註解,對讀者是有幫助的。隋唐時期,由於歷法的需要,天算學家創立了二次函數的內插法,豐富了中國古代數學的內容。
算籌是中國古代的主要計算工具,它具有簡單、形象、具體等優點,但也存在布籌佔用面積大,運籌速度加快時容易擺弄不正而造成錯誤等缺點,因此很早就開始進行改革。其中太乙算、兩儀算、三才算和珠算都是用珠的槽算盤,在技術上是重要的改革。尤其是「珠算」,它繼承了籌算五升十進與位值制的優點,又克服了籌算縱橫記數與置籌不便的缺點,優越性十分明顯。但由於當時乘除演算法仍然不能在一個橫列中進行。算珠還沒有穿檔,攜帶不方便,因此仍沒有普遍應用。
唐中期以後,商業繁榮,數字計算增多,迫切要求改革計算方法,從《新唐書》等文獻留下來的算書書目,可以看出這次演算法改革主要是簡化乘、除演算法,唐代的演算法改革使乘除法可以在一個橫列中進行運算,它既適用於籌算,也適用於珠算。
中國古代數學的繁榮
960年,北宋王朝的建立結束了五代十國割據的局面。北宋的農業、手工業、商業空前繁榮,科學技術突飛猛進,火葯、指南針、印刷術三大發明就是在這種經濟高漲的情況下得到廣泛應用。1084年秘書省第一次印刷出版了《算經十書》,1213年鮑擀之又進行翻刻。這些都為數學發展創造了良好的條件。
從11~14世紀約300年期間,出現了一批著名的數學家和數學著作,如賈憲的《黃帝九章演算法細草》,劉益的《議古根源》,秦九韶的《數書九章》,李冶的《測圓海鏡》和《益古演段》,楊輝的《詳解九章演算法》《日用演算法》和《楊輝演算法》,朱世傑的《算學啟蒙》《四元玉鑒》等,很多領域都達到古代數學的高峰,其中一些成就也是當時世界數學的高峰。
從開平方、開立方到四次以上的開方,在認識上是一個飛躍,實現這個飛躍的就是賈憲。楊輝在《九章演算法纂類》中載有賈憲「增乘開平方法」、「增乘開立方法」;在《詳解九章演算法》中載有賈憲的「開方作法本源」圖、「增乘方法求廉草」和用增乘開方法開四次方的例子。根據這些記錄可以確定賈憲已發現二項系數表,創造了增乘開方法。這兩項成就對整個宋元數學發生重大的影響,其中賈憲三角比西方的帕斯卡三角形早提出600多年。
把增乘開方法推廣到數字高次方程(包括系數為負的情形)解法的是劉益。《楊輝演算法》中「田畝比類乘除捷法」卷,介紹了原書中22個二次方程和 1個四次方程,後者是用增乘開方法解三次以上的高次方程的最早例子。
秦九韶是高次方程解法的集大成者,他在《數書九章》中收集了21個用增乘開方法解高次方程(最高次數為10)的問題。為了適應增乘開方法的計算程序,奏九韶把常數項規定為負數,把高次方程解法分成各種類型。當方程的根為非整數時,秦九韶採取繼續求根的小數,或用減根變換方程各次冪的系數之和為分母,常數為分子來表示根的非整數部分,這是《九章算術》和劉徽注處理無理數方法的發展。在求根的第二位數時,秦九韶還提出以一次項系數除常數項為根的第二位數的試除法,這比西方最早的霍納方法早500多年。
元代天文學家王恂、郭守敬等在《授時歷》中解決了三次函數的內插值問題。秦九韶在「綴術推星」題、朱世傑在《四元玉鑒》「如象招數」題都提到內插法(他們稱為招差術),朱世傑得到一個四次函數的內插公式。
用天元(相當於x)作為未知數符號,立出高次方程,古代稱為天元術,這是中國數學史上首次引入符號,並用符號運算來解決建立高次方程的問題。現存最早的天元術著作是李冶的《測圓海鏡》。
從天元術推廣到二元、三元和四元的高次聯立方程組,是宋元數學家的又一項傑出的創造。留傳至今,並對這一傑出創造進行系統論述的是朱世傑的《四元玉鑒》。
朱世傑的四元高次聯立方程組表示法是在天元術的基礎上發展起來的,他把常數放在中央,四元的各次冪放在上、下、左、右四個方向上,其他各項放在四個象限中。朱世傑的最大貢獻是提出四元消元法,其方法是先擇一元為未知數,其他元組成的多項式作為這未知數的系數,列成若干個一元高次方程式,然後應用互乘相消法逐步消去這一未知數。重復這一步驟便可消去其他未知數,最後用增乘開方法求解。這是線性方法組解法的重大發展,比西方同類方法早400多年。
勾股形解法在宋元時期有新的發展,朱世傑在《算學啟蒙》卷下提出已知勾弦和、股弦和求解勾股形的方法,補充了《九章算術》的不足。李冶在《測圓海鏡》對勾股容圓問題進行了詳細的研究,得到九個容圓公式,大大豐富了中國古代幾何學的內容。
已知黃道與赤道的夾角和太陽從冬至點向春分點運行的黃經余弧,求赤經余弧和赤緯度數,是一個解球面直角三角形的問題,傳統歷法都是用內插法進行計算。元代王恂、郭守敬等則用傳統的勾股形解法、沈括用會圓術和天元術解決了這個問題。不過他們得到的是一個近似公式,結果不夠精確。但他們的整個推算步驟是正確無誤的,從數學意義上講,這個方法開辟了通往球面三角法的途徑。
中國古代計算技術改革的高潮也是出現在宋元時期。宋元明的歷史文獻中載有大量這個時期的實用算術書目,其數量遠比唐代為多,改革的主要內容仍是乘除法。與演算法改革的同時,穿珠算盤在北宋可能已出現。但如果把現代珠算看成是既有穿珠算盤,又有一套完善的演算法和口訣,那麼應該說它最後完成於元代。
宋元數學的繁榮,是社會經濟發展和科學技術發展的必然結果,是傳統數學發展的必然結果。此外,數學家們的科學思想與數學思想也是十分重要的。宋元數學家都在不同程度上反對理學家的象數神秘主義。秦九韶雖曾主張數學與道學同出一源,但他後來認識到,「通神明」的數學是不存在的,只有「經世務類萬物」的數學;莫若在《四元玉鑒》序文中提出的「用假象真,以虛問實」則代表了高度抽象思維的思想方法;楊輝對縱橫圖結構進行研究,揭示出洛書的本質,有力地批判了象數神秘主義。所有這些,無疑是促進數學發展的重要因素。
中西方數學的融合
中國從明代開始進入了封建社會的晚期,封建統治者實行極權統治,宣傳唯心主義哲學,施行八股考試制度。在這種情況下,除珠算外,數學發展逐漸衰落。
16世紀末以後,西方初等數學陸續傳入中國,使中國數學研究出現一個中西融合貫通的局面;鴉片戰爭以後,近代數學開始傳入中國,中國數學便轉入一個以學習西方數學為主的時期;到19世紀末20世紀初,近代數學研究才真正開始。
從明初到明中葉,商品經濟有所發展,和這種商業發展相適應的是珠算的普及。明初《魁本對相四言雜字》和《魯班木經》的出現,說明珠算已十分流行。前者是兒童看圖識字的課本,後者把算盤作為家庭必需用品列入一般的木器傢具手冊中。
隨著珠算的普及,珠算演算法和口訣也逐漸趨於完善。例如王文素和程大位增加並改善撞歸、起一口訣;徐心魯和程大位增添加、減口訣並在除法中廣泛應用歸除,從而實現了珠算四則運算的全部口訣化;朱載墒和程大位把籌算開平方和開立方的方法應用到珠算,程大位用珠算解數字二次、三次方程等等。程大位的著作在國內外流傳很廣,影響很大。
1582年,義大利傳教士利瑪竇到中國,1607年以後,他先後與徐光啟翻譯了《幾何原本》前六卷、《測量法義》一卷,與李之藻編譯《圜容較義》和《同文算指》。1629年,徐光啟被禮部任命督修歷法,在他主持下,編譯《崇禎歷書》137卷。《崇禎歷書》主要是介紹歐洲天文學家第谷的地心學說。作為這一學說的數學基礎,希臘的幾何學,歐洲玉山若乾的三角學,以及納皮爾算籌、伽利略比例規等計算工具也同時介紹進來。
在傳入的數學中,影響最大的是《幾何原本》。《幾何原本》是中國第一部數學翻譯著作,絕大部分數學名詞都是首創,其中許多至今仍在沿用。徐光啟認為對它「不必疑」、「不必改」,「舉世無一人不當學」。《幾何原本》是明清兩代數學家必讀的數學書,對他們的研究工作頗有影響。
其次應用最廣的是三角學,介紹西方三角學的著作有《大測》《割圓八線表》和《測量全義》。《大測》主要說明三角八線(正弦、餘弦、正切、餘切、正割、餘割、正矢、余矢)的性質,造表方法和用表方法。《測量全義》除增加一些《大測》所缺的平面三角外,比較重要的是積化和差公式和球面三角。所有這些,在當時歷法工作中都是隨譯隨用的。
1646年,波蘭傳教士穆尼閣來華,跟隨他學習西方科學的有薛鳳柞、方中通等。穆尼閣去世後,薛鳳柞據其所學,編成《歷學會通》,想把中法西法融會貫通起來。《歷學會通》中的數學內容主要有比例對數表》《比例四線新表》和《三角演算法》。前兩書是介紹英國數學家納皮爾和布里格斯發明增修的對數。後一書除《崇禎歷書》介紹的球面三角外,尚有半形公式、半弧公式、德氏比例式、納氏比例式等。方中通所著《數度衍》對對數理論進行解釋。對數的傳入是十分重要,它在歷法計算中立即就得到應用。
清初學者研究中西數學有心得而著書傳世的很多,影響較大的有王錫闡《圖解》、梅文鼎《梅氏叢書輯要》(其中數學著作13種共40卷)、年希堯《視學》等。梅文鼎是集中西數學之大成者。他對傳統數學中的線性方程組解法、勾股形解法和高次冪求正根方法等方面進行整理和研究,使瀕於枯萎的明代數學出現了生機。年希堯的《視學》是中國第一部介紹西方透視學的著作。
清康熙皇帝十分重視西方科學,他除了親自學習天文數學外,還培養了一些人才和翻譯了一些著作。1712年康熙皇帝命梅彀成任蒙養齋匯編官,會同陳厚耀、何國宗、明安圖、楊道聲等編纂天文演算法書。1721年完成《律歷淵源》100卷,以康熙「御定」的名義於1723年出版。其中《數理精蘊》主要由梅彀成負責,分上下兩編,上編包括《幾何原本》、《演算法原本》,均譯自法文著作;下編包括算術、代數、平面幾何平面三角、立體幾何等初等數學,附有素數表、對數表和三角函數表。由於它是一部比較全面的初等數學網路全書,並有康熙「御定」的名義,因此對當時數學研究有一定影響。
綜上述可以看到,清代數學家對西方數學做了大量的會通工作,並取得許多獨創性的成果。這些成果,如和傳統數學比較,是有進步的,但和同時代的西方比較則明顯落後了。
雍正即位以後,對外閉關自守,導致西方科學停止輸入中國,對內實行高壓政策,致使一般學者既不能接觸西方數學,又不敢過問經世致用之學,因而埋頭於究治古籍。乾嘉年間逐漸形成一個以考據學為主的乾嘉學派。
隨著《算經十書》與宋元數學著作的收集與注釋,出現了一個研究傳統數學的高潮。其中能突破舊有框框並有發明創造的有焦循、汪萊、李銳、李善蘭等。他們的工作,和宋元時代的代數學比較是青出於藍而勝於藍的;和西方代數學比較,在時間上晚了一些,但這些成果是在沒有受到西方近代數學的影響下獨立得到的。
與傳統數學研究出現高潮的同時,阮元與李銳等編寫了一部天文數學家傳記—《疇人傳》,收集了從黃帝時期到嘉慶四年已故的天文學家和數學家270餘人(其中有數學著作傳世的不足50人),和明末以來介紹西方天文數學的傳教士41人。這部著作全由「掇拾史書,荃萃群籍,甄而錄之」而成,收集的完全是第一手的原始資料,在學術界頗有影響。
1840年鴉片戰爭以後,西方近代數學開始傳入中國。首先是英人在上海設立墨海書館,介紹西方數學。第二次鴉片戰爭後,曾國藩、李鴻章等官僚集團開展「洋務運動」,也主張介紹和學習西方數學,組織翻譯了一批近代數學著作。
其中較重要的有李善蘭與偉烈亞力翻譯的《代數學》《代微積拾級》;華蘅芳與英人傅蘭雅合譯的《代數術》《微積溯源》《決疑數學》;鄒立文與狄考文編譯的《形學備旨》《代數備旨》《筆算數學》;謝洪賚與潘慎文合譯的《代形合參》《八線備旨》等等。
《代微積拾級》是中國第一部微積分學譯本;《代數學》是英國數學家德·摩根所著的符號代數學譯本;《決疑數學》是第一部概率論譯本。在這些譯著中,創造了許多數學名詞和術語,至今還在應用,但所用數學符號一般已被淘汰了。戊戌變法以後,各地興辦新法學校,上述一些著作便成為主要教科書。
在翻譯西方數學著作的同時,中國學者也進行一些研究,寫出一些著作,較重要的有李善蘭的《《尖錐變法解》《考數根法》;夏彎翔的《洞方術圖解》《致曲術》《致曲圖解》等等,都是會通中西學術思想的研究成果。
由於輸入的近代數學需要一個消化吸收的過程,加上清末統治者十分腐敗,在太平天國運動的沖擊下,在帝國主義列強的掠奪下,焦頭爛額,無暇顧及數學研究。直到1919年五四運動以後,中國近代數學的研究才真正開始。

H. 3D專業名詞解釋大全

3D API (3D應用程序介面)
Application Programming Interface(API)應用程序介面,是許多程序的大集合。3D API能讓編程人員所設計的3D軟體只要調用其API內的程序,從而讓API自動和硬體的驅動程序溝通,啟動3D晶元內強大的3D圖形處理功能,從而大幅度地提高了3D程序的設計效率。幾乎所有的3D加速晶元都有自己專用的3D API,目前普遍應用的3D API有DirectX、OpenGL、Glide、Heidi等。

Direct 3D
微軟公司於1996年為PC開發的API,與Windows 95 、Windows NT和Power Mac操作系統兼容性好,可繞過圖形顯示介面(GDI)直接進行支持該API的各種硬體的底層操作,大大提高了游戲的運行速度,而且目前基本上是免費使用的。由於要考慮與各方面的兼容性,DirectX用起來比較麻煩、在執行效率上也未見得最優,在實際3DS MAX的運用中效果一般,還會發生顯示錯誤,不過總比用軟體加速快。

OpenGL (開放式圖形介面)
是由SGI公司開發的IRIS GL演變而來的復雜3D圖形設計的標准應用程序介面。它的特點是可以在不同的平台之間進行移植;還可以在客戶機/伺服器系統中並行工作。效率遠比Direct 3D高,所以是各3D游戲開發商優先選用的3D API。不過,這樣一來就使得許多精美的3D游戲在剛推出時,只支持3Dfx公司的VOODOO系列3D加速卡,而其它類型的3D加速卡則要等待其生產廠商提供該游戲的補丁程序。由於游戲用的3D加速卡提供的OpenGL庫都不完整,因此,在3DS MAX中也會發生顯示錯誤,但要比Direct 3D強多了!

Heidi
又稱為Quick Draw 3D,是由Autodesk公司提出來的規格。它是採用純粹的立即模式介面,能夠直接對圖形硬體進行控制;可以調用所有顯示卡的硬體加速功能。目前,採用Heidi系統的應用程序包括3D Studio MAX動畫製作程序、Auto CAD和3D Studio VIZ等軟體。Autodesk公司為這些軟體單獨開發WHIP加速驅動程序,因此性能優異是非常明顯的!

Glide
是由3dfx公司開發的Voodoo系列專用的3D API。它是第一個PC游戲領域中得到廣泛應用的程序介面,它的最大特點是易用和穩定。隨著D3D和OpenGL的興起,已逐漸失去了原來的地位。

PowerSGL
是NEC公司PowerVR系列晶元專用的程序介面。

3D特性: Alpha Blending (α混合)
簡單地說這是一種讓3D物件產生透明感的技術。屏幕上顯示的3D物件,每個像素中有紅、綠、藍三組數值。若3D環境中允許像素能擁有一組α值,我們就稱它擁有一個α通道。α值的內容,是記載像素的透明度。這樣一來使得每一個物件都可以擁有不同的透明程度。比如說,玻璃會擁有很高的透明度,而一塊木頭可能就沒什麼透明度可言。α混合這個功能,就是處理兩個物件在螢幕畫面上疊加的時候,還會將α值列入考慮,使其呈現接近真實物件的效果。

Fog Effect (霧化效果)
霧化效果是3D的比較常見的特性,在游戲中見到的煙霧、爆炸火焰以及白雲等效果都是霧化的結果。它的功能就是製造一塊指定的區域籠罩在一股煙霧彌漫之中的效果,這樣可以保證遠景的真實性,而且也減小了3D圖形的渲染工作量。

Attenuation (衰減)
在真實世界中,光線的強度會隨距離的增大而遞減。這是因為受到了空氣中微粒的衍射影響,而在3D Studio MAX中,場景處於理想的「真空」中,理論上無這種現象出現。但這種現象與現實世界不符,因此為了達到模擬真實的效果,在燈光中加入該選項,就能人為的產生這種效果!

Perspective Correction (透視角修正處理)
它是採用數學運算的方式,以確保貼在物件上的部分影像圖,會向透視的消失方向貼出正確的收斂。

Anti-aliasing (抗鋸齒處理)
簡單地說主要是應用調色技術將圖形邊緣的「鋸齒」緩和,邊緣更平滑。抗鋸齒是相對來來說較復雜的技術,一直是高檔加速卡的一個主要特徵。目前的低檔3D加速卡大多不支持反鋸齒。

I. 大數據爬蟲技術有什麼功能

1、爬蟲技術概述
網路爬蟲(Web crawler),是一種按照一定的規則,自動地抓取萬維網信息的程序或者腳本,它們被廣泛用於互聯網搜索引擎或其他類似網站,可以自動採集所有其能夠訪問到的頁面內容,以獲取或更新這些網站的內容和檢索方式。從功能上來講,爬蟲一般分為數據採集,處理,儲存三個部分。
傳統爬蟲從一個或若干初始網頁的URL開始,獲得初始網頁上的URL,在抓取網頁的過程中,不斷從當前頁面上抽取新的URL放入隊列,直到滿足系統的一定停止條件。聚焦爬蟲的工作流程較為復雜,需要根據一定的網頁分析演算法過濾與主題無關的鏈接,保留有用的鏈接並將其放入等待抓取的URL隊列。然後,它將根據一定的搜索策略從隊列中選擇下一步要抓取的網頁URL,並重復上述過程,直到達到系統的某一條件時停止。另外,所有被爬蟲抓取的網頁將會被系統存貯,進行一定的分析、過濾,並建立索引,以便之後的查詢和檢索;對於聚焦爬蟲來說,這一過程所得到的分析結果還可能對以後的抓取過程給出反饋和指導。
相對於通用網路爬蟲,聚焦爬蟲還需要解決三個主要問題:
(1) 對抓取目標的描述或定義;
(2) 對網頁或數據的分析與過濾;
(3) 對URL的搜索策略。

2、爬蟲原理
2.1 網路爬蟲原理
Web網路爬蟲系統的功能是下載網頁數據,為搜索引擎系統提供數據來源。很多大型的網路搜索引擎系統都被稱為基於 Web數據採集的搜索引擎系統,比如 Google、Bai。由此可見Web 網路爬蟲系統在搜索引擎中的重要性。網頁中除了包含供用戶閱讀的文字信息外,還包含一些超鏈接信息。Web網路爬蟲系統正是通過網頁中的超連接信息不斷獲得網路上的其它網頁。正是因為這種採集過程像一個爬蟲或者蜘蛛在網路上漫遊,所以它才被稱為網路爬蟲系統或者網路蜘蛛系統,在英文中稱為Spider或者Crawler。

2.2 網路爬蟲系統的工作原理
在網路爬蟲的系統框架中,主過程由控制器,解析器,資源庫三部分組成。控制器的主要工作是負責給多線程中的各個爬蟲線程分配工作任務。解析器的主要工作是下載網頁,進行頁面的處理,主要是將一些JS腳本標簽、CSS代碼內容、空格字元、HTML標簽等內容處理掉,爬蟲的基本工作是由解析器完成。資源庫是用來存放下載到的網頁資源,一般都採用大型的資料庫存儲,如Oracle資料庫,並對其建立索引。
控制器
控制器是網路爬蟲的**控制器,它主要是負責根據系統傳過來的URL鏈接,分配一線程,然後啟動線程調用爬蟲爬取網頁的過程。
解析器
解析器是負責網路爬蟲的主要部分,其負責的工作主要有:下載網頁的功能,對網頁的文本進行處理,如過濾功能,抽取特殊HTML標簽的功能,分析數據功能。
資源庫
主要是用來存儲網頁中下載下來的數據記錄的容器,並提供生成索引的目標源。中大型的資料庫產品有:Oracle、Sql Server等。

Web網路爬蟲系統一般會選擇一些比較重要的、出度(網頁中鏈出超鏈接數)較大的網站的URL作為種子URL集合。網路爬蟲系統以這些種子集合作為初始URL,開始數據的抓取。因為網頁中含有鏈接信息,通過已有網頁的 URL會得到一些新的 URL,可以把網頁之間的指向結構視為一個森林,每個種子URL對應的網頁是森林中的一棵樹的根節點。這樣,Web網路爬蟲系統就可以根據廣度優先演算法或者深度優先演算法遍歷所有的網頁。由於深度優先搜索演算法可能會使爬蟲系統陷入一個網站內部,不利於搜索比較靠近網站首頁的網頁信息,因此一般採用廣度優先搜索演算法採集網頁。Web網路爬蟲系統首先將種子URL放入下載隊列,然後簡單地從隊首取出一個URL下載其對應的網頁。得到網頁的內容將其存儲後,再經過解析網頁中的鏈接信息可以得到一些新的URL,將這些URL加入下載隊列。然後再取出一個URL,對其對應的網頁進行下載,然後再解析,如此反復進行,直到遍歷了整個網路或者滿足某種條件後才會停止下來。

網路爬蟲的基本工作流程如下:
1.首先選取一部分精心挑選的種子URL;
2.將這些URL放入待抓取URL隊列;
3.從待抓取URL隊列中取出待抓取在URL,解析DNS,並且得到主機的ip,並將URL對應的網頁下載下來,存儲進已下載網頁庫中。此外,將這些URL放進已抓取URL隊列;
4.分析已抓取URL隊列中的URL,分析其中的其他URL,並且將URL放入待抓取URL隊列,從而進入下一個循環。

2.3 抓取策略
在爬蟲系統中,待抓取URL隊列是很重要的一部分。待抓取URL隊列中的URL以什麼樣的順序排列也是一個很重要的問題,因為這涉及到先抓取那個頁面,後抓取哪個頁面。而決定這些URL排列順序的方法,叫做抓取策略。下面重點介紹幾種常見的抓取策略:
2.3.1 深度優先遍歷策略
深度優先遍歷策略是指網路爬蟲會從起始頁開始,一個鏈接一個鏈接跟蹤下去,處理完這條線路之後再轉入下一個起始頁,繼續跟蹤鏈接。我們以下面的圖為例:
遍歷的路徑:A-F-G E-H-I B C D

2.3.2 寬度優先遍歷策略
寬度優先遍歷策略的基本思路是,將新下載網頁中發現的鏈接直接**待抓取URL隊列的末尾。也就是指網路爬蟲會先抓取起始網頁中鏈接的所有網頁,然後再選擇其中的一個鏈接網頁,繼續抓取在此網頁中鏈接的所有網頁。還是以上面的圖為例:
遍歷路徑:A-B-C-D-E-F G H I
2.3.3 反向鏈接數策略
反向鏈接數是指一個網頁被其他網頁鏈接指向的數量。反向鏈接數表示的是一個網頁的內容受到其他人的推薦的程度。因此,很多時候搜索引擎的抓取系統會使用這個指標來評價網頁的重要程度,從而決定不同網頁的抓取先後順序。
在真實的網路環境中,由於廣告鏈接、作弊鏈接的存在,反向鏈接數不能完全等他我那個也的重要程度。因此,搜索引擎往往考慮一些可靠的反向鏈接數。
2.3.4 Partial PageRank策略
Partial PageRank演算法借鑒了PageRank演算法的思想:對於已經下載的網頁,連同待抓取URL隊列中的URL,形成網頁集合,計算每個頁面的PageRank值,計算完之後,將待抓取URL隊列中的URL按照PageRank值的大小排列,並按照該順序抓取頁面。
如果每次抓取一個頁面,就重新計算PageRank值,一種折中方案是:每抓取K個頁面後,重新計算一次PageRank值。但是這種情況還會有一個問題:對於已經下載下來的頁面中分析出的鏈接,也就是我們之前提到的未知網頁那一部分,暫時是沒有PageRank值的。為了解決這個問題,會給這些頁面一個臨時的PageRank值:將這個網頁所有入鏈傳遞進來的PageRank值進行匯總,這樣就形成了該未知頁面的PageRank值,從而參與排序。
2.3.5 OPIC策略策略
該演算法實際上也是對頁面進行一個重要性打分。在演算法開始前,給所有頁面一個相同的初始現金(cash)。當下載了某個頁面P之後,將P的現金分攤給所有從P中分析出的鏈接,並且將P的現金清空。對於待抓取URL隊列中的所有頁面按照現金數進行排序。
2.3.6 大站優先策略
對於待抓取URL隊列中的所有網頁,根據所屬的網站進行分類。對於待下載頁面數多的網站,優先下載。這個策略也因此叫做大站優先策略。
3、爬蟲分類
開發網路爬蟲應該選擇Nutch、Crawler4j、WebMagic、scrapy、WebCollector還是其他的?上面說的爬蟲,基本可以分3類:
(1)分布式爬蟲:Nutch

(2)JAVA爬蟲:Crawler4j、WebMagic、WebCollector

(3)非JAVA爬蟲:scrapy(基於Python語言開發)
3.1 分布式爬蟲
爬蟲使用分布式,主要是解決兩個問題:
1)海量URL管理
2)網速
現在比較流行的分布式爬蟲,是Apache的Nutch。但是對於大多數用戶來說,Nutch是這幾類爬蟲里,最不好的選擇,理由如下:
1)Nutch是為搜索引擎設計的爬蟲,大多數用戶是需要一個做精準數據爬取(精抽取)的爬蟲。Nutch運行的一套流程里,有三分之二是為了搜索引擎而設計的。對精抽取沒有太大的意義。也就是說,用Nutch做數據抽取,會浪費很多的時間在不必要的計算上。而且如果你試圖通過對Nutch進行二次開發,來使得它適用於精抽取的業務,基本上就要破壞Nutch的框架,把Nutch改的面目全非,有修改Nutch的能力,真的不如自己重新寫一個分布式爬蟲框架了。
2)Nutch依賴hadoop運行,hadoop本身會消耗很多的時間。如果集群機器數量較少,爬取速度反而不如單機爬蟲快。
3)Nutch雖然有一套插件機制,而且作為亮點宣傳。可以看到一些開源的Nutch插件,提供精抽取的功能。但是開發過Nutch插件的人都知道,Nutch的插件系統有多蹩腳。利用反射的機制來載入和調用插件,使得程序的編寫和調試都變得異常困難,更別說在上面開發一套復雜的精抽取系統了。而且Nutch並沒有為精抽取提供相應的插件掛載點。Nutch的插件有隻有五六個掛載點,而這五六個掛載點都是為了搜索引擎服務的,並沒有為精抽取提供掛載點。大多數Nutch的精抽取插件,都是掛載在「頁面解析」(parser)這個掛載點的,這個掛載點其實是為了解析鏈接(為後續爬取提供URL),以及為搜索引擎提供一些易抽取的網頁信息(網頁的meta信息、text文本)。
4)用Nutch進行爬蟲的二次開發,爬蟲的編寫和調試所需的時間,往往是單機爬蟲所需的十倍時間不止。了解Nutch源碼的學**成本很高,何況是要讓一個團隊的人都讀懂Nutch源碼。調試過程中會出現除程序本身之外的各種問題(hadoop的問題、hbase的問題)。
5)很多人說Nutch2有gora,可以持久化數據到avro文件、hbase、mysql等。很多人其實理解錯了,這里說的持久化數據,是指將URL信息(URL管理所需要的數據)存放到avro、hbase、mysql。並不是你要抽取的結構化數據。其實對大多數人來說,URL信息存在哪裡無所謂。
6)Nutch2的版本目前並不適合開發。官方現在穩定的Nutch版本是nutch2.2.1,但是這個版本綁定了gora-0.3。如果想用hbase配合nutch(大多數人用nutch2就是為了用hbase),只能使用0.90版本左右的hbase,相應的就要將hadoop版本降到hadoop 0.2左右。而且nutch2的官方教程比較有誤導作用,Nutch2的教程有兩個,分別是Nutch1.x和Nutch2.x,這個Nutch2.x官網上寫的是可以支持到hbase 0.94。但是實際上,這個Nutch2.x的意思是Nutch2.3之前、Nutch2.2.1之後的一個版本,這個版本在官方的SVN中不斷更新。而且非常不穩定(一直在修改)。
所以,如果你不是要做搜索引擎,盡量不要選擇Nutch作為爬蟲。有些團隊就喜歡跟風,非要選擇Nutch來開發精抽取的爬蟲,其實是沖著Nutch的名氣,當然最後的結果往往是項目延期完成。
如果你是要做搜索引擎,Nutch1.x是一個非常好的選擇。Nutch1.x和solr或者es配合,就可以構成一套非常強大的搜索引擎了。如果非要用Nutch2的話,建議等到Nutch2.3發布再看。目前的Nutch2是一個非常不穩定的版本。

3.2 JAVA爬蟲
這里把JAVA爬蟲單獨分為一類,是因為JAVA在網路爬蟲這塊的生態圈是非常完善的。相關的資料也是最全的。這里可能有爭議,我只是隨便談談。
其實開源網路爬蟲(框架)的開發非常簡單,難問題和復雜的問題都被以前的人解決了(比如DOM樹解析和定位、字元集檢測、海量URL去重),可以說是毫無技術含量。包括Nutch,其實Nutch的技術難點是開發hadoop,本身代碼非常簡單。網路爬蟲從某種意義來說,類似遍歷本機的文件,查找文件中的信息。沒有任何難度可言。之所以選擇開源爬蟲框架,就是為了省事。比如爬蟲的URL管理、線程池之類的模塊,誰都能做,但是要做穩定也是需要一段時間的調試和修改的。
對於爬蟲的功能來說。用戶比較關心的問題往往是:
1)爬蟲支持多線程么、爬蟲能用代理么、爬蟲會爬取重復數據么、爬蟲能爬取JS生成的信息么?
不支持多線程、不支持代理、不能過濾重復URL的,那都不叫開源爬蟲,那叫循環執行http請求。
能不能爬js生成的信息和爬蟲本身沒有太大關系。爬蟲主要是負責遍歷網站和下載頁面。爬js生成的信息和網頁信息抽取模塊有關,往往需要通過模擬瀏覽器(htmlunit,selenium)來完成。這些模擬瀏覽器,往往需要耗費很多的時間來處理一個頁面。所以一種策略就是,使用這些爬蟲來遍歷網站,遇到需要解析的頁面,就將網頁的相關信息提交給模擬瀏覽器,來完成JS生成信息的抽取。
2)爬蟲可以爬取ajax信息么?
網頁上有一些非同步載入的數據,爬取這些數據有兩種方法:使用模擬瀏覽器(問題1中描述過了),或者分析ajax的http請求,自己生成ajax請求的url,獲取返回的數據。如果是自己生成ajax請求,使用開源爬蟲的意義在哪裡?其實是要用開源爬蟲的線程池和URL管理功能(比如斷點爬取)。
如果我已經可以生成我所需要的ajax請求(列表),如何用這些爬蟲來對這些請求進行爬取?
爬蟲往往都是設計成廣度遍歷或者深度遍歷的模式,去遍歷靜態或者動態頁面。爬取ajax信息屬於deep web(深網)的范疇,雖然大多數爬蟲都不直接支持。但是也可以通過一些方法來完成。比如WebCollector使用廣度遍歷來遍歷網站。爬蟲的第一輪爬取就是爬取種子集合(seeds)中的所有url。簡單來說,就是將生成的ajax請求作為種子,放入爬蟲。用爬蟲對這些種子,進行深度為1的廣度遍歷(默認就是廣度遍歷)。
3)爬蟲怎麼爬取要登陸的網站?
這些開源爬蟲都支持在爬取時指定cookies,模擬登陸主要是靠cookies。至於cookies怎麼獲取,不是爬蟲管的事情。你可以手動獲取、用http請求模擬登陸或者用模擬瀏覽器自動登陸獲取cookie。
4)爬蟲怎麼抽取網頁的信息?
開源爬蟲一般都會集成網頁抽取工具。主要支持兩種規范:CSS SELECTOR和XPATH。至於哪個好,這里不評價。
5)爬蟲怎麼保存網頁的信息?
有一些爬蟲,自帶一個模塊負責持久化。比如webmagic,有一個模塊叫pipeline。通過簡單地配置,可以將爬蟲抽取到的信息,持久化到文件、資料庫等。還有一些爬蟲,並沒有直接給用戶提供數據持久化的模塊。比如crawler4j和webcollector。讓用戶自己在網頁處理模塊中添加提交資料庫的操作。至於使用pipeline這種模塊好不好,就和操作資料庫使用ORM好不好這個問題類似,取決於你的業務。
6)爬蟲被網站封了怎麼辦?
爬蟲被網站封了,一般用多代理(隨機代理)就可以解決。但是這些開源爬蟲一般沒有直接支持隨機代理的切換。所以用戶往往都需要自己將獲取的代理,放到一個全局數組中,自己寫一個代理隨機獲取(從數組中)的代碼。
7)網頁可以調用爬蟲么?
爬蟲的調用是在Web的服務端調用的,平時怎麼用就怎麼用,這些爬蟲都可以使用。
8)爬蟲速度怎麼樣?
單機開源爬蟲的速度,基本都可以講本機的網速用到極限。爬蟲的速度慢,往往是因為用戶把線程數開少了、網速慢,或者在數據持久化時,和資料庫的交互速度慢。而這些東西,往往都是用戶的機器和二次開發的代碼決定的。這些開源爬蟲的速度,都很可以。
9)明明代碼寫對了,爬不到數據,是不是爬蟲有問題,換個爬蟲能解決么?
如果代碼寫對了,又爬不到數據,換其他爬蟲也是一樣爬不到。遇到這種情況,要麼是網站把你封了,要麼是你爬的數據是javascript生成的。爬不到數據通過換爬蟲是不能解決的。
10)哪個爬蟲可以判斷網站是否爬完、那個爬蟲可以根據主題進行爬取?
爬蟲無法判斷網站是否爬完,只能盡可能覆蓋。
至於根據主題爬取,爬蟲之後把內容爬下來才知道是什麼主題。所以一般都是整個爬下來,然後再去篩選內容。如果嫌爬的太泛,可以通過限制URL正則等方式,來縮小一下范圍。
11)哪個爬蟲的設計模式和構架比較好?
設計模式純屬扯淡。說軟體設計模式好的,都是軟體開發完,然後總結出幾個設計模式。設計模式對軟體開發沒有指導性作用。用設計模式來設計爬蟲,只會使得爬蟲的設計更加臃腫。
至於構架,開源爬蟲目前主要是細節的數據結構的設計,比如爬取線程池、任務隊列,這些大家都能控制好。爬蟲的業務太簡單,談不上什麼構架。
所以對於JAVA開源爬蟲,我覺得,隨便找一個用的順手的就可以。如果業務復雜,拿哪個爬蟲來,都是要經過復雜的二次開發,才可以滿足需求。
3.3 非JAVA爬蟲
在非JAVA語言編寫的爬蟲中,有很多優秀的爬蟲。這里單獨提取出來作為一類,並不是針對爬蟲本身的質量進行討論,而是針對larbin、scrapy這類爬蟲,對開發成本的影響。
先說python爬蟲,python可以用30行代碼,完成JAVA 50行代碼乾的任務。python寫代碼的確快,但是在調試代碼的階段,python代碼的調試往往會耗費遠遠多於編碼階段省下的時間。使用python開發,要保證程序的正確性和穩定性,就需要寫更多的測試模塊。當然如果爬取規模不大、爬取業務不復雜,使用scrapy這種爬蟲也是蠻不錯的,可以輕松完成爬取任務。

上圖是Scrapy的架構圖,綠線是數據流向,首先從初始URL 開始,Scheler 會將其交給 Downloader 進行下載,下載之後會交給 Spider 進行分析,需要保存的數據則會被送到Item Pipeline,那是對數據進行後期處理。另外,在數據流動的通道里還可以安裝各種中間件,進行必要的處理。 因此在開發爬蟲的時候,最好也先規劃好各種模塊。我的做法是單獨規劃下載模塊,爬行模塊,調度模塊,數據存儲模塊。
對於C++爬蟲來說,學**成本會比較大。而且不能只計算一個人的學**成本,如果軟體需要團隊開發或者交接,那就是很多人的學**成本了。軟體的調試也不是那麼容易。
還有一些ruby、php的爬蟲,這里不多評價。的確有一些非常小型的數據採集任務,用ruby或者php很方便。但是選擇這些語言的開源爬蟲,一方面要調研一下相關的生態圈,還有就是,這些開源爬蟲可能會出一些你搜不到的BUG(用的人少、資料也少)
4、反爬蟲技術

因為搜索引擎的流行,網路爬蟲已經成了很普及網路技術,除了專門做搜索的Google,Yahoo,微軟,網路以外,幾乎每個大型門戶網站都有自己的搜索引擎,**小小叫得出來名字得就幾十種,還有各種不知名的幾千幾萬種,對於一個內容型驅動的網站來說,受到網路爬蟲的光顧是不可避免的。
一些智能的搜索引擎爬蟲的爬取頻率比較合理,對網站資源消耗比較少,但是很多糟糕的網路爬蟲,對網頁爬取能力很差,經常並發幾十上百個請求循環重復抓取,這種爬蟲對中小型網站往往是毀滅性打擊,特別是一些缺乏爬蟲編寫經驗的程序員寫出來的爬蟲破壞力極強,造成的網站訪問壓力會非常大,會導致網站訪問速度緩慢,甚至無法訪問。
一般網站從三個方面反爬蟲:用戶請求的Headers,用戶行為,網站目錄和數據載入方式。前兩種比較容易遇到,大多數網站都從這些角度來反爬蟲。第三種一些應用ajax的網站會採用,這樣增大了爬取的難度。
4.1 通過Headers反爬蟲
從用戶請求的Headers反爬蟲是最常見的反爬蟲策略。很多網站都會對Headers的User-Agent進行檢測,還有一部分網站會對Referer進行檢測(一些資源網站的防盜鏈就是檢測Referer)。如果遇到了這類反爬蟲機制,可以直接在爬蟲中添加Headers,將瀏覽器的User-Agent復制到爬蟲的Headers中;或者將Referer值修改為目標網站域名。對於檢測Headers的反爬蟲,在爬蟲中修改或者添加Headers就能很好的繞過。
[評論:往往容易被忽略,通過對請求的抓包分析,確定referer,在程序中模擬訪問請求頭中添加]
4.2 基於用戶行為反爬蟲
還有一部分網站是通過檢測用戶行為,例如同一IP短時間內多次訪問同一頁面,或者同一賬戶短時間內多次進行相同操作。

J. 如果文件極限壓縮的技術還在,網路世界和現實世界會有什麼變化

不會有啥影響,現在你去網上找也能找到各種極限壓縮的例子,把幾個G的文件壓縮成幾個K或者幾M,但對於單個文件的壓縮比是沒有太多意義,不適用別的。壓縮技術是有其理論上限的,不能無限壓縮。根據香農的信息理論,任何一個文件被無損壓縮後的結果不可能小於其 熵 。
數據壓縮實質上就是去除冗餘,或者通過編碼來減少數據大小。比如說,111111111這串數字,你可以用9-1來表示9個1,這樣就相當於壓縮成了3個字元。介紹一種比較容易理解壓縮演算法:字典演算法是最為簡單的壓縮演算法之一。它是把文本中出現頻率比較多的單詞或詞彙組合做成一個對應的字典列表,並用特殊代碼來表示這個單詞或詞彙。例如:
有字典列表:
00=Chinese
01=People
02=China
源文本:I am a Chinese people,I am from China 壓縮後的編碼為:I am a 00 01,I am from 02。壓縮編碼後的長度顯著縮小,這樣的編碼在SLG游戲等專有名詞比較多的游戲中比較容易出現,比如《SD高達》。看似減少了信息量,但其實這部分少的信息是蘊含在你的編解碼規則里的,即壓縮率越高,你的編解碼規則越復雜,及字典越厚,解碼越難。
對於正常的影像文件,比如視頻,很難無損壓縮下達到很高的壓縮率,一般都是通過再編碼有損壓縮。比如BMP圖像轉jpg 吧圖片的一些一般人用不到的雜信息去除,APE轉MP3之類。基本除了音源文件外其他要對比不太明顯。

閱讀全文

與極限演算法挑戰賽敏感詞大文本過濾相關的資料

熱點內容
飲水機為什麼加熱一會就保溫 瀏覽:287
電解法處理污水基於什麼原理 瀏覽:229
超濾沖洗需要加裝什麼 瀏覽:971
風神汽車空調濾芯怎麼換 瀏覽:661
美的飲水機怎麼關閉排水 瀏覽:493
汽車空濾芯放在哪裡 瀏覽:481
如何過濾開水中的水鹼 瀏覽:180
農村污水處理站初步設計 瀏覽:289
開污水檢測公司多少錢 瀏覽:155
核廢水變異人怎麼畫 瀏覽:50
新的凈水機放多少水可以用 瀏覽:818
變頻器在礦井提升系統中的應用 瀏覽:604
氨氮為什麼要純水凋零 瀏覽:937
反滲透膜更換安全應急措施 瀏覽:149
y型油過濾器型號 瀏覽:879
廢錨固樹脂是危險廢物嗎 瀏覽:71
鄭州污水處理設備什麼牌子好 瀏覽:833
雙擎電池濾芯選什麼牌子 瀏覽:307
徐工漢風g7空調濾芯在哪裡 瀏覽:637
ro膜高壓泵如何選型 瀏覽:357