研究Waifu的程式碼( https://github.com/blockparty-sh/waifu_icon_repo/blob/master/run_generator.py ) 發現, seed有取餘數,大約2的31次方一個循環。 line 274: args.seeds = [ int('0x%s' % args.tokenid, 16) % ((1 << 31) - 1) ] 所以像 https://icons.waifufaucet.com/original/94e75454162fbd89b6e1c74328b68802b4a3608ecb5145ef42bace6344079ef1.png https://icons.waifufaucet.com/original/95e75454162fbd89b6e1c74328b68802b4a3608ecb5145ef42bace6344079ef0.png 會是一樣的圖 試著把種子範圍加大過,不過最高只能到2的32次方,超過的話函式庫會報錯 (應該是亂數產生器的輸入範圍限制)。 其實要把Token ID的256 bits全部用上也不難,程式其他部份還有很多地方可以輸入參數去調整圖片結果。不過話說回來,2的31次方也夠大了。
Log in to join in Reading is open to everyone. Replying needs an account.
3 comments
大概也要估算 GAN 那邊的熵 就算只有 2^31 應該也一堆雙胞胎或多胞胎了我想 實際上只推出約 30000 隻 ~ 2^15 記得就有很相似的了 當然這跟 PRNG 可能也有關 要做一個亂度可以達到 2^256 ~ 10^77 的系統我想應該是相當有難度的事 ECDSA 等加密系統當然是,不過那比較像是用數學推導出來的。 反過來說,如果 GAN/ML/AI 可以硬幹做出相當等級的亂度系統,ECDSA 可能就不在安全了。
多胞胎但不完全一樣,顏色不同或是換個角度,或加一點noise進去擾亂一下這樣 XD
了解 要把 256 bit 都用掉應該還是會煞費心思 XD