主頁 > 前端設計 > 【聯邦學習+區塊鏈】《聯邦學習vs區塊鏈:誰是“可信媒介”技術領域最強王者?》疑問解答

【聯邦學習+區塊鏈】《聯邦學習vs區塊鏈:誰是“可信媒介”技術領域最強王者?》疑問解答

2020-09-18 14:07:44 前端設計

聯邦學習【1】VS 區塊鏈

【問1】聯邦學習,何為“聯邦”?

作為一種分布式機器學習技術,聯邦學習可以實作各個企業的自有資料不出本地,而是通過加密機制下的引數交換方式共建模型,即在不違反資料隱私法規的情況下,建立一個虛擬的共有模型,由于資料本身不移動,因此也不會涉及隱私泄露和資料合規問題,這樣,建好的模型將在各自的區域僅為本地的目標服務,在這樣一個聯邦機制下,參與各方可以在不披露底層資料和底層資料的加密(混淆)形態下共建模型,各個參與者的身份和地位相同,這就是為什么這個體系叫做聯邦學習,

舉例來說,假設有兩個不同的企業 A 和 B,它們擁有不同的資料,比如企業 A 有用戶特征資料,企業 B 有產品特征資料和標注資料,這兩個企業按照 GDPR 準則是不能粗暴地把雙方資料加以合并的,因為他們各自的用戶并沒有機會同意這樣做,假設雙方各自建立一個任務模型,每個任務可以是分類或預測,這些任務也已經在獲得資料時取得了各自用戶的認可,那么,現在的問題是如何在 A 和 B 各端建立高質量的模型,但是,又由于資料不完整(例如企業 A 缺少標簽資料,企業 B 缺少特征資料),或者資料不充分(資料量不足以建立好的模型),各端有可能無法建立模型或效果不理想,聯邦學習的目的是解決這個問題:它希望做到各個企業的自有資料不出本地,聯邦系統可以通過加密機制下的引數交換方式,在不違反資料隱私保護法規的情況下,建立一個虛擬的共有模型,這個虛擬模型就好像大家把資料聚合在一起建立的最優模型一樣,但是在建立虛擬模型的時候,資料本身不移動,也不會泄露用戶隱私或影響資料規范,這樣,建好的模型在各自的區域僅為本地的目標服務,在這樣一個聯邦機制下,各個參與者的身份和地位相同,而聯邦系統幫助大家建立了「共同富裕」的策略,這就是為什么這個體系叫做「聯邦學習」,

PS:聯邦學習和分布式機器學習有異同點?

聯邦學習是分布式機器學習的一種,最大的區別應該就是「中心服務器」對其他「計算節點」的控制權不同,具體解釋篇幅較長,附在文章最后(附文 1),

在互聯網新浪潮中,聯邦學習和區塊鏈是最受關注的兩項熱門技術,聯邦學習【注】是一種在大資料服務中保護隱私的分布式機器學習技術區塊鏈是一種在去中心化網路中實作價值轉移的分布式賬本技術,那么問題來了,誰是可信媒介技術領域最強王者?

【注】另有文章說“聯邦學習的作用主要是用來解決資料孤島”,【出處】什么是聯邦學習

繼續延伸:什么是“資料孤島”?

“企業發展到一定階段,出現多個事業部,每個事業部都有各自資料,事業部之間的資料往往都各自存盤,各自定義,每個事業部的資料就像一個個孤島一樣無法(或者極其困難)和企業內部的其他資料進行連接互動,”我們把這樣的情況稱為資料孤島,簡單說就是資料間缺乏關聯性,資料庫彼此無法兼容,”專業人士把資料孤島分為物理性和邏輯性兩種,

在聯邦學習這里,更側重與是各“資料島”之間不想連接互動,或者說不敢直接互動

王牌技術 · 起源

聯邦學習誕生于2016年的谷歌輸入法優化專案,在互聯網產業中存在三種服務形態:橫向聯邦學習、縱向聯邦學習和聯邦遷移學習【2】,2020年4月,資料作為新型生產要素,與土地、勞動力、資本、技術并列為五個生產要素,這意味著個人資料隱私作為不可侵犯的個人權利受法律保護的同時,資料的開放共享又是數字經濟發展的命脈之所在,是中國在下一輪國家間新技術競爭中取勝的關鍵,因此,聯邦學習技術成為產業界解決資料隱私資料共享之間矛盾【3】的常規方法,

