タグ

ブックマーク / qiita.com/icoxfog417 (12)

  • 形態素解析をして単語を取り出せているつもり・・・か? - Qiita

    「MeCabで形態素解析をして単語を抽出しましょう」とはよく見る文言ですが、いつから形態素と単語が同じものと錯覚していた?というお話です。 例として、「参考人を呼んだ」という文を形態素解析してみます。 普通の感覚では「参考人/を/呼んだ」になりますが、実際に形態素解析すると以下のようになります。 参考 名詞,サ変接続,*,*,*,*,参考,サンコウ,サンコー 人 名詞,接尾,一般,*,*,*,人,ジン,ジン を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ 呼ん 動詞,自立,*,*,五段・バ行,連用タ接続,呼ぶ,ヨン,ヨン だ 助動詞,*,*,*,特殊・タ,基形,だ,ダ,ダ 「参考/人」と「呼ん/だ」で切れています。つまり、私たちが認識する「単語」と実際の形態素は、一致する場合もあれば形態素がより細かくなる場合もあるということです。 「単語」としてのまとまり: 語の統語性 何を「単語」とす

    形態素解析をして単語を取り出せているつもり・・・か? - Qiita
  • Convolutional Neural Networkとは何なのか - Qiita

    機械学習の世界において、画像といえばConvolutional Neural Network(以下CNN)というのは、うどんといえば香川くらい当たり前のこととして認識されています。しかし、そのCNNとは何なのか、という解説は意外と少なかったりします。 そこで、記事ではCNNについてその仕組みとメリットの解説を行っていきたいと思います。 なお、参考文献にも記載の通り解説の内容はStanfordのCNNの講座をベースにしています。こちらの講座はNeural NetworkからCNN、はてはTensorflowによる実装まで解説される予定なので、興味がある方はそちらもご参照ください。 CNNはその名の通り通常のNeural NetworkにConvolutionを追加したものです。ここでは、Convolution、畳み込みとは一体なんなのか、という点と、なぜそれが画像認識に有効なのかについて説

    Convolutional Neural Networkとは何なのか - Qiita
    gayou
    gayou 2017/08/31
  • 人工知能関連ニュースの、実際のところシリーズ - Qiita

    最近「人工知能が~」というニュースが山のように出てきますが、その中にはだいぶ誇張された表現のものも少なくありません。 人工知能関連の技術に注目が集まるのは、研究資金の増加や案件の発生という面では良いことです。しかし、「仕事が奪われるぞ!」みたいな過度な不安を煽ったり、「人工知能だったら何でもできるんやろ?」といった過度な期待を煽ってしまうことで、実体とはかけ離れた議論や誤解を生んでしまうという面もあります。 稿では、目についた中で大きな誇張があるニュースを取り上げるとともに、その実際のところはどうなのか?について紹介をしていきたいと思います。記事が、冷静な議論と共に背景となる技術的な面への興味の喚起となれば幸いです。 日経のAI記者が始動、1日30の決算サマリーを量産 同僚が人工知能という世界が現実のものになろうとしている。 人工知能は人の仕事を奪うことになるのか、あるいは型にはまっ

    人工知能関連ニュースの、実際のところシリーズ - Qiita
  • 機械学習モデルの実装における、テストについて - Qiita

    数あるフレームワークに付属するExample、機械学習モデルを実装してみた、という話。これらに共通して言えるのは「テストがない」ということです。 機械学習のモデルだって、アプリケーションに組み込まれればプロダクションコードの一部です。テストがない実装を番環境に組み込むか?というと通常そんなことありえないと思います。 (スタジオジブリ 紅の豚 より拝借) 忘れられがちな点ですが、機械学習モデルは「リリースした瞬間」が最高精度になります。なぜなら、リリースした瞬間こそがその時点で手に入るフルフルのデータを使って鍛え上げたモデルであり、それ以降はどんどん未知のデータが入ってくるためです。 そのため、モデルの精度、また妥当性をいつでも検証できるようにしておくというのはとても重要です。これは通常のコードにテストをつける理由と同等で、つまり機械学習モデルだからと言って特別ではないということです。

    機械学習モデルの実装における、テストについて - Qiita
    gayou
    gayou 2016/12/16
    テストだけでなく進め方の話でもある。
  • 画像処理の数式を見て石になった時のための、金の針 - Qiita

    画像処理は難しい。 Instagramのキレイなフィルタ、GoogleのPhoto Sphere、そうしたサービスを見て画像は面白そうだ!と心躍らせて開いた画像処理の。そこに山と羅列される数式を前に石化せざるを得なかった俺たちが、耳にささやかれる「難しいことはOpenCVがやってくれるわ。そうでしょ?」という声に身をゆだねる以外に何ができただろう。 稿は石化せざるを得なかったあの頃を克服し、OpenCVを使いながらも基礎的な理論を理解したいと願う方へ、その道筋(アイテム的には金の針)を示すものになればと思います。 扱う範囲としては、あらゆる処理の基礎となる「画像の特徴点検出」を対象とします(実践 コンピュータビジョンの2章に相当)。なお、記事自体、初心者である私が理解しながら書いているため、上級画像処理冒険者の方は誤りなどあれば指摘していただければ幸いです。 画像の特徴点とは 人間が

    画像処理の数式を見て石になった時のための、金の針 - Qiita
    gayou
    gayou 2016/01/31
  • TensorFlowを算数で理解する - Qiita

    TensorFlowは主に機械学習、特に多層ニューラルネットワーク(ディープラーニング)を実装するためのライブラリになりますが、その基的な仕組みを理解するのにそうした難しい話は特に必要ありません。 記事では、TensorFlowの仕組みを、算数程度の簡単な計算をベースに紐解いていきたいと思います。 TensorFlowの特徴 初めに、TensorFlowの特徴についてまとめておきたいと思います。 TensorFlowは、その名前の通りTensor(多次元配列、行列などに相当)のFlow(計算処理)を記述するためのツールです。その特徴としては、以下のような点が挙げられます。 スケーラビリティ PC、サーバー、はてはモバイル端末まで、各マシンのリソースに応じてスケールする。つまり、低スペックなものでもそれなりに動くし、GPUを積んだハイスペックなサーバーであればそのリソースをフルに活用した

    TensorFlowを算数で理解する - Qiita
  • Pythonで機械学習アプリケーションの開発環境を構築する - Qiita

    Python機械学習アプリケーションの開発環境、具体的にはNumpy/Scipy/scikit-learnを導入する手順について解説します。 なお、環境はPython3ベースを想定しています。 Minicondaベース(推奨) 機械学習系のパッケージはコンパイルが面倒なものが多いため、コンパイル済みバイナリをインストールできるconda(Miniconda)での環境構築を推奨します。 まずはPython体(Python3想定)、パッケージ管理ツールであるpip、仮想環境を作成するvirtualenv、といった基的な環境の構築を行います。 ※virtualenvについては今回(condaを使う場合)は不要ですが、Pythonで開発を行うなら入れておくべきパッケージなので併せて入れておきます。 Mac/Linux デフォルトのPythonと分けてインストールするため、pyenvを利用しま

    Pythonで機械学習アプリケーションの開発環境を構築する - Qiita
    gayou
    gayou 2015/04/12
    今年こそは
  • 2015年のJavaによるWeb開発 - Qiita

    最近Javaしてますか? 昔はServletとJSPでやったな・・・Seasar2には感動したっけ、そんな思い出が浮かんだとしたらあなたのJavaはJ2EE、JavaEE的には5.0ぐらいで止まっているといわなければなりません。 ※Seasar2は2016/9/26にサポートが停止になります。OSSであるためforkされメンテナンスが続く可能性はありますが、一つの時代の区切りになると思います。 あれからJavaも進化を重ね、最新版のJavaEE7.0では他言語のフレームワークの生産性にも引けを取りません。 まだJavaやってるの(苦笑)の時代が長すぎたのか、2013年のリリースにもかかわらずJavaEE7.0についての記事は充実しているとは言えない状況です。ただ、その仕組みは素晴らしいものがあるのでこれを機に久々にJavaでもやってみるかなと思ってもらえれば幸いです。 ※2017/9/21

    2015年のJavaによるWeb開発 - Qiita
    gayou
    gayou 2015/02/21
  • Pythonを書き始める前に見るべきTips - Qiita

    Pythonを使ってこの方さまざまな点につまずいたが、ここではそんなトラップを回避して快適なPython Lifeを送っていただくべく、書き始める前に知っておけばよかったというTipsをまとめておく。 Python2系と3系について Pythonには2系と3系があり、3系では後方互換性に影響のある変更が入れられている。つまり、Python3のコードはPython2では動かないことがある(逆もしかり)。 Python3ではPython2における様々な点が改善されており、今から使うなら最新版のPython3で行うのが基だ(下記でも、Python3で改善されるものは明記するようにした)。何より、Python2は2020年1月1日をもってサポートが終了した。よって今からPython2を使う理由はない。未だにPython2を使う者は、小学生にもディスられる。 しかし、世の中にはまだPython3に

    Pythonを書き始める前に見るべきTips - Qiita
    gayou
    gayou 2015/02/19
  • お前のAngular.jsはもうMVCではない。と言われないためのTutorial - Qiita

    JavaScriptフレームワークに興味あるし、Angular.jsを使ってみようかな・・・ そんな純真無垢なあなたを混沌の世紀末に引きずり込むのが、ほかでもないTutorialなのです。 TutorialではほぼControllerしか出てこないので、素直にこの通り書いているとまず間違いなく3カウントでControllerにコードが集中するいわゆるFat Controllerになり、せっかくMVCフレームワークも地獄の荒野になります。 実は、Angular.jsでまず目を通すべきなのはDeveloper GuideのConceptual Overviewです。これを読めばどう処理を分割するかがきちんと書かれていますが、以下ではそれ+経験をもとにAngular.jsで正しくMVCを使用するためのポイントをまとめました。 Angular.jsの3原則 1.Controllerはイベントハンド

    お前のAngular.jsはもうMVCではない。と言われないためのTutorial - Qiita
  • Angular.jsで実践 アニメーション - Qiita

    スライドの動きやフリック時の画面遷移、昔アニメーションといえばゲームなイメージでしたが、モバイル端末が登場して以来結構身近なものになりました。 ただ、身近だから簡単というわけでもなく、動作にアニメーションをつけるのは結構面倒。「これちょっとさ、下からひゅっと出てくる感じにしてよ」と言われてそんな簡単じゃないんだよとイラッとすることもあるだろう。 「アニメーションはもうデザインみたいなもんだし、CSSで書いてよろしくやってくれたらな・・・」とJQueryで実装しながら見るはかない夢・・・を現実にしてしまうのが、Angular.jsのng-Animateなのであります! 準備 アニメーションを使用するには、angular.js体意外にangular-animate.jsが必要となります。Googleがホスティングしてくださっているので、ありがたく使わせていただきましょう。 Google Ho

    Angular.jsで実践 アニメーション - Qiita
  • Angular.js レンダリング処理をカスタマイズする - Qiita

    Angular.jsを使っていてこんな風に思ったことはないだろうか。 ループ内のDOMをテンプレート化したいな レンダリング処理を部品化してカスタムタグで呼び出したい jQuery UIとかを使いたいけど、どこで処理すればいいのか(document.readyだと新規追加したものに適用されない) そんな願いをかなえるのがAngular.jsのdirectiveです。directiveは、一言で言えば ModelとDOMを受け取ってレンダリング処理(compile)を行う関数 で、これを使って上記のようなカスタマイズをすることができます。 そんなわけで、作成したサンプルはこちら。このコードを使って解説をしていきたいと思います。 テンプレート化する テンプレート化は、以下のようにかけます。 <disp-destination ></disp-destination>、これがdirectiveを

    Angular.js レンダリング処理をカスタマイズする - Qiita
  • 1