A Day in the Life

2021年7月27日

そういえば Udemy で講座を購入したまま放置していたなぁと、iPad に Udemy アプリを入れ講座をオフラインで見れるようにダウンロードして、夕方から海辺の公園で閲覧する。暑さは曇りなので良いのだけど、蜂と蚊が多くあまり集中できず残念。

購入していた講座はいちばん理解できる統計学ベーシック講座その1【確率分布・推定・検定】で、毎度書籍での統計学入門に失敗しているので動画ならどうかと買ったもの。まだ1章を見終わったところまでだけど、基礎の基礎を優しく教えていて、いやー解りやすいな。今まで入門書を途中でなげていたのは、そもそも入門以前に自分の知識が足りてないせいだったのでは疑惑が高まった。講座はきちんと最後まで見終えたいな。


夏は雲の表情が良い。


Uber が開発した Auto ML のプロダクト ludwig のコードを読む(ニューラルネットワーク部は TensorFlow を使っている)。なるほどデータ学習~モデル適用まできれいなインターフェイスで実装されていて、Auto ML フレームワークはこういう感じに作るとよいのねという参考になる。

機械学習がわからない人でも何らかの学習結果を出せるという所は AutoML らしく可能なのだけど、例えば画像処理の場合、一般的なCNNやResNet50のNNを通すだけで、流行り廃りが激しい様々な最新モデルやそのモデルの学習パラメータを簡単につかかえるわけではなく、性能というところではまだそんなにでなさそうだ。

OSS 開発という点では、メインの開発者が昨年Uberを辞め、LF AI & Data Foundationに移管されてからはあまり動きがなく、今後の成長は誰かが ludwig に大きくコミットしない限りは難しいそうだなぁ。

日進月歩な機械学習分野なので、AutoML のような汎用的な落とし所が丁度よい所に収まるにはまだちょっと先になりそう。


夜はオリンピック観戦で、女子ソフトボールを中心に体操や卓球などを見る。ソフトボールの観戦はなんだかんだで3戦目で、金とれてよかったなぁ。

撮影機材α7C/Jupiter-9 85mm F2

2021年7月26日

朝ジョギング15分。午後は結婚式タスクで品川へ行く。昔住んでいたら辺から近く、よく品川プリンシシネマへ行っていたので懐かしい。


グランドプリンスホテル高輪では、イタリアの選手団が泊まっているからか、高輪貴賓館の外装がイタリア色になっていた。


オリンピック、スケート女子を録画していて後で楽しもうと思っていたら、各種インターネットによりネタバレ。オリンピック情報はうっかり目につくところに多すぎる~。速報価値も高い情報なので、例えばテレビでも速報テロップとして流れるので、インターネットでなくてもネタバレされてしまう。


Google 翻訳で Fujifilm や Nikon を日本語からラテン語へ翻訳すると Canon になってしまう問題、ありそうな挙動だぁ。車メーカーも、例えばホンダはToyotaになる。

これはいわゆる Word2Vec のような Word Embedding を使った翻訳で未知語に対応しようとした場合の挙動としてそうなりそうな感じ。ラテン語翻訳で Fujifilm も Nikon も未知語だとして、ラテン語の文脈で Canon と同じ位置ベクトルで使われているのでベクトル空間が Canon に近しい位置になる。なので翻訳AIが未知語をなんらかの言葉として置き換えようとすると、Canon と同じような単語なんじゃね?つまり Canon として翻訳しちゃって良いんじゃない?となりそう。Google 翻訳の日本語→ラテン語が Word Embedding を使ってるのかどうか知らないのであってるかどうかは解らないけど。

撮影機材α7C/Voigtlander NOKTON classic 35mm F1.4 II SC VM

SNKRX / 2021年7月25日

ローグライトなピクセルシューティングゲー SNKRX の iOS 版を購入してプレイする。SNXRX については、IGNの記事が解りやすい。シューティングゲームとしてのプレイングスキルはあまり必要なく(左右回転しかすることがない)、どんなビルドを作るのかに集中できるのが面白い。とりあえず1勝、cleric + priest で回復オーブだしまくりつつ、回復オーブ取ると攻撃できるアイテムとの組み合わせで勝利。

