You can do that by doing the following steps:
Step 1: Enable dev console for CS:GO

Step 2: Open console with ~
key and execute this command to start the map:
game_mode 2;game_type 1;exec gamemode_deathmatch; mp_match_end_restart 1; map workshop\149093917\dm_rust;

where workshop\149093917\dm_rust
is my map, replace it with your map.
Note:
To come up with the command, I read the following sources:
CSGO Game Mode Commands.
forcibly execute a deathmatch
How can I prevent automap change?
I want to make a command menu (you know, commandmenu.txt, open by pressing H key) to save me from using console window. But I don't know how to setup command menu in CS:GO. Maybe I'll figure it out later. Currently I just save the command above to a text file and copy paste it to console window.
Edit:
I figure out how to automatically run the command when the game starts so it saves me from copying pasting the command above to console windows every time I play CS:GO.
Step 1: Create the file autoexec.cfg
by doing the following:
Create a text file (with Notepad), paste the command above to the text file, save the text file as the name autoexec.cfg
, then move this file to the folder .\Steam\steamapps\common\Counter-Strike Global Offensive\csgo\cfg

Step 2: Set Launch Option for CS:GO by doing the following:
Open Steam, open Properties for CS:GO, in general tab, click Set Launch Option...
, then paste this to the textbox: -exec autoexec -novid

Note: I read the Launch Options at this page: CSGO : Launch Options