<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on 霧でも食ってろ</title><link>https://knuu.github.io/posts/index.xml</link><description>Recent content in Posts on 霧でも食ってろ</description><generator>Hugo</generator><language>ja-JP</language><lastBuildDate>Sun, 22 Dec 2024 00:00:00 +0900</lastBuildDate><atom:link href="https://knuu.github.io/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>今年読んだ応用検索論文の紹介</title><link>https://knuu.github.io/applied-ir-papers-2024.html</link><pubDate>Sun, 22 Dec 2024 00:00:00 +0900</pubDate><guid>https://knuu.github.io/applied-ir-papers-2024.html</guid><description>&lt;p&gt;この記事は&lt;a href="https://qiita.com/advent-calendar/2024/search"&gt;情報検索・検索技術 Advent Calendar 2024&lt;/a&gt; の 22 日目の記事として執筆されました．&lt;/p&gt;
&lt;h2 id="概要"&gt;概要&lt;/h2&gt;
&lt;p&gt;本記事では，今年読んだ応用検索論文についていくつか紹介をします．応用検索論文というのは本記事の著者が今適当に考えたワードで，主に以下の特徴を持つ傾向にあります．&lt;/p&gt;</description></item><item><title>Learning to Rank for Maps at Airbnb (KDD 2024) を読んだ</title><link>https://knuu.github.io/kdd24-airbnb-map.html</link><pubDate>Tue, 16 Jul 2024 00:00:00 +0900</pubDate><guid>https://knuu.github.io/kdd24-airbnb-map.html</guid><description>&lt;ul&gt;
&lt;li&gt;タイトル: Learning to Rank for Maps at Airbnb&lt;/li&gt;
&lt;li&gt;URL: &lt;a href="https://arxiv.org/abs/2407.00091"&gt;https://arxiv.org/abs/2407.00091&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;KDD 2024, Applied Data Science Track&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="概要"&gt;概要&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Airbnb には検索結果の表示方法が以下の図のように 2 つのある: (1) リスト表示，(2) 地図表示&lt;/li&gt;
&lt;/ul&gt;
&lt;div align="center"&gt;
&lt;figure&gt;
&lt;img src="https://knuu.github.io/images/kdd24-airbnb-map/fig1-3.png" width="75%"&gt;
&lt;figcaption&gt;Airbnb における検索ボックス，リスト表示，地図表示(図は論文より引用)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;リスト表示における単純な仮定「ユーザはランキングの上から順にアイテムを見る」が，地図表示では成立しないことから出発し，地図表示特有の様々な改善を実施したよ，という論文&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="背景-map--list"&gt;背景: Map ≠ List&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;検索結果の評価においては，リスト表示を前提とした nDCG が一般的に使われる&lt;/li&gt;
&lt;li&gt;リスト表示と地図表示が全然異なるという例
&lt;ul&gt;
&lt;li&gt;予測確率上位 N 個の宿をランダムな順序にする A/B テストは，リスト表示では予約数 8% 減，nDCG 5% 減と大きな悪化&lt;/li&gt;
&lt;li&gt;地図表示で同様の実験をすると，（当たり前だが）指標に変化はなかった&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="施策-1-表示数の調整section-3-4-5"&gt;施策 1: 表示数の調整（Section 3, 4, 5）&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;前提: (クエリ Q による検索で予約が発生する確率) = Σ_i (順位 i の宿が見られる確率) * (順位 i の宿の予約確率)
&lt;ul&gt;
&lt;li&gt;nDCG ではユーザが 1 位から順にアイテムを見ていくため，(順位 i の宿が見られる確率) は i が小さいほど高いという仮定があるが，この仮定は地図表示では成立しない
&lt;ul&gt;
&lt;li&gt;(順位 i の宿が見られる確率) のことを，これ以降では (順位 i の宿の&lt;strong&gt;注意&lt;/strong&gt;) と呼ぶ&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;リスト表示においては，i &amp;lt; j のとき，(順位 i の注意) &amp;gt; (順位 j の注意) が成立&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;仮説: 地図表示においては，(順位 i の注意) = (順位 j の注意) = 1/N となるのでは？（N は表示する宿の数）
&lt;ul&gt;
&lt;li&gt;このとき，(クエリ Q による検索で予約が発生する確率) = 1/N Σ_i (順位 i の宿の予約確率) = (表示する宿の平均予約確率)&lt;/li&gt;
&lt;li&gt;つまり，&lt;strong&gt;地図で表示するアイテムを予約確率が高いものに絞ることで，予約数向上が見込める！&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;提案手法: Bookability Filter
&lt;ul&gt;
&lt;li&gt;N 個の候補のうち，logit(宿の予約確率の最大値) - logit(宿 i の予約確率) &amp;gt; α の宿のみ選択し，地図に表示（Algo.1）
&lt;ul&gt;
&lt;li&gt;α はハイパーパラメータ，実験により 1.0 に設定&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div align="center"&gt;
&lt;figure&gt;
&lt;img src="https://knuu.github.io/images/kdd24-airbnb-map/algo1.png" width="75%"&gt;
&lt;figcaption&gt;Bookability Filter&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;実験: 地図を単体で表示するモバイルのみに絞って A/B テストを実施
&lt;ul&gt;
&lt;li&gt;control が 18 個固定，treatment が提案手法&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;結果: 提案手法が p値 0.00001 未満，予約数 1.9% 増で過去数年で最大の改善策の 1 つに
&lt;ul&gt;
&lt;li&gt;さらなる改善: 宿の予約確率の最大値だと外れ値の影響を受けるので，top-n（n はヒット件数に依存する定数）の中央値を採用 → 各種指標を悪化させずに表示件数を増やすことに成功&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;これは本当にユーザの検索体験を向上させたのか？
&lt;ul&gt;
&lt;li&gt;疑問: 表示される宿の数が減ったことで，ユーザは予約可能な残りの宿が少ないと考えて急ぎで予約し，その結果，予約数が増えたのでは？（緊急性仮説）&lt;/li&gt;
&lt;li&gt;実験結果: 18 個固定 vs 14 個固定で A/B テストを実施した結果，緊急性の仮説は否定された&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="施策-2-異なる注意と-2-種類のピンsection-6"&gt;施策 2: 異なる注意と 2 種類のピン（Section 6）&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;前提: モバイルとは違って，Web はリストと地図が同時に表示される（Fig.8）&lt;/li&gt;
&lt;/ul&gt;
&lt;div align="center"&gt;
&lt;figure&gt;
&lt;img src="https://knuu.github.io/images/kdd24-airbnb-map/fig8.png" width="75%"&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;加えて，地図においては値段が表示される通常のピンと，値段が表示されない小さいピン（ミニピン）が存在（Fig.9）&lt;/li&gt;
&lt;/ul&gt;
&lt;div align="center"&gt;
&lt;figure&gt;
&lt;img src="https://knuu.github.io/images/kdd24-airbnb-map/fig9.png" width="75%"&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;仮説: 通常ピンとミニピンでは CTR に 8 倍の差があるので，注意にも差があるはず
&lt;ul&gt;
&lt;li&gt;なので，&lt;strong&gt;どの宿を通常ピン or ミニピンで表示するかを変えることで，検索からの予約数も変わるのでは？&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;提案手法: Bookability Filter で選ばれた宿を通常ピン，残りをミニピンで表示&lt;/li&gt;
&lt;li&gt;結果: A/B テストで予約数 0.7% 増&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="施策-3-地図上の注意と表示の最適化section-7"&gt;施策 3: 地図上の注意と表示の最適化（Section 7）&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;前提: 地図表示においては，表示の中心の宿ほど CTR が高い（Fig.10）&lt;/li&gt;
&lt;/ul&gt;
&lt;div align="center"&gt;
&lt;figure&gt;
&lt;img src="https://knuu.github.io/images/kdd24-airbnb-map/fig10.png" width="100%"&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;仮説: 地図表示においては，中心に位置する宿ほど注意が高いはず
&lt;ul&gt;
&lt;li&gt;つまり，&lt;strong&gt;中心の位置を変えて，中心に表示する宿を変えれば，検索からの予約数も変わるのでは？&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;提案手法: 中心からの相対位置を考慮した注意（式 6）を元に，中心を位置を最適化する手法を提案
&lt;ul&gt;
&lt;li&gt;手法: 地図をセルに等分割し，各セルを中心にしたときの (あるクエリ Q が予約される確率) が最大になる位置を中心とする（Algo.2）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;A/B テスト結果: 検索からの地図表示において，提案手法が p値 0.006，予約数 0.39% 増加
&lt;ul&gt;
&lt;li&gt;分析: ユーザが能動的に地図を移動させる割合も 1.5% 減っており，良い中心が設定できていることが分かった&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="まとめ"&gt;まとめ&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;これまでは，地図は特別扱いされることなく，あまり研究されてこなかった&lt;/li&gt;
&lt;li&gt;本研究では，通常の研究が注力する宿の予約確率の予測ではなく，宿の注意に着目しモデル化することで，予約数などの各種指標を向上することができた．&lt;/li&gt;
&lt;li&gt;今後の課題: さらなる注意のモデル化，バイアスの問題，ピンの種類，表示の最適化，public dataset の作成&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="所感"&gt;所感&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;論文というよりテックブログ的な印象だが，内容は面白いし，地図表示には研究の余地があるよねという点を示したのはコミュニティ的には大事という話と理解した&lt;/li&gt;
&lt;li&gt;Point-of-interest の推薦とかと関連ありそうだけど，関連研究として提示されてなさそうだった．なんでだろか．&lt;/li&gt;
&lt;li&gt;Airbnb 検索は KDD18, 19, 20, 23, 24 とずっと KDD で発表しつづけていてすごい&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>AtCoder で scipy を使って問題を解く</title><link>https://knuu.github.io/atcoder-scipy.html</link><pubDate>Sun, 28 Feb 2021 00:00:00 +0900</pubDate><guid>https://knuu.github.io/atcoder-scipy.html</guid><description>&lt;p&gt;AtCoder で scipy を使って解いた問題をメモ代わりに残しておきます．一部 yukicoder や Library-Checker も含まれています（タイトル詐欺）．&lt;/p&gt;
&lt;p&gt;AtCoder に入っている numpy / scipy のバージョンはコードテストに以下を入力して実行することで確認できます．&lt;/p&gt;</description></item><item><title>情報検索：検索エンジンの実装と評価 第 8 章 確率的情報検索</title><link>https://knuu.github.io/buttcher-book-8.html</link><pubDate>Sat, 26 Dec 2020 00:00:00 +0900</pubDate><guid>https://knuu.github.io/buttcher-book-8.html</guid><description>&lt;p&gt;この記事は &lt;a href="https://adventar.org/calendars/4968"&gt;「情報検索：検索エンジンの実装と評価」（Buttcher本） Advent Calendar 2020&lt;/a&gt; の 25 日目の記事です．&lt;/p&gt;
&lt;p&gt;この記事では第 8 章を最初から解説する&amp;hellip;予定だったのですが，8.1 から 8.5 までの話，つまり確率的ランキング原理から BM25 の導出までについては，既に素晴らしい日本語解説が存在するため，この部分に関してはそちらを御覧ください&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;sup id="fnref:2"&gt;&lt;a href="#fn:2" class="footnote-ref" role="doc-noteref"&gt;2&lt;/a&gt;&lt;/sup&gt;．また，導出などはどうでもいい，とにかく BM25 の式の意味を知りたい，という人は解説動画&lt;sup id="fnref:3"&gt;&lt;a href="#fn:3" class="footnote-ref" role="doc-noteref"&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;sup id="fnref:4"&gt;&lt;a href="#fn:4" class="footnote-ref" role="doc-noteref"&gt;4&lt;/a&gt;&lt;/sup&gt;を見るとよいと思います．TF-IDF から BM25 までを非常に平易に説明してくれています．&lt;/p&gt;</description></item><item><title>LightGBM でかんたん Learning to Rank</title><link>https://knuu.github.io/ltr_by_lightgbm.html</link><pubDate>Sun, 05 Apr 2020 00:00:00 +0900</pubDate><guid>https://knuu.github.io/ltr_by_lightgbm.html</guid><description>&lt;h2 id="概要"&gt;概要&lt;/h2&gt;
&lt;p&gt;LightGBM には LambdaRank が実装されており，簡単にランキング学習ができるようになっている．
しかし残念なことに，日本語で試してみた例は非常に少ない．
特に，実際にデータ用意して学習し，評価するところまでやって公開している例がほぼ見当たらない．&lt;/p&gt;</description></item><item><title>Manhattan Minimum Spanning Tree</title><link>https://knuu.github.io/manhattan_mst.html</link><pubDate>Tue, 25 Feb 2020 00:00:00 +0900</pubDate><guid>https://knuu.github.io/manhattan_mst.html</guid><description>&lt;h2 id="問題"&gt;問題&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://judge.yosupo.jp/problem/manhattanmst"&gt;Manhattan MST (Libarry Checker)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="解法"&gt;解法&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;NOTE: ここで述べる解法は基本的に以下の topcoder の記事を参考に分割統治部分を座標圧縮+セグメント木で置き換えたものである．
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.topcoder.com/community/competitive-programming/tutorials/line-sweep-algorithms/"&gt;Line Sweep Algorithms&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ナイーブに考えると，全点対でマンハッタン距離を計算して Kruskal 法などの最小全域木を求めるアルゴリズムを適用すればよいと思えるが，この解法では入力の頂点数 $N$ に対して，枝数が $O(N^2)$ になってしまう．&lt;/p&gt;</description></item><item><title>第4回 統計・機械学習若手シンポジウム「Academic Writing for Top Conferences」聴講録</title><link>https://knuu.github.io/statsml2019-topconf.html</link><pubDate>Sun, 01 Dec 2019 00:00:00 +0900</pubDate><guid>https://knuu.github.io/statsml2019-topconf.html</guid><description>&lt;h2 id="概要"&gt;概要&lt;/h2&gt;
&lt;p&gt;2019/11/15(金)・16(土) に名古屋(名工大)で開催された、第 4 回統計・機械学習若手シンポジウムに参加してきました。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;URL: &lt;a href="https://sites.google.com/view/statsml-symposium19/"&gt;https://sites.google.com/view/statsml-symposium19/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;その中でも「Academic Writing for Top Conferences」というセッションは個人的に有用そうだと思ったので共有します。
後半の「第2部：パネルディスカッション・質疑応答」については、Q&amp;amp;A 集が公開されています (&lt;a href="https://drive.google.com/open?id=1xeVisrWKZpGHmVFTe6BHO87eGdBvIGsm"&gt;URL&lt;/a&gt;)。&lt;/p&gt;</description></item><item><title>機械学習・データマイニング・人工知能分野周りの日本所属の国際会議論文を集めてみる</title><link>https://knuu.github.io/collecting_jp_ml-dm-ai_papers.html</link><pubDate>Mon, 12 Aug 2019 00:00:00 +0900</pubDate><guid>https://knuu.github.io/collecting_jp_ml-dm-ai_papers.html</guid><description>&lt;h2 id="概要"&gt;概要&lt;/h2&gt;
&lt;p&gt;学生が研究室を選んだり、企業が共同研究先を選ぶ際に、その研究室がきちんと論文を通している研究室かどうかというのは一つに基準になるかと思います。計算機科学分野、特に機械学習・データマイニング・人工知能分野周りの分野では、企業の研究所が強く速報性が求められる影響などにより国際会議論文の影響力が強い傾向があります。そこで本記事では、これらの分野の国際会議に日本所属で論文を通している人を収集することを考えます。&lt;/p&gt;</description></item><item><title>連続する部分列の和の総和</title><link>https://knuu.github.io/sum-of-all-continuous-subarrays.html</link><pubDate>Wed, 20 Jun 2018 00:00:00 +0900</pubDate><guid>https://knuu.github.io/sum-of-all-continuous-subarrays.html</guid><description>&lt;h2 id="問題"&gt;問題&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;長さ $N$ の数列 $A = [a_1, a_2, ..., a_N]$ が与えられる&lt;/li&gt;
&lt;li&gt;この数列の任意の連続する部分列の和の総和を $10^9+7$ で割った余りを求めよ&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="例"&gt;例&lt;/h2&gt;
&lt;p&gt;$A = [1, 2, 3]$ のとき、和は $1+2+3+(1+2)+(2+3)+(1+2+3)=20$&lt;/p&gt;
&lt;h2 id="制約"&gt;制約&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;$1 \le N \le 10^6$&lt;/li&gt;
&lt;li&gt;$-10^9 \le a_i \le 10^9 (i = 1, ..., N)$&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="解法"&gt;解法&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;$A$ の累積和を取った数列を $S$ とする
&lt;ul&gt;
&lt;li&gt;つまり、$S_i := \sum_{j=1}^{i}a_j$&lt;/li&gt;
&lt;li&gt;ただし、$S_0 = 0$ とする&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;このとき、求める総和は、$\sum_{(i,j):0 \le i &lt; j \le N}(S_j - S_i)$ と書ける
&lt;ul&gt;
&lt;li&gt;$(i,j):0 \le i &lt; j \le N$ は $0 \le i &lt; j \le N$ を満たす組 $(i,j)$ を意味する&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;これは和と差しか出てこないため、正の項 $S_j$ と負の項 $-S_i$ がそれぞれ何回この式の中で現れるかを考えればよい
&lt;ul&gt;
&lt;li&gt;正の項 $S_j(j=0,1,...,N)$ が何回現れるかを考えると、$S_0$ は0回、$S_1$ は 1 回 ($i=0$ のとき)、$S_2$ は 2 回 ($i=0,1$ のとき)、と考えていくと、正の項 $S_j$ は $j$ 回現れる&lt;/li&gt;
&lt;li&gt;負の項 $S_i(i=0,...,N-1)$ が何回現れるかを考えると、$S_0$ は $N$ 回 ($j=1,2,...,N$ のとき)、$S_1$ は $N-1$ 回 ($j=2,i...,N$ のとき) と考えていくと、$S_i$ は $(N-i)$ 回現れる&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;よって、$\sum_{(i,j):0 \le i &lt; j \le N}(S_j - S_i)=\sum_{i=0}^{N}(i \times S_i - (N-i)\times S_i)=\sum_{i=0}^{N}(2i-N)S_i$ となる&lt;/li&gt;
&lt;li&gt;以上より、$O(N)$ で問題を解くことができた&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="コード"&gt;コード&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;def&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;sum_subarrays&lt;/span&gt;(A, mod&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;10&lt;/span&gt;&lt;span style="color:#f92672"&gt;**&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;&lt;span style="color:#f92672"&gt;+&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;):
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; N &lt;span style="color:#f92672"&gt;=&lt;/span&gt; len(A)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; S &lt;span style="color:#f92672"&gt;=&lt;/span&gt; [&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; a &lt;span style="color:#f92672"&gt;in&lt;/span&gt; A:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; S&lt;span style="color:#f92672"&gt;.&lt;/span&gt;append(S[&lt;span style="color:#f92672"&gt;-&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;] &lt;span style="color:#f92672"&gt;+&lt;/span&gt; a)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; S[&lt;span style="color:#f92672"&gt;-&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;] &lt;span style="color:#f92672"&gt;%=&lt;/span&gt; mod
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; sum((&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; &lt;span style="color:#f92672"&gt;*&lt;/span&gt; i &lt;span style="color:#f92672"&gt;-&lt;/span&gt; N) &lt;span style="color:#f92672"&gt;*&lt;/span&gt; s &lt;span style="color:#f92672"&gt;%&lt;/span&gt; mod &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; i, s &lt;span style="color:#f92672"&gt;in&lt;/span&gt; enumerate(S)) &lt;span style="color:#f92672"&gt;%&lt;/span&gt; mod
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;負の剰余が出てくるが、Python (2/3系ともに) では負の数 $x(x&gt;0)$ の正の数 $m(m&gt;0)$ についての剰余 $x\%m$は$(x+m)\%m$ と一致するため、問題ない
&lt;ul&gt;
&lt;li&gt;C++ ではこのコードは問題が出る&lt;/li&gt;
&lt;li&gt;負の数の剰余の計算で負の数が出る場合の計算は、&lt;a href="https://shunirr.hatenablog.jp/entry/20120409/1333993409"&gt;言語仕様によって異なる&lt;/a&gt;ため、注意したほうがよい&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="類題"&gt;類題&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;連続でなくてよい場合は、総和において各数は $2^{N-1}$ 回出現する
&lt;ul&gt;
&lt;li&gt;よって答えは $2^{N-1}\times\sum_{i=1}^{N}a_i$&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;和ではなく積の場合も同様に求められる
&lt;ul&gt;
&lt;li&gt;$P_0 := 1, P_i := \prod_{j=1}^{i}a_j (i=1,\ldots,N)$ とすると、$\prod_{(i,j):0 \le i &lt; j \le N} \frac{P_j}{P_i}=\prod_{i=0}^{N} \frac{P_i^i}{P_i^{N-i}}=\prod_{i=0}^{N}P_i^{2i-N}$&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;和ではなく bitwise xor の場合も同様で、ビットごとに偶数回か奇数回かを考えればよい&lt;/li&gt;
&lt;li&gt;連続する部分列の長さが $K$ &lt;strong&gt;以下&lt;/strong&gt;という制約がある場合
&lt;ul&gt;
&lt;li&gt;これは正の項 $S_i$、負の項 $-S_i$ が出現する回数が $K$ 回以下という条件だと考えればよいので、答えは $\sum_{i=0}^{N}(\min(i, K) \times S_i - \min(N-i, K)\times S_i)$&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;連続する部分列の長さが $K$ &lt;strong&gt;以上&lt;/strong&gt;という制約がある場合
&lt;ul&gt;
&lt;li&gt;$\sum_{i=0}^{N}(\max(i-K+1, 0) \times S_i - \max(N-i-K+1, 0)\times S_i)$&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="参考"&gt;参考&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://atcoder.jp/contests/arc071/tasks/arc071_b"&gt;AtCoder Regular Contest 071 - D 井井井 / ###&lt;/a&gt;&lt;/p&gt;</description></item><item><title>pelican(python3)で日本語のカテゴリやタグごとのページのurlを変更する方法</title><link>https://knuu.github.io/pelican-utf8-substitution.html</link><pubDate>Wed, 11 Oct 2017 00:00:00 +0900</pubDate><guid>https://knuu.github.io/pelican-utf8-substitution.html</guid><description>&lt;ul&gt;
&lt;li&gt;動作環境
&lt;ul&gt;
&lt;li&gt;Python 3.6.1&lt;/li&gt;
&lt;li&gt;pelican 3.7.1&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="状況"&gt;状況&lt;/h3&gt;
&lt;p&gt;pelicanでタグ毎にページを表示するurlは&lt;code&gt;tag/(タグ名).html&lt;/code&gt;であるが、日本語のタグを付けたときにはurlの(タグ名)の部分がよく分からない文字列に自動変換される。
正確にはアルファベットと数字以外の文字列を使った場合であり、これはカテゴリでも同様である。&lt;/p&gt;</description></item><item><title>(論文メモ) Improving Hypernymy Detection with an Integrated Path-based and Distributional Method (ACL2016)</title><link>https://knuu.github.io/conf-acl-ShwartzGD16.html</link><pubDate>Tue, 10 Oct 2017 00:00:00 +0900</pubDate><guid>https://knuu.github.io/conf-acl-ShwartzGD16.html</guid><description>&lt;h3 id="書誌情報"&gt;書誌情報&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;title
&lt;ul&gt;
&lt;li&gt;Improving Hypernymy Detection with an Integrated Path-based and Distributional Method&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;author
&lt;ul&gt;
&lt;li&gt;VeredShwartz, Yoav Goldberg, Ido Dagan
&lt;ul&gt;
&lt;li&gt;Bar-Ilan University, Israel&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;venue
&lt;ul&gt;
&lt;li&gt;ACL 2016&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;url
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://aclanthology.coli.uni-saarland.de/papers/P16-1226/p16-1226"&gt;論文(ACL Anthology)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://u.cs.biu.ac.il/~havivv/"&gt;著者スライドなど&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/vered1986/HypeNET"&gt;実装&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;その他
&lt;ul&gt;
&lt;li&gt;ACL 2016 Outstanding Paper Award&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="解くべき問題は何か"&gt;解くべき問題は何か？&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;単語の組(x,y)に対して、yがxの上位語であるかどうかを推定
&lt;ul&gt;
&lt;li&gt;例: x = トム・クルーズ, y = 俳優 -&amp;gt; yはxの上位語である&lt;/li&gt;
&lt;li&gt;質問応答などで有用な応用がある&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="既存法との違いは何か"&gt;既存法との違いは何か？&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;構文解析木ベースの手法を、構文木をRNN-LSTMでencodeする手法を提案し、state of the artに近い評価値を達成&lt;/li&gt;
&lt;li&gt;1の手法と分散表現ベースの手法を組み合わせる手法を提案して、state of the art を達成&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;この手法は以下の図で大体説明できる。&lt;/p&gt;</description></item><item><title>仮説検定早見表</title><link>https://knuu.github.io/hypothesis-testings.html</link><pubDate>Sun, 18 Jun 2017 00:00:00 +0900</pubDate><guid>https://knuu.github.io/hypothesis-testings.html</guid><description>&lt;h2 id="正規母集団に対する仮説検定"&gt;正規母集団に対する仮説検定&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;『統計学入門』第12章より&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="早見表"&gt;早見表&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th style="text-align: center"&gt;何の検定&lt;/th&gt;
 &lt;th style="text-align: center"&gt;検定統計量&lt;/th&gt;
 &lt;th style="text-align: center"&gt;自由度&lt;/th&gt;
 &lt;th style="text-align: center"&gt;分布&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;母平均(母分散既知)&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{\overline{X}-\mu}{\sqrt{\sigma^2/n}}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;&lt;/td&gt;
 &lt;td style="text-align: center"&gt;標準正規分布 $N(0,1)$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;母平均(母分散未知)&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{\overline{X}-\mu}{\sqrt{s^2/n}}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$n-1$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;t分布&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;母分散&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{(n-1)s^2}{\sigma_{0}^2}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$n-1$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\chi^2$ 分布&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;2分布の平均(分散が等しい)&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{\overline{X}-\overline{Y}}{\frac{(m-1)s_1^2+(n-1)s_2^2}{m+n-2}\sqrt{\frac{1}{m}+\frac{1}{n}}}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$m+n-2$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;t分布&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;2分布の平均(分散が等しくない)&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{\overline{X}-\overline{Y}}{\sqrt{s_1^2/m+s_2^2/n}}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{(s_1^2/m+s_2^2/n)^2}{\frac{(s_1^2/m)^2}{m-1}+\frac{(s_2^2/n)^2}{n-1}}$に最も近い整数&lt;/td&gt;
 &lt;td style="text-align: center"&gt;t分布&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;2分布の分散&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{s_1^2}{s_2^2}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$(m-1, n-1)$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;F分布&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;表の度数分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\sum_{i=1}^k\frac{(f_i-np_i)^2}{np_i}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$k-1$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\chi^2$ 分布&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;分割表の属性の独立&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\sum_{i=1}^r\sum_{j=1}^c\frac{(nf_{ij}-f_{i\cdot}f_{\cdot j})^2}{nf_{i\cdot}f_{\cdot j}}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$(r-1)(c-1)$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\chi^2$ 分布&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="母平均に関する検定"&gt;母平均に関する検定&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;母分散が既知のとき
&lt;ul&gt;
&lt;li&gt;検定統計量 &lt;strong&gt;$Z$ は $\overline{X}$ の標準化変数&lt;/strong&gt; である&lt;/li&gt;
&lt;li&gt;つまり &lt;strong&gt;$Z=\frac{\overline{X}-\mu}{\sqrt{\sigma^2/n}}$&lt;/strong&gt; である&lt;/li&gt;
&lt;li&gt;帰無仮説が正しければ、これは &lt;strong&gt;標準正規分布N(0, 1)&lt;/strong&gt; に従う&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;母分散が未知のとき
&lt;ul&gt;
&lt;li&gt;検定統計量 &lt;strong&gt;$Z$ は $\overline{X}$ の標準化変数の母分散 $\sigma^2$ を不偏分散 $s^2$ に置き換えたもの&lt;/strong&gt; である&lt;/li&gt;
&lt;li&gt;つまり &lt;strong&gt;$Z=\frac{\overline{X}-\mu}{\sqrt{s^2/n}}$&lt;/strong&gt; である&lt;/li&gt;
&lt;li&gt;帰無仮説が正しければ、これは &lt;strong&gt;自由度 $n-1$ のt分布 $t(n-1)$&lt;/strong&gt; に従う&lt;/li&gt;
&lt;li&gt;これをスチューデントのt検定と呼ぶ&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="母分散に関する検定"&gt;母分散に関する検定&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;検定統計量は &lt;strong&gt;$\chi^2=\frac{(n-1)s^2}{\sigma_{0}^2}$&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;これは帰無仮説のもとで &lt;strong&gt;自由度 $n-1$ の $\chi^2$ 分布&lt;/strong&gt; に従う&lt;/li&gt;
&lt;li&gt;これを $\chi^2$ 検定という&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="母平均の差の検定"&gt;母平均の差の検定&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;2つの分布の結果に差があるかどうかを検定する&lt;/p&gt;</description></item><item><title>確率分布早見表</title><link>https://knuu.github.io/probability-distributions.html</link><pubDate>Sun, 18 Jun 2017 00:00:00 +0900</pubDate><guid>https://knuu.github.io/probability-distributions.html</guid><description>&lt;h2 id="離散分布"&gt;離散分布&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th style="text-align: center"&gt;確率分布&lt;/th&gt;
 &lt;th style="text-align: center"&gt;確率密度関数&lt;/th&gt;
 &lt;th style="text-align: center"&gt;定義域&lt;/th&gt;
 &lt;th style="text-align: center"&gt;パラメータ&lt;/th&gt;
 &lt;th style="text-align: center"&gt;平均&lt;/th&gt;
 &lt;th style="text-align: center"&gt;分散&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;ベルヌーイ分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$p^x (1-p)^{1-x}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$x\in \{0,1\}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$p$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$p$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$p(1-p)$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;二項分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;${}_nC_xp^x(1-p)^{n-x}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$x\in \{0,\cdots,n\}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$n,p$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$np$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$np(1-p)$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;ポアソン分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{\lambda^xe^{-\lambda}}{x!}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$x\in \{0,1,\cdots\}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\lambda$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\lambda$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\lambda$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;幾何分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$p(1-p)^{x-1}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$x\in \{1,2,\cdots\}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$p$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{1}{p}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{1-p}{p^2}$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;(離散)一様分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{1}{N}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$x\in \{1,\cdots,N\}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$N$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{N+1}{2}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{N^2-1}{12}$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="連続分布"&gt;連続分布&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th style="text-align: center"&gt;確率分布&lt;/th&gt;
 &lt;th style="text-align: center"&gt;確率密度関数&lt;/th&gt;
 &lt;th style="text-align: center"&gt;定義域&lt;/th&gt;
 &lt;th style="text-align: center"&gt;パラメータ&lt;/th&gt;
 &lt;th style="text-align: center"&gt;平均&lt;/th&gt;
 &lt;th style="text-align: center"&gt;分散&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;正規分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{1}{\sqrt{2\pi\sigma^2}}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$(-\infty,\infty)$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\mu,\sigma$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\mu$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\sigma^2$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;指数分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\lambda e^{-\lambda x}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$[0,\infty)$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\lambda$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{1}{\lambda}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{1}{\lambda^2}$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td style="text-align: center"&gt;(連続)一様分布&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{1}{b-a}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$[a,b]$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$a,b$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{a+b}{2}$&lt;/td&gt;
 &lt;td style="text-align: center"&gt;$\frac{(a-b)^2}{12}$&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;</description></item><item><title>Github Pages はじめました</title><link>https://knuu.github.io/first-post.html</link><pubDate>Wed, 07 Jun 2017 00:00:00 +0900</pubDate><guid>https://knuu.github.io/first-post.html</guid><description>&lt;h2 id="github-pages-はじめました"&gt;Github Pages はじめました&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://github.com/getpelican/pelican"&gt;pelican&lt;/a&gt;でサイトを作ったので、競プロライブラリの公開とか、なにかメモ的なものとして使いたい&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;highlightのテスト&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;import&lt;/span&gt; math
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;print(math&lt;span style="color:#f92672"&gt;.&lt;/span&gt;sqrt(&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;))
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;print(&lt;span style="color:#e6db74"&gt;&amp;#34;Hello World!&amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;mathjaxのテスト&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;$\alpha$が$\beta$を$\kappa$らったら$\epsilon$した。なぜだろう。
(参考: &lt;a href="http://ja.uncyclopedia.info/wiki/%E3%82%A2%E3%83%AB%E3%83%95%E3%82%A1%E3%81%8C%E3%83%99%E3%83%BC%E3%82%BF%E3%82%92%E3%82%AB%E3%83%83%E3%83%91%E3%82%89%E3%81%A3%E3%81%9F%E3%82%89%E3%82%A4%E3%83%97%E3%82%B7%E3%83%AD%E3%83%B3%E3%81%97%E3%81%9F%E3%80%82%E3%81%AA%E3%81%9C%E3%81%A0%E3%82%8D%E3%81%86%E3%80%82"&gt;アルファがベータをカッパらったらイプシロンした。なぜだろう。&lt;/a&gt;)&lt;/p&gt;</description></item></channel></rss>