杰弗里·辛頓:深度學習教父

名人說:路漫漫其修遠兮,吾將上下而求索。—— 屈原《離騷》
創作者:Code_流蘇(CSDN)(一個喜歡古詩詞和編程的Coder😊)

杰弗里·辛頓:當堅持遇見突破,AI迎來新紀元

一、人物簡介

杰弗里·埃弗雷斯特·辛頓Geoffrey Everest Hinton),1947年12月6日出生于英國倫敦,是一位享譽世界的英國-加拿大雙重國籍的認知心理學家和計算機科學家,被譽為"深度學習之父"或"人工智能教父"。

作為人工神經網絡和深度學習領域的開創性人物,辛頓的研究成果徹底改變了人工智能領域,推動了語音識別、圖像分類和自然語言處理等技術的革命性發展。

在這里插入圖片描述
圖片:杰弗里·辛頓

辛頓出生于一個學術氛圍濃厚的家庭,他的父親霍華德·埃弗雷斯特·辛頓(Howard Everest Hinton)是一位杰出的昆蟲學家,他的三個兄弟姐妹也都從事學術研究工作。這樣的家庭背景為他后來的學術生涯奠定了堅實基礎。

辛頓性格堅毅,學術道路上充滿曲折但從不放棄自己的信念。他曾表示自己在研究生階段經歷了"風暴般的職業生涯",每周都會與導師發生激烈爭論。他常常以"再給我六個月時間來證明神經網絡的有效性"為由,堅持自己的研究方向。這種堅持不懈的精神使他最終取得了突破性的成就,盡管在早期他的研究被學術界廣泛質疑。

二、學術背景

1. 早期教育與學術探索

辛頓的學術道路充滿了變數和探索。他在劍橋大學期間曾多次轉換學習領域,先后學習過自然科學、藝術史和哲學,最終在1970年獲得了實驗心理學學士學位。這種跨學科的學習經歷為他后來的跨界研究奠定了基礎。辛頓在本科階段就對大腦神經網絡的運作方式產生了濃厚的興趣,這種興趣后來塑造了他在人工智能領域的開創性工作。他的本科論文專注于視覺感知,為他日后在神經網絡和深度學習方面的研究奠定了基礎。

辛頓曾表示:"我一直深信,讓人工智能工作的唯一方法是以類似人腦的方式進行計算。這是我一直追求的目標。我們正在取得進展,盡管我們仍然需要了解更多關于大腦實際工作原理的知識。"這種信念貫穿了他的整個研究生涯。

2. 學術歷程

辛頓的學術經歷可以概括為以下幾個重要階段:

  • 1970年:在劍橋大學獲得實驗心理學學士學位
  • 1978年:在愛丁堡大學獲得人工智能博士學位,導師是克里斯托弗·朗格-希金斯(Christopher Longuet-Higgins)
  • 之后:曾在蘇塞克斯大學、加州大學圣地亞哥分校和卡內基梅隆大學工作
  • 1987年:加入加拿大多倫多大學,并成為加拿大高級研究院(CIFAR)的研究員
  • 1998-2001年:在倫敦大學學院創建并領導了蓋茨比計算神經科學部門
  • 2001年:回到多倫多大學繼續進行神經網絡模型的研究
  • 2004-2013年:擔任加拿大高級研究院"神經計算與適應性感知"項目負責人
  • 2012年:在教育平臺Coursera上提供免費的神經網絡在線課程
  • 2013-2023年:在谷歌大腦團隊擔任副總裁和工程研究員,同時在多倫多大學任教
  • 2017年:共同創立并擔任多倫多向量研究所(Vector Institute)的首席科學顧問
  • 2023年5月:宣布辭去谷歌職務,以便能夠自由地談論AI的風險

3. 學術挑戰與堅持

辛頓的學術道路并非一帆風順。在他早期的研究生涯中,神經網絡研究被學術界廣泛質疑。他在英國難以獲得研究資金支持,這也是他前往美國工作的原因之一。盡管面臨這些挑戰,辛頓依然堅持自己的研究方向,最終證明了神經網絡和深度學習的巨大價值。

辛頓對學術研究的熱情和堅持不懈的精神體現在他的一句名言中:“從長遠來看,由好奇心驅動的研究效果更好…真正的突破來自于人們專注于他們感興趣的事物。

三、重大貢獻

1. 反向傳播算法(Backpropagation)

