ぼくのかんがえたさいきょうのキーマップ への挑戦

せっかく自作キーボードを使い始めてキーレイアウトが今までと変わったんだし、キーマップも変えて色々試してみよう、と思い 挑戦中。 以前までの使い方 今までの自分はMBP持ち歩いているとき以外はキーボードはHHKB(Professional? 英語配列のもの)を外付け…

電子工作 3作目・ErgoDash

HelixPico、Mint60 に続いて、自作キーボード 3作目。 はじめての電子工作: HelixPico - すぎゃーんメモ 電子工作 2作目・Mint60 - すぎゃーんメモ 今回作ったのは ErgoDash。 この記事はErgoDashを使って書いています。 booth.pm 本当はMint60より先に購入…

電子工作 2作目・Mint60

HelixPicoに続いて、自作キーボード 2作目。 memo.sugyan.com 今回作ったのは、ゆかり(id:eucalyn)さんの「Mint60」。 この記事はMint60を使って書いています。 eucalyn.hatenadiary.jp 少しお値段はするけど、必要なものが全部揃ってるスターターキットを購…

はじめての電子工作: HelixPico

HelixPico キーボードキット | 遊舎工房 なんとなく興味は持っていたものの第一歩を踏み込めずにいたのだけど、Twitterに書いたら一気に物事が進んだ。 最近すこしずつ自作キーボード挑戦してみたい気持ちが高まっている…— すぎゃーん (@sugyan) October 11,…

学習済みMobileNetV2モデルによる推論をTensorFlow.jsとWebWorkerを使ってブラウザ上で実行

将棋駒画像分類の話の続き。 memo.sugyan.com 学習させたモデルでの分類結果を実際に試すときに Web上でもインタラクティブに出来ると便利そう、と思ってやってみた。 学習させたMobileNetV2のモデルを使ってTensorFlow.jsでの推論をWebWorker経由で行わせて…

ISUCON8 予選敗退した

ISUCON8。 今年は予選日程の両日に奈良で開催のHackathonイベントのお手伝いをする用事が入ってしまい、参加不可能だな〜という雰囲気だったのだけど、 イベントの初日は午後からで最初はチームビルディングとかの時間で出番無いはずだし多少は動けるかも…?…

Hammerspoonを使ってキーボードショートカットでTwitter LiteにFocusする

Mac

Sierra以降、KeyRemapとLauncherを兼ねて Hammerspoon を使っている。 memo.sugyan.com local function launcher(mods, key, appname) hs.hotkey.bind(mods, key, function() hs.application.launchOrFocus('/Applications/' .. appname .. '.app') end) end…

斜めに写った画像をCanvasで矩形に補正する

将棋駒画像分類の話の続きのような、あんまり関係もないような。 memo.sugyan.com memo.sugyan.com 結局、素材を組み合わせて自動で生成しただけの駒画像ではやはりデータが足りていないようで、「やはりもっと様々な画像から人力でラベル付けしてデータセッ…

TOKYO IDOL FESTIVAL のタイムテーブル画像化ツール 2018

