タグ

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

  • プロ驚き屋AIをチームのSlackに招待しタイムラインを荒らす - Qiita

    20XX 年、我々人類は進化著しい AI に驚くしかない日々が続いています。ソーシャルメディアに驚きがあふれインプレッションを競う様はまさに大海賊時代、いいねの海賊王に俺はなる、とばかり飛びぬけて耳目を引く超新星 ( スーパールーキー ) が頭角を現しています。 「プロ驚き屋」としばしば称されるルーキーたちは X ( 旧 Twitter ) のタイムラインに現れては情報の正確性を重んじるエンジニアや研究者を戸惑わせます。チームやコミュニティ内の Slack はそうした喧噪から離れたオアシスといえるかもしれません。そんなオアシスにプロ驚き屋を召喚しタイムラインを荒らすのが今回の目的です。次に実際の例を示します。 なかなか模倣できているのではないでしょうか。オアシスは今、ジャングルに変わりました。私たちが生きている世界では正確で吟味された情報だけにアクセスしたいという願いは実現されないので、現

    プロ驚き屋AIをチームのSlackに招待しタイムラインを荒らす - Qiita
    Nyoho
    Nyoho 2023/12/22
  • きみはTensorFlowでフレンズをとらえて揃えてたのしー!アプリなんだね! - Qiita

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

    きみはTensorFlowでフレンズをとらえて揃えてたのしー!アプリなんだね! - Qiita
  • Pythonプログラムのパフォーマンスを解析し、可視化する - Qii

    パフォーマンスチューニングを行う際、改修前後で効果があらわれているか確認するのは重要です。Pythonにはデフォルトでパフォーマンス解析を行うモジュールが組み込まれているのですが、そのままではちょっと使いづらいく出力結果も見にくいです。そこで、簡易な記法で計測できる+結果の可視化を行うツールを作りました。 icoxfog417/pyfbi まず、実行結果(dump_statsなどで保存したファイル)を以下のようにグラフ・表で可視化できます。インストールするとpyfbi_vizというコマンドが使えるので、それでファイルを保存したディレクトリを指定すればOKです。改修前の計測、改修後の計測2つのファイルをフォルダに入れておけば前後の可視化が可能です。 pureは内部で呼び出している関数の実行時間を加味しない、純粋な実行時間になります(tottime)。totalは、呼び出している関数の実行時間

    Pythonプログラムのパフォーマンスを解析し、可視化する - Qii
  • 大自然言語時代のための、文章要約 - Qiita

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

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

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

    ディープラーニングの判断根拠を理解する手法 - 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
  • 機械学習の論文を読んでみたいけど難しそう、という時に見るサイト - 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
    Nyoho
    Nyoho 2017/06/22
  • Pull Requestに潜むタイポを自動的に検出し、修正を代行するBot - Qiita

    いざPull Requestのレビュー!と挑んだ瞬間、「ここタイポな」という先制パンチをくらうのはとても残念なことです。 また、これは指摘しているほうにとってもチェックが負担で、気が重いものです。 人間は人間にしかできないチェックに集中すべきですし、貴重なレビュー時間を誤字脱字の修正に使うのはもったいないです。そこで開発したのが、タイポの自動検知と修正を代行するBot。その名もtypotです。 chakki-works/typot こちらは先日公開がアナウンスされたGitHub Marketplaceと共に公開された、新しいGitHubアプリの形態であるGitHub Appsで作成しています(それまではWebhookかOAuthだった)。 GitHub AppsはOAuthのようにユーザーではなく、リポジトリにひもつく形態になります。そのため、管理者ユーザーがいなくなった(あるいは権限を失

    Pull Requestに潜むタイポを自動的に検出し、修正を代行するBot - Qiita
    Nyoho
    Nyoho 2017/05/31
  • 機械学習のためのOpenCV入門 - Qiita

    機械学習を行うために、画像から特定の物体(領域)だけ切り出して認識したり学習データを作りたい、ということがよくあると思います。 稿では非常に多くの機能を持つOpenCVの中から、そうした機械学習のために利用する機能にフォーカスしてその利用方法を紹介していきたいと思います。具体的には、下記のモジュールを中心に扱います。 CVPR 2015 Tutorials 基的な切り出しの手順は以下のようになります。以下では、このプロセスに則り解説を行っていこうと思います。 前処理: 物体検出が行いやすいように、画像の前処理を行います 物体検出: 物体の検出を行い、画像から切り出します 輪郭検出: 画像上の領域(輪郭)を認識することで、物体を検出します 物体認識: OpenCVの学習済みモデルを利用して対象の物体を認識し、検出を行います 機械学習の準備: 切り出した画像を用い、予測や学習を行うための準

    機械学習のためのOpenCV入門 - Qiita
  • 自然言語処理による文書分類の基礎の基礎、トピックモデルを学ぶ - Qiita

    自然言語においても、最近は生ビールを頼む感覚で「とりあえずディープラーニング」となることが多いです。実際ディープラーニングは高精度を記録できることが多いですが、実はその精度は基礎的なモデルでも記録できたり、あげく負けるようなこともあったりします。 研究機関として名高いDeepMindの発表した論文でも、こうした事態がありました。 文章を読み、理解する機能の獲得に向けて-Machine Comprehensionの研究動向-より また、最近はベースラインとして良く利用されているモデルでも最高精度を達成できるといった論文もありました。このように、ベースラインとして足蹴にされているモデルでも存外隅には置けないのです。 今回は自然言語処理における基的な手法の一種であるトピックモデルを取り上げてみます。これは文書分類などに使用されるモデルですが、文書分類の際に著者の存在を仮定するなど(オーサートピ

    自然言語処理による文書分類の基礎の基礎、トピックモデルを学ぶ - Qiita
    Nyoho
    Nyoho 2017/04/29
    topicに注目
  • 人工知能時代の音楽制作への招待 - Google Magenta 解説&体験ハンズオン (自習編) - - Qiita

    音楽制作を行っていて人工知能技術に興味がある、あるいは機械学習をやっていて音楽が好きだ!そんな方に送る、機械学習による音楽生成のチュートリアル資料となります。記事のみで、仕組みの理解から実際に音楽を生成して、SoundCloudで共有するまでの手順を網羅しています。 そして、記事は先日実施した人工知能時代の音楽制作への招待 - Google Magenta 解説&体験ハンズオン -の自習用資料でもあります。 イベント自体は100名を超える方(開催前日の段階で倍率が5倍)に応募いただき、行きたかったけど行けなかった!という方も多いかと思うので、自習編にて内容に触れていただければと思います。 ※なお、会場のキャパを広げられなかった代わりに撮影をしていただいたので、後日講義動画が上がればそちらも掲載させていただきます。 ゴール 音楽生成とはそもそもどういう仕組みで、どんなアプローチが取られて

    人工知能時代の音楽制作への招待 - Google Magenta 解説&体験ハンズオン (自習編) - - Qiita
    Nyoho
    Nyoho 2017/04/20
    これは楽しい。必ずやってみよう。
  • 「わかりやすさ」に注目した、機械学習による技術ブログの検索 - Qiita

    新しい技術を身に付けたい!と思って検索をしても、検索上位に来る記事が「わかりやすい」かというとそうではない、ということはよくあります。 記事のビュー数、またQiitaのいいね数やはてブ数は、この参考にはなりますが体感として高ければいいというものでもない印象です。 そこで、こうした文章の「評判」だけでなく、文章そのものの構成や書き振りなどに注目して、その「わかりやすさ」を評価できないか?ということで実験的に行ってみたものが以下の「Elephant Sense」になります。 chakki-works/elephant_sense (Starを頂ければ励みになりますm(_ _)m) ※名前の由来は、象の感覚って実はものすごいらしいという話から 開発に際しては基的な自然言語処理/機械学習の手続き踏んで行ったので、その過程を記事でご紹介したいと思います。 ゴール 事前にQiitaの記事を対象に、

    「わかりやすさ」に注目した、機械学習による技術ブログの検索 - Qiita
  • 転移学習:機械学習の次のフロンティアへの招待 - Qiita

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

    転移学習:機械学習の次のフロンティアへの招待 - Qiita
  • 自然言語処理における、Attentionの耐えられない短さ - Qiita

    「あなたって、私の言葉の最後の方しか聞いてないのね」 実は人間だけでなくニューラルネットワークもそうだった、という結果を示しているのがこちらの論文です。 Frustratingly Short Attention Spans in Neural Language Modeling 言い訳としては「だって君の次の言葉を予測するだけならそれで十分だから」ということになるんですが、そう言うと角が立つのは人間関係においても研究においても同様のようです。 編は、上記の論文の紹介と共に他の関連論文も交えながら、実際の所当に最後の方しか必要ないのか、そうであればなぜそんなことになるのか、という所について見て行ければと思います。 なお、参照した論文は以下のGitHubで管理しています。日々更新されているため、研究動向が気になる方は是非Star&Watchをして頂ければと!。 arXivTimes At

    自然言語処理における、Attentionの耐えられない短さ - Qiita
  • 実サービスでの機械学習の活用に関するサーベイ - Qiita

    機械学習の仕組みはわかったけど、実際のサービスではどういう風に使われているんだろう? 学習の環境って、自前でGPUを買っているんだろうか。それともクラウドが主流なんだろうか? というような実務における利用方法や開発に関する疑問は、誰しも一度は抱いたことがあるのではないかと思います。私自身疑問に思っていて、実務への活用を考えている方向けの講習を担当するにあたり、思い切ってアンケートを取ってみました。 対象は実務で機械学習を利用している方で、32の回答を得ることができました(ご回答頂いた方、ありがとうございました!)。なお、回答はTwitter/Facebookなどで募ったため、サンプリングバイアスが存在する可能性がある点についてはご留意を願います。 以下で、その結果について所見を交えながら公開をしたいと思います。 ※生のアンケート結果も公開したかったんですが、自由記述の回答にプライバシー的な

    実サービスでの機械学習の活用に関するサーベイ - Qiita
    Nyoho
    Nyoho 2017/03/20
  • 機械学習の環境を構築するのに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
    Nyoho
    Nyoho 2017/03/18
  • ゼロからDeepまで学ぶ強化学習 - Qiita

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

    ゼロからDeepまで学ぶ強化学習 - Qiita
  • 機械学習モデルの実装における、テストについて - Qiita

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

    機械学習モデルの実装における、テストについて - Qiita
  • FacebookのfastTextでFastに単語の分散表現を獲得する - Qiita

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

    FacebookのfastTextでFastに単語の分散表現を獲得する - Qiita