snkrx

SNKRXはソースコードも公開されていて(なので無料でも遊べる)、3ヶ月の製作期間で作ったという開発ログも開発の流れを追えて面白い。なお実装は OSS の Lua で書けるゲームエンジン LÖVE で作られていて、LÖVEは console 版(Windows, Linux, macOS) や iOS / Android / Web(JS) で動かせるというのもすごいなぁ。

そして SNKRX 作者の記事、SNKRX's post-release log も、統計情報を見ながら前作と今作(SNKRX) のリリース後の期間売上の比較(約50日で Steam だけで2500万円分ぐらい売れたそうでめでたい)や、なぜ売上が伸びたのか(主に YouTube)の話、作者の改善のやり甲斐の話、ユーザとどう付き合うかのコミニュケーションの話、discord 作って最初失敗した話、などなどインディーズ個人製作者からの視点で多岐にわたって書いてあって面白い。


オリンピックはスケートボードを見る。スケートボードはゲームでいくつかやったことがあって(とりわけSkate 2はお気に入りだ)、ゲーム中は簡単に繰り出せるトリックもリアルじゃ無理なんじゃない?と思える難しさを、競技中みんな当たり前のように繰り出していてほんとすごい。そして決勝で堀米が最初のラン2回を失敗気味だったのに、後のトリック4回すべて高得点で金メダル、感動モノだった。瀬尻稜氏の解説もくだけた感じで面白かったなぁ。

その後女子ソフトボールのカナダ戦も後藤の6連続奪三振~サヨナラ勝ちや、柔道安倍兄弟の金、女子バレー予選や卓球ダブルス混合を見る。オリンピックは開催前はやらなくて良いんじゃ、と思っていたがいざ始まると楽しんで観てしまっている。

2021年7月24日

久しぶりに朝起きたら走りたい感じだったので、15分ほど軽くジョギング。週3~4日ぐらいはまた走るのを再開したいなぁ。


今日の機械学習は転移学習周りをいろいろやったり、自然言語処理ではメインストリームになりつつある Transformer の画像応用版である、Vision Transformer をあれこれ調べたり。Keras オフィシャルの記事 Image classification with Vision Transformer に解りやすい実装がのっていて、こんなこともあんなことも keras だけでできるのかーと感心する。ブラックボックス的に使うならvit-kerasで、すんなり使うことが出来た。

ただ各所で述べられている通り Google が良いスコアを出しているのは巨大プライベートデータセットのJFT-300M で学習したときで、自分たちが使うことができるモデルはたいてい ImageNet21k での学習モデルなので現在は大抵の用途では CNNの ほうが良い結果なることが多いのだけど、今後は ImageNet21k でもパフォーマンスが出る仕組みの画像系Transformerが出るとは思うので期待だ。


最近は Kaggle でコンペではなく調べ物する事が多くて、よく出来たサービスだなぁと感心する。Datasets / Code / Discussions で良質な情報が見つかることが多い。とりわけ Datasets や Code はその名の通りデータセットと notebook とセットなので、まま動くものが手に入るのも嬉しい。今日読んだものだと、Vision Transformer (ViT) Fine-tuning など理解しやすかった。


夜はオリンピックを見る。柔道男子60キロ級は三位決定戦も決勝も共に指導3回で反則負けで、スッキリとしない試合。2017年のルール改正で4回から3回で負けとなったようなのだけど、指導は素人目だと審判の主観によるものが多そうにも見え、えっいまので指導で終わりなの!?と感じてしまった。

続いて女子ソフトボール予選で日本対イタリア。野球は見るけどソフトボールは普段全く見ないので新鮮な感じで試合を見れた。ソフトボールは13年ぶりのオリンピック種目、次のパリオリンピックでは種目に入らないということで、種目によっては毎回確定しているわけでは当然ながら無いのだなぁ。

撮影機材RICOH GR III

フレッシュネスバーガー・オリンピック開会式 / 2021年7月23日

朝は久しぶりに日の出時間に海辺の公園で朝食。日の出も4:42と夏至の頃に比べたらだいぶ遅くなったなぁ。


