タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

algorithmとAlgorithmとmathに関するyukimori_726のブックマーク (43)

  • 非負値行列因子分解(NMF : Non-negative Matrix Factorization)を改めてやり直してみた - Qiita

    非負値行列因子分解(NMF : Non-negative Matrix Factorization)を改めてやり直してみたPythonC++MachineLearningNMF非負値行列因子分解 一年ほど前に理解した非負値行列因子分解(NMF)を再実装して確認してみようとした記事です. Support Vector Machine(SVM)や最近ではDeep Learningなどが流行っていますが,こんな手法もありますよ,といった紹介になればと・・・ C++Python2.7で久しぶりに実装してみました. 【2020/11/10 更新】 Python3系にアップデートしました。 Python版NMFコードをリファクタリングしました。 【2020/02/05 更新】 NMFを使ったリアルタイム音源分離のモックを作成しました。 こちら 【2018/03/23 更新】 一部文を修正しました.

    非負値行列因子分解(NMF : Non-negative Matrix Factorization)を改めてやり直してみた - Qiita
  • 情報理論を視覚的に理解する (1/4) : | POSTD

    世界を考察する新しい方法を手に入れたときの感覚が大好きです。特に好きなのは、いずれ具体的なコンセプトに形を変えるボンヤリとした考えがあるときです。情報理論は、その最たる例です。 情報理論は、多くの物事を説明するための正確な言葉を与えてくれます。自分はどのくらい理解できていないのか?質問Aの答えを知ることが、質問Bを答えるのにどのくらい役立つのか?ある種の信念が他の信念とどの程度似ているのか?こういうことに対し、若くて未熟なころから自分なりの考えがありましたが、情報理論に出会って正確で強固な考えとしてはっきりと固まりました。その考えは、桁外れの、例えばデータの圧縮から量子物理学や機械学習、さらにはその間に広がる数多くの分野に応用が利くものです。 残念なことに、情報理論は少々威嚇的に見えてしまうのですが、そう断定すべき根拠は全くないと思います。実際、情報理論の多くの重要な概念は完全に視覚的に説

    情報理論を視覚的に理解する (1/4) : | POSTD
  • MIP(混合整数計画問題)ソルバーを作ろう! - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 目次 第1章では、線形計画問題や整数計画問題についての簡単な説明を行います 第2章では、線形計画問題の代表的な解法であるシンプレックス法についての解説を行います 第3章では、整数計画問題の代表的な解法である分枝限定法についての解説を行います 第4章では、それらの記述のまとめと、おまけテキストについて記述します なお、今回制作したMIPソルバーは、次のURLに置いてあります。 SMIPS(The Smallest MIP Solver) 第1章 概要 何かを最適化したい、と思ったことはありませんか? 『最短ルートを探したい』『物をうまく詰

    MIP(混合整数計画問題)ソルバーを作ろう! - Qiita
  • また巨大数の話

    2024 Trend Updates: What Really Works In SEO & Content Marketing

    また巨大数の話
  • Kernel PCA (Principal Component Analysis) の導出 - めもめも

    何の話かというと Python Machine Learning: Unlock deeper insights into Machine Leaning with this vital guide to cutting-edge predictive analytics (English Edition) 作者:Raschka, SebastianPackt PublishingAmazon こののKernel PCAの説明が相当に計算を端折っていて、これは読者もつらいだろぅ。。。と思って途中の計算を端折らずになるべく正確に導出してみました。 ※実対称行列の固有値分解とLagrangeの未定乗数法は前提知識とします。 普通のPCA はじめに、Kernelを使わない普通のPCAを導出します。 データセット の分散共分散行列を とします。この時、 は正定値の実対称行列より、正(もしくは0)

    Kernel PCA (Principal Component Analysis) の導出 - めもめも
  • 精度保証付き数値計算(その1) - kivantium活動日記

    コンピュータ上で実数を表現する際には浮動小数点数を使うのですが、浮動小数点数の計算では誤差が発生します。 簡単な例を見てみます。 #include <cstdio> int main(void) { float a = 0.0; for(int i=0; i<10000; ++i) a += 0.01; printf("%.10f\n", a); } という0.01を10000回足すプログラムを実行すると結果は100.0029525757となり、期待される100.000000000に比べて0.003ほどの誤差が発生しています。 浮動小数点数計算での誤差を抑える一番簡単な方法はfloatではなくdoubleなどのより精度の高い型を使って計算精度を上げることですが、どうしても限界はあります。 他にも問題ごとにテクニックは存在しますが、誤差を完全に無くすことはできません。 正確な計算のためには誤

    精度保証付き数値計算(その1) - kivantium活動日記
  • 一歩Matrix Factorization、二歩Factorization Machines、三歩Field-aware Factorization Machines…『分解、三段突き!!』 - FANCOMI Ad-Tech Blog

    こんにちは、k_oomoriです。最近、機械学習の分野でFactorization Machines (FM)という手法があることを知りました。Matrix Factorization (MF)は知っていたのですが、共にfactorizationという単語を含んでいるため、何か関係があるのだろうか?と気になり調べてみました。 ここではサンプルデータとしてFactorization Machinesの論文で使われていたものを使用します。 タイタニック (TI)ノッティングヒルの恋人 (NH)スターウォーズ (SW)スタートレック (ST) Alice (A)531 2010-12010-22010-4 Bob (B)45 2009-52009-8 Charlie (C)15 2009-92009-12 表1. 映画に対する評価 Alice, Bob, Charlieの3人が4映画作品に対

    一歩Matrix Factorization、二歩Factorization Machines、三歩Field-aware Factorization Machines…『分解、三段突き!!』 - FANCOMI Ad-Tech Blog
  • 自動微分変分ベイズ法の紹介

    [DL輪読会]Understanding Black-box Predictions via Influence Functions

    自動微分変分ベイズ法の紹介
  • 時系列データにt 検定を行うことに関してstan 神の解析がやばい - 驚異のアニヲタ社会復帰の予備

    時系列データにt 検定を行うことに関して、すごいもにょっていたのだが、そもそもstan 神が既にモデル化してくれていた。 リンクでは2階差分と、変化点検出のコーシー分布の合わせ技を用いている。 そのままパクってやってみる。 diの95%ベイズ信頼区間が0を含んでいない期間が差がある期間と言えるでしょう。さらに、どこから差がありそうなのか、どれほど差がありそうなのかも確率付きで述べることができます。 ということが、stan による柔軟なモデリングで述べることができます。 話は飛ぶけど、読んだ。 はじめての 統計データ分析 ―ベイズ的〈ポストp値時代〉の統計学― 作者: 豊田秀樹出版社/メーカー: 朝倉書店発売日: 2016/06/02メディア: 単行(ソフトカバー)この商品を含むブログ (11件) を見る 書評はまた書くけれども、この時系列データと同じように、このでは、例えば分散分析や分

    時系列データにt 検定を行うことに関してstan 神の解析がやばい - 驚異のアニヲタ社会復帰の予備
  • 猫にもわかるP≠NP予想

    にもわかるP≠NP予想 @xharaken

    猫にもわかるP≠NP予想
  • PythonでEMアルゴリズムを可視化してみた(混合正規分布) - くじらにっき++

    可視化してみました。 解説 以下の動画が一番分かりやすいです。 www.youtube.com Q関数を最大化する, , の求め方は,実際に解いてみると,当にラグランジュの未定乗数法を使うだけという感じでした。ただし という制約を組み込むのを忘れずに… について求めるところはちょっと迷ったので,導出を載せておきます。 ソースコード Pythonで書きました。movieディレクトリにpngを連番で出力します。アニメーションGIFを作るには以下のサイトを参照してください。 アニメーションGIFの作り方 ImageMagick編 hに関してのforループが残っていてnumpy力の低さが感じられますが,自信がある人は消してみてください。 # coding: UTF-8 import os import shutil import scipy import scipy.stats import m

    PythonでEMアルゴリズムを可視化してみた(混合正規分布) - くじらにっき++
  • 浮動小数点数型と誤差

    有限桁 C言語で扱える実数値は,2進数の有限小数で表された数値である.例えば次のようなものである. 1.5(10) = 1.1(2) 3.25(10) = 11.01(2) 理論的には小数が無限に続く値でも,そのうちの有限個の桁数でその値を表すしかない. 例えば,0.1 を2進数の小数で表すと 0.1(10) = 0.000110011001100110011...(2) と無限に続くが,コンピュータの内部では有限桁で丸められている. このような場合には,当の値ではなく,近似値でしか表すことができない. 指数表記(浮動小数点表記) 科学計算では非常に大きな実数値や非常に小さな実数値も扱うことがある. そのようなときには,通常の10進数の表記ではなくて,次のような指数表記で表すれば 無駄な 000...000 という桁を表記しなくてもよくなる. 1234567890000000000000

    浮動小数点数型と誤差
  • E-musu's Tech Memorandum

    1. 導入 これはMetropolis Hastings Algorithmについてまとめたものです. この手法はマルコフ連鎖モンテカルロ法の1つです. マルコフ連鎖モンテカルロ法とは多次元の確率変数を発生させるサンプリング方法の1つであり,複雑化しているモデルの推定方法として多くの分野で使用されています. そこでMCMCを使うことになった背景やその仕組みについて考えていき,メトロポリス・ヘイスティングス法やそれに類する手法を説明します. 2. 共役分布を用いたパラメータ推定 ベイズ統計ではパラメータ推定などの統計的計算は基定理 \begin{equation} f\left( \theta | x \right) = \frac{f\left( x | \theta \right)f\left( \theta \right)}{f\left( x \right)} \propto f\

    E-musu's Tech Memorandum
  • 整数の公式でフィボナッチ数列を求める | POSTD

    (注:2020/10/01、2017/6/10、いただいたフィードバックを元に翻訳を修正いたしました。) 次のコードを用いると、なんとフィボナッチ数列が生成できます。 def fib(n): return (4 << n*(3+n)) // ((4 << 2*n) - (2 << n) - 1) & ((2 << n) - 1) この記事では、その導き方と振る舞いを説明しましょう。 具体的な説明に入る前に、背景としてフィボナッチ数列の概要と計算方法を駆け足で紹介します。すでに数学の専門知識がある方は、導入部分はほとんど飛ばして、「母関数」のセクションをざっと読んでから、「整数の公式」に進んでいただいて構いません。 概要 フィボナッチ数列とは、言わずと知れた以下の数列です。 \[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, \ldots\] この数列の \(n\) 番目

    整数の公式でフィボナッチ数列を求める | POSTD
  • MNIST for ML Beginnersの数学的な意味合い - neuralnetな日記

    Tensor flowの初めの一歩のチュートリアルであるMNIST For ML Beginners について、数学的な意味合いを書いてみようと思います。 (ブログに不慣れなもので、修正/継ぎ足しながら公開していくことをお許しください) まず、このチュートリアルで実行していることは、 入力がn次元の配列 (は実数)が複数個あった時 、個々の出力 ()を得る写像を用意して、出力が 個々のに対する解 (あるz=1以外はz=0) に近い結果を得れるように、Fを最適化することです。 ここで、の各要素 は実数と書きましたが、これは概念上の話であり、プログラムの実装上ではfloatになります。以後、集合(つまり配列)の要素は数学上は実数ですが、プログラム上はfloatであると考えて下さい。は、となるm個の(実数の)集合です。また任意の要素は0以上であり、したがって、は0から1までの値をとることになりま

    MNIST for ML Beginnersの数学的な意味合い - neuralnetな日記
  • 機械学習と深層学習の数理

    機械学習や深層学習(Deep Learning)に使われる数学をまとめたので公開します. 微積と線形代数の初歩的な知識があれば大丈夫です. 主なトピックは,誤差逆伝播法,重回帰モデル,正則化,CNN,ボルツマンマシン,RBN,強化学習などです.

    機械学習と深層学習の数理
  • Pythonで2変数関数に対してニュートン法を用いる - minus9d's diary

    前回、Pythonで2変数関数に対して最急勾配法を用いる - minus9d's diaryにて、2変数関数に対する最急勾配法を Pythonで実装しました。 今回は、最急勾配法よりも収束が早いと言われるニュートン法を実装してみます。私の理解が正しければ、ニュートン法では、初期点が与えられたとき、その点の近くにあるStationary point(停留点)、すなわち微分が0になる点を探します。微分が0になる点なので、必ずしも極値に収束するとは限らず、鞍点に収束する可能性もあります。 ニュートン法の更新式は以下の通りです。 ここでは学習率、はヘッセ行列です。変数名は教科書「言語処理のための機械学習入門 (自然言語処理シリーズ) 」に従っていますが、この教科書は版によってはニュートン法の式が誤っているので注意。 目的関数は前回と同じくです。の極小値の一つを求めるのが目的です。 実装コード Py

  • 意外と深い「平均」の世界

    2016年4月28日ロマンティック数学ナイト@六木で発表したときの資料です。相加平均,相乗平均,調和平均を一の線で結びます。また,その他にも興味深い平均をいくつか紹介し,それらも別の線で結びます。

    意外と深い「平均」の世界
  • 【基本】ユークリッドの互除法の使い方 | なかけんの数学ノート

    この最大公約数を G とおくと、$1649$ は G で割り切れるし、 $221$ も G で割り切れますよね。ということは、この2つの差「$1649-221$」も $G$ で割り切れることがわかります。 これをもっと進めていけば、$1649-221\times 2$ も $1649-221\times 3$ も $1649-221\times 4$ だって、$G$ で割り切れるはずです。 「$1649$ から $221$ を何度も引く」を進めていくと、割り算にたどり着きます。割り算をすると「$7$ 余り $102$」と計算できるので、\[ 1649 -221 \times 7 = 102 \]と書けることがわかります。この式で、 G で割り切れるものに注目してみましょう。 $1649$ も $221$ も G で割り切れるので、余りである $102$ も G で割り切れないといけません。

    【基本】ユークリッドの互除法の使い方 | なかけんの数学ノート
  • 数学的基礎から学ぶ Deep learning (with Python) Vol. 4【MPS 横浜 第4回】

    MPS横浜 概要 MPSは、「みんなでわいわいソフトウェア作りながら技術を磨いて実績を作ろう!」をコンセプトに活動しています。プログラミング玄人とも初心者もみんなで協力して作品作りを行い、できあがった作品は共同制作のオープンソース・ソフトウェアとして、世の中に出します。 MPS横浜は「筋電位とDeep learning を用いた簡単なロボットアームを作ってみよう!」をテーマに発足しました。 前回から数回にわたって行う勉強会は、そのための Deep learning と電子回路に関する知識の実践的な獲得を目的とします。前提知識をあまり仮定せず 、基礎の基礎から学べるようにしてゆきます (高校二年生程度の数学の知識と if や for 文など Python の経験を少し仮定しますが、なくても是非チャレンジしてみてください ! )。 勉強会の後はみんなでご飯をべにいきます ! 今回の予定 数学

    数学的基礎から学ぶ Deep learning (with Python) Vol. 4【MPS 横浜 第4回】