辛頓與大衛·魯梅爾哈特(David E. Rumelhart)和羅納德·威廉姆斯(Ronald J. Williams)共同推廣了反向傳播算法在神經網絡訓練中的應用。這一算法使神經網絡能夠通過調整內部權重來學習,是深度學習的核心基礎之一。

在這里插入圖片描述

反向傳播算法的工作原理是通過計算網絡輸出與期望輸出之間的誤差,然后將這個誤差沿著網絡反向傳播,逐層調整權重,從而不斷優化網絡性能。

在這里插入圖片描述

值得注意的是,盡管辛頓等人的1986年論文廣泛推廣了這一算法,但他們并不是最早提出這一方法的研究者。實際上,反向傳播是自動微分的一個特例,最早由芬蘭數學家塞波·林納因馬(Seppo Linnainmaa)在1970年提出,而保羅·韋爾博斯(Paul Werbos)在1974年首次提議將其用于訓練神經網絡。辛頓自己也承認:“大衛·E·魯梅爾哈特提出了反向傳播的基本思想,所以這是他的發明。”

2. 玻爾茲曼機(Boltzmann Machine)

1985年辛頓與大衛·阿克利(David Ackley)和特里·塞諾夫斯基(Terry Sejnowski)共同發明了玻爾茲曼機,這是一種基于物理學中的玻爾茲曼分布的隨機遞歸神經網絡。玻爾茲曼機由一組神經元單元組成,這些單元可以做出隨機決策(開或關)。每個單元都與其他單元有雙向連接,權重是固定的,且存在對稱性(即wij = wji)。

在這里插入圖片描述

玻爾茲曼機的主要目標是最大化"共識函數"(Consensus Function),這一函數可以表示為:

C F = ∑ i ∑ j ? i w i j u i u j CF\:=\:\displaystyle\sum\limits_{i} \displaystyle\sum\limits_{j\leqslant i} w_{ij}u_{i}u_{j} CF=i?j?i?wij?ui?uj?

玻爾茲曼機可以學習數據集中的概率分布,適用于降維、分類、回歸、協同過濾、特征學習和主題建模等任務。這一發明對圖像分類和創建等領域產生了重要影響。這一工作也是他2024年獲得諾貝爾物理學獎的主要貢獻。

3. 受限玻爾茲曼機(Restricted Boltzmann Machine, RBM)

辛頓對玻爾茲曼機進行了改進,提出了受限玻爾茲曼機(RBM)。在RBM中,神經元被分為可見層和隱藏層,且只有不同層之間的神經元才能相互連接,同一層內的神經元之間沒有連接。這一限制使得學習算法更加高效,能夠應用于實際問題。RBM被廣泛應用于無監督學習和預訓練深度神經網絡。

4. 深度信念網絡(Deep Belief Network)

辛頓在2006年提出的深度信念網絡是深度學習領域的重要突破,它解決了深層神經網絡訓練中的困難問題,為后來的深度學習浪潮鋪平了道路。深度信念網絡通過堆疊多個RBM并使用一種稱為"貪婪逐層預訓練"的方法來訓練,這使得深層網絡的訓練變得可行。

在這里插入圖片描述

5. AlexNet

2012年,辛頓與他的兩位研究生亞歷克斯·克里熱夫斯基(Alex Krizhevsky)和伊利亞·蘇茨科維爾(Ilya Sutskever)開發了一個八層神經網絡程序,命名為AlexNet,用于識別ImageNet(一個大型在線圖像數據集)上的圖像。AlexNet的表現比下一個最準確的程序高出40%以上。這一成就被視為深度學習革命的開端,標志著深度學習從學術研究走向實際應用的重要轉折點。

6. 膠囊網絡(Capsule Networks)

2017年,辛頓與谷歌大腦的兩位同事薩拉·薩布爾(Sara Sabour)和尼古拉斯·弗羅斯特(Nicholas Frosst)發表了論文《膠囊之間的動態路由》(Dynamic Routing Between Capsules),提出了膠囊網絡的概念。傳統的卷積神經網絡在識別不同方向或位置的同一對象時存在困難,而膠囊網絡旨在通過編碼對象的空間信息來克服這一限制。

辛頓希望通過膠囊網絡最終賦予機器與人類相同的三維視角——讓它們在只從一個角度學習咖啡杯的樣子后,能夠從任何角度識別咖啡杯。這代表了辛頓對計算機視覺發展的新思路。

