主講嘉賓:王昊奮
主持人:中關村大數據產業聯盟學術委員會主任委員阮彤
承辦:中關村大數據產業聯盟
嘉賓介紹:
王昊奮:華東理工大學講師,上海交通大學計算機應用專業博士,對語義搜索、圖數據庫以及Web挖掘與信息抽取有濃厚的興趣。在博士就讀期間發表了30余篇國際頂級會議和期刊論文,長期在WWW、ISWC等頂級會議擔任程序委員會委員。作為Apex數據與知識管理實驗室語義組負責人,他主持并參與了多項相關項目的研發,長期與IBM、百度等知名IT企業進行合作,在知識圖譜相關的研究領域積累了豐富的經驗。
以下為分享實景全文:
王昊奮
眾所周知,大數據已經不簡簡單單是數據大的事實了,而最重要的現實是對大數據進行分析,只有通過分析才能獲取很多智能的、深入的、有價值的信息。
來越多的應用涉及到大數據,而這些大數據的屬性、包括數量、速度、多樣性等等都是呈現了大數據不斷增長的復雜性。從而,大數據的分析方法在大數據領域就顯得尤為重要,可以說是決定最終信息是否有價值的決定性因素。
從最近的大數據及其技術挑戰一文中,提到了從大數據創造價值是一個多步驟過程,包括:數據獲取、信息抽取和清理、數據整合,建模和分析,解釋和部署等。大數據分析的普遍方法理論,主要與以下幾個部分的知識有著密切關聯。下面我就拋磚引玉,以此介紹這些領域所涉及的知識,和相關課程以及一些開源工具等。
InformationRetrievalandWebSearch信息檢索與Web搜索,信息檢索是指從大規模數據集合中搜索滿足我們需求的信息(通常是非格式化數據,如文本);
DataMining數據挖掘,大數據分析的理論核心就是數據挖掘算法,指從大量的數據中通過算法搜索隱藏于其中信息的過程。正是因為有這些數據挖掘的算法,我們才能更快速的處理大數據;
MachineLearning機器學習,機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的算法。通過機器學習算法,計算機從數據中自動分析獲得規律,并利用規律對未知數據進行預測;
NaturalLanguageProcessing自然語言處理,對于文本類型的數據,自然語言處理是必不可少的一門學科。通俗的講,自然語言處理是探討如何讓計算機“理解”自然語言;
KnowledgeRepresentationandSemanticTechnologies知識表示和語義技術,相比前面所提到的智能算法不同,這里更強調智能數據(smartdata),研究數據的表示,尤其是語義表示和上層對應的推理、查詢、和語義搜索等應用涉及到的技術;
除了上面這些和計算機相關的課程,數學基礎知識是其基礎。上述的許多課程,都會涉及到數學知識,如概率論、代數、最優化等等,因此,數學的基礎知識也是必不可少的內容。
當然這些課程并沒有包括大數據挖掘的全部,多媒體挖掘,計算機視覺、數據可視化、并行計算和分布式存儲等都未涉及。
下面我將具體介紹每一個領域,其涉及的和大數據挖掘相關的技術點,并將就一些基礎內容展開作為大數據人才培訓和各種需要大數據相關人才招聘的參考
一.信息檢索和Web搜索
1.爬蟲(crawling)
這個記得在之前也有相關專家做過分享,這是數據獲取的基礎,經過這么多年的發展,除了面對surfaceweb(即表層Web,由網頁溝通,網頁之間通過超鏈接關聯)的常用爬蟲,各種面對垂直領域和特定主題的爬蟲(focusedcrawler)成為熱點。他是實現去哪兒,etao等站點的基礎。
另一方面,隨著各種動態頁面技術的發展,以及javascript客戶端類庫的豐富和普及,包括各種動態頁面的深度網絡(deepweb)大量出現,相比surfaceweb中page由超鏈接關聯,這里的交互通過表單填充和大量HTTP請求(包括Ajax等異步調用)來完成頁面的跳轉和關聯,因此deepwebcrawler也成為熱點。
此外,隨著社交網站的普及,以及各種傳感器網絡的建立(物聯網,車聯網,智能家居等),數據更多的呈現動態性(velocity),因此,爬蟲的范疇也逐步擴展到面對數據流的監視,過濾和在線訂閱等。
相應地和complexeventprocessing(CEP),topicpublishing/subscribing,基于主題的發布和訂閱,有緊密的關聯,所以能寫好crawler不容易,特別是考慮到他的應用范疇不斷擴大,且要充分利用吞吐量,同時避免被block等各種模擬人的行為等trick深入研究和探索。
所以,這里我第一個要向大家推薦commoncrawl這個項目。commoncrawl是EUplanetData項目的產物,里面還有很多對webtables或半結構化數據解析的結果,或帶RDFa,microformats等語義標注的網頁的解析和分析,是做實驗和了解web的好途徑。
WWW2014webscience中有用這個來做webgraph分析的,和之前的做了比較,對了解web的變化也有好處。這里面說到的其他一些點將在接下來的課程說明中提到。
2.評分(Scoring)&排序(Ranking)
接下來,對于信息檢索來說,最重要的是:scoring&ranking,即評分和排序。從最早的對于網頁的評分和排序,到后來的多媒體(如圖片,視頻),對于論壇的帖子,一直到目前針對實體的評分和排序,也就是說萬物皆可排序。
這里的評分和排序不僅需要刻畫排序對象和查詢(query,或用戶需求,informationneed)之間的相關性,還需要刻畫對象本身的重要程度以及其他的因素(如對廣告排序和評分,還需要考慮廣告主的bidprice,即出價等),所以評分和排序可以分成2部分,查詢相關和查詢無關。
我們從最簡單的文檔排序和評分出發,包括基本的BM25和其變種,基于語言模型的概率檢索模型(languagemodelbasedprobabilisticIR),接著近期又出現了各種learningtorank的方法;learningtorank的出現其實是對用戶點擊數據的應用,同時去實現個性化的一個有效手段。
當然learningtorank需要根據特定指標或目標函數來優化,這里也需要了解一下各種評估指標(有一些是通用的,有些是應用相關的),通用的指標包括Precision、Recall、F-Measure、MeanAveragePrecision(MAP)這幾種評價準則,以及對排序(Rank)的評估方法,例如NormalizedDiscountedCumulativeGain(NDCG)、Pairwiserelativeratings。
當然搜索引擎面對海量的數據不僅需要準確,還需要高效,所以效率問題也是一個需要關心的。這里涉及到索引結構、壓縮(compression),以及哈希(hashing),具體暫時先不展開。
3.展現
在搜索引擎的展現方面,也有了單一搜索,到元搜索(metasearch,整合多個搜索引擎),聯邦搜索(federatedsearch,更多面向企業搜索),以及aggregatedsearch(目前各種搜索引擎的發展趨勢,包括mashup,各種媒體或數據搜索的一體化展現,以及web服務的整合,其實百度的框計算也可以算是這方面的一種體現)。
4.信息集成
為了完成各種整合或aggregation,信息集成是必不可少的。早期的搜索引擎關心nearduplicationdetection(近重復檢測,用來監控網頁的變化等),目前還包括entityresolution(檢測相同實體),以及schemamatching(模式匹配,特別在知識圖譜環境下)。目前還包括entityresolution(檢測相同實體),以及schemamatching(模式匹配,特別在知識圖譜環境下)。
5.數據抽取(數據抽取)
為了獲得各種對象甚至實體,dataextraction(數據抽取)是必不可少的步驟,如前面所說的webtable和list的抽取(面對這些半結構化數據的抽取)是解決deepweb抽取(無法直接訪問到后臺數據庫來獲得信息的一個有效手段)另外,針對各種評論站點,sentimentanalysis(情感分析,正面,負面等),opinionmining(觀點挖掘)也逐步被重視。
本節小結:
不考慮效率,從效果來看,數據的采集,結構化或語義數據的生成是離線過程最重要的,在線過程中,語義匹配,甚至是支持自然語言查詢的直接回答是關鍵,每一步都可以擴展,并有很多難點,這兩個方面在介紹NLP和語義技術時會稍微有一些展開,另外,推薦系統(recommendersystem)也是一個重要的點,特別是在知識卡片展現中,推薦相關實體和概念。
課程鏈接
課程內容以及其PPT、參考資料等資源可以參考斯坦福大學的課程:CS276/LING286:InformationRetrievalandWebSearch(鏈接:http://web.stanford.edu/class/cs276/);
大家有興趣可以看看,當然如UMASS或Cambridge的課程也都值得一看,這里就不多推薦了,工具的話,我建議大家從Lucene出發;
Lucene(http://lucene.apache.org/)。是一個開源的全文檢索引擎工具包,提供了完整的查詢引擎和索引引擎,部分文本分析引擎。可以以方便的在目標系統中實現全文檢索的功能,或者是以此為基礎建立起完整的全文檢索引擎。
另外,Solr(http://lucene.apache.org/solr/)是一個高性能,基于Lucene的全文搜索服務器。同時對其進行了擴展,提供了比Lucene更為豐富的查詢語言,同時實現了可配置、可擴展并對查詢性能進行了優化,并且提供了一個完善的功能管理界面。
大家如果希望構建各種企業搜索,配有facetedsearch等功能的話,Solr是一個不錯的選擇。還有,ElasticSearch(www.elasticsearch.org/),也是一個基于Lucene構建的開源,分布式的RESTful搜索引擎。他在支持realtimesearch(實時搜索)方面做得很好,而且RestfulAPI可以使得你做到語言無關,部署也是最簡單的。
信息檢索和Web搜索部分先告一個段落,接著介紹數據挖掘部分,其中會有部分內容和前面的有重合。
二.數據挖掘(特別是面對大數據挖掘的話,我更傾向于說web挖掘,總共包括3方面內容)
1.內容挖掘(contentmining)
1)Datapreprocessing–數據預處理。通常,我們得到的實際數據是“臟”的,存在種種問題,而數據預處理的目的就是提高數據的質量。其重點是Datacleaning(數據清理,包括處理缺失值、噪音數據、奇異值等),Datatransformation(數據變換,包括對數據的標準化、歸一化、離散化等)等。
做過數據倉庫的肯定對ETL等過程有印象,而ETL也包括在數據預處理范疇內,這一塊是挖掘成敗的關鍵,往往占據80%的精力。當然對這塊進行細化,還包括剛剛介紹的數據抽取和信息集成兩方面內容,這里主要說明結構化數據挖掘,即從半結構化數據如webtable,DOMtree或weblist等有一定結構的數據中抽取信息(包括實體,屬性,屬性值,概念等),核心是wrapperinduction(包裝器歸納)。
從數據集自動學習和歸納對目標信息的抽取規則,避免大量的人工操作,解決數據抽取的問題,具體就不展開了。
2)InformationIntegration–信息集成。不同來源(如不同的網站)的數據格式不同,因此我們需要將它們采用統一的規范,集成到一起,以供展示或分析。前面提到的去哪兒或etao的例子是大家最容易理解的信息集成,這個在后面介紹語義技術時還會說。
2.結構挖掘(structuremining)
1)linkanalysis(鏈接分析),有兩個非常重要的算法:PageRank和HITS(HypertextInducedTopicSearch)。前者是Google專有的算法,用于衡量特定網頁相對于搜索引擎索引中的其他網頁而言的重要程度;后者則是根據指向此網頁的超鏈接和此網頁指向其它網頁的情況來分析網頁的重要性。
之前在介紹信息檢索中與查詢無關的評分和排序中就將用到鏈接分析中的算法,對這塊的了解需要進一步理解隨機漫步(randomwalk)。
此外,隨著web的不斷演化,各種變種也生成,包括早期的對于站點的評分siterank,主題敏感評分topic-sensitiverank,個性化評分personalizedrank,到后面的對于新頁面的評分newrank,在社交站點使用的socialrank,對于人的排序peoplerank等等
2)socialnetworkanalysis(社交網絡分析)
包括各種如中心度(centrality),連接度(betweenness),等基礎指標,也包括連通分量(connectedcomponent),團集(clique)等。
3)graphmining(圖挖掘)
包括異常檢測(outlierdetection),社區發現和演化(communitydetection&evolution),鏈接預測(linkprediction)等眾多方面。
4)dynamicgraphanalysis(動態圖分析)
之前說的哪些都是針對靜態圖的(沒有重點考慮圖中節點和邊變化的情況),這里主要考慮圖的變化,包括時態分析(temporalanalysis)、信息擴散(informationdiffusion)等,針對這一塊,大家可以使用graphlab等工具來熟悉相關的算法。
3.用途挖掘(usagemining)
即使用用戶數據進行相應的挖掘任務,幾個應用或相關算法包括:
1)learningtorank(學習排序);
2)collaborativefilteringmatrixfactorization(推薦系統中的協同過濾,使用矩陣分解);
3)ctrprediction(廣告中的點擊率預測);
4)privacyinformationprediction/De-anonymization(隱私信息如性別年齡等預測,以及信息的去匿名化);
5)associationrulemining(利用用戶交易數據的關聯規則挖掘,最常用的就是大家熟知的購物籃問題);
三.機器學習
機器學習(machinelearning)和數據挖掘(datamining)很像,不過更偏算法,可以將數據挖掘,自然語言處理等看作他的應用。
或者可以認為數據挖掘更偏實用(考慮效率,數據清理等各種實際操作會遇到的問題),而NLP算是機器學習在某個方面的特定應用(在基于統計的計算語言學為主流的現在,這句話成立,但不是NLP的全部)
回到機器學習,他包括:
1.supervisedlearning-有監督的學習
這里的學習主要是針對分類問題,例如,我們要將新聞分到政治、娛樂、體育等類別當中,監督學習就是通過已經標注好類別的新聞來學習一個模型,然后可以用這個模型來處理新的新聞。首先要明確分類問題(監督學習)的輸入、輸出,以及對訓練集的要求。然后要清楚其的評價方法,包括ROC和AUC。了解三個常用的分類器:DecisionTree、NaiveBayes和LogisticRegression,以及它們的特點、區別等;
2.SupportVectorMachine–支持向量機
另一個應用十分廣泛的分類器。這里除了最為基本的針對二分類問題的SVM,還由一些變種,例如one-classSVM以及SVMRank;
3.UnsupervisedLearning–無監督學習
指聚類方法,將數據根據它們之間的關系,分到若干個類別或群體當中。主要包括K-means聚類和層次聚類方法。也包括PrincipalComponentAnalysis–主成分分析,PCA。它是非常常用的一種特征提取方法,將原特征空間旋轉到新的空間中,找到第一主成分,它表示最多的原始數據的信息,第二主成分則表示次多的信息,并且主成分之間互不相關。它通常用來處理某些模型對特征的共線性敏感的問題,以及對數據進行降維;
4.Semi-supervisedLearning–半監督學習
半監督學習是監督學習與無監督學習相結合的一種學習方法。它主要考慮如何利用少量的標注樣本和大量的未標注樣本進行訓練和分類的問題,可以利用未標注的樣本所提供的信息,來提高模型的效果。常用的方法有:EM、Co-training、PU-Learning以及Biased-SVM。
主要還可以擴展到多視角學習(multiviewleanring)和多任務學習(multitasklearning),除此之外,近期還有一些值得學習和關注的知識點
(1)transferlearning(遷移學習),最簡單的思想是:我學過中國象棋,可能很容易上手國際象棋;
(2)activelearning(主動學習),通過選擇最可能出錯或最值得標注(往往處在分類邊界上的數據點)讓用戶標注,往往引申出去到現在很熱的眾包(crowdsourcing);
(3)DeepLearning(深度學習),這個大家應該都有所耳聞;
(4)EnsembleLearning(集成學習),是在對實例進行分類的時候,把若干個單個分類器集成起來,通過對多個分類器的分類結果進行某種組合來決定最終的分類,以取得比單個分類器更好的性能。主要有以下幾種方法:Bagging、Boosting、RandomForest和GradientBoostingDecisionTree(GBDT),集成學習能很好地避免過擬合問題,同時也和模型選擇相關
(5)ModelSelection(模型選擇),常見的模型選擇方法和特征選擇方法,來為問題選擇最為合適的模型。包括K-foldCross-validation(K-折交叉驗證)的使用,和特征選擇的方法,例如前向選擇方法,卡方檢驗等,用來選取與目標關系最為密切的特征和屬性。另外還包括特征選擇,以及無監督學習中的距離學習(學習距離函數等)
課程鏈接
斯坦福大學的CS229:MachineLearning(http://cs229.stanford.edu/);
另外,補一下剛剛數據挖掘的課程鏈接:可以參考伊利諾伊大學芝加哥分校的課程CS583:DataMiningandTextMining
(http://www.cs.uic.edu/~liub/teach/cs583-spring-12/cs583.html)
機器學習的工具很多,這里主要推薦:
主要使用Java平臺的Weka((http://www.cs.waikato.ac.nz/ml/weka/))和Python下的Sci-kitlearn(https://github.com/scikit-learn/scikit-learn/)。它們均集合了大量能承擔數據挖掘任務的機器學習算法,包括對數據進行預處理,分類,回歸、聚類、關聯規則。Weka還提供了十分方便的可視化界面。
四.自然語言處理
包括:分詞、詞性標注、句法分析以及相關工具的使用。分詞是針對中文等詞語之間沒有明顯分割的語言而言的,因為中文沒有想西方的語言那樣,通過空格來區分每一個詞,所以在對文本進行一些操作之前,常常需要進行分詞。詞性標注是將句子中的詞標注出動詞、名詞等詞性。句法分析則是更進一步的對句子進行分析,包括成分樹分析和依存樹分析,兩者可以互相轉換。
LanguageModel–語言模型,語言模型的目的是建立一個能夠描述給定詞序列在語言中的出現的概率的分布,根據語言客觀事實而進行的語言抽象數學建模。重點是n-gram語言模型,它通過條件概率來表示文檔中的詞:一個詞出現的概率,在某一個詞A之后,出現詞B的概率。對于languagemodel,各種搜索引擎公司都提供n-gramlibrary,提交一個詞(或組合),給出其出現的概率等;
TopicModel–主題模型,重點講LatentDirichletAllocation(LDA)。這是一種無監督機器學習技術,可以用來識別文檔集或語料庫中潛藏的主題信息,將不同的文檔歸類到不同的主題當中,每一個主題是用一系列的詞語來表示。它采用了詞袋(bagofwords)的方法,將每一篇文檔視為一個詞頻向量,從而將文本信息轉化為了易于建模的數字信息。當然也包括早期的如LSI(隱語義搜索),pLSA(概率隱層語義分析)等;
GraphicalModeling-圖模型,用圖形模式表達基于概率相關關系的模型的總稱,在信息處理、自然語言處理領域得到了廣泛應用。特別包括MaximumEntropyModels–最大熵模型,HiddenMarkovModels–隱馬爾科夫模型,ConditionalRandomFields–條件隨機場。三個統計模型被廣泛的應用于序列標注問題當中。例如從文本中識別組織機構名稱,通過已經標注的文檔學習模型,然后在新的文本中抽取組織機構名稱。
相比前面介紹的機器學習,這里學習的輸出不是一個類標簽(分類)或一個數值(回歸,regression),這里的輸出是一個序列,對于句法分析,甚至是一棵語法樹。這些輸出相對來說具有更豐富的結構,所以也稱為structurelearning(結構學習)。
接著簡單說一下NLP的幾個重要應用:
(1)entitylinking(實體鏈接),給定一個知識庫(如維基百科),識別某個文本中提到的知識庫中的實體描述;這和命名實體識別(Namedentityrecognition,NER)相關,但是側重點不同,EL側重對已知實體的鏈接,他可以將文本中的實體描述關聯到知識庫中的某個實體的ID,起到標準化和歸一化作用,是語義標注的基礎,也是知識圖譜進行各種分析,包括查詢分析,文檔理解的基礎步驟;
(2)openinformationextraction(開放信息抽取),從文本中抽取實體之間的關系,或實體的屬性和屬性值。與relationextraction(關系抽取)或slotfilling(屬性框填充)相比,這里更適應于新關系的識別,可部署在大規模環境中,這一塊得益于美國DARPA的machinereading(機器閱讀)項目,目前得到了很大的發展,其中當時IBMWatson的發展也得益與此,還包括一些其他的項目,下次可以找機會和大家詳細說;
(3)machinetranslation(機器翻譯);
(4)QA(questionanswering),不僅包括如Watson這樣的QA系統,也包括自動問答系統,如SIRI,小冰,甚至小i機器人,都是這塊的應用。
課程參考:
課程鏈接,斯坦福大學CS224N/Ling284:NaturalLanguageProcessing;
工具:
NLP的常用工具主要有NLPIR(http://ictclas.nlpir.org/)、FNLP(github.com/xpqiu/fnlp/)、StanfordNLP(http://nlp.stanford.edu/)、OpenNLP(http://opennlp.apache.org/)等;
前面兩個是中文的,后面兩個是多語言支持,當然英語支持的比較好。當然對于每個任務都有做得比較好的,這些工具屬于比較全的。當然大家可以試用一下哈工大的LTP,也是功能很全,通用效果也不錯的,對于特定的任務這些工具都需要重新適應才能發揮作用,這也是大數據人才需要去做的。
五.知識表示和語義技術
包括:
1.graphmodelvs.ERvsXML(圖模型和傳統關系型數據庫ER模型的比較,和XML基于樹模型在語法語義上的比較):graphmodel的代表包括RDF(resourcedescriptionframework,W3c的標準,也包括前面在commoncrawl中提到的RDFa,和microformats等,是RDF的變種,作為各種輕量級知識表示和交換語言可以嵌入到網頁中供機器處理和理解,最典型的例子包括在社交站點主頁中包含foaf,在各種網站中為了搜素引擎優化嵌入schema.org分類;
2.OWLvsprolog(closedwordassumptionvs.openwordassumption):OWL也是W3C標準,代表webontologylanguage,本體語言;后者是早起人工智能(專家系統)用的prolog,這也是開放世界假設和封閉世界假設的比較。OWL是開放的,對于沒有定義的內容是未知,而對于封閉世界的假設,對于未定義的就是否。目前網上各種領域本體如醫療方面的snomed-ct,藥物方面drugbank,通用的如dbpediaontology等都很多。
對于本體的處理包括如下幾個點:
1)本體工程(從早期的編輯,到后來的學習,ontologyengineeringtoontologylearning),不僅可以定義或學習概念,關系,事實,概念實例,還可以學習概念之間的包含關系,互斥關系等公理(axiom);
2)不同地方定義的本體會有不同,那么會有ontologyalignment,這是數據集成的延續,包括模式層的匹配(schemamatching),也包括實例層的整合(entityresolution);
3)有了本體就可以做各種推理,這里需要了解基于邏輯的推理(logic-basedreasoning)和基于統計的推斷(statisticalbasedinference)的區別和關聯:前者是演繹(deduction),后者是歸納(induction),兩者是互相關聯的,統計歸納可以用來學習本體和本體規則(包括ILPinductivelogicprogramming等);本體也可以嵌入到統計歸納中,包括markovlogicnetwork(馬爾科夫邏輯網,在馬爾科夫網中嵌入邏輯,可以看作是一種領域知識的嵌入),以及最近很熱的概率編程(probabilisticprogramming),是兩者的大一統;
接著還有2部分需要大家了解
1.從鏈接開放數據(linkingopendata)到知識圖譜到語義搜索的一條線,知識圖譜的基礎概念在之前的報告中給大家分享過;
2.另外一條線是從圖模型到圖數據庫,圖數據庫可以看作是一種noSQL或newSQL,包括圖匹配查詢語言SPARQL(類SQL),還有面向圖遍歷的Gremlin等,可用于做快速的子圖匹配,適合OLTP任務,也有各種分析任務,OLAP;
簡單工具包括:
Sesame(www.openrdf.org/,Sesame是早期一個歐盟項目的產物),針對RDF數據管理提出的一個通用的系統框架,提供了非常開放的API接口,使得人們可以很方便地集成不同的存儲系統,推理引擎以及查詢引擎等;
Jena(https://jena.apache.org/),Jena是惠普實驗室做的;
各種本體推理,alignment,學習,以及圖數據的工具在這里就不一一列出了,有興趣的可以聯系我,就某個專門點細化。
最后說一下:數學基礎
數學基礎知識,涵蓋如下幾個課程:
1.概率論與數理統計,包括常見的分布,假設檢驗,參數估計,方差分析,抽樣理論等;
2.高等代數,主要是矩陣分析中的知識;
3.運籌學,即最優化理論,包括無約束和有約束的極值問題,梯度下降法等;
4.離散數據,包括圖論,數理邏輯等。
這些都是掌握上述知識和技術的基礎。
備注:
1.文中有關參考資料類、推薦第三方課程或推薦開源系統內容,以“文字下方標注圓點方式”注明(抱歉,整理文檔使用Pages,但是不知為何選用多種字體依然無法令其以斜體方式出現,嘗試多次失敗后,經過多種標注方式的視覺效果篩選,最后妥協,以該“違背人性”的標注方式注明,各位見諒);
2.文中部分節點中的加粗處理(非標題)為個人理解重點,可能有失偏頗,還望各位專家批評指正;但同時也希望大家重視這幾個總結重點,在學術研究或企業應用中或有指點迷津之用;
3.該版不包含后續討論部分,請各位知悉。