2024.12.24
「経営陣が見たい数字」が見えない状況からの脱却法 経営課題を解決に導く、オファリングサービスの特長
リンクをコピー
記事をブックマーク
antimon2氏:いろいろやってるんですけど「で、具体的になんか作ったものないの?」っていう話だと思うので、その紹介もしていきます。
まず公式に登録しているパッケージがあります。旧暦の計算をするライブラリで、自分の趣味と言うか、個人的な必要に迫られて作ったやつです。せっかくだから公開するかってことで公開して、ちゃんとJuliaのバージョン0.5以降で、1.0でも今動きます。
これは公式なので、「add QDates」っていうふうにパッケージREPLでタイプするだけで実行できます。実行結果はこんな感じです。using QDatesってやってQDates.today()ってやると、旧暦の今日の日付。これ昨日実行した結果なんで昨日の日付が出てるんですけど。1を足すと次の日になったり。1日だけじゃなくてもちろん1ヶ月前、旧暦の1ヶ月前の年月日を出したりとかっていうこともできます。そういうのを公開してます。
公式なパッケージは今のところこれだけなんですけど(笑)、ほかにもいろいろとGitHubで公開してるので。オレオレパッケージになってるやつは、addでURLを直接指定すればインストールできるようなものはいくつか置いてあるんで。興味があったらちょっと覗いてみてください。
仕事ではどうなのかっていう話なんですけど、実績はないです。実績ないって言うか、明確に外に向かって「Juliaでこういう仕事しました」「こういうプロダクトを作ってます」っていう実績がないだけで、仕事で使ってることは使ってます。
いくつかその中でも話題にのぼってもよさそうなやつを紹介すると、PCLっていうライブラリがあるんですけど、C++のライブラリで「Point Cloud Library」という、3次元上の点を見つけて、カメラで点を見たときの深さとか距離を測って、3次元の物体認識をしたり。そういうのに応用できるライブラリで、それをJupyter Notebook上でやれたらおもしろいねって話になってて。
それを実験するのにJupyterだったらJuliaでやってみようかって話してたんですけど、このときちょっとうまくいかなくて。(Juliaのバージョンが)0.5だったからってのもあったと思います。うまくいかなくて断念しちゃいました。案件そのものは違うかたちで納品までは持ってったんですけど、こういうことで実験はしてみてます。
もう1つ実験的にやったやつが、KinectとOpenNIを組み合わせました。KinectはMicrosoftのやつですね。あれでさっきと同じように物体の3次元的な距離とかを認識して、それをOpenNIを使って解析して、それをさらにJuliaで制御して、人を検知したり姿勢を検知するっていうのがとりあえずテーマで。
それをJuliaから利用するっていう実験をやろうと思ってたんですけど、これはそもそも案件そのものがお蔵入りしちゃって、日の目を見ることがなくて。そもそもKinectとかOpenNIっていうのが、今はぜんぜんもう出てこなくなっちゃって。残念ですけども、しょうがない。
あと細かい社内製ツールはJuliaで作ってるものもあります。というかオレオレツール類ですけど。例えばファイル一括変換。CSVの中身を一括で変換したりとか。ちょっとLinuxとか強い人はシェル芸でできるよ、ってレベルなツールとかも多いんですけど、一応Juliaでいろいろやってはいます。
ただそれだけだとアレなので準備を裏で着々と進めていて、それがさっきちらっと言ったユニットテストの話です。前回の自分の勉強会でも発表したんですけど、Qiitaの記事にもこの間まとめたやつで、例えばこんな感じです。Juliaでちゃんとテストを追加すると、コマンド一発でよくあるユニットテストみたいな感じで。これは、このときはパスして。エラーの例が出てないんですけれど、こういうのはちゃんとできますよと。
これのいいところは、ちゃんとユニットテストになってるって言うか、エラーが1個でもあれば終了コードが0じゃなくて1になるので失敗したってことがコマンドレベルでわかります。CIとかにもちゃんと使えるようになってるということです。
ほかにも例えば、ついこの間追加したんですけど、WiGっていう機械学習で使う新しい活性化関数を提案した人がいて。それ実際どうなのっていうのをJuliaで試しに実装してみて動かしてみたっていう実験なんですけども。これもGitHubで公開してます。
実行するとこんな感じになります。確かにある程度ちゃんと動くんですけど、WiG使わないほうが速かったんです。精度もそんなに変わらないっていうことがあったんですけど。とりあえずJuliaでちゃんと実装して実験をしてっていうことをやっています。
あとはそもそもJuliaでプロジェクトで作るにはどうしたらいいかっていうのと、Juliaの特有の書き方とか。あとJuliaと、Fluxっていうディープラーニングに使えるライブラリが今1番ホットだと思うんですけど、それを使って実際に機械学習のタスクを構築してそれを回すっていう回し方とか。いつでも誰でもJuliaで開発することができるように、社内のwikiみたいなところとQiitaにも少しずつまとめていこう、ということをやってます。
目に見える実績としてはGitHubにいくつか上げてるので、それを見てくださいレベルのことしかやってないって言えばやってないんですけども、一応そんなことをやってます。
ということで、実績の話も終わりで。そろそろ時間なのでまとめに入るんですけど、まとめとしては結局「I ♥ Julia」ってことで(笑)。以上です。
(会場拍手)
bicycle1885氏:なにか質問ある方はいらっしゃいますか。
(会場挙手)
質問者1:仕事のツールでJuliaを使ってて、0.5から1.0とかに変わったときに、だいたいいろんなリポジトリライブラリが動かなくなったりあるじゃないですか。そういうの、ぶっちゃけ怖いなって思うときってないですか。
antimon2:実際ありますけど、逆に0.5とかの時代には、「まだちょっと早いな」っていう。絶対もうすぐ1.0出るから、それまではなるべくテンション抑え目にしておこうと思って。1.0が出てから、1.0で動くライブラリを中心にまとめてるところです。
だから今まで0.5を使ってたのは社内では自分だけだったので、それ以外の人には1.0を初めから使えばいいよという感じで勧めています。さっきの機械学習のライブラリにFluxっていうのがあるんですけど、それは1.0よりも前から出てて、1.0になったときにすぐ対応してたので。じゃあFlux使えばいいやと思ったので。
逆に最初のほうに出たMXNetとかは、1.0に今まだちゃんと対応してなかったりしてるので。そこは自分がうまいこと見極めて、誘導していこうというふうに考えて今やっていっています。
bicycle1885:ほかにはなにかありますか。
(会場挙手)
質問者2:Fluxの仕組みのことなんですけども、実際触ってみて良い点とか悪い点とかってどんなものが。
antimon2:Fluxの1つの特徴は、例えばconvolutionとかdenseとか、Chainerみたいな感覚で定義できます。だからネットワークがすごく組みやすいっていうのと、あと学習もだいたいフレームワークで、ここに投げれば学習してくれるっていう仕組みができてて。そういう意味でChainerとかkerasも似たような感じかな。そういうのでやってれば移行は簡単です。
Knetっていう別のライブラリも試してたんですけど、そっちはJuliaフレンドリーで、Juliaっぽく書いてそれを構築していく感じなんです。ただ、そのへんのネットワークの構築がちょっと面倒くさいのと、あと実際動かしてみて、CPUで動かしてもKnetよりもFluxのほうが学習がむちゃくちゃ速かった。なんかうまいこと最適化しているんだろうという。
そのへんはちょっと追い切れてはいないんですけど、ただそういうのも含めてFluxのほうがなんか使いやすそうだなっていう。今んところの感覚はそんな感じです。
bicycle1885:ほかにはありますか。……じゃあ、ありがとうございました。
antimon2:ありがとうございます。
(会場拍手)
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.20
「資格のかけ算」で切り開くキャリア戦略 4パターンの資格の組み合わせで自分の強みを最大化するヒント
2024.12.23
DMM亀山会長が語る、事業撤退の見極め 600もの事業に挑戦した中でロジックよりも大事にしていたこと
2024.12.24
なぜ「場当たり的」なタスク処理になるのか? マッキンゼー流、「優先順位づけ」のポイント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」