7. 前向-前向算法(Forward-Forward Algorithm)

2022年,辛頓在神經信息處理系統會議(NeurIPS)上介紹了一種新的神經網絡學習算法,稱為"前向-前向"算法(Forward-Forward Algorithm)。這是他對神經網絡訓練方法的又一創新嘗試。

8. 其他貢獻

辛頓對神經網絡研究的其他貢獻包括分布式表示(Distributed Representations)、時延神經網絡(Time Delay Neural Network)、專家混合(Mixtures of Experts)、Helmholtz機(Helmholtz Machines)和專家產品(Product of Experts)等。2007年,他合著了一篇關于無監督學習的論文《圖像變換的無監督學習》(Unsupervised learning of image transformations)。2008年,他與勞倫斯·范德馬滕(Laurens van der Maaten)共同開發了可視化方法t-SNE,這一方法被廣泛應用于高維數據的可視化。這些工作極大地推動了人工智能領域的發展。

四、學術思想與影響

在這里插入圖片描述

1. 神經網絡與類腦計算的哲學

辛頓的研究哲學始終圍繞著一個核心信念:模仿人腦是實現人工智能的唯一途徑。他曾明確表示:"我一直深信,讓人工智能工作的唯一方法是以類似人腦的方式進行計算。"這一理念貫穿他的整個研究生涯,引導他在神經網絡研究中不斷探索。

在辛頓看來,人工智能研究有兩條主要路線:一條基于邏輯,試圖讓計算機像人類一樣推理;另一條基于生物學,試圖讓計算機像動物一樣感知、行動和適應。辛頓選擇了后者,這也是深度學習的基本理念。

辛頓對傳統神經網絡也持有批判態度,他認為:"卷積神經網絡中使用的池化操作是一個巨大的錯誤,而它工作得如此之好是一場災難。"這表明他始終在思考如何改進現有技術,而不是固守已有成果。

2. 深度學習革命的啟動者

辛頓認為:"大型語言模型、圖像生成和蛋白質結構預測方面的驚人進展表明,深度學習革命才剛剛開始。"他的工作奠定了現代人工智能的基礎,推動了語音識別、計算機視覺和自然語言處理等多個領域的快速發展。

辛頓的工作徹底改變了AI研究的范式。在他的貢獻之前,符號主義和基于規則的系統在AI研究中占主導地位。而他的神經網絡和深度學習方法提供了一種全新的思路,讓機器能夠從數據中學習,而不必顯式編程規則。這一轉變使得AI能夠處理之前被認為難以用傳統編程方法解決的問題,如圖像和語音識別、自然語言理解等。

3. 學術傳承與人才培養

除了直接對人工智能研究的貢獻外,辛頓通過教育者和導師的角色對該領域產生了重大影響。他的許多學生和博士后研究員已成為人工智能領域的領軍研究人員,進一步擴大了他的影響力。

他在多倫多大學和谷歌的工作培養了一代又一代的AI研究人才。他的兩位著名學生亞歷克斯·克里熱夫斯基(Alex Krizhevsky)和伊利亞·蘇茨科維爾(Ilya Sutskever)分別成為了AI領域的重要人物,后者現在是OpenAI的聯合創始人和首席科學家。辛頓還在2012年在Coursera平臺上提供免費的神經網絡在線課程,使得深度學習知識能夠惠及全球學習者。

在這里插入圖片描述

4. 學術合作與"深度學習三巨頭"

辛頓與約書亞·本吉奧(Yoshua Bengio)和揚·勒坤(Yann LeCun)一起被稱為"深度學習三巨頭"。三人在2018年共同獲得圖靈獎,這反映了他們在深度學習領域的共同貢獻和合作關系。三人都是加拿大高級研究院"機器與大腦學習"項目的成員,共同推動了深度學習的發展。

5. 工業應用與技術轉化

辛頓的研究成果已經被廣泛應用于工業界,對多個領域產生了革命性影響:

  • 語音識別系統:谷歌的語音識別系統使用了基于辛頓研究的深度學習技術,大幅提高了識別準確率
  • 圖像識別技術:辛頓的AlexNet開創了深度學習在計算機視覺中的應用,現在的人臉識別、物體檢測等技術都受益于此
  • 自然語言處理:大型語言模型如GPT系列的基礎也可以追溯到辛頓的深度學習研究
  • 醫療診斷:辛頓曾表示:“AI在理解醫學圖像方面已經與放射科醫生相當”,這為醫療領域帶來了革命性變化
  • 自動駕駛汽車:自動駕駛技術大量使用深度學習算法處理視覺信息和決策
  • 藥物設計:AI在藥物發現和設計中的應用也得益于深度學習方法

