2024年3月29日

鎖算力的顯卡,對機器學習深度學習這類AI應用有影響嗎?

挖礦潮來臨時,顯卡被炒上了天,高昂的顯卡價格讓不少人望洋興嘆。

英偉達推出了為防止挖礦的鎖算力的顯卡。於是問題就來了,鎖算力的顯卡,對平時玩遊戲和機器學習深度學習這類AI應用有影響嗎?

某東購物網站上看了下鎖算力的30系列顯卡。然後點開了在線客服的聊天窗口。首先問:鎖算力的顯卡,對機器學習這類應用有影響不?回答:沒有影響。那麽,是不是只對挖礦有影響,玩遊戲和搞機器學習深度學習都不影響?

回答:只限制了哈希算力。

完成hash碰撞的就是哈希算力,比特幣挖礦的運算則是完成相關算法的過程。比特幣挖礦采用的是SHA-256哈希值運算,這種算法會進行大量的32位整數循環右移運算。AI,深度學習之類的項目運算,大多數的深度學習模型使用的是32位單精度浮點數(FP32)來進行訓練,還有一些是用float16和float64。所以,比特幣挖礦和AI深度學習有點井水不犯河水。鎖算力與否,理論上並沒影響。

不過貌似需要CUDA的版本是11.0以上。至於是否影響玩遊戲,則要看那些實測測評的。機智客看到網上有人在一定的其他硬件配置下,分別用RTX3060原版和鎖算力版做了對比。結果顯示,兩張顯卡在性能表現上幾乎完全一致,大家可以參考。


摘要自 url: https://www.163.com/dy/article/GGG0NC7I0511SIE3.html

2024年3月13日

讓 Virtualbox 虛擬機 掛載 隨身碟/實體硬碟

 Virtualbox 虛擬機可否掛載,甚至從隨身碟/實體硬碟開機?

可以!要利用 virtualbox 下的 vmdk 格式,來連結實體 USB/硬碟

1. 連結實體連結

在 Windows 的命令提示終端機下指令

VBoxManage internalcommands createrawvmdk -filename D:\VirtualBox\usbboot.vmdk -rawdisk \\.\PhysicalDrive1

Ubuntu/Mint 下終端機下指令

VBoxManage internalcommands createrawvmdk -filename /path/part1.vmdk -rawdisk /path/PhysicalDrive1

在 virtualbox 的虛擬媒體管理員下,建立媒體。之後就可用了




2023年3月31日

難懂的密碼? 初探神奇的 regex 語法

 regex 語法

正規表達式(Regular Expression,簡稱 regex)是一種用於描述字串規律的表示法,可應用在文本搜索、替換、驗證、分割等各種字串操作中。Regex 語法是由特殊字符和普通字符組成的,其主要作用是匹配目標字串中符合特定規律的子字串。最後介紹一些常見的 regex 語法。

使用情境:

我有多個考題,文字格式如下:

1. 若一虛無假設H0: μ = h,若 t 檢定之值 = tB,而查表得知臨界值為 tr>,且 |tB| > tR,則我們可以推論?
a. 無法拒絕此虛無假設
b. 要再進行另一個檢定才能判定
c. 應拒絕此虛無假設
d. 該檢定是偽陽性

2. 利用p值判斷時,若主觀顯著水準 = 5%,則某一檢定之 p 值 = 0.08 時,我們可以推論?
a. 應拒絕此虛無假設
b. 要再進行另一個檢定才能判定
c. 無法拒絕此虛無假設
d. 該檢定是偽陰性


我想將題目獨立一行,4個答項合併成一行,用 regex 語法來取代

(a) 搜尋以 b. c. d. 為開頭的 regex 

\n([b-d]\.)\s*

這意思是,是用來匹配以 b.、c.、d. 開頭的一行文本,並將其與下一行文本合併為同一行。

具體來說,這個正則表達式包含了以下部分:

  • \n:匹配換行符(newline)。
  • ([b-d].):匹配以 a.、b.、c.、d. 開頭的字串,其中 [a-d] 匹配 a 到 d 之間的任何一個字符,. 匹配一個句點。
  • \s*:匹配零個或多個空白字符(包括空格、制表符等)。

(b) 將使用了'(\1)',表示插入捕獲組所匹配到的文本

結果:

1. 若一虛無假設H0: μ = h,若 t 檢定之值 = tB,而查表得知臨界值為 tr>,且 |tB| > tR,則我們可以推論? (a. ) 無法拒絕此虛無假設 (b. ) 要再進行另一個檢定才能判定 (c. ) 應拒絕此虛無假設 (d. ) 該檢定是偽陽性
2. 利用p值判斷時,若主觀顯著水準 = 5%,則某一檢定之 p 值 = 0.08 時,我們可以推論? (a. ) 應拒絕此虛無假設 (b. ) 要再進行另一個檢定才能判定 (c. ) 無法拒絕此虛無假設 (d. ) 該檢定是偽陰性

