What one likes, one will do well 〜好きこそ物の上手なれ〜

寄り道しながらも、最後は昔から好きな物理とプログラミングに戻ってくる。そんな男の思いをつづるブログです。

2017年5月のつぶやき

2017年3月のつぶやき

[https://twitter.com/takus4649/status/846380311298506752:embed#"Cloud9でTensorFlowのチュートリアルで畳み込みニューラルネットワーク(CNN)をやってみた~手書き画像の分類~ [Python] on @Qiita https://t.co/oEfeMnYU5e"]

Qiitaに記事を投稿しました。Cloud9でTensorFlowのチュートリアルで畳み込みニューラルネットワーク(CNN)をやってみた~手書き画像の分類~

QiitaにCloud9でTensorFlowのチュートリアルを実装した記事を書きました。

 

qiita.com

 

 

下記の前回の記事の続きで、前回は初心者向けのMNIST。今回は専門者向けのMNISTです。私は専門者ではないですが。。。

合わせて下記の記事およびコードも見直しました。

 

takus4649.hatenablog.com

 

やってみてコードを実装するのが一番の理解の早道だと感じます。何でもそうですが、自分で工夫したり、苦労したりするのが一番理解が深まります。次はチュートリアルではなく自分のオリジナルを実装していきたいと思います。

 

twitterをはてなブログに投稿するgemを改善


以前にtwitterのつぶやきをブログに残していきたいと思って、gemを作成しました。

 

takus4649.hatenablog.com

 

最初は毎日ブログにつぶやきを投稿していたのですが、twitterの利用頻度が増えるとブログ記事がつぶやきで埋まってしまうので、1ヶ月に1回の投稿に変えました。その時gemを直していたのですが、急いで直したこともあり使い勝手がよくなかったです。

自分の使い方に合わせてgemを修正して、やっと使いやすくなりました。自分用ですが、改善した内容をまとめておきます。

ちなみに投稿はslack経由でrubotyに実行してもらっています。

使い勝手が悪かった点は以下の2点です。

1つ目は、

post_between 開始日 最終日

という形の命令が長く日付指定が面倒だったという点につきます。

postという形の命令にしたかったのですが、毎日の投稿用使っていたため長い命令になっていました。そこで今や使っていない毎日の投稿処理をなくし、postで前月の投稿するように変更しました。

実処理はruboty用のgemとは、別のgemとして作成していたため変更は楽でした。

2つ目は、ruboty-twitterToHatenaからEditTwitterとPostToHatenaの2つのgemを呼んでいました。でも2つに分ける必要ないと思い統合しました。2つのgemを使っていた時はrubotty-twitterToHatenaで制御する処理が必要になっていたのですが、統合することで1つのメソッドを呼ぶだけのシンプルな作りになりました。

PostToHatena1つに統合したのですが、それに合わせてリファクタリングも実施持しました。DRY原則を適用して重複の部分を大きく減らせました。

動いているものを変更して改善するのは重い腰を上げないといけないのですが、改善した後の爽快感は最高です。

こう感じる事ができるようになったのは、テストを書くようになった事、リファクタリングをするようになった事が大きいと思います。テストなしだとやりたいとは思いません。

みんなもテストを書いてリファクタリングしましょう。

一応コードを公開しておきます。

github.com

 

2017年2月のつぶやき

2017年1月のつぶやき

数学ガールのガロア理論を読みました。

はじめに

数学ガールガロア理論を読みました。読んで感じたことを書きとどめます。

2次方程式の解の公式

高校時代に導くのをやっていたので懐かしかったです。

対称式

「対称式は基本対称式で表せる」ということ知りませんでした。対称性の基本定理というそうです。

また対称性は不変性というのは物理の対称性とつながり、そういうことだったのかと納得がいきました。

拡大体

有理数体に開平(ルート)を添加して「解なし」から「解あり」は本書を通してずっと出てくる重要な考えで、複素数の例がわかりやすかったです。

巡回群

巡回群が1個の生成元からできるというのは知りませんでした。物理でも群が出てくると生成元が出てくるので、比べてみようと思いました。

原始n乗根

数学ガールフェルマーの最終定理では原始ピタゴラス数が出てきました。原始という言葉は面白いです。多項式に互いに素の考え方がでてたり、係数が有理数の場合の因数分解が原始n乗根を解に持つ円分方程式だったりと不思議な性質を見ました。

角の3等分

定規とコンパスだけですべての角を3等分できるかの問題は簡単そうですが、自分ではどう証明したらよいのかわからなかったです。作図可能数や3等分方程式や難しい話でしたが、作図の問題が方程式に繋がるのは面白かったです。

3次方程式の解の公式

公式の導出が載っていて自分で導出したいと感じました。

ラグランジュ・リゾルべントという重要そうな式が出てきたけど、実際に手を動かしてみないとわからなさそうです。

拡大次数

拡大体の次数を計算して、添加するごとに2倍されていくのが不思議でした。次数というと大きさのイメージですが、平方根を1つ添加して2倍されるのは面白いです。

剰余類

線形代数の教科書です見たことありましたが、意味や必要性を感じていませんでした。

ケイリーグラフの計算を自分でやってみようとしたらできず。実際に手を動かすことの重要さを感じました。具体的な例で計算の仕方が解説してあったので理解できました。

剰余群は群の群でわけがわかりなくなりそうでしたが、具体的な計算で納得がいきました。

ガロア理論

やはりガロア理論は難しかったですが、2次方程式の解などで具体例があったのがよかったです。まだ自分で考えられていませんが、「例示は理解の試金石」が身にしみました。

おわりに

数学ガールガロア理論は、線形代数群論など興味がある内容が盛り沢山で楽しめました。

「例示は理解の試金石」を一番感じた1冊でした。

数学ガールシリーズは読んだので、次は数学ガールの秘密ノートを読みたいと思います。

 

 

数学ガール/ガロア理論 (数学ガールシリーズ 5)

数学ガール/ガロア理論 (数学ガールシリーズ 5)