6. 創業與產業化

辛頓不僅是學術研究者,也積極參與技術產業化。2012年,他與兩位研究生成立了DNNresearch公司,專注于深度神經網絡技術。2013年,谷歌以4400萬美元收購了這家公司,辛頓也加入了谷歌大腦團隊2017年,他共同創立了多倫多向量研究所(Vector Institute),促進AI技術與產業的結合。

這些努力將學術研究成果轉化為實際應用,加速了深度學習在產業界的落地,使得這一技術能夠在更廣泛的領域產生影響。

五、榮譽與獎項

辛頓因其在人工智能和深度學習領域的開創性貢獻,獲得了眾多國際性獎項和榮譽:

1. 諾貝爾物理學獎(2024年)

2024年,辛頓與約翰·霍普菲爾德(John Hopfield)共同獲得諾貝爾物理學獎,以表彰他們 “為使用人工神經網絡的機器學習奠定的基礎性發現和發明” 。

在這里插入圖片描述

2. 圖靈獎(2018年)

2018年,辛頓與約書亞·本吉奧(Yoshua Bengio)和 楊立昆(Yann LeCun)共同獲得被稱為"計算機科學諾貝爾獎"的圖靈獎,以表彰他們在深度神經網絡領域的概念性和工程性突破,使深度神經網絡成為計算的關鍵組成部分。他們三人被譽為"深度學習三巨頭"。

在這里插入圖片描述

3. 其他重要獎項

  • 伊麗莎白女王工程獎(2025年)
  • VinFuture大獎(2024年)
  • 皇家學會皇家獎章(2022年)
  • BBVA基金會前沿知識獎(2016年)
  • IEEE/RSE沃爾夫森詹姆斯·克拉克·麥克斯韋獎(2016年)
  • 加拿大工程學會Killam獎(2012年)
  • 赫茨伯格加拿大科學與工程金獎(2010年)
  • IJCAI研究卓越獎(2005年)

六、近期動態與觀點

1. 離開谷歌與AI安全擔憂

2023年5月,辛頓宣布辭去谷歌的職務,這一決定在科技界引起了軒然大波。他向《紐約時報》表示離職的原因是為了能夠"自由地談論人工智能的風險",而不受谷歌商業利益的約束。在接受MIT技術評論采訪時,他說道:“只要我還受雇于谷歌,我就無法做到這一點。”

辛頓的離職標志著他對AI態度的重大轉變。他向媒體解釋:"我突然改變了我對這些技術是否會比我們更聰明的看法。"導致這一轉變的關鍵因素是ChatGPT等大型語言模型(尤其是GPT-4)的快速發展,這讓他意識到機器的智能發展速度遠超他的預期。

2. 對人工智能風險的具體擔憂

辛頓的擔憂主要集中在以下幾個方面:

  • 技術性失業:他擔心AI可能導致大量人失業,而且新技術可能不會創造足夠的替代工作崗位。他甚至建議英國政府考慮實施全民基本收入來應對這一問題。

  • 錯誤信息傳播:AI可能被用來生成和傳播虛假信息,對社會秩序穩定造成威脅。

  • 存在性風險:最嚴重的是,辛頓表示:"我認為人類只是智能進化過程中的一個過渡階段,這是完全可以想象的。"他擔心AI最終可能會超越人類智能并取代人類。

3. AI監管與安全建議

面對這些風險,辛頓認為需要全球合作來制定AI監管框架。他建議建立類似于1997年《化學武器公約》的全球協議,為AI武器化設立國際規則。他強調,現在是進行實驗了解AI并通過法律確保技術道德使用的關鍵時刻。

辛頓還特別關注"對齊問題"(alignment problem)——如何確保AI執行人類期望它做的事情。他認為這是一個特別困難的問題,因為在人類存在惡意行為者的世界中,要確保AI始終有益于人類極其困難。

4. AI的積極前景

盡管有這些擔憂,辛頓并不后悔自己的工作,也看到了AI的巨大潛力:

  • 醫療健康:辛頓指出:“AI在醫療領域幾乎完全是有益的。它已經能夠與放射科醫生相媲美地理解醫學圖像,也將在藥物設計方面表現出色。”

  • 科學研究:他認為AI可以加速科學發現和創新,解決人類面臨的復雜挑戰。

  • 生產效率:他表示:"提高效率應該讓每個人都更幸福。"這表明他相信AI有潛力為社會整體創造更多價值。

