原创 lasagne embedding layer理解

lasagne.layers.EmbeddingLayer 是用來做 word embedding 的,輸入 index 向量,輸出 embedding 向量。 參數 input_size 是 vocabulary 大小,outp

原创 tensorflow實現triplet loss

2020.1.14 Updates 原來 tensorflow 自帶一個 triplet loss 實現,支持單標籤數據,見 [3]。可以參考寫法。 Triplet Loss triplet loss 的形式: L=max⁡{0,

原创 NUS-WIDE數據集劃分

NUS-WIDE[1]是多標籤數據集,看到幾篇都是類似 [1] 的劃分方式:每個類隨機選 100 個造成 query set。感覺有些謎,問 DCMH 作者,見 [3]。 現在的策略是:按類來抽,保證每個類的樣本數據,而且不放回,

原创 pickle讀文件解碼問題

運行 Revisiting Semi-Supervised Learning with Graph Embeddings 的代碼(kimiyoung/planetoid),其中用 pickle 讀數據文件出現問題。 它本身是用 p

原创 tensorflow用gather/scatter實現advanced indexing

tf.gather numpy 支持用 ndarray 索引: import numpy as np arr = np.arange(9).reshape(3, 3) idx = np.array([0, 2]) print(a

原创 numpy和pytorch的argsort結果不同

Notes 將 mAP(@R)計算代碼 改一份 pytorch 版的,結果跑出不同結果,發現 numpy 和 pytorch 的 argsort 返回的結果不同,測試算出的 mAP 差異有點大。 但是…並不能說有錯,只是對相等的元

原创 multi-label learning/classification評價指標

可以分成兩類: example-based metrics:對每個 sample 分別測試性能,然後取平均 label-based metrics:對每個 class label 測試性能,然後取 macro/micro 平均

原创 jupyter notebook參數化運行python

Updates (2019.8.14 19:53)喫飯前用這個方法實戰了一下,喫完回來一看好像不太行:跑完一組參數之後,到跑下一組參數時好像沒有釋放之佔用的 GPU,於是 notebook 上的結果,後面好幾條都報錯說 cuda

原创 wikipedia數據集預處理

Notes wikipedia[1] 用於檢索的數據集,包含 2866 個樣本、10 個類,圖像、文本兩個模態。 想按照 [2] 的設置處理數據,而 [2] 的設置應該來自 [3],即 images 用 CaffeNet[4] 提

原创 用ngrok穿透內網訪問windows

Scenario 想在上課的時候用筆記本(Windows)遠程回實驗室的臺式機(Windows)工作,TeamViewer 莫名崩掉,尋求另一個方案。有時只要用 ssh 就行,遠程桌面也行。 jupyter notebook/la

原创 python將word表格轉寫入excel

Notes 想將一份 word 文件中的幾個表格轉寫入 excel 文件中,後續用 excel 處理。 用到 python-docx 和 pandas 分別處理 word 和 excel。 安裝 python-docx:pip i

原创 tensorflow自定義梯度

Notes 要實現 [1] 的 piece-wise threshold function,類似於 Htanh,也需要自定義梯度,用到 @tf.custom_gradient。 函數是:g(s)={0,s<0.5−ϵs,0.5−ϵ

原创 用MNIST製作多標籤(multi-label)數據集

MNIST 是個單標籤(single label,multi-class)數據集,圖片尺寸都是 28×2828\times2828×28,可以將 4 幅圖拼在一起,組成一幅 56×5656\times5656×56 的圖像,標籤也

原创 PASCAL Visual Object Classes Challenge 2007(VOC 2007)數據集預處理

VOC 2007[1] 是一個多標籤數據集,有 20 類。這裏爲 multi-label classification 任務做預處理,包括: 將圖片移到同一個目錄(方便讀取); 數據劃分(本身就已經分好 train/val 和

原创 假設檢驗筆記

假設檢驗,就是做了一個假設 H,然後通過實驗得到相關的統計數據判斷 H 是否(大概率)成立,或者有多大把握認爲 H 成立。這個 H 一般是一個與分佈、統計量相關的的命題,如 H:P{硬幣朝上}<0.2H: P\{硬幣朝上\} <