タグ

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

  • Pythonではじまる、型のある世界 - Qiita

    アノテーションを実際に行っているのは以下の部分になります。 name: str: 引数nameが、str型であることをアノテート -> str: 関数greetingの返り値の型がstrであることをアノテート また、Type Hintsでは変数宣言における型コメントについても言及されています。 こちらは構文ではなく当にコメントの拡張になりますが、現在既にこうした型に関するコメントを付けているのであれば、上記の記法に乗っ取っておけば将来的に何かしらのツールで型チェックを行えるようになる可能性があります。 これがPythonに導入された、型のある世界・・・になります。 なお、付与されたアノテーションは、実行時にはチェックされません。端的に言えばコメントの延長となります。 そのため強制力はありませんが、実行時に何もしないためパフォーマンスに影響を与えることもありません。 よって原則的には静的解

    Pythonではじまる、型のある世界 - Qiita
  • 大自然言語時代のための、文章要約 - Qiita

    さまざまなニュースアプリ、ブログ、SNSと近年テキストの情報はますます増えています。日々たくさんの情報が配信されるため、Twitterやまとめサイトを見ていたら数時間たっていた・・・なんてこともよくあると思います。世はまさに大自然言語時代。 from THE HISTORICAL GROWTH OF DATA: WHY WE NEED A FASTER TRANSFER SOLUTION FOR LARGE DATA SETS テキスト、音声、画像、動画といった非構造データの増加を示したグラフ そこで注目される技術が、「要約」です。膨大な情報を要点をまとめた短い文章にすることができれば、単純に時間の節約になるだけでなく、多様な視点から書かれた情報を並べて吟味することもできます。 文書は、この文書要約(Text Summarization)についてその概観を示すことを目的として書かれていま

    大自然言語時代のための、文章要約 - Qiita
    nfunato
    nfunato 2017/10/29
  • ディープラーニングの判断根拠を理解する手法 - Qiita

    ディープラーニングは特定分野で非常に高い精度が出せることもあり、その応用範囲はどんどん広がっています。 しかし、そんなディープラーニングにも弱点はあります。その中でも大きい問題点が、「何を根拠に判断しているかよくわからない」ということです。 ディープラーニングは、学習の過程でデータ内の特徴それ自体を学習するのが得意という特性があります。これにより「人が特徴を抽出する必要がない」と言われたりもしますが、逆に言えばどんな特徴を抽出するかはネットワーク任せということです。抽出された特徴はその名の通りディープなネットワークの中の重みに潜在しており、そこから学習された「何か」を人間が理解可能な形で取り出すというのは至難の業です。 例題:このネットワークが何を根拠にとして判断しているか、ネットワークの重みを可視化した上図から答えよ(制限時間:3分) image from CS231n Visua

    ディープラーニングの判断根拠を理解する手法 - Qiita
  • 機械学習の環境を構築するのにAnacondaをインストールする必要はない。Minicondaを使おう - Qiita

    Python機械学習の環境を作る、というと山のように「Anacondaをインストールせよ」という記事が出てきますが、実際環境構築はMinicondaというAnacondaの最小構成版で十分です。 ということを伝える記事です。 最速で機械学習の開発環境を作る方法 基は以下で十分です。 Minicondaをインストールする(※もちろんPython3の方をインストールして下さい) conda create -n ml_env numpy scipy scikit-learn matplotlib jupyterで開発環境を作成 activate ml_envで作成した開発環境を有効化 実際はMacWindowsかなどで微妙な差異があるので、詳細はこちらを参照して下さい。 Python機械学習アプリケーションの開発環境を構築する また、開発環境を作成するcondaコマンドの使い方については

    機械学習の環境を構築するのにAnacondaをインストールする必要はない。Minicondaを使おう - Qiita
  • 画像処理の数式を見て石になった時のための、金の針 - Qiita

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

    画像処理の数式を見て石になった時のための、金の針 - Qiita
  • はじめるJupyter Notebook - Qiita

    Jupyter Notebookは、Pythonのコードを含んだWebページ(ドキュメント)を作成できる機能です。 Pythonコードは単純なテキストではなくきちんとPythonコードとして実行されるため、実行可能なコードとその結果を併せて保存しておくことができます。その上Webページのリッチな装飾で解説を入れ、公開/共有できるという至れり尽くせりなツールなのです。 nbviewerはGithub/Gistに上げたJupyter Notebookを参照できるサイトで、こちらを見ればどんな感じで仕上がるのかを見ることができるます。 これを使わない手はない、ということでその使い方について解説します。 インストール Installing Jupyter Notebook なお、Numpyなどの計算系ライブラリとセットで扱う場合は、AnacondaかMinicondaを利用したほうがよいと思います

    はじめるJupyter Notebook - Qiita
  • Chainerで始めるニューラルネットワーク - Qiita

    Chainerは、Preferred Networksが開発したニューラルネットワークを実装するためのライブラリです。その特徴としては、以下のような点があります(ホームページより)。 高速: CUDAをサポートし、GPUを利用した高速な計算が可能 柔軟: 柔軟な記法により、畳み込み、リカレントなど、様々なタイプのニューラルネットを実装可能 直観的: ネットワーク構成を直観的に記述できる 個人的には、さらに一つ「インストールが簡単」というのも挙げたいと思います。 ディープラーニング系のフレームワークはどれもインストールが面倒なものが多いのですが、Chainerは依存ライブラリが少なく簡単に導入・・・できたんですが、1.5.0からCythonを使うようになりちょっと手間になりました。インストール方法については以下をご参照ください。 Mac Windows AWS 公式インストール情報 また、C

    Chainerで始めるニューラルネットワーク - Qiita
  • Python Conda Tips - Qiita

    Pythonの実行環境であるMinicondaのコマンドTips。ドキュメントがあまり充実していない・・・というか、かゆいところに手が届かない感じなのでまとめておく。 公式ドキュメント Command Flow # 仮想環境を作成(virtualenv的なもの) conda create -n my_env numpy scipy # 仮想環境の一覧を表示 conda info -e # 仮想環境を有効化 activate my_env # Windows source activate my_env # Max/Linux # 仮想環境に追加でインストール(バージョンを指定する場合conda install scipy=0.12.0など) conda install scikit-learn # condaで取得できないものについて、pipでインストール(仮想環境にpipを入れて対応)

    Python Conda Tips - Qiita
  • Azure Machine Learning を利用したアプリケーション開発 - Qiita

    Azure Machine Learningは、Webブラウザで手軽に機械学習のモデルを作成することができるプラットフォームです(2015年2月正式リリース)。 ここで作成したモデルはWeb APIから呼び出すことができます。 今までは機械学習を組み込む・・・となるとPython等のライブラリを使うことが一般的で、なれた言語とは異なるプラットフォームで開発しなければならないことも少なくありませんでしたが、これでWebリクエストさえ飛ばせれば機械学習アルゴリズムを利用したアプリケーションを開発することが可能になりました。 今回は、このAzure Machine Learningを利用したアプリケーション開発について、その手順を紹介します。以下は、今回作成したモデルの最終的な図になります。このフローに沿って解説していこうと思います。 このモデル、およびこのモデルを利用したアプリケーションのコー

    Azure Machine Learning を利用したアプリケーション開発 - Qiita
  • 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
  • Windows & プロキシ配下でPythonを開発する君へ - Qiita

    まず言っておくべきなのは、もしあなたがMacLinuxを持っているならPythonはそれらで開発したほうがいいということだ。 WindowsでのPythonはかなり手間になる。しかし俺のPC、というかWindows以外選択肢がないんだよという方に向け、PythonWindows、また同じく躓きの元になるプロキシ配下で行う場合の注意点をまとめておきます。 Pythonのインストール これは迷うことなく、Downloadページから・・・と思いきや、そうではなくこちらからダウンロードすることをお勧めしたい。 Miniconda Minicondaとは、Python数学系処理のライブラリをガッツリ詰め込んだAnacondaのライト版である。 PythonでなくMinicondaを入れる最大の理由は、condaコマンドである。 Pythonにおけるパッケージインストールツールであるpipは

    Windows & プロキシ配下でPythonを開発する君へ - Qiita
  • はじめるDeep learning - Qiita

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

    はじめるDeep learning - Qiita
  • 1