5. 對未來的思考

辛頓對AI未來的展望既包含希望也充滿警惕。他在接受采訪時表示:“我們可能會回顧并將這一時刻視為一個轉折點,人類必須決定是否進一步發展這些技術,以及如果發展了,如何保護自己。”

他承認在AI發展道路上存在極大的不確定性:“我們正在進入一個巨大不確定性的時期,我們正在處理以前從未處理過的事物。通常,當你第一次處理全新的事物時,你會犯錯。而我們不能在這些事情上犯錯。”

辛頓的最新觀點反映了他作為科學家的誠實和責任感——即使這意味著他必須對自己畢生的工作表達擔憂。他的轉變提醒我們,科技發展需要同步思考其道德和社會影響。

七、人物特點與名言

1. 挑戰權威的學術勇氣

辛頓的一生充滿了挑戰權威的學術勇氣。在神經網絡研究被學術界廣泛質疑的時期,他堅持自己的研究方向。他的父親是一位相信大陸漂移理論的昆蟲學家,而這一理論在20世紀50年代初被視為荒謬。辛頓似乎從父親那里繼承了這種敢于堅持非主流觀點的勇氣。

辛頓曾談到自己的研究生涯:"我有一個風暴般的研究生經歷,每周我們都會有一場大喊大叫的爭論。我不斷做交易,說’好的,讓我再研究神經網絡六個月,我會向你證明它們有效’。六個月結束時,我會說,'是的,但我差不多要成功了。再給我六個月。'"這種堅持不懈的精神最終使他取得了突破性的成就。

2. 知識廣度與跨學科思維

辛頓不僅在計算機科學和認知心理學方面有深厚造詣,還從物理學、神經科學等多個學科汲取靈感。他將統計物理學的工具應用到玻爾茲曼機的開發中,將神經科學關于人腦的知識應用到神經網絡設計中。這種跨學科的思維方式是他能夠做出原創性貢獻的關鍵因素之一。

3. 從學術到產業的實踐精神

辛頓不僅是一位卓越的理論研究者,還積極將研究成果轉化為現實應用。從成立DNNresearch公司到加入谷歌再到共同創立向量研究所,他始終致力于推動深度學習技術的產業化應用。這種理論與實踐相結合的精神,使他的研究成果能夠產生更廣泛的社會影響。

4. 對AI的責任感

隨著AI的快速發展,辛頓展現出了強烈的社會責任感。盡管他是深度學習的先驅,但他仍然勇于發聲提醒人們AI可能帶來的風險,甚至為此離開了谷歌。這種責任感體現了他作為科學家的良知和對人類福祉的關注。

5. 辛頓的經典名言

辛頓的一些經典名言不僅反映了他對人工智能和神經網絡的深刻理解,也展現了他獨特的思考方式和人生哲學:

  • 從長遠來看,由好奇心驅動的研究效果更好…真正的突破來自于人們專注于他們感興趣的事物。
  • “我一直深信,讓人工智能工作的唯一方法是以類似人腦的方式進行計算。這是我一直追求的目標。”
  • “計算機會在美國人理解諷刺之前理解諷刺。”
  • “在人工智能領域,圣杯是如何生成內部表示。”
  • “放射科醫生的角色將從做感知性工作(可能由一只訓練有素的鴿子完成)轉變為做更多認知性的工作。”
  • “每個人都看著當前的技術,認為’好的,這就是人工神經網絡’。他們沒有意識到它是多么任意。我們只是把它編出來的!沒有理由我們不應該再編出別的東西。”
  • “我主要興趣是嘗試找到完全不同種類的神經網絡。”

這些名言展示了辛頓作為科學家的創新精神、對人工智能發展的深刻洞察以及他對未來技術的開放態度。

八、結語

杰弗里·辛頓的學術貢獻改變了人工智能的發展軌跡,使深度學習從理論走向實踐,并推動了眾多技術革新。作為"深度學習之父",他不僅僅是一位杰出的科學家,更是一位有遠見的思想家,他既看到了人工智能的巨大潛力,也警惕其可能帶來的風險。

