主頁 >  其他 > TensorFlow Probability 聯合分布變分推斷工具,估計權重的貝葉斯可信區間更簡單

TensorFlow Probability 聯合分布變分推斷工具,估計權重的貝葉斯可信區間更簡單

2021-04-14 10:19:39 其他

圖片

文 / Emily Fertig、Joshua V. Dillon、Wynn Vonnegut、Dave Moore 和 TensorFlow Probability 團隊

本文將介紹 TensorFlow Probability 中新的聯合分布變分推斷工具,展示如何在回歸模型中使用這些工具估計權重的貝葉斯可信區間,

  • TensorFlow Probability
    https://tensorflow.google.cn/probability/

概述

變分推斷 (Variational Inference, VI) 將近似貝葉斯推斷轉換為優化問題,并尋求一個“代理 (Surrogate)”后驗分布,使 KL 與真后驗散度最小化,基于梯度的 VI 通常比 MCMC 方法更快,與模型引數的優化自然組合,并提供模型證據的下限,可直接用于模型比較、收斂診斷和可組合推斷,

TensorFlow Probability (TFP) 提供了快速、靈活和可擴展的 VI 工具,自然融入 TFP 堆疊,這些工具可以通過線性變換或歸一化流引起的協方差結構構建代理后驗,

VI 可用于估計回歸模型引數的貝葉斯可信區間 (Credible Intervals),以估計各種處理或觀察到的特征對目標結果的影響,可信區間根據引數以觀察資料為條件的后驗分布,給定引數的先驗分布的假設,以一定的概率約束未觀察到的引數的值,