可是,還不確定b.後為何多了一個空格

常用 regex 語法解釋

1. 字符集合:使用方括號表示一組可能的字符。例如,[abc] 表示匹配字符 a、b、c 中的任意一個字符。

2. 點:用點符號 . 表示任何一個字符。

3. 重複:用花括號 {} 表示某個字符出現的次數。例如,a{3} 表示匹配三個 a。

4. 或:使用竖线符號 | 表示“或”關係。例如,a|b|c 表示匹配 a 或 b 或 c。

5. 開始和結束:使用^表示字串開始位置,$表示字串結束位置。例如,^abc 表示匹配以 abc 開始的字串。

6. 分組:使用小括號 () 將多個字符分成一組。例如,(abc)+ 表示匹配一個或多個由 abc 組成的字串。

7. 通配符:在字符集合中使用 ^ 表示除了某個字符之外的其他字符。例如,[^abc] 表示匹配除了 a、b、c 以外的任意字符。

8. 轉義:有些字符具有特殊意義,在正則表達式中需要使用反斜杠 \ 轉義才能表示其本身。例如,\d 表示匹配任意一個數字字符。

2022年12月6日

Avidemux 好用的開源影片編輯軟體:改變影片解析度

 


 Avidemux (https://avidemux.sourceforge.net/) 這個開源影片剪輯軟體,有中文選單,十分好用。切割影片十分快速。本文介紹影片解析度的轉換。

我上課時利用桌面錄影軟體,錄出來的影片是 1024x786 (舊電腦),想改成 1280x720 解析度,又不想影片變形,此時 Avidemux 就派上用場了。

先在輸出影片編碼處,選 Mpeg4 AVC (x264);


























然後在「影片」下拉選單處,選「濾鏡器」,選「Fit to size」,width 填 1280、Height 填 720,按「確定」後再存檔即可。



2022年11月19日

Virtual Audio Cable: STT 語音轉文字

有聽過 Virtual Audio Cable 嗎?

Virtual Audio Cable (Windows 版本,見 https://www.techmarks.com/virtual-audio-cable/)是虛擬音源線軟體,它可以讓喇叭的聲音直接進入麥克風,在錄電腦系統聲音、語音辨識轉文字、或 google meet 教學時,可以讓學生聽到老師端PC的系統聲音。

那在 linux/ubuntu/mint 有類似的工具嗎? 有的!

參見:

https://askubuntu.com/questions/633674/virtual-audio-cable-for-ubuntu

我自己在 mint 20.3 是建立一個 .sh 檔,內容:

MICROPHONE="alsa_input.usb-AVerMedia_AVerMedia_AM310_USB_Microphone-00.multichannel-input"

SPEAKERS="alsa_output.pci-0000_07_00.6.analog-stereo"

pactl load-module module-null-sink sink_name=virtual2 sink_properties=device.description="mic+music"

這樣就可以使用:STT 語音轉文字

https://pulipulichen.github.io/HTML5-Speech-to-Text/

2021年5月30日

虛擬相機/攝影機 camera for Mint/Ubuntu: v4l2loopback

 obs v26.1+ 支援虛擬相機,只要安裝了它,控制項就會多出現一個按鈕:


我的系統是 Mint 19.3,用 sudo apt install  -y v4l2loopback-dkms 並無法正常運作。先用指令移除

sudo apt remove -y v4l2loopback-dkms

要改用最近版本,自行到 https://github.com/umlaeute/v4l2loopback 下載。解壓縮到子目錄,切到該子目錄

make 

sudo make install

depmod -a

然後用這個來啟用

(假設你已有 webcam, 自動安裝在 /dev/video0)

以下指令,可將虛擬相機/攝影機 安裝在 /dev/video1  (以下的參數 video_nr=1,代表 video1)

sudo modprobe v4l2loopback video_nr=1 card_label="OBS Cam" exclusive_caps=1

使用這兩個參數,card_label="OBS Cam" exclusive_caps=1,才可以讓 google Meet 找到虛擬攝影機。

"OBS Cam" 這參數可自訂,其意思是讓 google Meet 可以讓 obs 的輸出畫,當做你的攝影機。

安裝好後,按上圖的 「虛擬相機」,就OK啦~ 

如何將 obs 的畫面輸出到 Meet?

啟動 google Meet,先按下方的「檢查音訊及視訊功能」



按「音訊和視訊」這個 tabl,即可在右方找到「OBS Cam」這個虛擬攝影機囉。









最後記得請對方改成高畫質





Covid 疫苗開發紀錄片:Mission Possible

https://www.youtube.com/embed/jbZUZ9JYNB