【シナリオ】Spark MLlibの `Pipeline` を保存・ロードする際、カスタムTransformerが含まれているとエラーになる。これを解決するために実装が必要なインターフェースはどれか。

カスタムコンポーネントをSparkのパイプライン保存/ロード機構に対応させるには、`DefaultParamsWritable`, `DefaultParamsReadable` などを継承し、読み書きのロジック(`write`, `read`)を実装する必要がある。