本文演示了如何使用 VI 獲得貝葉斯線性回歸模型引數的可信區間,該模型用于測量家庭中的氡水平(使用 Gelman et al.'s (2007) Radon dataset;參見 Stan 中的類似示例),我們演示了 TFP JointDistributions 如何與雙射器結合以建立和擬合兩種型別的表達性代理后驗:

  • 由塊矩陣變換的標準正態分布,矩陣可以反映后驗的某些分量之間的獨立性和其他分量之間的依賴性,放寬均值場或全方差后驗的假設,

  • 一個更復雜、容量更大的逆自回歸流 (Inverse Autoregressive Flow) ,

  • Gelman et al.'s (2007) Radon dataset
    http://www.stat.columbia.edu/~gelman/arm/

  • 類似示例
    https://mc-stan.org/users/documentation/case-studies/radon.html#Correlations-among-levels

  • 逆自回歸流
    https://arxiv.org/abs/1606.04934

訓練代理后驗,并與均值場代理后驗基線結果進行比較,下圖顯示了三個 VI 代理后驗得到的四個模型引數的可信區間,以及用于比較的漢密爾頓蒙特卡洛 (Hamiltonian Monte Carlo) 演算法,

圖片

您可以在此 Google Colab 中跟進和了解所有詳細資訊,

  • Google Colab
    https://colab.research.google.com/github/tensorflow/probability/blob/master/tensorflow_probability/examples/jupyter_notebooks/Variational_Inference_and_Joint_Distributions.ipynb

示例:氡測量的貝葉斯分層線性回歸

氡是一種放射性氣體,通過地面的接觸點進入房屋,這種致癌物質是非吸煙者患肺癌的主要原因,不同家庭的氡水平差異很大,

EPA 對 8 萬間房屋的氡水平進行了研究,兩個重要的預測因素是:

  • 測量的樓層(地下室的氡含量較高)

  • 縣級鈾水平(與氡水平正相關)

預測按縣分組的房屋的氡水平是貝葉斯分層建模中的一個經典問題,由Gelman 和 Hill (2006) 提出,我們感興趣的是位置(縣,Countyi)對明尼蘇達州房屋氡水平影響的可信區間,為了隔離這種影響,模型中還包括樓層和鈾水平的影響,此外,我們還將按縣納入一個與測量的平均樓層相對應的背景效應,這樣如果測量的樓層在各縣之間存在差異,就不會歸因于縣效應,

  • Gelman 和 Hill (2006)
    http://www.stat.columbia.edu/~gelman/arm/

回歸模型具體如下:

圖片

其中 i 為觀測值,countyi 即縣的第 i 個觀測值,

我們使用 county-level 隨機效應捕捉地理差異,引數 uranium_weightcounty_floor_weight 經過概率建模,floor_weight 和常數 bias 是確定性的,這些建模選擇在很大程度上是任意的,目的是為了在一個合理復雜的概率模型上證明 VI,關于使用氡資料集在 TFP 中通過固定和隨機效應進行多層建模的更深入討論,請參閱多級建模 Primer 和使用變分推斷擬合泛化的線性混合效應模型,

  • 多級建模 Primer
    https://github.com/tensorflow/probability/blob/master/tensorflow_probability/examples/jupyter_notebooks/Multilevel_Modeling_Primer.ipynb

  • 使用變分推斷擬合泛化的線性混合效應模型
    https://github.com/tensorflow/probability/blob/master/tensorflow_probability/examples/jupyter_notebooks/Linear_Mixed_Effects_Model_Variational_Inference.ipynb

Github 上提供了此示例的完整代碼,

  • Github
    https://colab.research.google.com/github/tensorflow/probability/blob/master/tensorflow_probability/examples/jupyter_notebooks/Variational_Inference_and_Joint_Distributions.ipynb

變數為確定性引數和正態分布尺度引數定義,后者被約束為正數,

import tensorflow as tf
import tensorflow_probability as tfp
tfd = tfp.distributions
tfb = tfp.bijectors


floor_weight = tf.Variable(0.)
bias = tf.Variable(0.)
log_radon_scale = tfp.util.TransformedVariable(1., tfb.Exp())
county_effect_scale = tfp.util.TransformedVariable(1., tfb.Exp())

我們將回歸的概率圖模型指定為 TFP JointDistribution

@tfd.JointDistributionCoroutineAutoBatched
def model():
 uranium_weight = yield tfd.Normal(0., scale=1., name='uranium_weight')
 county_floor_weight = yield tfd.Normal(
     0., scale=1., name='county_floor_weight')
 county_effect = yield tfd.Sample(
     tfd.Normal(0., scale=county_effect_scale),
     sample_shape=[num_counties], name='county_effect')
 yield tfd.Normal(
     loc=(log_uranium * uranium_weight
          + floor_of_house * floor_weight
          + floor_by_county * county_floor_weight
          + tf.gather(county_effect, county, axis=-1)
          + bias),
     scale=log_radon_scale[..., tf.newaxis],
     name='log_radon')

我們將 log_radon 固定在觀測到的氡資料上,以對未歸一化的后驗進行建模,

target_model = model.experimental_pin(log_radon=log_radon)

貝葉斯變分推斷快速摘要

假設我們有以下生成程序,其中 𝜃 代表隨機引數(回歸模型中的 uranium_weightcounty_floor_weight, 和 county_effect),ω 代表確定性引數(floor_weightlog_radon_scalecounty_effect_scalebias),x𝑖 為特征(log_uraniumfloor_of_housefloor_by_county);𝑦𝑖 為目標值 (log_radon),𝑖 = 1...n 個觀測資料點:

圖片

VI 的特征為:

圖片

(從技術上看,我們假設 q 相對于 r 是絕對連續的,另請參閱琴生不等式)

由于該約束對所有 q 都成立,顯然最嚴格的是:

圖片

關于術語,我們稱

  • q* 為“代理后驗”,

  • Q 為“代理族”,

ω* 表示 VI 損失上確定性引數的最大似然值,有關變分推斷的更多資訊,請參見此調研,

  • 調研
    https://arxiv.org/abs/1601.00670

表達性代理后驗

接下來我們用 VI 估計引數的后驗分布,有兩種不同型別的代理后驗:

  • 受約束的多元正態分布,其協方差結構由分塊矩陣變換誘導,

  • 由逆自回歸流變換的多元標準正態分布,隨后進行拆分和重構以匹配后驗的支持,

多元正態代理后驗

為了構建該代理后驗,使用可訓練的線性算子誘導后驗分量之間的相關性,

首先構建一個具有向量值的標準正態分量的基礎分布,其大小等于相應的先驗分量的大小,這些分量具有向量值,因此可以被線性算子變換,

flat_event_size = tf.nest.map_structure(
     tf.reduce_prod,
     tf.nest.flatten(target_model.event_shape_tensor()))
base_standard_dist = tfd.JointDistributionSequential(
     [tfd.Sample(tfd.Normal(loc=0., scale=1.), s)
      for s in flat_event_size])

對此分布應用可訓練的分塊下三角線性算子誘導后驗的相關性,在線性算子中,可訓練的全矩陣塊代表后驗兩個分量之間的全協方差,而零(或 None)的塊表示獨立性,對角線上的塊是下三角矩陣或對角線矩陣,因此整個塊結構代表下三角矩陣,

將此雙射器應用于基礎分布會導致均值為 0、(Cholesky 分解的)協方差等于下三角塊矩陣的多元正態分布,

operators = (
  (tf.linalg.LinearOperatorDiag,),  # Variance of uranium weight (scalar).
  (tf.linalg.LinearOperatorFullMatrix,  # Covariance between uranium and floor-by-county weights.
   tf.linalg.LinearOperatorDiag),  # Variance of floor-by-county weight (scalar).
  (None,  # Independence between uranium weight and county effects.
   None,  # Independence between floor-by-county and county effects.
   tf.linalg.LinearOperatorDiag)  # Independence among the 85 county effects.
)
block_tril_linop = (
  tfp.experimental.vi.util.build_trainable_linear_operator_block(
      operators, flat_event_size))
scale_bijector = tfb.ScaleMatvecLinearOperatorBlock(block_tril_linop)

最后,應用可訓練的 Shift 雙射器允許平均值取非零值,

loc_bijector = tfb.JointMap(
   tf.nest.map_structure(
       lambda s: tfb.Shift(
           tf.Variable(tf.random.uniform(
               (s,), minval=-2., maxval=2., dtype=tf.float32))),
       flat_event_size))

以比例尺和位置雙射器對標準正態分布進行變換所得的多元正態分布必須進行重塑和重構才能匹配先驗,并最終制約于先驗的支持,

reshape_bijector = tfb.JointMap(
   tf.nest.map_structure(tfb.Reshape, flat_event_shape))
unflatten_bijector = tfb.Restructure(
       tf.nest.pack_sequence_as(
           event_shape, range(len(flat_event_shape))))
event_space_bijector = target_model.experimental_default_event_space_bijector()

接下來將其整合 - 將可訓練的雙射器鏈接在一起,并應用于基礎標準正態分布以構建代理后驗,

surrogate_posterior = tfd.TransformedDistribution(
   base_standard_dist,
   bijector = tfb.Chain([  # Chained bijectors are applied in reverse order.
        event_space_bijector,  # Constrain to the support of the prior.
        unflatten_bijector,  # Pack components into the event_shape structure.
        reshape_bijector,  # Reshape the vector-valued components.
        loc_bijector,  # Allow for nonzero mean.
        scale_bijector  # Apply the block matrix transformation.
      ]))

訓練多元正態代理后驗,

optimizer = tf.optimizers.Adam(learning_rate=1e-2)
@tf.function(jit_compile=True)
def run_vi():
 return tfp.vi.fit_surrogate_posterior(
   target_model.unnormalized_log_prob,
   surrogate_posterior,
   optimizer=optimizer,
   num_steps=10**4,
   sample_size=16)
mvn_loss = run_vi()
mvn_samples = surrogate_posterior.sample(1000)

由于訓練后的代理后驗是 TFP 分布,因此我們可以從中獲取樣本并進行處理,得出引數的后驗可信區間,

以下箱須圖顯示了兩個最大縣的縣效應的 50% 和 95% 可信區間,以及各個縣對土壤鈾測量值和平均樓層的回歸權重,縣效應的后驗可信區間表明,在考慮其他變數之后,圣路易斯縣的地理位置與較低的氡水平相關,亨內平縣的地理位置效應接近中性,

回歸權重的后驗可信區間表明,較高的土壤鈾水平與較高的氡水平相關,在較高樓層進行測量的縣(很可能是因為房屋沒有地下室)往往有較高的氡水平,這可能與土壤特性及其對建筑結構型別的影響有關,

樓層的(確定性)系數為 -0.7,表明較低樓層的氡水平較高,符合預期,

圖片

逆自回歸流代理后驗

逆自回歸流 (IAF) 是一種正態化流,使用神經網路捕獲分布中各分量之間復雜的非線性依賴關系,接下來,我們構建 IAF 代理后驗,探明此容量更大、更靈活的模型是否優于受約束的多元正態,

首先建立具有矢量事件形狀的標準正態分布,其長度等于后驗自由度的總數,

base_distribution = tfd.Sample(

   tfd.Normal(loc=0., scale=1.),
   sample_shape=[tf.reduce_sum(flat_event_size)])

可訓練的 IAF 變換正態分布,

num_iafs = 2
iaf_bijectors = [
   tfb.Invert(tfb.MaskedAutoregressiveFlow(
       shift_and_log_scale_fn=tfb.AutoregressiveNetwork(
           params=2,
           hidden_units=[256, 256],
           activation='relu')))
   for _ in range(num_iafs)
]

IAF 雙射器與其他雙射器鏈接,建立具有與先驗相同的事件形狀和支持的代理后驗,

iaf_surrogate_posterior = tfd.TransformedDistribution(
   base_distribution,
   bijector=tfb.Chain([
        event_space_bijector,  # Constrain to the support of the prior.
        unflatten_bijector,  # Pack components into the event_shape structure.
        reshape_bijector,  # Reshape the vector-valued components.
        tfb.Split(flat_event_size),  # Split into parts, same size as prior.
   ] + iaf_bijectors))  # Apply a flow model.

與多元正態代理后驗相同,IAF 代理后驗也使用 tfp.vi.fit_surrogate_posterior 訓練,IAF 代理后驗的可信區間與受約束的多元正態的可信區間相似,

圖片

均值場代理后驗

VI 代理后驗通常被假定為均值場(獨立)正態分布,具有可訓練的均值和方差,通過雙射變換約束到先驗支持,除了兩個更具表達性的代理后驗之外,我們還使用一個與多元正態代理后驗相同的通用公式來定義均值場代理后驗,我們不使用分塊下三角線性算子,而是使用分塊對角線性算子,其中每個塊都是對角線的:

operators = (
  tf.linalg.LinearOperatorDiag,
  tf.linalg.LinearOperatorDiag,
  tf.linalg.LinearOperatorDiag,
)
block_diag_linop = (
   tfp.experimental.vi.util.build_trainable_linear_operator_block(
       operators, flat_event_size))

在這種情況下,均值場代理后驗給出了與更具表達性的代理后驗相似的結果,表明這種更簡單的模型可能足以完成推斷任務,作為“基本事實”,我們還使用漢密爾頓蒙特卡洛演算法采樣(有關完整示例,請參見 Colab),這三個代理后驗產生的可信區間在視覺上均與 HMC 樣本相似,盡管有時由于 ELBO 損失的影響而分散不足,這常見于 VI,

圖片

  • Colab
    https://colab.research.google.com/github/tensorflow/probability/blob/master/tensorflow_probability/examples/jupyter_notebooks/Variational_Inference_and_Joint_Distributions.ipynb

結論

在這篇文章中,我們使用聯合分布和多部分雙射器構建了 VI 代理后驗,并將其擬合以估計氡資料集回歸模型中權重的可信區間,對于此簡單模型,更具表達性的代理后驗的表現似乎與均值場代理后驗相似,不過我們展示的工具可構建各種靈活的代理后驗,適用于更復雜的模型,

前往 TFP 首頁查看我們的代碼、檔案和更多示例,

  • TFP 首頁
    https://tensorflow.google.cn/probability/

想了解 TensorFlow 更多實用工具,請點擊下方鏈接,前往 TensorFlow 官網,在機器學習的道路上,我們共同進步,

https://tensorflow.google.cn

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

標籤:AI

上一篇:答應我,這次搞懂 I/O 多路復用!

下一篇:Gradle專案的jar發布到私有倉庫

標籤雲
其他(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)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more