Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Math Cafe vol. 1 - Filtering Bit Sequence by Set Logical Vector
Search
IWABUCHI Yu(u)ki butchi
March 28, 2015
Research
0
74
Math Cafe vol. 1 - Filtering Bit Sequence by Set Logical Vector
第1回数学カフェ「集合論理ベクトルによるビット列のフィルタリング」
IWABUCHI Yu(u)ki butchi
March 28, 2015
Tweet
Share
More Decks by IWABUCHI Yu(u)ki butchi
See All by IWABUCHI Yu(u)ki butchi
Sunday Math Party 29 - Joyo Bizarre Plane - Times
butchi
0
24
Sunday Math Party 27 Zodiac Jijo
butchi
0
51
Sunday Math Party 26 - Zodiac Power 2
butchi
0
240
Science Cafe 2022-11-26 - Automatic Illustration
butchi
0
36
Sunday Math Party 23 Fibonacci 89 109
butchi
0
200
Prime QK Sig 2021 - Prime QK Lite
butchi
0
130
collatz-bion-experiment-2018-10-31
butchi
0
64
Sunday Math Party vol. 22 Baumkuchen
butchi
0
930
Sunday Math Party vol. 20 - Mahjong Mathematic
butchi
0
150
Other Decks in Research
See All in Research
2024-01-23-az
sofievl
1
730
眠眠ガチャ:ガチャを活用した睡眠意欲向上アプリの開発 / EC71inui
yumulab
0
120
AIを前提とした体験の実現に向けて/toward_ai_based_experiences
monochromegane
1
230
Accurate Method and Variable Tracking in Commit History
tsantalis
0
240
床面圧力センサ開発における感圧導電シート分離方式の検討 / WISS2023
yumulab
0
260
The Theory behind Vector DB
matsui_528
0
1.3k
一般化ランダムフォレストの理論と統計的因果推論への応用
tomoshige_n
10
1.8k
時系列解析と疫学
kingqwert
2
900
研究効率化Tips_2024 / Research Efficiency Tips 2024
ryo_nakamura
4
2.2k
20240209 データを肴に熊本の交通を考える会「車1割削減、渋滞半減、公共交通2倍」をめざし世界に学ぼう
trafficbrain
0
770
メタ動画データセットによる動作認識の現状と可能性
yuyay
0
170
リサーチに組織を巻き込むための「準備8割」の話
terasho
0
460
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
119
38k
Infographics Made Easy
chrislema
237
18k
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
Git: the NoSQL Database
bkeepers
PRO
422
63k
In The Pink: A Labor of Love
frogandcode
138
21k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
18
1.7k
The Cult of Friendly URLs
andyhume
74
5.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
How to Ace a Technical Interview
jacobian
272
22k
KATA
mclloyd
14
12k
Code Review Best Practice
trishagee
54
15k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
29
6k
Transcript
集合論理ベクトルによる ビット列のフィルタリング 岩淵 勇樹
何がしたいの? インスタンス(ビット列)を絞り込むフィルターを作り たい
着想 • ビット列は「0か1」の万能細胞から分化していると いう概念 • CSSのクラスの絞り込みが元のアイデア • 正規表現に近いかも
(オブジェクト指向的) クラスとは • オブジェクトの設計図にあたるもの。 • インスタンスという 具体的なオブジェクトの元となるもの。 • 抽象データ型。
(オブジェクト指向的)クラスとは Dog 名前: ? 耳: 2つ 目: 2つ 鼻: 1つ
足: 4本 毛の色: ? 鼻の色: ? a dog 名前: ポチ 耳: 2つ 目: 2つ 鼻: 1つ 足: 4本 毛の色: 金 鼻の色: 黒 a dog 名前: ゴン 耳: 2つ 目: 2つ 鼻: 1つ 足: 4本 毛の色: 茶 鼻の色: 茶 インスタンス化 インスタンス化 (「継承」という概念も重要ですが割愛)
class Dog() { (コンストラクタ関数) } var dog1 = new Dog();
var dog2 = new Dog(); (オブジェクト指向的) クラスとは クラス定義 インスタンス化 インスタンス化
(CSS的)クラスとは HTMLの装飾をする際に用いる、 装飾すべきHTML要素を絞り込むための種別 クラスなどを指定して絞り込む式のことを 「セレクタ」という
(CSS的)クラスとは .hoge .piyo { margin: 10px; color: red; } セレクタ
クラス プロパティ 値
(CSS的)クラスとは <html> <head></head> <body> <p class="class-1">強調!</p> <p class="class-2">小さい。</p> <p class="class-1
class-2">小さいけど強調、そして青! </p> </body> </html> HTML .class-1 { font-weight: bold; } .class-2 { font-size: small; } .class-1.class-2 { color: blue; } CSS 強調! 小さい。 小さいけど強調! ブラウザ表示
セレクタにも演算がある * すべての要素 E F 子孫 E > F 子要素
E + F 隣接 E ~ F 兄弟 :not 該当しない場合 :first-child 該当する要素が1番目の要素の場合 他にもいろいろ
(今回扱う)オレオレ クラスとは • クラスは不確定要素を持つビット列 • インスタンスは不確定要素を持たないビット列 • インスタンスは親となるクラスの部分集合 • クラスを乗算する(絞り込む)ことをフィルタリング
と呼ぶ
具体例 「偶数」 クラス: “***0” インスタンス: “0010”, “1010”, “1100”, … 「8以上の数」
クラス: “1***” インスタンス: “1000”, “1010”, “1111”, … →このような絞り込みを数値的に表したい
具体例 「8以上の偶数」 クラス: “1**0” インスタンス: “1000”, “1010”, “1110”, …
前提 {φ, θ, ρ, σ}(後述) の4値を扱う論理値集合のベク トルが1つの値 今回は4ビットを考える
語彙 V := {φ, θ, ρ, σ} ビットの値は φ =
{}, θ = {0}, ρ = {1}, σ = {0, 1}
加算表 ∪ φ θ ρ σ φ φ θ ρ
σ θ θ θ σ σ ρ ρ σ ρ σ σ σ σ σ σ
乗算表 ∩ φ θ ρ σ φ φ φ φ
σ θ φ θ φ θ ρ φ φ ρ φ σ φ θ φ σ
ベクトルの加算と乗算 W: = (b 0 ,b 1 ,b 2 ,b
3 ) | b i ∈ V x, y ∈ W x + y := (x 0 ∪y 0 , x 1 ∪y 1 , x 2 ∪y 2 , x 3 ∪y 3 ) (これ意図と違うっぽい) x × y := (x 0 ∩x 0 , x 1 ∩x 1 , x 2 ∩x 2 , x 3 ∩x 3 )
計算例 (φ, θ, θ, θ) + (σ, ρ, θ, φ)
= (σ, σ, θ, θ) (θ, σ, σ, ρ) × (θ, ρ, θ, φ) = (θ, ρ, θ, φ)
単位元、零元 単位元 Σ = (σ,σ,σ,σ) →オールパスフィルター a + Σ =
Σ a × Σ = a 零元 Φ = (φ, φ, φ, φ) →オールカットフィルター a + Φ = a a × Φ = Φ
フィルタリング インスタンスを抽象化: (θ, θ, θ, θ) + (θ, ρ, θ,
θ) = (θ, σ, θ, θ) オールパスフィルター (σ, σ, σ, θ) × (σ, σ, σ, σ) = (σ, σ, σ, θ)
絶対値 |x| := φを1つでも持っていたら0, それ以外は1 例: |(ρ, ρ, θ, ρ)|
= 1 |(ρ, φ, θ, ρ)| = 0
クラスとインスタンス(復習) • インスタンスはクラスの部分集合 • クラスは任意のW • インスタンスはWのうち、θ, ρのみで構成される もの •
クラスを乗算することをフィルタリングと呼ぶ
最初の例に立ち返る 「偶数」 クラス: (σ, σ, σ, θ) インスタンス: (θ, θ,
ρ, θ), (ρ, θ, ρ, θ), (ρ, ρ, θ, θ), … ダメな例: (ρ, ρ, θ, ρ) →|(σ, σ, σ, θ)×(ρ, ρ, θ, ρ)| = |(ρ, ρ, θ, φ)| = 0
最初の例に立ち返る 「8以上の数」 クラス: (ρ, σ, σ, σ) インスタンス: (ρ, θ,
θ, θ), (ρ, θ, ρ, θ), (ρ, ρ, ρ, ρ), … ダメな例: (θ, ρ, θ, ρ) →|(ρ, σ, σ, σ)×(θ, ρ, θ, ρ)| = |(φ, ρ, θ, ρ)| = 0
課題 無限ビットを扱う インスタンスからクラスを作る(推定する) 機械学習 01列ではなく文字列を語として扱う