TOKYO IDOL FESTIVAL (#TIF2018)、自分の行きたいところだけ選んで組んだタイムテーブルをこんな感じに1枚絵の画像で生成できるWebアプリを今年も作りました。ご自由にお使いくださいhttps://t.co/YKIw7BRq5P pic.twitter.com/onxE9CIm2B— すぎゃーん (@sugy…

将棋駒画像分類をMobileNetV2で最初から学習させる

前回の将棋駒画像分類の話の続き。 memo.sugyan.com TensorFlow Hubの学習済みモデルを利用して 最終層にあたる部分だけ(?)を再学習させることで簡単に特定ドメインの画像分類のモデルを作成した。 …が、結果としてあまり精度が良くなくて、特に未学習の画…

interface要素を持つstructへのJSON Unmarshal

Go

ちょっとやり方が分からなくて調べたのでメモ。 例題 type hoge struct { Foo int `json:"foo"` Bar baz `json:"bar"` } type baz interface { hoge() } type fuga struct { Fuga string `json:"fuga"` } func (*fuga) hoge() {} という感じで "foo" は int …

Google Code Jam 2018: Round 1C

Google Code Jam の第1ラウンド。 ・予選のときの記事はこちら memo.sugyan.com Round 1は時間制限が2時間半、3回行われてどこか1つで上位1,500人に入れば次に進める、というもの。 多分毎回ここで脱落していた 1Aは土曜日の早朝で起きられなくて断念、1Bは…

将棋駒画像の分類器をラクして作る

ちょっと将棋関連の画像認識をやってみたいな、と思って。 理想的には、将棋の盤面の写真や盤面図の画像から認識を行い 盤面の状態をデータとして取得できるようにしたい。 となると、 入力画像から盤面の部分を検出し、切り出す 切り出した盤面をさらに、9x…

Google Code Jam 2018: Qualification Round

Google Code Jamに今年もチャレンジ。 (昨年の: Google Code Jam 2017: Qualification Round - すぎゃーんメモ) 今年もRubyで、と思って最初の問題を解いてコード提出してみたのだけど、Runtime Errorになって上手くいかなくて、なんで??と思ってPython3に…

YAPC::Okinawa 2018 に参加した

yapcjapan.org 一昨年のHokkaido、昨年のKansai、Fukuokaと参加できていなかったので YAPC::Japanのイベントは今回が初参加。 沖縄こそは行きたい! と思っていたので、ついに参加することができて嬉しいです。 もうPerlは全然書かなくなってしまったけど、…

df-pnアルゴリズムを用いた詰将棋Solverによる最善解・余詰の導出

以前書いた、詰将棋問題生成の続き。 memo.sugyan.com 逆算による詰将棋の問題生成の方法自体は悪くないとして (バグによって有り得ない局面が出来上がったりしてしまったりもしたけど)、正しく詰将棋問題として成立するものが出来上がっているかどうかを検…

ISUCON7 勝てなかった

ISUCON7に id:kazeburo さんと id:gfx さんと、チーム「スギャブロエックス」で出場して、入賞もならず、最終結果5位で終わりました。 うーん 悔しい。 お題 WebSocketで通信しつつ各ルームで複数のユーザが操作するので同期をとりながら値を更新していく、…

逆算方式による詰将棋の問題生成プログラム

将棋を始めた ので、詰将棋を毎日のように解いているのだけど、せっかくなら詰将棋の問題を自動生成してみたい、と思って試してみた。 前提知識 詰将棋とはどんなものか 攻め方(先手)が玉方(後手)の玉を詰ますのが目的。 攻め方は必ず王手をかける(玉方…

ISUCON7 予選通過した

ISUCON7に id:kazeburo さんと id:gfx さんと、チーム「スギャブロエックス」で出場して、2日目の上位3チーム枠の2位で予選通過しました。 isucon.net スコアの遷移は以下の通り、最終スコアは 522,461。 時刻 スコア 2017-10-22T13:06:44 6012 2017-10-22T1…

「[改訂新版]Emacs実践入門」を読んだ

この本です。 [改訂新版]Emacs実践入門―思考を直感的にコード化し、開発を加速する (WEB+DB PRESS plus)作者: 大竹智也出版社/メーカー: 技術評論社発売日: 2017/09/22メディア: 単行本(ソフトカバー)この商品を含むブログを見る 著者tomoyaさんによるエン…

顔検出に関する最近の論文

Face Detector関連だけでもなんか色々あるようだ。 [1708.05234] FaceBoxes: A CPU Real-time Face Detector with High Accuracy [1708.05237] S$^3$FD: Single Shot Scale-invariant Face Detector [1708.03979] SSH: Single Stage Headless Face Detector …

TensorFlowで顔検出器を自作する

19日に行われた Kyoto.なんか #3 で発表・デモをさせていただいた内容まとめです。 はじめに: 検出器の重要性 アイドル顔識別 をずっとやっている中で、顔の識別・分類(Classification)はCNNを使って出来ているけれど まだ上手く出来ていない別のタスクがあ…

ターミナルでの炎上のさせ方

Go

話題になってたコレが面白いなーと思って ~簡単!炎上のさせ方講座~ pic.twitter.com/fKSOXj1Xeb— じゃがりきん (@jagarikin) 2017年8月7日 ターミナル上でそれっぽく再現させてみた。 こんなかんじ。 (これの作成は以前に作ったttyrecからGIFアニ生成やつ…

builderscon tokyo 2017 に参加した

builderscon.io 昨年は不参加だったので、今年が初参加。 話した 折角なので何か話してみよう、と応募したところ無事に通ったので、以下のセッションでトークをさせていただきました。 DeepLearningによるアイドル顔識別を支える技術 - builderscon tokyo 20…

「TensorFlowはじめました2」を読んだ

TensorFlowはじめました2 機械学習で超解像─Super Resolution (NextPublishing)作者: 有山圭二出版社/メーカー: インプレスR&D発売日: 2017/06/02メディア: オンデマンド (ペーパーバック)この商品を含むブログを見る 「TensorFlowはじめました」を読んだ - …

KarabinerからHammerspoonへ

Mac

そろそろ新しいMacBook欲しい… けど El Capitan から Sierra になるとKarabinerが使えなくなるって話だし… とか色々不安があり躊躇していた。 代替、というかちゃんと設定すれば代替できそうなHammerspoonが良さげだったので それを使ってKarabinerからの脱…

Google Code Jam 2017: Qualification Round

プログラミングコンテスト Google Code Jam。 以前にAOJを始めた ものの 情けないことに結局2週間くらいで止まってしまい、それ以来ずっとこれ系からは離れてしまっていたけど、Code Jamは何故か毎年チャレンジしている(毎回すぐ予選落ちしてるけど)ので、今…

TensorFlowによるDeep Learningでのアイドル顔識別モデルの性能評価と実験 その2

以前に試した、アイドル顔識別の性能評価。 memo.sugyan.com それから半年以上も経ってデータ数も増えたし ちょっと確かめたいこともあったので、再び試してみた。 新データセット 前回は 40人×180件 で 計7,200件 を用意したけど、今回はもう少し多めにデー…

TensorFlow 0.12 のEmbedding Visualizationを動かす

=== 追記 2017.06 === 書いてから時間が経ち 情報が古くなってしまっていましたが、最近の変更に合わせた補足を含む記事を書いていただきました。ありがとうございます! fuchami.hatenadiary.jp === 追記ここまで === おぉぉ、TensorFlow 0.12のEmbedding V…

アイドル顔識別のLINE BOTを作りました

記事要約 機械学習によるアイドル顔識別のLINE BOTを作りました。アイドル分かる人は是非 友だち追加して アイドル画像を送りつけて遊んだりしてみてください。 むしろ識別対象のアイドルさん御本人にも使ってもらえたら最高 BOT概要 TensorFlowによるアイド…