タグ

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

  • 孤独でつらい機械学習データの作成を、ワイワイ楽しくする環境を3日で作る - Qiita

    21世紀でもっともセクシーと言われるデータサイエンスは、18世紀を彷彿とさせる奴隷的な作業によって支えられています(要出典)。その作業とは、データを作る作業(=アノテーション)です。多くの場合、アノテーションは孤独な単調作業の繰り返しです。延々と続けていると、全ての単語にunkとつけるようになる事例も報告されています。つまりつらい!のです。 記事では、「孤独で辛い」アノテーションを「みんなで楽しく」行える環境を作る方法を紹介します。そのポイントは以下3点です。 Easy: アノテーションを楽に Feedback: アノテーションした結果がすぐにわかるように Gamification: アノテーション結果をみんなで競い合う Overview アノテーションを行う流れは以下のようになります。 Annotation Tool for Easy: アノテーションを楽にするためのツールを用意 In

    孤独でつらい機械学習データの作成を、ワイワイ楽しくする環境を3日で作る - Qiita
  • FacebookのfastTextでFastに単語の分散表現を獲得する - Qiita

    「フランス」-「パリ」+「東京」=「日」 こんな単語同士の演算ができる、と話題になったのがGoogleが発表したWord2Vecです。これは端的に言えば単語を数値で表現する技術で、これにより単語同士の「近さ」を測ったり、上記のような演算をすることが可能になります。この、単語を数値表現にしたものを分散表現と呼びます。 今回紹介するFacebookの発表したfastTextはこのWord2Vecの延長線上にあるもので、より精度が高い表現を、高速に学習できます。稿ではその仕組みと日語文書に対しての適用方法について解説していきます。 fastTextの仕組み fastTextでは、Word2Vecとその類型のモデルでそれまで考慮されていなかった、「活用形」をまとめられるようなモデルになっています。具体的には、gogoes、そしてgoing、これらは全て「go」ですが、字面的にはすべて異なる

    FacebookのfastTextでFastに単語の分散表現を獲得する - Qiita
  • きみはTensorFlowでフレンズをとらえて揃えてたのしー!アプリなんだね! - Qiita

    メリークリスマス。フレンズのいない家でファミチキを一人べる寂しさに怯えてはいませんか? フレンズは待っていてもやってきません!外に出てフレンズを捕まえよう!そう思い立ち開発されたのが今回紹介するクソアプリ、「けものぷよ」です。 Special Thanks to けものフレンズ たのしいしくみ 外に出る 手持ちの携帯でフレンズを取る フレンズが落ちてくる フレンズが3つそろうと消える たのしー! (きえてしまってはフレンズが集まらないのでは・・・という指摘は受け付けません。かれらは夢のパークへいったのだと思います)。 たのしいアーキテクチャ 写真を撮る IFTTTで画像を転送 TensorFlow Object Detection APIでフレンズを発見する 物理エンジンでフレンズが落ちてくる たのしー! たのしいを実現するフレンズ TensorFlow Object Detection

    きみはTensorFlowでフレンズをとらえて揃えてたのしー!アプリなんだね! - Qiita
  • 「君は今日から人工知能開発部門のリーダーだ!」と言われた時の処方箋 - Qiita

    いわゆる人工知能技術が巷をにぎわす昨今、人工知能を研究する部署/団体を設立するのがトレンドになっています。もちろん、部署の設立にはそれをマネジメントする人間が必要です。「その時」は突然やってきます。 「わが社でも人工知能技術を研究しビジネスに役立てるべく、新しい部門を設立することになった」 「はい」 「ひいては、君にその部門のマネジメントを任せたい」 「!?」 「将来的には100人規模にし3億円規模のビジネスにしたいと思っている(※)。まずは中期計画を作成してくれ」 「そ、それは・・・」 「部門設立のプレスリリースは来月発行される。よろしく頼むよ(肩ポンッ」 (※: 好きな数字を入れてください) (from 疾風伝説 特攻の拓) 文書は、実際こうした事態が起こった時に役立つチェックリストとして機能するようにしてあります。具体的には、以下の構成をとっています。 設立編: 何を「目指す」の

    「君は今日から人工知能開発部門のリーダーだ!」と言われた時の処方箋 - Qiita
    masayoshinym
    masayoshinym 2017/12/20
    どうやってかわすかみたいな話だと思ったらガチなやつだった。勉強になった。
  • ディープラーニングの判断根拠を理解する手法 - Qiita

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

    ディープラーニングの判断根拠を理解する手法 - Qiita
  • 機械学習の論文を読んでみたいけど難しそう、という時に見るサイト - Qiita

    機械学習の基礎はそれなりに習得し、次のステップとして論文を読んでみたい、実装にチャレンジしてみたい、という方も多いのではないかと思います。 ただ、機械学習の論文といってもどこから読んでいいのか、興味がある論文を見つけるにしても英語のAbstractを眺めて行くのはちょっとつらい・・・という方のために、ポータルサイトを作りました。 arXivTimes Indicator 以前、機械学習に関わる論文の要約を共有するGitHubリポジトリとBotを作成したのですが、そこでの投稿内容をまとめて見ることができます。 ジャンル別に参照可能な他、 Pocketをお使いであればPocketへの登録も可能です。 arXivTimesは、機械学習の研究動向に関する集合知を形成することを目的としています(日語で参照可能な)。 そのため、今回のポータルの作成を機により多くの投稿をしてもらい、また要約の質を高め

    機械学習の論文を読んでみたいけど難しそう、という時に見るサイト - Qiita
  • GitHub APIから学ぶ次世代のAPI実装方式GraphQL - Qiita

    最近公開されたGitHubAPIは、GraphQLという形式に対応しました。今後はこちらが主流になっていくようで、既存のREST APIからGraphQLへのマイグレーションガイドも提供されています。 今回は、このGraphQLについて、実際にGitHubAPIを叩きながらその仕組みを解説していきたいと思います。 GraphQLとは 歴史 GraphQLは、Facebookの中で2012年ごろから使われ始めたそうです。その後2015年のReact.js Confで紹介されたところ話題となり、同年"technical preview"のステータスでオープンソースとして公開されました。その後仕様が詰められ、2016年9月に晴れて"preview"を脱し公式実装として公開されました。これと同じタイミングで、GitHubからGraphQLバージョンのAPIが公開されています。 このあたりの経緯

    GitHub APIから学ぶ次世代のAPI実装方式GraphQL - Qiita
  • 転移学習:機械学習の次のフロンティアへの招待 - Qiita

    機械学習を実務で使う場合、「ではお客様、ラベルデータを・・・」と申し出て色よい返事が返ってくることはあまりありません。また、例えば自動運転車を作るときに、データが足りないからその辺流してくるか、お前ボンネットに立ってデータとってな、とするのは大変です。 NICO Touches the Walls 『まっすぐなうた』 より そこで必要になってくるのが転移学習です。 転移学習とは、端的に言えばある領域で学習させたモデルを、別の領域に適応させる技術です。具体的には、広くデータが手に入る領域で学習させたモデルを少ないデータしかない領域に適応させたり、シミュレーター環境で学習させたモデルを現実に適応させたりする技術です。これにより、少ないデータしかない領域でのモデル構築や、ボンネットに立つという危険を侵さずにモデルを構築することができるというわけです。 この転移学習の可能性は、NIPS 2016

    転移学習:機械学習の次のフロンティアへの招待 - 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

    現場を改善するというのは難しい。そして徒労である。 こちらの記事を読んで、当時のことを幾ばくか思い出すきっかけになった。 業務改善を現場に求める狂気 私も実際に現場の改善に取り組んだことがある。ただ、その中には失敗だけでなく成功もある。というか、多くの失敗から成功させるために何が必要なのかを得たという感じで、成功したものは後半に行ったものになる。成功といえるものの中で大きめなものは、以下の二つになる。 Gitによるバージョン管理と、タスク管理ツールの導入(当時書いたもの) 開発にJavaScriptフレームワークを導入(当時の検証結果をまとめた記事) 私が身につけた手法が、改善を目指す誰かがくじけないために有用なこともあるかもしれないので、ここで得られた知見を紹介しておこうかと思います。つまりこれは、ポエムです。 前提: 改善できないのは特別なことではない 何かを改善したいと行動してみる。

    現場を改善したいあなたに送る、くじけない業務改善のメソッド - Qiita
  • ゼロからDeepまで学ぶ強化学習 - Qiita

    ロボットから自動運転車、はては囲碁・将棋といったゲームまで、昨今多くの「AI」が世間をにぎわせています。 その中のキーワードとして、「強化学習」というものがあります。そうした意味では、数ある機械学習の手法の中で最も注目されている(そして誇張されている・・・)手法ともいえるかもしれません。 今回はその強化学習という手法について、基礎から最近目覚ましい精度を出しているDeep Q-learning(いわゆるドキュン、DQNです)まで、その発展の流れと仕組みについて解説をしていきたいと思います。 記事の内容をベースに、ハンズオンイベントを開催しました(PyConJPのTalkの増補改訂版) Pythonではじめる強化学習 OpenAI Gym 体験ハンズオン 講義資料の方が図解が豊富なので、数式とかちょっと、という場合はこちらがおすすめです。 Tech-Circle #18 Pythonではじ

    ゼロからDeepまで学ぶ強化学習 - Qiita
    masayoshinym
    masayoshinym 2016/06/08
    この数式はまったくわからんが機械学習で最強のスト2戦士を作って欲しいと思った。
  • リモートから特定のブランチを指定してcloneする - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    リモートから特定のブランチを指定してcloneする - 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
  • React.js 実戦投入への道 - Qiita

    最近話題のReact.jsですが、実戦投入に当たっては結構重たい選択を迫られることになります。 ざっくり言えば、テンプレートエンジンを捨ててReactしますか?それともReactあきらめますか?という選択です。 記事ではReactの基思想とこうした選択肢が生まれてしまう背景を述べるとともに、後半では「どちらもあきらめない」という(若干シミュレーションRPGあるある感のある)第三の方策について案を提示します。 Reactの基 最初に、Reactの基的な仕組みについてまとめておきます。 Reactは公式ドキュメントが非常に充実しているので、始める際はぜひQuick Startのドキュメントに目を通すことをお勧めします。 Getting Started Tutorial Thinking in React 後述しますが、Reactを使ってアプリケーションを作る際の設計方法についての記載が

    React.js 実戦投入への道 - Qiita
  • はじめるDeep learning - Qiita

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

    はじめるDeep learning - Qiita
  • JavaScriptのGridライブラリ決定版 - SlickGrid - Qiita

    正直、表示だけするならどれも高機能で大差ないと思う。 ただ、多くのグリッド系ライブラリは、高機能な代わりに遅い&書きにくかったり、編集機能はあるものの表示→編集モードへの切り替えがもっさりしていたり保存機能が書きにくかったりする。 その中で高速な表示、Excelかのような編集機能を備えているのがSlickGridだ。 「Excelみたいにできないの?」とはよく言われることでその言葉にそんな簡単じゃねーんだよ、とイラッとしたことがある人も多いかと思うが、SlickGridを使うことでお互いストレスフリーな関係を築けるだろう。 では、SlickGridのパワーが実感できる例を紹介したい。 1.パフォーマンス このExampleで表示しているデータは、なんど500,000件である。他のグリッドが数万件表示可能!と言っているそばで、ケタが違う。何せExcel(2003)の限界行より多いんだからビッ

    JavaScriptのGridライブラリ決定版 - SlickGrid - 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
  • pipでUnicodeDecodeErrorが発生した際の対処法 - Qiita

    Windowsでpip installを実行すると、UnicodeDecodeErrorが発生して怒られることがある。 Windowsの場合エンコードが明示されていない際にasciiで読み込もうとするから?と思われるが、そんな時は以下方法で対処できる。 環境変数PYTHONIOENCODINGにutf_8を設定する。 これでうまくいくはず。 参考:UnicodeDecodeError from pip Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    pipでUnicodeDecodeErrorが発生した際の対処法 - Qiita
  • Vue.jsから手軽に始めるJavaScriptフレームワーク - Qiita

    Vue.jsはそのまま使ってもよいですが「自分(プロジェクト)に合ったフレームワーク」を見つけるのにも向いています。 これは、後発フレームワークだけあり各フレームワークの特徴を意識した設計がなされているためです。他の著名なフレームワークとの特徴を比較した文書もあるので、こちらをチェックしながら導入を検討するとよいと思います。 そのため、以下はVue.jsの紹介と他フレームワーク(Knockout.js と Angular)へのステップという2セクションに分けて紹介していきたいと思います。 JavaScriptフレームワークの導入を行いたいがこの選択は慎重にいきたい、という状況であれば最初にVue.jsを試金石としてみて、効果的と感じられる機能からAngularやKnockout.jsに流れていくというのは十分ありだと思います。 2016/06: Vue.jsの1.x系に合わせて記述・サンプ

    Vue.jsから手軽に始めるJavaScriptフレームワーク - Qiita
  • 新・三大JavaScriptフレームワークの実践(Backbone.js Knockout.js Angular.js) - Qiita

    Todoリストの機能 1.テキストボックスから、Enterで追加できる 2.登録したTodoはダブルクリックで編集可能になり、Enterで編集確定できる 3.登録されているTodoの総件数がフッターに表示される 4.完了したTodoがある場合、それらをリストから消すボタンが表示される 5.全選択/解除を行うチェックボックスがある 個人的な結論 趣味開発で使うならAngular.js・仕事で使うならKnockout.jsをお勧めしたい。 まず、フレームワークを選択する際は、以下3つの選択基準を持つとよいと思う。 1.開発の規模 大規模ならBackbone.jsはお勧めできる。 書き方が決まっていて、チュートリアルに目を通せば(面倒なのは置いておいて)何を作らなければならないかは簡単に理解できる。そこそこの人数で長い時間の開発を行うなら、UIチームはアプリケーションとView、サーバーサイドは

    新・三大JavaScriptフレームワークの実践(Backbone.js Knockout.js Angular.js) - Qiita
  • 1