たれぱんのびぼーろく

わたしの備忘録、生物学とプログラミングが多いかも

2022-01-01から1年間の記事一覧

ボイチェンのある未来: 仮台詞フルボイス化

映像作品や音声作品の作家が自分で仮台詞をあてる時代が来る。 1人10役が可能なためキャラの演じ分けが可能になり、作家が構想段階の仮台詞から自分で声をあてられるようになる。 プリビズ的な意味でのプリボイス。 更なる未来: 全自動ボイス化 ボイチェンに…

未来を誘導する: 実績と流れ

人ひとりの力はあまりに小さい。 小さい力で大をなすには「起爆剤としての実績」と「行き先へ繋がる流れ」が必要。 流れ 流れあるいは構造とは、エネルギーが安定方向へ流れるように、人々・世界が自然と動きたくなるように設計された装置である。 現存の地…

トリセツ: 行動せずに情報の賞味期限が来る

行動が緩慢な時期に出力がガクッと落ちる傾向がある。 理由は鮮度フィードバックがかかるから。 時間が経つほど見通しが立って情報の鮮度が落ちる。 行動が緩慢なシーズンは見通しばかり経っていくので、比例して行動がどんどん遅くなる。 鮮度の低下が行動…

治安の悪化: 貧すれば鈍する + 現実は非情

SNSのUXが下がってきたと年々言われている。 なぜそうなったのか。 1. 貧すれば鈍する 貧乏は心の余裕を奪い、人を刺々しくする。これは真理。 そしてSNSのユーザーが増えていくということは、お金の無い人含めどんどん取り込んでいくということ。 結果、そ…

PyTorch-TensorFlow: 初期化の違い

PyTorchとTensorFlowで再現性の違いが出ることはよくある。 その要因の一つが初期化手法の違い。 なのでドキュメントとコードを当たって初期化手法をチェックした。 PyTorch vs TensorFlow Linear: kaiming_uniform(a=√5) == ~U[±√1/fan_in] vs glorot_unifo…

ウォッチャーが沈む仕組み: 知られれば布教される

自分と異なる人々を監視する者(ウォッチャー)はしばしば向こう側へと堕ちる/沈む。 芸能人アンチ、ゲームチーター、新興宗教1、そういう事例はそこらじゅうにある。 ではなぜ「ウォッチャー = 批判的な監視者」がそちら側に堕ちてしまうのだろうか。 知ら…

麻雀: 王牌とその特性

終局時に少なくとも14枚の牌が自模られずに残っている、これが王牌。 完全ランダムで選択され、最小1枚、最大5枚まで開示される(ドラ表示牌)。 牌の総数は34種136枚なので、王牌率は 14/136 = 10.2% 同じ牌が王牌に現れる確率は 91.2%1、なのでほとんどの…

Conv受容野サイズを計算する

Wikipedia/畳み込みニューラルネットワーク#受容野へ移行。

論文解説: Wang (2021) fairseq S^2: A Scalable and Integrable Speech Synthesis Toolkit

様々な音声合成の公開実装と評価をしました論文 by Fairseqチーム1。 文字/音素/Unit-to-MelとvocoderでSpeech Synthesisをして、Fairseqお得意の指標群で客観評価。 Models models Implemented by Fairseq S2 Text-to-Mel: Tacotron 2, Transformer TTS, Fa…

ニューラルネットワーク要素比較の難しさ

AI

まとめ: 要素の本質的な影響よりハイパラの影響が大きいため、要素入れ替えによる影響評価には向かない(不可能ではない。向かないだけ)。 要素入れ替え評価 特定コンポーネントの価値を評価する手法として、そのコンポーネント以外を固定にしてそのコンポ…

ブラックリスト/BAN基準の作り方

ダメなパターン 「おもんないからBAN」 曖昧な基準 (面白さは人それぞれ) 萎縮の原因 結果論 (同じ行為がどっちにもなり得る) 浄化主義 (おもんないものを消せば面白くなると思ってる)

フレーム化とパディングの規則性

信号長 L, ウィンドウサイズ w, ホップ長 h, フレーム数 n とする。 最初にウィンドウ分を使ったあと、以降のフレームでホップ長分追加で利用するので、必要な信号長は w * 1 + h * (n-1) パディング無しの場合、 L >= w * 1 + h * (n-1) <=> (L-w)/h + 1 >=…

全体の解像度を揃えて進む

「理解に曖昧さが残る状態でも手を動かし前に進めながら理解していこう」というスタイルがある。 このスタイルで気を付けるべきことは「全体の解像度を揃えて進む」こと。 解像度 解像度とは理解の緻密さ。 知っている概念の数、詳細度、関係性。 何がはまり…

麻雀: 攻撃力と牌

