Compare commits

..

No commits in common. "e5e9a644c7ef56c9f0ff1b32841bf0a9956fc7c0" and "f9dcb2c54b112665e681d095928d309c82c65ced" have entirely different histories.

26 changed files with 63 additions and 175 deletions

View File

@ -14,7 +14,7 @@ jobs:
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Build Link Index - name: Build Link Index
uses: jackyzha0/hugo-obsidian@v2.20 uses: jackyzha0/hugo-obsidian@v2.18
with: with:
index: true index: true
input: content input: content

View File

@ -33,7 +33,7 @@ function initPopover(baseURL, useContextualBacklinks) {
} }
const popoverElement = `<div class="popover"> const popoverElement = `<div class="popover">
<h3>${linkDest.title}</h3> <h3>${linkDest.title}</h3>
<p>${cleanedContent.split("\n", 5).join(" | ")}...</p> <p>${cleanedContent.split(" ", 20).join(" ")}...</p>
<p class="meta">${new Date(linkDest.lastmodified).toLocaleDateString()}</p> <p class="meta">${new Date(linkDest.lastmodified).toLocaleDateString()}</p>
</div>` </div>`
el = htmlToElement(popoverElement) el = htmlToElement(popoverElement)

View File

@ -117,7 +117,7 @@ const resultToHTML = ({ url, title, content }) => {
const redir = (id, term) => { const redir = (id, term) => {
const shouldTrim = PRODUCTION && SEARCH_ENABLED const shouldTrim = PRODUCTION && SEARCH_ENABLED
const baseURLPrefix = shouldTrim ? "" : BASE_URL.replace(/\/$/g, "") const baseURLPrefix = shouldTrim ? "" : BASE_URL.replace(/\/$/g, "")
const urlString = `${baseURLPrefix}${id}#:~:text=${encodeURIComponent(term)}` const urlString = `${baseURLPrefix}${id}#:~:text=${encodeURIComponent(term)}/`
window.Million.navigate( window.Million.navigate(
new URL(urlString), new URL(urlString),
".singlePage", ".singlePage",

View File

@ -114,10 +114,6 @@ blockquote[class*="-callout"] > p:first-child {
} }
} }
blockquote[class*="-callout"] > p:empty {
padding: 1.2em 35px;
}
$summary: summary, abstract, tldr; $summary: summary, abstract, tldr;
$bug: bug; $bug: bug;
$danger: danger, error; $danger: danger, error;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 165 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,83 +0,0 @@
---
title: 猿島へ行った
tags: [blog, photo, travel]
---
## 概要
- 猿島へ日帰り観光に行った
- 人が多かった
- 廃墟目当てだったが,そこまで廃墟はなかった
## 行程
- 京急線の横須賀中央駅から三笠ターミナルへ徒歩で15分
- フェリーで猿島へ10分
- 島内を観光
- 島内で昼食
- フェリー,電車で帰宅
## フェリー(行き)
- 土曜日午前11時台の便に乗った
- 並んでる人が多かった
- 次の便に乗れるのか不安になるぐらい
- 並んでた人全員がギリギリ乗れた
- 乗船時間は10分程度なので酔うこともなく無事到着
![](blog/2023/0618-sarushima-island/DSC_0069.webp)
![](blog/2023/0618-sarushima-island/DSC_0070.webp)
## 観光
- 写真を撮りながら適当に周った
- フェリーの到着直後は入り口付近に人が多い
- 写真を撮りたいなら時間をずらしたほうがいい
![](blog/2023/0618-sarushima-island/DSC01320.webp)
![](blog/2023/0618-sarushima-island/DSC01327.webp)
### 廃墟
- もっと廃墟があるのかと思っていたけれど廃墟4自然6ぐらいだった
- 廃墟単体のクオリティは高かった
- 苔が良い
- 壁面の苔を削って文字を書く💩がいるらしく,名前がところどころに彫られていた
![](blog/2023/0618-sarushima-island/DSC01392.webp)
![](blog/2023/0618-sarushima-island/DSC01393.webp)
![](blog/2023/0618-sarushima-island/DSC01324.webp)
![](blog/2023/0618-sarushima-island/DSC01323.webp)
![](blog/2023/0618-sarushima-island/DSC01371.webp)
![](blog/2023/0618-sarushima-island/DSC01395.webp)
![](blog/2023/0618-sarushima-island/DSC01396.webp)
### クイズ
- QuizKnockとのコラボで島内を探索することで解けるクイズ企画をやっていた
- クイズが書かれている紙は三笠ターミナルで500円で売っていた
- 自分は買わなかったが,友達が買ったので一緒に解いた
- 5問中3問は僕が解いたので感謝してほしい
- ちなみにクイズを解いても,達成感以外に特に得られるものはない
- 猿島に行かないと解けないが,クイズの内容自体は猿島とはそこまで関係なかった
## 昼食
- カレーは重いなと思ったので,一人分を友人と分けた
- 追加でプライドポテト(フライドポテト)と唐揚げを買った
- 正直,味は普通
- 離島なので物価は高め
![](blog/2023/0618-sarushima-island/IMG_20230618_152924_584.webp)
## フェリー(帰り)
- ダイヤ関係なく着いたら客を乗せて出港のサイクルを30分間隔ぐらいで繰り返していた
- 後方で並んでる人が次の便で乗れないぐらいには人が多かった
## まとめ
- クオリティの高い廃墟が見れた
- もっと廃墟が密集してると思ってた
- 人が多かった
- BBQ目当ての大学生大所帯とか

View File

@ -0,0 +1,16 @@
---
title: C/C++のライブラリまとめ
tags: [note, info-tech, c-language, cpp, development]
---
## 概要
- C/C++のいい感じのライブラリのまとめ
- 基本的にlightweightかつmulti-platformなものしか載せない
- リンクがない項目は今後執筆予定
## Script
- [LuaJIT](note/info-tech/luajit) (C)
- [ExprTk](note/info-tech/exprtk) (C++)
## OS Wrapper
- [tinycthread](note/info-tech/tinycthread) (C11)

View File

@ -0,0 +1,32 @@
---
title: tinycthread
tags: [note, info-tech, 'c-language', development]
---
[tinycthread](https://tinycthread.github.io) / [API doc](https://tinycthread.github.io/doc/tinycthread_8h.html)
## 概要
- スレッド関係の機能を提供するlightweightなライブラリ
- `mtx`: mutex
- `cnd`: condition variable
- `thrd`: thread
- `tss`: thread-specific storage
- C11
- zlib license
- マルチプラットフォーム
- CMake利用可能
## 導入方法
### CMake: FetchContent
```cmake
# ---- tinycthread ----
# repository: https://github.com/tinycthread/tinycthread
# license : zlib
FetchContent_Declare(
tinycthread
GIT_REPOSITORY "https://github.com/tinycthread/tinycthread.git"
GIT_TAG "6957fc8383d6c7db25b60b8c849b29caab1caaee"
)
FetchContent_MakeAvailable(tinycthread)
```

View File

@ -25,7 +25,7 @@ tags: [note, study, statistics]
- 第一種の誤りが許されない場面医療などでは1% - 第一種の誤りが許されない場面医療などでは1%
## 例 ## 例
- コイントスを10回やって7回表が出たコイントスは公平か - コイントスを10回て7回表が出たコイントスは公平か
- 7回表が出る確率は$\frac{1}{2^{10}} \cdot {}_{10} \mathrm{C}_7=0.12$ - 7回表が出る確率は$\frac{1}{2^{10}} \cdot {}_{10} \mathrm{C}_7=0.12$
- $0.12>0.10$より有意水準10%で帰無仮説は棄却されない - $0.12>0.10$より有意水準10%で帰無仮説は棄却されない
- コイントスは**公平である** - コイントスは**公平である**

View File

@ -1,38 +0,0 @@
---
title: 仮説検定の多重性問題
tags: [note, study, statistics]
---
## 概要
- 結論に複数の[仮設検定](note/study/statistics/hypothesis-test.md)の結果が影響している時,その結論は検定の多重性問題を孕んでいる可能性がある
- 問題を回避するためにはHolm法などで有意水準を下げる必要があるが完璧ではない
## 不確実な情報による結論の不確実性
- **第一種の過誤のみを考慮した場合**,有意水準$x$で得られた検定の結果$n$個から導き出された結論は,最大で確率$1-(1-x)^n$で誤りである
- $P_1\cup P_2\cup \dots \cup P_n\implies Q$であるとき,$P_i$それぞれについて偽である確率が$e$ならば,$\overline{Q}$である確率は$1-(1-e)^n$である
- 故に有意水準を小さくすることで,結論が誤りである可能性を小さくすることができる
- ただし,実際には**第二種の過誤も存在する**
- 有意水準を小さくすれば結論が第二種の過誤である確率は増加する
- 以上より,多重検定は非常によろしくない
- 有意水準を何らかの方法で小さくした上で,全ての検定の帰無仮説が棄却であった場合のみ,統計的に有意な結論を導ける
- 帰無仮説が棄却された場合,それが第二種の過誤であることはありえないから
## Holm法による有意水準の調整
多重検定を構成する一つ一つの検定の有意水準を小さくする方法の一つがHolm法である他の方法も存在するがHolmが一番バランスがとれてる棄却/受容しすぎない)方法だと思う.
### 手法
$N$個の検定による多重検定の有意水準を$\alpha$としたときHolm法による有意水準の調整を次のように行う
1. 各検定の有意確率をソート
2. $i=0$とする
3. 結論が未確定の検定のうち,最も有意確率が小さいものについて,その有意確率を$x$としたとき,
- $x < \frac{\alpha}{N-i}$ ならばその検定を棄却
- $x > p$ ならば,結論が未確定の検定すべて(その検定を含む)を受容し,終了
4. $i$に1を足して
- $i<N$ ならば3へ戻る
- それ以外ならば,終了
## まとめ
- 多重検定は避けるべき
- どうしても必要なら有意水準の補正が必要
- 有意水準の補正にはHolm法が有効

View File

@ -1,36 +0,0 @@
---
title: パラメトリック検定とノンパラメトリック検定
tags: [note, study, statistics]
---
## 概要
- [仮設検定](note/study/statistics/hypothesis-test.md)におけるパラメトリック検定とは,母集団のサンプルに対する検定のうち,母集団の分布を事前に仮定する検定である
- 母集団のサンプルに対する検定のうち,パラメトリック検定でないものはノンパラメトリック検定である
## パラメトリック検定
- 母集団がある特定の分布であると事前に仮定する検定
- ノンパラメトリック検定に比べて,計算が楽
- 手計算はこっちの方が嬉しい
- 母集団が仮定と異なる分布を持つ場合,検定の結論に意味は無い
- 事前検定で母集団の仮定を検証するのはやめた方がいい(後述)
## ノンパラメトリック検定
- 母集団の分布を仮定しない検定
- 計算がめんどくさい
- サンプルサイズが頭おかしいほど大きくない限り,コンピュータなら一瞬
- 仮定に沿うパラメトリック検定が存在する場合,それよりも精度は落ちるが,実用的な問題はない
## 事前検定
- 欲しい結果を得る検定の前に行われる検定のこと
- [多重検定](note/study/statistics/hypothesis-test-multiplicity.md)の問題を孕む
- 個人的には,大抵の場合において事前検定は愚行だと思っている
- 母集団の正規性を仮定するパラメトリック検定を使いたいがために,事前検定として正規性の検定(Shapiro-wilk test)をする人がいる
- 個人的には多重検定問題沼に足を突っ込むぐらいなら,そこまでしてパラメトリック検定を使う必要はないと思う
- 大人しくノンパラメトリック検定を使うべき
- そもそもコンピュータ使えば計算コストは無視できる
## まとめ
- 仮設検定は2つに分けられる
- パラメトリック検定: 母集団の分布になんらかの仮定が必要な検定
- ノンパラメトリック検定: それ以外の検定
- パラメトリック検定をしたいがために多重検定を使うぐらいならば,ノンパラメトリック検定を使うべき

View File

@ -2,7 +2,7 @@
other = "Hey ! Vous semblez perdu‧e. Cette page n'existe pas (ou est privée)." other = "Hey ! Vous semblez perdu‧e. Cette page n'existe pas (ou est privée)."
[404_back] [404_back]
other = "↳ Clique ici pour retourner sur la page d'accueil" other = "↳ On va te faire retourner à l'accueil"
[all_posts] [all_posts]
other = "Tout {{.Title}}" other = "Tout {{.Title}}"
@ -14,7 +14,7 @@ other = "Dernière modification"
other = "notes avec ce tag" other = "notes avec ce tag"
[first_10] [first_10]
other = "les 10 premiers résultats" other = "affichant les 10 premiers résultats"
[tag] [tag]
other = "Tag" other = "Tag"
@ -35,7 +35,7 @@ other = "Mode Clair"
other = "Mode Sombre" other = "Mode Sombre"
[edit_source] [edit_source]
other = "Modifier la source" other = "Editer la source"
[interactive_graph] [interactive_graph]
other = "Graphique interactif" other = "Graphique interactif"
@ -44,16 +44,16 @@ other = "Graphique interactif"
other = "Rechercher" other = "Rechercher"
[search_icon] [search_icon]
other = "l'icône de recherche" other = "Icône de recherche"
[icon_search] [icon_search]
other = "L'icône pour ouvrir la recherche" other = "Icon pour ouvrir la recherche"
[recent_notes] [recent_notes]
other = "Notes récentes" other = "Notes récentes"
[first_3_notes] [first_3_notes]
other = "les 3 premières {{ .notes }}" other = "3 premières {{ .notes }}"
[search_for_something] [search_for_something]
other = "Rechercher quelque-chose..." other = "Rechercher quelque-chose..."

View File

@ -1,4 +1,5 @@
<script <script
async
src="https://cdn.jsdelivr.net/npm/d3@6.7.0/dist/d3.min.js" src="https://cdn.jsdelivr.net/npm/d3@6.7.0/dist/d3.min.js"
integrity="sha256-+7jaYCp29O1JusNWHaYtgUn6EhuP0VaFuswhNV06MyI=" integrity="sha256-+7jaYCp29O1JusNWHaYtgUn6EhuP0VaFuswhNV06MyI="
crossorigin="anonymous" crossorigin="anonymous"

View File

@ -71,11 +71,11 @@
{{partial "mermaid.html" .}} {{partial "mermaid.html" .}}
<script src="https://cdn.jsdelivr.net/npm/@floating-ui/core@1.2.1"></script> <script async src="https://unpkg.com/@floating-ui/core@0.7.3"></script>
<script src="https://cdn.jsdelivr.net/npm/@floating-ui/dom@1.2.1"></script> <script async src="https://unpkg.com/@floating-ui/dom@0.5.4"></script>
{{ $popover := resources.Get "js/popover.js" | resources.Fingerprint "md5" | {{ $popover := resources.Get "js/popover.js" | resources.Fingerprint "md5" |
resources.Minify }} resources.Minify }}
<script defer src="{{$popover.Permalink}}"></script> <script async src="{{$popover.Permalink}}"></script>
<!-- Optional scripts --> <!-- Optional scripts -->
{{ if $data.enableCodeBlockTitle | default $.Site.Data.config.enableCallouts }} {{ if $data.enableCodeBlockTitle | default $.Site.Data.config.enableCallouts }}