こんにちは。前回に引き続き、拡散モデルに関する話題を取り上げます。拡散モデルとはGoogleのImagen等に活用されている話題の生成モデルであり、一部のタスクでは最も研究が進んでいる生成モデルGAN(敵対的生成ネットワーク)の最高性能を上回ることが報告…
こんにちは。今回は、深層学習における生成モデルの1つであるエネルギーベースモデル(EBM)について解説します。EBMは深層学習のブレイク以前からある伝統的な技術ですが、最近Googleが発表したImagen等の超高精度生成モデルで使われる拡散モデルと深い関…
こんにちは。育児のため時間がとれずブログ更新を1年放置していました。今後はしっかりと勉強時間を確保して、記事執筆を頑張っていきたいと思います!さて、今回は機械学習分野でもっとも注目を集めている技術の1つである生成モデルを取り上げます。生成モ…
ここ数年、機械学習分野では自己注意(self-attention)と呼ばれる仕組みに基づいた学習モデルが様々なアプリケーションに適用され、その性能・汎用性の高さから大きな注目を集めていました。代表的なモデルがTransformerと呼ばれるもので確固たる地位を築いて…
PyTorchは素晴らしい機械学習フレームワークですが、データ読み込みに使うDatasetとNumpyによる乱数発生の組み合わせは思わぬバグの発生源となっているようです。2021年4月10日に投稿されたこちらの記事がTwitter上で話題になっています。 tanelp.github.io …
材料や創薬は歴史のある学問ですが、機械学習技術はこれらの分野にも適用され今もなお大きく進化しています。もともとシミュレーションが活発な分野なので、材料・創薬分野の機械学習エンジニアを目指すならそれらの知識も必須です(例えば第一原理計算、分…
機械学習を使った画像認識モデルの進化が止まりません。2019年以降に絞ってみても、EfficientNet, Big Transfer, Vision Transformerなど数多くのモデルが提案され、当時最高の予測精度が報告されてきました。そして最近になり注目を集めているのが、従来手…
ビッグデータに基づいた研究開発やビジネスは現代において珍しくありません。そんな中重要視されるのが、簡単にデータを取得できる仕組み【WebAPI】です。WebAPI(Web Application Programming Interface)はプログラムによってWeb上のデータベースから容易…
機械学習の分野で最も有名なモデルに畳み込みニューラルネットワーク(CNN)と呼ばれるものがあります。2012年にCNNが画像認識処理において卓越した性能を示したことで科学や生活の在り方は大きく変わりました。この手法は画像(2次元データ)のみならず波形…
手元のデータを簡単に分析するためのツールが欲しいと思うことはありませんか?既存の解析ツールでは手の届かない細かい機能を簡単に実装できれば、ちょっとしたビジネスインテリジェンス(BI)ツールや株式運用ツールとして役立ちそうです。Pythonを使った…
みなさんご無沙汰しております、Dajiroです。久しぶりのブログ投稿です。ここ半年ほど、データベースやAPI、AWSの勉強で忙しかったのですが、ようやく機械学習に帰ってこれました。今回の記事では、最新のオプティマイザであるSAM(sharpness aware minimizat…
春はあけぼの、夏のデータベースと言います。というわけで、今回はWindows10環境でRDBMS(relational database management system)の1つであるPostgreSQLを動かす際に遭遇するエラーメッセージの解決策を簡単にまとめます。Windows10へのインストールと環境…
こんばんは、Dajiroです。今回はGoogle Colabratory(以下、Colab)におけるPyTorchの使い方についてご紹介します。ColabといえばGoogle社が無料で提供しているノートブック形式のPython計算環境です。通常のCPUに加え、GPUとTPUといった機械学習向けの計算環…
こんにちは、Dajiroです。今回は、GANを用いて画像のスタイルを変換できる【CycleGAN】の仕組みをご紹介します。スタイル変換とは、元の画像から別のスタイルの画像に変換できることを指します。6つの損失関数が登場するため中々複雑なモデルですが、1つ1つ…
こんにちは、Dajiroです。今回の記事では【ConditionalGAN】(条件付きGAN, CGAN)についてご紹介します。GANという機械学習技術を用いることで乱数から画像を自動生成できますが、CGANを用いるとどのような画像を生成するか条件付きで指定することができるよ…
こんにちは、dajiroです。今回は高精度な画像分類を行うのに便利なライブラリTIMMをご紹介します。PyTorchでは画像分類用の学習済みモデルが公式で提供されていますが、使われているモデルがやや古く栄枯盛衰の激しい機械学習の世界では現代最高レベルの予測…
こんにちは、Dajiroです。今回は、PyTorchを使った複雑なネットワークの構築についてご紹介します。機械学習モデルを組んでいると、複数の種類の入力(画像と1次元配列状のデータなど)を使ったり、複数の種類の出力を得たい場合などがあります。そんなとき…
こんばんは、Dajiroです。本ブログでは既に画像を予測する方法を学びましたが、今回はCNNによる画像予測の根拠についてご紹介します。その代表的な技術である(Guided) Grad-CAMについての仕組み解説と、実際に得られた予測根拠を見ていきます。画像認識につ…
こんにちは、Dajiroです。前回の技術記事を書いてからだいぶ日が空きました。本ブログでは機械学習に関する幅広い技術を解説しようと目論んでいるので、まだ扱ったことのない自然言語処理のネタををじっくりコトコト仕込んでいました。本記事では 単語埋め込…
こんにちは、Dajiroです。今日2020年6月19日は私にとって20代最後の日です。だからといって何か特別なこともしていないのですが、記念に日記を書くことにしました。日記を書くというのは、ふだんの日常の中ですごく特別な行為で、何かもやもやしたり、思考を…
こんにちは、dajiroです。今日はPyTorchによる画像分類(CNN)に取り組んでみたいと思います。CNNの仕組み・実装方法に関してはウェブ上に十分な資料があると思うので、ここではPyTorchの学習部分を簡単に実装できるIgniteとpytorch-pfn-extrasいうライブラリ…
こんにちは。6月に入りさっそく蒸し暑い日が続いています。そろそろエアコンをつけても良い時期ですね。今回はMatplotlibの棒グラフの制御方法に関して紹介します。 はじめに 棒グラフへの数値の挿入 軸ラベルの調整 グラデーションの追加 はじめに 本ブログ…
こんにちは。2020年の上半期も終わりそうです。時間が経つのは本当に早いですね。個人的には、ブログをとにかく書きまくった半年でした。 それでは、本日の記事の紹介です! はじめに 半教師ありGANの仕組み 分類器の訓練 生成器の訓練 実装(省略) 実験結…
こんばんは。今日は雨が降り外が涼しいです。そろそろ東京にも梅雨入りの季節が近づいてきたでしょうか。2020年の夏も間近です。 ==================================== 本記事では、私が良く使うPythonの簡単で便利な9個のテクニックをご紹介します。基礎的…
こんばんは。今日は材料科学・創薬分野で近年話題となっている機械学習を使った逆分子設計についてまとめてみたいと思います。逆分子設計というと、最初に望ましい機能を定義し、それに見合った材料を探索するという→の設計方針を指します。機械学習分野では…
こんにちは。先日、多層パーセプトロンモデルを使ったGAN(敵対的生成ネットワーク)で画像生成を行いました。しかし機械学習で画像と言えば、畳み込みニューラルネットワーク(CNN)ですよね。とうわけで生成器・識別器にCNNと転置CNNを使って効率的に画像を学…
こんにちは。今日は敵対的生成ネットワーク(Generative Adversarial Network, GAN)を取り上げます。GANというと、適当な乱数から本物そっくりの画像を生成する技術として既にご存じかもしれません。画像以外にも物理モデルの生成や、化合物の構造生成などに…
こんばんは。今日のテーマは方策勾配法です。前回の記事では強化学習の基礎から深層強化学習(DQN)までを扱いました。そこでは状態や行動の価値Qの見積もりをいかにして最適化するかという考え方が根底にありましたが、方策勾配法では価値ではなくエージェ…
こんにちは。今日は、強化学習に関する入門記事を書きたいと思います。強化学習はニューラルネットワークとはまた違うノウハウがあり、腑に落ちるレベルでの理解をするのがなかなか難しい技術だと思います。実際、私は昨年初めて強化学習の勉強をしましたが…
こんにちは。今日はグラフ畳み込みニューラルネットワーク(GCN)を理解するための学習のポイントについて取り上げたいと思います。GCNは近年猛烈な勢いで開発が進められている技術で、大きな注目を集めている・・・ということを既に知っている読者の方は多…