onewanのメモ帳

数式が書きたくて始めたブログ。twitter IDは @onewan

ローレンツ方程式(Lorenz Equation)をプロットしてみた

昨日の夕方に呟いたとおり、Pythonローレンツ方程式を描いてみた。

f:id:sosuu-daifugoh:20190204025732p:plain
LorenzEquation

ローレンツ方程式は、大気の変動モデルを研究していたLorenzが1963年に彼の論文で示したもので、三次元にプロットすると上図のように蝶の形になる。

これが、ストレンジアトラクター上のカオス的運動の発見となった。

ローレンツ方程式は、非線形微分方程式で、以下のように単純な式で表される。
 \dot{x}=-px+py
 \dot{y}=-xz+rx-y
 \dot{z}=xy-bz

ここで、x,y,zは変数、p,r,bは定数であり、上ドットは時間微分を表す。

Pythonコードは以下のとおり。p=10, r=28, b=\frac{8}{3}で、4次のルンゲクッタで数値をプロットして出力している。
github.com

カオスについて詳しく知りたい方は、まず以下の教科書を参考にすると良いだろう。
ある程度初歩的な話を中心に進められており、また応用的な話を中心に進めているので、非線形ダイナミクスを応用する分野の方(物理、化学など)にも読みやすいと思う。

www.maruzen-publishing.co.jp

日曜数学の歩き方 (日曜数学 Advent Calendar2018)

はじめに

去年、初めてアドベントカレンダーなるものの存在を知り、次回こそは参加するぞと心算をしておりました。

私は文章を書くのが得意な方ではありませんので、*1いくつかある数学系のアドベントカレンダーの中から1つだけ選んで参加させて貰おうと考えました。

今年は、関西で日曜数学のライトニングトーク会を開催させて頂いている事もありますので、日曜数学のアドベントカレンダーに参加させて頂きました。

さて、今回の題目は「日曜数学の歩き方」として、趣味で数学をやる際におすすめのイベント、ゲーム、Webサイトの紹介をしたいと思います。数学が専門ではないけれど、趣味で数学をやろうと考えておられる方をメインターゲットとしておりますが、それ以外の方にも参考になるかと思います。*2

参加している「日曜数学 Advent Calendar2018」はこちらです。
adventar.org

本論

自己紹介と背景

私は数学科出身ではありません。制御理論が専門の応用数理系の工学出身です。そのため、大学時代には数学の授業は数学科ほど受講しておりませんでしたし、純粋数学に触れる機会はほとんどありませんでした。

大学受験の時には数学科に行こうか迷っていたのですが、当時はAIブームなども無く、数学科の進路が限定的だったため、就職先の充実した工学系に進学しました。その後、数理系に進んだのですが、やはり純粋数学と違って「社会でなんの役に立つか」を評価軸とするため、違和感を感じていました。卒業後は知財という政治がほぼ全てを支配する領域*3で、数学からは10年近く遠ざかることになりました。

そんな中、どうしても純粋数学を学ぶ夢が捨てられず、東京に転職して来て落ち着いた頃に数学の勉強会に参加しようと思い立ちました。実は最初に参加したのは、「数学カフェ」というガチンコの数学勉強会でした。九州大の千葉先生の話を聞くために毎週6時間強の関数解析のゼミを行うというマッチョな会でしたが、それこそが私の求めていた数学の勉強会そのものでした。

その後、「日曜数学会」、「ロマンティック数学ナイト」を体験し、地元の関西でも数学のイベントを開催したいと思い、有志と共に始めたのが「関西日曜数学友の会」なのですが、その話は別の機会にしたいと思います。

そんな訳で、大学時代に純粋数学を余り勉強していなかったけれど、社会人になってから勉強したくなったという方向けに、情報を提供出来れば良いなあと思っています。

課題

数学の勉強方法ですが、もちろん自学自習が基本だと思います。しかしながら、いきなり自学自習を始めるのは、ハードルが高いと思います。例えば、漠然と数学を勉強したいと思った場合は、何の勉強から始めれば良いか分かりません。