状況と点数 風牌鳴き 役牌: 1飜~ ドラ・赤 対々和: 2飜 チャンタ: 1飜 混老頭: 2飜 一気通貫: 1飜 三色同順: 1飜 三色同刻: 2飜 小三元: 1飜 三槓子: 2飜 混一色: 2飜 役満系 赤ドラ無しだとチャンタ・一通・三色・混一色・対々和あたりが現実的 (計2飜 or 3…

Just Do it な例

"Wanna be" が "Just Do it" の反対。 「彼氏欲しいなぁー」 ボヤかないで合コンしてる 「プロゲーマーで食ってきたい」 プレイ見直してランク回してる 「こんな小説家になりたい!」 手を動かして書いてる 「事業興して世界を変えてみせる」 小さく作って売…

モデル解説: LPCNet系

LPCNet系とは、線形予測にNN残差予測を組み合わせたLPCNetを起源とするモデルクラス。線形予測符号化とWaveRNNが祖先。モデル効率の良さからくる高速性とオープンソースのC実装がウリ。 要素解釈 Excitation/Residual - 単なる非線形補完 古典的ソース・フィ…

論文解説: Tian (2020) FeatherWave: An efficient high-fidelity neural vocoder with multi-band linear prediction

提案モデル: mel-spec input (pitch-less), multiband LPCNet1 デモ 中国語デモ wavecoder.github.io ConditioningNetwork 入力にmel-specをそのまま利用2, 3, 4(pitch無し5, 80 dim6)。 Mel2LPcoeff LP係数はmel-specから計算7。各バンドではmel-specのう…

論文解説: Valin (2022) Neural Speech Synthesis on a Shoestring: Improving the Efficiency of LPCNet

LPCNet、効率化しました (x2.5~)。 背景 - ボトルネックはわかっている、観念しろ LPCNetはモバイルCPUリアルタイム推論ができるほど速い。 巨大化すれば品質も良い。 しかし速度制約を満たす中での品質には改善の余地があり1、一層の効率化が求められている…

PyTorchでLSTMCellをONNXにエクスポートする: こいつ、ばらけるぞ

PyTorchでnn.LSTMCellをONNXにエクスポートすると、LSTM operatorになるでもなく、LSTMCell operatorになるでもなく、プリミティブ opsの集まりとして出力される。 gist.github.com まず、ONNXにはRecurrentCellに相当するoperatorがない(参考: wikipedia/O…

僕が考えたさいきょうのPyTorch Linting rules

命名規則: saveされる変数はexposedとして扱う モデル状態は state_dict() で保存され、後日loadされる。 state_dict()はパラメータ(例: nn.Module) とバッファを変数名に基づいて保存し、load時は変数名に基づいて状態がrestoreされる。 なのでモジュール…

機動戦の要諦: 塹壕は機動できない

塹壕やトーチカは現代戦においても重要な施設である。 そしてこれらは未だに歩けない (塹壕が歩く日は来るのだろうか)。 ゆえにそれらを回避できる機動戦もまた、現代戦においても重要な戦術足りうる。

パディング/padding in PyTorch

幅のある入力をスライドさせながら処理していくとき、左右端をどうするかという問題がでてくる。 端を何かしらの値で埋める(入力をちょっと大きくしておく)処理をパディングという。 特にPyTorchにおけるパディング実装のまとめ。 F.pad torch.nn.function…

ディレクション/ビジョンと透明性

「見えなければ目指せない」「知らなければ議論できない」 当たり前の、本質。 我々の会社はどう進んでいくべきか議論しようにも、方向性を知らなければ空論に終わる。 あまりに当たり前だが「方向性は社長の頭の中にあるよ」なんてのはザラ。 方向性を口に…

NeRFの問題設定: queryとvalue

query-Model-value-Consumer-outcome/teacher の教師あり学習。 NeRFでは query: 視線 model: MLP value: 座標RGBA consumer: 微分可能ボリュームレンダラ outcome: 2Dカラー画像 になってる。 学習時はoutcomeからbackpropしてmodel weightを更新。 Continu…

ヒトは論理に焦がれる動物である

「ヒトは論理に焦がれる動物である」 ヒトは論理的でありたいと望みつづける、論理的でない動物である。 望みを追う余裕があるときは論理的たろうと振る舞い、そのような振る舞いを賞賛する。 しかしその本質は動物であり、論理性に非ず。 怒りや悲しみ、憎…

ソフトウェア産業の特徴

ソフトウェア産業には特徴がある。それをハッキリさせると、この産業に有効な技能を導入しやすくなる。なので特徴を知ることは大切。 量産がゼロコスト 量産の定義: 全く等価な製品を複数生産すること ソフトウェアの量産コストはゼロである。言い換えれば製…

概念: force

日本語の「強制力」が一番近い. 「力」「権力」とは微妙に違って、こちらの意思を強制できるだけの能力、みたいなニュアンスがある.

librosa `amplitude_to_db` の最小dB

librosa.amplitude_to_db の最小dBは aminパラメータで規定される. デフォルト値は amin=1e-05 、これはdBとしていくつになるか. import librosa import numpy as np mel = np.array([[1.01*10**-5, 1.0*10**-5, 1.0*10**-6]]) dB = librosa.amplitude_to_db…

悪の栄え方: 秘密の逆分配

集団から支持を得る悪なやり方として、少数から秘密裏に奪って多数派に配る逆分配がある. 実態は搾取を原資としたバラ撒き政策. しかし奪われる側は少数なので口止めが効きやすい (「収容所に入れてしまえ」). この口止めにより搾取が見えなくなるので、多数…

librosaの`amplitude_to_db`は扱い注意

librosa.amplitude_to_db は linear-amplitude spec を log-power spec へ変換する関数1. linear-ampをlog-ampにするのではない, 注意. この用途で楽をしたい場合、librosa.power_to_db へ linear-ampを突っ込めばいい. # 300/3 = 100 = 10^2 = 2B = 20dB S …