【問2】聯邦學習的三種服務形態的分類依據是什么?有什么異同點?

縱軸表示用戶維度,橫軸表示用戶特征維度,對用戶和用戶特征,偏向重合部分數量較多的一方進行切分;都不多時,不切分,進行遷移學習,

橫向聯邦學習在兩個資料集的用戶特征重疊較多而用戶重疊較少的情況下,我們把資料集按照橫向(即用戶維度)切分,并取出雙方用戶特征相同而用戶不完全相同的那部分資料進行訓練,比如業務相同但是分布在不同地區的兩家企業,它們的用戶群體分別來自各自所在的地區,相互的交集很小,但是,它們的業務很相似,因此,記錄的用戶特征是相同的,

縱向聯邦學習在兩個資料集的用戶重疊較多而用戶特征重疊較少的情況下,我們把資料集按照縱向(即特征維度)切分,并取出雙方用戶相同而用戶特征不完全相同的那部分資料進行訓練,比如有兩個不同機構,一家是某地的銀行,另一家是同一個地方的電商,它們的用戶群體很有可能包含該地的大部分居民,因此用戶的交集較大,但是,由于銀行記錄的都是用戶的收支行為與信用評級,而電商則保有用戶的瀏覽與購買歷史,因此它們的用戶特征交集較小,目前,邏輯回歸模型、樹型結構模型和神經網路模型等眾多機器學習模型已經逐漸被證實能夠建立在此聯邦體系上,

橫向聯邦特征維度都一樣,通過擴充樣本的方式提升模型質量;縱向聯邦樣本相通,通過擴充特征的方式來實作資料的資訊互通,提升模型質量,

遷移學習在兩個資料集的用戶與用戶特征重疊都較少的情況下,我們不對資料進行切分,而可以利用遷移學習來克服資料或標簽不足的情況,這種方法叫做聯邦遷移學習,比如有兩個不同機構,一家是位于中國的銀行,另一家是位于美國的電商,由于受到地域限制,這兩家機構的用戶群體交集很小,同時,由于機構型別的不同,二者的資料特征也只有小部分重合,在這種情況下,要想進行有效的聯邦學習,就必須引入遷移學習,來解決單邊資料規模小和標簽樣本少的問題,從而提升模型的效果,

【問3】是怎樣解決矛盾的?

聯邦學習可實作各個企業的自有資料不出本地,而是通過加密機制下的引數交換方式共建模型,即在不違反資料隱私法規的情況下,建立一個虛擬的共有模型,(至于具體是怎么實作的這個功能的,這個問題留待研究,)

而更早的區塊鏈技術,則誕生于2009年的位元幣專案,根據賬本來源分為三種服務形態:數字貨幣、智能合約、應用平臺,在2019年之前,區塊鏈技術更多地以數字貨幣的形式野蠻生長,直至2019年10月,中共中央政治局就區塊鏈技術進行集體學習,肯定了區塊鏈技術的集成應用在新的技術革新和產業變革中起著重要作用——推動區塊鏈和物體經濟深度融合,有望解決中小企業貸款融資難、銀行風控難、部門監管難等問題;利用區塊鏈技術探索數字經濟模式創新,有望為打造便捷高效、公平競爭、穩定透明的營商環境提供動力等,

可信媒介 · 原因

能夠獲得如此熱度和重要性,聯邦學習和區塊鏈有個重要的共同特征:可信,俗話說“人心隔肚皮”,陌生人之間一般難以建立信任,這是因為在資源有限的社會競爭中,獲得更多利益是人的本性,人們擔心被欺詐而損失利益,信任對市場經濟中的作用不言而喻,

在傳統市場中,交易由權威機構監督執行,例如,政府制定《消費者權益保護法》及《產品質量法》,并對違法行為進行懲罰,也就是說,權威機構提供“可信媒介”作用,為市場交易保駕護航,尤其是對于常見商品,質量、價格等細節均有十分詳盡、標準化的管理方案,

在新興的互聯網市場中,智能終端設備依據摩爾定律飛速發展、光纖網路和5G無線網路逐步普及,產品創新層出不窮,相比之下,權威機構需要經過較長時間調查和研究方能制定相應法規,這使得很多互聯網產品短時間內得不到權威機構的“可信媒介”作用,進而使得用戶不敢放心大膽的使用新產品,例如,在互聯網電子支付出現7年之后,權威機構才為部分互聯網企業發放支付牌照,這才有了后來無處不在、十分便捷的手機支付形式,現如今,點對點轉賬(提高跨境交易的便捷性)、互聯網大資料合作(提高用戶服務水平)等新產品,尚缺乏成熟的法律法規來進行必要的管理與規范,亟需可用的“可信媒介”,

