MIRU 2019 チュートリアル http://cvim.ipsj.or.jp/MIRU2019/index.php?id=tutorial 松井 勇佑(東京大学生産技術研究所)http://yusukematsui.me/index_jp.html ベクトルの集合を前にして新たにクエリベ…

こんにちは、DeNAでデータサイエンティストをやっているまつけんです。 本ブログは、混合ガウス分布を題材に、EMアルゴリズムという機械学習界隈では有名なアルゴリズムを丁寧に解説することを目的として書いています。 また、この記事は、「数学とコンピュータ Advent Calendar 2017」の24日目の記事です。 そして長いです。 1. はじめに 観測した確率変数 $X$ をよく表現する、モデル $p(x|\theta)$ のパラメータを求めることが確率分布の推定ではよく行われます。つまり最尤法ですね。より複雑な分布になるとその分布の構造に潜在変数(Latent Variable) $Z$ があると仮定してモデル化を行うと、シンプルな組み合わせで $X$ の分布を表現できることがあります。今回扱う混合ガウス分布もその一つです。 のちに説明しますが、データセットの種別を完全データ集合と不完
(編注:2020/10/01、2016/07/29、いただいたフィードバックをもとに記事を修正いたしました。) 目次: さまざまな勾配降下法 バッチ勾配降下法 確率的勾配降下法 ミニバッチ勾配降下法 課題 勾配降下法を最適化するアルゴリズム Momentum(慣性) Nesterovの加速勾配降下法 Adagrad Adadelta RMSprop Adam アルゴリズムの可視化 どのオプティマイザを選ぶべき? SGDの並列化と分散化 Hogwild! Downpour SGD SGDのための遅延耐性アルゴリズム TensorFlow Elastic Averaging SGD 最適化されたSGDに対する更なる戦略 シャッフル学習とカリキュラム学習 バッチ正規化 早期終了 勾配ノイズ 結論 参考文献 勾配降下法は、最適化のための最も知られたアルゴリズムの1つです。これまではニューラルネット
class MFbpr(Recommender): ''' コンストラクタとか他の処理 ''' def buildModel(self): loss_pre = sys.float_info.max nonzeros = self.trainMatrix.nnz hr_prev = 0.0 sys.stderr.write("Run for BPR. \n") for itr in xrange(self.maxIter): start = time.time() # Each training epoch for s in xrange(nonzeros): # sample a user u = np.random.randint(self.userCount) itemList = self.trainMatrix.getrowview(u).rows[0] if len(itemL
Python3に対応しました(2016.01.25) MALSSの仕様変更に対応しました(2020.02.08) 特徴量選択について追記しました(2020.08.22) Pythonでの機械学習を支援する,MALSS(Machine Learning Support System)というツールを作りました(PyPI/GitHub). 導入編,基本編と書いてきて,今回は応用編です. 準備 前回と同じデータを使います. 普通にfitメソッドを呼んでしまうとモデリングを行うため処理に時間がかかってしまいます. そこで,algorithm_selection_onlyオプションをTrueにして,アルゴリズム選択のみを行うようにします. from malss import MALSS import pandas as pd data = pd.read_csv('http://www-bcf.usc
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く