単純にログを示す。世の中にはマナーのよいインストーラとマナーの悪いインストーラが存在するが、果たしてVisual Studio Codeの場合はどうだろうか。そもそもWindowsのインストールの方式がインストーラにやられたい放題なのが良くないのとレジストリとかいう意味不明方式がダメだというのは別として。Microsftなんだからマナー良くあってくれ。
Reference Chapter4. of Non-convex Optimization for Machine Learning https://arxiv.org/abs/1712.07897 "Alternating Minimization".
前ページ、一般的な交互最小化の収束性についての続きです。
補題1 Bistable Pointの必要十分条件
関数\(f:\mathbb{R}^p\times\mathbb{R}^q\to\mathbb{R}\)が連続微分可能で、それぞれの変数について周辺凸関数であるとき、点\((x,y)\)がbistableであることと\(\nabla f(x,y)=0\)であることは同値。
Reference Chapter4. of Non-convex Optimization for Machine Learning https://arxiv.org/abs/1712.07897 "Alternating Minimization".
多変数関数における変数の分割
関数\(f:\mathbb{R}^d\to\mathbb{R}\)を目的関数とする最小化問題について考える。\(d=p+q\)なる\(p,q\)を用いて関数\(f\)を\(f:\mathbb{R}^p\times\mathbb{R}^q\to\mathbb{R}\)と見なすことが出来る。これは変数の内\(p\)個のサブセットを取ってきて変数を分割しただけ。残った変数\(q\)個をまた別な変数とおく。これを\((x,y)\in\mathbb{R}^p\times\mathbb{R}^q\)として新たに\(f(x,y)\)とおく。よりたくさんの変数に分割する場合にも2分割を繰り返せばよいので一般性を失っていない。制約集合による条件\((x,y)\in\mathcal{X}\times\mathcal{Y}\)を考えてもよい。一般にはそれぞれの制約集合が独立にな条件で与えられているとは限らないので\((x,y)\in\mathcal{Z}\subset\mathbb{R}^p\times\mathbb{R}^q\)という形になることに注意せよ。
結論からいうとタイトルのままだがやや正確さを欠いているので正確に言い直しておく。Google Fontsをサイト通り普通に読み込んでいる限り高いPageSpeedとGoogleFontsによるウェブフォント採用は両立できません。あくまで意見であって事実でも真実でもないが正しいと思っている。ちなみにサイト通りの読み込み方法というのは<head></head>
内に
<link href="https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap" rel="stylesheet">
を記述してfont-family
に'Noto Sans JP', sans-serif;
を指定することを言います。Noto Sansの場合の例です。これがいわゆる「いわれるがままGoogle Fonts」というものです。
カスタムテーマのphpから、body配下にプラグインによって出力されたclass="mathjax"
がある時だけ<head></head>
にmathjaxのスクリプトコードを記述する機能を持たせることができた。実際にはmathjax
が無い場合に出力の<script>
タグをコメントアウトしているがどちらも同じこと。それについてメモする。