解決方法

そんな何の勉強から始めれば良いのかお悩みの方にオススメなのが、数学の勉強会やイベントです。

数学の勉強会やイベントには、数学科出身者や数学が大好きな方々が集まります。要するに専門家、同好の士、先達たちに会える訳です。このようなコミュニティでは、数学のどの分野が面白いか、どの教科書がオススメかなどを聞く事が出来ます。

さらに、皆さんとても楽しそうに数学について語るので、それだけで数学をやるモチベーションを上げる効果があると思っています。

数学イベント

私が参加した事のある会だけでも以下のようなものがあります。

日曜数学会

数学デー

数学カフェ

MathPower

ロマンティック数学ナイト

ロマンティック数学ナイトPRIME

関西すうがく徒のつどい

関西日曜数学友の会


比較しやすいように表形式で難易度などをまとめてみました。難易度は私の独断と偏見で決めています。数字が小さい方が難易度が低く、大きいほど難易度が高いです。

イベント名 開催頻度 開催地域 難易度 コメント
日曜数学会 年3回 東京 1〜5 5分で普段やってる数学の話をする会。数学初心者も楽しめる。
数学デー 毎週水、金 東京 1〜5 コラーニングスペースで数学好きが集まってわいわいと楽しむ場。水曜は神田のソノリテ、金曜は本郷三丁目のΦカフェが会場になっています。初心者におすすめ。北海道でも開催中。
数学カフェ 講演年5,6回+予習毎週 東京 8〜10 アットホームな数学の勉強会。という触れ込みでしたが、かなりマッチョな勉強会になっています。分からない事を受け入れつつ、それでも勉学に励める方向け。
MathPower 年一回(10月頃) 東京 1〜8 数学イベントの総合大会のようなもの。角川の川上社長肝入り。
ロマンティック数学ナイト 年数回 東京 1〜5 通称ロマ数。お洒落な数学のイベント。司会はお笑い芸人のタカタ先生。U22、ガールズ、大阪開催などもあった。
ロマンティック数学ナイト PRIME 都度開催 色んな場所 1〜5 何処でも誰でもが、ロマンティック数学ナイトを自主開催できる仕組みを、公式が提供してくれており、これまで北海道、信州松本、筑波大学、名古屋で開催された。
関西すうがく徒のつどい 年2回ほど 関西 4〜10 関西の数学徒が集まる大規模オフ会。100人くらい集まる。第11回の運営をお手伝いさせて頂きました。
関西日曜数学友の会 年3回(4月、8月、11月) 大阪(梅田) 1〜5 私が同志4人と一緒に主催してるイベント。日曜数学会を元にして大阪風にアレンジしています。数学以外の人にもリーチしたい。

上述のとおり、数学イベントは東京に一極集中しているので、東京以外の皆さんは、誰かが開催するのを待つのではなく、自ら主催することをオススメします。主催したいけど方法が分からないという方は、他の会を主催している方にアドバイスを求めるのも有りかと思います。もちろん、私に聞いて頂いても情報提供します。

上記の記事を書いたあと、12/2に数学忘年会*4と称してニコニコ生放送をした際に、「誰か"数学デー in 大阪"やりませんか?」という話した際に、手を挙げて頂いた視聴者の有志の方が早速「数学デー in 大阪」を2019/1/12に開催されることになりました。MYAOさんありがとうございます!私も当日行きます。

connpass.com

数学系ゲーム

イベントはいつもやっている訳ではないので、数学系ゲームをプレイすることで数学のモチベーションを上げるという方法もあります。最近流行りで私がプレイしたことのあるゲームを列挙してみました。どんなゲームなのかについては、リンク先を見て頂くのが一番早いと思います。

東京近郊にお住いの方は、毎週開催されている数学デーに行けば、おそらく何かしらかのゲームをプレイすることが出来ると思いますので、一度足を運んでみてはいかがでしょうか?

素数大富豪

素数大富豪は、トランプゲームの大富豪を基にしたもので、基本は素数しか出せないという縛りを入れたものです。さらに57で強制流し(グロタンカット)、1729で革命(ラマヌジャン革命)といったルールがあります。

