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

  • ローカルでも動く!?日本語に特化した強化学習済み対話GPT言語モデルを検証してみる - Qiita

    はじめに 元AI女子高生「りんな」をご存知でしょうか LINEに突如現れたAI女子高生で話題となっていたと思いますので、ご存知の方も多いかとおもいます。 先日「りんな」の開発元であるrinna社から日語特化の学習がされたGPT-2モデルが 商用利用可能なMITライセンス で公開されました。 rinna、人間の評価を利用したGPT言語モデルの強化学習に成功 モデルは、 ChatGPTに用いられている学習手法である、人間の評価を利用したGPT言語モデルの強化学習に成功している とのことです。 かつ ローカル環境でも動作する ようです。 記事では、その対話GPT言語モデルの動作を見てみようと思う 目次 動作環境 モデル動作確認(GoogleColab) ローカル環境で実行 さいごに 動作環境 検証環境 google colaboratory(Colab Pro版) ローカル検証環境 Win

    ローカルでも動く!?日本語に特化した強化学習済み対話GPT言語モデルを検証してみる - Qiita
    hirokiky
    hirokiky 2023/07/05
    もっと伸びるべき記事
  • Google Apps Script のアドオンの作成手順 - Qiita

    Googleスプレッドシートのアドオンを公開した。日語の情報があまりなく、ググった感じでは「スクリプトエディタからデプロイして完了!」と簡単そうに書いてあるが、実際は非常に苦労したので手順と注意点をまとめておく。 ちなみに作成したアドオンはこちら。 - Gantt Chart Generator - Precedent Diagram Maker Google Apps Scriptには、Standalone ScriptとContainer Bound Scriptの2つのタイプがあるが、私が作ったのは後者のタイプ。それぞれの違いはここでは割愛するが、スプレッドシートのアドオンは後者で作った方が良いというのが私の結論。とりあえず公式ドキュメントを貼っておく。 - Standalone Scripts - Container-bound Scripts 大枠の申請手順 スクリプトを書く

    Google Apps Script のアドオンの作成手順 - Qiita
    hirokiky
    hirokiky 2022/11/24
  • マクドナルドで一日分の栄養を取れる組み合わせを計算したら衝撃の結果に - Qiita

    コレステロールは最低摂取基準量はないので0としています(実はこれが伏線になっている)。 そして目的は、一日必要な栄養素を満たす最もカロリーの低い商品の組み合わせとします。金に糸目はつけません。健康第一! 解く 商品の数が96個、栄養素の数が16個なので、とても人間の手では解けません。そこでコンピューターの力を借ります。幸いPuLPというPythonで無料で利用できるソルバーがあるので、これで計算します。ちなみにExcelにもソルバーが搭載されていますが、この程度の数の決定変数でもエラーになって計算できませんでした。 # Import PuLP modeler functions from pulp import * # A new LP problem prob = LpProblem(name="mac", sense=LpMinimize) # Variables AA = LpVar

    マクドナルドで一日分の栄養を取れる組み合わせを計算したら衝撃の結果に - Qiita
    hirokiky
    hirokiky 2021/02/22
    PuLPの有効活用という意味でポートフォリオ最適化よりも人類に貢献してる。
  • 【PyTorch】BERTの使い方 - 日本語pre-trained modelsをfine tuningして分類問題を解く - Qiita

    PyTorch】BERTの使い方 - 日語pre-trained modelsをfine tuningして分類問題を解くPython自然言語処理機械学習PyTorchbert はじめに 自然言語処理の様々なタスクでSOTAを更新しているBERTですが、Google家がGithubで公開しているものはTensorflowをベースに実装されています。 PyTorch使いの人はPyTorch版を使いたいところですが、PyTorch版は作っていないのでHuggingFaceが作ったやつを使ってね、ただし我々は開発に関与していないので詳しいことは彼らに訊いてね!とQAに書かれています。 HuggingFace製のBERTですが、2019年12月までは日語のpre-trained modelsがありませんでした。 そのため、英語では気軽に試せたのですが、日語ではpre-trained mod

    【PyTorch】BERTの使い方 - 日本語pre-trained modelsをfine tuningして分類問題を解く - Qiita
    hirokiky
    hirokiky 2020/06/22
  • ゼロから作るRNNによる文章分類モデル - Qiita

    はじめに 最近ゼロから作るDeep Learning ❷ ―自然言語処理編が発売されて深層学習による自然言語処理がますます身近になってきました。 今回はこののコンセプトとコードを拝借して、RNNによる文章学習とラベル分類を行うモデルをフロムスクラッチで作成しました。 概要 RNNは系列情報を扱えるニューラルネットワークです。今回は、単語の並ぶ方向を時系列方向として訓練します。下図のようにID化した単語をEmbedding層(埋め込み層)に入力し、単語情報をテンソルに変換します。埋め込んだ単語をRNNユニットに入力します。RNNユニットは前のユニットがはきだした内部状態テンソルhを受け取り、単語の入力と合わせて内部状態を計算し、次のRNNユニットにはきだします。 RNNの詳細な内部構造は下図のようになっています。 このタスクで用いるネットワーク構成は - Embedding層:単語情報を埋

    ゼロから作るRNNによる文章分類モデル - Qiita
    hirokiky
    hirokiky 2020/06/19
  • chainerによるLSTMを用いた時系列予測 - Qiita

    Brains Consulting, Inc. でインターンをさせていただいている情報系のM1です。 2017年7月から9月にかけて、インターン業務として、LSTM を用いた時系列予測を Chainer で実装してきました。 最終的なゴールは、複数商品の需要予測に適用可能な深層学習モデルを構築することですが、その準備として、単一商品の需要予測について検証しました。 業務においては、大手品メーカ様の需要量実データを用いましたが、この記事では、Web上の公開データセットに置き換えて、その成果を報告したいと思います。 当記事では、chainer 1.24.0 と古い version を使っていますので、ご注意ください。 データセット準備 International airline passengers: monthly totals in thousands. Jan 49 – Dec 60

    chainerによるLSTMを用いた時系列予測 - Qiita
    hirokiky
    hirokiky 2020/06/19
  • ChainerとRNNと機械翻訳 - Qiita

    自然言語処理とニューラルネット ここ数年で、自然言語処理の分野でもニューラルネットが非常に頻繁に使われるようになってきました。 自然言語処理で主に解析対象となるのは単語の配列や構文木などで、これらの内包する情報を表現するためにrecurrent neural network1やrecursive neural network1などに基づくモデルが頻繁に使われます。これらの最大の特徴はニューラルネットがある種のデータ構造を持っているという点で、1レイヤあたりのノードはそれほど多くない代わりにネットワークの接続が複雑で、しかも入力されるデータごとにネットワークそのものの形状が変化するという特徴があります。このため、伝統的なfeedforward neural networkを前提としたツールキットでは構築が難しいという問題がありました。 Chainerは、そのような問題を概ね解決してしまう強力

    ChainerとRNNと機械翻訳 - Qiita
    hirokiky
    hirokiky 2020/06/19
  • 組合せ最適化でののぐらむを解く - Qiita

    Advent Calendar 14日目の記事 組合せ最適化でウォールロジックを解く Advent Calendar 16日目の記事 組合せ最適化で美術館を解く これなに ののぐらむを、Pythonで組合せ最適化モデルを作って解きます。 解く楽しみは、モデル化を工夫することになります。 自分でも試してみたい人は、下記を参考にしてください。 数独を通して組合せ最適化を学ぼう 問題 各横行の左、各縦列の上にある数字は、その行(列)の中で連続して黒く塗る白マスの数を表します 1つの行(列)に対して数字が複数ある場合は、数字の並び順どおりにその数字の数だけ連続して黒く塗ります 1 つの行(列)に対して数字が複数ある場合は、その数字が表す黒マスの連続の間に1マス以上の白マス(塗らないマス) が入ります 下記は、問題と答えです。 定式化 \begin{array}{cl} 変数 & v_{ij} \i

    組合せ最適化でののぐらむを解く - Qiita
    hirokiky
    hirokiky 2018/08/10
    神か
  • Redmine チケットの文中に画像プレビューを載せる裏技 - Qiita

    Redmineのチケットに画像プレビューをつけたい時ってありますよね? Redmineで「こんな感じにお願い!」、「ここ変になってるよ!」などを伝える際に実際のスクリーンショットや写真があったほうが断然わかりやすいのは言うまでもありません。 ↓イメージ↓ しかし、RedmineにはQiitaみたいに画像プレビューを「ぽんっ」と表示する機能はありません。 ※あるかもしれませんが知りません Redmineチケット上での画像の扱い ここで画像をアップすると こんな感じにアップされますね チケット内容の説明のために必要な画像だとしたら、 「ここがおかしいので修正よろー(添付画像参照)」 といったように文を書くことになると思います。 しかし、Redmineのチケット上のファイルアップロード機能はこういう用途ではないのでしょう。 「追加資料です!」とか、「添付画像をファビコンとして使用してください!

    Redmine チケットの文中に画像プレビューを載せる裏技 - Qiita
    hirokiky
    hirokiky 2018/05/11
    倫理的にダメだと思う
  • 組合せ最適化 - 典型問題 - 勤務スケジューリング問題 - Qiita

    スタッフの人数、スケジュール日数、シフトの種類数、避けるべきシフトのパターン、日ごとのシフトごとの必要数が与えられたときに、これらを満たすスケジュールを求めよ。 目的関数や制約には、様々なバリエーションがある。 実行方法 Signature: shift_scheduling(ndy, nst, shift, proh, need) Docstring: 勤務スケジューリング問題 入力 ndy: 日数 nst: スタッフ数 shift: シフト(1文字)のリスト proh: 禁止パターン(シフトの文字列)のリスト need: シフトごとの必要人数リスト(日ごと) 出力 日ごとスタッフごとのシフトの番号のテーブル from ortoolpy import shift_scheduling ndy, nst = 8, 4 shift = '休日夜' proh = ['夜夜', '夜日', '日

    組合せ最適化 - 典型問題 - 勤務スケジューリング問題 - Qiita
    hirokiky
    hirokiky 2018/01/29
  • $DISPLAYが未定義でmatplotlibがコケる問題を再発させない方法 - Qiita

    ssh経由でリモートログインしていてmatplotlibを使った可視化のスクリプトを実行したりすると、たとえGUIを出すコードではなくファイルに出力するコードでも _tkinter.TclError: no display name and no $DISPLAY environment variable と怒られてしまう。 で、その直接的な解決方法はもちろん env DISPLAY=:0 python ... でよいのだけども、まあ人間はうっかり付け忘れてがっかりする生き物なので恒久的に再発防止をしたい。 このエラーの根的な原因はmatplotlibのデフォルトバックエンドがTkAggになっているせい。というわけで /etc/matplotlibrc で以下のように変更すれば良い。

    $DISPLAYが未定義でmatplotlibがコケる問題を再発させない方法 - Qiita
    hirokiky
    hirokiky 2017/11/16
    ありがたや。 matplotlib.use("Agg") 毎回やっていました
  • ツリー型タブのWebExtensionsへの移行のおはなし - Qiita

    Here is the English version of this article. この投稿は個人サイトとのクロスポストです。 2017年の8月下旬に思い立って、ツリー型タブのWebExtensions版を作り始め、去る9月26日にバージョン2.0としてリリースしました。 重い腰を上げて取り組む気になれたのは、必須と目していたAPIが一通り実装されてきて、Firefox 57でようやく技術的に作れる目処が立ってきたからでした。 関係者の皆さんの尽力に改めて感謝の意を表明します。 やっている事自体はそう難しい話ではなく、技術的に目新しいトピックは無いのですが、主に歴史的資料としてレガシーなアドオンの移行の一事例の記録を残しておこうと思います。 ツリー型タブとは? 一言でいうと、ツリー型タブ(Tree Style Tab、略してTST)は「Firefox用の、タブ同士の来歴・関係をツリー

    ツリー型タブのWebExtensionsへの移行のおはなし - Qiita
    hirokiky
    hirokiky 2017/11/16
    勉強になる。そしていつもお世話になっています
  • re:dash でコホート分析 - Qiita

    最近、Airbnb 社のオープンソース BI ツール Superset 1 を試しています。 Superset が UI で指標をピボットしてグラフを描画できる点は re:dash と比べて圧倒的に便利そうで... おっと、re:dash の Advent Calendar でした。 この記事は re:dash Advent Calendar 2016 12/24の記事です. re:dash でちょっとクセのあるコホートグラフの作成方法を簡単にまとめます。 Cohort(コホートグラフ) ユーザーのサービス継続利用率の可視化に、コホートグラフが有用です。 サンプルを以下に載せます。セグメントによって継続利用率を比較すことがコホート分析では重要になるため、自社では filter を利用してこのように 〇〇をした人/していない人の継続利用率を比較しています。 同じデータ出力でリテンションカーブ

    re:dash でコホート分析 - Qiita
    hirokiky
    hirokiky 2017/11/09
  • VALUE-DOMAIN での Mailgun の DNS 設定 - Qiita

    Mastodon のために VALUE-DOMAIN で Mailgun の DNS 設定をしようとしたら全然うまくいかなくて苦労したので記録。 VALUE-DOMAINDNS 設定 最終的に以下の設定でうまくいった。 txt mg v=spf1 include:mailgun.org ~all txt smtp._domainkey.mg k=rsa;p=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    VALUE-DOMAIN での Mailgun の DNS 設定 - Qiita
    hirokiky
    hirokiky 2017/11/04
    すごく助かった。。!
  • Python-Highchartsのドリルダウンでポートフォリオを可視化する - Qiita

    投資信託のポートフォリオの可視化にPython-Highchartsを試してみました. Python-HighchartsはJavaScriptの可視化ライブラリHighchartsのPythonのラッパーです. Python-Highchartsを使うとインタラクティブに操作できるグラフを作成できます. インストール Python-Highchartsをインストールします.

    Python-Highchartsのドリルダウンでポートフォリオを可視化する - Qiita
    hirokiky
    hirokiky 2017/10/31
  • 金融工学入門 〜ポートフォリオ最適化(分散最小化)〜 - Qiita

    ※このエントリは株式会社NTTデータ数理システム様のセミナー内容に触発されて「自分でやってみよう」で行ったものです。 ここで使うRコードは全てここにあります。 予備知識 金融工学とは 金融工学(きんゆうこうがく、英語:financial engineering、computational finance)は、資産運用や取引、リスクヘッジ、リスクマネジメント、投資に関する意思決定などに関わる工学的研究全般を指す。 金融経済学(financial economics)や数理ファイナンスを理論的バックグラウンドとして持ち、金融機関が事業活動を通じて取り扱う様々なリスクを計測し、適切に管理することを目的として発展した。 (引用元:Wikipedia) 金融工学とは特に投資銀行(GSなど)で2008年前まで大きくバズっていた「クオンツ」達により発展したリスクとリターンのアセスメント、および不確定な状

    金融工学入門 〜ポートフォリオ最適化(分散最小化)〜 - Qiita
    hirokiky
    hirokiky 2017/10/31
  • 組合せ最適化を使おう - Qiita

    野菜の選び方はナップサック問題、乗り換え駅探索は、最短路問題といいます。典型問題は、よく研究もされているので、多くの場合、効率的な解法があります。あるいは、定式化がされているので、すぐ解くことができます。あとで、やってみましょう。ここで、あげている全ての典型問題の実行例は、典型問題と実行方法をご覧ください。 汎用問題 最近、私がやっているコンテナの仕事のお話しをします。 世界中の人たちが、いろいろなものを安く買えるのはコンテナ輸送のおかげです。中国などで生産したものを日アメリカやヨーロッパに、大量に安く運べるからです。でも、空のコンテナが、どんどんたまります。また中国に戻さないといけません。いつ、どこからどこに戻すかを決めるのが、最小費用流問題になります。ところが、最小費用流問題で表せない制約条件もあります。1 つが、カボタージュとよばれるものです。カボタージュというのは、国内のみの輸

    組合せ最適化を使おう - Qiita
    hirokiky
    hirokiky 2017/10/26
  • やってみよう分析! 第6章:Excelソルバーの応用(ポートフォリオ最適化) - Qiita

    まえがき 今回も始まりました。やってみよう分析!シリーズ 前章ではExcelの分析ツールとソルバーを活用して回分析や帰や曲線のフィティングの方法を紹介しました。章では前章に引き続きソルバーに焦点を当て、ソルバーを使ったポートフォリオ最適化問題の解き方について、基的事項を紹介します。 章で扱うポートフォリオ最適化問題は金融の例を扱います。想定しているのは、ある投資家が手持ちの資金をいくつかの証券に分散投資する場面を考えます。この時、どのように資金を配分すると最も利益を得ることができるかを考える。これがポートフォリオ最適化問題のあらましです(章では金融工学を専門的に扱うことは意図していなので、このくらいのイメージで十分です)。 章で紹介する項目は下記のとおりです。 ポートフォリオ最適化問題 平均-分散モデル コンパクト分解表現 平均-絶対偏差モデル Excelソルバーでポートフォリオ

    やってみよう分析! 第6章:Excelソルバーの応用(ポートフォリオ最適化) - Qiita
    hirokiky
    hirokiky 2017/10/26
  • CloudFrontを利用して独自ドメインのGitHub PagesをHTTPS化する - Qiita

    tl;dr 方法として2つあるが、設定がシンプルであることと、エッジ-オリジン間もHTTPS化できるため後者がオススメ。 CNAME を有効のままで、CloudFrontで Host ヘッダを転送する設定とする CNAME を無効にして、 https://example.github.io/reponame/ でアクセスするようにし、/reponame/ をOriginのパスとして利用する Zone Apex (サブドメイン無し) の場合でも、どちらでも可能。 Setting up an apex domain - User Documentation 共通 以下の例で進めていきます。 Default Page Domain: username.github.io Repository Name: reponame CNAME: reponame.example.jp SSL証明書は、事前

    CloudFrontを利用して独自ドメインのGitHub PagesをHTTPS化する - Qiita
    hirokiky
    hirokiky 2017/10/20
    テキトーにぐぐると「CloudFlare」使おう!みたいなのが大量にあってギョッとしてたので参考になりそうです。
  • Django の order_by の 注意点 - Qiita

    概要 昔 Django の order_by でどハマりした時のメモが発掘されたので残しておく Django で order_by や values や distinct を同時に使うと意図しない結果が得られてしまうので注意という話 環境 Django1.9 MySQL 前提 下記のようなDjangoモデルがあるとする # polls/models.py class Question(models.Model): question_text = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') class Choice(models.Model): question = models.ForeignKey(Question, on_delete=models.CASCADE)

    Django の order_by の 注意点 - Qiita
    hirokiky
    hirokiky 2017/10/03
    ほんまこれ