辛頓的一生詮釋了科學家的堅持與勇氣、創新與責任。他在逆境中堅持自己的研究方向,最終證明了神經網絡方法的價值;他不斷創新,開發出一系列突破性的算法和模型;他敢于面對技術可能帶來的風險,即使這意味著要對自己畢生的工作表達擔憂。

他的學術精神提醒我們,科學進步不僅需要創新和突破,還需要負責任的態度和對潛在風險的警覺。在辛頓的引領下,人工智能領域正迎來蓬勃發展的新時代,而他的學術精神和科研成果將繼續激勵后來者在這一領域不斷探索和創新。

正如辛頓所說:"我們正在進入一個巨大不確定性的時期,我們正在處理以前從未處理過的事物。"面對這一未知的未來,辛頓的工作和思想將繼續指引著我們,幫助人類在探索AI這一強大工具的同時,確保它造福于人類社會。

專欄?:《計算機名人堂》,歡迎訂閱催更,謝謝大家支持!
創作者:Code_流蘇(CSDN)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/76107.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/76107.shtml
英文地址,請注明出處:http://en.pswp.cn/web/76107.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

BladeX單點登錄與若依框架集成實現

1. 概述 本文檔詳細介紹了將BladeX認證系統與若依(RuoYi)框架集成的完整實現過程。集成采用OAuth2.0授權碼流程,使用戶能夠通過BladeX賬號直接登錄若依系統,實現無縫單點登錄體驗。 2. 系統架構 2.1 總體架構 #mermaid-svg-YxdmBwBtzGqZHMme {font-fa…

初識Redis · set和zset

目錄 前言: set 基本命令 交集并集差集 內部編碼和應用場景 zset 基本命令 交集并集差集 內部編碼和應用場景 應用場景(AI生成) 排行榜系統 應用背景 設計思路 熱榜系統 應用背景 設計思路 熱度計算方式 總結對比表 前言&a…

playwright 教程高級篇:掌握網頁自動化與驗證碼處理等關鍵技術詳解

Playwright 教程高級篇:掌握網頁自動化與驗證碼處理等關鍵技術詳解 本教程將帶您一步步學習如何使用 Playwright——一個強大的瀏覽器自動化工具,來完成網頁任務,例如提交鏈接并處理旋轉驗證碼。我們將按照典型的自動化流程順序,從啟動瀏覽器到關閉瀏覽器,詳細講解每個步驟…

數據結構(完)

