タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

*algorithmと*programとpythonに関するsh19910711のブックマーク (240)

  • Tensor2Tensorで雑談チャットボットを作ったら今度はうまくいった話 - Qiita

    はじめに 前回の失敗から手法を変えてチャットボットの作成を試みました。 今度はうまくいきましたが、ほぼ公式ドキュメント通りの内容なのであまり面白味はありません。 前回の失敗はこちらから 全体のコードはこちらから 作成方法 今回はGoogle Brain チームが提供しているTensor2Tensor(t2t)を使うことにしました。 t2tは既に用意されているデータセットで学習するだけならコードを書くことなく(コマンドのみ)実行できる手軽さが特徴です。 自前のデータセットを実行する際にも、ほぼ公式ドキュメントに書かれている数行のコードと形式の整ったデータセットさえあれば実行できるので非常に楽です。 今回は前回作成した名大会話コーパスから抽出したinput_corpus.txtとoutput_corpus.txtをデータセットとして学習・推論をさせてみます。実行環境はGoogle Colab

    Tensor2Tensorで雑談チャットボットを作ったら今度はうまくいった話 - Qiita
    sh19910711
    sh19910711 2021/07/03
    "ほぼ公式ドキュメントに書かれている数行のコードと形式の整ったデータセットさえあれば実行できる / 今回の学習には大体3時間~4時間 / 会話というより質問に対して応答しているだけではあります"
  • 音楽と機械学習 前処理編 MFCC ~ メル周波数ケプストラム係数 - Qiita

    # python import librosa x, fs = librosa.load('./hoge.wav', sr=44100) mfccs = librosa.feature.mfcc(x, sr=fs) print mfccs.shape # (n_mfcc, sr*duration/hop_length) # DCT したあとで取得する係数の次元(デフォルト20) , サンプリングレートxオーディオファイルの長さ(=全フレーム数)/ STFTスライドサイズ(デフォルト512) mfccs がいい感じの次元の ndarray になります。 お急ぎでない方向け 冒頭で述べたように、オーディオのデータを機械学習のロジックで扱いたいというモチベーションがあるわけですが、例えば俗に "CD音質" と呼ばれる音質で、リニアPCMという非圧縮の形式で1秒間録音した場合のデータサイズは CD

    音楽と機械学習 前処理編 MFCC ~ メル周波数ケプストラム係数 - Qiita
    sh19910711
    sh19910711 2021/06/18
    librosa / "MFCC (Mel-Frequency Cepstrum Coefficients/メル周波数ケプストラム係数) > 音声としての情報をできるだけ損なわずに、Googleのような潤沢な計算リソースがなくても現実的に扱える次元にまで落とす方法"
  • しゃくとり法のDequeを使ったバグりにくい実装 - Qiita

    この記事の目的 しゃくとり法のバグりにくい実装の紹介です! しゃくとり法(尺取り法)って? しゃくとり法の説明自体は、とってもいいまとめがあるのでこちらをご覧ください。 しゃくとり法 (尺取り法) の解説と、それを用いる問題のまとめ でも、しゃくとり法ってバグりません? しゃくとり法っていざ書いてみるとかなりの確率でバグります。 区間の端を表す添え字 $l$ と $r$ の動かし方が結構混乱します。 この記事ではdeque(両端キュー)を使った実装を紹介します。 なんとこの実装では添え字を使う必要がありません! deque(両端キュー)によるしゃくとり法の実装 次の問題を例にとって説明します。 ABC 032 C - 列 長さ $n$ の整数列 $A = \{a_1, a_2,..., a_n\}$の連続部分列で、その要素の積が $K$ 以下となるものの長さの最大値を求める問題です。 次の

    しゃくとり法のDequeを使ったバグりにくい実装 - Qiita
    sh19910711
    sh19910711 2021/05/15
    "連続部分列をdequeの両端への追加と削除で管理 / 標準的な実装でありがちな、l が r を追い越してしまった!という事はdequeの要素の数が負になる事に相当するので起こりえません"
  • はじめての自然言語処理 spaCy/GiNZA を用いた自然言語処理 | オブジェクトの広場

    前回は BERT についてその概要と使い方を紹介しました。今回は自然言語処理ライブラリである spaCyspaCyフロントエンドとする日NLPライブラリの GiNZA について紹介します。 1. 始めに 記事では欧米で有名な自然言語処理ライブラリである spaCy とリクルートと国立国語研究所の共同研究成果である日NLPライブラリ GiNZA について紹介します。記事の前半では、spaCy と GiNZA の概要と日語を処理する際の基的な機能/操作について説明します。後半では、spaCy で提供される文章分類機能について、前回までに紹介した手法も含めて精度を比較してみます。 2. spaCy と GiNZA の概要 spaCy は Explosion AI 社の開発する Python/Cython で実装されたオープンソースの自然言語処理ライブラリで MIT ライセ

    はじめての自然言語処理 spaCy/GiNZA を用いた自然言語処理 | オブジェクトの広場
    sh19910711
    sh19910711 2021/05/08
    "異なる言語でも spaCy で解析すれば、その後に続く処理を同一ロジックで対応できる / 2019年4月にリクルートと国立国語研究所の研究成果である GiNZA が登場 / 早い話が spaCy を日本語で利用できるようになった"
  • 社内CV輪講資料 / PyTorch Lightning

    社内のCV輪講で PyTorch Lightningについて共有したときの資料です 「今日から始める PyTorch Lightning」 サンプルレポ:https://github.com/karasawatakumi/monodepth-dev

    社内CV輪講資料 / PyTorch Lightning
  • fisproject.jp

    This domain may be for sale!

    sh19910711
    sh19910711 2021/04/18
    "UMAP (Uniform Manifold Approximation and Projection) は多様体学習による可視化 & 次元削減手法で, t-SNE と同程度の可視化の質を持ちつつも高速に動作する"
  • SentencePiece + 日本語WikipediaのBERTモデルをKeras BERTで利用する

    SentencePiece + 日WikipediaのBERTモデルをKeras BERTで利用する TL;DR Googleが公開しているBERTの学習済みモデルは、日Wikipediaもデータセットに含まれていますが、Tokenizeの方法が分かち書きを前提としているため、そのまま利用しても日語の分類問題ではあまり高い精度を得ることができません。 このため、SentencePieceでTokenizeしたデータセットで学習し直す必要があります。 BERTのトレーニングは結構な時間やマシンリソースが必要ですが、ありがたいことにSentencePiece+日Wikipediaで学習済みのモデルを配布してくれている方がいらっしゃるので、今回は以下を利用します。 BERT with SentencePiece を日Wikipedia で学習してモデルを公開しました BERT

  • 遺伝的アルゴリズムでナーススケジューリング問題(シフト最適化)を解く - Qiita

    この記事は ナーススケジューリング問題という最適化の問題を遺伝的アルゴリズムで解いてみたらまあまあの精度が出たので記録です pythonのdeapというライブラリを使っています 前提 ナーススケジューリング問題 ナーススケジューリング問題というものがあります 病院等の医療施設に勤める看護師の勤務スケジュールを決定する問題のことであり,シフトスケジューリング問題の代表例である.日勤・夕勤・夜勤等の複雑なシフト勤務や多岐に渡る制約の考慮のため,実際にスケジュールを求めるのは人手では手間のかかる困難な作業であり・・・ 要するにシフト勤務のスケジュールを自動的に最適に組むというものです 制約が色々あって、必要人数を満たすような基的なものから、公平性、必須な資格/役割、この2人は(仲が悪いから?)一緒に入れないなど、いくらでも複雑になりうる問題て感じで、完璧な解答を作るのは困難なので、近似解を求め

    遺伝的アルゴリズムでナーススケジューリング問題(シフト最適化)を解く - Qiita
  • ベイジアンニューラルネットワークで毒キノコ分類を実装してみた

    Edward Edwardはベイズ統計などで扱うような確率モデルを実装できるライブラリです。 同じPythonのライブラリで言えば、PyStanやPyMCがその類のものになります。 Edward: http://edwardlib.org/ 特徴としては、 2016年より開発されている確率的プログラミングのPythonライブラリ Dustin Tran氏(Open AI)が開発をリード LDAで有名なコロンビア大学のBlei先生の研究室で開発 計算にTensorFlowを用いている 計算速度がStanやPyMC3よりも速い GPUによる高速化が可能 TensorBoardによる可視化も可能 などが挙げられます。 ベイズ統計はもちろんですが、深層学習などに対するベイズの適用の実装も可能のようです。 この辺りについてはチュートリアルに色々と参考例があり、例えば、下記のようなアルゴリズムの実装が

    ベイジアンニューラルネットワークで毒キノコ分類を実装してみた
  • 日本語評価極性辞書を利用したPython用Sentiment Analysisライブラリ oseti を公開しました - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    日本語評価極性辞書を利用したPython用Sentiment Analysisライブラリ oseti を公開しました - Qiita
  • Domain error

    Domain error Failed to resolve DNS path for this host

    Domain error
  • Keras/TensorFlowでDNNな囲碁の評価関数を作ってみる

    「囲碁をディープラーニングするのは面白い」という噂なので(笑)、私も試しに一度やってみることにしました。作るならやっぱり評価関数。それも、その時の形勢を「目数」で教えてくれるやつがなんかいいですよね? とりあえず今回は19路盤用です。 まずは学習に使うデータについてです。とりあえず評価する局面は、COSUMIで打たれた19路盤互先の作り碁の棋譜から作りました。GNU Go、強い人、弱い人、意図した序盤早々の連続パス、意図しないクリックミスの混ぜ合わさった様々なよく分からない局面が出現しそうで、まあ良いのではないかと…(笑) まず、最後のパスパスを取り除き、1手から最終手の間の一様乱数にまで棋譜の手数を短くして、さらに対称形を考慮しない完全な重複分を取り除き、残った棋譜の最終局面を使うことにしました。 そして次に、その局面に付けるラベル、今回の場合は「目数単位の形勢判断」ですが、うーん、これ

  • 何もない所から一瞬で、自然言語処理と係り受け解析をライブコーディングする手品を、LTでやってみた話 - Qiita

    要約 超高精度自然言語処理&係り受け解析を実施するGiNZAがすごくて、 Colaboratoryにより環境構築不要でブラウザだけでサクッと使える。 そのサクッと感を強調すべく、LT(ライトニングトーク)の最中に その場で環境構築&コードを書いて自然言語処理、 しかも高精度&高機能ができるよ、という「手品」をやってみた。 一見スゴイが「手品」にはタネがあって・・・。という話をする。 最後まで読むと、以下の二つのノウハウが分かる ・GiNZAで、ゼロから3分で高精度自然言語処理する方法 ・LTでライブコーディングする手品のタネ 背景①: GiNZAすごいっ! 2019年4月に発表された「GiNZA」という、 日語自然言語処理オープンソースライブラリを動かしてみたら、 簡単に高精度で(超重要)、係り受けやベクトル化なども含めた、 自然言語処理全般が実施出来たので驚いた。 ご参考: https

    何もない所から一瞬で、自然言語処理と係り受け解析をライブコーディングする手品を、LTでやってみた話 - Qiita
  • 「うわっ…私のリコメンド、ビール多すぎ…?」doc2vecの拡張とリコメンドシステムへの応用 - Qiita

    この記事はRetty Inc. Advent Calendar 2017 1日目です。 一発目は緊張しますね。なので今年は去年の「character-level CNNでクリスマスを生き抜く」よりも若干真面目に書きます:) doc2vecを拡張してリコメンドを学習させたお話です。 リコメンデーション再考 以前「口コミのdoc2vecを用いたリコメンデーションシステムの構築」という記事でdoc2vecを用いて口コミの分散表現を獲得してそこからユーザー・店舗のベクトルを計算してリコメンドを行いました。 この時のやり方で出てきたおすすめ店舗は、Rettyクラフトビール担当の私にはありがたい内容だったのであれはあれで良しと思っています。(実はこの時の成果がちょろっとRettyのアプリに取り込まれました😊) しかし一方でちょっと気になったのは、 「うわっ…私のリコメンド、ビール多すぎ…?」 という

    「うわっ…私のリコメンド、ビール多すぎ…?」doc2vecの拡張とリコメンドシステムへの応用 - Qiita
  • TensorFlow2.0 + 無料のColab TPUでDCGANを実装した - Qiita

    TensorFlow2.0とGoogle Colaboratoryの無料TPUを使って、DCGANを実装しました。 訓練経過の様子 pic.twitter.com/2qXowYMk6t — しこあん@『モザイク除去』好評通販中 (@koshian2) October 21, 2019 何をやったか Google ColabのTPU+TF2.0でCelebA(約20万枚)をDCGANで生成 TF1.X系のTPUでは、同時に実行可能なグラフは1個の制約があったため、GANの訓練が容易ではなかった(こちらの記事にある通り、不可能であったわけではない。しかし、低レベルAPIが必須で決して容易ではなかった)。TF2.X系のTPUでは、もっと容易にGANを実装できた。 DCGANの論文通りのモデル(パラメーター数:G=12.7M, D=11.0M)で。64x64の画像20万枚を、1エポックを40秒程

    TensorFlow2.0 + 無料のColab TPUでDCGANを実装した - Qiita
  • Python3.9の新機能(2) - Pythonで有向非巡回グラフのソートをする - Qiita

    はじめに 2020年10月にリリースが予定されているPython3.9で新たに加わる変更をPython3.9の新機能 (まとめ)という記事でまとめています。少し分量のありそうな話題を別記事にしていますが、これはその第二弾で、有向非巡回グラフのソートについてです。 有向非巡回グラフとトポロジカルソート まず、ここでいうグラフは折れ線グラフとか棒グラフとかデータを視覚的に表す図表のことではなく、グラフ理論のグラフです。グラフはデータ構造の一種で、ノード(頂点)とそれらを繋ぐエッジ(枝)で構成されています。ノードやエッジに何かしらの意味をもたせることによって、関連性を持つ情報を表すことができます。 グラフにもいくつか種類があり、その最初の分かれ道がエッジに方向があるかないか。方向があるものを有向グラフ(左側)、無いものを無向グラフ(右側)といいます。 エッジはノードを繋ぐものですが、繋がれたノー

    Python3.9の新機能(2) - Pythonで有向非巡回グラフのソートをする - Qiita
    sh19910711
    sh19910711 2020/10/19
    "from functools import TopologicalSorter"
  • 特異スペクトル変換法による時系列の異常検知 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 目的 随時更新されているKPIの時系列データに関して、数値に異常があった場合になるべく早くアラートを出せるようにしたいという要請がありました。これはいわゆる異常検知の問題です。多くの場合、異常検知では異常・正常を判定するラベル情報がないので、教師あり学習ができないことが多いです。教師なしで時系列データを異常検知する方法としては、ARIMA など時系列モデルを当てはめて、予測値と実績値の差が大きすぎるものを異常判定する、という方法が考えられます。しかし、この方法は精度の高い時系列モデルを作成できることが前提です。そこで、別のアプローチがな

    特異スペクトル変換法による時系列の異常検知 - Qiita
  • Wikipediaの前処理はもうやめて「Wiki-40B」を使う - Ahogrammer

    最近の自然言語処理では、大規模なテキストから単語の分散表現や言語モデルを学習させて使っています。学習する際のテキストとしては、分量や利用しやすさの都合からWikipediaが選ばれることが多いですが、その前処理は意外と面倒で時間のかかる作業です。そこで、記事では比較的最近リリースされた前処理済みのデータセット「Wiki-40B」とその使い方を紹介します。 Wiki-40Bとは? Wiki-40Bは、40言語以上のWikipediaを前処理して作られたデータセットです。このデータセットは言語ごとに学習/検証/テスト用に分かれているので、単語分散表現や言語モデルの学習・評価に使えます。言語ごとの対応状況については、以下のページを参照するとよいでしょう。 wiki40b | TensorFlow Datasets 前処理としては、大きくは以下の2つに分けられます。 ページのフィルタリング ペー

    Wikipediaの前処理はもうやめて「Wiki-40B」を使う - Ahogrammer
  • 時系列データでVariational AutoEncoder keras - 機械学習を学習する天然ニューラルネットワーク

    はじめに 前回の記事で時系列入力に対するオートエンコーダーを組んだ。 aotamasaki.hatenablog.com 今回は潜在変数を正規分布に押し込むというVariational AutoEncoderを組んでみた。CNNとVAEを組み合わせる記事は割と見つかるのに、RNNとなったとたん見つからないものである。 データはMNISTであるが後述するように、時系列だと見なして入力した。 まずはモデルとデータの概要を説明する。そのあと、結果で再構成された数字と生成された数字の例を示す。最後に、潜在変数Zが正規分布になっているのか確かめる。 はじめに モデルの概要 データの概要 結果 Zは当に正規分布をしているのか? まとめ 参考文献 モデルの概要 また、赤字で示した損失関数についての数式は以下のようになっている。詳しくは最後に示す参考文献を見ていただきたい。 コードはこんな感じ def

    時系列データでVariational AutoEncoder keras - 機械学習を学習する天然ニューラルネットワーク
  • 【機械学習】Spark MLlibをPythonで動かしてレコメンデーションしてみる - Qiita

    Sparkシリーズ第2弾です。今度はMLlibを使って協調フィルタリングを用いたレコメンデーションの実装を行います。 第一弾 【機械学習】iPython NotebookでSparkを起動させてMLlibを試す http://qiita.com/kenmatsu4/items/00ad151e857d546a97c3 環境 OS: Mac OSX Yosemite 10.10.3 Spark: spark-1.5.0-bin-hadoop2.6 Python: 2.7.10 |Anaconda 2.2.0 (x86_64)| (default, May 28 2015, 17:04:42) 稿では上記の環境で行ったものを記載していますので、他の環境では設定が異なる場合もあるかと思いますのでご注意ください。また、基的にiPython NotebookでのSparkの実行を想定しています。

    【機械学習】Spark MLlibをPythonで動かしてレコメンデーションしてみる - Qiita