聯邦學習和區塊鏈正是在這樣的背景下誕生的技術派“可信媒介”,聯邦學習的可信在于,在資料合作程序中使用的是不可逆【4】的變換資料,即使沒有權威機構監督,隱私資料也不會泄露,

區塊鏈的可信在于,在記賬程序中使用了群體共識【5】數字簽名【6】技術,即使沒有權威機構監督,所記錄的交易也是不可篡改且不可抵賴的,因此,這樣的技術“可信媒介”將為國民經濟持續健康發展提供新的生產力,

【問4】怎樣保證“不可逆” / 不可篡改?

Hash()函式的單向性: Hash(x) =y , 通過y很難找到x,

區塊鏈提供了一種方案, 讓一個網路中,所有的結點都有能力去用計算能力投票, 從而保證了得到承認的結果是大多數人公認的結果, 不會因為少數結點作惡,而修改結果,

【問5】區塊鏈是怎樣讓“群體”都知道的?

簡單理解是,大部部分公共區塊鏈利用relay網路廣播資訊,每個節點保存一組鄰居節點地址,當收到一條資訊,該節點會廣播給鄰居,鄰居又廣播給鄰居的鄰居,最后這條訊息以大概率被廣播到全網,

具體演算法:--------

【問6】區塊鏈的“數字簽名”是什么樣的?

數字簽名,就是只有資訊的發送者才能產生的別人無法偽造的一段數字串,這段數字串同時也是對資訊的發送者發送資訊真實性的一個有效證明,

數字簽名涉及到區塊鏈的認證機制,它有兩個作用:

  • 證明訊息確實是由資訊發送方簽名并發送出來的
  • 確定訊息的完整性

 通過數字簽名我們主要實作了:

  接收方能通過發送方的公鑰認證發送方的身份;通過私鑰方式簽名,別人偽造不了資訊的簽名;發送方也通過私鑰簽名抵賴不了對資訊的簽名;通過數字摘要技術保證了資料的完整性,哈希函式也保證了資料不可有任何篡改,

發送報文時

  發送方將報文利用數字摘要技術生成報文摘要,用非對稱密鑰加密技術中私鑰對報文摘要進行加密,將原文和加密后摘要一同發送給接收方,

接收報文時

  接收方利用資料摘要技術對發送方發送的原文生成報文摘要,用公鑰對發送方發送的資料進行解密,得到發送生成的報文摘要,解密的報文摘要和接收方自己生成的報文摘要進行對比,相同說明資訊沒有被篡改,

數字簽名的基本演算法:

1.對稱加密演算法; 2.非對稱加密演算法; 詳略,

聯邦學習/區塊鏈· 應用場景

在應用上,兩者均用于互聯網場景,不同之處在于,聯邦學習用于個性化的用戶服務,區塊鏈則用于點對點的交易記賬和合約,

京東數科在聯邦學習領域已經成功實作了多個專案的落地應用,例如,在疫情期間,為確保疫情過后農業生產生活的快速恢復和正常開展,京東城市基于聯邦學習、同態加密、資料隱私保護的數字網關技術,在保證資料不出庫的基礎上,聯合四川省德陽市廣漢市農業農村區域署了“西南禽苗交易資訊平臺”,幫助中小企業動態、實時匹配禽苗供需資訊,上線不到兩周,即完成禽苗交易1250450羽,

京東數科也將聯邦學習用于人臉識別,在配合式場景下(如自拍照對比自拍照),當誤檢率為十萬分之一的情況下,通過率高達99.96%,當誤檢率為萬分之一的情況下,通過率則高達99.99%,

而在區塊鏈上,京東數科更是將其運用在了品質溯源、數字存證、信用網路、金融科技、價值創新等多個領域,

在品質溯源上,在行業內首創AI+區塊鏈溯源應用,打造了普洱茶區塊鏈防偽追溯平臺,有效解決了普洱茶流通程序的痛點,截至2020年5月,京東數科的區塊鏈防偽追溯平臺智臻鏈,已有超13億追溯資料落鏈,900余家合作品牌商,7萬多件入駐商品,逾700萬次售后用戶訪問查詢,覆寫生鮮農業、母嬰、酒類、美妝、二手商品、奢侈品、跨境商品、醫藥、商超便利店等豐富業務場景,