樹 二叉樹 構建二叉樹 int value;Node left;Node right;public Node(int val) {valueval;} 節點的添加 Node rootnull;public void insert(int num) {Node nodenew Node(num);if(rootnull) {rootnode;return;}Node index root;while(true) {//插入的節點值小if(index.value&g…

FastAPI與SQLAlchemy數據庫集成與CRUD操作

title: FastAPI與SQLAlchemy數據庫集成與CRUD操作 date: 2025/04/16 09:50:57 updated: 2025/04/16 09:50:57 author: cmdragon excerpt: FastAPI與SQLAlchemy集成基礎包括環境準備、數據庫連接配置和模型定義。CRUD操作通過數據訪問層封裝和路由層實現,確保線程安全和事務…

一個基于Django的寫字樓管理系統實現方案

一個基于Django的寫字樓管理系統實現方案 用戶現在需要我用Django來編寫一個寫字樓管理系統的Web版本,要求包括增刪改查寫字樓的HTML頁面,視頻管理功能,本地化部署,以及人員權限管理,包含完整的代碼結構和功能實現&am…

mongodb在window10中創建副本集的方法,以及node.js連接副本集的方法

創建Mongodb的副本集最好是新建一個文件夾,如D:/data,不要在mongodb安裝文件夾里面創建副本集,雖然這樣也可以,但是容易造成誤操作或路徑混亂;在新建文件夾里與現有 MongoDB 數據隔離,避免誤操作影響原有數…

Maven 多倉庫與鏡像配置全攻略:從原理到企業級實踐

Maven 多倉庫與鏡像配置全攻略:從原理到企業級實踐 一、核心概念:Repository 與 Mirror 的本質差異 在 Maven 依賴管理體系中,repository與mirror是構建可靠依賴解析鏈的兩大核心組件,其核心區別如下: 1. Repositor…

STM32 四足機器人常見問題匯總

文章不介紹具體參數,有需求可去網上搜索。 特別聲明:不論年齡,不看學歷。既然你對這個領域的東西感興趣,就應該不斷培養自己提出問題、思考問題、探索答案的能力。 提出問題:提出問題時,應說明是哪款產品&a…

MySQL 中 `${}` 和 `#{}` 占位符詳解及面試高頻考點

文章目錄 一、概述二、#{} 和 ${} 的核心區別1. 底層機制代碼示例 2. 核心區別總結 三、為什么表名只能用 ${}?1. 預編譯機制的限制2. 動態表名的實現 四、安全性注意事項1. ${} 的風險場景2. 安全實踐 五、面試高頻考點1. 基礎原理類問題**問題 1**:**問…

C語言編譯預處理2

#include <XXXX.h>和#include <XXXX.c> #include "XXXX.h" 是 C 語言中一條預處理指令 #include <XXXX.h>&#xff1a;這種形式用于包含系統標準庫的頭文件。預處理器會在系統默認的頭文件搜索路徑中查找XXXX.h 文件。例如在 Linux 系統中&#…

Elasticvue-輕量級Elasticsearch可視化管理工具

Elasticvue一個免費且開源的 Elasticsearch 在線可視化客戶端&#xff0c;用于管理 Elasticsearch 集群中的數據&#xff0c;完全支持 Elasticsearch 版本 8.x 和 7.x. 功能特色&#xff1a; 集群概覽索引和別名管理分片管理搜索和編輯文檔REST 查詢快照和存儲庫管理支持國際…

Git提交規范及最佳實踐

Git 提交規范通常是為了提高代碼提交的可讀性、可維護性和自動化效率&#xff08;如生成 ChangeLog&#xff09;。以下是常見的 Conventional Commits 規范&#xff0c;結合社區最佳實踐總結而成&#xff1a; 1. 提交格式 每次提交的 commit message 應包含三部分&#xff1a;…

Ubuntu中snap

通過Snap可以安裝眾多的軟件包。需要注意的是&#xff0c;snap是一種全新的軟件包管理方式&#xff0c;它類似一個容器擁有一個應用程序所有的文件和庫&#xff0c;各個應用程序之間完全獨立。所以使用snap包的好處就是它解決了應用程序之間的依賴問題&#xff0c;使應用程序之…

android studio 運行java main報錯

運行某個帶main函數的java文件報錯 Could not create task :app:Test.main(). > SourceSet with name main not found. 解決辦法&#xff1a;在工程的.idea/gradle.xml 文件下添加&#xff1a; <option name"delegatedBuild" value"false" /&g…

openssh離線一鍵升級腳本分享(含安裝包)

查看當前的版本 [rootmyoracle ~]#ssh -V相關安裝包下載地址 openssh下載地址&#xff1a;http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssl下載地址&#xff1a;https://www.openssl.org/source/zlib下載地址&#xff1a;http://www.zlib.net/今天演示從7.4升級…

Mac M1管理多個Node.js版本

目錄 1. 使用 nvm (Node Version Manager) 1.1.安裝 nvm 1.2.安裝Node.js版本 1.3.查看已安裝的node版本列表 1.4.使用特定版本的Node.js 1.5.查看當前使用的版本 2. 使用 fnm (Fast Node Manager) 2.1.安裝 fnm 2.2.安裝Node.js版本 2.3.查看已安裝的版本 2.4.使用…

Unity中國戰略調整簡訊:Unity6下架 團結引擎接棒

Unity中國戰略調整簡訊&#xff1a;Unity6下架 團結引擎接棒 免費版 2025年4月9日 —— Unity中國宣布自即日起&#xff0c;中國大陸及港澳地區停止提供Unity 6及后續版本下載與服務&#xff0c;相關功能由國產引擎“團結引擎”承接。國際版2022 LTS及更早版本仍由Unity中國維護…

TestNG 單元測試詳解

1、測試環境 jdk1.8.0 121 myeclipse-10.0-offline-installer-windows.exe TestNG 插件 org.testng.eclipse 6.8.6.20130607 0745 2、介紹 套件(suite):由一個 XML 文件表示,通過<suite>標簽定義,包含一個或更多測試(test)。測試(test):由<test>定義&#xf…

C復習(主要復習)

指針和數組 指針數組是一個數組&#xff0c;數組的每個元素都是指針。它適用于需要存儲多個指針的場景&#xff0c;如字符串數組。數組指針是一個指針&#xff0c;指向一個數組。它適用于需要傳遞整個數組給函數或處理多維數組的場景。 函數指針&#xff1a;函數指針的定義需要…