タグ

ブックマーク / spjai.com (10)

  • ニューラルネットワークのパラメータ設定方法(scikit-learnのMLPClassifier)

    あらすじ ニューラルネットワークを作成する際に、層の数、ニューロンの数、活性化関数の種類等考えるべきパラメータは非常に多くあります。 そこで、これらのパラメータがどのようにモデルや学習に影響を与えるかということをscikit-learnの MLPClassifier を使って解説したいと思います。 MLPClassifierを使うと、非常に簡単にニューラルネットワークを使うことができます。 今回はそれぞれのパラメータの意味と使い方及び各種メソッドの解説していきたいと思います。 ちなみに、scikit-learnの推定器の選び方に関しては、scikit-learn(機械学習)の推定器:Estimatorの選び方 をご参照下さい。 1. hidden_layer_sizes| 層の数と、ニューロンの数を指定 default : (100,) 隠れ層の層の数と、ニューロンの数をタプルで指定します

    ニューラルネットワークのパラメータ設定方法(scikit-learnのMLPClassifier)
  • ディープラーニングで文章・テキスト分類を自動化する方法

    ※サンプル・コード掲載 1. あらすじ 人工知能という言葉が、昨今、ますます身近になってきており、Siriなどの対話システムも日々発達してきています。 また、人間の言語を人工知能に解釈させる対話システムの需要が増えると共に、NLP(自然言語処理)のニーズも日に日に高くなって来ています。 NLP分野では、画像処理系や、音声処理系と比較すると、まだ技術的なブレークスルーが起こっているという状況では無く、他の分野に比べて人工知能関連の技術適用は、限定的と言えるかもしれません。 しかしながら、NLPの分野でも、当然、機械学習は使用されますし、ディープラーニングをNLP分野に使おうとする動きも多く見られています。 今回は、その中で対話システムの制御等に使われる、入力文章の意図、主に対話カテゴリーの分類を、NLP、及び、機械学習を用いて、なるべくシンプルな手法で実装してみます。 文章のカテゴリー分類と

    ディープラーニングで文章・テキスト分類を自動化する方法
  • Jupyter Notebookで最速でディープラーニング環境を構築する方法

    ※操作手順の画面キャプチャ掲載 あらすじ とりあえず、話題の機械学習とやらに触れてみたい! ディープラーニングを最速で試してみたいが、プログラミング経験が無いので、とりあえず簡単にスグに動かせる環境が欲しい! そんな方へ向けて、Jupyter Notebookを使用し、最速でディープラーニングをブラウザ上で実行出来る環境を構築する方法を解説していきます。 そして、実際に簡単な機械学習の処理をしてみるところまでお伝えいたします。 1. 作業環境 Windows10 2. Jupyter Notebookとは? Jupyter Notebookとは、ブラウザ上で実行される、プログラムの対話実行環境となります。 対応している主要な言語(Julia + Python + R)からJupyterと名付けられました。 現在は上記のようなデータ分析系に主に用いられる言語だけでなく、他にも様々な言語をサポ

    Jupyter Notebookで最速でディープラーニング環境を構築する方法
  • pix2pixで輪郭の線画から、絵画を画像生成する方法

    ※サンプル・コード掲載 1. pix2pixとは? 昨年、pix2pixという技術が発表されました。 概要としては、それまでの画像生成のようにパラメータからいきなり画像を生成するのではなく、画像から画像を生成するモデルを構築します。 DCGANと呼ばれる画像生成技術を使用しており、使い方としては、白黒写真からカラー写真を生成したり、線画から写真を生成したりといったことが可能です。 2. DCGANとは? DCGANとは、画像生成器と画像判別器があり、画像生成器は訓練データに出てくるような画像を生成します。 画像判別機は、訓練データの画像なのか、画像生成器から作られたデータなのかを判別するものです。 そして、画像生成器は、自身が生成した画像だと見破られないように自身の重みを更新していきます。 また、画像判別機は画像生成器が生成した画像なのか、そうでないのかを学習して自身の重みを更新します。

    pix2pixで輪郭の線画から、絵画を画像生成する方法
  • scikit-learn(機械学習)の推定器:Estimatorの選び方入門

    ※サンプル・コード掲載 あらすじ scikit-learnはpythonで使用できる機械学習ライブラリですが、元々とても多くの推定器(Estimator)が実装されています。 ただ、どのEstimatorを使えばよいのか最初から決めるのは経験則や広範囲な知識が必要なのでなかなか難しいです。 そのため、一括で全部試してしまってその結果から良さそうなモデルを選定していくという方法を取ると効率がよいため、その方法をご紹介します。 1. 環境構築 環境はpython3を使用します。 必要なライブラリをインストールします。 また、日語の処理にmecabが必要なので、それもインストールします。 #数値計算・機械学習sudo pip install pandas sudo pip install scikit-learn sudo pip install scipy #mecab sudo apt

    scikit-learn(機械学習)の推定器:Estimatorの選び方入門
  • Bag of wordsでのテキストマイニング最速精度向上方法

    ※サンプル・コード掲載 あらすじ 空前のAI人工知能)ブームで、NLP(自然言語処理)に興味を持ち、MeCabやKuromoji等の形態素解析器を試した方は多いと思います。 ただし、いまいち形態素解析器が何に活かせるのか把握していない人は多く、その出力をどう料理すればいいのかわからない人が多いのも事実です。 そこで、記事は形態素解析アウトプットを利用し、最速でBag of wordsベースのテキストマイニングをする方法を解説します。 1.使用した環境 Windows or Mac Java1.8x(最新のバージョン) EclipseをIDEとして使用し、Mavenプロジェクトを作成 ライブラリ等の依存関係はMavenのpom.xmlファイルによって解決 2.Kuromojiのセットアップ 以下参照 Kuromoji(形態素解析)を2分で使えるようにする方法(Java) 3.シンプルな

    Bag of wordsでのテキストマイニング最速精度向上方法
  • Javaで簡単に感情分析する方法

    ※サンプル・コード掲載 あらすじ 近年、AI技術の活用分野は多岐に渡り、その中でも特に、人間の言葉を解釈する技術であるNLP(自然言語処理)が進歩してきています。 テキストマイニングや、対話システム等多岐に渡って使用され、人間のコミュニケーションを一部、チャットボットが代行するという所まで来ています。 今回は、そのNLPの一分野の感情分析と言われる分野で、テキストから人間の感情を読み取る技術について紹介をします。 この技術は、例えば、テキストに未成年に不適切な内容がある場合に、それをブロックするポルノフィルターや、暴力やヘイトスピーチを含んだ内容を検知する、オフェンシブフィルター等、実用的な活用が進んでいる分野です。 使用した環境 Windows or Macを仮定Eclipse(Neon3)を使用Java8.X(最新バージョン)を使用 形態素解析機器(Kuromoji)の準備 以下参照

    Javaで簡単に感情分析する方法
  • 少ない画像から画像分類を学習させる方法(kerasで転移学習:fine tuning)

    ※サンプル・コード掲載 あらすじ 「フルーツの画像を判別するモデルを作ってくれませんか?」 と言われた時に、どのようにモデルを作りますか? ディープラーニングで画像分類を行う場合、通常畳み込みニューラルネットワークという学習手法を使いますが、画像の枚数によっては数週間程度がかかってしまいます。 また、学習に使用する画像の枚数も大量に用意しないといけません。 では、短時間・少ない画像から画像を分類するモデルを作るにはどうすればよいでしょうか。 その解決策として、画像分類でよく使われているfine tuningという手法をご紹介します。 今回はkeras2.0を使ってサンプルコードを書いて行きます。 *keras = Pythonで書かれたニューラルネットワークライブラリ。裏側でtheanoやtensorflowが使用可能。 fine tuning(転移学習)とは? 既に学習済みのモデルを転用

    少ない画像から画像分類を学習させる方法(kerasで転移学習:fine tuning)
  • 自動文章生成AI(LSTM)に架空の歴史を作成させた方法とアルゴリズム

    ※サンプル・コード掲載 1.AIに文章を作らせる方法概要 架空の名前から架空の人物の歴史概要を作成させてみました。 やり方としては、wikipediaの人物の概要の部分を抜き出してRNNにトレーニングさせます。 そのトレーニングさせたモデルに対して名前を入力すると、その人物の概要を出力してくれるようにします。 RNNとは、Recurrent Neural Networksの略で、時系列の情報を学習させるためのニューラルネットワークのモデルのことです。 文章を生成させるようなモデルの場合、多層パーセプトロンのようなモデルだと出力の長さが一定になってしまい、うまく作ることができません。 そこでRNNを使い、入力が単語(文字)、出力が次の単語(文字)として学習させると、そのモデルに次々と出力された単語を入力させることによって文章が生成出来るようになります。 そして、RNNは内部の重みを入力によっ

    自動文章生成AI(LSTM)に架空の歴史を作成させた方法とアルゴリズム
  • MeCab(形態素解析)をPythonから2分で使えるようにする方法

    ※サンプル・コード掲載 あらすじ Javaだと、Kuromojiを使用するまでに必要な手続きは、基的にjarファイルを追加するだけで完了しますので、形態素解析を使うまでの敷居は高くありません。 しかし、PythonでMeCabを使おうとすると、セットアップに時間を取られてしまうことがあります。 ですので、今回は最小限の労力で、PythonからMeCabを使う方法を紹介致します。 使用した環境 Ubuntu 16.04python3、pipはインストールされていると仮定 *インスタンスを用意した直後の、何も手を加えていないインタクトなマシンの状態のままです。 MeCabのインストール(1分以内) コマンドを打ち間違えなければ、完了まで1分かかららず、ご活用いただけるはずです。 MeCabを使えるようにするという事だけを優先するので、MeCabの詳細等は、別途御確認頂ければと存じます。 Me

    MeCab(形態素解析)をPythonから2分で使えるようにする方法
  • 1