昼にハンバーガが食べたくなり、オリンピック記念か555円オフクーポンを配っていた foodpanda でフレッシュネスバーガーを頼む。フレッシュネスバーガー、ハンバーガーの味の記憶がなく、学生時代は漠然と高いハンバーガー屋だ、と思っていた印相しかなかった。のだけど、頼んだクラシックバーガーはバランス良い美味しさで、また食べたい美味しさだった。久しぶりに食べるオニオンリングも美味しいね。

そして夜も続けてフレッシュネスバーガーを頼んでしまった。うまし。フレッシュネスバーガーについて調べると、今はコロワイドグループなのね。コロワイドグループの勢いを感じる。


Google がオリンピックでのロゴ変更で、Doodle Champion Island Gamesが遊べるようになったので遊ぶ。7ステージのゲームで、とりわけ skate のステージがいわゆるスケートゲーで、ジャンプしてトリックをキメる動作を見下ろし型2Dの世界でうまく表現していて良い出来だった。他のステージもきちんと遊べる感じで一通りクリアする。全ステージアニメーションもあって、よく作ってるなぁというかお金あるなぁGoogle…。


夜はオリンピック開会式を見る。昼間やると思っていたら夜なのね。暑さだったり、時差の関係だったり、演出の関係だったりするのかなと思ったのだけど、アメリカで独占放映権を持ってIOCに多額の料金を払っているNBCの力が強い、というネット情報(真偽未確認)という話もあったりするのね。

開会式は昨今のゴタゴタもあって純粋に楽しめないかと思いきや、選手入場でドラクエのロトのテーマ~FFの戦闘勝利音楽のオーケストラが流れテンションが上がる。206の国・地域の選手たちが入場し、一言紹介されながら多様な選手を見ることが出来、まだまだ知らない国・地域(とりわけ中米・南米・アフリカ)があるんだなぁと楽しんでみれた。

撮影機材α7C/XR RIKENON 50mm F2

未来のミライ・血糖値スパイク・ブルーレットおくだけ / 2021年7月22日

細田守監督作品、未来のミライを見る。子供のワガママ・癇癪ばかりが目につきすぎて、いやー全然面白くなくてびっくり。近未来的な東京駅の描画と、福山雅治演じるひいおじいちゃんのシーンは良かったけど、なんだかなぁという作品だった。刺さる人には刺さりそうな作品で、レビューを見ると賛否両論だったので、なるほど評価する人はその視点で評価するのだなぁ、と感心する。久しぶりに見た後のレビューを読むのが楽しかった作品で、そういう点では楽しめた。

作中に子供が初めて自転車(補助輪なし)に乗るシーンがあるのだけど、自分も補助輪なしの自転車に初めて乗ったシーン(実家近くの神社で父親に後ろを掴んでもらいながらいつの間にか手を離されて一人で乗れた)が蘇ってきた。自転車もロボットはっちゃんのキャラクターデザインが使われた自転車だったな、ともう数十年も名前も忘れていたロボットはっちゃんを記憶の奥底から思い出す。


食後体調が悪くなるの、血糖値スパイクの症状とも似ていて、これなのかもなぁ。体重が増え肥満化してきて平均血糖値が上がり血糖値スパイクが起きやすくなってきたと。

【研究発表】中年肥満男性における血糖値スパイク(健診ではわからない隠れ高血糖)の頻度によると、健康診断や人間ドックの結果では、血糖値スパイクは食後のバースト値なので診断できない(たしかに私の血糖値は健康診断では正常値だ)とのこと。

関係ないけど、通年で見ると血糖値の変化も解るので、健康診断結果(に限らず医療全般のデータ)、個人がアクセスできる形でデータして蓄積されていってほしいよなぁ。


夏になり、トイレのにおいがちょっと気になりだしたので、液体ブルーレットおくだけ きらめく彩りの花 はなリウムを購入する。香り強めで、好みはあるだろうけど満足。何より見た目がハーバリウム風で良い。

撮影機材α7C/XR RIKENON 50mm F2

2021年7月21日

