サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
円安とは
lv4.hateblo.jp
大学の4年生ともなるので、"ちゃんと"論文を読み込んでストックしたいと思い、ブログに読んだ論文を簡単にまとめていきたい。 巷では「百本読むまで人権無し」とも言われるそうなので、できるだけある程度の頻度でアウトプットしていければなと思っている。 (そういうことはないよう努力は尽くすが)間違っていることもあるだろうから、読まれる方はぜひ鵜呑みにせず、遠慮無くご指摘いただきたい。 3行で 3層のニューラルネットを用いて Word Hashingと呼ばれる次元削減手法で効率的に 文章の潜在意味が学習できた 概要 de:code 2016にてMicrosoftの女子高校生風会話エージェント「りんな」のバックエンドについてのセッションがあったのは記憶に新しい人も多いだろう。 http://internet.watch.impress.co.jp/docs/event/20160526_759214.h
この記事はTSG Advent Calendar 2016 - Adventarの25日目として書かれました。 自分既にOBですし、25日目ともなると「何か壮大なネタを…」とか考えあぐねていたのですが、現実的なネタを思いつけなかったので最近やってたことでも書きます。 先日LinuxのNICドライバの開発についてのエントリを書いていたのですが、その与太話でもしようかなと思います。 lv4.hateblo.jp sk_buff構造体 Linuxのカーネル内では、ネットワークパケットはsk_buff構造体によって扱われています。 (ソースコード → Linux/include/linux/skbuff.h - Linux Cross Reference - Free Electrons) 説明としては How SKBs work が非常にナイスだと思います。 要点としては head data t
この記事はLinux Advent Calendar 2016 9日目の記事です。 遅刻してしまい申し訳ございません。。。 とある事情があって1ヶ月半ほど独自NICのLinux向けのネットワークドライバを開発していた。 今回はARM用のデバイスドライバを開発した。NICはXilinx社のFPGAであるZYBOを用いて開発した。 まだ十分に実用段階というわけではないが、ひとまず独自NIC経由でのpingやiperfが通ったので、後学のために知見を残しておきたい(誰得だ、という感じだが)。 ソースコードはまだ公開されていないが、そう遠くないうちに公開する予定(たぶん)。 はじめに Linuxのデバイスには キャラクタデバイス - バイト単位のデータ通信 (e.g. シリアルポート) ブロックデバイス - ブロック単位のデータ通信 (e.g. ディスク) ネットワークデバイス の3種類がある。ネ
この記事はCPU実験 Advent Calendarの1日目の記事である。 1日目なので(?)、とりあえずCPU実験について説明する(とはいえどもこの記事を見ている人でCPU実験を知らない人がいるのかどうかという点については怪しいところだが)。 CPU実験というのは東京大学理学部情報科学科の学部3年の後期に半年間かけて行われる演習のことであり、この学期の授業コマ数11分の6を占めるという、まさに名物演習だ。 受講者(ほぼ情報科学科の3年生)は4人1班に分かれて、それぞれコア係、コンパイラ係、シミュレータ係、FPU係に分かれてレイトレーシングプログラムが動くように自作アーキテクチャを設計してFPGA上でレイトレーシングプログラムを動作させ、その実行速度を競う。 最終的に次のような画像が作られる。 僕はコンパイラ係になった。コンパイラ係は最近はMinCamlというOCamlのサブセットであるコ
普段formを使っているとPOSTでどうやってパラメータが送信されてるとかあんまり意識しないので、Pythonで画像ファイルをPOST経由で送ろうとしたら一瞬で詰んだ。 とりあえずはWiresharkとか使ってHTTPモニタリングして、どんなパケットを送受信してるか観察すると実感が湧くのでやってみるといいと思う。 Pythonでサンプルコード。 #!/usr/bin/env python # coding: utf-8 from poster.encode import multipart_encode from poster.streaminghttp import register_openers import urllib2 if __name__ == '__main__': # Register streaming http handlers to urllib2 global
OS自作を夢見る初心者が手にする本、「30日でできる!OS自作入門」です。 この本自体については賛否両論あるのですが、やはりこれほど単純にOSの作り方が 説明された本はないと思います。 反面C言語やアセンブリ言語についての説明が不適当な箇所が 見られたりするということもあります。この本だけでOSが作れるかというと、 「ノー」と言わざるを得ません。 ですが、一度手に取ってほしい本ではあります。 この本だけにしかない魅力があります。 さて、この本最大のネックである「Windowsの開発」なのですが、 これを今回はLinuxで行ってみたいと思います。 同じようなことをやった他の方もいますし、ブログ記事も既に存在します。 実は俺自身が備忘録としてやっているだけなのは秘密 い、いや、きっとここでしか得られない情報があるはず!はず! というわけで、拙速ながらもゆっくりとやっていきたいなーと思います。
2015年あけましておめでとうございます。去年は年が暮れるにつれて忙しくなってしまい、更新する時間を確保できませんでした。 ネタとしては「MuseScoreのxmlファイルを解析する」だとか「Haskell初心者が基本データ構造を書いてみた」だとかあったんですが。 さて、新年一発目から笑い話が出来たのでここにご報告させていただきますね。 特に飲み会の席の多い大学生や若い社会人には是非とも読んでいただきたい内容です。 背景 元日から高校の先輩2人とお食事する機会がありましたので、元日の夜は歌舞伎町の居酒屋でわいわいおつまみとか頂いていたわけですね。 いかんせん顔を合わせるのが半年かそれ以上振りだったので、他愛もない話に耽っておりました。 そんな感じで一次会終了。21:30。 「キャバクラとかガールズバーとか行かね?」 「新年早々かよwww」って感じでしたが、まあ一人だと行くこともなかろうし人
環境構築するだけしてnumpyすらまともに扱えないのは恥ずかしいので、はじパタのRによる実行例をPythonに移植しながらPythonの科学計算ライブラリに慣れつつ、機械学習にも慣れようという魂胆。 とりあえず第4章から。 irisのデータを用意 scikit-learnには様々な学習データが用意されていて、お決まりのようにその中にアヤメの学習データも含まれている。 from sklearn import datasets iris = datasets.load_iris() print iris.data iris.dataが学習データの本体。 iris.feature_namesがそれぞれの列のラベル。 In [28]: iris.feature_names Out[28]: ['sepal length (cm)', 'sepal width (cm)', 'petal lengt
今までGCCをコンパイルするとき何となしにビルドしていたGMP。 このライブラリ、なんなのかようやく知る機会を得た。 (そもそもビルドするときに何なのか疑問をもつべきではあったが) そもそもこのライブラリ、 GNU Multiple Precision Arithmetic library というらしい。つまり任意精度算術ライブラリだ。 数値の精度 知る人にとっては当然のことだが、普段プログラミング言語で扱う数値には精度の限界がある。 たとえば、いちばんわかりやすい例で言うとC言語のint型は32bitであるため、2^32通りの数値しか表せない。 int型は正数と負数の両方を表せるため、-2^31〜(2^31)-1の値を取り得る。 -2147483648〜2147483647のようだ。 つまり、10桁程度までしか扱うことができない。 これをunsigned intに変えたところで、2倍程度
railsアプリをデプロイするときに最近流行のCIってやつに乗ってみるかと思って、普段なら手動デプロイしていたところを自動デプロイすることにした。 調べてみたらどうやらcapistranoという、ほぼデファクトスタンダードになっているgemがあるとのことだったので、使うことにした。 ところがこのcapistrano、2013年8月頃に3.xにメジャーアップデートしたらしい。 しかも、このアップデートで2.x系との互換性を捨ててしまったらしく、3.x向けの情報がやたらと少ない。 ここでおとなしく2.xを使えばよかったものの、新物に目がない僕は3.xを使うという愚行を下してしまったのだった… というわけで、1日半くらいはハマりました。 この記事で少しでも多くの人がcapistranoを上手く使いこなし、自動デプロイの恩恵に与れることを期待しています。 capistranoの基本的な使い方 僕は
ハマりました。 どうやらpyenvとOpenCVの仲が非常に悪いらしい。 なので、とりあえずpyenvを一回止めて、systemのpythonにOpenCVを入れるところから始めました。 pyenvをインストールしたときに.bash_profileか.bashrcあたりのどこかに if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi export PATH=$HOME/.pyenv/bin:$PATH export PATH="$HOME/.pyenv/shims:$PATH" みたいな呪文を書いたでしょうから、これをコメントアウトします。 そうしたら、まずはOpenCVの情報を見てみましょう。 opencv: stable 2.4.9, HEAD http://opencv.org/ Not installed /usr/
これ、割と困ってる人多いんじゃないかな。 LaunchPad、普段使う分には支障はないんだけど、アプリを追加したり削除しようとすると途端に融通が利かなくなる。 追加は/Applicationsに入れればいいけど、消すのは一苦労。 1. optionキーを押す optionキーを押すと、iOSみたいにアイコンがぶるぶる震える。 そのときに左上に出てくる「x」を押せば消せる。 ただし、これはApp Storeからダウンロードしたアプリのみ。 2. LaunchPad-Controlを使う 標準のLaunchPadでは乏しい設定機能等を付加するプラグイン。 詳しい使い方はググれば結構まとまってるので割愛。 ただし、これは不要なアイコンを隠すだけなので、根本的な解決にはいたらない。 個人的には悪くはないと思うので、基本的にはこれを使う。 3. データベースをいじる 普通ならLaunchPad-Co
このページを最初にブックマークしてみませんか?
『lv4.hateblo.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く