最近、素数大富豪のアレンジ版がパッケージ化されました。「素数大富豪LV.0」と、鋭意製作中の「1213」です。素数大富豪LV.0はヒントをカードに記載したり、出せる枚数(つまり桁数)を制限することで、初心者も楽しめるような工夫が凝らされています。*5これらの紹介については以下の、素数大富豪考案者のせきゅーんさんの記事も合わせてご覧ください。 -INTEGERS

ゴドマチゴドマチWebアプリ

ゴドマチは、2人対戦ゲームです。方眼紙上の線だけで囲まれた同じ面積の図形を2つ用意し、元の図形が繋がったまま方眼紙上の線だけで囲まれた同じ形の図形を削り、残りの図形が同じ形になれば勝ちとなるゲームです。言葉だけで説明するのはちょっと難しいので、ゴドマチWebアプリの左上の「?」をクリックしてルールを確認してみてください。なお、そのまま下に進んでいくと、製作者のクレジットが入っていますので確認してみて下さい。

陣目取(ジンメトリ)

陣目取も、2人対戦ゲームです。白と黒の石を交互に置いて、多くの石を置いた方の勝ちなのですが、連結される際には線対称になっている必要があるというものです。詳しくは、リンク先をご覧ください。

∇演算子ゲーム

演算子ゲームは、基底を微分して相手を0次元にする東大生が考案したゲームです。私はまだ手に入れられておりませんが、面白そうなので、近いうちに手に入れたいと思います。

円周率カルタ

「円周率1000000桁表」や「素数表150000個」などで有名な”暗黒通信団”が発行しているゲーム。 円周率の小数点以下を10桁ごとに、上の句5桁、下の句5桁に分けて、上の句が読まれたら下の句を取るというもの。 少数点以下1005桁まで出てきますので、円周率を1005桁まで覚えるモチベーション製造機なのではないでしょうか。*6

Webサイトを巡る

数学に関するWebサイトも充実しています。その中でいくつか有名なものをご紹介します。

tsujimotterのノートブック

日曜数学者 tsujimotterさんのブログ。tsujimotterさんは、数学のイベントで発表される際には、とても楽しそうに発表されるので、こちらまで楽しくなってきます。ブログと合わせて、イベントでtsujimotterの発表を見ることをおすすめします。

INTEGERS

素数大富豪の考案者 せきゅーんさんのブログ。素数好き必読のブログ。

アジマティクス

数学のビジュアライザー 鯵坂もっちょさんのブログ。数学をビジュアル化する事で、直感的にとても分かり易くなっています。

高校数学の美しい物語

マスオさんのブログ。記事がレベル分けされており、解説も丁寧なので教科書代りに読めるかも知れません。

壱大整域

alg-dさんのブログ。圏論をこのサイトで勉強したという方が居ると風の噂で聞きました。-> 壱大整域-圏論

予備校のノリで学ぶ「大学の数学・物理」

数学Youtuber、よびのりのタクミさんのサイトです。最近、AbemaTVで「ドラゴン堀江」というドラゴン桜ホリエモンverをやっているのですが、そこで数学担当教師となっているようです。

Vtuber アイシア=ソリッド

データサイエンスVtuber。統計を勉強中なので、参考にしようかと思ってます。

あとがき

今回は、数学が専門ではないけれど、趣味で数学をやろうと考えておられる方をメインターゲットとして、おすすめのイベント、ゲーム、Webサイトの紹介をさせていただきました。

これからも、皆さんの数学ライフが充実したものになりますように。

ご精読ありがとうございました。

No math, no life.

onewanでした。

*1:入社から2年間、社内特許事務所的な部門で特許明細書の原稿作成をしていたので、苦手ではなくなりましたが。

*2:最近、統計数理が楽しくなってきたので、統計数理について書こうかとも思ったのですが、それは別の機会にします。

*3:あくまで個人の見解です

