アルバム・オブ・ザ・イヤー 2016

2016年に初めて聴いたアルバムで気に入った9枚を書きます。

ネットワークスタック内の謎の2バイトについて探る

この記事はTSG Advent Calendar 2016 - Adventarの25日目として書かれました。自分既にOBですし、25日目ともなると「何か壮大なネタを…」とか考えあぐねていたのですが、現実的なネタを思いつけなかったので最近やってたことでも書きます。 先日LinuxのNICド…

Linuxネットワークドライバの開発

この記事はLinux Advent Calendar 2016 9日目の記事です。 遅刻してしまい申し訳ございません。。。とある事情があって1ヶ月半ほど独自NICのLinux向けのネットワークドライバを開発していた。 今回はARM用のデバイスドライバを開発した。NICはXilinx社のFPGA…

情報幾何の基礎とEMアルゴリズムの解釈

大学の演習で1ヶ月ほど(本気で取り組んだのは事実上最後の1週間だけだったが…)情報幾何について発表したので、資料を公開してみる。 数学的な厳密さよりも、できるだけ前提知識の無い人にもわかりやすく、を意識して説明を心がけたので多方面からマサカリ…

d3.jsで通信トラフィック可視化をやってみた

ゼミでSparkのノード間通信を可視化しようという話になった。 肝心のクラスタがグローバルネットワークから隔離されており、ログインノードからしかアクセスできないという環境だったので、 クラスタで収集したパケットキャプチャログをログインノードに送る…

Apache Sparkで特異値分解

Slacaなんて2年ぶりくらいに書いたし、ぶっちゃけほとんど何も覚えてなかったので、今後Sparkを使う可能性がある上で備忘録として。 ちなみに、Scala, sbt, Sparkのセットアップについては触れない。 import org.apache.spark.SparkContext import org.apach…

No bad local minima: Data independent training error guarantees for multilayer neural networks

今まで「3行で」コーナーやってたけど、「概要でよくね?」という気がしてきたし、なんとなく馬鹿らしくなってきたのでやめる。"No local bad minima"というタイトル見た瞬間面白そうだと思ったので読もうと思った。 概要 ニューラルネットの学習誤差をネッ…

Learning Multiagent Communication with Backpropagation

果たしてこのシリーズが続くのか、はたまた3日坊主になるのか。 (まあ流石に毎日やるつもりはないのだけど) 3行で マルチエージェントシステムに関して 相互に通信するようなニューラルネット(CommNNと呼ばれている)を用いて制御 交通渋滞回避などに応用で…

Learning Deep Structured Semantic Models for Web Search using Clickthrough Data

大学の4年生ともなるので、"ちゃんと"論文を読み込んでストックしたいと思い、ブログに読んだ論文を簡単にまとめていきたい。 巷では「百本読むまで人権無し」とも言われるそうなので、できるだけある程度の頻度でアウトプットしていければなと思っている。…

只見線日帰り旅行に行ってきた

あけましておめでとうございます。僕は長期休暇にだいたい青春18きっぷを購入しているのですが、今回も例によって余らせてしまった(しかも3日分)ので、期間内にどこかに旅行しに行こうと思って日帰り旅行できそうな場所を調べていたところ、matome.naver.j…

CPU実験でTravis CIを使ってみた

この記事はCPU実験 Advent Calendar 2015の15日目の記事です。CPU実験において、僕の班は(主に僕の独断で)Travis CIを導入しました。 もう一度CPU実験の概要について説明します。CPU実験では主に コア係(VHDL) コンパイラ係 シミュレータ係 FPU係(VHDL) の…

CPU実験でコンパイラの改造でハマったところ

東大理学部情報科学科の3年生が毎年くぐる関門であるCPU実験で、コンパイラ係として1stアーキテクチャが完動したところで所感を述べます。

Travis CIでOCamlを使うまでの道のり

Travis CIはGithubのhookと連携して、push時に自動的にテストを通す、所謂CI、継続的インテグレーションツールというやつだ。 本記事ではTravis CI自体の詳細な使い方に触れることはしない。公式ドキュメントをたどれば結構親切に説明されている。Travis CI…

CSAW CTF Quals 2015 Reversing 200 Writeup

CTF

この2日間CSAW CTF Qualsが開かれていたようなので、大学のサークルの中でCTF team無所属勢として参加してみた。 1日目はおでかけしていたので、夜行で東京に帰ってきて2日目昼ごろから参戦。 いかんせんCTF初心者なのでいろいろ手間取り、結局最終的にRever…

初心者でもできるはじめてのPull Request

先日Google Summer of Code 2015に応募した。 応募プロジェクトはPython Software Foundation (以下PSF)のサブプロジェクト、SciPy。 ざっくり言うと「SciPyには使い勝手のいい微分モジュールが無いから実装しようぜ」という内容のproposal。 PSFは「proposa…

GHDL on OS X

