kivantium活動日記

プログラムを使っていろいろやります

C100情報

2022年8月13日~14日に東京ビッグサイトで開催されるコミックマーケット100の1日目(土)で同人誌を頒布します。 サークルはthe tenth art、場所は東ホ14bです。Webカタログはこちら。 お品書き C100で頒布するのと同じ内容で技術書典にも参加する予定なのです…

絵を添削してもらった 2

キャラクターの誕生日に向けて描いたイラストを添削に出したらかなり良い添削をしてもらいました。 kivantium.hateblo.jp しかし、絵を添削してもらっただけではうまくなりません。添削を踏まえて新しい絵を描く必要があります。 今回は今期アニメで一番気に…

創作+機械学習 Advent Calendar 2021 結果発表

2021年の年末に創作+機械学習 Advent Calendar 2021というイベントを開催しました。 開始時点での参加者は10人だったのですが、日を追うごとに参加者が増えて最終的には2枚目を作ることになりました。ご参加いただいた皆様、本当にありがとうございました。 …

絵を添削してもらった

響け!ユーフォニアムに登場するキャラクターの誕生日(1/7)に合わせてイラストを描きました。 描いたイラスト 描いている途中で創作+機械学習Advent Calendarで紹介されていた添削サービスの存在を思い出したので、ついでに添削をお願いしてみました。以下そ…

はてなブログにAdventarのAdvent Calendarを埋め込む

現在開催中の創作+機械学習 Advent Calendar 2021で、AdventarのAdvent Calendarを埋め込んでいる人がいたのでやり方を調べてみました。 調べてみるとこのAdventarの埋め込み機能はnote向けに実装されている機能のようでした。 noteに「#アドベントカレンダ…

銀髪美少女botを作った

この記事は創作+機械学習 Advent Calendar 2021の1日目です。 はじめに Deep Learningが画像認識コンテストで優勝して以降、機械学習をはじめとする人工知能技術の研究開発は一大ムーブメントとなり、第3次AIブームと呼ばれる状況にあります。このブログでは…

pybind11とxtensorによるPythonとC++の連携

前回の記事でNumCppを試しましたが、全ての配列を2次元配列で扱う仕様がいまいちだったのでEigenを使ったほうが良さそうだという結論になりました。 kivantium.hateblo.jp この記事ではxtensorという別のライブラリを試してみます。xtensorの開発はQuantStac…

pybind11とNumCppによるPythonとC++の連携

Pythonで書いたコードの速度が遅いときに一部の関数だけC++で記述したい場合があります。pybind11を使えばC++とPythonを比較的容易に連携させることができるのですが、NumPyオブジェクトをC++に渡したときの処理の記述が非常に面倒です。そこでNumPyのC++版…

創作+機械学習 Advent Calendar 2021 を開催します

このAdvent Calendarは創作(小説、漫画、アニメ、イラスト、映画、音楽、ゲーム等)と機械学習に関連した記事を投稿してもらい、優れた記事を書いた方に賞を贈呈する企画です。

FlaskでWebSocketを使う

WebSocketを使うとリアルタイム性の高いWebアプリケーションを作ることができます。今回はFlaskでWebSocketを使うライブラリのFlask-SocketIOを使って、複数のブラウザでテキストボックスを同期するアプリを作成します。 インストール Flask-SocketIOはpipで…

Twitterのハッシュタグを正しく抽出する

ここ一年くらいかけて暇な時間にTwitterに投稿されたイラストを収集するにじさーちというサイトを開発しています。 にじさーちにはハッシュタグを使って画像を検索する機能があるのですが、ハッシュタグに中黒(・)が含まれる場合にうまく抽出できないバグ…

OpenAI Gym Roboticsの環境構築とBaselinesの実行

OpenAIが提供している強化学習環境のGymを使って、OpenAI BaselinesのHER (Hindsight Experience Replay) を実行するまでの手順について記録しておきます。環境構築はUbuntu 20.04で行いました。 MuJoCoのライセンス取得 Gymで提供されている環境のうち、3D…

Thinkpad X13 Gen1 (AMD) を買った

年末セールで Thinkpad X13 Gen1 (AMD) を買いました。 こんなんでいいかな pic.twitter.com/iGqnJddayi— きばん (@kivantium) 2020年12月26日 (このツイートの後で自分が学生であることを思い出して学割ストアで買ったので、最終的には164,934円でした) R…

RISC-Vクロスコンパイラで生成したバイナリを自作RISC-V上で実行する

4連休の課題としてFPGAで簡単なCPUを作っているので、その進捗を記録しておきます。 RISC-V (RV32I) の作成 とりあえず今回は確実に動くCPUを作ることを目標にしました。 パイプラインなどは実装せず、フェッチ→デコード→実行→メモリ・アクセス→書き戻しの5…

自動微分ライブラリJAXを用いた対称行列の固有値の微分

JAXという自動微分ライブラリが流行りそうな機運があるので遊んでみます。 github.com インストール READMEに書いてある通りにやりました。 pip install --upgrade pip pip install --upgrade jax jaxlib 基本的な使い方 The Autodiff Cookbook — JAX docume…