京東數科首創“茶臉識別”技術

在數字存證上,京東數科依托其自主研發的區塊鏈數字存證平臺,實作了可信存證、自動化取證、一鍵舉證、侵權預警等功能,目前已經應用于電子合同、電子發票、電子證照、電子票據、互聯網訴訟、著作權保護等場景,其中,區塊鏈電子合同平臺已服務超百萬次合同簽約,

京東區塊鏈數字存證平臺功能一覽

在信用網路上,針對消費租賃市場糾紛取證難問題,信用租賃平臺“京小租”使用區塊鏈技術,通過自動化流程獲取租賃業務中租賃協議、訂單資料、租賃流程等資料并完成“上鏈”操作,保證租賃服務的公開透明,這項技術同樣被京東數科運用于數字身份、企業通用賬號、信用租賃、物流征信等方面,為企業經營和個人生活提供便利,

在金融科技上,京東數科區塊鏈早在2017年就應用于資產證券化領域,比如,2019年6月推出的首個區塊鏈ABS標準化解決方案,能幫助資產方、計劃管理人、律師事務所、評級機構、會計師事務所、托管行等ABS業務參與機構優化業務流程,節約時間成本,提升ABS發行業務效率,

除此之外,京東數科還正式開源了京東區塊鏈底層引擎JD Chain,JD Chain面向企業通用業務場景而設計,滿足企業積木化按需定制,讓企業快速接入區塊鏈世界,幫助企業進行海量高效資料治理,

JD Chain關鍵技術特性

應用基礎:

兩項技術均需要有協作意愿和共識的計算節點,

不同之處在于,

聯邦學習要求節點之間的資料具有互補性,例如其中一個節點存盤消費習慣特征,另一個節點存盤性格、愛好等特征,各節點之間的共識聯邦演算法【7】,通過約定在聯邦之間的資訊互動協議,實作模型訓練及推理,

【問8】聯邦演算法的原理是什么?

聯邦學習學習心得(2)——縱、橫向聯邦學習的原理分析

區塊鏈需要各節點同步記錄所有交易資訊,例如賬戶A給賬戶B支付1個代幣,A的支付資訊及簽名將發送給網路上的所有節點,各節點產生一致的記錄,區塊鏈網路里能夠達成一致,最關鍵的技術是共識演算法【8】,共識演算法是解決一致性問題的關鍵,在分布式、去中心化的區塊鏈網路中協助節點保持資料一致,常用的共識演算法如作業量證明(POW)、拜占庭容錯(BFT)、股份授權證明(DPoS)等,

【問8】區塊鏈的“共識演算法”原理是什么?

知乎首份區塊鏈面試指南--之共識演算法

應用目標

兩項技術的目標都是在去中心化網路中增強節點之間的互信

不同之處在于,

聯邦學習旨在實作“資料可用不可見【9】的隱私保護技術,并通過融合使用各方資料提升用戶服務的質量,進而創造出新的價值,例如同態加密就是一種隱私保護技術,所產生的密文與明文完全不一樣,分布性質和排序性質都發生了巨大變化,這使得原始資料是“不可見”的,密文可按指定規則進行運算,進而實作梯度下降演算法和模型優化,實作了“可用”,

【問9】是怎樣實作“可用不可見”的?

“可用不可見”其核心有兩層含義:資料的可用性和資料的不可見性,即在充分保護資料和隱私安全的前提下,實作大資料價值的轉化和提煉,

實作“不可見”:全面脫敏和去標識化,

如何“可用”:(例)同盾科技——同盾科技基于聯邦學習提出了“知識聯邦”的理論框架體系,支持從資訊層、模型層、認知層和知識層四個層級進行聯邦,以實作資料可用不可見, 在“知識聯邦”框架中,資訊層通過安全多方計算在密文空間上直接進行計算或學習,進而提取或發現知識;模型層聯邦與傳統的聯邦學習相似,基于模型加密互動共創知識,并實作知識共享;認知層對同/異構資料進行認知學習之后進行集成或多模態融合,進而生成復雜的知識網路;知識層對分布的知識進一步學習提煉,實作基于知識的表達推理及智能決策,

