整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          萬字綜述(下):大語言模型將為神經科學帶來哪些前所未有的機會?

          | 追問nextquestion

          大語言模型(LLMs)是機器學習領域中用于處理和生成自然語言文本的新工具。該文提供了對該建模技術的屬性定義,并反思LLMs如何被用來重新構建經典的神經科學問題,以提供新的答案。

          我們認為LLMs有潛力(1)通過添加如高級文本情感分析等有價值的元信息來豐富神經科學數據集;(2)總結大量信息來源,以克服孤立的神經科學社群之間的隔閡;(3)促使與大腦相關的不同信息源得以進行前所未有的融合;(4)幫助確定哪些認知概念能最有效地把握大腦中的現象。

          本文為論文下篇,書接上文LLMs的屬性及能力等背景介紹,重點討論LLMs在解決神經科學與生物醫學問題方面的運用。

          上篇:

          萬字綜述:寫給神經科學家的大語言模型基礎原理 | 追問頂刊(上)

          ? Bzdok, Danilo, et al. "Data science opportunities of large language models for neuroscience and biomedicine." Neuron (2024). https://doi.org/10.1016/j.neuron.2024.01.016

          大型語言模型在生物序列中的應用

          LLM學習引擎的歸納能力,不僅適用于詞序列,也同樣適用于各種類型的生物序列,這提供了許多未被充分挖掘的研究機會。人類的基因組,這一包含約2萬個基因的龐大DNA序列庫,構成了大腦及身體其他部位細胞內蛋白質合成的基石。在此基礎上,“生物學中心法則”為我們提供了一個與神經科學直接相關的自然試驗場景,它描述了遺傳信息如何從DNA中的核苷酸序列,通過信使RNA中的堿基序列,最終轉化為蛋白質產品中的氨基酸序列的流動過程。

          遺傳學家的主要目標是映射這種遺傳信息的傳遞過程,將DNA序列本身的改變與相應的功能影響聯系起來。為此,MetaAI展示了一種蛋白質語言模型(圖3),該模型能從遺傳變異的差異中預測表型后果[29]。通過一個擁有6.5億參數的模型,研究者能夠推斷人類基因組中大約4.5億種可能的錯義變異效應——每種變異都是DNA中單個核苷酸的替換,這一替換可能導致下游蛋白質中的氨基酸交換(有害或良性)。DNA基因編碼中的這些變異特別有趣,因為它們涉及可以與疾病機制和可能的治療目標聯系起來的蛋白質改變。這種方法使我們能全面分析人類和其他生物整個基因組中的蛋白質破壞性損傷變異。

          ? 圖3,蛋白語言模型可預測基因突變的功能影響

          此外,我們能否僅從RNA轉錄表達數據中自動推導出細胞狀態和與活躍生物通路相關的洞見?在單細胞RNA基因表達水平上,一個LLM[30]在1000萬個細胞上進行了訓練(圖4),每個細胞包含大約2萬個人類基因的一部分表達值。作為一個基礎模型的開創性例子(參見上文),基因集在生物學建模中構成有意義的過程,類似于詞語集合在語言中構成有意義的句子。通過吸收大量的基因表達模式,該模型形成了基因間關系和基因-細胞關系的普遍性內部表征。除了特定基因的標記外,模型還引入了特殊的標記來表示元信息,如細胞類型、數據批次以及實驗條件,如信號通路的擾動和RNA轉錄測序使用的技術。

          作者還取消了輸入必須是序列的需求——他們設計了一個任務定制的注意力機制,以緊密把握表達基因的協同出現模式。通過基于迭代預測集合中新基因表達的自回歸生成,類似于在連續的句子中預測下一個詞匯。也就是說,他們將傳統語言模型處理詞序的方式,巧妙轉化為在單細胞基礎模型中處理細胞對應的基因集合,從而擺脫了輸入必須遵循序列的限制

          這樣一來,模型一旦建立,訓練好的基礎LLM就可以進行微調和部署,并在各種不同的下游任務中獲得性能提升,包括批次校正、細胞類型注釋和目標擾動條件的預測。這種方法不僅展現了自監督學習技術掌握復雜單細胞機制的潛能,還能利用后續的內部嵌入表示,實現不同器官和物種間的數據整合。

          ? 圖4,從指數級增加的單細胞轉錄組數據中,構建基礎模型以描述細胞轉錄的語法

          從基因層面到3D蛋白質結構層面的轉變,關鍵在于能否僅憑一維氨基酸序列預測出蛋白質的最終三維構型。蛋白質折疊問題圍繞著我們的DNA是如何壓縮關于最終蛋白質結構信息的。在數據庫中有超過2億種蛋白質結構,AlphaFold[31]這一基于大型語言模型的系統,通過捕捉沿著蛋白質骨架上遠離彼此的氨基酸殘基之間的序列相互作用。在這個給使用暴力(brute force)學習的研究中,研究者展示了1D序列信息確實包含了理解蛋白質在自然界中實際折疊的復雜過程所需的關鍵信息。

          在蛋白質到功能層面,研究者在250億個蛋白質序列(UniParc數據庫)的860億個氨基酸上訓練了7億參數的34層transformer模型[32]。模型內部的嵌入表征僅從序列信息本身獲得。訓練好的模型被發現能夠包含蛋白質的生化特性、體內形態結構元素、接觸位點和生物活性相關知識。

          總的來說,捕捉長距離相互作用(即輸入序列中相距較遠的標記)不僅在詞序列推理中,也在不同生物序列中有意義的一般原則方面顯得非常有價值。自然界似乎隱藏著可以被利用來推斷超出實際序列元素(例如,核酸、基因表達、氨基酸)的潛在一般規則,以服務于下一代計算生物學。學到的序列嵌入可以用于各種下游研究目標,包括質量控制程序、生物實體的分組以及增強表型預測。

          此外,LLMs作為一個平臺現已能夠實現生物學中心法則的先進計算模擬,從DNA的雙螺旋結構到基因的轉錄表達,再到完整的蛋白質形態。也就是說,一旦LLM能夠準確地近似目標系統,便能通過復現嚴格實驗中的可靠觀察,使研究者得以向詢問LLM詢問,以提取關于目標系統的新分子洞察,并識別更廣泛的驅動生物機制。我們警告不要將基于LLM的功能預測模型和分子生物學系統之間視為嚴格平行,因為兩者存在顯著差異。盡管如此,在未來,LLMs仍將占據獨特的位置,有望幫助發現從未在自然界中觀察到的生物活性序列。

          用于自動化數據標注的大模型

          神經科學研究經常依賴于準確的數據標注來闡述數據、設計實驗或解釋結果。

          (1)文字標注

          最近一項使用傳統NLP的研究探討了觀看電影《阿甘正傳》的受試者的大腦反應信號與電影故事的發展之間的關系,即電影敘事的語義元素如何與大腦活動相聯系[33]。這項研究是依賴于數據點相關高質量標注研究的典范。這項研究利用了來自studyforrest*數據庫收集的大腦記錄,每個受試者在觀看2小時電影的過程中,其全腦神經活動的3000張個體圖像被詳細捕獲。

          *https://www.studyforrest.org/data.html

          為了使該數據集更豐富,電影中的每一個場景都通過計算生成的元信息得到增強。為此,文本數據來自之前未充分利用的來源:即與視頻內容同步顯示的時間鎖定字幕,和面向盲人的僅聽覺敘述版本的電影,后者描述了電影中的事件和場景,展現了NLP支持下的數據增強的初步嘗試。

          ?圖5:基于電影文本,使用NLP進行多模態腦-文字數據整合

          《阿甘正傳》的逐場景文本信息被一個詞袋模型(bag-of-words)所捕捉——在電影整個播放過程中,該模型會收集每個時間片段內所有獨特詞匯及其出現頻率的集合。然后使用潛在語義分析來將場景詞頻分解為獨特的語義維度,以捕捉故事線中的潛在意義和反復出現的主題。

          與此同時,通過一種經典的自上而下方法,人類標注者(一群學生)通過從電影的視聽版本中選擇52個預定義的“指標”來手動為場景添加標簽。這些選擇基于場景的情感內容、情境和其他方面,基于現有知識,這些方面預先被認為與電影場景相關。這種經典方法雖然強調了基于人類觀察者的自然主觀體驗對人類情感的詳細刻畫,然而事實上卻錯過了基于文本派生語義表征中,被很好地反映了的重要細節。這一自動標準的成功,展示了未來LLM方法在自然神經科學中的潛力。

          超越手動標注的局限,NLP方法(如潛在語義分析)使得故事被分解為200個語義上下文單元,每個單元基于上下文都與特定場景緊密相關。作為人類衍生情感標注的補充,語義上下文提供了追蹤角色(例如,丹中尉)、情境(例如,戰爭)和場景屬性(例如,白天與夜晚)的方法。通過整合數據分析,揭示了大腦狀態與場景中特定元素、概念和主題之間的經驗聯系。因此,算法派生的語義方面在電影-大腦-文本分析中,相較于傳統依賴人類先驗直覺確定的那些最重要的方向,展現出了更為顯著的成功。

          LLMs為將其他學科對人類行為的知識和概念引入到腦科學研究中提供了前所未有的機會。批量標注生成可以極大地增強我們處理復雜操作協議的能力,如上述研究中使用的圖像和視頻數據,以及許多其他形式的數據,如電子健康記錄、語音記錄或可穿戴設備捕獲的生物測量。

          歷史上,這些數據形式的標注需要人類專家的輸入,無論是直接還是間接。現在,通過專門針對特定的從輸入到輸出的端到端工具,例如直接從視覺數據中訓練神經網絡來識別人類情感,或基于物理特性預測氣味化合物吸引力的電子嗅覺設備[34],我們可以更高效地完成這些任務。手動標注通常存在一些問題,LLMs可以緩解其中幾個問題,包括(1)手動操作的高物流和財務成本,(2)用于派生標注標簽的分類系統的本體論限制,(3)人類標注者的主觀性以及基于主觀性的數據,以及(4)可重復性。

          最終,如上所述,由于成本高,手動標注的視覺和語言數據集相對罕見且規模較小(10,000-100,000個數據點)。為了應對先前的標注數據稀缺,許多研究[35-37]已經開始自動從互聯網和其他通用來源抓取現成的配對視覺-文本數據。現在,以在文本-文本標注場景中也實現與圖像-文本標注領域取得的類似成就。在模型預訓練后,LLMs可以自動生成標注,這些預訓練是基于與手頭標注任務相關的各種數據完成。

          舉一個例子,一家生物技術公司有興趣為描述精神活性藥物體驗的一手描述打上標簽,以指示不同的主觀效果;這些描述和手動標注的主觀效果標簽配對,可以用于公司使用的基線模型的微調。或者,像GPT4這樣的LLMs可以在沒有任何額外訓練數據的情況下執行此任務,基于其訓練集提供了足夠的上下文來區分描述不同的主觀效果術語及其示例。

          短語和句子,就像單個單詞一樣,可以被自動賦予信息豐富的語義嵌入,這一過程同樣適用于自動(或手動)獲得的標注。通過將自然語言經LLM“編碼器”預處理為嵌入向量,我們可以對離散的語義元素進行連續的量化。以互補的方式,LLM“解碼器”用于將嵌入轉換回語言文本。將自然語言作為嵌入進行預處理,為探索不同語言模式與神經活動之間的相關性開辟了新方法。將自然語言數據與神經測量相關聯,是朝著深刻理解人類大腦產生、感知、處理和解釋語言的一步。自然語言文本的定量表證是計算分析中使用的行業通用中間形式,具有可重復性,可調整和可擴展增強的潛力。語言作為封裝來自五種人類感官的信息的工具,提供了人類經驗中多樣化現象的量化表征。

          (2)圖像標注

          圖像自動標注領域再次啟發了文本標注任務的創新,其中RETfound便是醫學領域從圖像到文本轉換問題的一種創新解決方案[38]。作為一個基礎模型,RETfound能夠將廣泛可用的視網膜圖像標注為不同的疾病類別。它旨在加速包括白內障、中心性漿液性視網膜病變、糖尿病視網膜病變、青光眼、心力衰竭、黃斑功能障礙、心肌梗死、帕金森病、中風和黃斑變性等疾病的診斷過程。

          模型架構基于大型視覺transformer框架:使用編碼器生成高分辨率的嵌入空間,可以用來區分視網膜圖像特征,這與LLMs在自然語言文本中編碼語義的方式相似。這種模型的應用展示了LLMs在醫學圖像處理中的潛力,為醫生提供了一種快速而準確的診斷工具,有助于提高醫療效率和患者護理質量。

          RETfound的解碼器用于圖像重建,而編碼器則用于為下游疾病預測任務提取特征。RETfound通過自監督學習在160萬張未標記的視網膜圖像上進行了預訓練。在這種范式中,AI模型無需任何額外的訓練信息便可以學習數據集中查找模式。例如,如果一個神經網絡在自監督學習任務中使用寵物圖片作為訓練集,模型很可能學會識別與貓、狗和其他流行寵物相對應的形狀。模型知道如何區分不同類型寵物的圖像,但它“不知道”我們稱其中一組為“貓”,以及可能與圖像中的寵物相關的其他信息。RETfound在預微調(pre-fine-tuned) 狀態下也是如此:它可以區分視網膜掃描圖像中看到的不同變異,這種能力使其能夠針對特定疾病檢測任務進行微調。

          這種微調是通過來自不同大小數據集的,特定專家提供的標簽進行的。例如,用于標注“正常”、“黃斑變性”和“糖尿病視網膜病變”等條件的“OCTID”數據集,以及包含與353,157名患者在2008至2018年間就診記錄相關的眼科數據的Moorfields Eye Hospital-AlzEye數據集,被用于微調以優化RETfound進行濕性年齡相關性黃斑變性的預后評估。通過這樣的全面訓練,RETfound可以用來根據醫療專業人員生成的圖像記錄中的像素模式創建視網膜圖像的文本描述。因此,像RETfound這樣的模型旨在減輕專家的標注工作量,為使用LLMs進行類似目的的概念框架提供靈感。

          圖像格式的數據一方面可以用來捕捉物理世界,另一方面,也可以捕捉大腦神經元的活動。它們可以作為實驗變量,例如在視覺刺激實驗中使用的圖片,以探索大腦掃描與這些刺激之間的聯系。與圖像格式不同,化學結構及其描述可以捕捉大腦化學、神經生理學、神經藥理學和化學感覺刺激的關鍵方面。簡化分子輸入線性輸入系統(SMILES Simplified molecular-input line-entry)是一種將化學結構表示為基于文本的對象的方法。SMILES最初是基于分子圖的原則構思的,以嚴格規范的方式表示化學結構,非常適合機器處理[40]

          ?圖6:SMILES中配對分子圖的示例

          科學文獻中包含了大量的化學名稱,這些名稱有時呈現標準化形式,但并非總是如此。通過適當的收集、整理和整合策略,可以構建一個結合化學名稱和SMILES結構的語料庫,用于訓練大型語言模型(LLM)或微調基礎模型,以探索化學結構與語義內容之間的潛在預測關系。如果能夠實現這一點,進一步地,這個共同的嵌入空間可以連接到一個生成模型,該模型可以根據文本輸入產生化學結構(例如,“我想看到能夠進入人類中樞神經系統的新化學結構”)。在不遠的將來,這樣的多模態LLM可能成為科學家的寶貴伙伴,增強生成具有目標屬性的全新分子的創造性過程,無論是物理、化學感知還是藥理學屬性

          另一個引人注目的應用是在SMILES(化學品的簡化分子輸入線性表示系統)和自然語言之間建立的共同嵌入空間,這不僅適用于單一化學物質的分析,也能擴展到化學混合物的研究。正如自然語言中詞語和短語的解釋會受到其上下文的顯著影響一樣,化學感知刺激中存在的氣味分子(它們自然以混合物形式出現)的感知,也會受到其他混合物成分的組合和濃度的影響。此外,小分子如神經遞質、激素、藥物和毒素通常與其代謝物、雜質和其他生物分子共同作用。這些組合元素可以在其周圍環境中產生生化和生理效應,例如結合到目標受體或調節信號轉導通路的活性。

          我們設想,一個經過SMILES和自然語言訓練的LLM的共同潛在嵌入空間可以用來對化學品和混合物的復雜、依賴于上下文的多重作用進行導航,這對神經科學具有直接相關性

          (3)描述能力

          除了高成本之外,標注任務面臨的另一個問題是,依賴于預定本體或分類系統的標注將受到該描述系統的描述能力的限制。通常,執行標注任務的個體必須接受訓練,以確保他們能夠正確利用給定的本體對數據點進行分類,這是減少評分者差異性這一已知挑戰的嘗試。為了正確進行數據標注,所需的培訓范圍可能非常廣泛,標注者必須是領域專家而非外行人。通過LLM編碼器生成的嵌入,可以通過語義相似度測量或聚類等方法“翻譯”為目標本體中的一系列術語。

          如果不進行翻譯,LLM給出的嵌入提供了基于本體的分類所無法提供的高語義粒度。這種特異性對于任何研究者在記錄與特定實驗直接相關的不同結果時都極為寶貴,因為它使得在與特定實驗直接相關的分類方式上具有靈活性。

          舉一個簡單的假設性例子,人們可以(1)從通過文本記錄的注釋標簽或其他實驗變量生成語義嵌入,(2)從目標本體中存在的術語生成嵌入,或(3)計算兩組嵌入之間的余弦距離,以識別每個基于文本的實驗變量與來自目標本體的“最近鄰”術語。雖然這種方法可能無法達到領域專家的準確性水平,但它在分辨率上的不足通過客觀性和操作一致性得到了補償,這提高了大規模注釋的可擴展性和可重復性。另一方面,LLM產生的嵌入也為研究人員提供了一種通過聚類或更復雜的技術來分析注釋數據集的手段,從而得以識別新的分類系統。

          理想情況下,即使在沒有與領域專家緊密合作的情況下,我們很快就能通過LLM進行專家級別的注釋。更有趣的是,一旦證明了LLM能夠以與專家相當或更優的性能應用現有的本體進行注釋,我們就可以轉向“專家LLM”來幫助識別和驗證新術語和本體,這些術語和本體是通過數據驅動的方式得出的。同時,我們還可以借此機會檢查基于LLM的注釋結果,挑戰那些由有限啟發式設計的傳統分類系統。

          基于規則的解決方案雖然依賴明確的預定義標準,但在處理龐大且復雜的數據集時,黑箱式AI解決方案——盡管其決策過程不透明——通常能夠展現出卓越的表現,實現傳統方法難以匹及的預測準確性。將LLM輔助注釋作為一種補充方法,將其與傳統的自上而下的方法(例如,由領域專家手動分類)和基于規則(例如,預定義算法對數據點分類)的解決方案相結合,是我們可以同時利用專家經驗帶來的知識和LLMs從數據中獲得的新見解的一種方式,這是一種真正能夠“為自己說話”的數據形式。

          LLMs被喻為變色龍*,具備“角色扮演”的能力[43]。它們可以采取已知人物或具有特定特征(個性和寫作風格)的人物個性,例如夏洛蒂·勃朗特、卡爾·薩根或神經科學家。這種能力可以以多種方式利用。在某些注釋任務中,與所有評估者都具有相同背景的評估小組相比,征求跨學科專家小組的意見可能更為有益。若干個LLM可以并行地在注釋任務中扮演不同的角色,類似于人類評分者的分組。LLMs可以被要求采取不同專家、個性類型、職業、年齡和文化背景的立場來進行思考和評估。LLMs不僅解決了個體主觀性對注釋任務的影響,而且同時能夠表達和操縱這種主觀性。LLMs可以消除人類注釋者所經歷的短暫情感狀態的波動,如果需要,它們可以在可控和可重復的方式中引入這些波動。

          *https://karpathy.ai/lexicap/0215-large.html

          描述神經科學研究以及主觀體驗的語言存在許多不一致之處。這些差異性助長了不同研究人員之間對注釋解釋的分歧。一致的語義嵌入空間的普遍性能夠捕獲和操縱模糊或主觀的語言。關鍵的是,這些表征在實驗室或其他研究和分析環境下是完全可重復的;只要對同一任務使用相同的LLM,并使用相同的模型參數集合。從科學研究的實際角度來看,這一特點應該對通過LLMs自動注釋數據集的注釋數據的共享性產生重大影響,有希望擴大LLMs自動注釋數據集的下游應用的廣度和深度。

          不同的個體可能會以不同的方式標注相同的數據,甚至同一注釋者在不同時間給出的回答也可能會有所變化。LLMs提供了一種更穩定和一致的標注。由于這些大型模型是基于廣泛的數據集進行訓練,不受個人主觀體驗的影響,它們能夠在捕捉細致的上下文環境時替代人在手動標注任務中的主觀性。訓練后的LLMs可以被視為所有互聯網用戶平均思維的一種近似,即“眾包思維”,因為它們的訓練語料庫的大部分來源于互聯網。如果基礎模型似乎沒有捕捉到足夠的細節以完成特定任務,它可以通過微調來近似基于特定網站或互聯網用戶子集的平均思維。

          手動進行數據標注的過程通常包含主觀性元素,特別是當被標注對象基于主觀體驗時在對《阿甘正傳》中的場景進行注釋的任務里,學生們需要標注他們所感知到的電影中演員表達的情緒。這項任務首先要求對電影中描繪的情感進行主觀解釋,再加上情感體驗本身的高度主觀性。studyforrest數據集還包括每個場景發生的物理位置的注釋。盡管如“夜晚”與“白天”、“室內”與“室外”的標注主要基于具有電影學術背景的兩位領域專家做出的客觀判斷,但在這個過程中仍然留有主觀解釋的空間,例如將“白天”定義為任何由陽光照亮的場景,而不是其他決定因素一樣。

          LLMs能夠在主觀現象和客觀測量的世界之間實現調和。通過LLM嵌入表征的語義實體,保留了文本中的離散主觀或上下文意義,使其能夠以一致的方式與其他文本進行比較。例如,想象一下從社交媒體帖子中收集的句子,用于自動注釋情感標簽,以便用于訓練一個能夠從用戶帖子中預測情緒的NLP模型。無論每個設想的句子有多么獨特,它們與“熱情”、“沮喪”、“懷舊”或“平靜”等術語對應嵌入之間的距離都可以用統一的方式計算。由于LLM訓練語料庫捕獲了大量描述主觀現象的文本,LLMs產生的更穩定和一致的注釋,可以輕松地用于表征基于主觀體驗的數據元素,而無需將主觀的人類判斷作為注釋過程的一部分。

          使用LLMs自動化注釋任務并不是漸進式的改進,而是一種革命性的方法升級,可以顛覆主流實踐,有望終結受到主觀性和其他形式的特質所帶來的限制。以注釋一系列日記條目中的情感為例,如果任務交給一組人類注釋者,一個人可能會根據他們的個人經驗和文化背景將一段文字標記為“悲傷”,而另一個人可能會看到它為“反思”或“懷舊”然而,由于LLMs是自回歸的、狀態依賴的,并且具有溫度等超參數(參見前一節“大型語言模型解決方案的數據科學視角”),它們在處理相同提示時的輸出雖不盡相同,但如果實驗條件保持一致,其答案主要限制在語義空間的一個狹窄區域內。通過這種方式,LLM可能提供人類注釋者無法匹配的客觀性和一致性。

          LLM在文本摘要和知識整合中的應用

          神經科學這個廣泛的領域涉及從物理學到心理學等多個學科。這個極具跨學科性的領域產生了大量相對獨立的實驗發現,僅靠人力整合這些發現可能會顯得力不從心。此外,該領域的寬廣常常導致研究者在其子領域內孤立工作,專注于狹窄的研究領域,從而可能錯過與其他子學科的交叉融合機會。也可能存在某些任務超出了人類認知能力,包括閱讀包含大量數據點的實驗結果,或提煉過去一年所有主要科學出版物的內容。在這些情況下,LLMs可以幫助研究人員獲取大量文本中的信息,這些文本如果僅靠研究閱讀來吸取其中信息,在短時間內可能會是很具挑戰性的。

          LLMs的能力超越了典型的文本摘要任務,其中收集的文本以人類可讀(盡管冗長)的自然語言呈現。但LLM嵌入為主觀文本提供了客觀的量化,以解決語言歧義并給出標準化的輸出。這些基于主觀性的文本可以是簡單的詞語或短語,如用于捕捉《阿甘正傳》中演員表現的情感[33],或描述氣味或風味化合物的化學感知[44]。它們還可能更為復雜,就像迷幻研究中使用的文本那樣,描述迷幻藥物及其對大腦和意識影響的研究。

          “迷幻體驗”這個常用表達方式暗示了不同體驗之間的一致性。實際上,迷幻體驗充滿了細微差別和變化,部分根源于藥物使用者的心態和環境,部分根源于藥物之間的精神藥理學差異。理解決定迷幻藥物使用者觀察到的細微差別的潛在因素,應該有助于我們了解是否可以利用某些藥物或主觀效果的類型來治療特定狀況,就像通過攝取賽洛西賓(psilocybin)和MDMA所提供的不同的體驗在治療強迫癥和創傷后應激障礙方面所顯示的早期成功,正是這種探索的實證。

          為了研究這些細微差別,最近的一項研究使用了自然語言處理技術來分析來自迷幻藥物使用者的6,850份“體驗報告”(圖7)。研究的目標是建立主觀體驗、27種不同藥物,以及人類大腦中表達的40種相關神經遞質受體之間的聯系。這項研究的結果包括通過典型關聯分析(CCA)得出的詳細詞匯列表,該列表按語義維度相關性排名,捕捉了體驗報告中的主要主題。

          ? 圖7:使用NLP進行多模態受體-文本整合,揭示迷幻藥物體驗的機制基礎分析。

          人類解讀由數千個詞以特定順序捕捉的復雜主題相當困難。CCA提供的排名列表中的每個詞都帶有可能被主觀解釋。由相鄰術語提供的上下文以及列表不同子部分(即前1%與前5%)捕獲的一般意義轉變,進一步拓寬了潛在解釋的范圍。盡管結果以密集的高亮詞匯列表呈現,但LLM可以無縫地從這些詞集中抽象出語義核心主題,推導出由迷幻藥物引發的主觀效果的共享高層次類別。這些高層次類別隨后可用于開拓新藥發現平臺,產生關于實驗治療方法的假設,尋找具有針對性主觀效果的新迷幻藥物,以治療特定狀況。未來LLM的應用展示了研究人員從復雜、非結構化數據中獲取洞察的新機遇,尤其是在人類難以單獨應對這些數據的情況下。

          面向醫學的LLMs,如Meta的PMC-LLaMA[46],提供了一個有希望的解決方案,用于篩選大量文本來源,綜合其意義和信息價值。通過收集和總結不同來源的信息景觀,這些模型提供了觸及甚至理解了復雜主題的本質。

          具體來說,PMC-LLaMA旨在通過訓練龐大的語料庫(480萬篇生物醫學學術論文、3萬本醫學教科書,以及202M個醫學問答對、決策理由和對話)來支持用戶導航廣闊的醫學信息。PMC-LLaMA在零樣本評估醫學知識提示時產生了合理且連貫的回應,例如,回答患者關于尿路感染的問題,以及關于微生物學和藥理學的深入問題。當被問及涉及結核病和激素避孕藥物相互作用的多項選擇題時,PMC-LLaMA正確指出了藥物相互作用的機制,并詳細闡述了得出答案的理由(通過抗生素利福平誘導CYP3A4,導致激素避孕藥物濃度降低,最終增加了意外懷孕的可能性)。

          PMC-LLaMA強調了數據驅動方法在專業領域的有效性以及領域特定模型調整的價值。這種對提示查詢的令人印象深刻的回應,代表了機器輔助人類智能的場景,其中LLMs可以被定制為有效地在專業領域教育用戶,突顯了這些模型改造社會的潛力和開發領域特定模型的重要性。

          作為日常生活中另一個具體的例子,準備考試的醫學生可以查詢PMC-LLaMA等模型,獲取特定主題的信息,以更高效的時間覆蓋更廣泛的材料。正如工業自動化釋放了工人,讓他們有更多時間去完成其他任務一樣,我們可以預期LLMs的發展將呈現類似的機會。

          然而,并非所有的改進都將僅僅是改善生活;許多應用,如可以訪問患者電子健康記錄的交互式LLM,可能具有挽救生命的潛能。不幸的是,Rodziewicz等人最近的一項統計調查估計,每年約有40萬住院的美國患者經歷某種可預防的傷害,其中大約四分之一的案例導致死亡。在醫學領域,AI的潛在救命作用主要體現在幾個方面:例如(1)減輕醫療專業人員的工作負擔,使他們能夠更有效地評估和治療患者,以及(2)作為早期預警系統,提醒可能的不良事件。

          多來源和多模態語言模型的整合

          在過去的幾十年里,神經科學已經擴展到越來越細分的研究活動領域。例如,阿爾茨海默病(AD)在幾個基本上相互獨立的研究社區中被研究。研究人類群體中AD病因的流行病學家并不經常與遺傳學家、實驗神經學家、腦成像研究者或動物實驗研究者進行交流。研究與AD相關的全基因組風險變異的遺傳學家,也不一定會參考或整合來自這些其他神經科學社區的現有知識。致力于研究AD大腦結構和功能差異的成像神經科學家,在設計和解釋他們的研究時,也不一定會考慮流行病學人群分層的方面。每個AD研究社區似乎都在自己的“泡沫”中運作,形成了各自的杰出科學家群體,自己常討論的假設池,以及自己獨特的知識積累過程,且每年發表著大量的研究成果。

          鑒于每年研究產出的不斷增加,單個研究者越來越難以閱讀所有這些論文。神經科學的許多研究活動領域以類似的方式被分割。這種知識碎片化可能是21世紀科學事業面臨的最大挑戰之一。現在,LLMs提供了一個機會,可以整合并翻譯來自單一神經科學主題多個互補視角的日益增長的知識庫。

          LLMs也開始針對醫學領域進行定制,如在醫學考試和生成記錄等任務中取得了有希望的結果。迄今為止,醫學中的AI通常基于計算機視覺,對文本、語音和其他類型信息的整合有限。然而,通過LLMs對各種數據源的總結和整合,為推進AI輔助醫療專業人員的實踐帶來了巨大的希望。生物傳感器、基因組檔案、醫療記錄、患者自述、代謝數據和其他實驗室檢測,都成為了構建針對個體患者定制的多模態AI診療路徑的潛在數據源[48]。這種AI解決方案的潛力巨大,因為它可能對患者的生活和醫療專業人員的表現產生直接影響,,盡管這一目標還未完全實現[49]

          目前,應用LLMs減輕醫療專業人員文檔工作量的可能性也正受到醫學界的廣泛關注。盡管使用LLMs在醫學和醫學研究中的倫理問題開始被討論[50],但現在越來越明顯的是,LLMs可以作為輔助工具,有效減輕目前占用大量人力和時間的醫療流程,如電子健康記錄的創建和處理,以及疾病的診斷和預后等多個方面。

          作為下一個圣杯,哪些非文本數據模式可以賦予LLMs行動力?廣義上,LLMs可能是第一個能夠無縫結合結構化和非結構化信息的技術,無論信息的規模多大或是多么動態。此外,ChatGPT和類似的LLM變體已經成功地將來自多種語言、地理和文化的分散文本源聚合到一個模型實例中,這表明LLMs在多語言文本處理中的強大能力。

          LLMs在彌合不同信息類型間差異,尤其是計算機視覺(即圖像)與語言(即文本)之間的差異方面展現出了巨大潛力。機器學習社區的一個近期例子是,Alayrac等人[35]展示了如何通過包含額外的模態信息來改進語言模型。Flamingo模型便是在包含文本和圖像信息的互聯網上的大規模多模態語料庫上訓練的,它的小樣本學習能力使其能夠適應包含圖像和視頻材料的各種任務。模型可以根據特定任務的例子進行提示,基于視覺條件的自回歸文本生成,在許多場景中提供了實際益處。在神經科學領域,一個早期的例子是嘗試使用模型僅從大腦活動測量重建自然圖像的研究[51]

          此外,DALL-E/CLIP(由OpenAI在2021/22年提供)是生成性AI中文本-圖像融合的早期例子,最初該模型基于GPT-3變體開發,旨在從用戶提示生成更真實的圖像。這個多模態融合引擎可以合成各種形式和風格,如逼真的自然圖像、類似繪畫的藝術和符號,以及設計方案的內部模型,調用真實和想象的對象、場景和人物,且無需眾多訓練示例(零樣本學習)。其組件CLIP(對比語言-圖像預訓練)在互聯網上約4億對圖像和文本標題上進行了訓練,用于在DALL-E生成的圖像中選擇最佳輸出。CLIP將計算機視覺和NLP結合在一個單一網絡中,深度處理、分類和生成大量圖像的文本注釋。它不需要嚴格的任務特定訓練,可以將其知識泛化到新的、未曾遇到的任務。

          在神經科學背景下,未來的LLM框架可能會潛在地攝取多種形式的“圖像”,如結構和功能MRI腦成像、PET、fNIRS,以及更廣泛的EEG/MEG衍生腦圖像。因此,一個重要的未來研究方向是探索DALL-E/CLIP和類似新興技術,能在多大程度上成功地從自然圖像擴展到包含大腦“圖像”的多模態分析中。

          例如,NeuroSynth數據庫展示了一種自下而上的方法[52],它自動提取了超過3,000篇腦成像任務實驗文章的3D圖像空間激活坐標,以及這些文章的全文。這一舉措已經通過一個用戶查詢的網絡界面為神經科學界提供了價值。與之平行的研究是BrainMap[53.54]數據庫,其以自上而下的方式,圍繞心理學類別構建了腦成像實驗的人類本體論。對認知現象的描述系統是由人類領域專家手工設計的。

          在這項研究中,同樣也已經嘗試了對圖像描述對進行聚合,可視作訓練或完善最先進的多模態LLMs的一個有吸引力的起點。一個想法是基于兩個數據庫中可用的研究、專家定義和全文注釋相互補充,整合NeuroSynth和BrainMap,可能啟用LLM支持的查詢服務,也許還能跨越兩種類型的大腦圖像元信息進行推理。更廣泛地說,旨在跨越內容類型界限的這些研究方向特別有前景,因為LLMs提供了一個前所未有的機會,將結構化和非結構化信息融合于一個統一的框架中。

          在未來幾年,神經科學家可以系統地研究哪些與大腦相關、適合LLM涌現的功能模式的信息?又哪些類型的神經科學信息可以被標記,以及如何標記?

          最近的LLM研究顯示了利用嵌入的氨基酸塊、基因及其mRNA轉錄本、細胞和細胞類型、表型和疾病狀態的潛力。LLMs可能還能處理標記化的大腦區域活動實例、白質纖維通路、大腦結構變化位置、EEG/MEG中的頻率帶變化或鈣成像。

          經由這些能力,神經科學家可以將數據集中的序列語義和生物學視角結合起來,形成對大腦的統一視角。這一目標的實現可能需要對模型架構進行創新,以表征這些信息層。或者,我們可以使用預訓練的LLMs的輸出作為一種編碼特定信息模式的蒸餾形式,將其整合到隨后訓練的較小模型中,以實現最終的研究目標。具體來說,來自英國生物銀行和其他大型數據集的數據集允許LLM將基因變異信息和其他分子數據與各種人類健康信息關聯起來。

          作為神經科學這一高度跨學科努力的核心愿望,LLMs可以幫助我們彌合不同神經科學社區之間的鴻溝,并使我們形成能夠整合多來源知識的NLP模型。

          大模型作為克服當前概念危機的認知紐帶

          LLMs可能提供一個替代工具包,該工具對于匯總和編輯神經科學研究者用來解析大腦功能的人類構建概念非常有價值。重要的是要認識到,特別是在經典的假設驅動研究中,整個研究努力都依賴于預先假設的認知和神經術語的有效性,這些術語用于闡述實驗研究條件。然而,許多頻繁使用的心理學或認知術語定義脆弱,無法在自然界中直接觀察到。許多由人類專家確定的神經科學概念可能并不代表“自然分類”,因為它們并沒有在自然界中劃分出對立獨立的神經回路。

          大多數認知過程的概念在神經科學作為一個連貫學科出現之前(大約在20世紀中葉)就已經被創造出來,那時大腦功能才開始被理解。此外,某些行為或認知概念可能只在健康受試者精心設計的實驗或臨床條件(如具有局部腦損傷的患者[55])中出現。根據這種觀點,神經認知過程可以在受試者參與特定實驗任務時被分解,作為揭示大腦與行為之間映射的途徑。也許現在是時候用一種有規律的數據驅動方法,來測試這些概念的有效性了。

          神經科學家在描述大腦現象時遭遇的復雜性,與路德維希·維特根斯坦在其著作《哲學研究》中所提出的觀點緊密相關。維特根斯坦晚年認為,人類語言本身所帶來的混淆,是許多哲學問題的根本來源。例如,在心理學中,甚至像“認知”和“情感”這樣的簡單詞匯都缺乏一個普遍認同的定義[56-57]。此外,常在心智理論中提及的大腦網絡,即從他人視角進行思考的能力,也始終參與了一系列多樣化的心理過程,包括道德思考、自傳體記憶檢索和空間導航等[58-60]。我們目前遺留的神經認知框架,可能沒有指向正確的方向[61]

          例如,我們為什么隱含地期望威廉·詹姆斯的杰作(《心理學原理》,1890年)中的術語和概念,能夠代表大腦中特定的機制?更進一步的是,當我們遇到難以調和的發現時,我們有時會傾向于創造一個新術語,而不是真正深入問題的核心。

          許多神經科學研究采取自外而內的方法:他們首先創造概念,然后試圖在大腦活動中找到這些概念的對應或描述[61]。這與一些作者所說的“新顱相學”密切相關, 后者是一種簡化主義方法或“過度定位”,試圖將術語映射到大腦的局部地理區域[62]雖然現代神經成像顯示,在某些任務中特定的大腦區域確實更活躍,但鑒于大腦的高度互聯性以及多個認知功能的網絡分布特點,試圖為復雜的功能找到單一的“定位點”可能極具誤導。

          研究重點應該放在大腦的實際反應上,而不是人類發明的術語本身。的確,正是是大腦中的神經認知過程產生了行為和認知。簡而言之,心理術語如何以及在多大程度上映射到區域大腦反應,仍然是難以捉摸的,反之亦然[62-64]。出于這些原因,一些作者提出神經科學在數據上越來越豐富[65],但在理論上仍然貧乏,指出了迫切需要新的研究假設生成手段。

          關于大腦疾病的定義,尤其是精神病學中的術語,也可以提出類似的觀點。相同的概念并不唯一地與相同的機制相關,相同的機制也不經常對應這一個明確的診斷實體。這一認識可能是為什么相同的藥物類別經常有助于緩解名義上不同的精神狀況癥狀的原因之一。

          DSM-5和ICD-10手冊是根據精選專家的意見對精神病進行分類的。此外,資助機構只有在研究人員的提案理由和預期結果堅定地基于這些人類制造的診斷類別時,才會承諾資助。然而,越來越清楚的是,即使在遺傳水平上[66],基礎生物學中的病理生理過程也具有相當高異質性,且相互存在重疊。因此,當今對精神健康狀況的描述系統雖然有助于實踐醫生之間的交流,但在研究的生物學有效性和臨床護理的預測性方面,仍然顯得力不從心。

          盡管神經科學中現有描述系統存在明顯的不足,但很少有嘗試以自下而上的方式構建這樣一個語義概念系統。在一項開創性研究中,研究人員設計了一個基于數據的方法,來構建神經認知類別的框架[67],該框架匯集了大約20,000篇人類腦成像論文的信息。利用超過25年腦成像研究積累的數據寶庫,NLP算法挖掘了研究文章的語義內容,并將其與來自功能腦掃描(fMRI,PET)的60多萬個拓撲位置相結合。這種方法同時平等關注了語義原則和神經活動原則,允許研究者以整體方法系統地整合大腦和行為。

          此外,這種方法還有助于克服神經科學界長期困擾的一個問題——如何從概念出發推理大腦活動(前向推理)以及如何從大腦活動推斷概念(后向推理)[62]在實證驗證分析中,這種“計算本體論”被證明比神經科學和精神病學中廣泛接受的描述系統,在重現術語與功能鏈接方面,對新的、未見過的研究成果具有更好的適應性。

          ? 圖8:NLP工具以完全底層的方式整合現有關于人類認知的概念

          綜合來看,我們用來描述世界的敘事和故事塑造了我們設計神經科學實驗和解釋發現的方式。在神經科學中,真正的進步需要對詞語使用、語言衛生(language hygiene)和概念化變體有特別的敏感性。在未來,由LLM賦能的神經科學中,我們可能能夠將心理學固定術語,基于科學證據重新放到新架構中,而不是延續前一個歷史時期的遺留術語。

          新興的LLM技術可以激發基于生物學的大腦疾病分類學的,具有重大意義的重新定義,從而跨越診斷邊界,進入一個基于證據的精神醫學新時代,而不是僅僅依賴于特定專家的判斷。正如維特根斯坦所說,“我語言的極限就是我世界的極限。”[68]

          結論

          在過去的5到10年里,生物學已經轉變為一門“可計算”的學科。例如,大規模基因數據庫與定向CRISPR基因編輯和機器學習分析相結合,使生物學更接近于一個工程學科。我們生成生物分子數據的能力遠遠超過了我們從這些系統中真正獲得理解的雄心——正如John Naisbitt所寫[69]今天的神經科學家實際上是“被信息淹沒,卻又渴望著知識”。

          LLMs為研究者提供了新的機遇。這類模型表明,純粹的統計暴力可以幫助研究者通過閱讀和生成生物學來揭開大腦和疾病的神秘面紗,通過構建知識框架,解鎖前所未有的大規模信息整合和研讀模式。基礎模型可能會從神經科學領域中提取、協同和合成知識,跨越孤立的“學科間隔”,這項任務可能會(也可能不會)超越人類的理解范疇。神經科學家需要接受并擁抱這樣一個令人不安的可能性:人類大腦作為一個生物系統,其復雜性可能超出了人類智能獨立理解的范疇,唯有借助AI工具處理大數據,我們才可能理解它。

          從更廣泛的社會角度來看,工業革命主要影響了藍領工作。相比之下,當前的LLM革命可能會主要影響白領工作,包括神經科學研究人員的工作。事實上,LLMs的驚人效能已被一些風險投資家和投資者與火的發現、電力的應用或互聯網的誕生相提并論,這些發明都極大地推動了人類社會的進步。LLM是否真就能改變世界,讓我們拭目以待。

          參考文獻:

          • 1. Mikolov, T., Sutskever, I., Chen, K., Corrado, G.S., and Dean, J. (2013).
          • Distributed representations of words and phrases and their compositionality. Adv. Neural Inf. Process. Syst. 26. https://papers.nips.cc/paper_files/
          • paper/2013/file/9aa42b31882ec039965f3c4923ce901b-Paper.pdf.
          • 2. Le, Q., and Mikolov, T. (2014). Distributed representations of sentences
          • and documents. PMLR 32, 1188–1196.
          • 3. Conneau, A., Kiela, D., Schwenk, H., Barrault, L., and Bordes, A. (2017).
          • Supervised learning of universal sentence representations from natural
          • language inference data. Preprint at arXiv. https://doi.org/10.48550/arXiv.1705.02364.
          • 4. McCann, B., Bradbury, J., Xiong, C., and Socher, R. (2017). Learned in
          • translation: Contextualized word vectors. Adv. Neural Inf. Process.
          • Syst.. https://dl.acm.org/doi/10.5555/3295222.3295377.
          • 5. Mikolov, T., Chen, K., Corrado, G., and Dean, J. (2013). Efficient estimation
          • of word representations in vector space. Preprint at arXiv. https://doi.org/
          • 10.48550/arXiv.1301.3781.
          • 6. Pennington, J., Socher, R., and Manning, C.D. (2014). Glove: Global vectors for word representation. https://nlp.stanford.edu/pubs/glove.pdf.
          • 7. Bubeck, S., Chandrasekaran, V., Eldan, R., Gehrke, J., Horvitz, E., Kamar,
          • E., Lee, P., Lee, Y.T., Li, Y., and Lundberg, S. (2023). Sparks of artificial
          • general intelligence: Early experiments with gpt-4. Preprint at arXiv.
          • https://doi.org/10.48550/arXiv.2303.12712.
          • 8. Goldstein, A., Zada, Z., Buchnik, E., Schain, M., Price, A., Aubrey, B., Nastase, S.A., Feder, A., Emanuel, D., Cohen, A., et al. (2022). Shared computational principles for language processing in humans and deep language
          • models. Nat. Neurosci. 25, 369–380. https://doi.org/10.1038/s41593-022-
          • 01026-4.
          • 9. Caucheteux, C., Gramfort, A., and King, J.-R. (2023). Evidence of a predictive coding hierarchy in the human brain listening to speech. Nat. Hum. Behav. 7, 430–441. https://doi.org/10.1038/s41562-022-01516-2.
          • 10. Schrimpf, M., Blank, I.A., Tuckute, G., Kauf, C., Hosseini, E.A., Kanwisher,
          • N., Tenenbaum, J.B., and Fedorenko, E. (2021). The neural architecture of
          • language: Integrative modeling converges on predictive processing. Proc.
          • Natl. Acad. Sci. USA 118, e2105646118. https://doi.org/10.1073/pnas.
          • 2105646118.
          • 11. Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez,
          • A.N., Kaiser, q., and Polosukhin, I. (2017). Attention is all you need. Adv.
          • Neural Inf. Process. Syst. 30.
          • 12. Hassid, M., Peng, H., Rotem, D., Kasai, J., Montero, I., Smith, N.A., and
          • Schwartz, R. (2022). How much does attention actually attend? Questioning the Importance of Attention in Pretrained Transformers. Preprint at arXiv. https://doi.org/10.48550/arXiv.2211.03495.
          • 13. Tay, Y., Dehghani, M., Abnar, S., Shen, Y., Bahri, D., Pham, P., Rao, J.,
          • Yang, L., Ruder, S., and Metzler, D. (2020). Long range arena: A benchmark for efficient transformers. Preprint at arXiv. https://doi.org/10.
          • 48550/arXiv.2011.04006.
          • 14. Bzdok, Danilo, and Yeo, B.T.T (2017). Inference in the age of big data:
          • Future perspectives on neuroscience. Neuroimage 155, 549–564.
          • 15. Wei, J., Tay, Y., Bommasani, R., Raffel, C., Zoph, B., Borgeaud, S., Yogatama, D., Bosma, M., Zhou, D., and Metzler, D. (2022). Emergent abilities
          • of large language models. Preprint at arXiv. https://doi.org/10.48550/arXiv.2206.07682.
          • 16. OpenAI. (2023). GPT-4 Technical Report. Preprint at arXiv. https://doi.org/
          • 10.48550/arXiv.2303.08774.
          • 17. Kaplan, J., McCandlish, S., Henighan, T., Brown, T.B., Chess, B., Child, R.,
          • Gray, S., Radford, A., Wu, J., and Amodei, D. (2020). Scaling laws for neural language models. Preprint at arXiv. https://doi.org/10.48550/arXiv.
          • 2001.08361.
          • 18. Touvron, H., Lavril, T., Izacard, G., Martinet, X., Lachaux, M.-A., Lacroix,
          • T., Rozie`re, B., Goyal, N., Hambro, E., and Azhar, F. (2023). Llama:
          • Open and efficient foundation language models. Preprint at arXiv.
          • https://doi.org/10.48550/arXiv.2302.13971.
          • 19. Hoffmann, J., Borgeaud, S., Mensch, A., Buchatskaya, E., Cai, T., Rutherford, E., Casas, D.d.L., Hendricks, L.A., Welbl, J., and Clark, A. (2022).
          • Training compute-optimal large language models. Preprint at arXiv.
          • https://doi.org/10.48550/arXiv.2203.15556.
          • 20. Schaeffer, R., Miranda, B., and Koyejo, S. (2023). Are emergent abilities of
          • Large Language Models a mirage?. Preprint at arXiv. https://doi.org/10.
          • 48550/arXiv.2304.15004.
          • 21. Caballero, E., Gupta, K., Rish, I., and Krueger, D. (2022). Broken neural
          • scaling laws. Preprint at arXiv. https://doi.org/10.48550/arXiv.2210.14891.
          • 22. Houlsby, N., Giurgiu, A., Jastrzebski, S., Morrone, B., De Laroussilhe, Q.,
          • Gesmundo, A., Attariyan, M., and Gelly, S. (2019). Parameter-efficient
          • transfer learning for NLP. PMLR 97, 2790–2799. https://proceedings.mlr.
          • press/v97/houlsby19a/houlsby19a.pdf.
          • 23. Pfeiffer, J., Ruckle € ′ , A., Poth, C., Kamath, A., Vulic, I., Ruder, S., Cho, K.,
          • and Gurevych, I. (2020). Adapterhub: A framework for adapting transformers. Preprint at arXiv. https://doi.org/10.48550/arXiv.2007.07779.
          • 24. Bapna, A., Arivazhagan, N., and Firat, O. (2019). Simple, scalable adaptation for neural machine translation. Preprint at arXiv. https://doi.org/10.
          • 48550/arXiv.1909.08478.
          • 25. Radford, A., Wu, J., Child, R., Luan, D., Amodei, D., and Sutskever, I.
          • (2019). Language models are unsupervised multitask learners. OpenAI
          • blog 1, 9.
          • 26. Brown, T., Mann, B., Ryder, N., Subbiah, M., Kaplan, J.D., Dhariwal, P.,
          • Neelakantan, A., Shyam, P., Sastry, G., and Askell, A. (2020). Language
          • models are few-shot learners. Adv. Neural Inf. Process. Syst. 33,
          • 1877–1901.
          • 27. Xiang, J., Tao, T., Gu, Y., Shu, T., Wang, Z., Yang, Z., and Hu, Z. (2023).
          • Language Models Meet World Models: Embodied Experiences Enhance
          • Language Models. Preprint at arXiv. https://doi.org/10.48550/arXiv.
          • 2305.10626.
          • 28. Berglund, L., Tong, M., Kaufmann, M., Balesni, M., Stickland, A.C., Korbak, T., and Evans, O. (2023). The Reversal Curse: LLMs trained on "A is
          • B" fail to learn "B is A".. Preprint at arXiv. https://doi.org/10.48550/arXiv.
          • 2309.12288.
          • 29. Brandes, N., Goldman, G., Wang, C.H., Ye, C.J., and Ntranos, V. (2023).
          • Genome-wide prediction of disease variant effects with a deep protein language model. Nat. Genet. 55, 1512–1522. https://doi.org/10.1038/
          • s41588-023-01465-0.
          • 30. Cui, H., Wang, C., Maan, H., and Wang, B. (2023). scGPT: Towards Building a Foundation Model for Single-Cell Multi-omics Using Generative AI.
          • Preprint at bioRxiv. https://doi.org/10.1101/2023.04.30.538439.
          • 31. Jumper, J., Evans, R., Pritzel, A., Green, T., Figurnov, M., Ronneberger, O.,
          • Tunyasuvunakool, K., Bates, R., Z? ′dek, A., Potapenko, A., et al. (2021) Highly accurate protein structure prediction with AlphaFold. Nature 596,
          • 583–589. https://doi.org/10.1038/s41586-021-03819-2.
          • 32. Rives, A., Meier, J., Sercu, T., Goyal, S., Lin, Z., Liu, J., Guo, D., Ott, M.,
          • Zitnick, C.L., Ma, J., and Fergus, R. (2021). Biological structure and function emerge from scaling unsupervised learning to 250 million protein sequences. Proc. Natl. Acad. Sci. USA 118, e2016239118. https://doi.org/
          • 10.1073/pnas.2016239118.
          • 33. Yang, E., Milisav, F., Kopal, J., Holmes, A.J., Mitsis, G.D., Misic, B., Finn,
          • E.S., and Bzdok, D. (2023). The default network dominates neural responses to evolving movie stories. Nat. Commun. 14, 4197. https://doi.
          • org/10.1038/s41467-023-39862-y.
          • 34. Ye, Z., Liu, Y., and Li, Q. (2021). Recent Progress in Smart Electronic Nose
          • Technologies Enabled with Machine Learning Methods. Sensors 21, 7620.
          • https://doi.org/10.3390/s21227620.
          • 35. Alayrac, J.-B., Donahue, J., Luc, P., Miech, A., Barr, I., Hasson, Y., Lenc,
          • K., Mensch, A., Millican, K., and Reynolds, M. (2022). Flamingo: a visual
          • language model for few-shot learning. Adv. Neural Inf. Process. Syst.
          • 35, 23716–23736.
          • 36. Sharma, P., Ding, N., Goodman, S., and Soricut, R. (2018). Conceptual
          • captions: A cleaned, hypernymed, image alt-text dataset for automatic image captioning. Proceedings of the 56th Annual Meeting of the Association
          • for Computational Linguistics. https://aclanthology.org/P18-1238/.
          • 37. Thomee, B., Shamma, D.A., Friedland, G., Elizalde, B., Ni, K., Poland, D.,
          • Borth, D., and Li, L.-J. (2016). YFCC100M: The new data in multimedia
          • research. Commun. ACM 59, 64–73.
          • 38. Zhou, Y., Chia, M.A., Wagner, S.K., Ayhan, M.S., Williamson, D.J.,
          • Struyven, R.R., Liu, T., Xu, M., Lozano, M.G., Woodward-Court, P., et al.
          • (2023). A foundation model for generalizable disease detection from retinal
          • images. Nature 622, 156–163.
          • 39. Wagner, S.K., Hughes, F., Cortina-Borja, M., Pontikos, N., Struyven, R.,
          • Liu, X., Montgomery, H., Alexander, D.C., Topol, E., Petersen, S.E., et al.
          • (2022). AlzEye: longitudinal record-level linkage of ophthalmic imaging
          • and hospital admissions of 353 157 patients in London, UK. BMJ open
          • 12, e058552.
          • 40. Weininger, D. (1988). SMILES, a chemical language and information system. 1. Introduction to methodology and encoding rules. J. Chem. Inf.
          • Comput. Sci. 28, 31–36.
          • 41. Bzdok, D., and Ioannidis, J. P. (2019). Exploration, inference, and prediction in neuroscience and biomedicine. Trends in neurosciences 42,
          • 251–262.
          • 42. Bzdok, D., Engemann, D., and Thirion, B. (2020). Inference and prediction
          • diverge in biomedicine. Patterns 1, 100119.
          • 43. Shanahan, M., McDonell, K., and Reynolds, L. (2023). Role play with large
          • language models. Nature 623, 493–498. https://doi.org/10.1038/s41586-
          • 023-06647-8.
          • 44. Sharma, A., Kumar, R., Ranjta, S., and Varadwaj, P.K. (2021). SMILES to
          • smell: decoding the structure–odor relationship of chemical compounds
          • using the deep neural network approach. J. Chem. Inf. Model. 61,
          • 676–688.
          • 45. Ballentine, G., Friedman, S.F., and Bzdok, D. (2022). Trips and neurotransmitters: Discovering principled patterns across 6850 hallucinogenic experiences. Sci. Adv. 8, eabl6989.
          • 46. Wu, C., Zhang, X., Zhang, Y., Wang, Y., and Xie, W. (2023). Pmc-llama:
          • Further finetuning llama on medical papers. Preprint at arXiv. https://doi.
          • org/10.48550/arXiv.2304.14454.
          • 47. Rodziewicz, T.L., Houseman, B., and Hipskind, J.E. (2023). Medical Error
          • Reduction and Prevention. In StatPearls (StatPearls Publishing LLC.).
          • 48. Hipp, R., Abel, E., and Weber, R.J. (2016). A Primer on Clinical Pathways.
          • Hosp. Pharm. 51, 416–421. https://doi.org/10.1310/hpj5105-416.
          • 49. Acosta, J.N., Falcone, G.J., Rajpurkar, P., and Topol, E.J. (2022). Multimodal biomedical AI. Nat. Med. 28, 1773–1784. https://doi.org/10.1038/
          • s41591-022-01981-2.
          • 62. Poldrack, R.A. (2006). Can cognitive processes be inferred from neuroimaging data? Trends Cogn. Sci. 10, 59–63. S1364-6613(05)00336-
          • 0 [pii]. https://doi.org/10.1016/j.tics.2005.12.004.
          • 63. Laird, A.R., Fox, P.M., Eickhoff, S.B., Turner, J.A., Ray, K.L., McKay, D.R.,
          • Glahn, D.C., Beckmann, C.F., Smith, S.M., and Fox, P.T. (2011). Behavioral interpretations of intrinsic connectivity networks. J. Cogn. Neurosci.
          • 23, 4022–4037. https://doi.org/10.1162/jocn_a_00077.
          • 64. Mesulam, M.M. (1998). From sensation to cognition. Brain 121 (Pt 6),
          • 1013–1052.
          • 65. Voytek, B. (2022). The data science future of neuroscience theory. Nat.
          • Methods 19, 1349–1350. https://doi.org/10.1038/s41592-022-01630-z.
          • 66. Brainstorm Consortium, Anttila, V., Bulik-Sullivan, B., Finucane, H.K., Walters, R.K., Bras, J., Duncan, L., Escott-Price, V., Falcone, G.J., Gormley,
          • P., et al. (2018). Analysis of shared heritability in common disorders of
          • the brain. Science 360, eaap8757. https://doi.org/10.1126/science.
          • aap8757.
          • 67. Beam, E., Potts, C., Poldrack, R.A., and Etkin, A. (2021). A data-driven
          • framework for mapping domains of human neurobiology. Nat. Neurosci.
          • 24, 1733–1744. https://doi.org/10.1038/s41593-021-00948-9.
          • 68. Wittgenstein, L. (1958). Philosophical Investigations (Basil Blackwell).
          • 69. Naisbitt, J. (1988). Megatrends: ten new directions transforming our lives
          • (Warner Books).
          • 70. Dziri, N., Milton, S., Yu, M., Zaiane, O., and Reddy, S. (2022). On the origin
          • of hallucinations in conversational models: Is it the datasets or the
          • models?. Preprint at arXiv. https://doi.org/10.48550/arXiv.2204.07931.
          • 71. Strubell, E., Ganesh, A., and McCallum, A. (2019). Energy and policy considerations for deep learning in NLP. Preprint at arXiv. https://doi.org/10.
          • 48550/arXiv.1906.02243.
          • 72. Nadeem, M., Bethke, A., and Reddy, S. (2020). StereoSet: Measuring stereotypical bias in pretrained language models. Preprint at arXiv. https://
          • doi.org/10.48550/arXiv.2004.09456.
          • 73. Liu, F., Bugliarello, E., Ponti, E.M., Reddy, S., Collier, N., and Elliott, D.
          • (2021). Visually grounded reasoning across languages and cultures. Preprint at arXiv. https://doi.org/10.48550/arXiv.2109.13238.

          之前的文章中,我們討論了圖片的尺寸自適應、裁切與縮放、壓縮、動態webp等技術。這些技術都是對單張圖片的處理,而在實際項目中,我們往往需要處理大量的圖片。本文將討論如何高效批量優化圖片,并介紹一些圖片加載技巧。

          一、圖片預加載

          圖片預加載(Preloading Images)是一種提前加載即將使用的圖片資源的技術。通過在頁面加載時就將未來可能用到的圖片資源進行預加載,可以在用戶真正需要這些圖片時,減少等待時間,提升用戶體驗。


          HTML中的預加載


          在HTML中,可以通過<link>標簽的rel屬性來實現圖片預加載。例如,我們可以在頁面的`<head>`標簽中添加如下代碼:

          <link rel="preload" href="image.jpg" as="image" fetchpriority="high">


          <link> 標簽用于預加載一個圖片資源。讓我們逐個解釋其中的屬性及其作用:


          • rel="preload":


          當前<link>標簽的用途是預加載資源。preload告訴瀏覽器提前加載指定的資源(在這里是圖片),以便在后續使用時能夠更快地提供資源。這有助于提高頁面的加載性能,尤其是在資源密集型的網站上。


          • href="image.jpg":


          指定要預加載的資源的URL。href屬性是一個URL,指向需要預加載的資源。在這個例子中,image.jpg是要預加載的圖片的路徑。


          • as="image":

          指定預加載資源的類型。as屬性告訴瀏覽器預加載資源的類型,以便正確地處理和優化加載過程。在這個例子中,as="image"明確了資源是一個圖片。這對于瀏覽器優化資源加載順序和優先級非常重要。


          • fetchpriority="high":


          指定預加載資源的獲取優先級。fetchpriority屬性是一個新的屬性,用于指示瀏覽器在預加載資源時的優先級。在這個例子中,fetchpriority="high"告訴瀏覽器這是一個高優先級的資源,應該盡快加載。這在需要確保關鍵資源(如首屏圖片)快速加載時非常有用。


          CSS中的預加載


          在CSS中,可以通過background-image屬性來實現圖片預加載。例如,我們可以在CSS文件中添加如下代碼:

          .preload {
           background-image: url('image.jpg');
          }

          這段CSS代碼定義了一個`.preload`類,其中包含了一個 background-image 屬性,指定了要預加載的圖片資源的URL。在頁面加載時,瀏覽器會提前加載這個圖片資源,以便在后續使用時能夠更快地提供資源。


          JavaScript中的預加載


          JavaScript中,可以通過Image對象來實現圖片預加載。例如,我們可以在JavaScript代碼中添加如下代碼:

          var img = new Image();
          img.src = 'image.jpg';

          這段JavaScript代碼創建了一個新的Image對象,并設置了src屬性為要預加載的圖片資源的URL。當這段代碼執行時,瀏覽器會開始加載這個圖片資源,以便在后續使用時能夠更快地提供資源。


          二、圖片懶加載

          圖片懶加載(Lazy Loading Images)是一種延遲加載圖片資源的技術。通過在頁面加載時只加載可見區域內的圖片資源,可以減少頁面的加載時間,提升用戶體驗。


          img loading屬性


          HTML中,可以通過loading屬性來實現圖片懶加載。例如,我們可以在<img>標簽中添加如下代碼:


          <img src="image.jpg" loading="lazy" alt="Image">

          loading屬性是一個新的屬性,用于指定圖片的加載方式。它有三個可能的值:


          • auto: 默認值,表示圖片會在頁面加載時立即加載。
          • lazy: 表示圖片會在視口內時才會加載。
          • eager: 表示圖片會在頁面加載時立即加載,不管是否在視口內。


          Intersection Observer API


          JavaScript中,可以通過Intersection Observer API來實現圖片懶加載。Intersection Observer API是一種用于監視元素與視口交叉狀態的API,可以用于實現懶加載、無限滾動等功能。


          例如,我們可以在JavaScript代碼中添加如下代碼:

          // 創建一個IntersectionObserver實例
           const intersectionObserver = new IntersectionObserver((entries) => {
            entries.forEach(entry => {
            if (entry.isIntersecting) {
            // 當元素與視窗交叉時執行的操作
            const img = entry.target; // entry.target是交叉的元素
            // 假設data-src屬性包含了圖片的路徑
            img.src = img.dataset.src;
            intersectionObserver.unobserve(img); // 停止觀察該元素
           }
           });
          });
          
          // 為所有需要滾動加載的元素(例如圖片)設置觀察
          document.querySelectorAll('img[data-src]').forEach((img) => {
           intersectionObserver.observe(img);
          });

          這段JavaScript代碼創建了一個IntersectionObserver實例,并為所有帶有data-src屬性的圖片元素設置了觀察。當圖片元素與視口交叉時,會加載圖片資源,并停止觀察該元素。

          Scroll事件


          JavaScript中,也可以通過監聽scroll事件來實現圖片懶加載。例如,我們可以在JavaScript代碼中添加如下代碼:

          // 獲取所有帶有data-src屬性的圖片元素
           const lazyImages = document.querySelectorAll('img[data-src]');
           // 懶加載函數
           function lazyLoad() {
            lazyImages.forEach((img) => {
            if (img.offsetTop < window.innerHeight + window.pageYOffset + 200) {
            img.src = img.dataset.src;
            img.removeAttribute('data-src');
            }
           });
           // 更新 lazyImages,排除已加載的圖片
           lazyImages = document.querySelectorAll('img[data-src]');
           // 如果所有的圖片都已經加載,則移除事件監聽器
           if (lazyImages.length === 0) {
           document.removeEventListener('scroll', lazyLoad);
           }
          }
          // 監聽scroll事件
          document.addEventListener('scroll', lazyLoad);
          // 初始檢查一次,以便在頁面加載時懶加載位于視窗中的圖片
          lazyLoad();

          這段JavaScript代碼監聽了scroll事件,并在圖片元素進入視口時加載圖片資源。當圖片進入視口時,會加載圖片資源,并移除data-src屬性。


          結合多種方法來實現圖片懶加載


          在實際項目中,我們可以結合多種方法來實現圖片懶加載,以便在不同瀏覽器和環境下提供最佳的用戶體驗。例如,我們可以先檢查瀏覽器是否支持loading屬性,如果支持,則使用`loading`屬性實現圖片懶加載;如果不支持,則檢查瀏覽器是否支持Intersection Observer API,如果支持,則使用Intersection Observer API實現圖片懶加載;如果不支持,則使用scroll事件實現圖片懶加載。


          下面是一個示例代碼,演示了如何結合多種方法來實現圖片懶加載:


          html

          <body>
           <img src="placeholder.jpg" data-src="image1.jpg" alt="Description 1">
           <img src="placeholder.jpg" data-src="image2.jpg" alt="Description 2">
           <img src="placeholder.jpg" data-src="image3.jpg" alt="Description 3">
           <!-- 更多 img -->
           <script src="lazyload.js"></script>
          </body>

          javascript

          const lazyImages = document.querySelectorAll('img[data-src]');
          // 判斷瀏覽器是否支持 loading 屬性
          if('loading' in HTMLImageElement.prototype) {
            lazyImages.forEach(img => {
            img.src = img.dataset.src;
            });
           } else if('IntersectionObserver' in window) {
            // 使用Intersection Observer API實現懶加載
           const intersectionObserver = new IntersectionObserver((entries) => {
           entries.forEach(entry => {
           if (entry.isIntersecting) {
           const img = entry.target;
           img.src = img.dataset.src;
           intersectionObserver.unobserve(img);
           }
           });
           });
          
           lazyImages.forEach((img) => {
           intersectionObserver.observe(img);
           });
          } else {
           // 使用scroll事件實現懶加載
           let lazyImages = document.querySelectorAll('img[data-src]');
           function lazyLoad() {
           lazyImages.forEach((img) => {
           if (img.offsetTop < window.innerHeight + window.pageYOffset + 200) {
           img.src = img.dataset.src;
           img.removeAttribute('data-src');
           }
           });
           lazyImages = document.querySelectorAll('img[data-src]');
           if (lazyImages.length === 0) {
           document.removeEventListener('scroll', lazyLoad);
           }
           }
           document.addEventListener('scroll', lazyLoad);
           lazyLoad();
          }

          三、漸進式圖片加載

          圖片漸進式加載(Progressive Image Loading)是一種逐步加載圖片資源的技術。通過在圖片加載過程中逐步顯示模糊的低分辨率圖片,可以提升用戶體驗,減少等待時間。這種技術不僅適用于優化頁面性能,還可以為用戶提供視覺上的反饋,使頁面顯得更加流暢。


          漸進式 JPEG


          漸進式 JPEG (Progressive JPEG) 是一種通過逐步顯示圖片的技術,漸進式 JPEG 與標準的 JPEG 圖片區別在于,漸進式 JPEG 圖片在加載時會逐步顯示圖片的分辨率,而不是一次性顯示完整的圖片。這種逐步加載的方式可以提升用戶體驗,減少等待時間。漸進式 JPEG 圖片最初會顯示的是一張模糊的低分辨率圖片,隨著數據的不斷加載,圖片的分辨率會逐步提高,直至達到全分辨率。這種方法特別適合需要加載大圖的場景。


          許多圖像編輯工具和壓縮工具都支持將圖片保存為漸進式 JPEG。在實際項目中,例如,在 Photoshop 中保存圖片時,可以勾選“漸進式”選項。也可以使用命令行工具如ImageMagick(https://imagemagick.org/index.php)來生成漸進式 JPEG:

          1convert input.jpg -interlace Plane output.jpg




          需要注意的是漸進式 JPEG 圖片的文件大小通常會比標準的 JPEG 圖片稍大,因為漸進式 JPEG 圖片包含了更多的數據,用于逐步顯示圖片的分辨率,但是這種額外的數據可以提升用戶體驗。因此,在選擇使用漸進式 JPEG 圖片時,需要權衡圖片質量和文件大小之間的關系。


          占位圖技術


          占位圖技術(Placeholder Image)通常使用一個非常小的、模糊的低分辨率圖像作為占位符,在高分辨率圖像加載完成之前先顯示出來。這種方法通過減少初始加載時間和網絡請求,可以顯著提升頁面的首屏加載速度。


          占位圖實現原理很簡單,只需要在頁面中插入一個占位圖像,然后在高分辨率圖像加載完成后替換為真實圖像即可。


          • 生成一個小尺寸的圖片,并將其模糊化處理。
          • 在頁面初始加載時,先顯示這張模糊的小圖,待高分辨率圖像加載完成后再替換。


          代碼示例:

          html:

          <img src="https://fs.autohome.com.cn/energyspace_views/image_demo/compress_before.png?format=webp&dis_rule=20x0_q50_" data-src="https://fs.autohome.com.cn/energyspace_views/image_demo/compress_before.png?format=webp&dis_rule=400x0_q90_" alt="Description">

          javascript:

          document.addEventListener('DOMContentLoaded', function() {
            const lazyImages = document.querySelectorAll('img[data-src]');
            lazyImages.forEach(img => {
            const placeholder = new Image();
            placeholder.src = img.src;
            placeholder.onload = () => {
            img.src = img.dataset.src;
            };
            });
          });



          img src 屬性中的圖片是一個模糊的小圖,data-src 屬性中的圖片是高分辨率圖像。在頁面加載時,先顯示模糊的小圖,待高分辨率圖像加載完成后再替換。


          使用占位圖技術可以有效減少頁面的加載時間,提升用戶體驗。同時,占位圖技術也可以結合圖片懶加載技術一起使用,進一步提升頁面性能。

          四、Base64 編碼

          在 Web 開發中,將圖片轉換為 Base64 編碼是一種優化頁面加載速度的方法,但需要權衡其優缺點。一般來說,適用于 Base64 編碼的圖片大小取決于幾個因素,包括頁面的總體加載時間、HTTP 請求的數量以及文件大小。


          Base64 編碼的優點


          • 減少 HTTP 請求:將圖像嵌入到 HTML 或 CSS 中可以減少 HTTP 請求,從而加快頁面加載速度。對于小圖標或背景圖片,效果尤為顯著。
          • 簡單易用:Base64 編碼圖像是一種文本格式,可以方便地嵌入 HTML、CSS 或 JSON 中,不需要額外的圖像文件管理。
          • 適用于小圖像:Base64 編碼特別適合用于小圖像,例如網站的 logo、按鈕、圖標等。


          Base64 編碼的缺點


          • 增加文件體積:Base64 編碼會使文件體積增加,因此對于大圖像,不推薦使用這種方法。
          • 緩存問題:由于 Base64 圖像嵌入在 HTML 或 CSS 文件中,瀏覽器不能單獨緩存這些圖像文件,因此在更新圖像時需要重新下載整個 HTML 或 CSS 文件。
          • 可讀性差:Base64 編碼圖像是一長串字符,嵌入到文檔中會降低文檔的可讀性和可維護性。


          適合轉為 Base64 的圖片大小一般為 1KB 到 10KB 的圖片:通常,文件大小在 1KB 到 10KB 之間的圖片是轉為 Base64 編碼的最佳選擇。這樣的圖片往往是小圖標、按鈕、背景圖案等。對于這些小圖片,Base64 編碼可以顯著減少 HTTP 請求的數量,從而提升頁面加載速度。


          在實際Web項目開發中,使用 Webpack Vite 將小圖片自動轉換為 Base64 編碼是一個常見的優化方法。這種自動化的處理可以簡化開發流程,并確保在構建過程中優化資源。


          webpack 配置示例:

          module.exports = {
            module: {
            rules: [
            {
            test: /\.(png|jpe?g|gif)$/i,
            use: [
            {
            loader: 'url-loader',
            options: {
           limit: 10240, // 10KB
           },
           },
           ],
           },
           ],
           },
          };

          Vite 配置示例:

          import { defineConfig } from 'vite';
          
          export default defineConfig({
           build: {
           assetsInlineLimit: 10240, // 10KB
           },
          });

          在以上配置中,limit assetsInlineLimit 選項指定了圖片轉為 Base64 編碼的閾值,超過這個閾值的圖片將被單獨打包為文件,而小于這個閾值的圖片將被轉為 Base64 編碼

          五、結語

          通過結合多種圖片加載與優化技術,可以提升頁面性能,提供更好的用戶體驗。預加載、懶加載、漸進式加載等技術在不同場景下有著不同的優勢,通過合理地選擇和組合這些技術,可以有效地優化圖片加載過程。


          在實際項目中,建議根據項目的具體需求,選擇合適的技術和工具進行圖片優化和加載。希望本文所介紹的技術和示例代碼能夠幫助您更好地實現圖片批量處理與加載優化,提升網頁的加載速度和用戶體驗。


          WEB 圖片優化的相關文章到此結束,希望對你有所幫助。如果有任何問題或建議,歡迎在評論區留言,謝謝!



          作者:之家-梁家瑋

          來源-微信公眾號:之家前端共享流

          出處:https://mp.weixin.qq.com/s/bhxtIED32lJP7PY9g28GNA

          一部分:HTML簡介

          什么是HTML?

          HTML代表超文本標記語言(Hypertext Markup Language)。它是一種用于構建網頁的標記語言。HTML文件包含一組標簽,這些標簽用于定義網頁的結構和內容。瀏覽器讀取HTML文件,并根據標記中的指示呈現網頁內容。

          HTML的主要作用是定義文本內容、圖像、鏈接和其他媒體的排列方式,并提供交互元素,例如表單和按鈕。

          HTML的基本結構

          每個HTML文檔都應該遵循以下基本結構:

          <!DOCTYPE html>
          <html>
          <head>
              <title>網頁標題</title>
          </head>
          <body>
              <!-- 內容在這里 -->
          </body>
          </html>
          

          讓我們逐步解釋這個結構:

          • <!DOCTYPE html>:這是文檔類型聲明,它告訴瀏覽器正在使用的HTML版本。<!DOCTYPE html>表示使用HTML5。
          • <html>:HTML文檔的根元素。所有其他元素都包含在<html>標簽內。
          • <head>:包含與文檔相關的元信息,如頁面標題、字符集聲明和外部樣式表鏈接。
          • <title>:定義網頁的標題,顯示在瀏覽器標簽頁上。
          • <body>:包含網頁的主要內容,如文本、圖像和其他媒體。

          HTML標簽和元素

          HTML標簽是由尖括號括起來的名稱,例如<p>表示段落,<img>表示圖像。標簽通常成對出現,有一個開始標簽和一個結束標簽。例如:

          <p>這是一個段落。</p>
          

          <p>是開始標簽,</p>是結束標簽,文本位于兩個標簽之間。標簽定義了元素的類型和結構。

          有些HTML標簽是自封閉的,不需要結束標簽,例如<img>用于插入圖像。

          HTML注釋

          在HTML中,你可以使用注釋來添加說明性文字,注釋不會在瀏覽器中顯示。HTML注釋使用<!--開頭和-->結尾,如下所示:

          <!-- 這是一個注釋 -->
          

          注釋通常用于添加文檔說明、調試代碼或標記未來的修改。

          第二部分:HTML基本元素

          文本

          HTML中的文本通常包含在段落、標題、列表等元素中。以下是一些常見的文本元素:

          • <p>:定義一個段落。
          • <h1><h6>:定義標題,<h1>是最高級別的標題,<h6>是最低級別的標題。
          • <strong>:定義強調文本,通常以粗體顯示。
          • <em>:定義強調文本,通常以斜體顯示。
          • <a>:定義超鏈接,允許用戶點擊跳轉到其他頁面。

          示例:

          <p>這是一個段落。</p>
          <h1>這是一個標題</h1>
          <p><strong>這是強調文本。</strong></p>
          <p><em>這是斜體文本。</em></p>
          <p>訪問<a href="https://www.example.com">示例網站</a></p>
          

          圖像

          要在網頁中插入圖像,可以使用<img>標簽。它是一個自封閉標簽,需要指定圖像的src屬性來指定圖像文件的路徑。

          示例:

          htmlCopy code
          <img src="image.jpg" alt="圖像描述">
          
          • src:指定圖像文件的路徑。
          • alt:提供圖像的替代文本,用于無法加載圖像時的文字描述。

          鏈接

          通過使用<a>標簽,可以在網頁中創建鏈接。鏈接通常包含在文本或圖像中,并使用href屬性指定目標URL。

          示例:

          <a href="https://www.example.com">訪問示例網站</a>
          
          • href:指定鏈接的目標URL。

          列表

          HTML支持有序列表(<ol>)、無序列表(<ul>)和定義列表(<dl>)。

          無序列表

          無序列表使用<ul>標簽定義,每個列表項使用<li>標簽。

          示例:

          <ul>
              <li>項目1</li>
              <li>項目2</li>
              <li>項目3</li>
          </ul>
          

          有序列表

          有序列表使用<ol>標簽定義,每個列表項使用<li>標簽。

          示例:

          <ol>
              <li>第一項</li>
              <li>第二項</li>
              <li>第三項</li>
          </ol>
          

          定義列表

          定義列表使用<dl>標簽定義,每個定義項目使用<dt>標簽定義術語,使用<dd>標簽定義描述。

          示例:

          <dl>
              <dt>術語1</dt>
              <dd>描述1</dd>
              <dt>術語2</dt>
              <dd>描述2</dd>
          </dl>
          

          第三部分:HTML表單

          HTML表單允許用戶與網頁進行交互,提交數據。以下是HTML表單的基本元素:

          <form>元素

          <form>元素用于創建表單,可以包含文本字段、復選框、單選按鈕、下拉列表等。

          示例:

          <form action="submit.php" method="post">
              <!-- 表單元素在這里 -->
          </form>
          
          • action:指定表單數據提交的目標URL。
          • method:指定提交方法,通常是"post"或"get"。

          輸入字段

          輸入字段用于接收用戶輸入的數據,常見的輸入字段類型包括文本框、密碼框、單選按鈕、復選框等。

          文本框

          文本框使用<input>標簽,type屬性設置為"text"。

          示例:

          <input type="text" name="username" placeholder="用戶名">
          
          • type:指定字段類型。
          • name:指定字段的名稱。
          • placeholder:設置文本框的占位符文本。

          密碼框

          密碼框使用<input>標簽,type屬性設置為"password"。

          示例:

          htmlCopy code
          <input type="password" name="password" placeholder="密碼">
          

          單選按鈕

          單選按鈕使用<input>標簽,type屬性設置為"radio"。

          示例:

          <input type="radio" name="gender" value="male">男
          <input type="radio" name="gender" value="female">女
          
          • name:指定單選按鈕組的名稱。
          • value:指定每個選項的值。

          復選框

          復選框使用<input>標簽,type屬性設置為"checkbox"。

          示例:

          <input type="checkbox" name="subscribe" value="yes">訂閱新聞
          

          下拉列表

          下拉列表使用<select><option>標簽創建。<select>定義下拉列表,而<option>定義選項。

          示例:

          <select name="country">
              <option value="us">美國</option>
              <option value="ca">加拿大</option>
              <option value="uk">英國</option>
          </select>
          
          • name:指定下拉列表的名稱。
          • 每個<option>標簽表示一個選項,使用value屬性定義選項的值。

          第四部分:HTML樣式和CSS

          HTML用于定義網頁的結構和內容,但要使網頁看起來更吸引人,需要使用CSS(層疊樣式表)。CSS允許你定義字體、顏色、布局等樣式。

          內聯樣式

          可以在HTML元素內部使用style屬性來定義內聯樣式。

          示例:

          <p style="color: blue; font-size: 16px;">這是一個藍色的段落。</p>
          

          外部樣式表

          外部樣式表將樣式規則保存在獨立的CSS文件中,并通過<link>標簽將其鏈接到HTML文檔。

          示例(style.css):

          /* style.css */
          p {
              color: blue;
              font-size: 16px;
          }
          

          在HTML中鏈接外部樣式表:

          <link rel="stylesheet" type="text/css" href="style.css">
          

          這使得可以在整個網站上共享相同的樣式。

          總結

          HTML是構建現代網頁的基礎。通過學習HTML的基本語法和元素,你可以創建吸引人且功能強大的網頁。無論是文本、圖像、鏈接還是表單,HTML提供了豐富的工具來呈現內容和實現用戶交互。

          這篇文章提供了HTML的基礎知識,但HTML是一個廣泛的主題,還有許多高級特性和技巧等待你探索。希望這篇文章對你入門HTML有所幫助,讓你能夠開始創建自己的網頁。繼續學習和實踐,你將成為一個熟練的網頁開發者。


          主站蜘蛛池模板: 国产伦精品一区二区三区| 久久精品国内一区二区三区 | 波多野结衣高清一区二区三区| 国产经典一区二区三区蜜芽| 精品人妻少妇一区二区三区不卡| 亚洲欧美成人一区二区三区| 亚洲AV无码一区二区三区在线| 亚洲一区AV无码少妇电影| 无码aⅴ精品一区二区三区| 国产高清一区二区三区四区| ...91久久精品一区二区三区| 日本精品一区二区三区在线视频一| 中文字幕一区二区三区精华液 | 好湿好大硬得深一点动态图91精品福利一区二区 | 高清国产精品人妻一区二区| 久热国产精品视频一区二区三区| 一区二区高清在线观看| 亚洲福利一区二区三区| 91福利一区二区| 老熟妇仑乱视频一区二区 | 中文字幕一区二区三区四区 | 日韩精品人妻一区二区三区四区 | 亚洲区精品久久一区二区三区| 蜜桃视频一区二区三区| 精品人妻少妇一区二区三区不卡 | 国产精品无码亚洲一区二区三区 | 国产一区二区三区在线| 精品久久久久久中文字幕一区| 国产伦精品一区二区三区在线观看| 亚洲一区二区三区91| 99久久综合狠狠综合久久一区| 久久无码人妻一区二区三区午夜 | 日本免费精品一区二区三区| 国产日韩视频一区| 99精品久久精品一区二区| 国产精品视频一区麻豆| 无码av免费毛片一区二区| 国产99视频精品一区| 国产suv精品一区二区6| 国产精久久一区二区三区| 日韩人妻无码一区二区三区 |