Django ChannelsでWebsocket通信を行ってVue.jsで表示する

前回の続きです。 kivantium.hateblo.jp サーバー上で重たい処理をする場合、処理が全て終わってからHTMLを生成しているとかなりレスポンスが悪くなってしまいます。先に結果表示ページのHTMLを表示しておいて、中身を後からWebsocketで順次通信するといい感…

Django ChennelsアプリをNginxとSupervisorでデプロイする

DjangoでWebsocketを使うときにはChannelsというライブラリがよく使われています。これまではHerokuにデプロイをしてきましたが、HerokuとChannelsの相性が良くないのかすぐに接続が切れてしまうので、これからはAWS上で開発しようと思いました。公式ドキュ…

化合物でもDeep Learningがしたい!

この記事は2017年12月15日に https://kivantium.net/deep-for-chem/ に投稿したものです。 情報が古くなっていますが、まだ参照されているようなので再掲します。 この記事はDeep Learningやっていき Advent Calendar 2017の15日目です。 Deep Learningの威…

PyTorchでファインチューニングしたモデルをONNXで利用する

昨日の作業の結果、Illustration2Vecのモデルが大きすぎて貧弱なサーバーでは使えないことが分かりました。今のところ二次元画像判別器の特徴量抽出にしか使っていないので、もっと軽いモデルでも代用できるはずです。軽いモデルとして有名なSqueezenetをこ…

タイムラインから二次元イラストだけを表示するWebアプリの作成

DjangoでTwitter認証を行う - kivantium活動日記 二次元画像判別器に対するActive Learning導入の検討 - kivantium活動日記 ここまでの成果を使って、タイムラインから二次元イラストだけを表示するTwitterクライアントっぽいWebアプリを作成します。 スクリ…

二次元画像判別器に対するActive Learning導入の検討

前回の記事では、Twitter上の画像から二次元画像を選ぼうとすると二次元とも三次元とも言い難い画像が入ってくる問題があることを見ました。今回は、Active Learningという方法を使って境界領域の画像をうまく扱う方法を適用したいと思います。 Active Learn…

二次元画像判別器の作成に関する基礎検討

Abstract Twitterに流れる大量の画像の中から二次元画像を集めることは私のQoL向上の上で非常に重要な問題である。 本研究では、著者のタイムラインに実際に流れてきた画像を分析し、二次元画像分類という問題の定義が難しいことを示した。 また、独自に定義…

Bulmaで画像の中央を丸く切り取って並べる

「Bootstrapを使って作ったWebサイトはいかにもBootstrapを使って作った感が出てしまうからやめたい」とWebのプロに相談したらBulmaを使うといいと言われたので、最近はBulmaを使っています。 bulma.io 画像の中央を丸く切り取って並べるデザインをする必要…

TwitterのStreaming APIについて

2018年8月にTwitterのUser Streams APIが廃止されてしまい、タイムラインのツイートをリアルタイムで取得することができなくなってしまいました。 forest.watch.impress.co.jp それに伴い、User Streams APIを使っていたリプライによるアイコン変更スクリプ…

Tweepyで画像を収集する (WIP)

機械学習をするためにはデータが必要なので、頑張って集める必要があります。 とりあえずTweepyで取れるだけ取る方法をいろいろ考えていきます。 Cursorを使う Tweepyが標準で用意しているCursorというクラスを使ってタイムラインからRate Limitの許す限り画…

Illustration2VecをONNX経由で使う

趣味プロジェクトでIllustration2Vecを使いたくなったのですが、これは2015年の論文なのでモデルをCaffeかChainerで使うことになっています。 github.com 残念ながらCaffeもChainerも既に開発が終了しているため、Illustration2VecのモデルをONNXという共通…

DjangoでTwitter認証を行う

前回の記事のつづきです。 kivantium.hateblo.jp 今回はTwitterでのOAuth認証を実装して、タイムラインを読み込むところまで進めます。 ライブラリのインストール 認証に必要なsocial-auth-app-djangoというライブラリをインストールします。前回作ったプロ…

DjangoアプリをHerokuにデプロイする

インターンを始めたら労働のつらさを思い出しました。 最近毎日なんか売れそうなWebサービス作れないかな〜って考えてる— きばん卿 (@kivantium) 2020年4月8日 というわけで、Webサービスの作り方を勉強していきたいと思います。 WebサービスといえばRuby on…

NWChemをコンパイルして動かす

なにも分からない。 NWChemは計算化学ソフトで、GSoCのOpenChemistryに参加していたので動かしてみたかった。 とりあえず動いた方法 環境はUbuntu 18.04。 ドキュメントのCompiling NWChemにあるNWChem 6.6 on Ubuntu 14.04 (Trusty Tahr)の項目を見ればいい…

閉殻Hartree-Fock法によるHeH+のエネルギー計算

量子化学計算を勉強するために新しい量子化学―電子構造の理論入門〈上〉を読んでいます。 サンプルコードがFortranだったので勉強がてらC言語に移植しました。新しい量子化学―電子構造の理論入門〈上〉作者:Attila Szabo,Neil S. Ostlund出版社/メーカー: 東…

広告コーナー