DeNA Engineersのフィード

https://zenn.dev/p/dena

DeNAに所属するエンジニアの個人記事を集めています。 記事内容はあくまでも個人の見解であり、会社としてレビュー等はしておりません。あらかじめご了承ください。

フィード

記事のアイキャッチ画像
Kaggle Grandmasterになったので取り組み方や今までを振り返る(kami編)
DeNA Engineersのフィード
こんにちは、株式会社ディー・エヌ・エーのkami (Kaggle, X(旧Twitter))です。先日の「Eedi - Mining Misconceptions in Mathematics」で金メダルを獲得し、晴れてKaggle Competitions Grandmasterとなりました。先人たちに倣って今まで参加したコンペティションなどを振り返りつつ、どのように取り組んできたかをまとめたいと思います。技術的な話は少なめで、マインド面などのポエミーな話が中心ですのであしからず。なるべく参考になるように、私個人がコンペに取り組む時の考え方などをお伝えできればと思います。 な...
13日前
記事のアイキャッチ画像
【Terraform】Docker で VS Code の Dev Container 上に快適な Google Cloud 環境を構築する
DeNA Engineersのフィード
0. はじめに株式会社ディー・エヌ・エーに入社し,MLOps エンジニアをやっている @a5chin です.本記事では図 1 の様に Docker を使って VS Code の Dev Container 上に Terraform[1] + Google Cloud[2] の開発環境を作成することを目指します.図 1: Dev Container 上で開発をすると自動フォーマット[3]と pre-commit が走るhttps://github.com/a5chin/terraform-template/tree/mainCI/CD が入っていたりと,本記事で解説する内容...
18日前
記事のアイキャッチ画像
全ての学習率スケジューリングを過去にするOptimizer
DeNA Engineersのフィード
RAdamScheduleFree という新しいoptimizerを作りました。warmup、learning rate scheduler、訓練終端時刻の指定、全て不要です。安定かつ高速に収束します。多くの場合でAdamWと同等かより強いです。https://x.com/hamanasu_nagisa/status/1861974296257864154https://x.com/aaron_defazio/status/1863722349138219459https://x.com/hamanasu_nagisa/status/18637392026656442...
1ヶ月前
記事のアイキャッチ画像
Next.js の CI における build cache を高速化した
DeNA Engineersのフィード
対象Next.js を利用したプロジェクトGitHub Actions を利用しているCI で build cache (.next/cache をキャッシュ) している 忙しい人のための結論hashFiles の検索パターンから node_modules を省いておこう!uses: actions/cache@v4with: path: | ~/.npm ${{ github.workspace }}/.next/cache+ key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-l...
1ヶ月前
記事のアイキャッチ画像
uv から始まる Python 開発環境構築
DeNA Engineersのフィード
!2024/12: Dockerfile や devcontainer.json の書き方を修正しました 0. はじめに株式会社ディー・エヌ・エーに入社し,MLOps エンジニアをやっている @a5chin です.本記事では VS Code の Dev Container 上に uv で Python の開発環境を作成します.CI/CD が入っていたりと,本記事で解説する内容よりもリッチな設定が以下のリポジトリに置いてあるので,ぜひ使って頂けたらと思います.PR も大歓迎です!https://github.com/a5chin/python-uv 0.1. 背景2...
4ヶ月前
記事のアイキャッチ画像
Kaggle LEAP コンペ 上位解法まとめ
DeNA Engineersのフィード
はじめにDeNAの@634kamiです。LEAP - Atmospheric Physics using AI (ClimSim)というコンペティションが 2024/7/16 まで開催されており、こちらに参加して最終4位でした。コンペが終了してしばらく立ちましたが、リーク騒動などがあり解法共有が許可されるまで2週間程度かかるなど解法を詳細に確認するタイミングを失っていました。先日ちょうど主催したDeNAでの振り返り会も終わったので、自身の備忘録も兼ねて上位解法をまとめておきたいと思います。 コンペ概要計算コストが高い気候シミュレータ(E3SM-MMF)をエミュレートする...
4ヶ月前
記事のアイキャッチ画像
【Rye + uv + Ruff】Docker で VS Code の Dev Container 上に快適な Python 環境を構築する
DeNA Engineersのフィード
!この記事の最新版は『uv から始まる Python 開発環境構築』です. 0. はじめに株式会社ディー・エヌ・エーに入社し,MLOps エンジニアをやっている @a5chin です.本記事では,図 1 の様に VS Code の Dev Container 上に爆速で快適な Python 環境を構築することを目指します.図 1: Dev Container 上で開発をすると Ruff による自動フォーマット[1]と pre-commit が走るhttps://github.com/a5chin/python-rye/tree/main本記事の内容は全て上記リポジト...
9ヶ月前
記事のアイキャッチ画像
Node.js v20 で GitHubActions から Vercel へのデプロイがコケた
DeNA Engineersのフィード
つい先日(2024.3.25) に Vercel の Node.js v20 サポートが GA になったNode.js v20 LTS is now generally available – Vercelそれに伴って Node.js v18 を v20 にアップデートしたらデプロイがコケるようになった 環境利用技術バージョンNext.jsv13Node.jsv20vercel-actionv25Next.js プロジェクトを GitHubActions から Vercel にデプロイしている 発生したエラーGitHubActi...
9ヶ月前
記事のアイキャッチ画像
【Google Cloud】Event-Driven に Google API へ POST して Dataflow を作成する方法
DeNA Engineersのフィード
0. はじめにこんにちは!23 新卒で株式会社ディー・エヌ・エーに入社し,MLOps エンジニアをやっている @a5chin です.本記事では,Event-Driven[1] で Cloud Storage から Cloud Spanner[2] にデータを取り込む Dataflow を作りたいと思います.ベストプラクティスに関する情報がなかったので,試行錯誤した結果を記事にしました.https://cloud.google.com/dataflow/docs/guides/templates/provided/avro-to-cloud-spanner 1. 結論...
9ヶ月前
記事のアイキャッチ画像
[SF-0001] Calendar Sequence Enumeration の解説
DeNA Engineersのフィード
この記事はSwiftWednesday Advent Calendar 2023の21日目の記事です。昨日は @sugiy さんの「矯正治療 - アプリ開発編2」でした。 はじめにmacOS 14およびiOS 17において、CalendarクラスがSwiftに書き換えられました。この更新により、従来のenumerateDatesメソッドと比較して、Swiftの特性を活かした、より直感的で使いやすいCalendar APIの開発が可能となりました。この記事では、最近提案された [SF-0001] Calendar Sequence Enumeration に焦点を当てています。(...
1年前
記事のアイキャッチ画像
【Swift】開発中、とりあえず適当なエラーを投げたい…!ときのアイディア4選
DeNA Engineersのフィード
この記事は SwiftWednesday Advent Calendar 2023 の11日目の記事です。Swift でエラーを扱うには、Error に準拠したカスタムタイプを用意する必要があります。func someFunc() throws { // あとでちゃんと書くから、 // 今はとりあえず適当なエラーを投げたい…!}「ちょっと今はエラーのタイプを用意しないで、適当に書きたい…!」「自分しか扱わない使い捨てのコードスニペットだから、エラーは適当に書いておいても大丈夫……!」と思ったとき、どのような表現ができるかまとめました。自分以外の人が見るような...
1年前
記事のアイキャッチ画像
【Google Cloud】認証が必要な Compute プロダクトの死活監視をする方法
DeNA Engineersのフィード
本記事は GCP(Google Cloud Platform) Advent Calendar 2023 の 5 日目の記事です.昨年までは,機械学習で研究をしている大学 4 年生でしたが,2023 年 4 月からは新卒でエンジニアとして働いています.現在は,MLOps エンジニア[1]をしています.昨年は 『数独・ナンプレを画像から解く AI を作る』という記事を書いたので,興味があればぜひご覧ください.https://qiita.com/a5chin/items/6d35283a54a1022f9b24 1. 結論Google Cloud の機能である Syntheti...
1年前
記事のアイキャッチ画像
if 式と switch 式による SwiftUI のプレビューエラー対策
DeNA Engineersのフィード
謝辞2023年11月14日に開催された勉強会「potatotips #85 iOS/Android開発Tips共有会」での発表内容を基にした記事です。また、この記事はSwiftWednesday Advent Calendar 2023の6日目の記事です。昨日は @uhooi さんでした。 Swift 5.9の新機能: 式としてのifとswitchSwift 5.9からifとswitchを式として表現できるようになりました。これはSE-0380により実現されました。これによりifとswitchをよりシンプルに書くことが可能になりました。以下に具体的な例を挙げます。...
1年前
記事のアイキャッチ画像
@Observable Macro を構造体へ適用させる難しさについて
DeNA Engineersのフィード
本記事はSwiftWednesday Advent Calendar 2023の4日目の記事です。昨日は @uhooi さんでした。 はじめにSwift 5.9の導入により、Observationフレームワークを活用してデータの追跡をより簡単かつ高パフォーマンスに行うことが可能となりました。現在、このフレームワークでは@Observable Macroをクラスに対してのみ適用することができます。一方で構造体に適用することはできません。もともと、@Observable Macroを構造体にも適用する案が提案されていました。しかし、Swiftの現行設計から見た時、構造体に対して@O...
1年前
記事のアイキャッチ画像
Xcode 15のPreview Macroにおける依存注入について
DeNA Engineersのフィード
本記事はSwiftWednesday Advent Calendar 2023の2日目の記事です。本記事では、Xcode 15から利用可能なPreview Macroにおける依存注入について紹介します。 はじめにXcode 15から、開発者は新たなPreview Macro機能を利用できるようになりました。この機能を利用することで、これまで利用されてきたPreviewProviderと比較して、プレビューの表示のための実装をより簡単に実装することができるようになりました。一方で、Viewの依存をDIする際にPreviewProviderの時と同様の書き方をすることは難しくなりまし...
1年前
記事のアイキャッチ画像
xcstringstoolsとは何か?Xcode 15に導入されたString Catalogsのための新ツール
DeNA Engineersのフィード
謝辞2023年8月24日に開催された勉強会「公開 SwiftWednesday【iOSDC Japan 2023 直前】」での発表内容を基にした記事です。 はじめにWWDC23においてXcode 15の新機能として「String Catalogs」が発表されました。https://developer.apple.com/videos/play/wwdc2023/10165?time=270これまでの多言語対応は.stringsファイルが主に利用されてきました。しかし、Xcode 15からは.xcstringsファイルを活用できるようになりました。具体的な使い方については...
1年前
記事のアイキャッチ画像
グラフニューラルネットワーク(GNN)徹底解説!用途と仕組みからPyGでの実装まで
DeNA Engineersのフィード
株式会社ディー・エヌ・エーに AI スペシャリストとして新卒で入社した @634kami です。CNNなどディープなニューラルネットワークの台頭により一躍世界中の関心を集めるようになった機械学習分野ですが、最近の生成AIブームによりますます関心が高まっています。機械学習については、画像や自然言語といった馴染み深いデータを対象に扱うものについてはよく知られていますが、グラフと呼ばれるデータを扱うグラフニューラルネットワーク(GNN) については研究における注目度の割に、世間からの知名度がありません。この記事では、グラフについて知らない方でも分かるように、最初にGNNが何に使えるのかの話...
1年前
記事のアイキャッチ画像
OpenTelemetry CollectorでmacOSのメトリクスをCloud Monitoringに送る
DeNA Engineersのフィード
https://qiita.com/symmr/items/e63d7757780cf0be1bbeこちらを参考にしてちょうど自分が困っている問題を解決できそうな見通しが立ったので紹介します。 ビルドマシンの監視とアラートをどこでやるか問題昔はJenkins、最近ではGitHub Actionsのセルフホストランナーのためにビルドマシンを自前で用意することがあります。特にmacOSに関してはGitHub Actionsだと1分あたりの課金額がLinuxの10倍(!)になるため、GitHubがホストしているmacの代わりとしてオフィスにmac miniを用意してビルドマシンとして利...
2年前
記事のアイキャッチ画像
Swift の「async let ...」と「TaskGroup」の使い分け早見表
DeNA Engineersのフィード
この記事は Swift Advent Calendar 2022 の22日目の記事です。この記事は弊社社内勉強会 SwiftWednesday の LT 会(2023年1月18日実施)で資料として使用されました。 「async let ...」と「TaskGroup」の使い分け早見表async なモノの数1つもエラーの可能性がない場合1つ以上エラーの可能性がある場合(throws がある場合)0let ... = ...let ... = try ...1つlet ... = await ...let ... = try await ......
2年前
記事のアイキャッチ画像
Bitrise Pipelines に移行して、クレジットを節約しながら並列でビルド・テストを回す
DeNA Engineersのフィード
本記事の内容は iOS Test Online(2022年10月24日 開催)の登壇資料(原稿)です。https://testonline.connpass.com/event/261910/ Bitrise Pipelines とは弊社では開発プロジェクトの CI・CD として Bitrise を採用しているプロダクト・チームがあります。Bitrise において、何か物事を実行したいときの最小単位は「ステップ」になります。たとえば、「git clone する」や「xcodebuild をする」といった具合です。これらの「ステップ」を直列に実行するときには、それらを「ワーク...
2年前