学科の課題でVHDLを書く必要があったのだけれど、持ち合わせてるPCがMacだけだったので、環境構築でいろいろと苦労した。 推奨環境はAltera社のQuartus II Webpackだったのだが、残念ながら今のところwineを使ってもうまく動かせなかったのでGHDLを使うこと…

新年の挨拶と元日の出来事

2015年あけましておめでとうございます。去年は年が暮れるにつれて忙しくなってしまい、更新する時間を確保できませんでした。 ネタとしては「MuseScoreのxmlファイルを解析する」だとか「Haskell初心者が基本データ構造を書いてみた」だとかあったんですが。

Yosemiteでmecab-pythonを入れた話

なんか昔Mavericks時代にmecabを入れようとしたら全然入れられなかった気がするけど、Yosemiteにあげてから brew install mecab brew install mecab-ipadicでやると一瞬でインストールできた。brewが賢くなったのかな。でもその代わり、Pythonバインディング…

本当にあった怖い話「Yosemiteにアップグレードしようとしたら起動しなくなった」

タイトル通り。日頃からTimeMachineをちゃんと使ってバックアップしていなかったことを盛大に後悔。 なんで起動しなくなったの アップグレード中に電源が落ちました。 仕事のデータも大学の課題も全部入っていたので、その瞬間凍りついた。 起動しないってど…

Tomoeのインストール

OCR

Tomoeという日本語の手書き文字認識ライブラリがある。 手書き文字認識エンジン Tomoe 使いたいと思ったのだが、Macでビルドしようとしたところビルドエラーが出たので、その解決方法をメモ。 その1 tomoe-0.6.0/lib/glib-utils.hを開いて #include <glib/garray.h> を #inc</glib/garray.h>…

U-22プログラミング・コンテスト入選

U-22プログラミング・コンテスト2014 U-22プログラミング・コンテスト2014実は、8月末に参加したサイボウズ・ラボユースHackathonで制作した文字認識エンジンを、締切10分前にU-22プログラミング・コンテストにSubmitしていました。 正直なところ決して高い…

学科進学など

しました。理学部の情報やる感じのところです。<感想> 地下室にいると本当に時間感覚がなくなって時間が溶ける 地下なのでLTEは入らない 教授陣の「うちの学科はつらいこともあるかもしれませんが」の連発 地下室にベッド&冷蔵庫&電子レンジ完備 本棚にパ…

ChromeでSinatraのCookieを正しく動作させる

SinatraでCookieを(とりあえず)使う まずはsinatra-contribというgemが必要。Gemfileに gem 'sinatra-contrib' と書いてbundle installするか、 gem install sinatra-contrib でインストール。そうすると require 'sinatra/cookies' でCookieが利用できる…

SIMDの使い方メモ

C++

勉強を始めたばかりなので間違ってるところもあるかもしれないので、ツッコミがあると嬉しいかも。 SIMD - Simple Instruction Multiple Data 単一命令で複数データを扱う仕組み。イメージとしては と4回足し算するよりも の方が足し算一回で速いだろ?って…

サイボウズラボユースHackathon 2014に参加してきた

文字認識システムShrift from levelfour 最終日のスライドです。取り急ぎ報告ということで。 ちなみにサイボウズのブログとか見ると僕がバッチリ映っているのですが、探さないでください。

HTTPリクエストで画像をPOST送信

普段formを使っているとPOSTでどうやってパラメータが送信されてるとかあんまり意識しないので、Pythonで画像ファイルをPOST経由で送ろうとしたら一瞬で詰んだ。 とりあえずはWiresharkとか使ってHTTPモニタリングして、どんなパケットを送受信してるか観察…

はじパタ4章 with Python

環境構築するだけしてnumpyすらまともに扱えないのは恥ずかしいので、はじパタのRによる実行例をPythonに移植しながらPythonの科学計算ライブラリに慣れつつ、機械学習にも慣れようという魂胆。 とりあえず第4章から。 irisのデータを用意 scikit-learnには…

ScalaNLPを使う

Scala用の科学計算ライブラリを引き続き探していたところ、ScalaNLPというのを見つけた。 名前通りNatural Language Processing、つまり自然言語処理用のライブラリなのだが、数学周りも結構充実しているし、何よりScala向けにチューニングされたライブラリ…

ScalaでApache Commons Mathを使う

Scalaで科学計算をしようとしたんだけど、Scalaのデファクトスタンダードっぽいライブラリがない。 仕方ないので、Javaのライブラリを読み込むことにした。 JavaにはApache Commons Mathという良さげなライブラリがあったので、それを使うことにした。Math -…

python3.4.0でscikit-learnでインストール

pip3 install scikit-learn でビルドエラー発生。 これを踏んだの2回目なので書いておく。 ちょいと調べればすぐに出るんだけどね。 sklearn/cluster/_k_means.c:7955:19: error: no member named 'f_tstate' in 'struct _frame' (*frame)->f_tstate = tstat…