タグ

ブックマーク / qiita.com (90)

  • 【Unity】ソートアルゴリズム12種を可視化してみた - Qiita

    はじめに ソートアルゴリズムの学習として、12種のソートアルゴリズムを実装して可視化してみました。 Unityにはあまり関係がなさそうな話題ですが、Unity上で作ったのでUnityタグをつけます。 バブルソート バブルソートのアルゴリズムは以下のような感じです。 配列の要素を最初から最後まで見ていき、順序が逆の要素があれば入れ替える 全ての要素の順序が正しくなるまで 1.を繰り返す. void BubbleSort(int[] a) { bool isEnd = false; int finAdjust = 1; // 最終添え字の調整値 while (!isEnd) { bool loopSwap = false; for (int i = 0; i < a.Length - finAdjust; i++) { if (a[i] < a[i + 1]) { Swap(ref a[i],

    【Unity】ソートアルゴリズム12種を可視化してみた - Qiita
    Francis
    Francis 2021/10/15
  • 技術ようつべチャンネル集 - Qiita

    役立つYouTubeのチャンネルまとめ 数学、物理、アルゴリズム、プログラミング、などなど自分が使う技術に役立ちそうだな、困ったときによく見たなと思うチャンネルを紹介する。 取っ掛かり、ハマりがち、コツみたいな物が拾える。数学がメイン。随時更新していくつもり。 当たり前だけどちゃんとも読んで勉強するんだぞ。 背景 YouTubeは視聴する登録チャンネルの数が増えると、チャンネルが埋もれて発掘困難になりがち (chrome拡張でできるチャンネルのフォルダ分け機能は、ぽちぽち登録するのも面倒で、そのフォルダの中から掘り出すのも難しい) モチベが上がる(おべんつよしたい)チャンネルを探してるうちに湧いてくる、わんにゃんコンテンツ(だいちゅき)に流され一日が終わるため、 モチベが上がる有用なチャンネルにすぐにたどり着くために、よく使うQiitaに列挙しておくことにした Streamや大学専用サイ

    技術ようつべチャンネル集 - Qiita
    Francis
    Francis 2021/07/15
  • グチャグチャになった「Ubuntu on WSL2」のやり直し方 - Qiita

    人生のやり直し…もとい… グチャグチャに遊びこんだ「WSL2用Ubuntu」を最初からやり直したくなりました… インストールした「Ubuntu」をリセットすることにより、アンインストールせずに簡単にやり直すことができます。以下、手順をまとめておきます。 ➊ Ubuntuのリセット方法 [スタート] → [設定] → [アプリ]にて、「アプリと機能」へ移動。 検索窓から「Ubuntu」を検索。 「Ubuntuアプリ」が見つかったら、それの「詳細オプション」をクリック。 リセットセクションの「リセット」ボタンをクリックする。 これできれいサッパリUbuntuがクリアされます。 ➋ Ubuntu新規作成方法 windowsの検索窓から、「ubuntu」を検索する。 「Ubuntu」アプリをクリック これで最初からやり直すことができます。 一応ではありますが、「PowerShell」からも「Ubu

    グチャグチャになった「Ubuntu on WSL2」のやり直し方 - Qiita
    Francis
    Francis 2021/07/06
  • 機械学習のパラメータチューニングを「これでもか!」というくらい丁寧に解説 - Qiita

    はじめに 私はこれまで機械学習のパラメータチューニングに関し、様々な書籍やサイトで学習を進めてきました。 しかしどれもテクニックの解説が主体のものが多く、 「なぜチューニングが必要なのか?」 という目的に関する記載が非常に少なかったため、体系的な理解に苦労しました。 この経験を後世に役立てられるよう、「初心者でも体系的に理解できる丁寧さ!」をモットーに記事にまとめたいと思います。 具体的には、 1. パラメータチューニングの目的 2. チューニングの手順とアルゴリズム一覧 3. Pythonでの実装手順 (SVMでの分類を例に) の手順で解説を進めます。 独自解釈も含まれるため、間違っている点等ございましたら指摘頂けると有難いです。 なお、文中のコードはこちらのGitHubにもアップロードしております。 2021/9/6追記:LightGBMのチューニング実行例追加 以下の記事に、Ligh

    機械学習のパラメータチューニングを「これでもか!」というくらい丁寧に解説 - Qiita
    Francis
    Francis 2021/06/08
  • Hyper-VでGPU(3Dアクセラレーション)を利用する方法 Windows 10以降編 (GPU-P) - Qiita

    はじめに この記事は,旧バージョンです.新バージョンはこちらです.こちらの記事は更新されません。記録用と引用元として利用されているために残されています.この記事は更新されません. Ubuntu版も投稿しました. Hyper-Vで,GPUを利用する方法として現在公式では,DDAとRemoteFXが案内されていますが,RemoteFXは脆弱性により,更新で無効化されました. DDAは,Windows 10では利用できないし,Windows Server 2019はサポート対象であるにも関わらず,動かないようです. つまり,現在公式資料にある方法ではHyper-Vで3Dアクセラレーションを利用出来ない状態です. しかし,公式資料には今の所,利用方法は存在しませんがRemoteFXに変わる技術として,GPU-Pが発表されています. 既に,Windows SandboxのGPU仮想化,Azureで利

    Hyper-VでGPU(3Dアクセラレーション)を利用する方法 Windows 10以降編 (GPU-P) - Qiita
    Francis
    Francis 2021/05/03
  • 図で理解するTransformer - Qiita

    対象読者 こんな人に向いてます Transformerを知らない人 私も全く知らずに調べました!なんにもわからない人の目線で書きます! 想定される疑問を載せてます! 多層パーセプトロンは知っているけど、それ以降出てきたいろんな用語についていけなくなった人 いつも知らない言葉を含んだ図ばかりで結局詳細がよくわからないって思っている人 図に式も載せて式を見ればやっていることがわかるようにしました! 結局解説サイトを読んでもどう動くかわからない人 実際に軽いデータでTransformerを動かしてみたい人 軽く動かせるNotebookを用意してます! ミスがあればご指摘くださると幸いです。 自然言語処理で大活躍している手法。 機械翻訳 テキスト要約 文章生成 文書カテゴリの分類 最近では、画像データやテーブルデータ(時系列データ)でも活躍しているようだ。 画像認識の大革命。AI界で話題爆発中の「

    図で理解するTransformer - Qiita
    Francis
    Francis 2021/04/12
  • カプセルネットワークはニューラルネットワークを超えるか。 - Qiita

    先日、こんな記事が上がっていました。 グーグルの天才AI研究者、ニューラルネットワークを超える「カプセルネットワーク」を発表 中々刺激的なタイトルですね。 ニューラルネットワークといえば、近年の機械学習分野を支える最も大きな技術の一つであると言えます。そんなニューラルネットワークを超えたカプセルネットワークとは一体何なのでしょうか。また、当にニューラルネットワークを超えたのでしょうか。 記事では、カプセルネットワークの仕組みを理解することで、従来のニューラルネットワークとの違いを比較していきます。 CNN カプセルネットワークに触れるにあたり、まず畳み込みニューラルネットワーク(Convolutional Neural Network; CNN)について理解しなければなりません。なぜなら、カプセルネットワークは、CNNをベースとして、CNNの欠点を克服するために生まれたモデルだからです

    カプセルネットワークはニューラルネットワークを超えるか。 - Qiita
    Francis
    Francis 2021/03/05
  • ひとりNEONのカレンダー | Advent Calendar 2020 - Qiita

    ArmのSIMD拡張であるNEON(厳密にはArm v8 からは基命令セットに組み込まれたけど、一部の命令はやはり拡張命令) その使い方に関して網羅的に説明する。 tomoaki_teshima 一人で書くので、徹底した省エネモードで24日間を乗り切る なお、筆者の勤務先などには一切関係なく、あくまで趣味で知り得た知見を文字に起こすだけのカレンダー。

    ひとりNEONのカレンダー | Advent Calendar 2020 - Qiita
    Francis
    Francis 2020/12/21
  • 2で割ることと3で割ること - Qiita

    この記事でお題にするのはCPUレジスタ上の整数除算です。以下、単に除算とも書きます。 除算は非常に高コストな演算なため、コンパイラは最適化によって、できるだけ整数除算を別の計算に置き換えようとします。 最適化ができる場合の一つとして、割る数が定数である場合があります。頭のいいコンパイラは、除算を乗算とビットシフト等を駆使した演算に置き換えます。この記事では、そういった最適化の背景にある理屈を部分的に解説します。 計算機環境としてはモダンなx86 CPUを仮定します。したがってレジスタは32/64ビットであり、負数は2の補数表現になっています。ある程度は他の命令セットでも通用する話になっているかもしれません。 そもそも整数の除算とは プログラミングにおける整数の除算の定義について確認します。整数$n$を整数$d$で割るとき $$ n = q \times d + r $$ が成り立つように除

    2で割ることと3で割ること - Qiita
    Francis
    Francis 2020/12/09
  • 本番環境でやらかしちゃった人 - Qiita Advent Calendar 2020 - Qiita

    昨年非常に盛り上がっていましたので作成させていただきました。 番環境でやらかしちゃった人のアドベントカレンダーです。 例) DB吹き飛ばした 番サーバをデストロイした ネットワーク設定をミスって番サーバにアクセス出来なくなり、サーバが世界から孤立した などなど... 以下の2点については必須項目なので、記述お願いします。 惨劇はなぜおこってしまったのか 二度と惨劇を起こさないためにどうしたのか もう二度とあの惨劇を繰り返さないために、みなで知見を共有しましょう。 過去 番環境でやらかしちゃった人 Advent Calendar 2019

    本番環境でやらかしちゃった人 - Qiita Advent Calendar 2020 - Qiita
    Francis
    Francis 2020/12/08
  • もしあなたが急にAndroidアプリを業務で作るはめになった場合の選択肢(2021年初頭版) - Qiita

    記事はAndroid Advent Calendar 2020の2020/12/01分です。 初っ端ということなので、2020年末と2021年頭でのAndroidエンジニアとして初めて業務でやる場合に抑えておいたほうが良い最低限の部分を書いていこうと思います。(ツッコミ待ちです) 対象 2021年3月ぐらいまでに !!業務!! でAndroidアプリを作らされる事になった可愛そうな人が居たとします この人は手続き型言語でオブジェクト指向プログラミングができる知識があり、Androidアプリもなんとなく趣味で作ったこともあるぐらいのレベル感です(なので上長からいきなりお前Android担当なと言われた) 最低限のAndroidアプリの作成の知識はあるものとします(画面の表示にはActivityがいるよとかは書かない) ゲームは対象外です 業務でAndroidアプリを作ることを想定しています

    もしあなたが急にAndroidアプリを業務で作るはめになった場合の選択肢(2021年初頭版) - Qiita
    Francis
    Francis 2020/12/02
  • 物体検出についての歴史まとめ(1) - Qiita

    ここでは、物体の検出についてFaster R-CNNYOLOSSDのようなさまざまなアルゴリズムについて説明します。 物体検出の最先端、各手法の直感、アプローチ、それぞれの特徴を見ていきます。 この続きは以下で記述しています。 物体検出についての歴史まとめ(2) https://qiita.com/mshinoda88/items/c7e0967923e3ed47fee5 1. 物体検出とは 1-1. 物体検出概要 物体検出は画像を取り込み、画像の中から定められた物体の位置とカテゴリー(クラス)を検出することを指します。 犬分類器を作成したとき、や犬の画像を撮り、そのクラスを予測しました。 図1−1 と犬の両方が画像に存在する場合、どう処理すべきでしょうか。 図1-2 この場合、モデルは何を予測するのでしょうか? この問題を解決するために、両方のクラス(犬と)を予測する複数ラベ

    物体検出についての歴史まとめ(1) - Qiita
    Francis
    Francis 2020/10/15
  • 画像認識の大革命。AI界で話題爆発中の「Vision Transformer」を解説! - Qiita

    0. 忙しい方へ 完全に畳み込みとさようならしてSoTA達成したよ Vision Transformerの重要なことは次の3つだよ 画像パッチを単語のように扱うよ アーキテクチャはTransformerのエンコーダー部分だよ 巨大なデータセットJFT-300Mで事前学習するよ SoTAを上回る性能を約$\frac{1}{15}$の計算コストで得られたよ 事前学習データセットとモデルをさらに大きくすることでまだまだ性能向上する余地があるよ 1. Vision Transformerの解説 Vision Transformer(=ViT)の重要な部分は次の3つです。 入力画像 アーキテクチャ 事前学習とファインチューニング それぞれについて見ていきましょう。 1.1 入力画像 まず入力画像についてです。ViTはTransformerをベースとしたモデル(というより一部を丸々使っている)ですが、

    画像認識の大革命。AI界で話題爆発中の「Vision Transformer」を解説! - Qiita
    Francis
    Francis 2020/10/13
  • 欠陥発見! MVTec異常検知データセットへの深層距離学習(Deep Metric Learning)応用 - Qiita

    欠陥発見! MVTec異常検知データセットへの深層距離学習(Deep Metric Learning)応用画像処理DeepLearning異常検知MetricLearningMVTecAD News 2021/4/30 ㊗この記事の英語版が、論文に引用されました。 …というか、個人的には「この記事のアイデアを拡張して、汎用的なアイデアにした上で論文化してくれた」、と勝手に喜んでいます。 ・引用された論文: "CutPaste: Self-Supervised Learning for Anomaly Detection and Localization", arXiv:2104.04015 [cs.CV], 2020. この「[16]」です。 はじめに Deep metric learningの評価を段階的に試してきました。 Part 1: 分類器で学習できるMetric learning

    欠陥発見! MVTec異常検知データセットへの深層距離学習(Deep Metric Learning)応用 - Qiita
    Francis
    Francis 2020/09/09
  • ディープラーニングを学び始めた方へ 東京大学/松尾豊教授の動画 - Qiita

    1.はじめに ディープラーニングを学び始めた方にとって、東京大学/松尾教授の動画を見ることは、とても刺激的で勉強になり面白いものだと思います。今回、松尾教授の講演に加えて対談やパネルディスカッションも含めた動画のリンクをまとめましたので、よろしかったら見て下さい。 おすすめは、01, 05, 14, 16, 23, 27 です。 2.動画リンク 講演には★の表示がしてあります。 □2012年 ★01.Computer will be more clever than human beings 東京大学版TEDです(もちろん日語です)。ウェブを利用した情報の利用と人工知能の可能性についてコンパクトにまとめています。ディープラーニングには触れていませんが、若々しい松尾教授の姿が見れて、内容も興味深いです。<おすすめです。>(15分) □2013年 02.IT融合シンポジウム ~企業・研究者に

    ディープラーニングを学び始めた方へ 東京大学/松尾豊教授の動画 - Qiita
    Francis
    Francis 2020/09/08
  • Self-Attentionを全面的に使った新時代の画像認識モデルを解説! - Qiita

    08/31 (2020): 投稿 08/31 (2020): 「畳み込みを一切使わない」という記述に関して、ご指摘を受けましたので追記いたしました。線形変換においては「チャネル間の加重和である1x1畳み込み」を実装では用いています。 08/31 (2020): 論文で提案されているモデルの呼称に関して認識が誤っていたためタイトルおよび文章を一部修正しました。 言葉足らずの部分や勘違いをしている部分があるかと思いますが、ご指摘等をいただけますと大変ありがたいです。よろしくお願いします!(ツイッター:@omiita_atiimo) 近年の自然言語処理のブレイクスルーに大きく貢献したものといえば、やはりTransformerだと思います。そこからさらにBERTが生まれ、自然言語の認識能力などを測るGLUE Benchmarkではもはや人間が13位(2020/08現在)にまで落ちてしまっているほ

    Self-Attentionを全面的に使った新時代の画像認識モデルを解説! - Qiita
    Francis
    Francis 2020/08/31
  • FMA (fused multiply-add) の話 - Qiita

    この記事では融合積和 (fused multiply-add; 以下もっぱら FMA) について扱います。 この記事は元々「その辺で提供されている fma 関数の実装が正しいかチェックしてみた」記事だったのがだんだん守備範囲を広げていったものなので、FMAを単に使うだけではなく、実装する側の視点が多く含まれています。 筆者が実装したHaskell向けのFMA関数はこちらにあります: haskell-floating-point/FMA.hs at master · minoki/haskell-floating-point FMAとは、FMAを含む規格 融合積和(fused multiply-add; FMA)とは、積と和が合体した演算です。数式で書けば $xy+z$ です。この際、丸め(浮動小数点数で正確に表せない数をそれに近い浮動小数点数で代用すること)を1回しか行わないため、「積→和

    FMA (fused multiply-add) の話 - Qiita
    Francis
    Francis 2020/08/18
  • 機械学習で使われる評価関数まとめ - Qiita

    はじめに 評価関数(評価指標)についてあやふやな理解だったので、代表的な評価関数をまとめてみました。 評価関数とはそもそもどんなものなのか、それぞれの評価関数はどんな意味を持つのか、実際に使う時のサンプルコードを簡単にまとめています。 評価関数の追加や内容の修正は下記でしています。 評価関数とは 評価関数とは学習させたモデルの良さを測る指標を指します。 目的関数との違い 機械学習を勉強していると、目的関数や損失関数、コスト関数などいろいろな名前を目にします。 まずは、目的関数との違いについて確認します。 目的関数 モデルの学習で最適化される関数 微分できる必要がある つまり、学習中に最適化されるのが目的関数、学習後に良さを確認するための指標が評価関数ということになります。 損失関数、コスト関数、誤差関数は目的関数の一部になるそうです。 (いくつか議論がありそうなのですが、ほとんど同じものと

    機械学習で使われる評価関数まとめ - Qiita
    Francis
    Francis 2020/06/25
  • Kuwahara filterとかいう明らかに日本人の名前な画像フィルターに出会い、試してみたらすごかったので紹介する。 - Qiita

    Kuwahara filterとかいう明らかに日人の名前な画像フィルターに出会い、試してみたらすごかったので紹介する。Python画像処理画像加工フィルター 6/15追記 あとがきの提案について書きました 写真表現としての桑原フィルターの提案 #はじめに Kuwahara filter(桑原フィルター)とは 桑原フィルターは桑原道義さんという大学教授(Wikipedia曰く)が考案した平滑化フィルターの一種で、内容のシンプルさに反して上手いことかけるとまるで油絵のようになる、なんだかすごいフィルターであーる(先に結果が見たい方は記事の一番下を覗いてみよう) Kuwahara filter -Wikipedia SPECT用データ処理 (元論文?) #桑原フィルターの内容 https://upload.wikimedia.org/wikipedia/commons/4/49/Kuwahar

    Kuwahara filterとかいう明らかに日本人の名前な画像フィルターに出会い、試してみたらすごかったので紹介する。 - Qiita
    Francis
    Francis 2020/06/11
  • PythonでPowerPointの各ページを画像ファイルにする - Qiita

    トレーニング用の資料作るときに、僕だけがうれしい機能です。PowerPointのページ単位で画像ファイルに変換します。PowerPointを開いて、ファイル→エクスポート→ファイルの種類の変更を選ぶのと同じ事を、Pythonで自動化しました。 comを使ってPowerPointを操作し、ついでにファイル名がスライド1.PNGといろいろ嫌なので、slide1.pngに変換するようにしました。 読み込むPowerPointのファイル名と出力先をファイルの先頭で指定しています。当然、PowerPointがインストールされていないと動きません。試してみたければ、とりあえずtest.pptxのパワポファイルを用意すれば動くと思います。 import os import glob from comtypes import client PPT_NAME = 'test.pptx' OUT_DIR =

    PythonでPowerPointの各ページを画像ファイルにする - Qiita
    Francis
    Francis 2020/03/17