作成したモデルが良いものであるか、そうでないかを判断するにはどうすればよいでしょうか。よく使われる手法としては、交差検証(分割交差検証、n-fold cross-validation)が行われます。 n-fold cro […]
SVMに入力するデータについて
前回のエントリーでSVMにはベクトルを入力すると言いました。また、学習のためには、そのベクトルがそのジャンルに含まれるか含まれないか、という目印も必要です。 これまでジャンル、という曖昧な言葉を使っていましたが、今後は、 […]
TinySVM: svm_learnのパラメータについて
前回は、TinySVMのインストールと実行をしてみました。ここで少し、実行時に使ったパラメータについて観察してみます。 TinySVM svm_learnのパラメータ svm_learnの実行のテストに使ったコマンドは上 […]
TinySVMを使ってみる
機械学習がプロダクトに応用されることが、非常に多くなりました。とはいえ、機械学習を学ぼうと思うと、数式の理解など非常に大変です。そこで、とりあえず機械学習というものを使ってみる、ということを目指して、少し書いてみたいと思 […]
JP Markdown + Crayon Syntax Highlighter
本ブログの記事では、見出しやリストを入れることが多いのですが、そのためいちいちタグを打つのも面倒です。そこで、WordPressでMarkdownを使えるように、JP Markdownというプラグインを追加してみました。 […]
WP QuickLaTeX
WP QuickLaTeXというプラグインをインストールしてみました。LaTeXの要領で数式を書くと、SVG画像に変換してくれます。 たとえば、正規分布の確率密度関数は…、 なかなか使いやすそうです。
AndroidでTesseractを使用する その5 一工夫編
前回までで、語レベルの認識範囲と認識された文字が取得できることが分かりました。最後に、文単位に、文の領域を描画するプログラムを考えてみます。 最初にどのようなデータ構造にすればいいか考えます。まず、文は語の集まりで、語ご […]
AndroidでTesseractを使用する その4 文字認識編2
文字認識編では、getUTF8Text()関数によって認識した文字列が取り出せると書きましたが、この文字列は半角スペースによって語が区切られています。しかし、ノイズが乗ってしまった場合であるとか、日本語のような単語の区切 […]
AndroidでTesseractを使用する その3 認識範囲を取得する
getUTF8Text関数を実行した後に、認識結果の詳細データを取得することができます。 今回は、どの範囲を文字として認識したかを取得します。 tess-twoでは、始めに文字が含まれていそうな行を認識し、その次に、その […]
AndroidでTesseractを使用する その2 文字認識編
事前知識の取得 その1では、*.soファイルと、jarファイルが生成されたところまで追いました。 さて、これらのファイルは、OCRの機能を提供するものなのですが、あくまで機能を提供するだけであって、画像認識をするための手 […]
AndroidでTesseractを使用する その1 ビルド編
Tesseractという、OCRエンジンがあります。また、それをAndroidで使用するための、tesseract-android-tools、そして、更にそれをfolkしたtess-twoと呼ばれるものがあります。この […]
ストレージのパスを取得する
ストレージのパスを取得するには、Environment.getExternalStorageDirectory()関数を使用します。 例として、カメラで撮った写真の画像をアプリケーション内で取得してみます。 手元のキーボ […]