*4:日曜数学会の運営、数学デーの運営、関西日曜数学友の会の運営の関東メンバーに寄る忘年会

*5:早速買って説明書を読みましたが、よく考えて設計されているものだと感動しました。

*6:個人の意見です

東大松尾研のDeep Learning基礎講座 #01

先日、twitterでもつぶやいておりましたが、表題の講座に参加しております。

deeplearning.jp

はじめに

松尾研は、基礎研究だけでなく、AIの人材育成、社会実装にも力を入れている。

この授業で大事にしている3つの柱は以下のとおり。

1つ目の柱

Computer Scienceを学ぶには、実際にプログラミングを行うべき(stack overflow社長 ジョエル氏談)。
そこで、1受講者1GPUの仮想サーバを与える。

2つ目の柱

Kaggleみたいにコンペをやる。

3つ目の柱

コミュニティを醸成する。
同じタイミングで同じコンテンツを学習し、チームでプロジェクトを行うことでコミュニティを作る。
修了式もある。

講師陣

上記リンクから見れます。

初回は、松尾先生の特別講義。

「第一回:人工知能の概要とディープラーニングの意義」

人工知能の定義は曖昧。知能の定義すらも曖昧。
・最先端の情報技術でできること=”人工知能
人工知能がなぜできないのか?
 人間の脳の解析もできていない。
 ロジャー・ペンローズ(物理学者)。脳の中の微笑なくだによる量子現象に意識が生じる。

第一次ブーム1956-1960年代:探索・推論の時代

ダートマスワークショップ(1956)
探索木、GAなど、このときにほぼ全ての基礎技術は出揃った。

ゲームと計算量

・チェス: {10}^{120}
・将棋:  {10}^{220}
囲碁:  {10}^{360}
最近強くなった理由は、モンテカルロ法を用いたから。

まとめ

・トイプロブレムしか解けない
・1969 MinskyによるPerceptronの限界証明。

第二次ブーム 1980〜 知識の時代

エキスパートシステム
・対話システム
・ELIZA(イライザ)1964
単純なルールを大量に用意するだけで十分会話になる。
 => emacsで使える!?
・MYCIN(スタンフォード)1970
・Cyc 1984-  人間の常識を全て記述しようとしているが、まだ出来ていない。

まとめ

・知識でできることが限られることがわかった。 ・冬の時代

はてなブログがクラッシュしたので、ここから下は記憶を頼りに書いております。

第三次ブーム

Deep belief network

auto-encoder(Hinton 2006)

4-2-4の状態を持つ。隠れ層で次元が圧縮されている。これが特徴量である。

ontology

・High-weight ontology
・Light-weight ontology
WatsonはLight-weight ontology。ほとんどword検索と変わらない。
良い意味で見せ方がうまかった。

Googleの猫
難しい問題

第一の難問:特徴量をどうきめるか
第二の難問:フレーム問題
第三の難問:シンボル・グラウンディング問題

結局は、人が特徴量を調整していたことが問題。

DL時代に勝つ企業は?

f:id:sosuu-daifugoh:20181004195829j:plain

DLで論文引用数の多い人は?

日本人で最上位は、MITの人 400位。

f:id:sosuu-daifugoh:20181004200527j:plain

f:id:sosuu-daifugoh:20181004200511j:plain

素数大富豪の並び替え

先日は、札幌で素数大富豪研究会に参加しました。 幹事の方々の準備が万全で、研究会の冊子も充実したものになっておりました。 次回の開催も決定したということで、喜ばしい限りです。

さて、研究会で話を聞いているうちに、素数大富豪の並び替えを行うWebサイトを作ろうと思い立ち、まずはプログラムを作りました。Google Colaboratoryであれば、7桁程度(たとえば、2468TQA)の並び替え素数も一瞬で出ます。

github.com

このプログラムをBrythonで動かしてみたのですが、どうやらインタプリタではなくて、JavaScriptJITコンパイルをしてから動かしているので、動作が重すぎて使えませんでした。眠い。

また後日、JSで書き直すか、別の方法を試して公開します。

素数大富豪 ほぼ最大の合成数