區塊鏈旨在確保交易記錄不可篡改,利用共識演算法、分布式技術解決在去中心化網路中的雙重支付問題,最終實作數字世界的價值表示和價值轉移,例如在位元幣系統中,賬戶A給賬戶B支付1個位元幣,并將該資訊廣播給所有“礦工”節點,“礦工”為了獲得系統獎勵,都努力將該資訊打包到新區塊,并為了獲得更多獎勵爭當歷史區塊的見證者,這便使得該資訊在區塊鏈中不可篡改,

強強聯合 · 未來

聯邦學習和區塊鏈有共同的應用基礎,通過技術上的共識實作多方合作的可信網路,具有較好的互補性,從應用目標來看,聯邦學習旨在創造價值,而區塊鏈旨在表示和轉移價值,

因此有以下兩種基本結合形式

第一種結合是利用區塊鏈的記錄不可篡改特性,對聯邦學習合作方可能面臨的惡意攻擊進行追溯和懲罰,例如,在多個參與方進行聯邦學習的同時,部署區塊鏈用于記錄聯邦學習的資料指紋(包括建模樣本、推理樣本、互動資訊),而對應的原始資料存盤于參與方本地,當發現有樣本遭受惡意攻擊時,由各參與方或者第三方組成調查組,依據區塊鏈記錄的指紋對原始資料進行核驗,便可以找出具體是哪一方遭受了攻擊,進而采取相應的措施,

第二種結合是利用區塊鏈的價值表示和轉移功能,對聯邦學習服務所創造的價值進行記賬和利益分配例如,在多個參與方進行聯邦推理的同時,部署區塊鏈用于記錄用戶服務的介面呼叫日志指紋、各參與方的貢獻、該服務所產生的收益,并通過智能合約自動將收益分配給各參與方,這種方式與現有的按條計費不同,可以更精準地評估每次呼叫的質量,從而激勵參與方確保呼叫的準確性,并積極優化效果,

【注】資訊傳遞的主要方式是復制;資訊轉移的主要方式是記錄,

附文 1

最大的區別應該就是「中心服務器」對其他「計算節點」的控制權不同,但具體來說,它們有以下幾點不同之處:

🔺中心服務器對資料和計算節點的控制權不同,分布式學習的中心服務器對計算節點以及其中的資料具有較高的控制權,計算節點完全受中心服務器的控制,接收來自中心服務器的指令,例如,在 MapReduce 這種分布式計算模型中,中心服務器可以下發一個指令,讓計算節點互相交換資料,但是在聯邦學習中,計算節點對資料具有絕對的控制權,中心服務器無法直接或間接操作計算節點上的資料;計算節點可以隨時停止計算和通信,退出學習程序,

計算節點穩定性不同,分布式學習場景下的計算節點,通常都位于專用的機房中,用高速寬帶進行互聯,網路、運行環境都非常穩定,而參與聯邦學習的計算節點可能是手機、平板等移動設備,這些設備因為用戶的使用習慣,其所處的網路環境并不穩定,隨時都可能與中心服務器斷開連接,

通信代價不同,因為分布式學習中的計算節點與中心服務器通常處于同一地理位置,而且有專用的通信條件,所以通信代價往往較小,而聯邦學習中的計算節點可能分布在不同的地理位置,與中心服務器一般處于遠程連接的狀態,同時受不同設備網路帶寬的影響,其通信代價要更高,

🔺計算節點上資料分布型別不同,分布式學習中,不同計算節點上的資料的劃分通常是均勻、隨機打亂的,它們具有獨立同分布的特點,這樣的特性非常適合設計高效的訓練演算法,但在聯邦學習中,并不能簡單假設資料是獨立同分布的,由于計算節點中的資料資料是獨立產生的,他們往往表現出不同的分布特征(非獨立同分布),

計算節點上資料量級不同,分布式學習為了提高訓練效率,通常都會把訓練資料均勻分布在每個計算節點上,實作負載均衡,然而在聯邦學習的條件下,每個計算節點擁有的資料量與設備自身有關,很難保證不同計算節點擁有相近的資料量,

參考文章/文獻:

[1] 聯邦學習vs區塊鏈:誰是“可信媒介”技術領域最強王者?

[2] 聯邦學習—破解AI演算法訓練資料孤島和資料隱私難題

[3] 2020.9.11聯邦學習基礎概念篇

[4] https://www.zhihu.com/question/383035713/answer/1150461823 知乎@MetaTian

