はじめに
@making さんからオファーをいただいて、12/17 (水) の JJUG ナイトセミナーで Java でカジュアルに機械学習するお話をしてきました。
Java というコミュニティ的に機械学習ガチ勢の方が圧倒的に少ないことが予想されたので、あんまり小難しい技術の話は含めず初学者向けの内容構成とし、機械学習をシステムに組み込んでいく上でこれは大事だよね… と個人的に思っているポイントを整理してスライドにしていったら、文字が多くなってしまった上に若干エモくて Java 的な話がほんのり程度になってしまったのが今回の反省点です。
なお講演時の動画が YouTube にアップロードされています ので、より詳しい話を知りたい場合はこちらをご覧ください。
Java と機械学習
Java で動く機械学習ライブラリ・フレームワークはわりと数多あって、でも Java で機械学習を利用する際のワークフローをすべてカバーするのがいいかというとそんなことはない、と私は考えています。
特に、モデルを作る際の...
2014-12-13
はじめに
会社の合宿予定が入っていて参加できそうになかったので、やむなく参加を見送っていた 12/13 (土) の 第九回 渋谷java でしたが、思ったより早く東京に戻ってくることができたので、下記のように
@komiya_atsushi @jflute できますよー。LT枠空いているので是非お願いしますw— Naoki Takezoe (@takezoen) 2014, 12月 13
と参加できそうなのかつぶやいてみたところ、カジュアル無茶ぶりコメントをたけぞー先生よりいただいたので適当にネタをでっちあげて LT 発表してきたのでした。
SmartNews ♥ Slack
@amachino さんが先日 Slack の Advent calendar に投稿したとおり、スマートニュースでは 社内のコミュニケーションに Slack を活用しています。
通常の人同士の会話だけでなく...
2014-10-22
最近 Redshift を触っていて、圧縮エンコードについて調べることがあったのでメモメモしておきます。なお、2014 年 10 月時点での情報であることと、わりとざっくりとした確認だったので不正確な情報が混じっているかもしれないのでご承知おきください。
文字列データ (VARCHAR など)
選択肢としては、 text255, text32k, bytedict, lzo あたり
空間効率的には text255 text32k はあんまりよろしくなさげ
また、text255 はカラムサイズが 255 を超えるカラムに適用することができない (厳密には、255 バイトを超える文字列が入っている場合に適用できない、となる)
値の種類数が少なく (目安として、256 個以下ぐらい)、かつ種類が増える可能性が低い場合
bytedict もしくは lzo を選ぶのがよい
種類数が 256 を超える場合であっても、出現頻度に偏りがある場合は...
2014-09-21
2014-09-17
2014-09-15
「えーマジ native2ascii!?」「プロパティエディタプラグインが許されるのは J2SE 5.0 までだよねー」
ジャバエンジニアはそろそろ、プロパティファイルを扱う場合に native2ascii やら各種プロパティエディタプラグインやらの呪縛から解放されてもいいと思うのです…
概要
Java でアプリケーションの各種設定を記述したプロパティファイル (.properties) を取り扱う場合、 Properties クラスもしくは ResourceBundle クラスのお世話になるかと思います。
一昔前までは、プロパティファイル内で日本語などいわゆるマルチバイト文字を含む場合に、 native2ascii コマンドを利用して ASCII コードの文字のみで表現できる ユニコードエスケープ (!= UTF-xx エンコーディング) 表現に変換することが必要とされていました。
しかし、Java...
2014-09-11
2014-08-21
2014-06-10
2014-04-07
ようやく Ansible 始めたけど右も左も分からない初心者なので、忘れないようにメモっておきます。
ssh 接続に関する情報をどこに記述すればいいのか?
方法 1: .ssh/config に記述する
ssh コマンドが参照する .ssh/config ファイルに、ssh 接続に必要な情報を記述する方法です。
Host hoge.example.com
HostName hoge.example.com
User deployguy
IdentityFile ~/.ssh/id_rsa.hoge.example.com
普段お使いの .ssh/config を Ansible にそのまま流用・活用することができるため、
開発者ごとにサーバへのログインアカウントが異なる場合に適している方法と言えるでしょう。
一方で、Ansible...
2014-03-31
2014-02-27
lz4-ruby の開発を進めるために、LZ4 の近況を確認してみたところ、
それなりに活発に開発されているようで変更点が多かったため、メモを兼ねてエントリにまとめてみました。
r76 から r113
までの変更履歴を追う形で、主だった変更を列挙していきます。
API が増えた
r76 の時点ではマクロを含めて 6 個だった API が、r113 では obsolete を除いても 36 個と大幅に増えました。
LZ4 の基本機能は以前とはそう変わらないものの、後述するストリーム処理用 API など、
利用シーンごとに適した API を拡充しているようです。
liblz4 が作成されるようになった
r111 より。
以前の LZ4 は Makefile はあれど make してもライブラリは生成されず、
そのためアプリケーションから LZ4 の圧縮・伸長機能を利用しようとすると、
アプリケーションのビルド時に...
2014-01-21
はじめに
2.x 系が公開されているこのご時世に、やんごとなき理由により OpenCV 1.0.0 をソースコードビルド&インストールしなければならない状況、エンジニアの皆さんなら一度や二度は経験していますよね。ね?
今回、Ubuntu 12.04 LTS 上で OpenCV 1.0.0 を苦労しながらソースコードからビルドしてみたので、そのメモを残しておきます。
1. パッケージのインストール
パッケージのインストールなどを先に済ませます。個人的な好みで aptitude を使っていますが、 apt-get でも同様にインストールできるはずです。
sudo aptitude install build-essential
# コンパイルエラー/リンクエラーを阻止するために、これはインストール必須。
sudo aptitude install libv4l-dev
$...
登録:
投稿 (Atom)