昨日、今日と博物ふぇすてぃばるに参加して、素数大富豪の考案者である関真一朗氏の講演を聞き、素数大富豪をプレイしてきました。

関さんは本当に素数愛に溢れた方です。足し算しかしらない子供にも懇切丁寧に素数大富豪の遊び方を説明されていました。あの姿勢は見習いたいですね。

さて、素数大富豪をプレイする傍ら、素数大富豪ブースでカステラさん、はなぶさんから聞いた話を基に、合計で53枚使う合成数出しに関してプログラムを書いて求めてみました。

方針は、99887766544332{KKQQQJJTTA}Aの{}内を並び替えて素数を作り、

99887766544332{KKQQQJJTTA}T = 99887766544332{KKQQA2JJTTA}A * 2* 5

を出すことです。ただし、TとQは5枚のうちのいずれかがジョーカーになります。

これが本当に最大かどうかは証明していないので分かりませんが、ほぼ最大の合成数出しになるのでは。

プログラムは以下のGitHubに上げています。間違ってたら教えて下さいね。

github.com

競技プログラミングに手を出してみた (AtCoder Beginners Selections)

先日、とある集まりでAtCoderという競技プログラミングのコンテストの存在を教わった。

最近、Twitter界隈でも競プロという言葉が飛び交っていたので、言葉自体は知っていたが、実際に問題を見るとなかなか面白い。

まずはコンテストに挑戦する前に、以下の初心者用の問題をやると良いと言われたので、全部解いてみた。

AtCoder Beginners Selection - AtCoder

コードは以下に上げてあります。

github.com

Twitterにも書いたけど、競技プログラミングは、アルゴリズムの学習になる、他人の綺麗なコードが参考になる、最低限の実装を行う事でプログラミングへの精神的な壁を取り払える、楽しい、などの効果があると思う。

ルベーグ積分入門

藤田先生の『「集合と位相」をなぜ学ぶのか』で、ルベーグ積分について触れられていたので、テレンス・タオの『ルベーグ積分入門』を読み返してみた。

ルーベグ積分とは


高校などで習うリーマン積分では上手く定義しきれない対象に対する積分を、ルベーグ積分で上手く定義しています。

リーマン積分可能性はジョルダン可測性に深く関係しています。有界集合に限定したとしても、すべての集合がジョルダン可測という訳ではありません。例えば、一辺が1の正方形の有理数点の集合 [0, 1 ]^{2} \cap \mathbb{Q}^{2}と、一辺が1の正方形から有理数点を除いた集合 [0, 1 ]^{2} \setminus \mathbb{Q}^{2}は、共にジョルダン外測度は1、ジョルダン内測度は0となり、ジョルダン可測とならない。


そこで、ルベーグ測度とルベーグ可測性を、ジョルダン測度とジョルダン可測性から拡張する訳ですが、可測性の方はジョルダンが内測度と外測度の極限が一致する場合と定義したのに対して、外測度から定義することになります。

ルベーグ外測度

ジョルダン外測度は、任意の有界集合 E \subset \mathbb{R}^{d}に対して、有限個の直方体で覆うのに対して、ルベーグ外測度では、可算個の直方体で覆うというもの。

 {\displaystyle 
m^{*} (E) := \inf_{\cup_{n=1}^{\infty} B_{n} \supset E; B_{1}, B_{2}, \dots : 直方体}           \Sigma_{n=1}^{\infty} | B_{n} |
}

ルベーグ可測性

集合  E \subset \mathbb{R}^{d}ルベーグ可測であるとは、任意の  \epsilon > 0 に対して、 m^{*} (U \setminus E) \le \epsilon となるような E を含む開集合  U \subset  \mathbb{R}^{d} が取れることをいう。もし E がルベーグ可測であれば、  m(E) := m^{*} (E) のことをE のルベーグ測度と呼ぶ。

参考文献

[1] ルベーグ積分入門(第2刷), 著:テレンス・タオ, 監訳: 舟木直久, 訳:乙部厳己, 2017.02.10