Deep Karmaning

技術系の話から日常のことまで色々と書きます

Streamlitでダッシュボードを作成中です

現在Streamlitというフレームワークを用いてダッシュボードを作成しています。 www.streamlit.io StreamlitはRで言うところのShinyみたいなもので、データを主軸にしたウェブアプリケーションを簡易に作成するために利用できます。 これを用いて作るアプリケ…

多クラス分類におけるAccuracyとF1スコアのマイクロ平均は同じ

多クラス分類におけるAccuracyとF1スコアのマイクロ平均が同じ値になることを知ったので、メモとして書き残しておきます。 クラス分類における各種指標の計算式は以下が詳しいです。 ibisforest.org マイクロ平均とマクロ平均の違いは以下が詳しいです。 www…

deck.glの開発環境をdockerで構築する

概要 deck.glというUberで開発されているWebGLを使ったデータ可視化ライブラリがあります。 deck.gl こんな感じの可視化ができてとても格好いいです。地図にデータをマッピングして可視化するのが得意な印象です。 そんなわけでdeck.gl使いたいなあと思って…

pleasurefyというJoy Divisionの『Unknown Pleasures』のアートワークっぽく音源の波形を可視化するアプリ作りました

概要 pleasurefyというJoy DivisionのUnknown Pleasuresのアートワークっぽく音源の波形を可視化するアプリ作りました。 Joy Divisionは1970年代くらいの格好いいポスト・パンクバンドで『Unknown Pleasures』というアルバムのジャケットもとても良いです(…

不偏分散の考え方

概要 不偏分散がなぜ標本分散をnではなくn-1で割るのかを理解するために考え方をメモしておきます。 単純に標本分散の期待値をとると母分散に一致しないので、一致させるためにn-1で割っているという理解をしています。 不偏分散の考え方 標本X1, ...,Xnがあ…

luigiを使ってRスクリプトを実行してみる

概要 luigiという便利なバッチ実行のpythonフレームワークがあるのですが、その中でRのスクリプトを呼び出して使う例をあまり見なかったので、やってみました。 実行できる環境はdockerfile化しています。 github.com 実装 環境の準備 まずは環境の準備です…

Dockerを使った予測モデルのapi化の試み ―サーバーはGo、予測モデルはPython、R、Julia(未完成)で簡易アプリ化―

概要 irisデータを使ってサポートベクターマシンによる予測モデルをPython、R、Julia(未完成)で作ってapi化を行ってみたのでその紹介です。 リポジトリは以下。 github.com サーバー側はGoで実装してdocker化しているので、立ち上げればすぐ試せるようにし…

【論文メモ】AN EFFICIENT FRAMEWORK FOR LEARNING SENTENCE REPRESENTATIONS

読んだ論文 論文を読んだのでメモしておきます。 https://arxiv.org/pdf/1803.02893.pdf タイトル AN EFFICIENT FRAMEWORK FOR LEARNING SENTENCE REPRESENTATIONS 著者 Lajanugen Logeswaran, Honglak Lee メモ やってること 文章の分散表現を得るためのシ…

Pytorchで分散表現の学習手法であるskipgram、skipgram with negative samplingの実装

1.概要 分散表現(distributed representation)の学習手法である、skipgramとskipgram with negative samplingをPytorchを使って実装したので、その紹介をしたいと思います。 2.理論 まずは 理論的な側面を簡単に紹介します。 2.1.分散表現(distributed re…

多腕バンディットアルゴリズムを改めて理解するためにGo+Vueでwebアプリを作ってみた

多腕バンディットアルゴリズムを改めて理解するためにGo+Vueでwebアプリを作ってみました。 github.com 任意の確率を設定し、アルゴリズムに選択肢を選ばせ続けると、次第に確率の高い選択肢を選びやすくなるようになっていくことが理解できると思います。 …

DockerでUbuntuにjupyterが入ったDockerfileを作ってみる

概要 ※2019/5/29追記 githubの方にDockerfileを用意していますのでよかったらこちらも参考にどうぞ(スターつけてくれると嬉しいです) github.com (追記終わり) 前回はCentOSにRstudioを入れましたが、今回はUbuntuにjupyterを入れるDockerfileを作ってみ…

DockerでCentOS6にRとRStudio Serverが入ったDockerfileを作ってみる

概要 普段iMacで分析をやることもあれば、ラップトップのMac Book Airで分析をやったりすることもあり、 お互いの環境が一致せずに気持ち悪さを感じる事があるのもあり、ついにDockerに手を出してみました。 今回はDockerでCentOS6にRとRStudio Serverが入っ…

JuliaのSundialsライブラリを使ってロトカ・ヴォルテラ方程式の数値計算をしてみた

概要 JuliaにはSundials.jlという微分方程式の数値計算のためのライブラリがあります。 qiita.com Sundialsに関しては上のリンクにかかれていますが、 SundialsライブラリはJulia専用ではなく、いろんな言語で使用できて、Matlabでも使うことができる ような…

限界分析(Marginal Analysis)を応用した意思決定の試み

概要 先日実務で経済学の限界分析の考え方を応用した意思決定サポートツールを作る機会があり、それ以来経済学への興味が出てきましたし、実務における社会科学の概念の活用可能性を強く感じました。 そこで今回は自分の理解を改めて振り返るという気持ちも…

Bayesian Bootstrapをjuliaでやってみる

概要 先日Rのパッケージを使ってBayesian Bootstrapをやってみました。 rf00.hatenablog.com 今回はよりBayesian Bootstrapの理解を深めるためjuliaで、パッケージを使わずBayesian Bootstrap的なことをやってみたいと思います。 実験 まずは必要なパッケー…

【自作パッケージ】BPMFというJuliaでbayesian probabilistic matrix factorizationができるパッケージを公開しました

概要 タイトルの通りjuliaでbayesian probabilistic matrix factorizationができるBPMFというパッケージを公開しました。 github.com インターフェースはpythonのscikit-learn風でとても使いやすくできたかなと個人的には思います。 そこで今回はこのパッケ…

【論文実装】Variational Bayesian Approach to Movie Rating PredictionをJuliaで実装

概要 個人的にBayesianなアプローチとMatrix Factorizationに最近興味を持っています。 そんなわけで今のところ以下のように色々と実験してきました。 rf00.hatenablog.com rf00.hatenablog.com rf00.hatenablog.com その流れで今回はBayesianなMatrix Facto…

Juliaでギリシャ文字を入力するためのメモ

概要 Juliaはギリシャ文字を使うことができるので、論文の実装等をするときには、変数名を論文の中で使われているギリシャ文字と同じにすることができるため便利です。 入れ方としては、\+ギリシャ文字名を入れてtabキーを押下でギリシャ文字に変換されます…

Bayesian Bootstrapを試してみる

概要 twitterを見てみたらBayesian Bootstrapなるものが有用ということを知りました。 これもT/Lでは見かけないけど、Bayesian bootstrapはかなりいろいろ役立つよ。Dirichlet分布からデータ重みをsamplingして、その重み上でMAP推定する。これをかき集める…

Bayesian Probabilistic Matrix FactorizationをJuliaで実装

概要 リブセンスさんの以下記事で実装されている、Bayesian Probabilistic Matrix Factorizationに興味が湧いたので実装してみました。 analytics.livesense.co.jp とはいえ全く同じことをやっても面白くないので、プラスαとしてJuliaで実装しPythonと速度を…

『ベイズ推論による機械学習入門』の線形回帰の例をJuliaで実践

概要 『ベイズ推論による機械学習入門』のChapter3のp105~p114に線形回帰の事後分布の求め方がのっていたので、実際にJuliaで実装し、線形回帰のパラメータを求めてみました。 機械学習スタートアップシリーズ ベイズ推論による機械学習入門 (KS情報科学専門…

Juliaで単回帰、重回帰、ロジスティック回帰を試してみる

概要 Juliaで単回帰、重回帰、ロジスティック回帰を試したのでメモです。 特にモデル自体にはなんの意味もなく、単にjulia上で単回帰、重回帰、ロジスティック回帰のやり方を試すだけの記事です。 実装 今回の全体のコードは以下です。 regression_julia.ipy…

JuliaでMatrix Factorizationを実装してPythonと計算速度の比較をしてみたらJuliaのほうが早かった

概要 以前以下の記事でPythonによるMatrix Factorizationを行いました。 rf00.hatenablog.com これをJuliaでやってみようと言うのが、今回の記事の趣旨です。 そしてJuliaとPythonでMatrix Factorizationの計算速度も比較したところJuliaが早かったので、 そ…

【論文実装】Collaborative Filtering via Additive Ordinal Regression

はじめに 前回は以下記事にてオーソドックスなBias付きのMatrix Factorizationを実装しました。 rf00.hatenablog.com そして今回は以下論文のアプローチによる個々人の順序の間の差の違いを考慮したMatrix Factorizationを実装してみたいと思います。 Collab…

PythonでBias付きのMatrix Factorizationを実装してみる

概要 今回はMatrix FactorizationをPythonで実装してみたいと思います。 Bias付きのものとそうでないものを実装して精度を簡単に比較します。 通常のMatrix Factorizationとバイアス付きのMatrix Factorization それではMatrix Factorizationに関して少し具…

Pytorchでニューラルネットを構築して多クラス分類を試みる

概要 今回はPytorchでニューラルネットでの多クラス分類を試してみました。 Pytorchはkerasやchainerに並ぶDeep Learningフレームワークです。特に研究用途でよく使われているようです。 Pytorchに関しては以下の記事が詳しいので是非参考にしてください。 w…

【論文メモ】Optimal Pricing in Repeated Posted-Price Auctions

概要 以下のツイートを見かけて、実務でリスティングの関わることをやっているので気になったので、斜め読みしてみました。 オンライン広告のセカンドプライスオークションが単独の買い手に対して行われる場合、売り手の提示する最低入札価格はそのまま希望…

【読書】まいにちをよくする500の言葉

とても良い本を読んだので紹介です。 学びと感謝の中には、 たくさんの小さな言葉が詰まっています。 そんな小さな言葉を、みなさんと分かち合いたくて、 書き出してみたら500にもなりました。 まいにちをよくする500の言葉作者: 松浦弥太郎,ワタナベケンイ…

【論文メモ】Deep Neural Networks for YouTube Recommendations

読んだ論文 今回読んだ論文は以下。 Deep Neural Networks for YouTube Recommendations 間違い等ありましたら、ご指摘お願いいたします。 実務で真似したい点 ランキング候補の生成と実際のランキングスコアの算出をモデルを分けて実施している点 概要 YouT…

gretaパッケージを活用したベイズモデリングの紹介

R

概要 今回はRのgretaパッケージを使ったベイズモデリングを紹介します。 公式サイトは以下。 https://greta-dev.github.io/greta/index.html 公式のサンプルコードは以下にのっています。 Get started with greta gretaとは gretaパッケージはどんなパッケー…