ちょい体調悪めの日。今日中に済ませたい仕事があったのでがっと行い、あとは大体寝ていた。

ドライブ失敗・竜とそばかすの姫 / 2021年7月20日

久しぶりに車を運転したい気分になり、朝から車を借りてドライブ。が、慣れない運転かつ途中でトイレに行きたくなったりしてドライブを楽しむ感じではなくなってしまい途中で帰宅。隣に父(教習練習してもらってる)を載せずの運転は宮古島以来で、かつ横浜とはいえそこそこの交通量のため運転難易度高し。もっと運転慣れが必要だ。

なお普段より道路が混んでる気がしたのだけど、7/19より首都高が一時的なオリンピック値上げ(横浜らへんは普通車かつETCでない場合は対象、という条件らしい)なのね。その影響なのかも。


運転でやたらと気力を消耗したので、ゆっくりとすごそうと久しぶりに映画を見に行く。近くの映画館でなにか気になるのをやってないかな、と上映ラインナップを見ると細田守最新作の竜とそばかすの姫が目についたので見に行く。映像、演出、細かなストーリは良く、最後まで飽きずに見れたのだけど、メインストーリーが個人的にはうーん、という感じ。


映画後、昼食はおなじみの L.A.S.T でファヒータスとジャンバラヤ。ここの店は何食べても外さない味の濃いワイルドな美味しさだ。他の店は平日昼間のため安価なビュッフェをやっていて、一度はそちらの店に行こうかとも思ったけど、L.A.S.T で食べてよかった。


家へ帰宅途中、最近はもはや恒例になりつつある外食後30-60分後におとずれる体調不良&腹痛により妻に荷物を持ってもらい(毎度ありがとう)、自宅へ駆け込む。うーん、体調不良対策は外食しなければ良いのだけど…。


夜は Prime Video で無料になっていた、サマーウォーズを久しぶりに見返す。解りやすいストーリで面白い。映画の新作が出ると販促のためか、だいたい関係過去作品が無料になるので、他のまだ見ていない細田守作品も見たいな。

撮影機材α7C/XR RIKENON 50mm F2

2021年7月19日

昼食の和風納豆パスタ。ちりめんじゃこが良い味出している。


TPU 上で学習させるには、データローダの tf.data に対して各種 tf 関数を適用しなくちゃならないのだけど、そのため image data arguments などがしにくい。tf.image.* 系関数でもできるけど、そこそこ低レベル API なので適当にいい感じにやってほしいのだ。そんなわけで TPU を使うのを諦めていたのだけど、tf.keras.layers.experimental.preprocessing を使うと、tf.keras を使って、tf.data に対して image data arguments できるじゃん!欲しかったはこれだ!というわけで処理を書き直して TPUs in Colab で動くように。TPU 速いなぁ。

Keras.Layer クラスは x = layer(x) な関数適用ができるので、普通に keras の Layer としても使えるし、ただ単に関数処理をさせることもできるので tf.data 周りに適用できて、このpreprocessingクラスはなかなか良く出来ている。Python、言語としては圧倒的に Ruby のほうが好きなのだけど、Python の関数はファーストクラスだし、__func__ 実装すれば関数のように振る舞える所は便利だ。

撮影機材α7C/ZEISS Batis 2/40 CF

試食会 / 2021年7月18日

結婚式の試食会へ。当日出る料理のバリエーションをコース料理として出してもらって、本番でのメニュー変更の参考に、という趣旨らしい。美味しい料理なので色々食べれて満足。カジュアルな服装で良さそうだったので、普通にTシャツで行ったら流石にカジュアルとはいえ自分以外全員襟付きだった…。


ローストビーフ、ローストビーフっぽいというよりは良いすき焼き肉でのローストビーフぽい料理で、これはこれでとても美味しい。



今日の機械学習コンペはデータをちゃんと見て、ガチャガチャやって(具体的なことはルール的に書けない) LBスコアが0.516→0.578。0.6ぐらいにはアレコレすれば届きそうだけど、LBのトップが0.734なので、あと2手ぐらい大きな改善がないと届かなさそうだ。

撮影機材α7C/ZEISS Batis 2/40 CF