[5] 什么是聯邦學習

[6] 一文讀懂“聯邦學習”和“區塊鏈”的異同

[7] 聯邦學習

[8] 一文了解區塊鏈中的數字簽名技術 知乎@財經小二

[9] 聯邦學習學習心得(2)——縱、橫向聯邦學習的原理分析

[10] 知乎首份區塊鏈面試指南--之共識演算法

[11] 同盾科技聯邦學習技術加持 讓資料“可用不可見”

轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/74292.html

標籤:其他

上一篇:區塊鏈是什么----自學筆記

下一篇:基于區塊鏈技術的跨境貿易溯源研究(1)

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • vue移動端上拉加載

    可能做得過于簡單或者比較low,請各位大佬留情,一起探討技術 ......

    uj5u.com 2020-09-10 04:38:07 more
  • 優美網站首頁,頂部多層導航

    一個個人用的瀏覽器首頁,可以把一下常用的網站放在這里,平常打開會比較方便。 第一步,HTML代碼 <script src=https://www.cnblogs.com/szharf/p/"js/jquery-3.4.1.min.js"></script> <div id="navigate"> <ul> <li class="labels labels_1"> ......

    uj5u.com 2020-09-10 04:38:47 more
  • 頁面為要加<!DOCTYPE html>

    最近因為寫一個js函式,需要用到$(window).height(); 由于手寫demo的時候,過于自信,其實對前端方面的認識也不夠體系,用文本檔案直接敲出來的html代碼,第一行沒有加上<!DOCTYPE html> 導致了$(window).height();的結果直接是整個document的高 ......

    uj5u.com 2020-09-10 04:38:52 more
  • WordPress網站程式手動升級要做好資料備份

    WordPress博客網站程式在進行升級前,必須要做好網站資料的備份,這個問題良家佐言是遇見過的;在剛開始接觸WordPress博客程式的時候,因為升級問題和博客網站的修改的一些嘗試,良家佐言是吃盡了苦頭。因為購買的是西部數碼的空間和域名,每當佐言把自己的WordPress博客網站搞到一塌糊涂的時候 ......

    uj5u.com 2020-09-10 04:39:30 more
  • WordPress程式不能升級為5.4.2版本的原因

    WordPress是一款個人博客系統,受到英文博客愛好者和中文博客愛好者的追捧,并逐步演化成一款內容管理系統軟體;它是使用PHP語言和MySQL資料庫開發的,用戶可以在支持PHP和MySQL資料庫的服務器上使用自己的博客。每一次WordPress程式的更新,就會牽動無數WordPress愛好者的心, ......

    uj5u.com 2020-09-10 04:39:49 more
  • 使用CSS3的偽元素進行首字母下沉和首行改變樣式

    網頁中常見的一種效果,首字改變樣式或者首行改變樣式,效果如下圖。 代碼: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, ......

    uj5u.com 2020-09-10 04:40:09 more
  • 關于a標簽的講解

    什么是a標簽? <a> 標簽定義超鏈接,用于從一個頁面鏈接到另一個頁面。 <a> 元素最重要的屬性是 href 屬性,它指定鏈接的目標。 a標簽的語法格式:<a href=https://www.cnblogs.com/summerxbc/p/"指定要跳轉的目標界面的鏈接">需要展示給用戶看見的內容</a> a標簽 在所有瀏覽器中,鏈接的默認外觀如下: 未被訪問的鏈接帶 ......

    uj5u.com 2020-09-10 04:40:11 more
  • 前端輪播圖

    在需要輪播的頁面是引入swiper.min.js和swiper.min.css swiper.min.js地址: 鏈接:https://pan.baidu.com/s/15Uh516YHa4CV3X-RyjEIWw 提取碼:4aks swiper.min.css地址 鏈接:https://pan.b ......

    uj5u.com 2020-09-10 04:40:13 more
  • 如何設定html中的背景圖片(全屏顯示,且不拉伸)

    1 <style>2 body{background-image:url(https://uploadbeta.com/api/pictures/random/?key=BingEverydayWallpaperPicture); 3 background-size:cover;background ......

    uj5u.com 2020-09-10 04:40:16 more
  • Java學習——HTML詳解(上)

    HTML詳解 初識HTML Hyper Text Markup Language(超文本標記語言) 1 <!--DOCTYPE:告訴瀏覽器我們要使用什么規范--> 2 <!DOCTYPE html> 3 <html lang="en"> 4 <head> 5 <!--meta 描述性的標簽,描述一些 ......

    uj5u.com 2020-09-10 04:40:33 more
最新发布
  • 我的第一個NPM包:panghu-planebattle-esm(胖虎飛機大戰)使用說明

    好家伙,我的包終于開發完啦 歡迎使用胖虎的飛機大戰包!! 為你的主頁添加色彩 這是一個有趣的網頁小游戲包,使用canvas和js開發 使用ES6模塊化開發 效果圖如下: (覺得圖片太sb的可以自己改) 代碼已開源!! Git: https://gitee.com/tang-and-han-dynas ......

    uj5u.com 2023-04-20 07:59:23 more
  • 生產事故-走近科學之消失的JWT

    入職多年,面對生產環境,盡管都是小心翼翼,慎之又慎,還是難免捅出簍子。輕則滿頭大汗,面紅耳赤。重則系統停擺,損失資金。每一個生產事故的背后,都是寶貴的經驗和教訓,都是專案成員的血淚史。為了更好地防范和遏制今后的各類事故,特開此專題,長期更新和記錄大大小小的各類事故。有些是親身經歷,有些是經人耳傳口授 ......

    uj5u.com 2023-04-18 07:55:04 more
  • 記錄--Canvas實作打飛字游戲

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 打開游戲界面,看到一個畫面簡潔、卻又富有挑戰性的游戲。螢屏上,有一個白色的矩形框,里面不斷下落著各種單詞,而我需要迅速地輸入這些單詞。如果我輸入的單詞與螢屏上的單詞匹配,那么我就可以獲得得分;如果我輸入的單詞錯誤或者時間過長,那么我就會輸 ......

    uj5u.com 2023-04-04 08:35:30 more
  • 了解 HTTP 看這一篇就夠

    在學習網路之前,了解它的歷史能夠幫助我們明白為何它會發展為如今這個樣子,引發探究網路的興趣。下面的這張圖片就展示了“互聯網”誕生至今的發展歷程。 ......

    uj5u.com 2023-03-16 11:00:15 more
  • 藍牙-低功耗中心設備

    //11.開啟藍牙配接器 openBluetoothAdapter //21.開始搜索藍牙設備 startBluetoothDevicesDiscovery //31.開啟監聽搜索藍牙設備 onBluetoothDeviceFound //30.停止監聽搜索藍牙設備 offBluetoothDevi ......

    uj5u.com 2023-03-15 09:06:45 more
  • canvas畫板(滑鼠和觸摸)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>canves</title> <style> #canvas { cursor:url(../images/pen.png),crosshair; } #canvasdiv{ bo ......

    uj5u.com 2023-02-15 08:56:31 more
  • 手機端H5 實作自定義拍照界面

    手機端 H5 實作自定義拍照界面也可以使用 MediaDevices API 和 <video> 標簽來實作,和在桌面端做法基本一致。 首先,使用 MediaDevices.getUserMedia() 方法獲取攝像頭媒體流,并將其傳遞給 <video> 標簽進行渲染。 接著,使用 HTML 的 < ......

    uj5u.com 2023-01-12 07:58:22 more
  • 記錄--短視頻滑動播放在 H5 下的實作

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 短視頻已經無數不在了,但是主體還是使用 app 來承載的。本文講述 H5 如何實作 app 的視頻滑動體驗。 無聲勝有聲,一圖頂百辯,且看下圖: 網址鏈接(需在微信或者手Q中瀏覽) 從上圖可以看到,我們主要實作的功能也是本文要講解的有: ......

    uj5u.com 2023-01-04 07:29:05 more
  • 一文讀懂 HTTP/1 HTTP/2 HTTP/3

    從 1989 年萬維網(www)誕生,HTTP(HyperText Transfer Protocol)經歷了眾多版本迭代,WebSocket 也在期間萌芽。1991 年 HTTP0.9 被發明。1996 年出現了 HTTP1.0。2015 年 HTTP2 正式發布。2020 年 HTTP3 或能正... ......

    uj5u.com 2022-12-24 06:56:02 more
  • 【HTML基礎篇002】HTML之form表單超詳解

    ??一、form表單是什么

    ??二、form表單的屬性

    ??三、input中的各種Type屬性值

    ??四、標簽 ......

    uj5u.com 2022-12-18 07:17:06 more