タグ

ブックマーク / breakbee.hatenablog.jp (6)

  • LDAで日本語PDF分析 - old school magic

    概要 最近、LDAを(pythonで)実装する機会がありました。 サンプリングを用いる実装だったので、Python等のスクリプト言語だとどうしても計算時間が問題になってしまいます(特に大規模なデータに対して)。 せっかくなのでコンパイル系の言語であるJavaで実装し直し、ついでに日PDFファイル(というか日語論文)をLDAで分析してみました。 全体的な手順としては、 PDFからテキスト抽出 正規表現で日語を抽出 Mecabで形態素解析 特徴語(今回は名詞)の選択 ストップワードの除去 LDAで分析 となっています。 分析に使ったLDAの実装やスクリプトはGithubにあります。 LDAのJava実装 https://github.com/breakbee/LDA4J PDF分析のスクリプト https://github.com/breakbee/PDFAnalysis Python

  • MacでPythonの機械学習環境構築(2015年2月版) - old school magic

    概要 MacPythonの管理と機械学習環境構築の備忘録です。 2015年2月版です。 簡単にまとめるとこんな感じです。 パッケージ管理システム : homebrew Pythonの導入・管理 : pyenv 機械学習ライブラリの構築 : Anaconda 前回は結構めんどくさかったのですが、各ライブラリのバージョンアップのお陰でかなり簡単にインストールできるようになりました。 前準備 バージョン管理システムはhomebrewを使います。 パッケージ管理システムとは、ソフトウェアをまとめて管理(インストールやアップデート、削除等)するためのソフトです。 homebrewについては次の解説が参考になります。 公式 Homebrew — The missing package manager for OS X インストール、使い方 MacOSX - パッケージ管理システム Homebrew

    MacでPythonの機械学習環境構築(2015年2月版) - old school magic
  • 回帰モデルにおけるL1正則化とL2正則化の効果 - old school magic

    概要 回帰モデルとは、与えられた入力を用いて目標変数を予測するモデルです。 回帰モデルでは過学習を防ぐため、誤差関数(二乗誤差関数など)に次の式で表される正則化項を加えて最小化します。 この形の正則化項を用いる回帰をブリッジ回帰と呼びます。 特にの時をLasso回帰、の時をRidge回帰と呼びます。また、それぞれに用いられている正則加項をL1ノルム、L2ノルムと呼びます。 L1ノルムとL2ノルムの特徴を簡単にまとめると次のようになります。 L1ノルムはパラメータの一部を完全に0にするため、モデルの推定と変数選択を同時に行うことができる 特に次元数>>データ数の状況で強力 L2ノルムは微分可能であり解析的に解けるが、L1ノルムは 解析的に計算出来ない L1ノルムには様々な推定アルゴリズムが提案されている また、L1ノルムには 次元が標数より大きい時、高々個の変数まて

  • Pythonで主成分分析 - old school magic

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

    Pythonで主成分分析 - old school magic
  • 機械学習を初めて勉強する人におすすめの入門書 - old school magic

    概要 私が機械学習の勉強を始めた頃、何から手を付ければ良いのかよく分からず、とても悩んだ覚えがあります。同じような悩みを抱えている方の参考になればと思い、自分が勉強していった方法を記事にしたいと思います。 目標としては、機械学習全般について、コンパクトなイメージを持てるようになることです。 そのためにも、簡単なから始めて、少しずつ難しいに挑戦して行きましょう。 入門書 何はともあれ、まずは機械学習のイメージを掴むことが大切です。 最初の一冊には、フリーソフトでつくる音声認識システムがおすすめします。 フリーソフトでつくる音声認識システム - パターン認識・機械学習の初歩から対話システムまで 作者: 荒木雅弘出版社/メーカー: 森北出版発売日: 2007/10/17メディア: 単行(ソフトカバー)購入: 45人 クリック: 519回この商品を含むブログ (38件) を見るレビュー :

    機械学習を初めて勉強する人におすすめの入門書 - old school magic
  • Pythonで一般化線形モデル - old school magic

    概要 統計の勉強の一環で、最近はこのを読んでます。かなり分かりやすいです。 データ解析のための統計モデリング入門――一般化線形モデル・階層ベイズモデル・MCMC (確率と情報の科学) 作者: 久保拓弥出版社/メーカー: 岩波書店発売日: 2012/05/19メディア: 単行購入: 16人 クリック: 163回この商品を含むブログ (19件) を見る統計モデリングに関するです。一般化線形モデルを中心に話が進んでいきます。 このはRを中心に話が進んでいきますが、せっかくなのでPythonで一般化線形モデルを試してみようと思います。 Pythonの統計ライブラリ 一般化線形モデルとは、線形回帰を(正規分布以外でも使えるように)拡張した統計モデルです。 詳しい説明は教科書に譲るとして、Pythonでのライブラリについてお話します。 Pythonで一般化線形モデル、というか統計全般のライブラ

    Pythonで一般化線形モデル - old school magic
  • 1