タグ

pythonと機械学習に関するt10471のブックマーク (18)

  • Python-猿でもできるページランク計算&ソーシャルグラフの可視化 - Qiita

    Vagrant + VirtualBox + Python + ライブラリで簡単に仮想環境を作って実装してみました。 rubyでソーシャルグラフや行列を扱っていて、扱いにくいことが多々あったので、Pythonで行列計算やグラフの可視化などをやってみたら、めちゃくちゃ簡単且つ実用的だったので、まとめました。 利用したPythonライブラリについて 1. Scipy scipyは、パッケージは科学技術計算での共通の問題のための多様なツールボックスがあります。サブモジュール毎に応用範囲が異なっています。応用範囲は例えば、補完、積分、最適化、画像処理、統計、特殊関数等。 scipy は GSL (GNU Scientific Library for C and C++) や Matlab のツールボックスのような他の標準的な科学技術計算ライブラリと比較されます。 scipy は Python での

    Python-猿でもできるページランク計算&ソーシャルグラフの可視化 - Qiita
  • Python simpy による離散イベントシミュレーション - StatsFragments

    この記事は Python Advent Calendar 2014 の14日目の記事です。 この記事では、離散イベントシミュレーション用の Python パッケージ simpy について書きたい。simpy の現在のバージョンは 3.0.5、イニシャルリリースは 2002 年とかなり歴史のあるパッケージだ。 この simpy、けっこう面白いなーと思っていて、自分は 毎朝 起きるたび、今日は simpy について書かれたブログあるかな?と探しては 裏切られる日々を数年つづけてきた。もう誰かにこんな思いはさせたくない、、、こうなったら自分で書くしかない。 離散イベントシミュレーション (Discrete event simulation) とは 離散イベントシミュレーションの説明はこちらがよくまとまっている。 《離散型シミュレーション》 - ORWiki 簡単にいうと 発生が離散的なイベントを

    Python simpy による離散イベントシミュレーション - StatsFragments
  • Scikit-learnを使って主成分分析などを中心に遊んだ

    Machine Learning Advent Calendar 2014の企画で書いているブログ記事です.最近私生活で使ってたことや,そのときに躓いたことをまとめました. 主成分分析 名前は聞いたことる方が多いと思いますが,できるだけデータの情報を損失することなく新しい軸を作るための手法です.高次元ベクトルデータなどは現実に可視化することは不可能ですが,2次元や3次元ぐらいまでに落としてあげると可視化することが出来ますし,タスクに依っては低次元部分だけのデータで十分なこともあります. よくある例ではこのような二次元データからこのように第一主成分(青破線)と第二主成分(黒破線)を求めます.そうするとデータ間のユークリッド距離は,青線上で測った場合でも概ね元のデータの特徴を保持している,ということが言えます.PCAはscikit-learnに実装されているものを利用するか,自分で固有値分解を

    Scikit-learnを使って主成分分析などを中心に遊んだ
  • Pythonで主成分分析 - old school magic

    概要 主成分分析(Principal Component Analysis, PCA)とは、 データの無相関化 データの次元の削減 を行う手法です。 簡単に言うと、データを分析しやすいように再構成し、可能なら次元を下げることです。 なぜ次元を削減する必要があるかと言うと、機械学習や統計において、データの次元が大きすぎると認識精度が悪くなる、次元の呪いという現象を回避するためです。 (2次元や3次元に変換できると可視化できる、というメリットもあります。) 今回は、Pythonを使って主成分分析を試してみようと思います。 主成分分析の例 ライブラリとしてscikit-learn、テストデータとしてiris datasetを用います。 scikit-learnはPython機械学習ライブラリです。主成分分析も実装されています。 導入等については、次の記事をご参照ください。 MacPython

    Pythonで主成分分析 - old school magic
  • scikit-learnでよく利用する関数の紹介

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog はじめに こんにちは。ヤフーで広告プロダクトのデータ分析をしている田中と申します。 今回のAdvent Calendar 2014では、データサイエンスのプロセスの中の「分析・モデリング」で私がよく利用しているツールについて書いています。 どうぞよろしくお願い致します。 データサイエンスのプロセスについては、いろいろと定義があると思いますが 基的に以下の5つのプロセスからなると自分は考えています。 ・問題設定 ・データ抽出・加工 ・分析・モデリング ・評価 ・ビジネス提案/プロダクト実装 どのプロセスもとても大事で、例えば「問題設定」では、ビジネス的な課題(売上低迷・KPI低下)を分析課題に落とすのですが、ここを間違えてしまうと

    scikit-learnでよく利用する関数の紹介
  • はじめるDeep learning - Qiita

    そうだ、Deep learningをやろう。そんなあなたへ送る解説記事です。 そう言いながらも私自身勉強しながら書いているので誤記や勘違いなどがあるかもしれません。もし見つけたらご連絡ください。 Deep learningとは こちらのスライドがとてもよくまとまっています。 Deep learning つまるところ、Deep learningの特徴は「特徴の抽出までやってくれる」という点に尽きると思います。 例えば相撲取りを判定するモデルを構築するとしたら、普通は「腰回りサイズ」「マゲの有無」「和装か否か」といった特徴を定義して、それを元にモデルを構築することになります。ちょうど関数の引数を決めるようなイメージです。 ところが、Deep learningではこの特徴抽出もモデルにやらせてしまいます。というか、そのために多層、つまりDeepになっています。 具体的には頭のあたりの特徴、腰のあ

    はじめるDeep learning - Qiita
  • 高速、高精度、省メモリな線形分類器、SCW - Qiita

    今回は機械学習アルゴリズム、SCW(Exact Soft Confidence-Weighted Learning)の紹介です。 まずはどれだけすごいか見てみてください。 使用しているデータセットはscikit-learnの手書き文字認識用のものです。 上がSCW、下がscikit-learnのSVCで学習、分類した結果です。timeは学習にかかった時間、accuracyは精度を表しています。 結果を見ればわかるように、SCWは非常に高速に学習することができます。 また、SCWは逐次学習が可能です。すなわち、データをひとつずつ入力しても学習することができます。つまり、データを全てメモリ上に展開して学習させなくてもよいのです。 精度はデータセットに依存します。というのも、SCWは線形分類器だからです。 線形分離不可能なデータに対してはSCWでは精度が落ちてしまいますが、線形分離可能、もしくは

    高速、高精度、省メモリな線形分類器、SCW - Qiita
  • pythonを使って簡単な画像分類を実現する - stMind

    yhatでpythonを使って簡単な画像分類をするエントリがあったので紹介します。 画像分類のステップ 画像分類を実現するステップは以下の通りです。 学習画像を集める 画像を特徴量に変換する 識別器を学習, モデルを評価する 1. 学習画像を集める 分類器を学習するための画像を取得します。Bingの画像検索結果のHTMLを解析して、学習画像を保存します。上記のエントリでは、check(小切手)か運転免許証かを分類する例になってましたが、ここではarchitecture(建物)かfood(べ物)を分類するようにしてみます。(SNS向けに撮った写真は建物かべ物が多いので) スクリプトは大体同じですが、queryをハードコードせずに引数として与えるようにしました。 #-*- encoding: utf-8 -*- """ Usage: query_bing_images.py <query>

    pythonを使って簡単な画像分類を実現する - stMind
  • numpyでのKLダイバージェンスとJensen-Shannonダイバージェンスの実装 | Vingow 開発チームブログ

    scipyには距離を測るための手続きが用意されています(scipy.spatial.distance)。ユークリッド距離やcosine距離(cosine類似度)などもあるのですが、確率分布間の距離とも言うべきKLダイバージェンスやJensen-Shannonダイバージェンスなどは実装されていません。ということで、実装してみました。 実装コードだけ見たいという場合は、最後まで読み飛ばしてください。 KLダイバージェンスとJensen-Shannonダイバージェンスについて KLダイバージェンス(カルバック・ライブラー情報量; Kullback–Leibler divergence; 相対エントロピー)とは、分布と分布の差異の大きさ(≠距離)を測るものです。分布と分布があったとき、のに対するKLダイバージェンスは で定義されます。また、クロスエントロピーを使って と定義することもできます。クロ

    numpyでのKLダイバージェンスとJensen-Shannonダイバージェンスの実装 | Vingow 開発チームブログ
  • Lossy Countingを実装してみた - 省メモリな頻度計測 - 唯物是真 @Scaled_Wurm

    大規模データで頻度を数えると、欲しいのはよく登場するアイテムの情報なのに、ほとんど出現しないアイテムの種類数が非常に多くて、それらがメモリを大量に必要としてしまうという問題がある これに対してアイテムの種類数の最大値に制限を加えたり、頻度に誤差を許すなどの条件のもとで、省メモリに頻度計測を行う方法がいくつも提案されている これらについては以下の記事が詳しい 大規模データで単語の数を数える - ny23の日記 今回はそういった手法の一つであるLossy Countingを実装した 日語では上記の記事と以下の記事が詳しい [を] 誤り許容カウント法(lossy count method)のサンプルプログラム [O] イプシロン劣シノプス性を保持した頻度カウント lossy countingアルゴリズム - 機械学習の「朱鷺の杜Wiki」 元論文はこちら。年を見ると結構前なので、現在ではもっと

  • Intoroduction of Pandas with Python

    A summary of the book focused on chapter 2. The content is written by Japanese.

    Intoroduction of Pandas with Python
  • ŷhat | Random Forests in Python

    Random forest is a highly versatile machine learning method with numerous applications ranging from marketing to healthcare and insurance. It can be used to model the impact of marketing on customer acquisition, retention, and churn or to predict disease risk and susceptibility in patients. Random forest is capable of regression and classification. It can handle a large number of features, and it'

    ŷhat | Random Forests in Python
  • pythonの機械学習ライブラリscikit-learnの紹介 - 唯物是真 @Scaled_Wurm

    scikit-learn(sklearn)の日語の入門記事があんまりないなーと思って書きました。 どちらかっていうとよく使う機能の紹介的な感じです。 英語が読める方は公式のチュートリアルがおすすめです。 scikit-learnとは? scikit-learnはオープンソースの機械学習ライブラリで、分類や回帰、クラスタリングなどの機能が実装されています。 また様々な評価尺度やクロスバリデーション、パラメータのグリッドサーチなどの痒いところに手が届く機能もあります。 インストール scikit-learnの他にもnumpyとかscipyとかが必要です。 Windows 64 bit版の人は以下のURLに色々なインストーラーがおいてあるのでおすすめ Python Extension Packages for Windows - Christoph Gohlke その他の人は以下のURLを見て

    pythonの機械学習ライブラリscikit-learnの紹介 - 唯物是真 @Scaled_Wurm
  • セクシー女優で学ぶ画像分類入門

    First part shows several methods to sample points from arbitrary distributions. Second part shows application to population genetics to infer population size and divergence time using obtained sequence data.

    セクシー女優で学ぶ画像分類入門
  • 異常検知(変化点検出)をPythonで書いてみた | Kitchen Garden Blog

    データマイニングについて勉強する機会があり、Python言語の練習がてら「変化点検出」と呼ばれる手法について、近似的ではありますが、試作してみました。 変化点検出とは 変化点検出とは、入力データの時系列的な振る舞いの変わり目(変化点)を検出する方法です(山西健司著『データマイニングによる異常検知』)。 データマイニングによる異常検知 山西 健司 Rank / Rating: 302282 / - ASIN: 4320018826 Price: ¥ 3,990 A unifying framework for detecting outliers and change points from time series (Google Scholar) DoS攻撃や新種のワームの発生による、急激な値の変わり目(トラフィック量の急増等)を検知するのに有効とされる手法です。 id:yokkun

  • Deep Learning を実装する

    2015年9月18日 (GTC Japan 2015) 深層学習フレームワークChainerの導入と化合物活性予測への応用

    Deep Learning を実装する
  • 機械学習の Python との出会い — 機械学習の Python との出会い

    著者 神嶌 敏弘 (Toshihiro Kamishima) リリース 2020-02-17 08:56:35 +0900 ダウンロード用 [ PDF版 ] [ ePub版 ] ソースレポジトリ [ https://github.com/tkamishima/mlmpy ]

  • 第7回 代表的な離散型確率分布 | gihyo.jp

    今回は、前回導入したNumpy、そしてグラフを描画するmatplotlibを使って、いくつかの代表的な分布を紹介していきます。 第5回「「よく使う分布」はどうしてよく使う?」の項でも代表的な分布が紹介されていました。そこでは、“⁠この状況(モデル)では、この分布を使う⁠”というパターンを想定する、それが“⁠よく使う分布⁠”がいくつも存在する理由と言及されていましたが、どのような状況でどのような分布を使えばいいのでしょうか? 実際、どのような状況のときに、どのような分布を使うと説明しやすいかを考えながら、みていきましょう。 matplotlibのインストール matplotlibはpythonとNumpyのための高機能なグラフ描画ライブラリです。今後もグラフを描画することがあるかと思いますので、ここでインストールしておきましょう。 公式サイトのダウンロードから各OS向けのパッケージを入手して

    第7回 代表的な離散型確率分布 | gihyo.jp
  • 1