こんにちは。バックエンドエンジニアの阿部です。Goが好きです。 今回のブログは、動画品質の指標の1つとなるVMAFスコアというものを可視化した話です。 ※VMAFスコアの取得はffmpegコマンドを利用しますが、今回はffmepgの細かい内容については説明はしません。 VMAFとは 動画配信では、元の動画素材をそのまま配信しようとするとその容量が大きすぎるため圧縮を施したり、最適な動画形式への変更を行うなどのエンコード作業が必要不可欠となりますが、その画質やビットレートなどをどこに着地させて品質を担保するかは、長年の経験や勘、主観など人的要素での決定が大きかったのではないでしょうか。 VMAF(Video Multi-Method Assessment Fusion)は簡単に言うと、そのような定性的な判断から定量的な判断が可能となるスコアを算出してくれるライブラリです。元素材とエンコード後
昨今ではアプリケーションの実行環境として採用されることが多いDockerは、MySQL環境の構築にも適しています。Dockerを使えば、比較的簡単に使い勝手のよいMySQL環境を構築可能です。 この記事では、そもそもDockerとは何かといった基本から、DockerでMySQL環境を構築する方法を解説します。データベースを継続的に利用するための、「データ永続化」についても解説しているのであわせて参考にして下さい。 そもそもDockerとは?【軽快に動作する仮想環境】 Dockerとは軽快に動作する、コンテナ型仮想化用のプラットフォームです。コンテナ型仮想化ではホストOSのカーネルを共有することで、従来の仮装マシンより軽快な処理能力を実現します。Dockerは、MySQLの実行環境としても最適です。 MySQL環境構築の前に知っておきたい「データ永続化」について Dockerではコンテナを削
どーも、しぶちょーです。 いきなりですが、皆さんは地獄めぐりをご存じですか?大分県別府市にある観光名所の一つで、地獄に例えられた独特の景観を堪能しながら見回る人気のスポットです。本記事では、温泉の地獄めぐりではなく、締結の設計における”地獄めぐり”をしていただこうと思います。新人設計者が陥りがちな地獄への落とし穴、私がガイドしますので一緒に巡っていきましょう! 地獄へのトビラを開く!? 新人君の事例いきなりですが、新人君の設計事例を見てみましょう。 2つの部品をブラケットで締結しています。なんの変哲もないどこにでもありそうな設計事例ですが・・・実はこれ、「地獄」です。私には笏を持った閻魔大王姿がくっきりと見えます。名づけるならば、「戦慄の高さ方向地獄」です。もう一つ、事例を見てみましょう。今度は溝に挟まる形で部品が締結されていますね。 これも地獄です。私には魑魅魍魎が蔓延る地獄の底がはっき
動画品質評価 動画品質評価主に以下のカテゴリーに分けられます: 主観評価、つまり人による評価で、正確性が高いが、コストが高く、規模化が難しい。 客観評価、アルゴリズムに依存しています.例えばPSNR(ピーク信号対雑音比)、SSIM(構造類似性)などで、正確性が低く、コストが低く、規模化が容易。 知覚品質評価、NetflixのVMAFが代表例で、VMAFは機械学習アルゴリズムに基づき、人の識別結果に基づいてモデルを訓練し、実際の人の評価を模倣することを目的としています。結果は人の評価に近い正確さを達成することができ、これが「知覚」という言葉の意味です。利点は正確さが高く、規模化も容易です。今日話すVMAF、AVQTもこのカテゴリーに属します。 もう一つの分類は有源評価と無源評価で、有源評価とは、参照ソースが必要であることを意味し、例えば、未圧縮のRaw動画が参照ソースとしてあり、その後、処理
家電や自動車、文房具、キッチン用品、自転車、コップやお皿、傘、ピーラー、置き時計、オフィスチェア、オフィス什器、情報通信機器など、身の回りにあるほぼ全てのプロダクトにおいては、実はプロダクトデザイナーが関わり、ほとんどがデザインさ...
なぜDeepSeek V3は“破壊的”なのか? 大規模言語モデル(LLM)といえば、OpenAIのGPTシリーズやMetaのLlamaシリーズなど、膨大な学習コストと大手企業の潤沢なリソースが必要というイメージが強いかもしれません。しかし、2024年末にリリースされたDeepSeek V3は、その“常識”を一変させる存在として大きな注目を集めています。 わずか数カ月・約558万ドルという圧倒的低コストで学習完了 GPT-4oに匹敵する性能をうたうオープンソースモデルであり、APIも数分の1~十数分の1と圧倒的価格破壊を起こしている Mixture-of-Experts(MoE)を活用して370B級モデルを安価・高速に動作 こうしたインパクトは「破壊的」と評されるに十分でしょう。これまで「開発コスト」や「リソース」による参入障壁が高かったLLMの世界に、新たな扉を開く可能性を秘めているからで
はじめに OAuth2.0の同意画面をポチポチしたことは、ある OAuth2.0を使ったことはある OAuth2.0のフローはなんとなく知っている 『一番わかりやすいOAuthの説明』も読んだ けど 「OAuth2.0とは何かがやっぱり良くわからない」 という方へ向けた記事です。 OAuth2.0を「成り代わり」という概念を軸に説明していきます。 OAuthとは? 自分がこの記事で伝えたいのはこれしか無いです。 OAuth2.0を 「成り代わり」 という概念を元に考えてみると、理解しやすく忘れにくい、かもです。 言い換えると、「アプリAがユーザに成り代わってアプリBを操作する仕組みを実現している」 ということです。 図示します。 ユーザが(最近何かと物騒な)Twitterを利用しています。 通常であれば、ユーザはTwitterにログインし、ツイートすることでしょう。 そこで、ユーザが「アプ
freee API で取得したトークンの有効期限は以下の通りです。初回のアクセストークンを取得後はリフレッシュトークンを活用して有効期限内にアクセストークンを再取得してください。有効期限がくるまではAPI Rate Limitの範囲でAPIアクセスができますが、有効期限内を過ぎたアクセストークンを付与したfreeeAPIへのアクセスは拒否されます。 アクセストークン 6時間 リフレッシュトークン 90日 freeeではOauth2.0を採用しており、Authorization Code Grantを推奨しています。アクセストークン取得は以下の手順にて行います。 認可コードを取得する 取得した認可コードを利用してアクセストークンとリフレッシュトークンを取得する 取得したリフレッシュトークンを用いて、前のアクセストークンが有効期限を過ぎる前にアクセストークンを取得する(2回目以降) 1つのリフ
【解説】JWT形式で発行されるIDトークン、アクセストークン、リフレッシュトークンの違いと役割 Webアプリケーションやモバイルアプリケーションの開発において、認証と認可は非常に重要な要素です。Amazon CognitoやOAuth 2.0などの認証プロバイダーを使用する際に、しばしば登場するのがIDトークン、アクセストークン、リフレッシュトークンの3種類のトークンです。 この記事では、それぞれのトークンがどのような役割を果たしているのか、どのように使い分けるべきかを詳しく解説します。 トークンの基本概念 JWT(JSON Web Token)とは? 3種類のトークンは、通常、JWT(JSON Web Token)形式で発行されます。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成され、各部分はドットで区切られた文字列になっています。 eyJhbGciOiJIUzI1NiIsInR
って、いつもやってました(笑)。まあ、見るからに、野蛮ですね。 ところが、先日久しぶりにDebian sidにはない無いモジュール(pycoingecko)が必要になって、いつものようにpip3を実行しました。そしたら突然のエラーですよ! $ pip3 install --user pycoingecko error: externally-managed-environment × This environment is externally managed ╰─> To install Python packages system-wide, try apt install python3-xyz, where xyz is the package you are trying to install. If you wish to install a non-Debian-packag
クリーンなPC(WSL2)でpip3 install ... を実行したらerror: externally-managed-environmentエラーが発生したので、対処法の備忘録。 前提として、開発やツール、プログラムで使うようなライブラリをインストールするときは、venvを使用しています。今回はCLIアプリをWSL2のシステムにインストールしたい時の対処法です。 ➜ ~ pip3 install ... error: externally-managed-environment × This environment is externally managed ╰─> To install Python packages system-wide, try brew install xyz, where xyz is the package you are trying to inst
対象読者 上に上げた2つの記事と同等レベルです。 Python、NumpyやPandasを扱える 機械学習の存在くらいは知っている SVMの実装の一連の流れを知りたい 機械学習、SVMとは ここでは詳しいことは省きます。参考の記事などを参考にしてください。 機械学習の分類とは、 分類 分類タスクでは、事前に定められた有限個のクラスが定められていて、各クラスには、「ネコ」、「イヌ」などのクラスラベル(もしくは単にラベル)と呼ばれるクラス名が割り振られている。分類タスクの目的は与えられた入力xがのいずれに属するかを当てる事である。 機械学習 分類 - Wikipedia ここでは、機械学習で気温や降水量、雲量などのデータを使って、天気(ラベル)を当てます。 また、SVMとは以下になります。 サポートベクターマシン(英: support vector machine, SVM)は、教師あり学習を
SpiceDBで認可制御するときにベースとなるスキーマのパターンをユースケースに合わせてメモ SpiceDBのスキーマやリレーションは公式のプレイグラウンドで検証できる. ロール/グループパターン ロールに対する認可 基本のパターン definition user{} definition document { relation reader: user relation writer: user permission read = reader permission write = writer } definition user{} definition group { relation reader: user relation writer: user permission read_document = reader + writer permission write_docum
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く